mirror of https://github.com/Chizi123/.emacs.d.git

Chizi123
2018-11-18 76bbd07de7add0f9d13c6914f158d19630fe2f62
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
;ELC
;;; Compiled
;;; in Emacs version 26.1
;;; with all optimizations.
 
;;; This file uses dynamic docstrings, first added in Emacs 19.29.
 
;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.
 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
 
(byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\207" [require cl-lib ob-eval org-macs org-compat] 2)
(defconst org-babel-exeext (byte-code "\301>\205\302\207" [system-type (windows-nt cygwin) ".exe"] 2))
(byte-code "\300\301\302\303\304\305\306\307&\210\310\311\312\313\314DD\315\306\301\316\317\320\321&    \210\322\311\323\324#\210\310\325\312\313\326DD\327\306\301\316\317\320\330&    \210\310\331\312\313\332DD\333\306\301\316\334\335\336\320\337\340\341& \210\310\342\312\313\343DD\344\306\301\320\337&\210\310\345\312\313\346DD\347\306\301\320\337&\210\310\350\312\313\351DD\352\306\301\320\337&\210\322\350\323\353#\210\310\354\312\313\355DD\356\306\301\320\330\316\357\335\360\340\361& \210\310\362\312\313\363DD\364\306\301\320\330\316\357\335\365\340\361& \207" [custom-declare-group org-babel nil "Code block evaluation and management in `org-mode' documents." :tag "Babel" :group org custom-declare-variable org-confirm-babel-evaluate funcall function #[0 "\300\207" [t] 1] "Confirm before evaluation.\n\\<org-mode-map>Require confirmation before interactively evaluating code\nblocks in Org buffers.  The default value of this variable is t,\nmeaning confirmation is required for any code block evaluation.\nThis variable can be set to nil to inhibit any future\nconfirmation requests.  This variable can also be set to a\nfunction which takes two arguments the language of the code block\nand the body of the code block.  Such a function should then\nreturn a non-nil value if the user should be prompted for\nexecution or nil if no prompt is required.\n\nWarning: Disabling confirmation may result in accidental\nevaluation of potentially harmful code.  It may be advisable\nremove code block execution from `\\[org-ctrl-c-ctrl-c]' as further protection\nagainst accidental code block evaluation.  The\n`org-babel-no-eval-on-ctrl-c-ctrl-c' variable can be used to\nremove code block execution from the `\\[org-ctrl-c-ctrl-c]' keybinding." :version "24.1" :type (choice boolean function) put safe-local-variable #[257 "\211\300=\207" [t] 3 "\n\n(fn X)"] org-babel-no-eval-on-ctrl-c-ctrl-c #[0 "\300\207" [nil] 1] "\\<org-mode-map>Remove code block evaluation from the `\\[org-ctrl-c-ctrl-c]' key binding." boolean org-babel-results-keyword #[0 "\300\207" [#1="RESULTS"] 1 #1#] "Keyword used to name results generated by code blocks.\nIt should be \"RESULTS\".  However any capitalization may be\nused." "24.4" :package-version (Org . "8.0") string :safe #[257 "\211;\205\300\301\302\211\302\211\303&\303=\207" [compare-strings "RESULTS" nil t] 9 "\n\n(fn V)"] org-babel-noweb-wrap-start #[0 "\300\207" [#2="<<"] 1 #2#] "String used to begin a noweb reference in a code block.\nSee also `org-babel-noweb-wrap-end'." org-babel-noweb-wrap-end #[0 "\300\207" [#3=">>"] 1 #3#] "String used to end a noweb reference in a code block.\nSee also `org-babel-noweb-wrap-start'." org-babel-inline-result-wrap #[0 "\300\207" [#4="=%s="] 1 #4#] "Format string used to wrap inline results.\nThis string must include a \"%s\" which will be replaced by the results." #[257 "\211;\205\301\302\303\304#)\266\203\207" [inhibit-changing-match-data "%s" nil t string-match] 8 "\n\n(fn VALUE)"] org-babel-hash-show-time #[0 "\300\207" [nil] 1] "Non-nil means show the time the code block was evaluated in the result hash." "26.1" (Org . "9.0") booleanp org-babel-uppercase-example-markers #[0 "\300\207" [nil] 1] "When non-nil, begin/end example markers will be inserted in upper case." (Org . "9.1")] 14)
#@25 
 
(fn &optional REGEXP)
(defalias 'org-babel-noweb-wrap #[256 "\206\302    Q\207" [org-babel-noweb-wrap-start org-babel-noweb-wrap-end "\\([^     \n].+?[^     ]\\|[^     \n]\\)"] 4 (#$ . 3930)])
#@54 Regular expression used to match a source name line.
(defvar org-babel-src-name-regexp "^[     ]*#\\+name:[     ]*" (#$ . 4123))
#@63 Regular expression used to match multi-line header arguments.
(defvar org-babel-multi-line-header-regexp "^[     ]*#\\+headers?:[     ]*\\([^\n]*\\)$" (#$ . 4252))
#@38 Regexp used to identify code blocks.
(defvar org-babel-src-block-regexp "^\\([     ]*\\)#\\+begin_src[     ]+\\([^ \f    \n ]+\\)[     ]*\\([^\":\n]*\"[^\"\n*]*\"[^\":\n]*\\|[^\":\n]*\\)\\([^\n]*\\)\n\\([^]*?\n\\)??[     ]*#\\+end_src" (#$ . 4416))
#@227 Return the babel variable assignments in PARAMS.
 
PARAMS is a quasi-alist of header args, which may contain
multiple entries for the key `:var'.  This function returns a
list of the cdr of all the `:var' entries.
 
(fn PARAMS)
(defalias 'org-babel--get-vars #[257 "\300\301\302\303\"\"\207" [mapcar cdr cl-remove-if-not #[257 "\211@\300=\207" [:var] 3 "\n\n(fn X)"]] 6 (#$ . 4659)])
#@169 Buffer containing original contents of the exported buffer.
This is used by Babel to resolve references in source blocks.
Its value is dynamically bound during export.
(defvar org-babel-exp-reference-buffer nil (#$ . 5049))
#@219 Check whether INFO allows code block evaluation.
 
Returns nil if evaluation is disallowed, t if it is
unconditionally allowed, and the symbol `query' if the user
should be asked whether to allow evaluation.
 
(fn INFO)
(defalias 'org-babel-check-confirm-evaluate #[257 "\3028\303\236A\206\304\236\205\305\211\306\235\211\205\307\235\206!\211\310\232\206D\2031\311\232\206D\312    !\203C    @A@\"\202D    \203L\313\202U\211\203T\314\202U\315\207" [org-babel-exp-reference-buffer org-confirm-babel-evaluate 2 :eval :noeval "no" ("no" "never") ("no-export" "never-export") "query" "query-export" functionp nil query t] 10 (#$ . 5280)])
#@192 Check if code block INFO should be evaluated.
Do not query the user, but do display an informative message if
evaluation is blocked.  Returns non-nil if evaluation is not blocked.
 
(fn INFO)
(defalias 'org-babel-check-evaluate #[257 "\300!\211\204\301\302@\3038\211\203\304\305\"\202\306\262#\210\211\207" [org-babel-check-confirm-evaluate message "Evaluation of this %s code block%sis disabled." 4 format " (%s) " " "] 9 (#$ . 5940)])
#@518 Confirm evaluation of the code block INFO.
 
This query can also be suppressed by setting the value of
`org-confirm-babel-evaluate' to nil, in which case all future
interactive code block evaluations will proceed without any
confirmation from the user.
 
Note disabling confirmation may result in accidental evaluation
of potentially harmful code.
 
The variable `org-babel-confirm-evaluate-answer-no' is used by
the async export process, which requires a non-interactive
environment, to override this check.
 
(fn INFO)
(defalias 'org-babel-confirm-evaluate #[257 "\301!@\3028\211\203\303\304\"\202\305\204\306\202Q\307=\203&\307\202Q\310=\203J\311\300!\2036\204@\312\303\313#!\206Q\314\315#\210\306\202Q\316\317\"\262\207" [org-babel-confirm-evaluate-answer-no org-babel-check-confirm-evaluate 4 format " (%s) " " " nil t query boundp yes-or-no-p "Evaluate this %s code block%son your system? " message "Evaluation of this %s code block%sis aborted." error "Unexpected value `%s' from `org-babel-check-confirm-evaluate'"] 10 (#$ . 6394)])
(defalias 'org-babel-execute-safely-maybe #[0 "?\205\301 \207" [org-babel-no-eval-on-ctrl-c-ctrl-c org-babel-execute-maybe] 1])
(defalias 'org-babel-execute-maybe #[0 "\300 \206\301 \207" [org-babel-execute-src-block-maybe org-babel-lob-execute-maybe] 1 nil nil])
#@113 Execute BODY if point is in a source block and return t.
 
Otherwise do nothing and return nil.
 
(fn &rest BODY)
(defalias 'org-babel-when-in-src-block '(macro . #[128 "\300\301\302\303\304\"B\305BBB\207" [if (memq (org-element-type (org-element-context)) '(inline-src-block src-block)) progn append (t) (nil)] 7 (#$ . 7736)]))
#@137 Conditionally execute a source block.
Detect if this is context for a Babel src-block and if so
then run `org-babel-execute-src-block'.
(defalias 'org-babel-execute-src-block-maybe #[0 "\301\302 !\303>\205\304 \210\305!\210\306\207" [current-prefix-arg org-element-type org-element-context (inline-src-block src-block) org-babel-eval-wipe-error-buffer org-babel-execute-src-block t] 2 (#$ . 8071) nil])
#@175 Display information on the current source block.
This includes header arguments, language and name, and is largely
a window into the `org-babel-get-src-block-info' function.
(defalias 'org-babel-view-src-block-info #[0 "\305\306!\307\310\205\314\311\211\223\210\312    B\313\nB\314 \315 \316!\211\311\211\3178@\320    8\321\n8\203;\322\"\210\203E\323\"\210\324!\210\325\326`\327\330#\"\210\331\326`\332P\330##\210    !\203o\333\"\210\334!\210\335\336\"\211\205\251\211@ \337\340A\"!\203\242\n\341@\337\342@\"G\343V\203\235\344\202\236\345A$\210A\266\202\202x\262\266\204\262rq\210\346\311\"\262)\347\350!\203\307\350\"\202\310\211)\266\204*\207" [help-window-point-marker temp-buffer-window-setup-hook temp-buffer-window-show-hook help-window-old-frame standard-output org-babel-get-src-block-info light #[257 "\211G\300V\207" [0] 3 "\n\n(fn IT)"] #[385 "\300\301\302#!\207" [princ apply format] 7 "\n\n(fn FMT &rest ARGS)"] nil help-mode-setup help-mode-finish selected-frame help-buffer temp-buffer-window-setup 4 3 2 "Name: %s\n" "Lang: %s\n" "Properties:\n" "    :header-args     %s\n" org-entry-get "header-args" t "    :header-args:%s     %s\n" "header-args:" "Switches: %s\n" "Header Arguments:\n" sort #[514 "\300@!\300@!\231\207" [symbol-name] 5 "\n\n(fn A B)"] format "%s" "    %S%s    %s\n" "%S" 7 "" "    " temp-buffer-window-show functionp help-window-setup] 19 (#$ . 8484) nil])
#@140 Conditionally expand a source block.
Detect if this is context for an org-babel src-block and if so
then run `org-babel-expand-src-block'.
(defalias 'org-babel-expand-src-block-maybe #[0 "\301\302 !\303>\205\304!\210\305\207" [current-prefix-arg org-element-type org-element-context (inline-src-block src-block) org-babel-expand-src-block t] 2 (#$ . 9921) nil])
#@150 Conditionally load a source block in a session.
Detect if this is context for an org-babel src-block and if so
then run `org-babel-load-in-session'.
(defalias 'org-babel-load-in-session-maybe #[0 "\301\302 !\303>\205\304!\210\305\207" [current-prefix-arg org-element-type org-element-context (inline-src-block src-block) org-babel-load-in-session t] 2 (#$ . 10293) nil])
(add-hook 'org-metaup-hook 'org-babel-load-in-session-maybe)
#@136 Conditionally pop to a session.
Detect if this is context for an org-babel src-block and if so
then run `org-babel-switch-to-session'.
(defalias 'org-babel-pop-to-session-maybe #[0 "\301\302 !\303>\205\304!\210\305\207" [current-prefix-arg org-element-type org-element-context (inline-src-block src-block) org-babel-switch-to-session t] 2 (#$ . 10735) nil])
(add-hook 'org-metadown-hook 'org-babel-pop-to-session-maybe)
(defconst org-babel-common-header-args-w-values '((cache (no yes)) (cmdline . :any) (colnames (nil no yes)) (comments (no link yes org both noweb)) (dir . :any) (eval (yes no no-export strip-export never-export eval never query)) (exports (code results both none)) (epilogue . :any) (file . :any) (file-desc . :any) (file-ext . :any) (hlines (no yes)) (mkdirp (yes no)) (no-expand) (noeval) (noweb (yes no tangle no-export strip-export)) (noweb-ref . :any) (noweb-sep . :any) (output-dir . :any) (padline (yes no)) (post . :any) (prologue . :any) (results (file list vector table scalar verbatim) (raw html latex org code pp drawer) (replace silent none append prepend) (output value)) (rownames (no yes)) (sep . :any) (session . :any) (shebang . :any) (tangle (tangle yes no :any)) (tangle-mode (493 365 292 :any)) (var . :any) (wrap . :any)))
#@140 Common header arguments used by org-babel.
Note that individual languages may define their own language
specific header arguments as well.
(defconst org-babel-header-arg-names (mapcar 'car org-babel-common-header-args-w-values) (#$ . 12010))
#@554 A list of safe header arguments for babel source blocks.
 
The list can have entries of the following forms:
- :ARG                     -> :ARG is always a safe header arg
- (:ARG . (VAL1 VAL2 ...)) -> :ARG is safe as a header arg if it is
                              `equal' to one of the VALs.
- (:ARG . FN)              -> :ARG is safe as a header arg if the function FN
                              returns non-nil.  FN is passed one
                              argument, the value of the header arg
                              (as a string).
(defconst org-babel-safe-header-args '(:cache :colnames :comments :exports :epilogue :hlines :noeval :noweb :noweb-ref :noweb-sep :padline :prologue :rownames :sep :session :tangle :wrap (:eval "never" "query") (:results lambda (str) (not (string-match "file" str)))) (#$ . 12259))
#@418 Return a function that determines whether a list of header args are safe.
 
Intended usage is:
(put \='org-babel-default-header-args \='safe-local-variable
 (org-babel-header-args-safe-p org-babel-safe-header-args)
 
This allows org-babel languages to extend the list of safe values for
their `org-babel-default-header-args:foo' variable.
 
For the format of SAFE-LIST, see `org-babel-safe-header-args'.
 
(fn SAFE-LIST)
(defalias 'org-babel-header-args-safe-fn '(macro . #[257 "\300\301\302\303\304\300\305\302\306\307\310 EEE\311BBEE\207" [lambda (value) and (listp value) cl-every (pair) (consp pair) org-babel-one-header-arg-safe-p pair (value)] 13 (#$ . 13101)]))
#@58 Default arguments to use when evaluating a source block.
(defvar org-babel-default-header-args '((:session . "none") (:results . "replace") (:exports . "code") (:cache . "no") (:noweb . "no") (:hlines . "no") (:tangle . "no")) (#$ . 13773))
(put 'org-babel-default-header-args 'safe-local-variable #[257 "\211<\205    \300\301\"\207" [cl-every #[257 "\211:\205    \301\"\207" [org-babel-safe-header-args org-babel-one-header-arg-safe-p] 4 "\n\n(fn PAIR)"]] 4 "\n\n(fn VALUE)"])
#@66 Default arguments to use when evaluating an inline source block.
(defvar org-babel-default-inline-header-args '((:session . "none") (:results . "replace") (:exports . "results") (:hlines . "yes")) (#$ . 14256))
(put 'org-babel-default-inline-header-args 'safe-local-variable #[257 "\211<\205    \300\301\"\207" [cl-every #[257 "\211:\205    \301\"\207" [org-babel-safe-header-args org-babel-one-header-arg-safe-p] 4 "\n\n(fn PAIR)"]] 4 "\n\n(fn VALUE)"])
#@33 Regexp matching a NAME keyword.
(defconst org-babel-name-regexp (format "^[     ]*#\\+%s:[     ]*" "\\(?:\\(?:TBL\\)?NAME\\)") (#$ . 14716))
#@140 Regular expression used to match result lines.
If the results are associated with a hash key then the hash will
be saved in match group 1.
(defconst org-babel-result-regexp (format "^[     ]*#\\+%s\\(?:\\[\\(?:%s \\)?\\([[:alnum:]]+\\)\\]\\)?:[     ]*" org-babel-results-keyword "<\\(?:[0-9]\\{4\\}-[0-1][0-9]-[0-3][0-9] [0-2][0-9]\\(?::[0-5][0-9]\\)\\{2\\}\\)>") (#$ . 14858))
#@80 Regexp matching a RESULTS keyword with a name.
Name is saved in match group 9.
(defconst org-babel-result-w-name-regexp (concat org-babel-result-regexp "\\(?9:[^     \n \f]+\\)") (#$ . 15236))
#@344 The minimum number of lines for block output.
If number of lines of output is equal to or exceeds this
value, the output is placed in a #+begin_example...#+end_example
block.  Otherwise the output is marked as literal by inserting
colons at the starts of the lines.  This variable only takes
effect if the :results output option is in effect.
(defvar org-babel-min-lines-for-block-output 10 (#$ . 15434))
#@147 Raise errors when noweb references don't resolve.
Also see `org-babel-noweb-error-langs' to control noweb errors on
a language by language bases.
(defvar org-babel-noweb-error-all-langs nil (#$ . 15846))
#@292 Languages for which Babel will raise literate programming errors.
List of languages for which errors should be raised when the
source code block satisfying a noweb reference in this language
can not be resolved.  Also see `org-babel-noweb-error-all-langs'
to raise errors for all languages.
(defvar org-babel-noweb-error-langs nil (#$ . 16057))
#@64 Number of initial characters to show of a hidden results hash.
(defvar org-babel-hash-show 4 (#$ . 16408))
#@69 Hook for functions to be called after `org-babel-execute-src-block'
(defvar org-babel-after-execute-hook nil (#$ . 16521))
#@225 This generates a regexp used to match a src block named NAME.
If NAME is nil, match any name.  Matched name is then put in
match group 9.  Other match groups are defined in
`org-babel-src-block-regexp'.
 
(fn &optional NAME)
(defalias 'org-babel-named-src-block-regexp-for-name #[256 "\203 \302!\202\f\303\304P\305\306    \307\310O\260\207" [org-babel-src-name-regexp org-babel-src-block-regexp regexp-quote "\\(?9:.*?\\)" "[     ]*" "\\(?:\n[     ]*#\\+\\S-+:.*\\)*?" "\n" 1 nil] 8 (#$ . 16651)])
#@67 This generates a regexp used to match data named NAME.
 
(fn NAME)
(defalias 'org-babel-named-data-regexp-for-name #[257 "\301!\302Q\207" [org-babel-name-regexp regexp-quote "[     ]*$"] 4 (#$ . 17151)])
#@180 Normalize body for element or object DATUM.
DATUM is a source block element or an inline source block object.
Remove final newline character and spurious indentation.
 
(fn DATUM)
(defalias 'org-babel--normalize-body #[257 "\301\302\"\303\304\"\203\211\305\306O\202\211\307!\310=\203#\311\312\313#\2025\204.\301\314\"\2032\211\2025\315!\207" [org-src-preserve-indentation org-element-property :value string-suffix-p "\n" 0 -1 org-element-type inline-src-block replace-regexp-in-string "\n[     ]*" " " :preserve-indent org-remove-indentation] 7 (#$ . 17360)])
#@277 Marker pointing to the src block currently being executed.
This may also point to a call line or an inline code block.  If
multiple blocks are being executed (e.g., in chained execution
through use of the :var header argument) this marker points to
the outer-most code block.
(defvar org-babel-current-src-block-location nil (#$ . 17939))
#@543 Extract information from a source block or inline source block.
 
Optional argument LIGHT does not resolve remote variable
references; a process which could likely result in the execution
of other code blocks.
 
By default, consider the block at point.  However, when optional
argument DATUM is provided, extract information from that parsed
object instead.
 
Return nil if point is not on a source block.  Otherwise, return
a list with the following pattern:
 
  (language body arguments switches name start coderef)
 
(fn &optional LIGHT DATUM)
(defalias 'org-babel-get-src-block-info #[512 "\211\206\302 \303!\211\304=\305>\205\265\306\307\"\310\311P!\306\312\"\313!\314\315\2030\2021    \316!\205=\317\320\"\321\306\322\"\212\323!\203O\324!q\210\212\214~\210\211\206X`b\210\325 !+\262\326\327\306\330\"\306\331\"B\"\"$\306\332\n\"\206z\333\306    \203\205\322\202\206\334\f\"    ?\205\223\335\f!\257\204\246\211AA\211\336\3378!\240\266\211AA\211\340\3378\"\240\266\266\203\207" [org-babel-default-inline-header-args org-babel-default-header-args org-element-context org-element-type inline-src-block (inline-src-block src-block) org-element-property :language intern "org-babel-default-header-args:" :name org-babel--normalize-body apply org-babel-merge-params boundp eval t append :begin markerp marker-buffer org-babel-params-from-properties mapcar org-babel-parse-header-arguments :parameters :header :switches "" :post-affiliated org-src-coderef-format org-babel-process-params 2 org-babel-generate-file-param] 22 (#$ . 18285)])
#@602 Execute the current source code block.
Insert the results of execution into the buffer.  Source code
execution and the collection and formatting of results can be
controlled through a variety of header arguments.
 
With prefix argument ARG, force re-execution even if an existing
result cached in the buffer would otherwise have been returned.
 
Optionally supply a value for INFO in the form returned by
`org-babel-get-src-block-info'.
 
Optionally supply a value for PARAMS which will be merged with
the header arguments specified at the front of the source code
block.
 
(fn &optional ARG INFO PARAMS)
(defalias 'org-babel-execute-src-block #[768 "\206\f\3038\206\f\304 \203\305!\202\306 \211AA\211\307@\"\240\266\310!\205\341\211AA\211\311@!\240\266\3128\313\236A?\205I\211\205I\211\314\230\262\211\205R\315!\205X\316 \205_\232\211\203\207\212\317\320\"b\210\320y\210\321\320w\210\322 \323\324\325\326\327\330\"#!\210\211\262)\202\337\331!\205\337@\332\236A\3338\334\335\"\203\250\336    !\202\254A@\204\264\211\202\277\324\337!\340\320\211\341&\266\202\342\236A\211\203\322\343\344!!\206\323    \345\346P!\320\347!\204\346\350\351\"\210\323\352\353!\3548\211\203\373\327\355\"\202\374\340\262#\210\356\235\203\f\"\210\323\357!\210\202\324\f\"\360\f\236A\361=\203;\362\235\2040\363\235\203;\211<\204;\211CC\202<\211\262\262\364 \236A\211\203\202\203\211\365\366\367!!\370\371\372\373\374!\375\"\312$\216r\211q\210\376\377\236A\"c\210)r\211q\210\201@\320\211\320\371%\210*\266\211\262\201A\f\236A\211\203\304\204\225\202\254\201B\201C\236\211\205\251\211A\206\251\262\"\201D!\262\203\303\201E\201F\"\262)\210\201G  %\266\201H\201I!\210)\266\205\266\205)\207" [org-babel-current-src-block-location default-directory *this* 5 org-babel-where-is-src-block-head copy-tree org-babel-get-src-block-info org-babel-merge-params org-babel-check-evaluate org-babel-process-params 2 :cache "yes" org-babel-sha1-hash org-babel-current-result-hash org-babel-where-is-src-block-result nil "     " org-babel-read-result message replace-regexp-in-string "%" "%%" format "%S" org-babel-confirm-evaluate :result-params 6 org-babel-noweb-p :eval org-babel-expand-noweb-references org-src-coderef-regexp "" 1 :dir file-name-as-directory expand-file-name intern "org-babel-execute:" fboundp error "No org-babel-execute function for %s!" "executing %s code block%s..." capitalize 4 " (%s)" "none" "result silenced" :result-type value "vector" "table" :file get-buffer-create generate-new-buffer-name " *temp file*" make-byte-code 0 "\301\300!\205    \302\300!\207" vconcat vector [buffer-name kill-buffer] org-babel-format-result :sep write-region :post org-babel-result-to-file :file-desc org-babel-ref-resolve remove "file" org-babel-insert-result run-hooks org-babel-after-execute-hook] 24 (#$ . 19868) nil])
#@287 Expand BODY with PARAMS.
Expand a block of code with org-babel according to its header
arguments.  This generic implementation of body expansion is
called for languages which have not defined their own specific
org-babel-expand-body:lang function.
 
(fn BODY PARAMS &optional VAR-LINES)
(defalias 'org-babel-expand-body:generic #[770 "\300\236A\301\236A\302\303\304\205C    C\205C$\305#\207" [:prologue :epilogue mapconcat identity append "\n"] 12 (#$ . 22805)])
#@178 Expand the current source code block.
Expand according to the source code block's header
arguments and pop open the results in a preview buffer.
 
(fn &optional ARG INFO PARAMS)
(defalias 'org-babel-expand-src-block #[768 "\206\300 \211@AA\211\301\302\3038\"\304\"\240\262A\211\305\306\"\203*\307!\202-A@\240\262\310\311P!\310\312P!\313!\203G\"\202U\314\313!\205T!#\315\316!\203j\317\320\321 \322\n\323\260\"\202k\211\207" [org-babel-get-src-block-info sort org-babel-merge-params 2 #[514 "\300@!\300@!\231\207" [symbol-name] 5 "\n\n(fn EL1 EL2)"] org-babel-noweb-p :eval org-babel-expand-noweb-references intern "org-babel-expand-body:" "org-babel-variable-assignments:" fboundp org-babel-expand-body:generic called-interactively-p any org-edit-src-code "*Org-Babel Preview " buffer-name "[ " " ]*"] 17 (#$ . 23286) nil])
#@75 Return the edit (levenshtein) distance between strings S1 S2.
 
(fn S1 S2)
(defalias 'org-babel-edit-distance #[514 "GG\300\301\302\303\304\300\305!\306\"\307\310%\311\312T\"\"!\313\314H\211\314\211I\266\311\312\"\211\203@\211@\314HI\266A\266\202\202)\210\311\312\"\211\203\260\211@H\211\314I\266\311\312\"\211\203\250\211@H\nS#T         S#T^SHSH\232\203\220\314\202\221\312\n\f\nS    S#\\^I\266A\266\202\202Y\210A\266\202\202E\210\211#\207" [vconcat mapcar make-byte-code 257 "\301\300T\302\"\207" vector [make-vector nil] 4 "\n\n(fn _)" number-sequence 1 #[771 "HH\207" [] 5 "\n\n(fn DIST I J)"] 0] 20 (#$ . 24152)])
#@95 Combine a number of lists of header argument names and arguments.
 
(fn ORIGINAL &rest OTHERS)
(defalias 'org-babel-combine-header-arg-lists #[385 "\300!\211\2038\211@\211\211\2030\211@\211@\301\302\303\304\305\306!\307\"\310\311%\"B\262\210A\266\202\202 \210A\266\202\202\210\211\207" [copy-sequence cl-remove-if make-byte-code 257 "\300@\232\207" vconcat vector [] 3 "\n\n(fn PAIR)"] 16 (#$ . 24836)])
#@66 Check for misspelled header arguments in the current code block.
(defalias 'org-babel-check-src-block #[0 "\302\303\304\"\303\305\306 \205,\307\310\311!\312\211\203 \313\314G    $\210\202(\315\314G\312$\210\266\202!\"\211\203e\211@\211\203]\211@\230\204V\316\"X\203V\235\204V\317\320#\210A\266\202\2024\210A\266\202\202-\210\321\322!\207" [org-babel-header-arg-names org-rm-props 2 mapcar symbol-name #[257 "\300@!\301\302O\207" [symbol-name 1 nil] 4 "\n\n(fn ARG)"] org-babel-where-is-src-block-head org-babel-parse-header-arguments match-string 4 nil remove-text-properties 0 set-text-properties org-babel-edit-distance error "Supplied header \"%S\" is suspiciously close to \"%S\"" message "No suspicious header arguments found."] 12 (#$ . 25261) nil])
#@107 Insert a header argument selecting from lists of common args and values.
 
(fn &optional HEADER-ARG VALUE)
(defalias 'org-babel-insert-header-arg #[512 "\301\302!\211@\3038\304\305P!\306\307!\205\310\311\"\"\206&\312\313\314\315\"\"\316\304!\"A\206H\211\317=\203>\320\321!\202H\211<\205H\322\323\324#\212b\210\325 b\210`\206U`Sf\326U\204_\327c\210\330\261\210\211\205l\327\261)\207" [org-babel-common-header-args-w-values org-babel-get-src-block-info light 5 intern "org-babel-header-args:" org-babel-combine-header-arg-lists boundp eval t completing-read "Header Arg: " mapcar #[257 "\300@!\207" [symbol-name] 3 "\n\n(fn HEADER-SPEC)"] assoc :any read-from-minibuffer "value: " mapconcat #[257 "\300\301\302\303\304\"B\"\211\203\211\302\230\204\211\305P\202\306\207" [completing-read "Value: " "default" mapcar symbol-name " " #1=""] 7 "\n\n(fn GROUP)"] #1# point-at-eol 32 " " ":"] 13 (#$ . 26051) nil])
#@73 Call `org-babel-enter-header-arg-w-completion' in appropriate contexts.
(defalias 'org-babel-header-arg-expand #[0 "`Sf\300\232\205\301 \205\302\303\304!!\207" [58 org-babel-where-is-src-block-head org-babel-enter-header-arg-w-completion match-string 2] 3 (#$ . 26998)])
#@83 Insert header argument appropriate for LANG with completion.
 
(fn &optional LANG)
(defalias 'org-babel-enter-header-arg-w-completion #[256 "\301\302P!\303!\205\304\305\"\306\"\307\310\307\311\"\"\312\313\"\314\301!\"A\211\205<\211<\205<\312\315\316\"\307\310\317\320\"\"\"\321\206C\322Qc\210B\207" [org-babel-common-header-args-w-values intern "org-babel-header-args:" boundp eval t org-babel-combine-header-arg-lists mapcar symbol-name car org-completing-read "Header Arg: " assoc format "%s: " apply append " " ""] 14 (#$ . 27279)])
(add-hook 'org-tab-first-hook 'org-babel-header-arg-expand)
#@206 Load the body of the current source-code block.
Evaluate the header arguments for the source block before
entering the session.  After loading the body this pops open the
session.
 
(fn &optional ARG INFO)
(defalias 'org-babel-load-in-session #[512 "\211\206\301 \211@\3028\204\303\304!\202+A\211\305\306\"\203%\307!\202(A@\240\262\310\236A\311\236A\211\203=\312!\206>\313\314P!\315!\204Q\316\317\"\210\320#!\210\321)\207" [default-directory org-babel-get-src-block-info 2 user-error "No src code block at point" org-babel-noweb-p :eval org-babel-expand-noweb-references :session :dir file-name-as-directory intern "org-babel-load-session:" fboundp error "No org-babel-load-session function for %s!" pop-to-buffer 1] 14 (#$ . 27902) nil])
#@255 Initiate session for current code block.
If called with a prefix argument then resolve any variable
references in the header arguments and assign these variables in
the session.  Copy the body of the code block to the kill ring.
 
(fn &optional ARG INFO)
(defalias 'org-babel-initiate-session #[512 "\211\206\301?!\211@A@\3028\303\236A\304\236A\211\203\"\305!\206#\306\307\310\"!\306\311P!;\203@\312\230\203@\313\314!\210\315!\204L\313\316\"\210\317\320!r\211q\210\321\322\323\324\325!\326\"\302$\216\327!c\210\330ed\"\210*\210    \203\203\315!\204}\313\331\"\210\211\"\210\")\207" [default-directory org-babel-get-src-block-info 2 :session :dir file-name-as-directory intern format "org-babel-%s-initiate-session" "org-babel-prep-session:" "none" error "This block is not using a session!" fboundp "No org-babel-initiate-session function for %s!" generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205    \302\300!\207" vconcat vector [buffer-name kill-buffer] org-trim copy-region-as-kill "No org-babel-prep-session function for %s!"] 17 (#$ . 28681) "P"])
#@221 Switch to the session of the current code block.
Uses `org-babel-initiate-session' to start the session.  If called
with a prefix argument then this is passed on to
`org-babel-initiate-session'.
 
(fn &optional ARG INFO)
(defalias 'org-babel-switch-to-session #[512 "\300\301\"!\210\302\207" [pop-to-buffer org-babel-initiate-session 1] 6 (#$ . 29788) "P"])
(defalias 'org-babel-pop-to-session 'org-babel-switch-to-session)
#@69 Switch to code buffer and display session.
 
(fn &optional ARG INFO)
(defalias 'org-babel-switch-to-session-with-code #[512 "\301\302 \303\212\304\"\210)\305 \210 )\207" [org-src-window-setup #[0 "\300\301 !\302\301 p\"\210\302\303 \"\266\304\305!\207" [window-buffer next-window set-window-buffer selected-window other-window 1] 4] org-babel-get-src-block-info reorganize-frame org-babel-switch-to-session org-edit-src-code] 7 (#$ . 30220) "P"])
#@142 Evaluate BODY in edit buffer if there is a code block at point.
Return t if a code block was found at point, nil otherwise.
 
(fn &rest BODY)
(defalias 'org-babel-do-in-edit-buffer '(macro . #[128 "\300\301\302\303\304\305B\306BB\307BBBE\207" [let* ((element (org-element-at-point)) (outside-position (and (<= (line-beginning-position) (org-element-property :post-affiliated element)) (point-marker))) (org-src-window-setup 'switch-invisibly)) when (and (org-babel-where-is-src-block-head element) (org-edit-src-code)) unwind-protect progn ((org-edit-src-exit) (when outside-position (goto-char outside-position))) (t)] 8 (#$ . 30679)]))
(put 'org-babel-do-in-edit-buffer 'edebug-form-spec '(body))
#@456 Read key sequence and execute the command in edit buffer.
Enter a key sequence to be executed in the language major-mode
edit buffer.  For example, TAB will alter the contents of the
Org code block according to the effect of TAB in the language
major mode buffer.  For languages that support interactive
sessions, this can be used to send code from the Org buffer
to the session for evaluation using the native major mode
evaluation mechanisms.
 
(fn KEY)
(defalias 'org-babel-do-key-sequence-in-edit-buffer #[257 "\301 \302 \303\304\"X\205\305 \306\307!\2055\310 \2055\311\312\313\314\315!\316\"\317$\216\320\321\2060\322\323!!!\210)\324)\207" [org-src-window-setup org-element-at-point line-beginning-position org-element-property :post-affiliated point-marker switch-invisibly org-babel-where-is-src-block-head org-edit-src-code make-byte-code 0 "\301 \210\300\205    \300b\207" vconcat vector [org-edit-src-exit] 1 call-interactively key-binding read-key-sequence nil t] 9 (#$ . 31386) "kEnter key-sequence to execute in edit buffer: "])
(defalias 'org-babel-active-location-p #[0 "\300\301 \302\303\304\305\306!\307\"\310$\216\311 )\262!\312>\207" [org-element-type match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 org-element-context (babel-call inline-babel-call inline-src-block src-block)] 8])
#@227 If `point' is on a src block then open the results of the
source code block, otherwise return nil.  With optional prefix
argument RE-RUN the source-code block is evaluated even if
results already exist.
 
(fn &optional RE-RUN)
(defalias 'org-babel-open-src-block-result #[256 "\301\302!\211\205M\212\204\303 \206\304 \210\303 b\210\305\210\306\307!\203'\305u\210\202\306!\2033\310 \210\202K\311\312 \313\3148\236A\"\315\316\317!!\210ed|\210\211c\266)\320\207" [org-bracket-link-regexp org-babel-get-src-block-info light org-babel-where-is-src-block-result org-babel-execute-src-block 1 looking-at "[\n     \f ]" org-open-at-point org-babel-format-result org-babel-read-result :sep 2 pop-to-buffer get-buffer-create "*Org-Babel Results*" t] 7 (#$ . 32749) "P"])
#@1096 Evaluate BODY forms on each source-block in FILE.
If FILE is nil evaluate BODY forms on source blocks in current
buffer.  During evaluation of BODY the following local variables
are set relative to the currently matched code block.
 
full-block ------- string holding the entirety of the code block
beg-block -------- point at the beginning of the code block
end-block -------- point at the end of the matched code block
lang ------------- string holding the language of the code block
beg-lang --------- point at the beginning of the lang
end-lang --------- point at the end of the lang
switches --------- string holding the switches
beg-switches ----- point at the beginning of the switches
end-switches ----- point at the end of the switches
header-args ------ string holding the header-args
beg-header-args -- point at the beginning of the header-args
end-header-args -- point at the end of the header-args
body ------------- string holding the body of the code block
beg-body --------- point at the beginning of the body
end-body --------- point at the end of the body
 
(fn FILE &rest BODY)
(defalias 'org-babel-map-src-blocks '(macro . #[385 "\300\301!\302\303D\304\305\306D\307\310DDED\311BBB\312\313\314DE\315\316\317\320\313\321\322\323\324\325\326\327\"BBBFE\257\330BBB\207" [make-symbol "file" let* (case-fold-search t) visited-p or null get-file-buffer expand-file-name ((point (point)) to-be-removed) save-window-excursion when find-file (setq to-be-removed (current-buffer)) (goto-char (point-min)) while (re-search-forward org-babel-src-block-regexp nil t) (org-babel-active-location-p) (goto-char (match-beginning 0)) let ((full-block (match-string 0)) (beg-block (match-beginning 0)) (end-block (match-end 0)) (lang (match-string 2)) (beg-lang (match-beginning 2)) (end-lang (match-end 2)) (switches (match-string 3)) (beg-switches (match-beginning 3)) (end-switches (match-end 3)) (header-args (match-string 4)) (beg-header-args (match-beginning 4)) (end-header-args (match-end 4)) (body (match-string 5)) (beg-body (match-beginning 5)) (end-body (match-end 5))) (ignore full-block beg-block end-block lang beg-lang end-lang switches beg-switches end-switches header-args beg-header-args end-header-args body beg-body end-body) append ((goto-char end-block)) ((unless visited-p (kill-buffer to-be-removed)) (goto-char point))] 20 (#$ . 33529)]))
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put org-babel-map-src-blocks lisp-indent-function 1 put edebug-form-spec (form body)] 5)
#@151 Evaluate BODY forms on each inline source block in FILE.
If FILE is nil evaluate BODY forms on source blocks in current
buffer.
 
(fn FILE &rest BODY)
(defalias 'org-babel-map-inline-src-blocks '(macro . #[385 "\300\301!\300\302!\300\303!\300\304!\300\305!\300\306!\307\310\nD\311\312D\313\314\nDDED\315B\257\316\317\320DE\321\322BB\323\324\325\326\327BC\317\330\331D\332BB\333\326\334\335\336EDDC\337\340D\341\342BBD\"BBFEE\257\343\344DE\340D\257\207" [make-symbol "--datum" "--end" "--point" "--tempvar" "--to-be-removed" "--visitedp" let* (case-fold-search t) or null get-file-buffer expand-file-name ((point)) save-window-excursion when find-file setq ((current-buffer)) (goto-char (point-min)) while (re-search-forward "src_\\S-" nil t) let ((save-match-data (org-element-context))) eq org-element-type ('inline-src-block) (goto-char (match-beginning 0)) copy-marker org-element-property :end append goto-char set-marker (nil) unless kill-buffer] 29 (#$ . 36062)]))
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put org-babel-map-inline-src-blocks lisp-indent-function 1 put edebug-form-spec (form body)] 5)
#@141 Evaluate BODY forms on each call line in FILE.
If FILE is nil evaluate BODY forms on source blocks in current
buffer.
 
(fn FILE &rest BODY)
(defalias 'org-babel-map-call-lines '(macro . #[385 "\300\301!\300\302!\300\303!\300\304!\300\305!\300\306!\307\310\nD\311\312D\313\314\nDDED\315B\257\316\317\320DE\321\322BB\323\324\325\326\327BC\317\330\331D\332BB\333\326\334\335\336EDDC\337\340D\341\342BBD\"BBFEE\257\343\344DE\340D\257\207" [make-symbol "--datum" "--end" "--point" "--tempvar" "--to-be-removed" "--visitedp" let* (case-fold-search t) or null get-file-buffer expand-file-name ((point)) save-window-excursion when find-file setq ((current-buffer)) (goto-char (point-min)) while (re-search-forward "call_\\S-\\|^[     ]*#\\+CALL:" nil t) let ((save-match-data (org-element-context))) memq org-element-type ('(babel-call inline-babel-call)) (goto-char (match-beginning 0)) copy-marker org-element-property :end append goto-char set-marker (nil) unless kill-buffer] 29 (#$ . 37235)]))
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put org-babel-map-call-lines lisp-indent-function 1 put edebug-form-spec (form body)] 5)
#@149 Evaluate BODY forms on each active Babel code in FILE.
If FILE is nil evaluate BODY forms on source blocks in current
buffer.
 
(fn FILE &rest BODY)
(defalias 'org-babel-map-executables '(macro . #[385 "\300\301!\300\302!\300\303!\300\304!\300\305!\300\306!\307\310\nD\311\312D\313\314\nDDED\315B\257\316\317\320DE\321\322BB\323\324\325\326\327BC\317\330\331D\332BB\333\326\334\335\336EDDC\337\340D\341\342BBD\"BBFEE\257\343\344DE\340D\257\207" [make-symbol "--datum" "--end" "--point" "--tempvar" "--to-be-removed" "--visitedp" let* (case-fold-search t) or null get-file-buffer expand-file-name ((point)) save-window-excursion when find-file setq ((current-buffer)) (goto-char (point-min)) while (re-search-forward "\\(call\\|src\\)_\\|^[     ]*#\\+\\(BEGIN_SRC\\|CALL:\\)" nil t) let ((save-match-data (org-element-context))) memq org-element-type ('(babel-call inline-babel-call inline-src-block src-block)) (goto-char (match-beginning 0)) copy-marker org-element-property :end append goto-char set-marker (nil) unless kill-buffer] 29 (#$ . 38419)]))
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put org-babel-map-executables lisp-indent-function 1 put edebug-form-spec (form body)] 5)
#@141 Execute source code blocks in a buffer.
Call `org-babel-execute-src-block' on every source block in
the current buffer.
 
(fn &optional ARG)
(defalias 'org-babel-execute-buffer #[256 "\301 \210\302\303!\304\305\306\307\310!\311\"\312$\216\303\313\211?\206\314\315!!`\313\316 \304\305\317\307\310!\320\"\321$\216\2037\322!\210p\262eb\210\323\324\313\303#\203\213\325 \304\305\326\307\310!\327\"\330$\216\331 )\262\332!\333>\203\207\305\224b\210\334\335\336\"!\332\331 !\337>\203y\340 \210\202~\341    !\210\211b\210\211\313\211\223\266\210\202=)\210\204\225\342!\210b)\266\204\343!\210)\207" [case-fold-search org-babel-eval-wipe-error-buffer org-outline-overlay-data t make-byte-code 0 "\300\211\205(\211@\301@!\203\211@\302\211\223\210\301A!\203!\211A\302\211\223\210A\266\202\202\207" vconcat vector [markerp nil] 5 nil get-file-buffer expand-file-name current-window-configuration "\301\300!\207" [set-window-configuration] 2 find-file re-search-forward "\\(call\\|src\\)_\\|^[     ]*#\\+\\(BEGIN_SRC\\|CALL:\\)" match-data "\301\300\302\"\207" [set-match-data evaporate] 3 org-element-context org-element-type (babel-call inline-babel-call inline-src-block src-block) copy-marker org-element-property :end (babel-call inline-babel-call) org-babel-lob-execute-maybe org-babel-execute-src-block kill-buffer org-set-outline-overlay-data] 14 (#$ . 39666) "P"])
#@143 Execute source code blocks in a subtree.
Call `org-babel-execute-src-block' on every source block in
the current subtree.
 
(fn &optional ARG)
(defalias 'org-babel-execute-subtree #[256 "\214\212\300 \210\301!\210~*\207" [org-narrow-to-subtree org-babel-execute-buffer] 3 (#$ . 41062) "P"])
#@72 Generate an sha1 hash based on the value of info.
 
(fn &optional INFO)
(defalias 'org-babel-sha1-hash #[256 "\301\206\302 \211AA\211\303\304\3058!\306\"\240\266\307\310\311\312\313\314!\315\"\316\317%@\3058\320\321\"\2037\322!\202:A@\323\324P!\323\325P!\326!\203Q\"\202_\327\326!\205^!#\330\331\332\333\334\301\335\310\311\336\313\314!\337\"\340\317%\3058\"\"\341##\342!\343\344!\203\212\345!\210\262\266\210)\207" [print-level nil org-babel-get-src-block-info sort copy-sequence 2 #[514 "@@\231\207" [] 4 "\n\n(fn A B)"] #[257 "\300\211\203\211@\301\"\262A\266\202\202\210\207" [("replace" "silent" "none" "append" "prepend") remove] 6 "\n\n(fn LST)"] make-byte-code 257 "\211A<\203\211AA\204\301A!\202\211A\211\205^\302!\205)\211:?\205)\211G\303U?\205^\211<\203B@\304\235\203B\305\300!\306\"\202^\211;\203]@\307\235\203]\310\311\305\300\312!!\306\"\313#\202^\211\207" vconcat vector [copy-sequence sequencep 0 (:result-params) sort string< (:results :exports) mapconcat identity split-string " "] 8 "\n\n(fn ARG)" org-babel-noweb-p :eval org-babel-expand-noweb-references intern "org-babel-expand-body:" "org-babel-variable-assignments:" fboundp org-babel-expand-body:generic format "%s-%s" mapconcat identity delq mapcar "\300!\211\205 \301\302\"\207" [format "%S"] 5 ":" sha1 called-interactively-p interactive message] 24 (#$ . 41359) nil])
#@57 Return the current in-buffer hash.
 
(fn &optional INFO)
(defalias 'org-babel-current-result-hash #[256 "\301\302\"\211\205\212\214~\210\211b\210\303!\210\304\305!*\207" [org-babel-result-regexp org-babel-where-is-src-block-result nil looking-at match-string-no-properties 1] 4 (#$ . 42785)])
#@57 Set the current in-buffer hash to HASH.
 
(fn HASH INFO)
(defalias 'org-babel-set-current-result-hash #[514 "\212\214~\210\302\303\"b\210\304!\210\305\224b\210\306\307\310`!\"\210    u\210\306\307\310`!\"\210\311\303\211\211\305%\210\312 \210\313 *\207" [org-babel-result-regexp org-babel-hash-show org-babel-where-is-src-block-result nil looking-at 1 mapc delete-overlay overlays-at replace-match beginning-of-line org-babel-hide-hash] 8 (#$ . 43087)])
#@127 Hide the hash in the current results line.
Only the initial `org-babel-hash-show' characters of the hash
will remain visible.
(defalias 'org-babel-hide-hash #[0 "\302\303!\210\212\304\305\306#\205:\307\310!\205:\310\224    \\\310\225\307\310!\305\211\311\"\262\311\"\262\312\313\314#\210\312\315#\266\206)\207" [org-babel-result-regexp org-babel-hash-show add-to-invisibility-spec (org-babel-hide-hash . t) re-search-forward nil t match-string 1 make-overlay overlay-put invisible org-babel-hide-hash babel-hash] 10 (#$ . 43547)])
#@186 Hide the hash in the current buffer.
Only the initial `org-babel-hash-show' characters of each hash
will remain visible.  This function should be called as part of
the `org-mode-hook'.
(defalias 'org-babel-hide-all-hashes #[0 "\212?\205\302    \303\304#\205\305\224b\210\306 \210\305\225b\210\202)\207" [org-babel-hash-show-time org-babel-result-regexp re-search-forward nil t 0 org-babel-hide-hash] 4 (#$ . 44097)])
(add-hook 'org-mode-hook 'org-babel-hide-all-hashes)
#@186 Return the value of the hash at POINT.
\<org-mode-map>The hash is also added as the last element of the kill ring.
This can be called with `\[org-ctrl-c-ctrl-c]'.
 
(fn &optional POINT)
(defalias 'org-babel-hash-at-point #[256 "\300\301\302\303\304\206\n`!\"\"@\211\205\305!\210\306!\207" [delq nil mapcar #[257 "\300\301\"\207" [overlay-get babel-hash] 4 "\n\n(fn OL)"] overlays-at kill-new message] 7 (#$ . 44578) nil])
#@123 Hide portions of results lines.
Add `org-babel-hide-result' as an invisibility spec for hiding
portions of results lines.
(defalias 'org-babel-result-hide-spec #[0 "\300\301!\207" [add-to-invisibility-spec (org-babel-hide-result . t)] 2 (#$ . 45013)])
(add-hook 'org-mode-hook 'org-babel-result-hide-spec)
#@26 Overlays hiding results.
(defvar org-babel-hide-result-overlays nil (#$ . 45325))
#@41 Fold all results in the current buffer.
(defalias 'org-babel-result-hide-all #[0 "\301 \210\212\302\303\304#\205\212\305\224b\210\306 \210)\202)\207" [org-babel-result-regexp org-babel-show-result-all re-search-forward nil t 0 org-babel-hide-result-toggle-maybe] 4 (#$ . 45413) nil])
#@43 Unfold all results in the current buffer.
(defalias 'org-babel-show-result-all #[0 "\301\302\"\210\303\211\207" [org-babel-hide-result-overlays mapc delete-overlay nil] 3 (#$ . 45708)])
#@39 Toggle visibility of result at point.
(defalias 'org-babel-hide-result-toggle-maybe #[0 "\302\212\303\304!\210\305    !)\205\306 \210\302)\207" [case-fold-search org-babel-result-regexp t beginning-of-line 1 looking-at org-babel-hide-result-toggle] 2 (#$ . 45902) nil])
#@68 Toggle the visibility of the current result.
 
(fn &optional FORCE)
(defalias 'org-babel-hide-result-toggle #[256 "\212\303 \210\304\305\306#\203`\303\307!\210`S\310    !\203\311y\210\202\312 Sb\210`\305\306\313\314\315!\">\203D\203;\316=\205[\317\320\315!\"\202[\321\"\262\322\323\324#\210\322\325\326#\210\211\nB\211\266\203\202c\327\330!)\207" [org-babel-result-regexp org-babel-multi-line-header-regexp org-babel-hide-result-overlays beginning-of-line re-search-forward nil t 2 looking-at 1 org-babel-result-end mapcar #[257 "\300\301\"\302=\207" [overlay-get invisible org-babel-hide-result] 4 "\n\n(fn OVERLAY)"] overlays-at off mapc #[257 "\211\235\203 \301\"\302\303\"\304=\205\305!\207" [org-babel-hide-result-overlays delq overlay-get invisible org-babel-hide-result delete-overlay] 4 "\n\n(fn OV)"] make-overlay overlay-put invisible org-babel-hide-result isearch-open-invisible #[257 "\211\235\203 \301\"\302\303\"\304=\205\305!\207" [org-babel-hide-result-overlays delq overlay-get invisible org-babel-hide-result delete-overlay] 4 "\n\n(fn OV)"] error "Not looking at a result line"] 9 (#$ . 46178) nil])
(byte-code "\300\301\302\"\210\300\303\304\"\207" [add-hook org-tab-first-hook org-babel-hide-result-toggle-maybe org-mode-hook #[0 "\300\301\302\303\304$\207" [add-hook change-major-mode-hook org-babel-show-result-all append local] 5]] 3)
#@183 Retrieve parameters specified as properties.
Return a list of association lists of source block params
specified in the properties of the current outline entry.
 
(fn &optional LANG)
(defalias 'org-babel-params-from-properties #[256 "\301 \302\303\304\305\306!\307\"\310$\216\311\312\313\314#!\205#\311\312\315P\314#!)D\207" [org-babel-current-src-block-location match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 org-babel-parse-header-arguments org-entry-get "header-args" inherit "header-args:"] 8 (#$ . 47581)])
#@300 Split STRING on instances of ALTS.
ALTS is a character, or cons of two character options where each
option may be either the numeric code of a single character or
a list of character alternatives.  For example, to split on
balanced instances of "[     ]:", set ALTS to ((32 9) . 58).
 
(fn STRING ALTS)
(defalias 'org-babel-balanced-split #[514 "\300\301!r\211q\210\302\303\304\305\306!\307\"\310$\216c\210eb\210\311\312\211m\204`Sf\312f#\203J:\2034A\262\203D\313\314\237\"B\262\312\262\312u\210\202\312f\315>\203\302`\312f\211C\312u\210\211\203\237\316\317\312\320#\203\237`Sf\211\321>\203x\211\211B\262\210\202\233\211\322=\203\216@\323=\203\233\211A\262\210\202\233@\324=\203\233\211A\262\210\210\202Y\211\204\264`{\325\312\"\262\237\244\262\202\275B\262Tb\210\266\202\312f\326=\203\367`Sf\327=\204\367`\316\330\312\320#\203\353\211`{\325\312\"\262\237\244\262\202\363\326B\262\312u\210\210\202\312fB\262\312u\210\202\203\313\314\237\"B\262\211\237\266\203*\207" [generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205    \302\300!\207" vconcat vector [buffer-name kill-buffer] 2 #[771 ":\203\\@\211:\2035A\211:\203#\211>\205>\266\202\2020\211>\205.=\266\202\262\202[A\211:\203L\211=\205G>\266\202\202Y\211=\205W=\266\202\262\207\211=\203d\300\207\301\207" [t nil] 9 "\n\n(fn ALTS PAST NEXT)"] nil apply string (40 91) re-search-forward "[]()]" t (40 91) 93 91 40 append 34 92 "[^\\]\""] 13 (#$ . 48152)])
#@68 Join splits where "=" is on either end of the split.
 
(fn CH LIST)
(defalias 'org-babel-join-splits-near-ch #[514 "\300\301\302\303\304!\305\"\306\307%\300\301\310\303\304!\311\"\306\307%\312\313\300\314\315\303\304\"\305\"\316\317%\320\321$!\207" [make-byte-code 257 "\300\211GSHU\207" vconcat vector [] 4 "\n\n(fn STR)" "\300\301HU\207" [0] reverse cl-reduce 514 "@\211\203\300!\204\301!\203\211PAB\202B\207" 5 "\n\n(fn ACC EL)" :initial-value nil] 13 (#$ . 49681)])
#@73 Parse a string of header arguments returning an alist.
 
(fn ARG-STRING)
(defalias 'org-babel-parse-header-arguments #[257 "\211G\300V\205\301\302\303\304\305\306\307\"\211@\304\310A\"B\262\"\"!\207" [0 org-babel-parse-multiple-vars delq nil mapcar #[257 "\300\301\"\203\302\303\304\"!\305\306\303\307\"!!B\207\302\306!!\310B\207" [string-match "\\([^ \f    \n ]+\\)[ \f    \n ]+\\([^ \f    \n ]+.*\\)" intern match-string 1 org-babel-read org-babel-chomp 2 nil] 7 "\n\n(fn ARG)"] org-babel-balanced-split ((32 9) . 58) #[257 "\300P\207" [":"] 3 "\n\n(fn R)"]] 11 (#$ . 50182)])
#@197 Expand multiple variable assignments behind a single :var keyword.
 
This allows expression of multiple variables with one :var as
shown below.
 
#+PROPERTY: var foo=1, bar=2
 
(fn HEADER-ARGUMENTS)
(defalias 'org-babel-parse-multiple-vars #[257 "\300C\301\302\303\304\305\306!\307\"\310\311%\"\210\211\242\237\207" [nil mapc make-byte-code 257 "\211@\301=\203\302\303\304\305\306\307\300!\310\"\311\312%\313\314\315A\316\"\"\"\207\300\300\242B\240\207" vconcat vector [:var mapcar make-byte-code 257 "\300\301\302!B\300\242B\240\207" vconcat vector [:var org-trim] 5 "\n\n(fn V)" org-babel-join-splits-near-ch 61 org-babel-balanced-split 32] 8 "\n\n(fn PAIR)"] 9 (#$ . 50774)])
#@69 Expand variables in PARAMS and add summary parameters.
 
(fn PARAMS)
(defalias 'org-babel-process-params #[257 "\300\301\302!\"\303\236\203\304\236\203\211C\202'\305\306\236A\307\236A\310\236A$\311\236A\206/\312\313\314\315;\203;\202?\316\317\"!\320\236A\"!\314\300\321@\"\303\211\236A\206YA@B\304\211    \236A\206hAA@B\320B\322\323\235\203x\324\202\204\325\235\203\203\326\202\204\326BF\327\330    \"#\207" [mapcar #[257 "\211:\203\207\300!\207" [org-babel-ref-parse] 3 "\n\n(fn EL)"] org-babel--get-vars :colname-names :rowname-names org-babel-disassemble-tables :hlines :colnames :rownames :results "" delete-dups append split-string eval t :result-params #[257 "\300B\207" [:var] 3 "\n\n(fn VAR)"] :result-type "output" output "value" value cl-remove-if #[257 "\211@\300>\207" [(:colname-names :rowname-names :result-params :result-type :var)] 3 "\n\n(fn X)"]] 13 (#$ . 51464)])
#@45 Remove all `hline's from TABLE.
 
(fn TABLE)
(defalias 'org-babel-del-hlines #[257 "\300\301\"\207" [remq hline] 4 (#$ . 52391)])
#@180 Return the column names of TABLE.
Return a cons cell, the `car' of which contains the TABLE less
colnames, and the `cdr' of which contains a list of the column
names.
 
(fn TABLE)
(defalias 'org-babel-get-colnames #[257 "\211A@\300=\203\211AA@B\207\211A@B\207" [hline] 3 (#$ . 52528)])
#@222 Return the row names of TABLE.
Return a cons cell, the `car' of which contains the TABLE less
rownames, and the `cdr' of which contains a list of the rownames.
Note: this function removes any hlines in TABLE.
 
(fn TABLE)
(defalias 'org-babel-get-rownames #[257 "\300!\301\302\303\304\305!\306\"\307$ B\207" [org-babel-del-hlines make-byte-code 0 "\300C\301\302\303\304\305\306!\307\"\310\311%\300\"\207" vconcat vector [mapcar make-byte-code 257 "\300\242\211@\211A\240\210\266\202\242\300\211\242A\240\210\207" vconcat vector [] 6 "\n\n(fn ROW)"] 8] 8 (#$ . 52824)])
#@59 Add COLNAMES to TABLE if they exist.
 
(fn TABLE COLNAMES)
(defalias 'org-babel-put-colnames #[514 "\211\203 \300\301\302$\207\207" [apply list hline] 7 (#$ . 53406)])
#@59 Add ROWNAMES to TABLE if they exist.
 
(fn TABLE ROWNAMES)
(defalias 'org-babel-put-rownames #[514 "\211C\211\242\203\300\301\302\303\304\305!\306\"\307\310%\"\202\207" [mapcar make-byte-code 257 "\211<\203\300\242\300\211\242A\240\210\242\206\301B\207\207" vconcat vector [""] 4 "\n\n(fn ROW)"] 10 (#$ . 53583)])
#@245 Select one out of an alist of row or column names.
SELECTOR can be either a list of names in which case those names
will be returned directly, or an index into the list NAMES in
which case the indexed names will be return.
 
(fn NAMES SELECTOR)
(defalias 'org-babel-pick-name #[514 "\211<\203\207\205.\211\203\2119\203\211\300\232\204\301\"A\207\211\250\203)\211S8\207\302!@A\207" [t assoc last] 5 (#$ . 53916)])
#@227 Parse tables for further processing.
Process the variables in VARS according to the HLINES,
ROWNAMES and COLNAMES header arguments.  Return a list consisting
of the vars, cnames and rnames.
 
(fn VARS HLINES COLNAMES ROWNAMES)
(defalias 'org-babel-disassemble-tables #[1028 "\300C\300C\301\302\303\304\305\306\n\n\n\n\n%\307\"\310\311%\"\312\242!\312\242!E\207" [nil mapcar make-byte-code 257 "\211A<\203k\301\305\232\2048\301\204\"\211AA@\306=\2038\306AAA\235\2048\307A!\303@AB\303\242B\240\210@@B\266\202\302\203X\302\305\232\204X\310A!\304@AB\304\242B\240\210@@B\266\202\300\203k\300\311\232\204k\211@\312A!B\262\207" vconcat vector ["no" hline org-babel-get-colnames org-babel-get-rownames "yes" org-babel-del-hlines] 5 "\n\n(fn VAR)" reverse] 17 (#$ . 54350)])
#@171 Add column and row names to a table.
Given a TABLE and set of COLNAMES and ROWNAMES add the names
to the table for reinsertion to org-mode.
 
(fn TABLE COLNAMES ROWNAMES)
(defalias 'org-babel-reassemble-table #[771 "<\2035\211\203GGU\203\300\"\202\2033\211@<\2033\211@GGU\2033\301\"\2024\211\207\207" [org-babel-put-rownames org-babel-put-colnames] 7 (#$ . 55153)])
#@418 Find where the current source block begins.
 
If optional argument SRC-BLOCK is `src-block' type element, find
its current beginning instead.
 
Return the point at the beginning of the current source block.
Specifically at the beginning of the #+BEGIN_SRC line.  Also set
match-data relatively to `org-babel-src-block-regexp', which see.
If the point is not on a source block then return nil.
 
(fn &optional SRC-BLOCK)
(defalias 'org-babel-where-is-src-block-head #[256 "\211\206\301 \302!\303=\205/\304\305\"\212\214~\210\306 \210\307w\210`W\205,\304\310\"b\311!\210*\262\207" [org-babel-src-block-regexp org-element-at-point org-element-type src-block org-element-property :end beginning-of-line "      \n" :post-affiliated looking-at] 6 (#$ . 55547)])
#@48 Go to the beginning of the current code block.
(defalias 'org-babel-goto-src-block-head #[0 "\300 \211\203 \211b\202\301\302!\207" [org-babel-where-is-src-block-head error "Not currently in a code block"] 3 (#$ . 56314) nil])
#@45 Go to a named source-code block.
 
(fn NAME)
(defalias 'org-babel-goto-named-src-block #[257 "\300!\211\203\301 \210\211b\210\302 \202\303\304\"\207" [org-babel-find-named-block org-mark-ring-push org-show-context message "source-code block `%s' not found in this buffer"] 5 (#$ . 56549) (byte-code "\304\211\305 \306\307\310\304\311 \312!\211\313>\205\314\315 !\211\203.\211@\nG\\A GZ{\202Y\316>\203;\317\320\"\202Y\317\321\"@\206Y\322\323!\211\205S\324 \"\205S\211\262\206Y\325\266\203%*C\207" [case-fold-search completion-ignore-case org-babel-noweb-wrap-start org-babel-noweb-wrap-end t org-babel-src-block-names completing-read "source-block name: " nil org-element-context org-element-type (inline-src-block src-block) org-in-regexp org-babel-noweb-wrap (babel-call inline-babel-call) org-element-property :call :results thing-at-point symbol member-ignore-case ""] 15)])
#@208 Find a named source-code block.
Return the location of the source block identified by source
NAME, or nil if no such block exists.  Set match data according
to `org-babel-named-src-block-regexp'.
 
(fn NAME)
(defalias 'org-babel-find-named-block #[257 "\212eb\210\300!\301!\203\302\224b\210\303 \206%\3041#\305\302\306#0\202%\210\306\262)\207" [org-babel-named-src-block-regexp-for-name looking-at 1 line-beginning-position (error) org-next-block nil] 6 (#$ . 57462)])
#@88 Returns the names of source blocks in FILE or the current buffer.
 
(fn &optional FILE)
(defalias 'org-babel-src-block-names #[256 "r\211\203 \301!\202\fpq\210\302\212\303!\203\304!q\210\212\214~\210\211\206$`b\210\305\306\307\310\307\306#\203O\311 \312!\313=\203K\314\315\"\211\203J\211B\262\210\210\202+)\266\202+\262)\207" [case-fold-search find-file-noselect 1 markerp marker-buffer "^[     ]*#\\+begin_src " t nil re-search-forward org-element-at-point org-element-type src-block org-element-property :name] 9 (#$ . 57945)])
#@34 Go to a named result.
 
(fn NAME)
(defalias 'org-babel-goto-named-result #[257 "\300!\211\203\211b\210\301 \202\302\303\"\207" [org-babel-find-named-result org-show-context message "result `%s' not found in this buffer"] 5 (#$ . 58497) (byte-code "\301\302\303\304 \305\301$)C\207" [completion-ignore-case t completing-read "Source-block name: " org-babel-result-names nil] 5)])
#@133 Find a named result.
Return the location of the result named NAME in the current
buffer or nil if no such result exists.
 
(fn NAME)
(defalias 'org-babel-find-named-result #[257 "\212eb\210\302\303\304\305!#\30628\307\310\302#\2057\311 \312!\313=\204-`\314\315\"W\2033\316\306\317 \"\210\210\2020)\266\202)\207" [org-babel-results-keyword case-fold-search t format "^[     ]*#\\+%s.*?:[     ]*%s[     ]*$" regexp-quote :found re-search-forward nil org-element-at-point org-element-type keyword org-element-property :post-affiliated throw line-beginning-position] 8 (#$ . 58889)])
#@82 Returns the names of results in FILE or the current buffer.
 
(fn &optional FILE)
(defalias 'org-babel-result-names #[256 "\212\211\203    \302!\210eb\210\303\304\305    \304\303#\203\"\306\307!B\262\202)\262)\207" [case-fold-search org-babel-result-w-name-regexp find-file t nil re-search-forward match-string-no-properties 9] 7 (#$ . 59478)])
#@124 Jump to the next source block.
With optional prefix argument ARG, jump forward ARG many source blocks.
 
(fn &optional ARG)
(defalias 'org-babel-next-src-block #[256 "\301\302#\207" [org-babel-src-block-regexp org-next-block nil] 5 (#$ . 59833) "p"])
#@129 Jump to the previous source block.
With optional prefix argument ARG, jump backward ARG many source blocks.
 
(fn &optional ARG)
(defalias 'org-babel-previous-src-block #[256 "\301\"\207" [org-babel-src-block-regexp org-previous-block] 4 (#$ . 60092) "p"])
#@25 Mark current src block.
(defalias 'org-babel-mark-block #[0 "\301 \211\205\212\211b\210\302!\210)\303\304\225\305\306#\210\304\224b\207" [org-babel-src-block-regexp org-babel-where-is-src-block-head looking-at push-mark 5 nil t] 5 (#$ . 60356) nil])
#@319 Wrap or split the code in the region or on the point.
When called from inside of a code block the current block is
split.  When called from outside of a code block a new code block
is created.  In both cases if the region is demarcated and if the
region is not active then the point is demarcated.
 
(fn &optional ARG)
(defalias 'org-babel-demarcate-block #[256 "\304\305!\306 \211\205\f\307\310!\205\307\311!\312\313 \206\314\315\"\316P\2052\317\320\317\321\322#)\266\203)\203a\323\324\325\326\327\330\f\f\n\n\n%\331\"\332\333%\334\335 \203Y\336 `D\202[`C\337\"\"\202\333`\340\341\342\343\344\345\342\346\n\"\342\347 \"\"!\"\"\350\335 \203\336 \202\200``\"\351\352!\203\214\353\202\215\354\n\203\230\354P\202\231\353\203\241\355\202\242\356\357!\354\211G\310U\204\276\360\361\"\204\276\360\354\"\203\302\353\202\303\354\n\203\314\355\202\315\356\362!\260c\210b\210\363\314!\266\203\207" [case-fold-search inhibit-changing-match-data org-babel-load-languages org-src-lang-modes org-babel-get-src-block-info light org-babel-where-is-src-block-head match-string 0 4 make-string org-current-level 1 42 " " nil "#\\+begin_src" t string-match mapc make-byte-code 257 "\212\211b\210\301@\305\306 \307\"\310\311\312 \313 {\"\203\312 \313 |\210\314\315!\203&\316\202'\317\304\2030\320\2021\321\322!\300\203;\303\202<\317\304\203F\320\202G\321\323!\302G\324V\203X\325\302P\202Y\302\314\326!\203c\316\202i\317\305i\307\"P\260\nc\266)\327\330!\207" vconcat vector [make-string org-get-indentation 32 string-match "^[[:space:]]*$" point-at-bol point-at-eol looking-at "^" #1="" "\n" downcase upcase "#+end_src\n" "#+begin_src " 1 " " "[\n ]" move-end-of-line 2] 16 "\n\n(fn PLACE)" sort org-region-active-p mark > completing-read "Lang: " mapcar symbol-name delete-dups append car #[257 "\300@!\207" [intern] 3 "\n\n(fn EL)"] delete-and-extract-region looking-at "^" #1# "\n" downcase upcase "#+begin_src " string-suffix-p " " "#+end_src\n" move-end-of-line] 19 (#$ . 60616) "P"])
#@190 Insert RESULTS keyword with NAME value at point.
If NAME is nil, results are anonymous.  HASH is a string used as
the results hash, or nil.  Leave point before the keyword.
 
(fn NAME HASH)
(defalias 'org-babel--insert-results-keyword #[514 "\212\302c\210)\303 \210\304\305!\210\306\204\307\202(    \203$\310\311\312\313!#\202(\310\314\"\315\2051\316P\302\260c\210\317\320!\204A\212\302c\210)\321\322!\210\211\205K\323 \207" [org-babel-results-keyword org-babel-hash-show-time "\n" org-indent-line delete-char 1 "#+" nil format "[%s %s]" format-time-string "<%F %T>" "[%s]" ":" " " looking-at "^[     ]*$" beginning-of-line 0 org-babel-hide-hash] 8 (#$ . 62663)])
#@300 Clear results when hash doesn't match HASH.
 
When results hash does not match HASH, remove RESULTS keyword at
point, along with related contents.  Do nothing if HASH is nil.
 
Return a non-nil value if results were cleared.  In this case,
leave point where new results should be inserted.
 
(fn HASH)
(defalias 'org-babel--clear-results-maybe #[257 "\211\205C\301!\210\302\303!\230?\205C\304 \305\306\307\"!\211\212\306\310\"b\210\311\312x\210\313\314!)|\210`U\2048\313 \313\314!|\210\211b\210\211\312\211\223\210\315\266\202\207" [org-babel-result-regexp looking-at match-string 1 org-element-at-point copy-marker org-element-property :post-affiliated :end "     \n" nil line-beginning-position 2 t] 7 (#$ . 63343)])
#@616 Find where the current source block results begin.
 
Return the point at the beginning of the result of the current
source block, specifically at the beginning of the results line.
 
If no result exists for this block return nil, unless optional
argument INSERT is non-nil.  In this case, create a results line
following the source block and return the position at its
beginning.  In the case of inline code, remove the results part
instead.
 
If optional argument HASH is a string, remove contents related to
RESULTS keyword if its hash is different.  Then update the latter
to HASH.
 
(fn &optional INSERT INFO HASH)
(defalias 'org-babel-where-is-src-block-result #[768 "\302 \3032\f\212\214~\210\304!\211\305>\203_\306\307\306\310\"\"\306\311\"b\210\312w\210\313\303`W\205Y\302 \304!\314=\205W\306\315\"\316\230\205W\204H`\202W`\306\311\"b\210\317\320x\210`|\210`\262\"\266\202\341\211\321>\203\334\306\322\"\211\205p\323!\211\206x\306\311\"b\210\211\203\222\324!\203\212\325\"\210\313\303`\"\210\202\327\204\327`\306\307\306\310\"\"\206\243d=\204\327\326 \212\306\327\"b\210\330 )\331P\332\333\332#)\266\203\203\327\334 \210\324!\203\322\325\320\"\210\313\303`\"\210\266\202\341\313\303\320\"\210\210*\205 \212\306\311\"d^b\210\312\320x\210\320y\210n\204\376\335c\210\335c\210\325\306\322\"\"\210`)0\207" [org-babel-result-regexp case-fold-search org-element-context :found org-element-type (inline-src-block inline-babel-call) org-element-property :contents-end :parent :end "     \n" throw macro :key "results" "     " nil (src-block babel-call) :name org-babel-find-named-result org-babel--clear-results-maybe org-babel--insert-results-keyword org-element-at-point :post-affiliated line-end-position "$" t re-search-forward beginning-of-line "\n"] 14 (#$ . 64071)])
#@83 Read ELEMENT into emacs-lisp.
Return nil if ELEMENT cannot be read.
 
(fn ELEMENT)
(defalias 'org-babel-read-element #[257 "\212\214~\210\302\303\"b\210\304!\211\305=\203%\306\302\307\"!\310!\206 \211\262\202\267\211\311=\2030\312 \202\267\211\313=\203;\314 \202\267\211\315=\203\\\302\307\"\204P\302\316\"\203T\211\202W\317!\262\202\267\211\320=\203k\317\302\307\"!\202\267\211\321=\203\240\322\323w\210\324    !\203\223\212\325\225b\210\326\323w\210\302\327\"`X)\203\223\330 \202\267\331\302\332\"\302\333\"\"\202\267\211\334>\203\266\317\331\302\332\"\302\333\"\"!\202\267\323\262*\207" [org-src-preserve-indentation org-bracket-link-regexp org-element-property :post-affiliated org-element-type fixed-width org-trim :value org-babel--string-to-number table org-babel-read-table plain-list org-babel-read-list example-block :preserve-indent org-remove-indentation export-block paragraph "     " nil looking-at 0 "      \n" :end org-babel-read-link buffer-substring-no-properties :contents-begin :contents-end (special-block verse-block quote-block center-block)] 8 (#$ . 65897)])
#@43 Read the result at point into emacs-lisp.
(defalias 'org-babel-read-result #[0 "\212\301 \210\302\303\304!)\262)?\205\305\306 !\207" [inhibit-changing-match-data beginning-of-line "[     ]*$" t looking-at org-babel-read-element org-element-at-point] 3 (#$ . 67015)])
#@42 Read the table at point into emacs-lisp.
(defalias 'org-babel-read-table #[0 "\300\301\302 \"\207" [mapcar #[257 "\2119\203\f\211\300\232\203\f\207\301\302\"\207" [hline mapcar #[257 "\300\301\"\207" [org-babel-read inhibit-lisp-eval] 4 "\n\n(fn EL)"]] 4 "\n\n(fn ROW)"] org-table-to-lisp] 3 (#$ . 67290)])
#@41 Read the list at point into emacs-lisp.
(defalias 'org-babel-read-list #[0 "\300\301\302 A\"\207" [mapcar #[257 "\300\301\"\207" [org-babel-read inhibit-lisp-eval] 4 "\n\n(fn EL)"] org-list-to-lisp] 3 (#$ . 67607)])
#@121 Read the link at point into emacs-lisp.
If the path of the link is a file path it is expanded using
`expand-file-name'.
(defalias 'org-babel-read-link #[0 "\304\305    !\205&\306\307!\310\211\203\311\312G\n$\210\202#\313\312G\310$\210\266\202\314 \"\2051\306\307\"\211\204;\315!\202R\211\316\230\203Q\314\317\"\205R\315\306\320\"!\202R)\207" [case-fold-search org-bracket-link-regexp org-rm-props org-link-types-re t looking-at match-string 1 nil remove-text-properties 0 set-text-properties string-match expand-file-name "file" "file\\(.*\\):\\(.+\\)" 2] 7 (#$ . 67831)])
#@63 Format RESULT for writing to file.
 
(fn RESULT &optional SEP)
(defalias 'org-babel-format-result #[513 "\300<\203\301\302\206\303\304F\"\202\211!\207" [#[257 "\211;\203\207\300\301\"\207" [format "%S"] 4 "\n\n(fn R)"] orgtbl-to-generic :sep "    " :fmt] 9 (#$ . 68429)])
#@3192 Insert RESULT into the current buffer.
 
By default RESULT is inserted after the end of the current source
block.  The RESULT of an inline source block usually will be
wrapped inside a `results' macro and placed on the same line as
the inline source block.  The macro is stripped upon export.
Multiline and non-scalar RESULTS from inline source blocks are
not allowed.  With optional argument RESULT-PARAMS controls
insertion of results in the Org mode file.  RESULT-PARAMS can
take the following values:
 
replace - (default option) insert results after the source block
          or inline source block replacing any previously
          inserted results.
 
silent -- no results are inserted into the Org buffer but
          the results are echoed to the minibuffer and are
          ingested by Emacs (a potentially time consuming
          process).
 
file ---- the results are interpreted as a file path, and are
          inserted into the buffer using the Org file syntax.
 
list ---- the results are interpreted as an Org list.
 
raw ----- results are added directly to the Org file.  This is
          a good option if you code block will output Org
          formatted text.
 
drawer -- results are added directly to the Org file as with
          "raw", but are wrapped in a RESULTS drawer or results
          macro, allowing them to later be replaced or removed
          automatically.
 
org ----- results are added inside of a "src_org{}" or "#+BEGIN_SRC
          org" block depending on whether the current source block is
          inline or not.  They are not comma-escaped when inserted,
          but Org syntax here will be discarded when exporting the
          file.
 
html ---- results are added inside of a #+BEGIN_EXPORT HTML block
          or html export snippet depending on whether the current
          source block is inline or not.  This is a good option
          if your code block will output html formatted text.
 
latex --- results are added inside of a #+BEGIN_EXPORT LATEX
          block or latex export snippet depending on whether the
          current source block is inline or not.  This is a good
          option if your code block will output latex formatted
          text.
 
code ---- the results are extracted in the syntax of the source
          code of the language being evaluated and are added
          inside of a source block with the source-code language
          set appropriately.  Also, source block inlining is
          preserved in this case.  Note this relies on the
          optional LANG argument.
 
list ---- the results are rendered as a list.  This option not
          allowed for inline src blocks.
 
table --- the results are rendered as a table.  This option not
          allowed for inline src blocks.
 
INFO may provide the values of these header arguments (in the
`header-arguments-alist' see the docstring for
`org-babel-get-src-block-info'):
 
:file --- the name of the file to which output should be written.
 
:wrap --- the effect is similar to `latex' in RESULT-PARAMS but
          using the argument supplied to specify the export block
          or snippet type.
 
(fn RESULT &optional RESULT-PARAMS INFO HASH LANG)
(defalias 'org-babel-insert-result #[1281 "C\211\242;\203M\211\242\303\211\203\304\305G$\210\202#\306\305G\303$\210\266\202\240\210\307\235\203[\211\310\242\311\3128\236\205G\311\3128\236A\206G\242\"\240\210\202[\211\242<\204[\211\313\314\242\"\240\210\203w\315\235\203w\316\317\320\321\313\314\242\"#!\210\211\242\202h\322 \323!\324>\205\202\211\262\211\203\304\325\235\203\223\326\202\272\242<\203\235\327\202\272\330\242\303\331\332#)\266\203\203\262\333\202\272\334\235\205\272\335\211\203\303\336\337\"\210\210\212\340 \341d\331\"\322 \323!\342>\205\326\211\262\343\331\303    #\344\312\n8\236A\205\374deZ\345 U?\205\374V\206\374X\303C\303C\303\346 \242!\203!\204!\n\242\347\303O\350\230\204!\n\211\242\350P\240\210\351\305\352\353\354  \n    $\355\"\356$\216\203:~\210\203Db\210\202O\357\360\"b\210\361\303x\210\204[\362 \262\363y\210`\240\210\203r\204\231\364c\210`\240\210\202\231\365\235\203\201`\366 |\210\202\231\367\235\203\224\366 b\210\370 \240\210\202\231\371\235\210\203\243\364P\202\244\372\262\351\373\374\353\354 #\375\"\376\377%\201@\f\242\203\233\334\235\203\372\201A\201B\201C\201D\201E\242<\203\343\242\202\354\201F\242\350\331#\"B\201G\"!\350\261\210\202\233\211 \211\242\"\203@\242b\210\201H\201I\201J\242\"\203 \242\202! \242C\303\"\350Pc\210\242b\210\201K \2037\201L \210\201M b\210\202\233\f\242<\203T\313\201N\242\"c\210\202\233\307\235\203s\203k\f\201O\242!\240\210\f\242c\210\202\233\203\222\201P\235\204\222\201O\201Q\242\350\"!c\210\202\233\242b\210\f\242c\210\341`\331\"\240\210\201R\3128\236\203\341\201R\3128\236A\206\274\201S\201TP\201U\201F!@P\303\211\201V\201WQ\201X&\266\202\201Y\235\203\377\201Z\201[\303\211\201\\\201X&\210\202\201]\235\203\201^\201[\303\211\201_\201X&\210\202\201`\235\203K\242b\210\201K \2036\201a \210\201b\201c\303\211\201d\201e&\210\202\201f\235\203} \206\\\201g\313\201h #\201c\303\211\313\201i#\201e&\266\202\201P\235\203\231\242b\210\201K \203\201a \210\202\201j\235\204\253\201k\235\203\322\242b\210\201K \203\273\201a \210\201l\201m\201n\303\201o\201p&\210\202\203\357\307\235\203\357\303\211\211\211\201o\201p&\210\202\211 \211\242\"\204\307\235\204\313\201q\n\"\201r\242\242    \f$\210)\266\204>\211\247\203>\211\305V\203>\n\242<\2034\367\235\204>\201s\242\242#\210\n\242\204]\201t\235\203U\316\201u!\202b\316\201v!\202b\316\201w!)\266\211)\262\207" [org-rm-props inhibit-changing-match-data org-babel-inline-result-wrap nil remove-text-properties 0 set-text-properties "file" org-babel-result-to-file :file-desc 2 format "%S" "silent" message replace-regexp-in-string "%" "%%" org-element-context org-element-type (inline-babel-call inline-src-block) "table" "`:results table'" "list result" "\n." t string-match "multiline result" "list" "`:results list'" user-error "Inline error: %s cannot be used" point-min-marker copy-marker (inline-babel-call inline-src-block) org-babel-where-is-src-block-result :results_switches buffer-size org-string-nw-p -1 "\n" make-byte-code "\303\242\304\211\223\210\302\203\300\301}\210\300\304\211\223\210\301\304\211\223\207" vconcat vector [nil] 3 org-element-property :end "     " org-get-indentation 1 " " "replace" org-babel-result-end "append" point-marker "prepend" "" 1538 "\300\203 \262\211\262\303\262\304\302\242!\302\242b\210?\205\305Pc\210\301\242b\210?\205+\305Pc\210\2049\306`^\"\210\302\242b\207" [t marker-position "\n" org-escape-code-in-region] 10 "\n\n(fn START FINISH &optional NO-ESCAPE NO-NEWLINES INLINE-START INLINE-FINISH)" #[514 "\211<\205\300!A?\205\301\302\242\"\207" [last cl-every #[257 "\211:?\206 \300!A?\207" [last] 3 "\n\n(fn E)"]] 5 "\n\n(fn RESULT R)"] org-trim org-list-to-generic unordered mapcar #[257 "\211;\203    \211\202 \300\301\"C\207" [format "%S"] 4 "\n\n(fn E)"] split-string (:splicep nil :istart "- " :iend "\n") orgtbl-to-orgtbl cl-every #[257 "\211\300=\206\211<\207" [hline] 3 "\n\n(fn E)"] org-at-table-p org-table-align org-table-end "%s\n" org-macro-escape-arguments "raw" org-babel-chomp :wrap "RESULTS" "#+BEGIN_" "#+END_" "{{{results(@@" ":" "@@)}}}" "html" "#+BEGIN_EXPORT html" "#+END_EXPORT" "{{{results(@@html:" "latex" "#+BEGIN_EXPORT latex" "{{{results(@@latex:" "org" org-cycle "#+BEGIN_SRC org" "#+END_SRC" "{{{results(src_org{" "})}}}" "code" "none" "#+BEGIN_SRC %s%s" "{{{results(src_%s[%s]{" "drawer" "wrap" ":RESULTS:" ":END:" no-escape "{{{results(" ")}}}" "{{{results(%s)}}}" org-babel-examplify-region indent-rigidly "value" "Code block returned no value." "Code block produced no output." "Code block evaluation complete."] 28 (#$ . 68719)])
#@82 Remove the result of the current source block.
 
(fn &optional INFO KEEP-KEYWORD)
(defalias 'org-babel-remove-result #[512 "\301\302\"\211\205.\212\211b\210\303\304P!\205-\203\305\306!\202'\212\307\302x\210\305\306!)\302y\210\310 |)\207" [org-babel-result-regexp org-babel-where-is-src-block-result nil looking-at ".*$" line-beginning-position 2 "      \n" org-babel-result-end] 6 (#$ . 76825) nil])
#@183 Remove the result of the current inline-src-block or babel call.
The result must be wrapped in a `results' macro to be removed.
Leading white space is trimmed.
 
(fn &optional DATUM)
(defalias 'org-babel-remove-inline-result #[256 "\211\206\300 \301!\302>\205K\212\214~\210\303\304\"b\210\305\306x\210\212\307\303\310\303\311\"\"w\210\300 )\301!\312=\205H\303\313\"\314\230\205H`\303\304\"b\210\307\306x\210`|\262*\207" [org-element-context org-element-type (inline-src-block inline-babel-call) org-element-property :end "     " nil "     \n" :contents-end :parent macro :key "results"] 8 (#$ . 77236) nil])
#@130 Remove the result of the current source block.
If called with a prefix argument, remove all result blocks
in the buffer.
 
(fn X)
(defalias 'org-babel-remove-result-one-or-many #[257 "\211\203|\302\303\211?\206\304\305!!`\303\306 \307\310\311\312\313!\314\"\315$\216\203)\316!\210p\262eb\210\317    \303\302#\203n\320 \203/\310\224b\210\321\310!\310\224\310\225\321\315!\315\224\315\225\321\322!\322\224\322\225\321\323!\323\224\323\225\321\324!\324\224\324\225\325 \210\fb\266\202/)\210\204x\326!\210b)\207\325 \207" [case-fold-search org-babel-src-block-regexp t nil get-file-buffer expand-file-name current-window-configuration make-byte-code 0 "\301\300!\207" vconcat vector [set-window-configuration] 2 find-file re-search-forward org-babel-active-location-p match-string 3 4 5 org-babel-remove-result kill-buffer] 22 (#$ . 77856) "P"])
#@60 Return the point at the end of the current set of results.
(defalias 'org-babel-result-end #[0 "\302\303\304!)\262\203`\207\305\306    \"\303\304!)\262\203!\307\310!\207\311 \312!\313>\203?\212d\314\315\"^b\210\316\317x\210\307\310!)\202@`\207" [inhibit-changing-match-data org-bracket-link-regexp "^[     ]*$" t looking-at format "^[     ]*%s[     ]*$" line-beginning-position 2 org-element-at-point org-element-type (drawer example-block export-block fixed-width item plain-list src-block table) org-element-property :end "      \n" nil] 5 (#$ . 78719)])
#@200 Convert RESULT into an Org link with optional DESCRIPTION.
If the `default-directory' is different from the containing
file's directory then expand relative links.
 
(fn RESULT &optional DESCRIPTION)
(defalias 'org-babel-result-to-file #[513 ";\2050\302\303\203\"    \203\"\304!\304\305    !!\230\204\"\304\"\202#\203.\306\307Q\202/\310#\207" [default-directory buffer-file-name format "[[file:%s]%s]" expand-file-name file-name-directory "[" "]" ""] 8 (#$ . 79281)])
#@117 Comment out region using the inline `==' or `: ' org example quote.
 
(fn BEG END &optional RESULTS-SWITCHES INLINE)
(defalias 'org-babel-examplify-region #[1026 "\302\203\212b\210\303\304\"\"c)\202\203\305\"\212\211\306U\206\200\211    W\203Kb\210\211\306\211W\205F\211\307\310!\210\311c\210\310y\266\211T\262\202-\266\202\202\200b\210\203]\303\312\313!#\202`\314!c\210`\315!\203pb\210\202vZu\210\316`\"\266\317!c)\262\207" [org-babel-inline-result-wrap org-babel-min-lines-for-block-output #[257 "\203\211\226\207\207" [org-babel-uppercase-example-markers] 2 "\n\n(fn STR)"] format delete-and-extract-region count-lines 0 beginning-of-line 1 ": " "%s%s\n" "#+begin_example" "#+begin_example\n" markerp org-escape-code-in-region "#+end_example\n"] 11 (#$ . 79764) "*r"])
#@71 Update the body of the current code block to NEW-BODY.
 
(fn NEW-BODY)
(defalias 'org-babel-update-block-body #[257 "\302 \303!\304=\204\305\306!\210\307!b\210\310 \311\312!\313\204$\314\315\"\203(\202O\316\317!r\211q\210\320\321\322\323\324!\325\"\312$\216\326!c\210\327ed    \\#\210\330 *\262!\212\214~\210\314\331\"b\210\332\333x\210\311 *|\210b\210\211c\266\203\207" [org-src-preserve-indentation org-edit-src-content-indentation org-element-at-point org-element-type src-block error "Not in a source block" org-babel-where-is-src-block-head org-get-indentation line-beginning-position 2 org-element-normalize-string org-element-property :preserve-indent generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205    \302\300!\207" vconcat vector [buffer-name kill-buffer] org-remove-indentation indent-rigidly buffer-string :end "     \n" nil] 12 (#$ . 80582)])
#@233 Combine all parameter association lists in PLISTS.
Later elements of PLISTS override the values of previous elements.
This takes into account some special considerations for certain
parameters when merging lists.
 
(fn &rest PLISTS)
(defalias 'org-babel-merge-params #[128 "\301\302\303\236A\"\301\304\305\236A\"\306\307\310\211C\310\211\211    \211\203s\211@\211\211\203k\211@\311:\203]@\211\312=\203\304A\211\211<\203@\211@\202Q\313\314\"\203P\315\316\317\"!\202Q\310\211\203\205\320\321\"\204c\f\202zB\262\322\323\324\325\326\327!\330\"\331\332%\"BC\"\262\f\202\277 \203\270\f8\203\270\f8@\211B\262 8\211A\333!\334Q\241\266T\262\210\202\277\335\336A\"\210\266\202Y\211\337=\203\352A\211 \340;\203\335\202\341\341\342\"!#\262\n\266\202Y\211\343>\203.A\211\211\203) \344#\262\n\345    \235\204 \346    \235\204 \347    \235\204 \n\350#\262      \242B\240\210\266\202Y\211\351=\203LA\211\n\340\206C\352!#\262    \266\202Y    \353@ \242\"B\240\210\210\202c\211    \"\210\210A\266\202\202\210A\266\202\202\210\301\354\"\242\244\240\210\211\203\327\211@\355\211\203\317\211@\211\242\236\203\310\211\242\236\211\322\323\324\325\326\327\n!\330\"\331\356%\f\242\236A\"\241\266\322\323\324\357\326\327!\330\"\331\356%\n\242\"\240\210A\266\202\202\206\210A\266\202\202\210\337\360\361\362#B\351\360\361\362#BD\242\244\240\210\242\207" [org-babel-common-header-args-w-values mapcar #[257 "\300\301\"\207" [mapcar symbol-name] 4 "\n\n(fn GROUP)"] results #[257 "\300\301\"\207" [mapcar symbol-name] 4 "\n\n(fn GROUP)"] exports #[385 "\300\211\203L\211@\211\211\203D\211@\211\2037\211@\235\2030\301\302\303\304\305\306!\307\"\310\311%\"\262A\266\202\202\210\211B\262A\266\202\202    \210A\266\202\202\312!\262\207" [nil cl-remove-if make-byte-code 257 "\211\300\235\207" vconcat vector #1=[] 3 "\n\n(fn O)" delete-dups] 16 "\n\n(fn EXCLUSIVE-GROUPS &rest RESULT-PARAMS)"] 0 nil #[514 "\300@\242\"B\240\207" [assq-delete-all] 7 "\n\n(fn PARAMS PAIR)"] :var string-match "^\\([^= \f    \n ]+\\)[     ]*=" intern match-string 1 append assoc cl-remove-if make-byte-code 257 "\300@\232\207" vconcat vector #1# 3 "\n\n(fn P)" symbol-name "=" error "Variable \"%s\" must be assigned a default value" :results split-string eval t (:file-ext :file) ("file") "both" "none" "code" ("results") :exports "" assq-delete-all #[257 "\300AAB\207" [:var] 3 "\n\n(fn V)"] (:colname-names :rowname-names) "\n\n(fn PAIR)" "\211@\300\232\205\n\211A?\207" mapconcat identity " "] 27 (#$ . 81470)])
#@246 Set to true to use regular expressions to expand noweb references.
This results in much faster noweb reference expansion but does
not properly allow code blocks to inherit the ":noweb-ref"
header argument from buffer or subtree wide properties.
(defvar org-babel-use-quick-and-dirty-noweb-expansion nil (#$ . 84097))
#@117 Check if PARAMS require expansion in CONTEXT.
CONTEXT may be one of :tangle, :export or :eval.
 
(fn PARAMS CONTEXT)
(defalias 'org-babel-noweb-p #[514 "\211\300\267\202\301\202\302\202\303\202\304\305\306\307\310\311\312!\313\"\314\315%\316\317\236A\206+\320!\"\207" [#s(hash-table size 3 test eql rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (:tangle 6 :eval 10 :export 14)) ("yes" "tangle" "no-export" "strip-export") ("yes" "no-export" "strip-export" "eval") ("yes") nil cl-some make-byte-code 257 "\211\300\235\207" vconcat vector [] 3 "\n\n(fn V)" split-string :noweb ""] 10 (#$ . 84421)])
#@1104 Expand Noweb references in the body of the current source code block.
 
For example the following reference would be replaced with the
body of the source-code block named `example-block'.
 
<<example-block>>
 
Note that any text preceding the <<foo>> construct on a line will
be interposed between the lines of the replacement text.  So for
example if <<foo>> is placed behind a comment, then the entire
replacement text will also be commented.
 
This function must be called from inside of the buffer containing
the source-code block which holds BODY.
 
In addition the following syntax can be used to insert the
results of evaluating the source-code block named `example-block'.
 
<<example-block()>>
 
Any optional arguments can be passed to example-block by placing
the arguments inside the parenthesis following the convention
defined by `org-babel-lob'.  For example
 
<<example-block(a=9)>>
 
would set the value of argument "a" equal to "9".  Note that
these arguments are not evaluated in the current source-code
block but are passed literally to the "example-block".
 
(fn &optional INFO PARENT-BUFFER)
(defalias 'org-babel-expand-noweb-references #[512 "\211\206p\206\f\306\307!\211@A@    \310\3118\236A\312\230\313\n\314\315\316\260\317C\320\321\322\211\211\211\323\324!r\211q\210\325\326\327\330\331!\332\"\311$\216\333\300!\210 \333\301!\210\n\fc\210eb\210`\262\334\335 \322\336#\203\231\337 \325\326\340\330\331!\341\"\342$\216\343\344!\262)\210\337 \325\326\340\330\331!\345\"\342$\216\346\347\"\262)\210\337 \325\326\340\330\331!\350\"\342$\216\326\224\212\351\344!\210`){\262)\210\326\224b\210`{\"\210\326\225b\210`\262rq\210\214~\210\352\353\354\203\346\355    !\211;\203\335\211\202\341\356\357\"\262\202\212\311\360\361 ! \"8\206\212\212\362    !\205\374\363 )\206\212     \364Q\322\212eb\210\f\203d\334\322\336#\203V\306\307!\365\3118\366\"\203)\367!\202,\211A@\370\3118\236A\2066\371\203X\372!@\"\371\371A@\"\260\262\202YBB\266\205\202\336\322\211?\206q\373\374!!`\322\375 \325\326\376\330\331!\377\"\311$\216\203\213\201D!\210p\262eb\210\334@\322\336#\203D\201E \203\221\326\224b\210\343\326!\326\224\326\225\343\311!\311\224\311\225\343\342!\342\224\342\225\343\201F!\201F\224\201F\225\343\201G!\201G\224\201G\225(`A\306\307!)\201H\3118\236A\206\355\201F8!\232\203;\365\3118\366\"\203\367!\202\211A@\370\3118\236A\206\371(\2030\372!%@\"\371\371)    A@\"\260\262\2021BB\262\266\210 b\266\202\221)\210\204P\201I!\210b\210)\266)\211\205b\352\353A\237\317#\266\202\206\212B\204tC\235\203\211\201J\201K\335 !\201L\201MQ\"\202\212\317\201N\"\371P#*\"\210\202Vd{\"\210*\210\242\207" [org-babel-noweb-wrap-start org-babel-noweb-wrap-end org-babel-src-name-regexp org-babel-library-of-babel org-babel-use-quick-and-dirty-noweb-expansion case-fold-search org-babel-get-src-block-info light :comments 2 "noweb" "\\(" "\\|" ":noweb-ref[     ]+" "\\)" "" #[514 "\211\242P\240\207" [] 5 "\n\n(fn NEW-BODY TEXT)"] #[514 "\300\301!r\211q\210\302\303\304\305\306!\307\"\310$\216\311\312P! \210\313`c\210`\"\210\314\315 !*\207" [generate-new-buffer #1=" *temp*" make-byte-code 0 "\301\300!\205    \302\300!\207" vconcat vector [buffer-name kill-buffer] 2 intern "-mode" comment-region org-trim buffer-string] 9 "\n\n(fn LANG TEXT)"] nil generate-new-buffer #1# make-byte-code 0 "\301\300!\205    \302\300!\207" vconcat vector [buffer-name kill-buffer] make-local-variable re-search-forward org-babel-noweb-wrap t match-data "\301\300\302\"\207" [set-match-data evaporate] 3 match-string 1 [set-match-data evaporate] string-match "(.*)" [set-match-data evaporate] beginning-of-line mapconcat identity split-string org-babel-ref-resolve format "%S" assoc intern org-babel-ref-goto-headline-id org-babel-ref-headline-body "[     \n]" org-babel-noweb-p :eval org-babel-expand-noweb-references :noweb-sep "\n" org-babel-tangle-comment-links get-file-buffer expand-file-name current-window-configuration "\301\300!\207" [set-window-configuration] org-babel-src-block-regexp org-babel-current-src-block-location org-babel-noweb-error-all-langs org-babel-noweb-error-langs find-file org-babel-active-location-p 4 5 :noweb-ref kill-buffer error "%s" "could not be resolved (see " "`org-babel-noweb-error-langs')" "[\n ]"] 57 (#$ . 85048)])
#@12 
 
(fn STR)
(defalias 'org-babel--script-escape-inner #[257 "\300C\300C\300C\300C\301\302\303\304\305\306                $\307\"\310\311%\312\300\"\262\"\210\242\2040\242\2034\313\314!\210\315\316\317\242!\"\207" [nil mapc make-byte-code 257 "\303\302\242\203X\302\304\240\210\300\242\203\305=\203\303\242B\202&\306=\203=\300\242\2033\307\310\211\211F\303\242\"\202&\307\310D\303\242\"\202&\310=\203M\307\310\211D\303\242\"\202&\307\310\211E\303\242\"\202&\311\267\202\"\301\242\204h\300\242\203o\312\303\242B\202&\313\303\242B\202&\301\242\204\200\300\242\203\207\314\303\242B\202&\315\303\242B\202&\301\242\204\230\300\242\203\237\316\303\242B\202&\313\303\242B\202&\301\242\204\260\300\242\203\267\317\303\242B\202&\315\303\242B\202&\301\242\204\310\300\242\203\317\320\303\242B\202&\321\303\242B\202&\301\242\203\342\305\303\242B\202&\300\211\242?\240\210\306\303\242B\202&\300\242\203\376\307\306\310D\303\242\"\202&\301\211\242?\240\210\306\303\242B\202&\300\242\204\301\242\204\322\323!\210\302\324\240\210\303\242\202&\303\242B\240\207" vconcat vector [nil 39 34 append 92 #s(hash-table size 8 test eql rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (91 94 93 118 123 142 125 166 44 190 39 214 34 239 92 267)) 91 40 93 41 123 125 44 32 error "Can't handle backslash outside string in `org-babel-script-escape'" t] 7 "\n\n(fn CH)" append error "Unterminated string in `org-babel-script-escape'" apply string reverse] 15 (#$ . 89445)])
#@67 Safely convert tables into elisp lists.
 
(fn STR &optional FORCE)
(defalias 'org-babel-script-escape #[513 ";\204    \300\301!\210G\302V\203N\303\304O\305\230\203\"\306\307O\310\230\204F\303\304O\311\230\2034\306\307O\312\230\204F\303\304O\313\230\203N\306\307O\314\230\203N\315\316!P\202\204\211\204}G\302V\203\203\303\304O\315\230\203k\306\307O\315\230\204}\303\304O\317\230\203\203\306\307O\317\230\203\203\316!\202\204\3201\217\321!0\202\221\210\211\207" [error "`org-babel-script-escape' expects a string" 2 0 1 "[" -1 nil "]" "{" "}" "(" ")" "'" org-babel--script-escape-inner "\"" (error) org-babel-read] 5 (#$ . 90956)])
#@377 Convert the string value of CELL to a number if appropriate.
Otherwise if CELL looks like lisp (meaning it starts with a
"(", "\='", "\=`" or a "[") then read and evaluate it as
lisp, otherwise return it unmodified as a string.  Optional
argument INHIBIT-LISP-EVAL inhibits lisp evaluation for
situations in which is it not appropriate.
 
(fn CELL &optional INHIBIT-LISP-EVAL)
(defalias 'org-babel-read #[513 "\301!\204\207\302!\206O\211\204'\303!\304>\204 \305\230\203'\306\307!\310\"\207\303!\311=\2033\307!\207\312\211\203D\313\314G$\210\202L\315\314G\312$\210\266\202\207" [org-rm-props org-string-nw-p org-babel--string-to-number string-to-char (40 39 96 91) "*this*" eval read t 34 nil remove-text-properties 0 set-text-properties] 9 (#$ . 91624)])
#@84 If STRING represents a number return its value.
Otherwise return nil.
 
(fn STRING)
(defalias 'org-babel--string-to-number #[257 "\301\302\303\304#)\266\203\205\305!\207" [inhibit-changing-match-data "\\`-?[0-9]*\\.?[0-9]*\\'" nil t string-match string-to-number] 8 (#$ . 92408)])
#@149 Read the results located at FILE-NAME into an elisp table.
If the table is trivial, then return it as a scalar.
 
(fn FILE-NAME &optional SEPARATOR)
(defalias 'org-babel-import-elisp-from-file #[513 "\300\301 \302\303\304\305\306!\307\"\310$\216\311\312!r\211q\210\302\303\313\305\306!\314\"\310$\216\3151;\316\"\210\317!\210\320\321\322 \"\211\2620\202A\323\324\"\262\210*\210A\204d@:\203_@A\204[@@\202e\202e@\202e)\262\207" [nil current-window-configuration make-byte-code 0 "\301\300!\207" vconcat vector [set-window-configuration] 2 generate-new-buffer " *temp*" "\301\300!\205    \302\300!\207" [buffer-name kill-buffer] (error) org-table-import delete-file mapcar #[257 "\300\301\"\207" [mapcar org-babel-string-read] 4 "\n\n(fn ROW)"] org-table-to-lisp message "Error reading results: %s"] 11 (#$ . 92703)])
#@49 Strip nested "s from around strings.
 
(fn CELL)
(defalias 'org-babel-string-read #[257 "\300;\203\301\302\"\203\303\304\"\206\305\"\207" [org-babel-read string-match "\\\"\\(.+\\)\\\"" match-string 1 t] 5 (#$ . 93546)])
#@186 Strip a trailing space or carriage return from STRING.
The default regexp used is "[ \f\t\n\r\v]" but another one
can be specified as the REGEXP argument.
 
(fn STRING &optional REGEXP)
(defalias 'org-babel-chomp #[513 "\211\206\300G\301V\203\302\303\304O\"\203\301\303O\262\202\207" ["[ \f    \n ]" 0 string-match -1 nil] 8 (#$ . 93783)])
#@388 Prepare NAME to be used in an external process.
If NAME specifies a remote location, the remote portion of the
name is removed, since in that case the process will be executing
remotely.  The file name is then processed by `expand-file-name'.
Unless second argument NO-QUOTE-P is non-nil, the file name is
additionally processed by `shell-quote-argument'
 
(fn NAME &optional NO-QUOTE-P)
(defalias 'org-babel-process-file-name #[513 "\300\301!!\203 \211\202\302!\207" [org-babel-local-file-name expand-file-name shell-quote-argument] 5 (#$ . 94141)])
(byte-code "\204!\302\301!\204!\303\302\301!\203\304    !\203    \206\305\306\307\"!\210\310\311\312\313\314DD\315\316\317\320\321&\207" [noninteractive org-babel-temporary-directory boundp (lambda (#1=#:def-tmp-var) (defvar org-babel-temporary-directory #1# "Directory to hold temporary files created to execute code blocks.\nUsed by `org-babel-temp-file'.  This directory will be removed on\nEmacs shutdown.")) file-exists-p make-temp-file "babel-" t custom-declare-variable org-babel-remote-temporary-directory funcall function #[0 "\300\207" [#2="/tmp/"] 1 #2#] "Directory to hold temporary files on remote hosts." :group org-babel :type string] 8)
#@121 Call the code to parse raw string results according to RESULT-PARAMS.
 
(fn RESULT-PARAMS SCALAR-FORM &rest TABLE-FORMS)
(defalias 'org-babel-result-cond '(macro . #[642 "\300\301!\302DC\303\304\305E\306\307\304\310E\304\311    E\304\312\nE\304\313 E\304\314\fE\304\315 E\316\307\304\317E\304\320E\304\321E\304\322E\257\323\304\324EDE\257BBBEE\207" [make-symbol "--params" let unless member "none" if or "scalar" "verbatim" "html" "code" "pp" "file" and "output" "raw" "org" "drawer" not "table"] 24 (#$ . 95361)]))
(byte-code "\300\301\302\303#\304\301\305\306#\210\304\301\305\307#\207" [function-put org-babel-result-cond lisp-indent-function 1 put edebug-form-spec (form form &rest form) (form form body)] 5)
#@259 Create a temporary file in the `org-babel-temporary-directory'.
Passes PREFIX and SUFFIX directly to `make-temp-file' with the
value of `temporary-file-directory' temporarily set to the value
of `org-babel-temporary-directory'.
 
(fn PREFIX &optional SUFFIX)
(defalias 'org-babel-temp-file #[513 "\304!\203\304!\305    \"P\306\307#\207\310\302!\203$\311\n!\203$\n\206% \306\307#)\207" [default-directory org-babel-remote-temporary-directory org-babel-temporary-directory temporary-file-directory file-remote-p expand-file-name make-temp-file nil boundp file-exists-p] 7 (#$ . 96103)])
#@59 Remove `org-babel-temporary-directory' on Emacs shutdown.
(defalias 'org-babel-remove-temporary-directory #[0 "\301\300!\205-\302!\205-\3031\304\305\306\307\310#\"\210\311!0\207\210\312\313\301\300!\203+\202,\314\"\207" [org-babel-temporary-directory boundp file-exists-p (error) mapc #[257 "\300!@\301=\203 \302!\207\303!\207" [file-attributes t delete-directory delete-file] 3 "\n\n(fn FILE)"] directory-files full "^\\([^.]\\|\\.\\([^.]\\|\\..\\)\\).*" delete-directory message "Failed to remove temporary Org-babel directory %s" "[directory not defined]"] 6 (#$ . 96703)])
(add-hook 'kill-emacs-hook 'org-babel-remove-temporary-directory)
#@159 Determine if the PAIR is a safe babel header arg according to SAFE-LIST.
 
For the format of SAFE-LIST, see `org-babel-safe-header-args'.
 
(fn PAIR SAFE-LIST)
(defalias 'org-babel-one-header-arg-safe-p #[514 ":\205F\300@!\205FA;\205F@>\206F@\236\211\205D\211:\205D\301A!\2035\211AA!\202D\211A<\203CAA\235\202D\302\262\207" [keywordp functionp nil] 5 (#$ . 97367)])
#@658 Calculate the filename for source block results.
 
The directory is calculated from the :output-dir property of the
source block; if not specified, use the current directory.
 
If the source block has a #+NAME and the :file parameter does not
contain any period characters, then the :file parameter is
treated as an extension, and the output file name is the
concatenation of the directory (as calculated above), the block
name, a period, and the parameter value as a file extension.
Otherwise, the :file parameter is treated as a full file name,
and the output file name is the directory (as calculated above)
plus the parameter value.
 
(fn SRC-NAME PARAMS)
(defalias 'org-babel-generate-file-param #[514 "\300\236\301\236\211\243\302\236\243\303\203\304\305\"\210\203+\203X\306!AP\241\210\202X\203X\203X\203I\306\206>\307!\310R\262\202P\310Q\262\300BB\262\207" [:file :file-ext :output-dir nil make-directory t file-name-as-directory "" "."] 11 (#$ . 97760)])
#@179 File where a babel block should send graphical output, per PARAMS.
Return nil if no graphical output is expected.  Raise an error if
the output file is ill-defined.
 
(fn PARAMS)
(defalias 'org-babel-graphical-output-file #[257 "\300\236A\211\203\301\302\236A\235\205$\211\202$\303\236\203!\304\305!\202$\304\306!\207" [:file "graphics" :result-params :file-ext user-error ":file-ext given but no :file generated; did you forget to name a block?" "No :file header argument given; cannot create graphical result"] 5 (#$ . 98766)])
#@300 Make source blocks of type NEW aliases for those of type OLD.
 
NEW and OLD should be strings.  This function should be called
after the babel API for OLD-type source blocks is fully defined.
 
Callers of this function will probably want to add an entry to
`org-src-lang-modes' as well.
 
(fn NEW OLD)
(defalias 'org-babel-make-language-alias #[514 "\300\211\203-\211@\301\302\303R!\211\203%\304!\203%\305\306\302\303    R!\"\210\210A\266\202\202\210\307\211\205[\211@\301\302\303R!\211\203S\310!\203S\311\306\302\303    R!\"\210\210A\266\202\202/\207" [("execute" "expand-body" "prep-session" "variable-assignments" "load-session") intern-soft "org-babel-" ":" fboundp defalias intern ("default-header-args") boundp defvaralias] 11 (#$ . 99311)])
#@61 Strip \"s from around a string, if applicable.
 
(fn STRING)
(defalias 'org-babel-strip-quotes #[257 "\300\301\211#\207" [org-unbracket-string "\""] 5 (#$ . 100081)])
(provide 'ob-core)