summaryrefslogtreecommitdiff
path: root/.localrepo/org-gcal-20250624.1628.tar
blob: a09905a83a1f137db69f81c62cb4d4c326daaa8a (plain)
ofshex dumpascii
0000 6f 72 67 2d 67 63 61 6c 2d 32 30 32 35 30 36 32 34 2e 31 36 32 38 2f 00 00 00 00 00 00 00 00 00 org-gcal-20250624.1628/.........
0020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0060 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000755.0000000.0000000.0000
0080 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 32 35 31 31 00 20 35 00 00 00 0000000.00000000000.012511..5...
00a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
00c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
00e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0100 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
0120 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
0140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
01a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
01c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
01e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0200 6f 72 67 2d 67 63 61 6c 2d 32 30 32 35 30 36 32 34 2e 31 36 32 38 2f 6f 72 67 2d 67 63 61 6c 2d org-gcal-20250624.1628/org-gcal-
0220 70 6b 67 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 pkg.el..........................
0240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
0280 30 30 30 31 32 36 31 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 35 33 30 35 00 20 30 00 00 00 0001261.00000000000.015305..0...
02a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
02c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
02e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0300 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
0320 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
0340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0400 3b 3b 20 2d 2a 2d 20 6e 6f 2d 62 79 74 65 2d 63 6f 6d 70 69 6c 65 3a 20 74 3b 20 6c 65 78 69 63 ;;.-*-.no-byte-compile:.t;.lexic
0420 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 6e 69 6c 20 2d 2a 2d 0a 28 64 65 66 69 6e 65 2d 70 61 63 6b al-binding:.nil.-*-.(define-pack
0440 61 67 65 20 22 6f 72 67 2d 67 63 61 6c 22 20 22 32 30 32 35 30 36 32 34 2e 31 36 32 38 22 0a 20 age."org-gcal"."20250624.1628"..
0460 20 22 4f 72 67 20 73 79 6e 63 20 77 69 74 68 20 47 6f 6f 67 6c 65 20 43 61 6c 65 6e 64 61 72 2e ."Org.sync.with.Google.Calendar.
0480 22 0a 20 20 27 28 28 61 69 6f 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 31 2e 30 22 29 0a 20 "...'((aio.............."1.0")..
04a0 20 20 20 28 61 6c 65 72 74 20 20 20 20 20 20 20 20 20 20 20 20 22 31 2e 32 22 29 0a 20 20 20 20 ...(alert............"1.2").....
04c0 28 65 6c 6e 6f 64 65 20 20 20 20 20 20 20 20 20 20 20 22 32 30 31 39 30 37 30 32 2e 31 35 30 39 (elnode..........."20190702.1509
04e0 22 29 0a 20 20 20 20 28 65 6d 61 63 73 20 20 20 20 20 20 20 20 20 20 20 20 22 32 36 2e 31 22 29 ").....(emacs............"26.1")
0500 0a 20 20 20 20 28 6f 61 75 74 68 32 2d 61 75 74 6f 20 20 20 20 20 20 22 32 30 32 34 30 33 32 36 .....(oauth2-auto......"20240326
0520 2e 32 32 32 35 22 29 0a 20 20 20 20 28 6f 72 67 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 39 .2225").....(org.............."9
0540 2e 33 22 29 0a 20 20 20 20 28 70 65 72 73 69 73 74 20 20 20 20 20 20 20 20 20 20 22 30 2e 34 22 .3").....(persist.........."0.4"
0560 29 0a 20 20 20 20 28 72 65 71 75 65 73 74 20 20 20 20 20 20 20 20 20 20 22 32 30 31 39 30 39 30 ).....(request.........."2019090
0580 31 22 29 0a 20 20 20 20 28 72 65 71 75 65 73 74 2d 64 65 66 65 72 72 65 64 20 22 32 30 31 38 31 1").....(request-deferred."20181
05a0 31 32 39 22 29 29 0a 20 20 3a 75 72 6c 20 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 129"))...:url."https://github.co
05c0 6d 2f 6b 69 64 64 2f 6f 72 67 2d 67 63 61 6c 2e 65 6c 22 0a 20 20 3a 63 6f 6d 6d 69 74 20 22 63 m/kidd/org-gcal.el"...:commit."c
05e0 37 61 64 38 35 34 65 65 34 34 65 38 38 61 35 35 64 62 37 34 32 36 39 64 35 33 38 31 39 63 39 33 7ad854ee44e88a55db74269d53819c93
0600 31 64 35 35 62 38 65 22 0a 20 20 3a 72 65 76 64 65 73 63 20 22 63 37 61 64 38 35 34 65 65 34 34 1d55b8e"...:revdesc."c7ad854ee44
0620 65 22 0a 20 20 3a 6b 65 79 77 6f 72 64 73 20 27 28 22 63 6f 6e 76 65 6e 69 65 6e 63 65 22 29 0a e"...:keywords.'("convenience").
0640 20 20 3a 61 75 74 68 6f 72 73 20 27 28 28 22 6d 79 75 68 65 22 20 2e 20 22 79 75 68 65 69 2e 6d ..:authors.'(("myuhe"..."yuhei.m
0660 61 65 64 61 5f 61 74 5f 67 6d 61 69 6c 2e 63 6f 6d 22 29 29 0a 20 20 3a 6d 61 69 6e 74 61 69 6e aeda_at_gmail.com"))...:maintain
0680 65 72 73 20 27 28 28 22 52 61 69 6d 6f 6e 20 47 72 61 75 22 20 2e 20 22 72 61 69 6d 6f 6e 73 74 ers.'(("Raimon.Grau"..."raimonst
06a0 65 72 40 67 6d 61 69 6c 2e 63 6f 6d 22 29 29 29 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 er@gmail.com")))................
06c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
06e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0800 6f 72 67 2d 67 63 61 6c 2d 32 30 32 35 30 36 32 34 2e 31 36 32 38 2f 6f 72 67 2d 67 63 61 6c 2e org-gcal-20250624.1628/org-gcal.
0820 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 el..............................
0840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0860 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
0880 30 32 37 37 33 36 31 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 34 35 34 36 00 20 30 00 00 00 0277361.00000000000.014546..0...
08a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
08c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
08e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0900 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
0920 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
0940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
09a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
09c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
09e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0a00 3b 3b 3b 20 6f 72 67 2d 67 63 61 6c 2e 65 6c 20 2d 2d 2d 20 4f 72 67 20 73 79 6e 63 20 77 69 74 ;;;.org-gcal.el.---.Org.sync.wit
0a20 68 20 47 6f 6f 67 6c 65 20 43 61 6c 65 6e 64 61 72 20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 h.Google.Calendar.-*-.lexical-bi
0a40 6e 64 69 6e 67 3a 20 74 20 2d 2a 2d 0a 0a 3b 3b 20 41 75 74 68 6f 72 3a 20 6d 79 75 68 65 20 3c nding:.t.-*-..;;.Author:.myuhe.<
0a60 79 75 68 65 69 2e 6d 61 65 64 61 5f 61 74 5f 67 6d 61 69 6c 2e 63 6f 6d 3e 0a 3b 3b 20 55 52 4c yuhei.maeda_at_gmail.com>.;;.URL
0a80 3a 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6b 69 64 64 2f 6f 72 67 2d 67 63 :.https://github.com/kidd/org-gc
0aa0 61 6c 2e 65 6c 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 56 65 72 73 69 6f 6e 3a 20 32 30 32 35 30 36 al.el.;;.Package-Version:.202506
0ac0 32 34 2e 31 36 32 38 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 52 65 76 69 73 69 6f 6e 3a 20 63 37 61 24.1628.;;.Package-Revision:.c7a
0ae0 64 38 35 34 65 65 34 34 65 0a 3b 3b 20 4d 61 69 6e 74 61 69 6e 65 72 3a 20 52 61 69 6d 6f 6e 20 d854ee44e.;;.Maintainer:.Raimon.
0b00 47 72 61 75 20 3c 72 61 69 6d 6f 6e 73 74 65 72 40 67 6d 61 69 6c 2e 63 6f 6d 3e 0a 3b 3b 20 43 Grau.<raimonster@gmail.com>.;;.C
0b20 6f 70 79 72 69 67 68 74 20 28 43 29 20 3a 32 30 31 34 20 6d 79 75 68 65 20 61 6c 6c 20 72 69 67 opyright.(C).:2014.myuhe.all.rig
0b40 68 74 73 20 72 65 73 65 72 76 65 64 2e 0a 3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 63 6f 6e 76 65 hts.reserved..;;.Keywords:.conve
0b60 6e 69 65 6e 63 65 2c 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 nience,..;;.This.program.is.free
0b80 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 .software;.you.can.redistribute.
0ba0 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 3b 3b 20 69 74 20 75 6e 64 65 72 20 74 68 65 it.and/or.modify.;;.it.under.the
0bc0 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 .terms.of.the.GNU.General.Public
0be0 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 68 65 64 20 62 79 0a 3b 3b 20 74 68 65 20 .License.as.published.by.;;.the.
0c00 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b 20 65 69 74 68 65 72 Free.Software.Foundation;.either
0c20 20 76 65 72 73 69 6f 6e 20 33 2c 20 6f 72 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 0a .version.3,.or.(at.your.option).
0c40 3b 3b 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 3b 3b 20 54 68 69 73 20 66 ;;.any.later.version...;;.This.f
0c60 69 6c 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 ile.is.distributed.in.the.hope.t
0c80 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 3b 3b 20 62 75 74 20 57 49 hat.it.will.be.useful,.;;.but.WI
0ca0 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e THOUT.ANY.WARRANTY;.without.even
0cc0 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 3b 3b 20 4d 45 52 43 .the.implied.warranty.of.;;.MERC
0ce0 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 HANTABILITY.or.FITNESS.FOR.A.PAR
0d00 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 53 65 65 20 74 68 65 0a 3b 3b 20 47 4e 55 20 TICULAR.PURPOSE..See.the.;;.GNU.
0d20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 20 General.Public.License.for.more.
0d40 64 65 74 61 69 6c 73 2e 0a 0a 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 63 details...;;.You.should.have.rec
0d60 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 eived.a.copy.of.the.GNU.General.
0d80 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68 20 47 4e 55 Public.License.;;.along.with.GNU
0da0 20 45 6d 61 63 73 3b 20 73 65 65 20 74 68 65 20 66 69 6c 65 20 43 4f 50 59 49 4e 47 2e 20 49 66 .Emacs;.see.the.file.COPYING..If
0dc0 20 6e 6f 74 2c 20 77 72 69 74 65 20 74 6f 0a 3b 3b 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 .not,.write.to.;;.the.Free.Softw
0de0 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 49 6e 63 2e 2c 20 35 31 20 46 72 61 6e 6b 6c 69 are.Foundation,.Inc.,.51.Frankli
0e00 6e 20 53 74 72 65 65 74 2c 20 46 69 66 74 68 20 46 6c 6f 6f 72 2c 0a 3b 3b 20 42 6f 73 74 6f 6e n.Street,.Fifth.Floor,.;;.Boston
0e20 2c 20 4d 41 20 30 3a 31 31 30 2d 31 33 30 31 2c 20 55 53 41 2e 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 ,.MA.0:110-1301,.USA...;;;.Comme
0e40 6e 74 61 72 79 3a 0a 3b 3b 0a 3b 3b 20 50 75 74 20 74 68 65 20 6f 72 67 2d 67 63 61 6c 2e 65 6c ntary:.;;.;;.Put.the.org-gcal.el
0e60 20 74 6f 20 79 6f 75 72 0a 3b 3b 20 6c 6f 61 64 2d 70 61 74 68 2e 0a 3b 3b 20 41 64 64 20 74 6f .to.your.;;.load-path..;;.Add.to
0e80 20 2e 65 6d 61 63 73 3a 0a 3b 3b 20 28 72 65 71 75 69 72 65 20 27 6f 72 67 2d 67 63 61 6c 29 0a ..emacs:.;;.(require.'org-gcal).
0ea0 3b 3b 0a 3b 3b 3b 20 43 68 61 6e 67 65 6c 6f 67 3a 0a 3b 3b 20 32 30 31 34 2d 30 31 2d 30 33 20 ;;.;;;.Changelog:.;;.2014-01-03.
0ec0 49 6e 69 74 69 61 6c 20 72 65 6c 65 61 73 65 2e 0a 0a 28 72 65 71 75 69 72 65 20 27 61 6c 65 72 Initial.release...(require.'aler
0ee0 74 29 0a 28 72 65 71 75 69 72 65 20 27 6a 73 6f 6e 29 0a 28 72 65 71 75 69 72 65 20 27 61 69 6f t).(require.'json).(require.'aio
0f00 29 0a 28 72 65 71 75 69 72 65 20 27 6f 61 75 74 68 32 2d 61 75 74 6f 29 0a 28 72 65 71 75 69 72 ).(require.'oauth2-auto).(requir
0f20 65 20 27 6f 6c 29 0a 28 72 65 71 75 69 72 65 20 27 6f 72 67 29 0a 28 72 65 71 75 69 72 65 20 27 e.'ol).(require.'org).(require.'
0f40 6f 72 67 2d 61 72 63 68 69 76 65 29 0a 28 72 65 71 75 69 72 65 20 27 6f 72 67 2d 63 6c 6f 63 6b org-archive).(require.'org-clock
0f60 29 0a 28 72 65 71 75 69 72 65 20 27 6f 72 67 2d 65 6c 65 6d 65 6e 74 29 0a 28 72 65 71 75 69 72 ).(require.'org-element).(requir
0f80 65 20 27 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 29 0a 28 72 65 71 75 69 72 65 20 27 6f 72 67 e.'org-generic-id).(require.'org
0fa0 2d 69 64 29 0a 28 72 65 71 75 69 72 65 20 27 70 61 72 73 65 2d 74 69 6d 65 29 0a 28 72 65 71 75 -id).(require.'parse-time).(requ
0fc0 69 72 65 20 27 70 65 72 73 69 73 74 29 0a 28 72 65 71 75 69 72 65 20 27 72 65 71 75 65 73 74 2d ire.'persist).(require.'request-
0fe0 64 65 66 65 72 72 65 64 29 0a 28 72 65 71 75 69 72 65 20 27 63 6c 2d 6c 69 62 29 0a 28 72 65 71 deferred).(require.'cl-lib).(req
1000 75 69 72 65 20 27 72 78 29 0a 28 72 65 71 75 69 72 65 20 27 73 75 62 72 2d 78 29 0a 0a 3b 3b 20 uire.'rx).(require.'subr-x)..;;.
1020 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 64 65 66 67 72 6f Customization.;;;.Code:..(defgro
1040 75 70 20 6f 72 67 2d 67 63 61 6c 20 6e 69 6c 20 22 4f 72 67 20 73 79 6e 63 20 77 69 74 68 20 47 up.org-gcal.nil."Org.sync.with.G
1060 6f 6f 67 6c 65 20 43 61 6c 65 6e 64 61 72 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 29 0a 0a oogle.Calendar"...:group.'org)..
1080 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 75 70 2d 64 61 79 73 20 33 30 0a 20 (defcustom.org-gcal-up-days.30..
10a0 20 22 4e 75 6d 62 65 72 20 6f 66 20 64 61 79 73 20 74 6f 20 67 65 74 20 65 76 65 6e 74 73 20 62 ."Number.of.days.to.get.events.b
10c0 65 66 6f 72 65 20 74 6f 64 61 79 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c efore.today."...:group.'org-gcal
10e0 0a 20 20 3a 74 79 70 65 20 27 69 6e 74 65 67 65 72 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f ...:type.'integer)..(defcustom.o
1100 72 67 2d 67 63 61 6c 2d 64 6f 77 6e 2d 64 61 79 73 20 36 30 0a 20 20 22 4e 75 6d 62 65 72 20 6f rg-gcal-down-days.60..."Number.o
1120 66 20 64 61 79 73 20 74 6f 20 67 65 74 20 65 76 65 6e 74 73 20 61 66 74 65 72 20 74 6f 64 61 79 f.days.to.get.events.after.today
1140 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 20 27 69 ."...:group.'org-gcal...:type.'i
1160 6e 74 65 67 65 72 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 61 75 74 nteger)..(defcustom.org-gcal-aut
1180 6f 2d 61 72 63 68 69 76 65 20 74 0a 20 20 22 49 66 20 6e 6f 6e 2d 6e 69 6c 2c 20 6f 6c 64 20 65 o-archive.t..."If.non-nil,.old.e
11a0 76 65 6e 74 73 20 61 72 63 68 69 76 65 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 2e 22 0a 20 20 vents.archive.automatically."...
11c0 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 :group.'org-gcal...:type.'boolea
11e0 6e 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 64 69 72 0a 20 20 28 63 n)..(defcustom.org-gcal-dir...(c
1200 6f 6e 63 61 74 20 75 73 65 72 2d 65 6d 61 63 73 2d 64 69 72 65 63 74 6f 72 79 20 22 6f 72 67 2d oncat.user-emacs-directory."org-
1220 67 63 61 6c 2f 22 29 0a 20 20 22 46 69 6c 65 20 69 6e 20 77 68 69 63 68 20 74 6f 20 73 61 76 65 gcal/")..."File.in.which.to.save
1240 20 74 6f 6b 65 6e 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 .token."...:group.'org-gcal...:t
1260 79 70 65 20 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 ype.'string)..(defcustom.org-gca
1280 6c 2d 74 6f 6b 65 6e 2d 66 69 6c 65 0a 20 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 l-token-file...(expand-file-name
12a0 20 22 2e 6f 72 67 2d 67 63 61 6c 2d 74 6f 6b 65 6e 22 20 6f 72 67 2d 67 63 61 6c 2d 64 69 72 29 .".org-gcal-token".org-gcal-dir)
12c0 0a 20 20 22 46 69 6c 65 20 69 6e 20 77 68 69 63 68 20 74 6f 20 73 61 76 65 20 74 6f 6b 65 6e 2e ..."File.in.which.to.save.token.
12e0 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 20 27 73 74 "...:group.'org-gcal...:type.'st
1300 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 63 6c 69 65 6e ring)..(defcustom.org-gcal-clien
1320 74 2d 69 64 20 6e 69 6c 0a 20 20 22 43 6c 69 65 6e 74 20 49 44 20 66 6f 72 20 4f 41 75 74 68 2e t-id.nil..."Client.ID.for.OAuth.
1340 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 20 27 73 74 "...:group.'org-gcal...:type.'st
1360 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 63 6c 69 65 6e ring)..(defcustom.org-gcal-clien
1380 74 2d 73 65 63 72 65 74 20 6e 69 6c 0a 20 20 22 47 6f 6f 67 6c 65 20 63 61 6c 65 6e 64 61 72 20 t-secret.nil..."Google.calendar.
13a0 73 65 63 72 65 74 20 6b 65 79 20 66 6f 72 20 4f 41 75 74 68 2e 22 0a 20 20 3a 67 72 6f 75 70 20 secret.key.for.OAuth."...:group.
13c0 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 'org-gcal...:type.'string)..(def
13e0 76 61 72 61 6c 69 61 73 20 27 6f 72 67 2d 67 63 61 6c 2d 66 69 6c 65 2d 61 6c 69 73 74 20 27 6f varalias.'org-gcal-file-alist.'o
1400 72 67 2d 67 63 61 6c 2d 66 65 74 63 68 2d 66 69 6c 65 2d 61 6c 69 73 74 29 0a 0a 28 64 65 66 63 rg-gcal-fetch-file-alist)..(defc
1420 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 66 65 74 63 68 2d 66 69 6c 65 2d 61 6c 69 73 74 20 ustom.org-gcal-fetch-file-alist.
1440 6e 69 6c 0a 20 20 22 5c 0a 41 73 73 6f 63 69 61 74 69 6f 6e 20 6c 69 73 74 20 27 28 63 61 6c 65 nil..."\.Association.list.'(cale
1460 6e 64 61 72 2d 69 64 20 66 69 6c 65 29 2e 20 46 6f 72 20 65 61 63 68 20 63 61 6c 65 6e 64 61 72 ndar-id.file)..For.each.calendar
1480 2d 69 64 2c e2 80 98 6f 72 67 2d 67 63 61 6c 2d 66 65 74 63 68 e2 80 99 0a 61 6e 64 20 e2 80 98 -id,...org-gcal-fetch....and....
14a0 6f 72 67 2d 67 63 61 6c 2d 73 79 6e 63 e2 80 99 20 77 69 6c 6c 20 72 65 74 72 69 65 76 65 20 6e org-gcal-sync....will.retrieve.n
14c0 65 77 20 65 76 65 6e 74 73 20 6f 6e 20 74 68 65 20 63 61 6c 65 6e 64 61 72 20 61 6e 64 20 69 6e ew.events.on.the.calendar.and.in
14e0 73 65 72 74 0a 74 68 65 6d 20 69 6e 74 6f 20 74 68 65 20 66 69 6c 65 2e 22 0a 20 20 3a 67 72 6f sert.them.into.the.file."...:gro
1500 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 20 27 28 61 6c 69 73 74 20 3a 6b 65 up.'org-gcal...:type.'(alist.:ke
1520 79 2d 74 79 70 65 20 28 73 74 72 69 6e 67 20 3a 74 61 67 20 22 43 61 6c 65 6e 64 61 72 20 49 64 y-type.(string.:tag."Calendar.Id
1540 22 29 20 3a 76 61 6c 75 65 2d 74 79 70 65 20 28 66 69 6c 65 20 3a 74 61 67 20 22 4f 72 67 20 66 ").:value-type.(file.:tag."Org.f
1560 69 6c 65 22 29 29 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 6c 6f 67 ile")))..(defcustom.org-gcal-log
1580 6f 2d 66 69 6c 65 20 6e 69 6c 0a 20 20 22 4f 72 67 2d 67 63 61 6c 20 6c 6f 67 6f 20 69 6d 61 67 o-file.nil..."Org-gcal.logo.imag
15a0 65 20 66 69 6c 65 6e 61 6d 65 20 74 6f 20 64 69 73 70 6c 61 79 20 69 6e 20 6e 6f 74 69 66 69 63 e.filename.to.display.in.notific
15c0 61 74 69 6f 6e 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 ations."...:group.'org-gcal...:t
15e0 79 70 65 20 27 66 69 6c 65 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d ype.'file)..(defcustom.org-gcal-
1600 66 65 74 63 68 2d 65 76 65 6e 74 2d 66 69 6c 74 65 72 73 20 27 28 29 0a 20 20 22 50 72 65 64 69 fetch-event-filters.'()..."Predi
1620 63 61 74 65 20 66 75 6e 63 74 69 6f 6e 73 20 74 6f 20 66 69 6c 74 65 72 20 63 61 6c 65 6e 64 61 cate.functions.to.filter.calenda
1640 72 20 65 76 65 6e 74 73 2e 0a 50 72 65 64 69 63 61 74 65 20 66 75 6e 63 74 69 6f 6e 73 20 74 61 r.events..Predicate.functions.ta
1660 6b 65 20 61 6e 20 65 76 65 6e 74 2c 20 61 6e 64 20 69 66 20 74 68 65 79 20 72 65 74 75 72 6e 20 ke.an.event,.and.if.they.return.
1680 6e 69 6c 20 74 68 65 0a 20 20 20 65 76 65 6e 74 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 66 65 74 nil.the....event.will.not.be.fet
16a0 63 68 65 64 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 ched."...:group.'org-gcal...:typ
16c0 65 20 27 6c 69 73 74 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 6e 6f e.'list)..(defcustom.org-gcal-no
16e0 74 69 66 79 2d 70 20 74 0a 20 20 22 49 66 20 6e 69 6c 20 6e 6f 20 6d 6f 72 65 20 61 6c 65 72 74 tify-p.t..."If.nil.no.more.alert
1700 20 6d 65 73 73 61 67 65 73 20 61 72 65 20 73 68 6f 77 6e 20 66 6f 72 20 73 74 61 74 75 73 20 75 .messages.are.shown.for.status.u
1720 70 64 61 74 65 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 pdates."...:group.'org-gcal...:t
1740 79 70 65 20 27 62 6f 6f 6c 65 61 6e 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 ype.'boolean)..(defcustom.org-gc
1760 61 6c 2d 75 70 64 61 74 65 2d 63 61 6e 63 65 6c 6c 65 64 2d 65 76 65 6e 74 73 2d 77 69 74 68 2d al-update-cancelled-events-with-
1780 74 6f 64 6f 20 74 0a 20 20 22 49 66 20 e2 80 98 74 e2 80 99 2c 20 6d 61 72 6b 20 63 61 6e 63 65 todo.t..."If....t...,.mark.cance
17a0 6c 6c 65 64 20 65 76 65 6e 74 73 20 77 69 74 68 20 74 68 65 20 54 4f 44 4f 20 6b 65 79 77 6f 72 lled.events.with.the.TODO.keywor
17c0 64 20 69 6e 0a e2 80 98 6f 72 67 2d 67 63 61 6c 2d 63 61 6e 63 65 6c 6c 65 64 2d 74 6f 64 6f 2d d.in....org-gcal-cancelled-todo-
17e0 6b 65 79 77 6f 72 64 e2 80 99 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a keyword...."...:group.'org-gcal.
1800 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 ..:type.'boolean)..(defcustom.or
1820 67 2d 67 63 61 6c 2d 63 61 6e 63 65 6c 6c 65 64 2d 74 6f 64 6f 2d 6b 65 79 77 6f 72 64 20 22 43 g-gcal-cancelled-todo-keyword."C
1840 41 4e 43 45 4c 4c 45 44 22 0a 20 20 22 54 4f 44 4f 20 6b 65 79 77 6f 72 64 20 74 6f 20 75 73 65 ANCELLED"..."TODO.keyword.to.use
1860 20 66 6f 72 20 63 61 6e 63 65 6c 6c 65 64 20 65 76 65 6e 74 73 2e 22 0a 20 20 3a 67 72 6f 75 70 .for.cancelled.events."...:group
1880 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 .'org-gcal...:type.'string)..(de
18a0 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 6c 6f 63 61 6c 2d 74 69 6d 65 7a 6f 6e 65 20 fcustom.org-gcal-local-timezone.
18c0 6e 69 6c 0a 20 20 22 4f 72 67 2d 67 63 61 6c 20 6c 6f 63 61 6c 20 74 69 6d 65 7a 6f 6e 65 2e 20 nil..."Org-gcal.local.timezone..
18e0 74 69 6d 65 7a 6f 6e 65 20 76 61 6c 75 65 20 73 68 6f 75 6c 64 20 75 73 65 20 27 54 5a 0a 64 61 timezone.value.should.use.'TZ.da
1900 74 61 62 61 73 65 20 6e 61 6d 65 27 2c 20 77 68 69 63 68 20 63 61 6e 20 62 65 20 66 6f 75 6e 64 tabase.name',.which.can.be.found
1920 20 69 6e 0a 27 68 74 74 70 73 3a 2f 2f 65 6e 2e 77 69 6b 69 70 65 64 69 61 2e 6f 72 67 2f 77 69 .in.'https://en.wikipedia.org/wi
1940 6b 69 2f 4c 69 73 74 5f 6f 66 5f 74 7a 5f 64 61 74 61 62 61 73 65 5f 74 69 6d 65 5f 7a 6f 6e 65 ki/List_of_tz_database_time_zone
1960 73 27 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 20 s'."...:group.'org-gcal...:type.
1980 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 76 61 72 61 6c 69 61 73 20 27 6f 72 67 2d 67 63 61 6c 'string)..(defvaralias.'org-gcal
19a0 2d 72 65 6d 6f 76 65 2d 63 61 6e 63 65 6c 6c 65 64 2d 65 76 65 6e 74 73 20 27 6f 72 67 2d 67 63 -remove-cancelled-events.'org-gc
19c0 61 6c 2d 72 65 6d 6f 76 65 2d 61 70 69 2d 63 61 6e 63 65 6c 6c 65 64 2d 65 76 65 6e 74 73 29 0a al-remove-api-cancelled-events).
19e0 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 72 65 6d 6f 76 65 2d 61 70 69 2d 63 (defcustom.org-gcal-remove-api-c
1a00 61 6e 63 65 6c 6c 65 64 2d 65 76 65 6e 74 73 20 27 61 73 6b 0a 20 20 22 57 68 65 74 68 65 72 20 ancelled-events.'ask..."Whether.
1a20 74 6f 20 72 65 6d 6f 76 65 20 4f 72 67 2d 6d 6f 64 65 20 68 65 61 64 6c 69 6e 65 73 20 66 6f 72 to.remove.Org-mode.headlines.for
1a40 20 65 76 65 6e 74 73 20 63 61 6e 63 65 6c 6c 65 64 20 69 6e 20 47 6f 6f 67 6c 65 20 43 61 6c 65 .events.cancelled.in.Google.Cale
1a60 6e 64 61 72 2e 0a 0a 54 68 65 20 65 76 65 6e 74 73 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 62 65 ndar...The.events.will.always.be
1a80 20 6d 61 72 6b 65 64 20 63 61 6e 63 65 6c 6c 65 64 20 62 65 66 6f 72 65 20 74 68 65 79 e2 80 99 .marked.cancelled.before.they...
1aa0 72 65 20 72 65 6d 6f 76 65 64 20 69 66 0a e2 80 98 6f 72 67 2d 67 63 61 6c 2d 75 70 64 61 74 65 re.removed.if....org-gcal-update
1ac0 2d 63 61 6e 63 65 6c 6c 65 64 2d 65 76 65 6e 74 73 2d 77 69 74 68 2d 74 6f 64 6f e2 80 99 20 69 -cancelled-events-with-todo....i
1ae0 73 20 74 72 75 65 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 s.true."...:group.'org-gcal...:t
1b00 79 70 65 20 27 28 63 68 6f 69 63 65 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 ype.'(choice...........(const.:t
1b20 61 67 20 22 4e 65 76 65 72 20 72 65 6d 6f 76 65 22 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 ag."Never.remove".nil)..........
1b40 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 50 72 6f 6d 70 74 20 77 68 65 74 68 65 72 20 74 6f 20 .(const.:tag."Prompt.whether.to.
1b60 72 65 6d 6f 76 65 22 20 27 61 73 6b 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a remove".'ask)...........(const.:
1b80 74 61 67 20 22 41 6c 77 61 79 73 20 72 65 6d 6f 76 65 20 77 69 74 68 6f 75 74 20 70 72 6f 6d 70 tag."Always.remove.without.promp
1ba0 74 69 6e 67 22 20 74 29 29 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d ting".t)))..(defcustom.org-gcal-
1bc0 72 65 6d 6f 76 65 2d 65 76 65 6e 74 73 2d 77 69 74 68 2d 63 61 6e 63 65 6c 6c 65 64 2d 74 6f 64 remove-events-with-cancelled-tod
1be0 6f 20 6e 69 6c 0a 20 20 22 57 68 65 74 68 65 72 20 74 6f 20 61 74 74 65 6d 70 74 20 74 6f 20 72 o.nil..."Whether.to.attempt.to.r
1c00 65 6d 6f 76 65 20 4f 72 67 2d 6d 6f 64 65 20 68 65 61 64 6c 69 6e 65 73 20 66 6f 72 20 63 61 6e emove.Org-mode.headlines.for.can
1c20 63 65 6c 6c 65 64 20 65 76 65 6e 74 73 2e 0a 53 70 65 63 69 66 69 63 61 6c 6c 79 20 65 66 66 65 celled.events..Specifically.effe
1c40 63 74 73 20 65 76 65 6e 74 73 20 6d 61 72 6b 65 64 20 77 69 74 68 20 e2 80 98 6f 72 67 2d 67 63 cts.events.marked.with....org-gc
1c60 61 6c 2d 63 61 6e 63 65 6c 6c 65 64 2d 74 6f 64 6f 2d 6b 65 79 77 6f 72 64 e2 80 99 2e 0a 0a 42 al-cancelled-todo-keyword......B
1c80 79 20 64 65 66 61 75 6c 74 2c 20 74 68 69 73 20 69 73 20 73 65 74 20 74 6f 20 6e 69 6c 20 73 6f y.default,.this.is.set.to.nil.so
1ca0 20 74 68 61 74 20 69 66 20 79 6f 75 20 64 65 63 6c 69 6e 65 20 72 65 6d 6f 76 69 6e 67 20 61 6e .that.if.you.decline.removing.an
1cc0 20 65 76 65 6e 74 20 77 68 65 6e 0a e2 80 98 6f 72 67 2d 67 63 61 6c 2d 72 65 6d 6f 76 65 2d 61 .event.when....org-gcal-remove-a
1ce0 70 69 2d 63 61 6e 63 65 6c 6c 65 64 2d 65 76 65 6e 74 73 e2 80 99 20 69 73 20 73 65 74 20 74 6f pi-cancelled-events....is.set.to
1d00 20 e2 80 98 61 73 6b e2 80 99 2c 20 79 6f 75 20 77 6f 6e e2 80 99 74 20 62 65 20 70 72 6f 6d 70 ....ask...,.you.won...t.be.promp
1d20 74 65 64 0a 74 6f 20 72 65 6d 6f 76 65 20 74 68 65 20 65 76 65 6e 74 20 61 67 61 69 6e 2e 20 20 ted.to.remove.the.event.again...
1d40 53 65 74 20 74 6f 20 74 20 74 6f 20 6f 76 65 72 72 69 64 65 20 74 68 69 73 2e 0a 0a 4e 6f 74 65 Set.to.t.to.override.this...Note
1d60 20 74 68 61 74 20 77 68 65 74 68 65 72 20 61 20 68 65 61 64 6c 69 6e 65 20 69 73 20 72 65 6d 6f .that.whether.a.headline.is.remo
1d80 76 65 64 20 69 73 20 73 74 69 6c 6c 20 63 6f 6e 74 72 6f 6c 6c 65 64 20 62 79 0a e2 80 98 6f 72 ved.is.still.controlled.by....or
1da0 67 2d 67 63 61 6c 2d 72 65 6d 6f 76 65 2d 61 70 69 2d 63 61 6e 63 65 6c 6c 65 64 2d 65 76 65 6e g-gcal-remove-api-cancelled-even
1dc0 74 73 e2 80 99 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 ts...."...:group.'org-gcal...:ty
1de0 70 65 20 27 62 6f 6f 6c 65 61 6e 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 pe.'boolean)..(defcustom.org-gca
1e00 6c 2d 6d 61 6e 61 67 65 64 2d 6e 65 77 6c 79 2d 66 65 74 63 68 65 64 2d 6d 6f 64 65 20 22 67 63 l-managed-newly-fetched-mode."gc
1e20 61 6c 22 0a 20 20 22 44 65 66 61 75 6c 74 20 76 61 6c 75 65 20 6f 66 20 e2 80 98 6f 72 67 2d 67 al"..."Default.value.of....org-g
1e40 63 61 6c 2d 6d 61 6e 61 67 65 64 2d 70 72 6f 70 65 72 74 79 e2 80 99 20 6f 6e 20 6e 65 77 6c 79 cal-managed-property....on.newly
1e60 2d 66 65 74 63 68 65 64 20 65 76 65 6e 74 73 2e 0a 0a 54 68 69 73 20 69 73 20 74 68 65 20 76 61 -fetched.events...This.is.the.va
1e80 6c 75 65 20 73 65 74 20 6f 6e 20 65 76 65 6e 74 73 20 66 65 74 63 68 65 64 20 66 72 6f 6d 20 61 lue.set.on.events.fetched.from.a
1ea0 20 63 61 6c 65 6e 64 61 72 20 62 79 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 73 79 6e 63 e2 80 99 .calendar.by....org-gcal-sync...
1ec0 20 61 6e 64 0a e2 80 98 6f 72 67 2d 67 63 61 6c 2d 66 65 74 63 68 e2 80 99 2e 0a 0a 56 61 6c 75 .and....org-gcal-fetch......Valu
1ee0 65 73 3a 0a 0a 2d 20 e2 80 9c 6f 72 67 e2 80 9d 3a 20 45 76 65 6e 74 20 69 73 20 69 6e 74 65 6e es:..-....org...:.Event.is.inten
1f00 64 65 64 20 74 6f 20 62 65 20 6d 61 6e 61 67 65 64 20 70 72 69 6d 61 72 69 6c 79 20 62 79 20 6f ded.to.be.managed.primarily.by.o
1f20 72 67 2d 67 63 61 6c 2e 20 54 68 65 73 65 20 65 76 65 6e 74 73 0a 20 20 77 69 6c 6c 20 62 65 20 rg-gcal..These.events...will.be.
1f40 70 75 73 68 65 64 20 74 6f 20 47 6f 6f 67 6c 65 20 43 61 6c 65 6e 64 61 72 20 62 79 20 e2 80 98 pushed.to.Google.Calendar.by....
1f60 6f 72 67 2d 67 63 61 6c 2d 73 79 6e 63 e2 80 99 2c 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 73 79 org-gcal-sync...,....org-gcal-sy
1f80 6e 63 2d 62 75 66 66 65 72 e2 80 99 2c 0a 20 20 61 6e 64 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d nc-buffer...,...and....org-gcal-
1fa0 70 6f 73 74 2d 61 74 2d 70 6f 69 6e 74 e2 80 99 20 69 66 20 74 68 65 79 20 68 61 76 65 20 62 65 post-at-point....if.they.have.be
1fc0 65 6e 20 6d 6f 64 69 66 69 65 64 20 69 6e 20 74 68 65 20 4f 72 67 20 66 69 6c 65 2e 20 49 66 0a en.modified.in.the.Org.file..If.
1fe0 20 20 74 68 65 20 45 54 61 67 20 69 73 20 6f 75 74 20 6f 66 20 73 79 6e 63 20 77 69 74 68 20 47 ..the.ETag.is.out.of.sync.with.G
2000 6f 6f 67 6c 65 20 43 61 6c 65 6e 64 61 72 2c 20 74 68 65 20 4f 72 67 20 68 65 61 64 6c 69 6e 65 oogle.Calendar,.the.Org.headline
2020 20 77 69 6c 6c 20 73 74 69 6c 6c 20 62 65 0a 20 20 75 70 64 61 74 65 64 20 66 72 6f 6d 20 47 6f .will.still.be...updated.from.Go
2040 6f 67 6c 65 20 43 61 6c 65 6e 64 61 72 2e 0a 2d 20 e2 80 9c 67 63 61 6c e2 80 9d 3a 20 45 76 65 ogle.Calendar..-....gcal...:.Eve
2060 6e 74 20 69 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 62 65 20 6d 61 6e 61 67 65 64 20 70 72 69 nt.is.intended.to.be.managed.pri
2080 6d 61 72 69 6c 79 20 62 79 20 6f 72 67 2d 67 63 61 6c 2e 20 54 68 65 73 65 20 65 76 65 6e 74 73 marily.by.org-gcal..These.events
20a0 0a 20 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 70 75 73 68 65 64 20 74 6f 20 47 6f 6f 67 6c 65 20 ...will.not.be.pushed.to.Google.
20c0 43 61 6c 65 6e 64 61 72 20 62 79 20 62 75 6c 6b 20 75 70 64 61 74 65 20 66 75 6e 63 74 69 6f 6e Calendar.by.bulk.update.function
20e0 73 20 6c 69 6b 65 0a 20 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 73 79 6e 63 e2 80 99 2c 20 e2 80 s.like......org-gcal-sync...,...
2100 98 6f 72 67 2d 67 63 61 6c 2d 73 79 6e 63 2d 62 75 66 66 65 72 e2 80 99 2e 20 57 68 65 6e 20 72 .org-gcal-sync-buffer.....When.r
2120 75 6e 6e 69 6e 67 0a 20 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 70 6f 73 74 2d 61 74 2d 70 6f 69 unning......org-gcal-post-at-poi
2140 6e 74 e2 80 99 2c 20 74 68 65 20 75 73 65 72 20 77 69 6c 6c 20 62 65 20 70 72 6f 6d 70 74 65 64 nt...,.the.user.will.be.prompted
2160 20 74 6f 20 61 70 70 72 6f 76 65 20 70 75 73 68 69 6e 67 20 74 68 65 0a 20 20 65 76 65 6e 74 20 .to.approve.pushing.the...event.
2180 62 79 20 64 65 66 61 75 6c 74 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a by.default."...:group.'org-gcal.
21a0 20 20 3a 74 79 70 65 20 27 28 63 68 6f 69 63 65 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 ..:type.'(choice...........(cons
21c0 74 20 3a 74 61 67 20 22 45 76 65 6e 74 20 6d 61 6e 61 67 65 64 20 6f 6e 20 47 6f 6f 67 6c 65 20 t.:tag."Event.managed.on.Google.
21e0 43 61 6c 65 6e 64 61 72 22 20 22 67 63 61 6c 22 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e Calendar"."gcal")...........(con
2200 73 74 20 3a 74 61 67 20 22 45 76 65 6e 74 20 6d 61 6e 61 67 65 64 20 69 6e 20 4f 72 67 20 66 69 st.:tag."Event.managed.in.Org.fi
2220 6c 65 22 20 22 6f 72 67 22 29 29 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 le"."org")))..(defcustom.org-gca
2240 6c 2d 6d 61 6e 61 67 65 64 2d 75 70 64 61 74 65 2d 65 78 69 73 74 69 6e 67 2d 6d 6f 64 65 20 22 l-managed-update-existing-mode."
2260 67 63 61 6c 22 0a 20 20 22 44 65 66 61 75 6c 74 20 76 61 6c 75 65 20 6f 66 20 e2 80 98 6f 72 67 gcal"..."Default.value.of....org
2280 2d 67 63 61 6c 2d 6d 61 6e 61 67 65 64 2d 70 72 6f 70 65 72 74 79 e2 80 99 20 66 6f 72 20 65 78 -gcal-managed-property....for.ex
22a0 69 73 74 69 6e 67 20 65 76 65 6e 74 73 20 77 69 74 68 6f 75 74 20 69 74 2e 0a 0a 54 68 69 73 20 isting.events.without.it...This.
22c0 69 73 20 74 68 65 20 76 61 6c 75 65 20 73 65 74 20 6f 6e 20 65 78 69 73 74 69 6e 67 20 65 6e 74 is.the.value.set.on.existing.ent
22e0 72 69 65 73 20 63 6f 6e 74 61 69 6e 69 6e 67 20 63 61 6c 65 6e 64 61 72 20 65 76 65 6e 74 73 20 ries.containing.calendar.events.
2300 77 68 65 6e 20 74 68 65 79 0a 61 72 65 20 75 70 64 61 74 65 64 20 62 79 20 e2 80 98 6f 72 67 2d when.they.are.updated.by....org-
2320 67 63 61 6c 2d 73 79 6e 63 e2 80 99 2c 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 66 65 74 63 68 27 gcal-sync...,....org-gcal-fetch'
2340 2c 20 6f 72 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 70 6f 73 74 2d 61 74 2d 70 6f 69 6e 74 e2 80 ,.or....org-gcal-post-at-point..
2360 99 0a 61 6e 64 20 64 6f 6e e2 80 99 74 20 79 65 74 20 68 61 76 65 20 61 20 76 61 6c 75 65 20 66 ..and.don...t.yet.have.a.value.f
2380 6f 72 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e 61 67 65 64 2d 70 72 6f 70 65 72 74 79 e2 or....org-gcal-managed-property.
23a0 80 99 20 73 65 74 2e 0a 0a 56 61 6c 75 65 73 3a 20 73 65 65 20 e2 80 98 6f 72 67 2d 67 63 61 6c ...set...Values:.see....org-gcal
23c0 2d 6d 61 6e 61 67 65 64 2d 6e 65 77 6c 79 2d 66 65 74 63 68 65 64 2d 6d 6f 64 65 e2 80 99 2e 22 -managed-newly-fetched-mode...."
23e0 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 20 27 28 63 68 ...:group.'org-gcal...:type.'(ch
2400 6f 69 63 65 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 45 76 65 6e oice...........(const.:tag."Even
2420 74 20 6d 61 6e 61 67 65 64 20 6f 6e 20 47 6f 6f 67 6c 65 20 43 61 6c 65 6e 64 61 72 22 20 22 67 t.managed.on.Google.Calendar"."g
2440 63 61 6c 22 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 45 76 65 cal")...........(const.:tag."Eve
2460 6e 74 20 6d 61 6e 61 67 65 64 20 69 6e 20 4f 72 67 20 66 69 6c 65 22 20 22 6f 72 67 22 29 29 29 nt.managed.in.Org.file"."org")))
2480 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e 61 67 65 64 2d 63 72 ..(defcustom.org-gcal-managed-cr
24a0 65 61 74 65 2d 66 72 6f 6d 2d 65 6e 74 72 79 2d 6d 6f 64 65 20 22 6f 72 67 22 0a 20 20 22 44 65 eate-from-entry-mode."org"..."De
24c0 66 61 75 6c 74 20 76 61 6c 75 65 20 6f 66 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e 61 67 fault.value.of....org-gcal-manag
24e0 65 64 2d 70 72 6f 70 65 72 74 79 e2 80 99 20 77 68 65 6e 20 63 72 65 61 74 69 6e 67 20 65 76 65 ed-property....when.creating.eve
2500 6e 74 20 66 72 6f 6d 20 65 6e 74 72 79 2e 0a 0a 54 68 69 73 20 69 73 20 74 68 65 20 76 61 6c 75 nt.from.entry...This.is.the.valu
2520 65 20 73 65 74 20 77 68 65 6e 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 70 6f 73 74 2d 61 74 2d 70 e.set.when....org-gcal-post-at-p
2540 6f 69 6e 74 e2 80 99 20 63 72 65 61 74 65 73 20 61 20 47 6f 6f 67 6c 65 20 43 61 6c 65 6e 64 61 oint....creates.a.Google.Calenda
2560 72 0a 65 76 65 6e 74 20 66 72 6f 6d 20 61 6e 20 4f 72 67 2d 6d 6f 64 65 20 65 6e 74 72 79 2e 20 r.event.from.an.Org-mode.entry..
2580 54 68 69 73 20 69 73 20 75 73 65 64 20 77 68 65 6e 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 63 61 This.is.used.when....org-gcal-ca
25a0 6c 65 6e 64 61 72 2d 69 64 2d 70 72 6f 70 65 72 74 79 e2 80 99 0a 6f 72 20 e2 80 98 6f 72 67 2d lendar-id-property....or....org-
25c0 67 63 61 6c 2d 65 6e 74 72 79 2d 69 64 2d 70 72 6f 70 65 72 74 79 e2 80 99 20 69 73 20 6d 69 73 gcal-entry-id-property....is.mis
25e0 73 69 6e 67 20 66 72 6f 6d 20 61 6e 20 65 6e 74 72 79 2e 20 49 66 20 74 68 65 73 65 20 61 72 65 sing.from.an.entry..If.these.are
2600 20 70 72 65 73 65 6e 74 2c 0a e2 80 98 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e 61 67 65 64 2d 75 70 .present,....org-gcal-managed-up
2620 64 61 74 65 2d 65 78 69 73 74 69 6e 67 2d 6d 6f 64 65 e2 80 99 20 69 73 20 75 73 65 64 20 69 6e date-existing-mode....is.used.in
2640 73 74 65 61 64 2e 0a 0a 56 61 6c 75 65 73 3a 20 73 65 65 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d stead...Values:.see....org-gcal-
2660 6d 61 6e 61 67 65 64 2d 6e 65 77 6c 79 2d 66 65 74 63 68 65 64 2d 6d 6f 64 65 e2 80 99 2e 22 0a managed-newly-fetched-mode....".
2680 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 20 27 28 63 68 6f ..:group.'org-gcal...:type.'(cho
26a0 69 63 65 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 45 76 65 6e 74 ice...........(const.:tag."Event
26c0 20 6d 61 6e 61 67 65 64 20 6f 6e 20 47 6f 6f 67 6c 65 20 43 61 6c 65 6e 64 61 72 22 20 22 67 63 .managed.on.Google.Calendar"."gc
26e0 61 6c 22 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 45 76 65 6e al")...........(const.:tag."Even
2700 74 20 6d 61 6e 61 67 65 64 20 69 6e 20 4f 72 67 20 66 69 6c 65 22 20 22 6f 72 67 22 29 29 29 0a t.managed.in.Org.file"."org"))).
2720 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e 61 67 65 64 2d 70 6f 73 .(defcustom.org-gcal-managed-pos
2740 74 2d 61 74 2d 70 6f 69 6e 74 2d 75 70 64 61 74 65 2d 65 78 69 73 74 69 6e 67 20 27 70 72 6f 6d t-at-point-update-existing.'prom
2760 70 74 0a 20 20 22 42 65 68 61 76 69 6f 72 20 77 68 65 6e 20 72 75 6e 6e 69 6e 67 20 e2 80 98 6f pt..."Behavior.when.running....o
2780 72 67 2d 67 63 61 6c 2d 70 6f 73 74 2d 61 74 2d 70 6f 69 6e 74 e2 80 99 20 6f 6e 20 65 78 69 73 rg-gcal-post-at-point....on.exis
27a0 74 69 6e 67 20 65 6e 74 72 69 65 73 2e 22 0a 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 ting.entries."....:group.'org-gc
27c0 61 6c 0a 20 20 3a 74 79 70 65 20 27 28 63 68 6f 69 63 65 0a 20 20 20 20 20 20 20 20 20 20 28 63 al...:type.'(choice...........(c
27e0 6f 6e 73 74 20 3a 74 61 67 20 22 4e 65 76 65 72 20 70 75 73 68 20 74 6f 20 47 6f 6f 67 6c 65 20 onst.:tag."Never.push.to.Google.
2800 43 61 6c 65 6e 64 61 72 22 20 27 6e 65 76 65 72 2d 70 75 73 68 29 0a 20 20 20 20 20 20 20 20 20 Calendar".'never-push)..........
2820 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 50 72 6f 6d 70 74 20 77 68 65 74 68 65 72 20 74 6f 20 .(const.:tag."Prompt.whether.to.
2840 70 75 73 68 20 74 6f 20 47 6f 6f 67 6c 65 20 43 61 6c 65 6e 64 61 72 20 69 66 20 72 75 6e 20 6d push.to.Google.Calendar.if.run.m
2860 61 6e 75 61 6c 6c 79 2c 20 6e 65 76 65 72 20 70 75 73 68 20 64 75 72 69 6e 67 20 73 79 6e 63 73 anually,.never.push.during.syncs
2880 22 20 27 70 72 6f 6d 70 74 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 ".'prompt)...........(const.:tag
28a0 20 22 50 72 6f 6d 70 74 20 77 68 65 74 68 65 72 20 74 6f 20 70 75 73 68 20 74 6f 20 47 6f 6f 67 ."Prompt.whether.to.push.to.Goog
28c0 6c 65 20 43 61 6c 65 6e 64 61 72 2c 20 65 76 65 6e 20 64 75 72 69 6e 67 20 73 79 6e 63 73 22 20 le.Calendar,.even.during.syncs".
28e0 27 70 72 6f 6d 70 74 2d 73 79 6e 63 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 'prompt-sync)...........(const.:
2900 74 61 67 20 22 41 6c 77 61 79 73 20 70 75 73 68 20 74 6f 20 47 6f 6f 67 6c 65 20 43 61 6c 65 6e tag."Always.push.to.Google.Calen
2920 64 61 72 22 20 27 61 6c 77 61 79 73 2d 70 75 73 68 29 29 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d dar".'always-push)))..(defcustom
2940 20 6f 72 67 2d 67 63 61 6c 2d 72 65 63 75 72 72 69 6e 67 2d 65 76 65 6e 74 73 2d 6d 6f 64 65 20 .org-gcal-recurring-events-mode.
2960 27 74 6f 70 2d 6c 65 76 65 6c 0a 20 20 22 48 6f 77 20 74 6f 20 74 72 65 61 74 20 69 6e 73 74 61 'top-level..."How.to.treat.insta
2980 6e 63 65 73 20 6f 66 20 72 65 63 75 72 72 69 6e 67 20 65 76 65 6e 74 73 20 6e 6f 74 20 61 6c 72 nces.of.recurring.events.not.alr
29a0 65 61 64 79 20 66 65 74 63 68 65 64 2e 0a 0a 2d 20 e2 80 98 74 6f 70 2d 6c 65 76 65 6c e2 80 99 eady.fetched...-....top-level...
29c0 3a 20 69 6e 73 65 72 74 20 61 6c 6c 20 69 6e 73 74 61 6e 63 65 73 20 61 74 20 74 68 65 20 74 6f :.insert.all.instances.at.the.to
29e0 70 20 6c 65 76 65 6c 20 6f 66 20 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 66 69 6c 65 20 p.level.of.the.appropriate.file.
2a00 66 6f 72 0a 20 20 74 68 65 20 63 61 6c 65 6e 64 61 72 20 49 44 20 69 6e 20 e2 80 98 6f 72 67 2d for...the.calendar.ID.in....org-
2a20 67 63 61 6c 2d 66 65 74 63 68 2d 66 69 6c 65 2d 61 6c 69 73 74 e2 80 99 2e 0a 2d 20 e2 80 98 6e gcal-fetch-file-alist.....-....n
2a40 65 73 74 65 64 e2 80 99 3a 20 69 6e 73 65 72 74 20 69 6e 73 74 61 6e 63 65 73 20 6f 66 20 61 20 ested...:.insert.instances.of.a.
2a60 72 65 63 75 72 72 69 6e 67 20 65 76 65 6e 74 20 75 6e 64 65 72 20 74 68 65 20 4f 72 67 2d 6d 6f recurring.event.under.the.Org-mo
2a80 64 65 20 68 65 61 64 6c 69 6e 65 0a 20 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 70 61 72 de.headline...containing.the.par
2aa0 65 6e 74 20 65 76 65 6e 74 2e 20 49 66 20 61 20 68 65 61 64 6c 69 6e 65 20 66 6f 72 20 74 68 65 ent.event..If.a.headline.for.the
2ac0 20 70 61 72 65 6e 74 20 65 76 65 6e 74 20 64 6f 65 73 6e e2 80 99 74 20 65 78 69 73 74 2c 0a 20 .parent.event.doesn...t.exist,..
2ae0 20 69 74 20 77 69 6c 6c 20 62 65 20 63 72 65 61 74 65 64 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 .it.will.be.created."...:group.'
2b00 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 20 27 28 63 68 6f 69 63 65 0a 20 20 20 20 20 20 org-gcal...:type.'(choice.......
2b20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 49 6e 73 65 72 74 20 61 74 20 74 6f 70 20 6c ....(const.:tag."Insert.at.top.l
2b40 65 76 65 6c 22 20 27 74 6f 70 2d 6c 65 76 65 6c 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e evel".'top-level)...........(con
2b60 73 74 20 3a 74 61 67 20 22 49 6e 73 65 72 74 20 75 6e 64 65 72 20 68 65 61 64 6c 69 6e 65 20 66 st.:tag."Insert.under.headline.f
2b80 6f 72 20 70 61 72 65 6e 74 20 65 76 65 6e 74 22 20 27 6e 65 73 74 65 64 29 29 29 0a 0a 28 64 65 or.parent.event".'nested)))..(de
2ba0 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 61 66 74 65 72 2d 75 70 64 61 74 65 2d 65 6e fcustom.org-gcal-after-update-en
2bc0 74 72 79 2d 66 75 6e 63 74 69 6f 6e 73 20 6e 69 6c 0a 20 20 22 4c 69 73 74 20 6f 66 20 66 75 6e try-functions.nil..."List.of.fun
2be0 63 74 69 6f 6e 73 20 74 6f 20 72 75 6e 20 6a 75 73 74 20 62 65 66 6f 72 65 20 e2 80 98 6f 72 67 ctions.to.run.just.before....org
2c00 2d 67 63 61 6c 2d 2d 75 70 64 61 74 65 2d 65 6e 74 72 79 e2 80 99 20 72 65 74 75 72 6e 73 2e 0a -gcal--update-entry....returns..
2c20 0a 54 68 69 73 20 69 73 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 65 64 20 77 68 65 .This.is.the.function.called.whe
2c40 6e 20 61 6e 20 65 76 65 6e 74 20 69 73 20 63 72 65 61 74 65 64 2c 20 75 70 64 61 74 65 64 2c 20 n.an.event.is.created,.updated,.
2c60 6f 72 20 64 65 6c 65 74 65 64 2e 20 45 61 63 68 0a 66 75 6e 63 74 69 6f 6e 20 69 6e 20 74 68 65 or.deleted..Each.function.in.the
2c80 20 6c 69 73 74 20 69 73 20 63 61 6c 6c 65 64 20 77 69 74 68 20 74 68 65 20 66 6f 6c 6c 6f 77 69 .list.is.called.with.the.followi
2ca0 6e 67 20 61 72 67 75 6d 65 6e 74 73 3a 0a 0a 2d 20 43 41 4c 45 4e 44 41 52 2d 49 44 3a 20 74 68 ng.arguments:..-.CALENDAR-ID:.th
2cc0 65 20 63 61 6c 65 6e 64 61 72 20 49 44 20 6f 66 20 74 68 65 20 65 76 65 6e 74 2c 20 61 73 20 61 e.calendar.ID.of.the.event,.as.a
2ce0 20 73 74 72 69 6e 67 2e 0a 2d 20 45 56 45 4e 54 3a 20 74 68 65 20 65 76 65 6e 74 20 64 61 74 61 .string..-.EVENT:.the.event.data
2d00 20 64 6f 77 6e 6c 6f 61 64 65 64 20 66 72 6f 6d 20 74 68 65 20 47 6f 6f 67 6c 65 20 43 61 6c 65 .downloaded.from.the.Google.Cale
2d20 6e 64 61 72 20 41 50 49 20 61 6e 64 20 70 61 72 73 65 64 20 75 73 69 6e 67 0a 20 20 e2 80 98 6f ndar.API.and.parsed.using......o
2d40 72 67 2d 67 63 61 6c 2d 2d 6a 73 6f 6e 2d 72 65 61 64 27 2e 0a 2d 20 55 50 44 41 54 45 2d 4d 4f rg-gcal--json-read'..-.UPDATE-MO
2d60 44 45 3a 20 61 20 73 79 6d 62 6f 6c 2c 20 6f 6e 65 20 6f 66 0a 20 20 2d 20 4e 45 57 4c 59 2d 46 DE:.a.symbol,.one.of...-.NEWLY-F
2d80 45 54 43 48 45 44 3a 20 74 68 65 20 65 76 65 6e 74 20 69 73 20 6e 65 77 6c 79 20 66 65 74 63 68 ETCHED:.the.event.is.newly.fetch
2da0 65 64 20 28 73 65 65 0a 20 20 20 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e 61 67 65 64 2d ed.(see........org-gcal-managed-
2dc0 6e 65 77 6c 79 2d 66 65 74 63 68 65 64 2d 6d 6f 64 65 27 29 2e 0a 20 20 2d 20 55 50 44 41 54 45 newly-fetched-mode')....-.UPDATE
2de0 2d 45 58 49 53 54 49 4e 47 3a 20 61 20 68 65 61 64 6c 69 6e 65 20 77 69 74 68 20 65 78 69 73 74 -EXISTING:.a.headline.with.exist
2e00 69 6e 67 20 63 61 6c 65 6e 64 61 72 20 61 6e 64 20 65 76 65 6e 74 20 49 44 73 20 69 73 20 62 65 ing.calendar.and.event.IDs.is.be
2e20 69 6e 67 0a 20 20 20 20 75 70 64 61 74 65 64 20 28 73 65 65 20 e2 80 98 6f 72 67 2d 67 63 61 6c ing.....updated.(see....org-gcal
2e40 2d 6d 61 6e 61 67 65 64 2d 75 70 64 61 74 65 2d 65 78 69 73 74 69 6e 67 2d 6d 6f 64 65 27 29 2e -managed-update-existing-mode').
2e60 0a 20 20 2d 20 43 52 45 41 54 45 2d 46 52 4f 4d 2d 45 4e 54 52 59 3a 20 61 20 68 65 61 64 6c 69 ...-.CREATE-FROM-ENTRY:.a.headli
2e80 6e 65 20 77 69 74 68 6f 75 74 20 65 78 69 73 74 69 6e 67 20 63 61 6c 65 6e 64 61 72 20 61 6e 64 ne.without.existing.calendar.and
2ea0 20 65 76 65 6e 74 20 49 44 73 20 69 73 0a 20 20 20 20 62 65 69 6e 67 20 75 70 64 61 74 65 64 20 .event.IDs.is.....being.updated.
2ec0 28 73 65 65 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e 61 67 65 64 2d 63 72 65 61 74 65 2d (see....org-gcal-managed-create-
2ee0 66 72 6f 6d 2d 65 6e 74 72 79 2d 6d 6f 64 65 e2 80 99 29 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 from-entry-mode...)."...:group.'
2f00 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 20 27 6c 69 73 74 29 0a 0a 28 64 65 66 63 75 73 org-gcal...:type.'list)..(defcus
2f20 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 65 6e 74 72 79 2d 69 64 2d 70 72 6f 70 65 72 74 79 20 22 tom.org-gcal-entry-id-property."
2f40 65 6e 74 72 79 2d 69 64 22 0a 20 20 22 5c 0a 4f 72 67 2d 6d 6f 64 65 20 70 72 6f 70 65 72 74 79 entry-id"..."\.Org-mode.property
2f60 20 6f 6e 20 6f 72 67 2d 67 63 61 6c 20 65 6e 74 72 69 65 73 20 74 68 61 74 20 72 65 63 6f 72 64 .on.org-gcal.entries.that.record
2f80 73 20 74 68 65 20 63 61 6c 65 6e 64 61 72 20 61 6e 64 20 65 76 65 6e 74 20 49 44 2e 22 0a 20 20 s.the.calendar.and.event.ID."...
2fa0 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 :group.'org-gcal...:type.'string
2fc0 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 63 61 6c 65 6e 64 61 72 2d )..(defcustom.org-gcal-calendar-
2fe0 69 64 2d 70 72 6f 70 65 72 74 79 20 22 63 61 6c 65 6e 64 61 72 2d 69 64 22 0a 20 20 22 5c 0a 4f id-property."calendar-id"..."\.O
3000 72 67 2d 6d 6f 64 65 20 70 72 6f 70 65 72 74 79 20 6f 6e 20 6f 72 67 2d 67 63 61 6c 20 65 6e 74 rg-mode.property.on.org-gcal.ent
3020 72 69 65 73 20 74 68 61 74 20 72 65 63 6f 72 64 73 20 74 68 65 20 43 61 6c 65 6e 64 61 72 20 49 ries.that.records.the.Calendar.I
3040 44 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 20 27 D."...:group.'org-gcal...:type.'
3060 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 65 74 61 string)..(defcustom.org-gcal-eta
3080 67 2d 70 72 6f 70 65 72 74 79 20 22 45 54 61 67 22 0a 20 20 22 5c 0a 4f 72 67 2d 6d 6f 64 65 20 g-property."ETag"..."\.Org-mode.
30a0 70 72 6f 70 65 72 74 79 20 6f 6e 20 6f 72 67 2d 67 63 61 6c 20 65 6e 74 72 69 65 73 20 74 68 61 property.on.org-gcal.entries.tha
30c0 74 20 72 65 63 6f 72 64 73 20 74 68 65 20 45 54 61 67 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f t.records.the.ETag."...:group.'o
30e0 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 rg-gcal...:type.'string)..(defcu
3100 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e 61 67 65 64 2d 70 72 6f 70 65 72 74 79 20 22 stom.org-gcal-managed-property."
3120 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e 61 67 65 64 22 0a 20 20 22 20 4f 72 67 2d 6d 6f 64 65 20 70 org-gcal-managed"...".Org-mode.p
3140 72 6f 70 65 72 74 79 20 6f 6e 20 6f 72 67 2d 67 63 61 6c 20 65 6e 74 72 69 65 73 20 74 68 61 74 roperty.on.org-gcal.entries.that
3160 20 72 65 63 6f 72 64 73 20 68 6f 77 20 61 6e 20 65 76 65 6e 74 20 69 73 20 6d 61 6e 61 67 65 64 .records.how.an.event.is.managed
3180 2e 0a 0a 20 20 46 6f 72 20 76 61 6c 75 65 73 20 74 68 65 20 70 72 6f 70 65 72 74 79 20 63 61 6e .....For.values.the.property.can
31a0 20 74 61 6b 65 2c 20 73 65 65 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e 61 67 65 64 2d 6e .take,.see....org-gcal-managed-n
31c0 65 77 6c 79 2d 66 65 74 63 68 65 64 2d 6d 6f 64 65 e2 80 99 2e 22 0a 20 20 3a 67 72 6f 75 70 20 ewly-fetched-mode...."...:group.
31e0 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 'org-gcal...:type.'string)..(def
3200 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 64 72 61 77 65 72 2d 6e 61 6d 65 20 22 6f 72 67 custom.org-gcal-drawer-name."org
3220 2d 67 63 61 6c 22 0a 20 20 22 5c 0a 4e 61 6d 65 20 6f 66 20 64 72 61 77 65 72 20 69 6e 20 77 68 -gcal"..."\.Name.of.drawer.in.wh
3240 69 63 68 20 65 76 65 6e 74 20 74 69 6d 65 20 61 6e 64 20 64 65 73 63 72 69 70 74 69 6f 6e 20 61 ich.event.time.and.description.a
3260 72 65 20 73 74 6f 72 65 64 20 6f 6e 20 6f 72 67 2d 67 63 61 6c 0a 65 6e 74 72 69 65 73 2e 22 0a re.stored.on.org-gcal.entries.".
3280 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 ..:group.'org-gcal...:type.'stri
32a0 6e 67 29 0a 0a 28 64 65 66 76 61 72 20 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 6c 6f 63 6b ng)..(defvar.org-gcal--sync-lock
32c0 20 6e 69 6c 0a 20 20 22 53 65 74 20 69 66 20 61 20 73 79 6e 63 20 66 75 6e 63 74 69 6f 6e 20 69 .nil..."Set.if.a.sync.function.i
32e0 73 20 72 75 6e 6e 69 6e 67 2e 22 29 0a 0a 28 64 65 66 76 61 72 20 6f 72 67 2d 67 63 61 6c 2d 74 s.running.")..(defvar.org-gcal-t
3300 6f 6b 65 6e 2d 70 6c 69 73 74 20 6e 69 6c 0a 20 20 22 54 6f 6b 65 6e 20 70 6c 69 73 74 2e 22 29 oken-plist.nil..."Token.plist.")
3320 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 63 61 6c 2d 64 65 66 61 75 6c 74 2d 74 72 ..(defcustom.org-gcal-default-tr
3340 61 6e 73 70 61 72 65 6e 63 79 20 22 6f 70 61 71 75 65 22 0a 20 20 22 54 68 65 20 64 65 66 61 75 ansparency."opaque"..."The.defau
3360 6c 74 20 76 61 6c 75 65 20 74 6f 20 75 73 65 20 66 6f 72 20 74 72 61 6e 73 70 61 72 65 6e 63 79 lt.value.to.use.for.transparency
3380 20 77 68 65 6e 20 63 72 65 61 74 69 6e 67 20 61 20 6e 65 77 20 65 76 65 6e 74 2e 0a 0a 53 65 65 .when.creating.a.new.event...See
33a0 3a 20 68 74 74 70 73 3a 2f 2f 64 65 76 65 6c 6f 70 65 72 73 2e 67 6f 6f 67 6c 65 2e 63 6f 6d 2f :.https://developers.google.com/
33c0 63 61 6c 65 6e 64 61 72 2f 76 33 2f 72 65 66 65 72 65 6e 63 65 2f 65 76 65 6e 74 73 2f 69 6e 73 calendar/v3/reference/events/ins
33e0 65 72 74 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 63 61 6c 0a 20 20 3a 74 79 70 65 ert."...:group.'org-gcal...:type
3400 20 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 65 76 65 6e 74 .'string)..(defun.org-gcal-event
3420 73 2d 75 72 6c 20 28 63 61 6c 65 6e 64 61 72 2d 69 64 29 0a 20 20 22 55 52 4c 20 75 73 65 64 20 s-url.(calendar-id)..."URL.used.
3440 74 6f 20 72 65 71 75 65 73 74 20 61 63 63 65 73 73 20 74 6f 20 65 76 65 6e 74 73 20 6f 6e 20 63 to.request.access.to.events.on.c
3460 61 6c 65 6e 64 61 72 20 43 41 4c 45 4e 44 41 52 2d 49 44 2e 22 0a 20 20 28 66 6f 72 6d 61 74 20 alendar.CALENDAR-ID."...(format.
3480 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 6f 6f 67 6c 65 61 70 69 73 2e 63 6f 6d 2f 63 61 6c 65 "https://www.googleapis.com/cale
34a0 6e 64 61 72 2f 76 33 2f 63 61 6c 65 6e 64 61 72 73 2f 25 73 2f 65 76 65 6e 74 73 22 0a 20 20 20 ndar/v3/calendars/%s/events"....
34c0 20 20 20 20 20 20 20 28 75 72 6c 2d 68 65 78 69 66 79 2d 73 74 72 69 6e 67 20 63 61 6c 65 6e 64 .......(url-hexify-string.calend
34e0 61 72 2d 69 64 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 69 6e 73 74 61 6e ar-id)))..(defun.org-gcal-instan
3500 63 65 73 2d 75 72 6c 20 28 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 65 6e 74 2d 69 64 29 0a 20 ces-url.(calendar-id.event-id)..
3520 20 22 55 52 4c 20 75 73 65 64 20 74 6f 20 72 65 71 75 65 73 74 20 61 63 63 65 73 73 20 74 6f 20 ."URL.used.to.request.access.to.
3540 69 6e 73 74 61 6e 63 65 73 20 6f 66 20 72 65 63 75 72 72 69 6e 67 20 65 76 65 6e 74 73 2e 0a 52 instances.of.recurring.events..R
3560 65 74 75 72 6e 73 20 61 20 55 52 4c 20 66 6f 72 20 72 65 63 75 72 72 65 6e 74 20 65 76 65 6e 74 eturns.a.URL.for.recurrent.event
3580 20 45 56 45 4e 54 2d 49 44 20 6f 6e 20 63 61 6c 65 6e 64 61 72 20 43 41 4c 45 4e 44 41 52 2d 49 .EVENT-ID.on.calendar.CALENDAR-I
35a0 44 2e 22 0a 20 20 28 66 6f 72 6d 61 74 20 22 68 74 74 70 73 3a 2f 2f 77 77 77 2e 67 6f 6f 67 6c D."...(format."https://www.googl
35c0 65 61 70 69 73 2e 63 6f 6d 2f 63 61 6c 65 6e 64 61 72 2f 76 33 2f 63 61 6c 65 6e 64 61 72 73 2f eapis.com/calendar/v3/calendars/
35e0 25 73 2f 65 76 65 6e 74 73 2f 25 73 2f 69 6e 73 74 61 6e 63 65 73 22 0a 20 20 20 20 20 20 20 20 %s/events/%s/instances".........
3600 20 20 28 75 72 6c 2d 68 65 78 69 66 79 2d 73 74 72 69 6e 67 20 63 61 6c 65 6e 64 61 72 2d 69 64 ..(url-hexify-string.calendar-id
3620 29 0a 20 20 20 20 20 20 20 20 20 20 28 75 72 6c 2d 68 65 78 69 66 79 2d 73 74 72 69 6e 67 20 65 )...........(url-hexify-string.e
3640 76 65 6e 74 2d 69 64 29 29 29 0a 0a 28 63 6c 2d 64 65 66 73 74 72 75 63 74 20 28 6f 72 67 2d 67 vent-id)))..(cl-defstruct.(org-g
3660 63 61 6c 2d 2d 65 76 65 6e 74 2d 65 6e 74 72 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 cal--event-entry................
3680 28 3a 63 6f 6e 73 74 72 75 63 74 6f 72 20 6f 72 67 2d 67 63 61 6c 2d 2d 65 76 65 6e 74 2d 65 6e (:constructor.org-gcal--event-en
36a0 74 72 79 2d 63 72 65 61 74 65 29 29 0a 20 20 3b 3b 20 45 6e 74 72 79 20 49 44 2e 20 43 72 65 61 try-create))...;;.Entry.ID..Crea
36c0 74 65 64 20 62 79 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 65 6e 74 72 79 ted.by....org-gcal--format-entry
36e0 2d 69 64 e2 80 99 2e 0a 20 20 65 6e 74 72 79 2d 69 64 0a 20 20 3b 3b 20 4f 70 74 69 6f 6e 61 6c -id.......entry-id...;;.Optional
3700 20 6d 61 72 6b 65 72 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 65 6e 74 72 79 2d 69 64 2e 0a 20 20 .marker.pointing.to.entry-id....
3720 6d 61 72 6b 65 72 0a 20 20 3b 3b 20 4f 70 74 69 6f 6e 61 6c 20 45 76 65 6e 74 20 72 65 73 6f 75 marker...;;.Optional.Event.resou
3740 72 63 65 20 66 65 74 63 68 65 64 20 66 72 6f 6d 20 73 65 72 76 65 72 2e 0a 20 20 65 76 65 6e 74 rce.fetched.from.server....event
3760 29 0a 0a 28 70 65 72 73 69 73 74 2d 64 65 66 76 61 72 0a 20 20 6f 72 67 2d 67 63 61 6c 2d 2d 73 )..(persist-defvar...org-gcal--s
3780 79 6e 63 2d 74 6f 6b 65 6e 73 20 6e 69 6c 0a 20 20 22 53 74 6f 72 61 67 65 20 66 6f 72 20 43 61 ync-tokens.nil..."Storage.for.Ca
37a0 6c 65 6e 64 61 72 20 41 50 49 20 73 79 6e 63 20 74 6f 6b 65 6e 73 2c 20 75 73 65 64 20 66 6f 72 lendar.API.sync.tokens,.used.for
37c0 20 70 65 72 66 6f 72 6d 69 6e 67 20 69 6e 63 72 65 6d 65 6e 74 61 6c 20 73 79 6e 63 2e 0a 0a 54 .performing.incremental.sync...T
37e0 68 69 73 20 69 73 20 61 20 61 20 68 61 73 68 20 74 61 62 6c 65 20 6d 61 70 70 69 6e 67 20 63 61 his.is.a.a.hash.table.mapping.ca
3800 6c 65 6e 64 61 72 20 49 44 73 20 28 61 73 20 67 69 76 65 6e 20 69 6e 0a e2 80 98 6f 72 67 2d 67 lendar.IDs.(as.given.in....org-g
3820 63 61 6c 2d 66 65 74 63 68 2d 66 69 6c 65 2d 61 6c 69 73 74 e2 80 99 29 20 74 6f 20 61 20 6c 69 cal-fetch-file-alist...).to.a.li
3840 73 74 20 28 45 58 50 49 52 45 53 20 53 59 4e 43 2d 54 4f 4b 45 4e 29 2e 20 20 45 58 50 49 52 45 st.(EXPIRES.SYNC-TOKEN)...EXPIRE
3860 53 20 69 73 20 61 6e 0a 45 6d 61 63 73 20 74 69 6d 65 20 76 61 6c 75 65 20 74 68 61 74 20 73 74 S.is.an.Emacs.time.value.that.st
3880 6f 72 65 73 20 74 68 65 20 74 69 6d 65 20 61 66 74 65 72 20 77 68 69 63 68 20 77 65 20 73 68 6f ores.the.time.after.which.we.sho
38a0 75 6c 64 20 70 65 72 66 6f 72 6d 20 61 20 66 75 6c 6c 20 73 79 6e 63 0a 69 6e 73 74 65 61 64 20 uld.perform.a.full.sync.instead.
38c0 6f 66 20 61 6e 20 69 6e 63 72 65 6d 65 6e 74 61 6c 20 73 79 6e 63 20 75 73 69 6e 67 20 74 68 65 of.an.incremental.sync.using.the
38e0 20 53 59 4e 43 2d 54 4f 4b 45 4e 20 73 74 6f 72 65 64 20 66 72 6f 6d 20 74 68 65 20 43 61 6c 65 .SYNC-TOKEN.stored.from.the.Cale
3900 6e 64 61 72 0a 41 50 49 2e 0a 0a 50 65 72 73 69 73 74 65 64 20 62 65 74 77 65 65 6e 20 73 65 73 ndar.API...Persisted.between.ses
3920 73 69 6f 6e 73 20 6f 66 20 45 6d 61 63 73 2e 20 20 54 6f 20 63 6c 65 61 72 20 73 79 6e 63 20 74 sions.of.Emacs...To.clear.sync.t
3940 6f 6b 65 6e 73 2c 20 63 61 6c 6c 0a e2 80 98 6f 72 67 2d 67 63 61 6c 2d 73 79 6e 63 2d 74 6f 6b okens,.call....org-gcal-sync-tok
3960 65 6e 73 2d 63 6c 65 61 72 e2 80 99 2e 22 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 6f 72 67 2d 67 ens-clear....")..(defmacro.org-g
3980 63 61 6c 2d 2d 73 79 6e 63 2d 74 6f 6b 65 6e 73 2d 67 65 74 20 28 6b 65 79 20 26 6f 70 74 69 6f cal--sync-tokens-get.(key.&optio
39a0 6e 61 6c 20 72 65 6d 6f 76 65 3f 29 0a 20 20 22 47 65 74 20 4b 45 59 20 66 72 6f 6d 20 e2 80 98 nal.remove?)..."Get.KEY.from....
39c0 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 74 6f 6b 65 6e 73 e2 80 99 2c 20 6f 72 20 6e 69 6c org-gcal--sync-tokens...,.or.nil
39e0 20 69 66 20 6e 6f 74 20 66 6f 75 6e 64 2e 0a 0a 54 68 69 73 20 69 73 20 61 20 6d 61 63 72 6f 20 .if.not.found...This.is.a.macro.
3a00 69 6e 73 74 65 61 64 20 6f 66 20 61 20 66 75 6e 63 74 69 6f 6e 20 73 6f 20 74 68 61 74 20 69 74 instead.of.a.function.so.that.it
3a20 20 63 61 6e 20 62 65 20 75 73 65 64 20 61 73 20 61 20 70 6c 61 63 65 0a 65 78 70 72 65 73 73 69 .can.be.used.as.a.place.expressi
3a40 6f 6e 20 69 6e 20 e2 80 98 73 65 74 66 e2 80 99 2e 20 20 49 6e 20 74 68 61 74 20 63 61 73 65 2c on.in....setf......In.that.case,
3a60 20 69 66 20 52 45 4d 4f 56 45 3f 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 74 68 65 20 6b 65 79 2d .if.REMOVE?.is.non-nil,.the.key-
3a80 76 61 6c 75 65 0a 70 61 69 72 20 77 69 6c 6c 20 62 65 20 72 65 6d 6f 76 65 64 20 69 6e 73 74 65 value.pair.will.be.removed.inste
3aa0 61 64 20 6f 66 20 73 65 74 2e 22 0a 20 20 60 28 61 6c 69 73 74 2d 67 65 74 20 2c 6b 65 79 20 6f ad.of.set."...`(alist-get.,key.o
3ac0 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 74 6f 6b 65 6e 73 20 6e 69 6c 20 2c 72 65 6d 6f 76 65 rg-gcal--sync-tokens.nil.,remove
3ae0 3f 20 23 27 65 71 75 61 6c 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 ?.#'equal))..;;;###autoload.(def
3b00 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 73 79 6e 63 20 28 26 6f 70 74 69 6f 6e 61 6c 20 73 6b 69 70 un.org-gcal-sync.(&optional.skip
3b20 2d 65 78 70 6f 72 74 20 73 69 6c 65 6e 74 29 0a 20 20 22 49 6d 70 6f 72 74 20 65 76 65 6e 74 73 -export.silent)..."Import.events
3b40 20 66 72 6f 6d 20 63 61 6c 65 6e 64 61 72 73 2e 0a 45 78 70 6f 72 74 20 74 68 65 20 6f 6e 65 73 .from.calendars..Export.the.ones
3b60 20 74 6f 20 74 68 65 20 63 61 6c 65 6e 64 61 72 20 69 66 20 75 6e 6c 65 73 73 0a 53 4b 49 50 2d .to.the.calendar.if.unless.SKIP-
3b80 45 58 50 4f 52 54 2e 20 20 53 65 74 20 53 49 4c 45 4e 54 20 74 6f 20 6e 6f 6e 2d 6e 69 6c 20 74 EXPORT...Set.SILENT.to.non-nil.t
3ba0 6f 20 69 6e 68 69 62 69 74 20 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 2e 22 0a 20 20 28 69 6e 74 o.inhibit.notifications."...(int
3bc0 65 72 61 63 74 69 76 65 29 0a 20 20 28 77 68 65 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 eractive)...(when.org-gcal--sync
3be0 2d 6c 6f 63 6b 0a 20 20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22 6f 72 67 2d 67 63 61 6c 20 -lock.....(user-error."org-gcal.
3c00 73 79 6e 63 20 6c 6f 63 6b 65 64 2e 20 49 66 20 61 20 70 72 65 76 69 6f 75 73 20 73 79 6e 63 20 sync.locked..If.a.previous.sync.
3c20 68 61 73 20 66 61 69 6c 65 64 2c 20 63 61 6c 6c 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 has.failed,.call....org-gcal--sy
3c40 6e 63 2d 75 6e 6c 6f 63 6b e2 80 99 20 74 6f 20 72 65 73 65 74 20 74 68 65 20 6c 6f 63 6b 20 61 nc-unlock....to.reset.the.lock.a
3c60 6e 64 20 74 72 79 20 61 67 61 69 6e 2e 22 29 29 0a 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 nd.try.again."))...(org-gcal--sy
3c80 6e 63 2d 6c 6f 63 6b 29 0a 20 20 28 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 75 70 64 61 74 nc-lock)...(org-generic-id-updat
3ca0 65 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 20 6f 72 67 2d 67 63 61 6c 2d 65 6e 74 72 79 2d 69 64 e-id-locations.org-gcal-entry-id
3cc0 2d 70 72 6f 70 65 72 74 79 29 0a 20 20 28 77 68 65 6e 20 6f 72 67 2d 67 63 61 6c 2d 61 75 74 6f -property)...(when.org-gcal-auto
3ce0 2d 61 72 63 68 69 76 65 0a 20 20 20 20 28 64 6f 6c 69 73 74 20 28 69 20 6f 72 67 2d 67 63 61 6c -archive.....(dolist.(i.org-gcal
3d00 2d 66 65 74 63 68 2d 66 69 6c 65 2d 61 6c 69 73 74 29 0a 20 20 20 20 20 20 28 77 69 74 68 2d 63 -fetch-file-alist).......(with-c
3d20 75 72 72 65 6e 74 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 28 66 69 6e 64 2d 66 69 urrent-buffer...........(find-fi
3d40 6c 65 2d 6e 6f 73 65 6c 65 63 74 20 28 63 64 72 20 69 29 29 0a 20 20 20 20 20 20 20 20 28 6f 72 le-noselect.(cdr.i)).........(or
3d60 67 2d 67 63 61 6c 2d 2d 61 72 63 68 69 76 65 2d 6f 6c 64 2d 65 76 65 6e 74 29 29 29 29 0a 20 20 g-gcal--archive-old-event))))...
3d80 28 6c 65 74 20 28 28 75 70 2d 74 69 6d 65 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 75 70 2d 74 69 6d (let.((up-time.(org-gcal--up-tim
3da0 65 29 29 0a 20 20 20 20 20 20 20 20 28 64 6f 77 6e 2d 74 69 6d 65 20 28 6f 72 67 2d 67 63 61 6c e)).........(down-time.(org-gcal
3dc0 2d 2d 64 6f 77 6e 2d 74 69 6d 65 29 29 29 0a 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 74 72 79 --down-time))).....(deferred:try
3de0 0a 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 20 20 20 20 20 28 64 65 66 65 72 72 65 ......(deferred:$.......(deferre
3e00 64 3a 6c 6f 6f 70 20 6f 72 67 2d 67 63 61 6c 2d 66 65 74 63 68 2d 66 69 6c 65 2d 61 6c 69 73 74 d:loop.org-gcal-fetch-file-alist
3e20 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 63 ......................(lambda.(c
3e40 61 6c 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 alendar-id-file)................
3e60 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 20 20 20 20 20 20 20 20 20 20 20 ........(deferred:$.............
3e80 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 63 61 6c 65 ............(org-gcal--sync-cale
3ea0 6e 64 61 72 20 63 61 6c 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 20 73 6b 69 70 2d 65 78 70 6f 72 ndar.calendar-id-file.skip-expor
3ec0 74 20 73 69 6c 65 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t.silent........................
3ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 70 2d 74 69 6d ..........................up-tim
3f00 65 20 64 6f 77 6e 2d 74 69 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e.down-time)....................
3f20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 20 6e 69 6c 29 0a 20 20 20 20 .....(deferred:succeed.nil).....
3f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 ....................(deferred:ne
3f60 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 xtc.it..........................
3f80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 29 0a 20 20 20 20 20 ...............(lambda.(_)......
3fa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3fc0 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 6e 6f 74 69 66 79 20 22 43 6f 6d 70 6c 65 74 65 .....(org-gcal--notify."Complete
3fe0 64 20 65 76 65 6e 74 20 66 65 74 63 68 69 6e 67 20 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 d.event.fetching..".............
4000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 22 45 76 65 6e 74 73 20 ................(concat."Events.
4040 66 65 74 63 68 65 64 20 69 6e 74 6f 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 fetched.into\n".................
4060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 64 72 20 63 61 6c 65 6e 64 61 ....................(cdr.calenda
40a0 72 2d 69 64 2d 66 69 6c 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r-id-file)).....................
40c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
40e0 20 20 20 20 20 20 20 20 73 69 6c 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ........silent).................
4100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 ..........................(defer
4120 72 65 64 3a 73 75 63 63 65 65 64 20 6e 69 6c 29 29 29 29 29 29 0a 20 20 20 20 20 20 3b 3b 20 41 red:succeed.nil)))))).......;;.A
4140 66 74 65 72 20 73 79 6e 63 69 6e 67 20 6e 65 77 20 65 76 65 6e 74 73 20 74 6f 20 4f 72 67 2c 20 fter.syncing.new.events.to.Org,.
4160 73 79 6e 63 20 65 78 69 73 74 69 6e 67 20 65 76 65 6e 74 73 20 69 6e 20 4f 72 67 2e 0a 20 20 20 sync.existing.events.in.Org.....
4180 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 ...(deferred:nextc.it...........
41a0 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 29 0a 20 20 20 20 20 20 20 20 ............(lambda.(_).........
41c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d ................(org-generic-id-
41e0 75 70 64 61 74 65 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 20 6f 72 67 2d 67 63 61 6c 2d 65 6e 74 update-id-locations.org-gcal-ent
4200 72 79 2d 69 64 2d 70 72 6f 70 65 72 74 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ry-id-property).................
4220 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ........(when.t.................
4240 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........(mapc.................
4260 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 66 69 6c 65 29 0a 20 20 20 20 20 20 ...........(lambda.(file).......
4280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 74 68 2d 63 75 72 .......................(with-cur
42a0 72 65 6e 74 2d 62 75 66 66 65 72 20 28 66 69 6e 64 2d 66 69 6c 65 2d 6e 6f 73 65 6c 65 63 74 20 rent-buffer.(find-file-noselect.
42c0 66 69 6c 65 20 27 6e 6f 77 61 72 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 file.'nowarn)...................
42e0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 77 69 74 68 2d 77 69 64 65 2d 62 75 66 66 .............(org-with-wide-buff
4300 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 er..............................
4320 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 75 6e 6c 6f 63 6b 29 0a 20 20 20 20 20 ...(org-gcal--sync-unlock)......
4340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d ...........................(org-
4360 67 63 61 6c 2d 73 79 6e 63 2d 62 75 66 66 65 72 20 73 6b 69 70 2d 65 78 70 6f 72 74 20 73 69 6c gcal-sync-buffer.skip-export.sil
4380 65 6e 74 20 27 66 69 6c 74 65 72 2d 74 69 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ent.'filter-time................
43a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
43c0 20 20 20 20 20 20 20 27 66 69 6c 74 65 72 2d 6d 61 6e 61 67 65 64 29 29 29 29 0a 20 20 20 20 20 .......'filter-managed))))......
43e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 65 6e 65 72 ......................(org-gener
4400 69 63 2d 69 64 2d 66 69 6c 65 73 29 29 29 29 29 29 0a 20 20 20 20 20 3a 66 69 6e 61 6c 6c 79 0a ic-id-files))))))......:finally.
4420 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 29 0a 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c .....(lambda.()........(org-gcal
4440 2d 2d 73 79 6e 63 2d 75 6e 6c 6f 63 6b 29 29 29 29 29 0a 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d --sync-unlock)))))...(defun.org-
4460 67 63 61 6c 2d 2d 73 79 6e 63 2d 63 61 6c 65 6e 64 61 72 20 28 63 61 6c 65 6e 64 61 72 2d 69 64 gcal--sync-calendar.(calendar-id
4480 2d 66 69 6c 65 20 73 6b 69 70 2d 65 78 70 6f 72 74 20 73 69 6c 65 6e 74 0a 20 20 20 20 20 20 20 -file.skip-export.silent........
44a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
44c0 20 20 20 20 20 20 20 20 20 20 75 70 2d 74 69 6d 65 20 64 6f 77 6e 2d 74 69 6d 65 29 0a 20 20 22 ..........up-time.down-time)..."
44e0 53 79 6e 63 20 65 76 65 6e 74 73 20 66 6f 72 20 43 41 4c 45 4e 44 41 52 2d 49 44 2d 46 49 4c 45 Sync.events.for.CALENDAR-ID-FILE
4500 0a 0a 43 41 4c 45 4e 44 41 52 2d 49 44 2d 46 49 4c 45 20 69 73 20 61 20 63 6f 6e 73 20 69 6e 20 ..CALENDAR-ID-FILE.is.a.cons.in.
4520 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 66 65 74 63 68 2d 66 69 6c 65 2d 61 6c 69 73 74 e2 80 99 2c ...org-gcal-fetch-file-alist...,
4540 20 66 6f 72 20 77 68 69 63 68 20 73 65 65 2e 22 0a 20 20 28 6c 65 74 2a 20 28 0a 20 20 20 20 20 .for.which.see."...(let*.(......
4560 20 20 20 20 3b 3b 20 4e 65 65 64 20 74 6f 20 61 64 64 20 61 20 64 75 6d 6d 79 20 76 61 6c 75 65 ....;;.Need.to.add.a.dummy.value
4580 20 74 6f 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68 65 20 6c 69 73 74 20 74 6f .to.the.beginning.of.the.list.to
45a0 20 67 65 6e 65 72 61 74 65 20 61 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 75 6e 69 71 75 65 20 6c .generate.a..........;;.unique.l
45c0 69 73 74 20 74 68 61 74 20 63 61 6e 20 62 65 20 6d 6f 64 69 66 69 65 64 20 69 6e 0a 20 20 20 20 ist.that.can.be.modified.in.....
45e0 20 20 20 20 20 3b 3b 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 63 61 6c 65 6e 64 .....;;....org-gcal--sync-calend
4600 61 72 2d 65 76 65 6e 74 73 e2 80 99 2e 20 4c 61 74 65 72 20 77 65 e2 80 99 6c 6c 20 73 74 72 69 ar-events.....Later.we...ll.stri
4620 70 20 74 68 69 73 20 66 69 72 73 74 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 65 6c 65 6d 65 6e 74 p.this.first..........;;.element
4640 2e 0a 20 20 20 20 20 20 20 20 20 28 70 61 72 65 6e 74 2d 65 76 65 6e 74 73 20 28 6c 69 73 74 20 ...........(parent-events.(list.
4660 27 64 75 6d 6d 79 29 29 29 0a 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 20 20 20 20 28 'dummy))).....(deferred:$......(
4680 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 63 61 6c 65 6e 64 61 72 2d 65 76 65 6e 74 73 0a 20 org-gcal--sync-calendar-events..
46a0 20 20 20 20 20 63 61 6c 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 20 73 6b 69 70 2d 65 78 70 6f 72 .....calendar-id-file.skip-expor
46c0 74 20 73 69 6c 65 6e 74 20 6e 69 6c 20 75 70 2d 74 69 6d 65 20 64 6f 77 6e 2d 74 69 6d 65 20 70 t.silent.nil.up-time.down-time.p
46e0 61 72 65 6e 74 2d 65 76 65 6e 74 73 29 0a 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 arent-events)......(deferred:nex
4700 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 tc.it......................(lamb
4720 64 61 20 28 5f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 da.(_)........................(d
4740 65 66 65 72 72 65 64 3a 6c 6f 6f 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 eferred:loop....................
4760 20 20 20 20 20 3b 3b 20 53 74 72 69 70 20 64 75 6d 6d 79 20 66 69 72 73 74 20 65 6c 65 6d 65 6e .....;;.Strip.dummy.first.elemen
4780 74 20 61 6e 64 20 72 65 6d 6f 76 65 20 64 75 70 6c 69 63 61 74 65 73 0a 20 20 20 20 20 20 20 20 t.and.remove.duplicates.........
47a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 72 65 6d 6f 76 65 2d 64 75 70 6c 69 ................(cl-remove-dupli
47c0 63 61 74 65 73 20 28 63 64 72 20 70 61 72 65 6e 74 2d 65 76 65 6e 74 73 29 20 3a 74 65 73 74 20 cates.(cdr.parent-events).:test.
47e0 23 27 73 74 72 69 6e 67 3d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 #'string=)......................
4800 20 20 20 28 6c 61 6d 62 64 61 20 28 70 61 72 65 6e 74 2d 65 76 65 6e 74 2d 69 64 29 0a 20 20 20 ...(lambda.(parent-event-id)....
4820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 65 71 .......................(when.(eq
4840 20 6f 72 67 2d 67 63 61 6c 2d 72 65 63 75 72 72 69 6e 67 2d 65 76 65 6e 74 73 2d 6d 6f 64 65 20 .org-gcal-recurring-events-mode.
4860 27 6e 65 73 74 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 'nested)........................
4880 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....(deferred:$................
48a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 65 76 ..............(org-gcal--sync-ev
48c0 65 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ent.............................
48e0 20 20 63 61 6c 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 20 70 61 72 65 6e 74 2d 65 76 65 6e 74 2d ..calendar-id-file.parent-event-
4900 69 64 20 73 6b 69 70 2d 65 78 70 6f 72 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 id.skip-export).................
4920 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 69 6e 73 .............(org-gcal--sync-ins
4940 74 61 6e 63 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tances..........................
4960 20 20 20 20 20 63 61 6c 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 20 70 61 72 65 6e 74 2d 65 76 65 .....calendar-id-file.parent-eve
4980 6e 74 2d 69 64 20 73 6b 69 70 2d 65 78 70 6f 72 74 20 73 69 6c 65 6e 74 20 6e 69 6c 0a 20 20 20 nt-id.skip-export.silent.nil....
49a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 70 2d 74 69 ...........................up-ti
49c0 6d 65 20 64 6f 77 6e 2d 74 69 6d 65 29 29 29 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f me.down-time))))))))))..(defun.o
49e0 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 63 61 6c 65 6e 64 61 72 2d 65 76 65 6e 74 73 0a 20 20 rg-gcal--sync-calendar-events...
4a00 20 20 28 63 61 6c 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 20 73 6b 69 70 2d 65 78 70 6f 72 74 20 ..(calendar-id-file.skip-export.
4a20 73 69 6c 65 6e 74 20 70 61 67 65 2d 74 6f 6b 65 6e 20 75 70 2d 74 69 6d 65 20 64 6f 77 6e 2d 74 silent.page-token.up-time.down-t
4a40 69 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 72 65 6e 74 ime.......................parent
4a60 2d 65 76 65 6e 74 73 29 0a 20 20 22 53 79 6e 63 20 65 76 65 6e 74 73 20 66 6f 72 20 43 41 4c 45 -events)..."Sync.events.for.CALE
4a80 4e 44 41 52 2d 49 44 2d 46 49 4c 45 0a 0a 43 41 4c 45 4e 44 41 52 2d 49 44 2d 46 49 4c 45 20 69 NDAR-ID-FILE..CALENDAR-ID-FILE.i
4aa0 73 20 61 20 63 6f 6e 73 20 69 6e 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 66 65 74 63 68 2d 66 69 s.a.cons.in....org-gcal-fetch-fi
4ac0 6c 65 2d 61 6c 69 73 74 e2 80 99 2c 20 66 6f 72 20 77 68 69 63 68 20 73 65 65 2e 22 0a 20 20 28 le-alist...,.for.which.see."...(
4ae0 6c 65 74 2a 20 28 28 63 61 6c 65 6e 64 61 72 2d 69 64 20 28 63 61 72 20 63 61 6c 65 6e 64 61 72 let*.((calendar-id.(car.calendar
4b00 2d 69 64 2d 66 69 6c 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 63 61 6c 65 6e 64 61 72 2d 66 69 -id-file))..........(calendar-fi
4b20 6c 65 20 28 63 64 72 20 63 61 6c 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 29 29 0a 20 20 20 20 20 le.(cdr.calendar-id-file))......
4b40 20 20 20 20 28 70 61 67 65 2d 74 6f 6b 65 6e 2d 63 6f 6e 73 20 27 28 64 75 6d 6d 79 29 29 29 0a ....(page-token-cons.'(dummy))).
4b60 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d ....(deferred:$......(org-gcal--
4b80 73 79 6e 63 2d 72 65 71 75 65 73 74 2d 65 76 65 6e 74 73 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 sync-request-events.calendar-id.
4ba0 70 61 67 65 2d 74 6f 6b 65 6e 20 75 70 2d 74 69 6d 65 20 64 6f 77 6e 2d 74 69 6d 65 29 0a 20 20 page-token.up-time.down-time)...
4bc0 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 ...(deferred:nextc.it...........
4be0 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 73 70 6f 6e 73 65 29 0a 20 20 ...........(lambda.(response)...
4c00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 72 65 74 72 .....................(let.((retr
4c20 79 2d 66 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 y-fn............................
4c40 20 20 20 28 6c 61 6d 62 64 61 20 28 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...(lambda.()...................
4c60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 63 61 ..............(org-gcal--sync-ca
4c80 6c 65 6e 64 61 72 2d 65 76 65 6e 74 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lendar-events...................
4ca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 6c 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 20 ...............calendar-id-file.
4cc0 73 6b 69 70 2d 65 78 70 6f 72 74 20 73 69 6c 65 6e 74 20 70 61 67 65 2d 74 6f 6b 65 6e 0a 20 20 skip-export.silent.page-token...
4ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 ...............................u
4d00 70 2d 74 69 6d 65 20 64 6f 77 6e 2d 74 69 6d 65 20 70 61 72 65 6e 74 2d 65 76 65 6e 74 73 29 29 p-time.down-time.parent-events))
4d20 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 ))..........................(org
4d40 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 68 61 6e 64 6c 65 2d 72 65 73 70 6f 6e 73 65 0a 20 20 20 20 -gcal--sync-handle-response.....
4d60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 73 70 6f 6e 73 65 20 63 ......................response.c
4d80 61 6c 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 20 70 61 67 65 2d 74 6f 6b 65 6e 2d 63 6f 6e 73 20 alendar-id-file.page-token-cons.
4da0 64 6f 77 6e 2d 74 69 6d 65 20 72 65 74 72 79 2d 66 6e 29 29 29 29 0a 20 20 20 20 20 28 64 65 66 down-time.retry-fn))))......(def
4dc0 65 72 72 65 64 3a 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 erred:nextc.it..................
4de0 20 20 20 20 28 6c 61 6d 62 64 61 20 28 65 76 65 6e 74 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 ....(lambda.(events)............
4e00 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 68 61 6e 64 ............(org-gcal--sync-hand
4e20 6c 65 2d 65 76 65 6e 74 73 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 63 61 6c 65 6e 64 61 72 2d 66 le-events.calendar-id.calendar-f
4e40 69 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ile.............................
4e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 73 20 .........................events.
4e80 6e 69 6c 20 75 70 2d 74 69 6d 65 20 64 6f 77 6e 2d 74 69 6d 65 0a 20 20 20 20 20 20 20 20 20 20 nil.up-time.down-time...........
4ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4ec0 20 20 20 20 20 20 20 20 20 20 20 70 61 72 65 6e 74 2d 65 76 65 6e 74 73 29 29 29 0a 20 20 20 20 ...........parent-events))).....
4ee0 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 .(deferred:nextc.it.............
4f00 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 65 6e 74 72 69 65 73 29 0a 20 20 20 20 20 .........(lambda.(entries)......
4f20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e ..................(org-gcal--syn
4f40 63 2d 75 70 64 61 74 65 2d 65 6e 74 72 69 65 73 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 6e 74 c-update-entries.calendar-id.ent
4f60 72 69 65 73 20 73 6b 69 70 2d 65 78 70 6f 72 74 29 29 29 0a 20 20 20 20 20 3b 3b 20 52 65 74 72 ries.skip-export)))......;;.Retr
4f80 69 65 76 65 20 74 68 65 20 6e 65 78 74 20 70 61 67 65 20 6f 66 20 72 65 73 75 6c 74 73 20 69 66 ieve.the.next.page.of.results.if
4fa0 20 6e 65 65 64 65 64 2e 0a 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 69 74 .needed.......(deferred:nextc.it
4fc0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f ......................(lambda.(_
4fe0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 )........................(let.((
5000 70 74 20 28 63 61 72 20 28 6c 61 73 74 20 70 61 67 65 2d 74 6f 6b 65 6e 2d 63 6f 6e 73 29 29 29 pt.(car.(last.page-token-cons)))
5020 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 70 )..........................(if.p
5040 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 t..............................(
5060 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 63 61 6c 65 6e 64 61 72 2d 65 76 65 6e 74 73 0a 20 org-gcal--sync-calendar-events..
5080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 6c .............................cal
50a0 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 20 73 6b 69 70 2d 65 78 70 6f 72 74 20 73 69 6c 65 6e 74 endar-id-file.skip-export.silent
50c0 20 70 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .pt.............................
50e0 20 20 75 70 2d 74 69 6d 65 20 64 6f 77 6e 2d 74 69 6d 65 20 70 61 72 65 6e 74 2d 65 76 65 6e 74 ..up-time.down-time.parent-event
5100 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 s)............................(d
5120 65 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 20 6e 69 6c 29 29 29 29 29 29 29 29 0a 0a 28 64 65 eferred:succeed.nil))))))))..(de
5140 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 69 6e 73 74 61 6e 63 65 73 0a 20 20 20 fun.org-gcal--sync-instances....
5160 20 28 63 61 6c 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 20 70 61 72 65 6e 74 2d 65 76 65 6e 74 2d .(calendar-id-file.parent-event-
5180 69 64 20 73 6b 69 70 2d 65 78 70 6f 72 74 20 73 69 6c 65 6e 74 20 70 61 67 65 2d 74 6f 6b 65 6e id.skip-export.silent.page-token
51a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 70 2d 74 69 6d 65 20 64 .......................up-time.d
51c0 6f 77 6e 2d 74 69 6d 65 29 0a 20 20 22 53 79 6e 63 20 69 6e 73 74 61 6e 63 65 73 20 6f 66 20 69 own-time)..."Sync.instances.of.i
51e0 6e 73 74 61 6e 63 65 73 20 6f 66 20 72 65 63 75 72 72 69 6e 67 20 65 76 65 6e 74 20 50 41 52 45 nstances.of.recurring.event.PARE
5200 4e 54 2d 45 56 45 4e 54 2d 49 44 2e 0a 0a 43 41 4c 45 4e 44 41 52 2d 49 44 2d 46 49 4c 45 20 69 NT-EVENT-ID...CALENDAR-ID-FILE.i
5220 73 20 61 20 63 6f 6e 73 20 69 6e 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 66 65 74 63 68 2d 66 69 s.a.cons.in....org-gcal-fetch-fi
5240 6c 65 2d 61 6c 69 73 74 e2 80 99 2c 20 66 6f 72 20 77 68 69 63 68 20 73 65 65 2e 22 0a 20 20 28 le-alist...,.for.which.see."...(
5260 6c 65 74 2a 20 28 28 63 61 6c 65 6e 64 61 72 2d 69 64 20 28 63 61 72 20 63 61 6c 65 6e 64 61 72 let*.((calendar-id.(car.calendar
5280 2d 69 64 2d 66 69 6c 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 63 61 6c 65 6e 64 61 72 2d 66 69 -id-file))..........(calendar-fi
52a0 6c 65 20 28 63 64 72 20 63 61 6c 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 29 29 0a 20 20 20 20 20 le.(cdr.calendar-id-file))......
52c0 20 20 20 20 28 70 61 67 65 2d 74 6f 6b 65 6e 2d 63 6f 6e 73 20 27 28 64 75 6d 6d 79 29 29 29 0a ....(page-token-cons.'(dummy))).
52e0 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d ....(deferred:$......(org-gcal--
5300 73 79 6e 63 2d 72 65 71 75 65 73 74 2d 69 6e 73 74 61 6e 63 65 73 20 63 61 6c 65 6e 64 61 72 2d sync-request-instances.calendar-
5320 69 64 20 70 61 72 65 6e 74 2d 65 76 65 6e 74 2d 69 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 id.parent-event-id..............
5340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 70 2d 74 69 6d ..........................up-tim
5360 65 20 64 6f 77 6e 2d 74 69 6d 65 20 70 61 67 65 2d 74 6f 6b 65 6e 29 0a 20 20 20 20 20 28 64 65 e.down-time.page-token)......(de
5380 66 65 72 72 65 64 3a 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ferred:nextc.it.................
53a0 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 73 70 6f 6e 73 65 29 0a 20 20 20 20 20 20 20 20 .....(lambda.(response).........
53c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 72 65 74 72 79 2d 66 6e 0a 20 ...............(let.((retry-fn..
53e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 .............................(la
5400 6d 62 64 61 20 28 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 mbda.().........................
5420 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 69 6e 73 74 61 6e 63 65 ........(org-gcal--sync-instance
5440 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s...............................
5460 20 20 20 63 61 6c 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 20 70 61 72 65 6e 74 2d 65 76 65 6e 74 ...calendar-id-file.parent-event
5480 2d 69 64 20 73 6b 69 70 2d 65 78 70 6f 72 74 20 73 69 6c 65 6e 74 0a 20 20 20 20 20 20 20 20 20 -id.skip-export.silent..........
54a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 2d 74 6f 6b ........................page-tok
54c0 65 6e 20 75 70 2d 74 69 6d 65 20 64 6f 77 6e 2d 74 69 6d 65 29 29 29 29 0a 20 20 20 20 20 20 20 en.up-time.down-time))))........
54e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e ..................(org-gcal--syn
5500 63 2d 68 61 6e 64 6c 65 2d 72 65 73 70 6f 6e 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 c-handle-response...............
5520 20 20 20 20 20 20 20 20 20 20 20 20 72 65 73 70 6f 6e 73 65 20 63 61 6c 65 6e 64 61 72 2d 69 64 ............response.calendar-id
5540 2d 66 69 6c 65 20 70 61 67 65 2d 74 6f 6b 65 6e 2d 63 6f 6e 73 20 64 6f 77 6e 2d 74 69 6d 65 20 -file.page-token-cons.down-time.
5560 72 65 74 72 79 2d 66 6e 29 29 29 29 0a 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 retry-fn))))......(deferred:next
5580 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 c.it......................(lambd
55a0 61 20 28 65 76 65 6e 74 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 a.(events)......................
55c0 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 68 61 6e 64 6c 65 2d 65 76 65 6e 74 73 20 ..(org-gcal--sync-handle-events.
55e0 63 61 6c 65 6e 64 61 72 2d 69 64 20 63 61 6c 65 6e 64 61 72 2d 66 69 6c 65 0a 20 20 20 20 20 20 calendar-id.calendar-file.......
5600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
5620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 73 20 74 20 75 70 2d 74 69 6d 65 20 ...............events.t.up-time.
5640 64 6f 77 6e 2d 74 69 6d 65 20 6e 69 6c 29 29 29 0a 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a down-time.nil)))......(deferred:
5660 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c nextc.it......................(l
5680 61 6d 62 64 61 20 28 65 6e 74 72 69 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ambda.(entries).................
56a0 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 75 70 64 61 74 65 2d 65 6e .......(org-gcal--sync-update-en
56c0 74 72 69 65 73 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 6e 74 72 69 65 73 20 73 6b 69 70 2d 65 tries.calendar-id.entries.skip-e
56e0 78 70 6f 72 74 29 29 29 0a 20 20 20 20 20 3b 3b 20 52 65 74 72 69 65 76 65 20 74 68 65 20 6e 65 xport)))......;;.Retrieve.the.ne
5700 78 74 20 70 61 67 65 20 6f 66 20 72 65 73 75 6c 74 73 20 69 66 20 6e 65 65 64 65 64 2e 0a 20 20 xt.page.of.results.if.needed....
5720 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 ...(deferred:nextc.it...........
5740 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 29 0a 20 20 20 20 20 20 20 20 20 ...........(lambda.(_)..........
5760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 70 74 20 28 63 61 72 20 28 6c 61 ..............(let.((pt.(car.(la
5780 73 74 20 70 61 67 65 2d 74 6f 6b 65 6e 2d 63 6f 6e 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 st.page-token-cons))))..........
57a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 70 74 0a 20 20 20 20 20 20 20 20 20 ................(if.pt..........
57c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 ....................(org-gcal--s
57e0 79 6e 63 2d 69 6e 73 74 61 6e 63 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ync-instances...................
5800 20 20 20 20 20 20 20 20 20 20 20 20 63 61 6c 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 20 70 61 72 ............calendar-id-file.par
5820 65 6e 74 2d 65 76 65 6e 74 2d 69 64 20 73 6b 69 70 2d 65 78 70 6f 72 74 20 73 69 6c 65 6e 74 0a ent-event-id.skip-export.silent.
5840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 74 ..............................pt
5860 20 75 70 2d 74 69 6d 65 20 64 6f 77 6e 2d 74 69 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 .up-time.down-time).............
5880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 ...............(deferred:succeed
58a0 20 6e 69 6c 29 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 73 .nil))))))))..(defun.org-gcal--s
58c0 79 6e 63 2d 65 76 65 6e 74 0a 20 20 20 20 28 63 61 6c 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 20 ync-event.....(calendar-id-file.
58e0 65 76 65 6e 74 2d 69 64 20 73 6b 69 70 2d 65 78 70 6f 72 74 29 0a 20 20 22 53 79 6e 63 20 61 20 event-id.skip-export)..."Sync.a.
5900 73 69 6e 67 6c 65 20 65 76 65 6e 74 20 67 69 76 65 6e 20 62 79 20 45 56 45 4e 54 2d 49 44 0a 0a single.event.given.by.EVENT-ID..
5920 43 41 4c 45 4e 44 41 52 2d 49 44 2d 46 49 4c 45 20 69 73 20 61 20 63 6f 6e 73 20 69 6e 20 e2 80 CALENDAR-ID-FILE.is.a.cons.in...
5940 98 6f 72 67 2d 67 63 61 6c 2d 66 65 74 63 68 2d 66 69 6c 65 2d 61 6c 69 73 74 e2 80 99 2c 20 66 .org-gcal-fetch-file-alist...,.f
5960 6f 72 20 77 68 69 63 68 20 73 65 65 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 63 61 6c 65 6e 64 61 or.which.see."...(let*.((calenda
5980 72 2d 69 64 20 28 63 61 72 20 63 61 6c 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 29 29 0a 20 20 20 r-id.(car.calendar-id-file))....
59a0 20 20 20 20 20 20 28 63 61 6c 65 6e 64 61 72 2d 66 69 6c 65 20 28 63 64 72 20 63 61 6c 65 6e 64 ......(calendar-file.(cdr.calend
59c0 61 72 2d 69 64 2d 66 69 6c 65 29 29 29 0a 0a 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 ar-id-file)))......(deferred:$..
59e0 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 67 65 74 2d 65 76 65 6e 74 20 63 61 6c 65 6e 64 61 ....(org-gcal--get-event.calenda
5a00 72 2d 69 64 20 65 76 65 6e 74 2d 69 64 29 0a 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 r-id.event-id)......(deferred:ne
5a20 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d xtc.it......................(lam
5a40 62 64 61 20 28 65 76 65 6e 74 29 20 28 76 65 63 74 6f 72 20 28 72 65 71 75 65 73 74 2d 72 65 73 bda.(event).(vector.(request-res
5a60 70 6f 6e 73 65 2d 64 61 74 61 20 65 76 65 6e 74 29 29 29 29 0a 20 20 20 20 20 28 64 65 66 65 72 ponse-data.event))))......(defer
5a80 72 65 64 3a 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 red:nextc.it....................
5aa0 20 20 28 6c 61 6d 62 64 61 20 28 65 76 65 6e 74 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ..(lambda.(events)..............
5ac0 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 68 61 6e 64 6c 65 ..........(org-gcal--sync-handle
5ae0 2d 65 76 65 6e 74 73 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 63 61 6c 65 6e 64 61 72 2d 66 69 6c -events.calendar-id.calendar-fil
5b00 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e...............................
5b20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 73 20 6e 69 .......................events.ni
5b40 6c 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 29 29 29 0a 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a l.nil.nil.nil)))......(deferred:
5b60 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c nextc.it......................(l
5b80 61 6d 62 64 61 20 28 65 6e 74 72 69 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ambda.(entries).................
5ba0 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 75 70 64 61 74 65 2d 65 6e .......(org-gcal--sync-update-en
5bc0 74 72 69 65 73 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 6e 74 72 69 65 73 20 73 6b 69 70 2d 65 tries.calendar-id.entries.skip-e
5be0 78 70 6f 72 74 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 xport))))))..(defun.org-gcal--sy
5c00 6e 63 2d 72 65 71 75 65 73 74 2d 65 76 65 6e 74 73 0a 20 20 20 20 28 63 61 6c 65 6e 64 61 72 2d nc-request-events.....(calendar-
5c20 69 64 20 70 61 67 65 2d 74 6f 6b 65 6e 20 75 70 2d 74 69 6d 65 20 64 6f 77 6e 2d 74 69 6d 65 29 id.page-token.up-time.down-time)
5c40 0a 20 20 22 52 65 71 75 65 73 74 20 65 76 65 6e 74 73 20 6f 6e 20 43 41 4c 45 4e 44 41 52 2d 49 ..."Request.events.on.CALENDAR-I
5c60 44 2c 20 75 73 69 6e 67 20 50 41 47 45 2d 54 4f 4b 45 4e 20 69 66 20 70 72 65 73 65 6e 74 2e 22 D,.using.PAGE-TOKEN.if.present."
5c80 0a 20 20 28 72 65 71 75 65 73 74 2d 64 65 66 65 72 72 65 64 0a 20 20 20 28 6f 72 67 2d 67 63 61 ...(request-deferred....(org-gca
5ca0 6c 2d 65 76 65 6e 74 73 2d 75 72 6c 20 63 61 6c 65 6e 64 61 72 2d 69 64 29 0a 20 20 20 3a 74 79 l-events-url.calendar-id)....:ty
5cc0 70 65 20 22 47 45 54 22 0a 20 20 20 3a 68 65 61 64 65 72 73 0a 20 20 20 60 28 28 22 41 63 63 65 pe."GET"....:headers....`(("Acce
5ce0 70 74 22 20 2e 20 22 61 70 70 6c 69 63 61 74 69 6f 6e 2f 6a 73 6f 6e 22 29 0a 20 20 20 20 20 28 pt"..."application/json")......(
5d00 22 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 22 20 2e 20 2c 28 66 6f 72 6d 61 74 20 22 42 65 61 72 "Authorization"...,(format."Bear
5d20 65 72 20 25 73 22 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 67 65 74 2d 61 63 63 65 73 73 2d 74 6f 6b er.%s".(org-gcal--get-access-tok
5d40 65 6e 20 63 61 6c 65 6e 64 61 72 2d 69 64 29 29 29 29 0a 20 20 20 3a 70 61 72 61 6d 73 0a 20 20 en.calendar-id))))....:params...
5d60 20 28 61 70 70 65 6e 64 0a 20 20 20 20 60 28 28 22 61 63 63 65 73 73 5f 74 6f 6b 65 6e 22 20 2e .(append.....`(("access_token"..
5d80 20 2c 28 6f 72 67 2d 67 63 61 6c 2d 2d 67 65 74 2d 61 63 63 65 73 73 2d 74 6f 6b 65 6e 20 63 61 .,(org-gcal--get-access-token.ca
5da0 6c 65 6e 64 61 72 2d 69 64 29 29 0a 20 20 20 20 20 20 28 22 73 69 6e 67 6c 65 45 76 65 6e 74 73 lendar-id)).......("singleEvents
5dc0 22 20 2e 20 22 54 72 75 65 22 29 29 0a 20 20 20 20 28 77 68 65 6e 20 6f 72 67 2d 67 63 61 6c 2d "..."True")).....(when.org-gcal-
5de0 6c 6f 63 61 6c 2d 74 69 6d 65 7a 6f 6e 65 20 60 28 28 22 74 69 6d 65 5a 6f 6e 65 22 20 2e 20 2c local-timezone.`(("timeZone"...,
5e00 6f 72 67 2d 67 63 61 6c 2d 6c 6f 63 61 6c 2d 74 69 6d 65 7a 6f 6e 65 29 29 29 0a 20 20 20 20 28 org-gcal-local-timezone))).....(
5e20 73 65 71 2d 6c 65 74 20 5b 65 78 70 69 72 65 73 20 73 79 6e 63 2d 74 6f 6b 65 6e 5d 0a 20 20 20 seq-let.[expires.sync-token]....
5e40 20 20 20 20 20 3b 3b 20 45 6e 73 75 72 65 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 .....;;.Ensure....org-gcal--sync
5e60 2d 74 6f 6b 65 6e 73 2d 67 65 74 e2 80 99 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 69 73 20 61 -tokens-get....return.value.is.a
5e80 63 74 75 61 6c 6c 79 20 61 20 6c 69 73 74 0a 20 20 20 20 20 20 20 20 3b 3b 20 62 65 66 6f 72 65 ctually.a.list.........;;.before
5ea0 20 70 61 73 73 69 6e 67 20 74 6f 20 e2 80 98 73 65 71 2d 6c 65 74 e2 80 99 2e 0a 20 20 20 20 20 .passing.to....seq-let..........
5ec0 20 20 20 28 77 68 65 6e 2d 6c 65 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 28 78 20 28 6f 72 ...(when-let.............((x.(or
5ee0 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 74 6f 6b 65 6e 73 2d 67 65 74 20 63 61 6c 65 6e 64 61 72 g-gcal--sync-tokens-get.calendar
5f00 2d 69 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 6c 69 73 74 70 20 78 29 29 29 0a -id))..............((listp.x))).
5f20 20 20 20 20 20 20 20 20 20 20 78 29 0a 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 ..........x).......(cond........
5f40 3b 3b 20 44 6f 6e 27 74 20 75 73 65 20 74 68 65 20 73 79 6e 63 20 74 6f 6b 65 6e 20 69 66 20 69 ;;.Don't.use.the.sync.token.if.i
5f60 74 27 73 20 65 78 70 69 72 65 64 2e 0a 20 20 20 20 20 20 20 28 28 61 6e 64 20 65 78 70 69 72 65 t's.expired.........((and.expire
5f80 73 20 73 79 6e 63 2d 74 6f 6b 65 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 69 6d 65 2d s.sync-token..............(time-
5fa0 6c 65 73 73 2d 70 20 28 63 75 72 72 65 6e 74 2d 74 69 6d 65 29 20 65 78 70 69 72 65 73 29 29 0a less-p.(current-time).expires)).
5fc0 20 20 20 20 20 20 20 20 60 28 28 22 73 79 6e 63 54 6f 6b 65 6e 22 20 2e 20 2c 73 79 6e 63 2d 74 ........`(("syncToken"...,sync-t
5fe0 6f 6b 65 6e 29 29 29 0a 20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 28 73 65 74 66 20 oken)))........(t.........(setf.
6000 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 74 6f 6b 65 6e 73 2d 67 65 74 20 63 61 6c 65 6e (org-gcal--sync-tokens-get.calen
6020 64 61 72 2d 69 64 20 27 72 65 6d 6f 76 65 29 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 60 28 28 dar-id.'remove).nil).........`((
6040 22 74 69 6d 65 4d 69 6e 22 20 2e 20 2c 28 6f 72 67 2d 67 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 74 "timeMin"...,(org-gcal--format-t
6060 69 6d 65 32 69 73 6f 20 75 70 2d 74 69 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 22 74 69 ime2iso.up-time))...........("ti
6080 6d 65 4d 61 78 22 20 2e 20 2c 28 6f 72 67 2d 67 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 74 69 6d 65 meMax"...,(org-gcal--format-time
60a0 32 69 73 6f 20 64 6f 77 6e 2d 74 69 6d 65 29 29 29 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 70 2iso.down-time)))))).....(when.p
60c0 61 67 65 2d 74 6f 6b 65 6e 20 60 28 28 22 70 61 67 65 54 6f 6b 65 6e 22 20 2e 20 2c 70 61 67 65 age-token.`(("pageToken"...,page
60e0 2d 74 6f 6b 65 6e 29 29 29 29 0a 20 20 20 3a 70 61 72 73 65 72 20 27 6f 72 67 2d 67 63 61 6c 2d -token))))....:parser.'org-gcal-
6100 2d 6a 73 6f 6e 2d 72 65 61 64 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 73 -json-read))..(defun.org-gcal--s
6120 79 6e 63 2d 72 65 71 75 65 73 74 2d 69 6e 73 74 61 6e 63 65 73 0a 20 20 20 20 28 63 61 6c 65 6e ync-request-instances.....(calen
6140 64 61 72 2d 69 64 20 65 76 65 6e 74 2d 69 64 20 75 70 2d 74 69 6d 65 20 64 6f 77 6e 2d 74 69 6d dar-id.event-id.up-time.down-tim
6160 65 20 70 61 67 65 2d 74 6f 6b 65 6e 29 0a 20 20 22 52 65 71 75 65 73 74 20 69 6e 73 74 61 6e 63 e.page-token)..."Request.instanc
6180 65 73 20 6f 66 20 72 65 63 75 72 72 69 6e 67 20 65 76 65 6e 74 20 45 56 45 4e 54 2d 49 44 20 6f es.of.recurring.event.EVENT-ID.o
61a0 6e 20 43 41 4c 45 4e 44 41 52 2d 49 44 2e 22 0a 20 20 28 72 65 71 75 65 73 74 2d 64 65 66 65 72 n.CALENDAR-ID."...(request-defer
61c0 72 65 64 0a 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 69 6e 73 74 61 6e 63 65 73 2d 75 72 6c 20 63 red....(org-gcal-instances-url.c
61e0 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 65 6e 74 2d 69 64 29 0a 20 20 20 3a 74 79 70 65 20 22 47 alendar-id.event-id)....:type."G
6200 45 54 22 0a 20 20 20 3a 68 65 61 64 65 72 73 0a 20 20 20 60 28 28 22 41 63 63 65 70 74 22 20 2e ET"....:headers....`(("Accept"..
6220 20 22 61 70 70 6c 69 63 61 74 69 6f 6e 2f 6a 73 6f 6e 22 29 0a 20 20 20 20 20 28 22 41 75 74 68 ."application/json")......("Auth
6240 6f 72 69 7a 61 74 69 6f 6e 22 20 2e 20 2c 28 66 6f 72 6d 61 74 20 22 42 65 61 72 65 72 20 25 73 orization"...,(format."Bearer.%s
6260 22 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 67 65 74 2d 61 63 63 65 73 73 2d 74 6f 6b 65 6e 20 63 61 ".(org-gcal--get-access-token.ca
6280 6c 65 6e 64 61 72 2d 69 64 29 29 29 29 0a 20 20 20 3a 70 61 72 61 6d 73 0a 20 20 20 28 61 70 70 lendar-id))))....:params....(app
62a0 65 6e 64 0a 20 20 20 20 60 28 28 22 61 63 63 65 73 73 5f 74 6f 6b 65 6e 22 20 2e 20 2c 28 6f 72 end.....`(("access_token"...,(or
62c0 67 2d 67 63 61 6c 2d 2d 67 65 74 2d 61 63 63 65 73 73 2d 74 6f 6b 65 6e 20 63 61 6c 65 6e 64 61 g-gcal--get-access-token.calenda
62e0 72 2d 69 64 29 29 0a 20 20 20 20 20 20 28 22 74 69 6d 65 4d 69 6e 22 20 2e 20 2c 28 6f 72 67 2d r-id)).......("timeMin"...,(org-
6300 67 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 74 69 6d 65 32 69 73 6f 20 75 70 2d 74 69 6d 65 29 29 0a gcal--format-time2iso.up-time)).
6320 20 20 20 20 20 20 28 22 74 69 6d 65 4d 61 78 22 20 2e 20 2c 28 6f 72 67 2d 67 63 61 6c 2d 2d 66 ......("timeMax"...,(org-gcal--f
6340 6f 72 6d 61 74 2d 74 69 6d 65 32 69 73 6f 20 64 6f 77 6e 2d 74 69 6d 65 29 29 29 0a 20 20 20 20 ormat-time2iso.down-time))).....
6360 28 77 68 65 6e 20 70 61 67 65 2d 74 6f 6b 65 6e 20 60 28 28 22 70 61 67 65 54 6f 6b 65 6e 22 20 (when.page-token.`(("pageToken".
6380 2e 20 2c 70 61 67 65 2d 74 6f 6b 65 6e 29 29 29 29 0a 20 20 20 3a 70 61 72 73 65 72 20 27 6f 72 ..,page-token))))....:parser.'or
63a0 67 2d 67 63 61 6c 2d 2d 6a 73 6f 6e 2d 72 65 61 64 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d g-gcal--json-read))..(defun.org-
63c0 67 63 61 6c 2d 2d 73 79 6e 63 2d 68 61 6e 64 6c 65 2d 72 65 73 70 6f 6e 73 65 0a 20 20 20 20 28 gcal--sync-handle-response.....(
63e0 72 65 73 70 6f 6e 73 65 20 63 61 6c 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 20 70 61 67 65 2d 74 response.calendar-id-file.page-t
6400 6f 6b 65 6e 2d 63 6f 6e 73 20 64 6f 77 6e 2d 74 69 6d 65 20 72 65 74 72 79 2d 66 6e 29 0a 20 20 oken-cons.down-time.retry-fn)...
6420 22 48 61 6e 64 6c 65 20 52 45 53 50 4f 4e 53 45 20 69 6e 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d "Handle.RESPONSE.in....org-gcal-
6440 2d 73 79 6e 63 2d 63 61 6c 65 6e 64 61 72 27 20 66 6f 72 20 43 41 4c 45 4e 44 41 52 2d 49 44 2d -sync-calendar'.for.CALENDAR-ID-
6460 46 49 4c 45 2e 0a 0a 55 70 64 61 74 65 20 50 41 47 45 2d 54 4f 4b 45 4e 20 66 72 6f 6d 20 74 68 FILE...Update.PAGE-TOKEN.from.th
6480 65 20 72 65 73 70 6f 6e 73 65 2c 20 61 6e 64 20 72 65 74 75 72 6e 20 61 20 e2 80 98 64 65 66 65 e.response,.and.return.a....defe
64a0 72 72 65 64 e2 80 99 20 6c 69 73 74 20 6f 66 20 65 76 65 6e 74 0a 6f 62 6a 65 63 74 73 20 66 6f rred....list.of.event.objects.fo
64c0 72 20 66 75 72 74 68 65 72 20 70 72 6f 63 65 73 73 69 6e 67 2e 22 0a 20 20 28 6c 65 74 0a 20 20 r.further.processing."...(let...
64e0 20 20 20 20 28 28 64 61 74 61 20 28 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 2d 64 61 74 ....((data.(request-response-dat
6500 61 20 72 65 73 70 6f 6e 73 65 29 29 0a 20 20 20 20 20 20 20 28 73 74 61 74 75 73 2d 63 6f 64 65 a.response))........(status-code
6520 20 28 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 2d 73 74 61 74 75 73 2d 63 6f 64 65 20 72 .(request-response-status-code.r
6540 65 73 70 6f 6e 73 65 29 29 0a 20 20 20 20 20 20 20 28 65 72 72 6f 72 2d 74 68 72 6f 77 6e 20 28 esponse))........(error-thrown.(
6560 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 2d 65 72 72 6f 72 2d 74 68 72 6f 77 6e 20 72 65 request-response-error-thrown.re
6580 73 70 6f 6e 73 65 29 29 0a 20 20 20 20 20 20 20 28 63 61 6c 65 6e 64 61 72 2d 69 64 20 28 63 61 sponse))........(calendar-id.(ca
65a0 72 20 63 61 6c 65 6e 64 61 72 2d 69 64 2d 66 69 6c 65 29 29 29 0a 20 20 20 20 28 63 6f 6e 64 0a r.calendar-id-file))).....(cond.
65c0 20 20 20 20 20 3b 3b 20 49 66 20 74 68 65 72 65 20 69 73 20 6e 6f 20 6e 65 74 77 6f 72 6b 20 63 .....;;.If.there.is.no.network.c
65e0 6f 6e 6e 65 63 74 69 76 69 74 79 2c 20 74 68 65 20 72 65 73 70 6f 6e 73 65 20 77 69 6c 6c 0a 20 onnectivity,.the.response.will..
6600 20 20 20 20 3b 3b 20 6e 6f 74 20 69 6e 63 6c 75 64 65 20 61 20 73 74 61 74 75 73 20 63 6f 64 65 ....;;.not.include.a.status.code
6620 2e 0a 20 20 20 20 20 28 28 65 71 20 73 74 61 74 75 73 2d 63 6f 64 65 20 6e 69 6c 29 0a 20 20 20 .......((eq.status-code.nil)....
6640 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 6e 6f 74 69 66 79 0a 20 20 20 20 20 20 20 22 47 6f 74 ...(org-gcal--notify........"Got
6660 20 45 72 72 6f 72 22 0a 20 20 20 20 20 20 20 22 43 6f 75 6c 64 20 6e 6f 74 20 63 6f 6e 74 61 63 .Error"........"Could.not.contac
6680 74 20 72 65 6d 6f 74 65 20 73 65 72 76 69 63 65 2e 20 50 6c 65 61 73 65 20 63 68 65 63 6b 20 79 t.remote.service..Please.check.y
66a0 6f 75 72 20 6e 65 74 77 6f 72 6b 20 63 6f 6e 6e 65 63 74 69 76 69 74 79 2e 22 29 0a 20 20 20 20 our.network.connectivity.").....
66c0 20 20 28 65 72 72 6f 72 20 22 47 6f 74 20 65 72 72 6f 72 20 25 53 3a 20 25 53 22 20 73 74 61 74 ..(error."Got.error.%S:.%S".stat
66e0 75 73 2d 63 6f 64 65 20 65 72 72 6f 72 2d 74 68 72 6f 77 6e 29 29 0a 20 20 20 20 20 28 28 65 71 us-code.error-thrown))......((eq
6700 20 34 30 31 20 28 6f 72 20 28 70 6c 69 73 74 2d 67 65 74 20 28 70 6c 69 73 74 2d 67 65 74 20 28 .401.(or.(plist-get.(plist-get.(
6720 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 2d 64 61 74 61 20 72 65 73 70 6f 6e 73 65 29 20 request-response-data.response).
6740 3a 65 72 72 6f 72 29 20 3a 63 6f 64 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 :error).:code)..................
6760 20 73 74 61 74 75 73 2d 63 6f 64 65 29 29 0a 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d .status-code)).......(org-gcal--
6780 6e 6f 74 69 66 79 0a 20 20 20 20 20 20 20 22 52 65 63 65 69 76 65 64 20 48 54 54 50 20 34 30 31 notify........"Received.HTTP.401
67a0 22 0a 20 20 20 20 20 20 20 22 4f 41 75 74 68 20 74 6f 6b 65 6e 20 65 78 70 69 72 65 64 2e 20 4e "........"OAuth.token.expired..N
67c0 6f 77 20 74 72 79 69 6e 67 20 74 6f 20 72 65 66 72 65 73 68 2d 74 6f 6b 65 6e 22 29 0a 20 20 20 ow.trying.to.refresh-token")....
67e0 20 20 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d ...(deferred:$........(org-gcal-
6800 2d 72 65 66 72 65 73 68 2d 74 6f 6b 65 6e 20 63 61 6c 65 6e 64 61 72 2d 69 64 29 0a 20 20 20 20 -refresh-token.calendar-id).....
6820 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 ...(deferred:nextc.it...........
6840 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 75 6e 75 73 65 64 29 0a 20 .............(lambda.(_unused)..
6860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c ........................(funcall
6880 20 72 65 74 72 79 2d 66 6e 29 29 29 29 29 0a 20 20 20 20 20 28 28 65 71 20 34 30 33 20 73 74 61 .retry-fn)))))......((eq.403.sta
68a0 74 75 73 2d 63 6f 64 65 29 0a 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 6e 6f 74 69 66 tus-code).......(org-gcal--notif
68c0 79 20 22 52 65 63 65 69 76 65 64 20 48 54 54 50 20 34 30 33 22 0a 20 20 20 20 20 20 20 20 20 20 y."Received.HTTP.403"...........
68e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 45 6e 73 75 72 65 20 79 6f 75 20 65 6e 61 62 6c 65 .............."Ensure.you.enable
6900 64 20 74 68 65 20 43 61 6c 65 6e 64 61 72 20 41 50 49 20 74 68 72 6f 75 67 68 20 74 68 65 20 44 d.the.Calendar.API.through.the.D
6920 65 76 65 6c 6f 70 65 72 73 20 43 6f 6e 73 6f 6c 65 2c 20 74 68 65 6e 20 74 72 79 20 61 67 61 69 evelopers.Console,.then.try.agai
6940 6e 2e 22 29 0a 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 47 6f 74 20 65 72 72 6f 72 20 25 53 3a n.").......(error."Got.error.%S:
6960 20 25 53 22 20 73 74 61 74 75 73 2d 63 6f 64 65 20 65 72 72 6f 72 2d 74 68 72 6f 77 6e 29 29 0a .%S".status-code.error-thrown)).
6980 20 20 20 20 20 28 28 65 71 20 34 31 30 20 73 74 61 74 75 73 2d 63 6f 64 65 29 0a 20 20 20 20 20 .....((eq.410.status-code)......
69a0 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 6e 6f 74 69 66 79 20 22 52 65 63 65 69 76 65 64 20 48 54 54 .(org-gcal--notify."Received.HTT
69c0 50 20 34 31 30 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 P.410"........................."
69e0 43 61 6c 65 6e 64 61 72 20 41 50 49 20 73 79 6e 63 20 74 6f 6b 65 6e 20 65 78 70 69 72 65 64 20 Calendar.API.sync.token.expired.
6a00 2d 20 70 65 72 66 6f 72 6d 69 6e 67 20 66 75 6c 6c 20 73 79 6e 63 2e 22 29 0a 20 20 20 20 20 20 -.performing.full.sync.").......
6a20 28 73 65 74 66 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 74 6f 6b 65 6e 73 2d 67 65 74 (setf.(org-gcal--sync-tokens-get
6a40 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 27 72 65 6d 6f 76 65 29 20 6e 69 6c 29 0a 20 20 20 20 20 .calendar-id.'remove).nil)......
6a60 20 28 66 75 6e 63 61 6c 6c 20 72 65 74 72 79 2d 66 6e 29 29 0a 20 20 20 20 20 3b 3b 20 57 65 20 .(funcall.retry-fn))......;;.We.
6a80 67 6f 74 20 73 6f 6d 65 20 32 78 78 20 72 65 73 70 6f 6e 73 65 2c 20 62 75 74 20 66 6f 72 20 73 got.some.2xx.response,.but.for.s
6aa0 6f 6d 65 20 72 65 61 73 6f 6e 20 6e 6f 0a 20 20 20 20 20 3b 3b 20 6d 65 73 73 61 67 65 20 62 6f ome.reason.no......;;.message.bo
6ac0 64 79 2e 0a 20 20 20 20 20 28 28 61 6e 64 20 28 3e 20 32 39 39 20 73 74 61 74 75 73 2d 63 6f 64 dy.......((and.(>.299.status-cod
6ae0 65 29 20 28 65 71 20 64 61 74 61 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 e).(eq.data.nil)).......(org-gca
6b00 6c 2d 2d 6e 6f 74 69 66 79 0a 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 22 52 65 63 65 69 76 l--notify........(concat."Receiv
6b20 65 64 20 48 54 54 50 22 20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 72 69 6e 67 20 73 74 61 74 75 ed.HTTP".(number-to-string.statu
6b40 73 2d 63 6f 64 65 29 29 0a 20 20 20 20 20 20 20 22 45 72 72 6f 72 20 6f 63 63 75 72 65 64 2c 20 s-code))........"Error.occured,.
6b60 62 75 74 20 6e 6f 20 6d 65 73 73 61 67 65 20 62 6f 64 79 2e 22 29 0a 20 20 20 20 20 20 28 65 72 but.no.message.body.").......(er
6b80 72 6f 72 20 22 47 6f 74 20 65 72 72 6f 72 20 25 53 3a 20 25 53 22 20 73 74 61 74 75 73 2d 63 6f ror."Got.error.%S:.%S".status-co
6ba0 64 65 20 65 72 72 6f 72 2d 74 68 72 6f 77 6e 29 29 0a 20 20 20 20 20 28 28 6e 6f 74 20 28 65 71 de.error-thrown))......((not.(eq
6bc0 20 65 72 72 6f 72 2d 74 68 72 6f 77 6e 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 3b 3b 20 47 65 6e .error-thrown.nil)).......;;.Gen
6be0 65 72 69 63 20 65 72 72 6f 72 2d 68 61 6e 64 6c 65 72 20 6d 65 61 6e 74 20 74 6f 20 70 72 6f 76 eric.error-handler.meant.to.prov
6c00 69 64 65 20 75 73 65 66 75 6c 0a 20 20 20 20 20 20 3b 3b 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 ide.useful.......;;.information.
6c20 61 62 6f 75 74 20 66 61 69 6c 75 72 65 20 63 61 73 65 73 20 6e 6f 74 20 6f 74 68 65 72 77 69 73 about.failure.cases.not.otherwis
6c40 65 0a 20 20 20 20 20 20 3b 3b 20 65 78 70 6c 69 63 69 74 6c 79 20 73 70 65 63 69 66 69 65 64 2e e.......;;.explicitly.specified.
6c60 0a 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 6e 6f 74 69 66 79 0a 20 20 20 20 20 20 20 .......(org-gcal--notify........
6c80 28 63 6f 6e 63 61 74 20 22 53 74 61 74 75 73 20 63 6f 64 65 3a 20 22 20 28 6e 75 6d 62 65 72 2d (concat."Status.code:.".(number-
6ca0 74 6f 2d 73 74 72 69 6e 67 20 73 74 61 74 75 73 2d 63 6f 64 65 29 29 0a 20 20 20 20 20 20 20 28 to-string.status-code))........(
6cc0 70 70 2d 74 6f 2d 73 74 72 69 6e 67 20 65 72 72 6f 72 2d 74 68 72 6f 77 6e 29 29 0a 20 20 20 20 pp-to-string.error-thrown)).....
6ce0 20 20 28 65 72 72 6f 72 20 22 47 6f 74 20 65 72 72 6f 72 20 25 53 3a 20 25 53 22 20 73 74 61 74 ..(error."Got.error.%S:.%S".stat
6d00 75 73 2d 63 6f 64 65 20 65 72 72 6f 72 2d 74 68 72 6f 77 6e 29 29 0a 20 20 20 20 20 3b 3b 20 46 us-code.error-thrown))......;;.F
6d20 65 74 63 68 20 77 61 73 20 73 75 63 63 65 73 73 66 75 6c 2e 20 52 65 74 75 72 6e 20 74 68 65 20 etch.was.successful..Return.the.
6d40 6c 69 73 74 20 6f 66 20 65 76 65 6e 74 73 20 72 65 74 72 69 65 76 65 64 20 66 6f 72 0a 20 20 20 list.of.events.retrieved.for....
6d60 20 20 3b 3b 20 66 75 72 74 68 65 72 20 70 72 6f 63 65 73 73 69 6e 67 2e 0a 20 20 20 20 20 28 74 ..;;.further.processing.......(t
6d80 0a 20 20 20 20 20 20 28 6e 63 6f 6e 63 20 70 61 67 65 2d 74 6f 6b 65 6e 2d 63 6f 6e 73 20 28 6c .......(nconc.page-token-cons.(l
6da0 69 73 74 20 28 70 6c 69 73 74 2d 67 65 74 20 64 61 74 61 20 3a 6e 65 78 74 50 61 67 65 54 6f 6b ist.(plist-get.data.:nextPageTok
6dc0 65 6e 29 29 29 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 6e 65 78 74 2d 73 79 6e 63 2d 74 6f 6b en))).......(let.((next-sync-tok
6de0 65 6e 20 28 70 6c 69 73 74 2d 67 65 74 20 64 61 74 61 20 3a 6e 65 78 74 53 79 6e 63 54 6f 6b 65 en.(plist-get.data.:nextSyncToke
6e00 6e 29 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 6e 65 78 74 2d 73 79 6e 63 2d 74 6f 6b n))).........(when.next-sync-tok
6e20 65 6e 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 66 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 en...........(setf.(org-gcal--sy
6e40 6e 63 2d 74 6f 6b 65 6e 73 2d 67 65 74 20 63 61 6c 65 6e 64 61 72 2d 69 64 29 0a 20 20 20 20 20 nc-tokens-get.calendar-id)......
6e60 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........(list................
6e80 20 20 3b 3b 20 54 68 65 20 66 69 72 73 74 20 65 6c 65 6d 65 6e 74 20 69 73 20 74 68 65 20 65 78 ..;;.The.first.element.is.the.ex
6ea0 70 69 72 61 74 69 6f 6e 20 74 69 6d 65 20 6f 66 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 piration.time.of................
6ec0 20 20 3b 3b 20 74 68 65 20 73 79 6e 63 20 74 6f 6b 65 6e 2e 20 4e 6f 74 65 20 74 68 61 74 2c 20 ..;;.the.sync.token..Note.that,.
6ee0 69 66 20 74 68 65 20 65 78 70 69 72 61 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 if.the.expiration...............
6f00 20 20 20 3b 3b 20 74 69 6d 65 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 73 2c 20 77 65 20 64 6f ...;;.time.already.exists,.we.do
6f20 6e 27 74 20 75 70 64 61 74 65 20 69 74 2e 20 57 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 n't.update.it..We...............
6f40 20 20 20 3b 3b 20 77 61 6e 74 20 74 6f 20 65 78 70 69 72 65 20 74 68 65 20 74 6f 6b 65 6e 20 61 ...;;.want.to.expire.the.token.a
6f60 63 63 6f 72 64 69 6e 67 20 74 6f 20 74 68 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ccording.to.the.................
6f80 20 3b 3b 20 74 69 6d 65 20 6f 66 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 66 75 6c 6c 20 73 79 .;;.time.of.the.previous.full.sy
6fa0 6e 63 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 0a 20 20 20 20 20 20 20 nc...................(or........
6fc0 20 20 20 20 20 20 20 20 20 20 20 28 63 61 72 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d ...........(car.(org-gcal--sync-
6fe0 74 6f 6b 65 6e 73 2d 67 65 74 20 63 61 6c 65 6e 64 61 72 2d 69 64 29 29 0a 20 20 20 20 20 20 20 tokens-get.calendar-id))........
7000 20 20 20 20 20 20 20 20 20 20 20 64 6f 77 6e 2d 74 69 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 ...........down-time)...........
7020 20 20 20 20 20 20 20 6e 65 78 74 2d 73 79 6e 63 2d 74 6f 6b 65 6e 29 29 29 29 0a 20 20 20 20 20 .......next-sync-token))))......
7040 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 66 69 6c 74 65 72 20 28 70 6c 69 73 74 2d 67 65 74 20 64 61 .(org-gcal--filter.(plist-get.da
7060 74 61 20 3a 69 74 65 6d 73 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c ta.:items))))))..(defun.org-gcal
7080 2d 2d 73 79 6e 63 2d 68 61 6e 64 6c 65 2d 65 76 65 6e 74 73 0a 20 20 20 20 28 63 61 6c 65 6e 64 --sync-handle-events.....(calend
70a0 61 72 2d 69 64 20 63 61 6c 65 6e 64 61 72 2d 66 69 6c 65 20 65 76 65 6e 74 73 20 72 65 63 75 72 ar-id.calendar-file.events.recur
70c0 72 69 6e 67 2d 69 6e 73 74 61 6e 63 65 73 3f 20 75 70 2d 74 69 6d 65 20 64 6f 77 6e 2d 74 69 6d ring-instances?.up-time.down-tim
70e0 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 72 65 6e 74 2d 65 76 65 6e 74 73 e..................parent-events
7100 29 0a 20 20 22 48 61 6e 64 6c 65 20 61 20 6c 69 73 74 20 6f 66 20 45 56 45 4e 54 53 20 66 65 74 )..."Handle.a.list.of.EVENTS.fet
7120 63 68 65 64 20 66 72 6f 6d 20 74 68 65 20 43 61 6c 65 6e 64 61 72 20 41 50 49 2e 0a 0a 43 41 4c ched.from.the.Calendar.API...CAL
7140 45 4e 44 41 52 2d 49 44 20 61 6e 64 20 43 41 4c 45 4e 44 41 52 2d 46 49 4c 45 20 61 72 65 20 64 ENDAR-ID.and.CALENDAR-FILE.are.d
7160 65 66 69 6e 65 64 20 69 6e 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 69 6e 6e 65 efined.in....org-gcal--sync-inne
7180 72 27 2e 0a 52 45 43 55 52 52 49 4e 47 2d 49 4e 53 54 41 4e 43 45 53 3f 20 69 73 20 74 20 69 66 r'..RECURRING-INSTANCES?.is.t.if
71a0 20 77 65 e2 80 99 72 65 20 63 75 72 72 65 6e 74 6c 79 20 66 65 74 63 68 69 6e 67 20 69 6e 73 74 .we...re.currently.fetching.inst
71c0 61 6e 63 65 73 20 6f 66 20 72 65 63 75 72 72 69 6e 67 0a 65 76 65 6e 74 73 20 61 6e 64 20 6e 69 ances.of.recurring.events.and.ni
71e0 6c 20 6f 74 68 65 72 77 69 73 65 2e 0a 0a 41 6e 79 20 70 61 72 65 6e 74 20 72 65 63 75 72 72 69 l.otherwise...Any.parent.recurri
7200 6e 67 20 65 76 65 6e 74 73 20 61 72 65 20 61 70 70 65 6e 64 65 64 20 69 6e 2d 70 6c 61 63 65 20 ng.events.are.appended.in-place.
7220 74 6f 20 74 68 65 20 6c 69 73 74 20 50 41 52 45 4e 54 2d 45 56 45 4e 54 53 2e 22 0a 20 20 28 77 to.the.list.PARENT-EVENTS."...(w
7240 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 66 69 6e 64 2d 66 69 6c 65 2d 6e 6f ith-current-buffer.(find-file-no
7260 73 65 6c 65 63 74 20 63 61 6c 65 6e 64 61 72 2d 66 69 6c 65 29 0a 20 20 20 20 28 63 6c 2d 6c 6f select.calendar-file).....(cl-lo
7280 6f 70 0a 20 20 20 20 20 66 6f 72 20 65 76 65 6e 74 20 61 63 72 6f 73 73 20 65 76 65 6e 74 73 0a op......for.event.across.events.
72a0 20 20 20 20 20 69 66 0a 20 20 20 20 20 28 6c 65 74 2a 20 28 28 65 6e 74 72 79 2d 69 64 20 28 6f .....if......(let*.((entry-id.(o
72c0 72 67 2d 67 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 65 6e 74 72 79 2d 69 64 0a 20 20 20 20 20 20 20 rg-gcal--format-entry-id........
72e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 28 70 6c 69 ................calendar-id.(pli
7300 73 74 2d 67 65 74 20 65 76 65 6e 74 20 3a 69 64 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 st-get.event.:id))).............
7320 28 6d 61 72 6b 65 72 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 69 64 2d 66 69 6e 64 20 65 6e 74 72 79 (marker.(org-gcal--id-find.entry
7340 2d 69 64 20 27 6d 61 72 6b 65 72 70 29 29 29 0a 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 70 6c -id.'markerp)))........(when.(pl
7360 69 73 74 2d 67 65 74 20 65 76 65 6e 74 20 3a 72 65 63 75 72 72 65 6e 63 65 29 0a 20 20 20 20 20 ist-get.event.:recurrence)......
7380 20 20 20 20 28 6e 63 6f 6e 63 20 70 61 72 65 6e 74 2d 65 76 65 6e 74 73 20 28 6c 69 73 74 0a 20 ....(nconc.parent-events.(list..
73a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f ..............................(o
73c0 72 67 2d 67 63 61 6c 2d 2d 65 76 65 6e 74 2d 69 64 2d 66 72 6f 6d 2d 65 6e 74 72 79 2d 69 64 20 rg-gcal--event-id-from-entry-id.
73e0 65 6e 74 72 79 2d 69 64 29 29 29 29 0a 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 entry-id))))........(cond.......
7400 20 20 3b 3b 20 49 67 6e 6f 72 65 20 65 76 65 6e 74 20 65 6e 74 69 72 65 6c 79 20 69 66 20 69 74 ..;;.Ignore.event.entirely.if.it
7420 20 69 73 20 61 6e 20 69 6e 73 74 61 6e 63 65 20 6f 66 20 61 20 72 65 63 75 72 72 69 6e 67 20 65 .is.an.instance.of.a.recurring.e
7440 76 65 6e 74 0a 20 20 20 20 20 20 20 20 3b 3b 20 75 6e 6c 65 73 73 20 77 65 e2 80 99 72 65 20 63 vent.........;;.unless.we...re.c
7460 75 72 72 65 6e 74 6c 79 20 66 65 74 63 68 69 6e 67 0a 20 20 20 20 20 20 20 20 3b 3b 20 69 6e 73 urrently.fetching.........;;.ins
7480 74 61 6e 63 65 73 20 6f 66 20 72 65 63 75 72 72 69 6e 67 20 65 76 65 6e 74 73 20 28 69 2e 65 2e tances.of.recurring.events.(i.e.
74a0 2c 20 52 45 43 55 52 52 49 4e 47 2d 49 4e 53 54 41 4e 43 45 53 3f 20 69 73 0a 20 20 20 20 20 20 ,.RECURRING-INSTANCES?.is.......
74c0 20 20 3b 3b 20 6e 6f 6e 2d 6e 69 6c 29 2e 0a 20 20 20 20 20 20 20 20 28 28 61 6e 64 20 28 65 71 ..;;.non-nil)..........((and.(eq
74e0 20 6f 72 67 2d 67 63 61 6c 2d 72 65 63 75 72 72 69 6e 67 2d 65 76 65 6e 74 73 2d 6d 6f 64 65 20 .org-gcal-recurring-events-mode.
7500 27 6e 65 73 74 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 72 65 63 75 'nested)...............(not.recu
7520 72 72 69 6e 67 2d 69 6e 73 74 61 6e 63 65 73 3f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rring-instances?)...............
7540 28 70 6c 69 73 74 2d 67 65 74 20 65 76 65 6e 74 20 3a 72 65 63 75 72 72 69 6e 67 45 76 65 6e 74 (plist-get.event.:recurringEvent
7560 49 64 29 29 0a 20 20 20 20 20 20 20 20 20 28 6e 63 6f 6e 63 20 70 61 72 65 6e 74 2d 65 76 65 6e Id))..........(nconc.parent-even
7580 74 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 0a 20 20 20 20 20 20 20 ts.................(list........
75a0 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 65 76 65 6e 74 20 3a 72 65 63 75 ..........(plist-get.event.:recu
75c0 72 72 69 6e 67 45 76 65 6e 74 49 64 29 29 29 0a 20 20 20 20 20 20 20 20 20 6e 69 6c 29 0a 20 20 rringEventId)))..........nil)...
75e0 20 20 20 20 20 20 3b 3b 20 49 66 20 65 76 65 6e 74 20 69 73 20 70 72 65 73 65 6e 74 2c 20 63 6f ......;;.If.event.is.present,.co
7600 6c 6c 65 63 74 20 69 74 20 66 6f 72 20 6c 61 74 65 72 20 70 72 6f 63 65 73 73 69 6e 67 2e 0a 20 llect.it.for.later.processing...
7620 20 20 20 20 20 20 20 28 6d 61 72 6b 65 72 0a 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 .......(marker..........(org-gca
7640 6c 2d 2d 65 76 65 6e 74 2d 65 6e 74 72 79 2d 63 72 65 61 74 65 0a 20 20 20 20 20 20 20 20 20 20 l--event-entry-create...........
7660 3a 65 6e 74 72 79 2d 69 64 20 65 6e 74 72 79 2d 69 64 0a 20 20 20 20 20 20 20 20 20 20 3a 6d 61 :entry-id.entry-id...........:ma
7680 72 6b 65 72 20 6d 61 72 6b 65 72 0a 20 20 20 20 20 20 20 20 20 20 3a 65 76 65 6e 74 20 65 76 65 rker.marker...........:event.eve
76a0 6e 74 29 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 49 66 20 65 76 65 6e 74 20 64 6f 65 73 6e e2 80 nt)).........;;.If.event.doesn..
76c0 99 74 20 61 6c 72 65 61 64 79 20 65 78 69 73 74 20 61 6e 64 20 69 73 20 6f 75 74 73 69 64 65 20 .t.already.exist.and.is.outside.
76e0 6f 66 20 74 68 65 0a 20 20 20 20 20 20 20 20 3b 3b 20 72 61 6e 67 65 20 5b e2 80 98 6f 72 67 2d of.the.........;;.range.[...org-
7700 67 63 61 6c 2d 75 70 2d 64 61 79 73 e2 80 99 2c 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 64 6f 77 gcal-up-days...,....org-gcal-dow
7720 6e 2d 64 61 79 73 e2 80 99 5d 2c 20 69 67 6e 6f 72 65 0a 20 20 20 20 20 20 20 20 3b 3b 20 69 74 n-days...],.ignore.........;;.it
7740 2e 20 54 68 69 73 20 69 73 20 6e 65 63 65 73 73 61 72 79 20 62 65 63 61 75 73 65 20 77 68 65 6e ..This.is.necessary.because.when
7760 20 63 61 6c 6c 65 64 20 77 69 74 68 0a 20 20 20 20 20 20 20 20 3b 3b 20 22 73 79 6e 63 54 6f 6b .called.with.........;;."syncTok
7780 65 6e 22 2c 20 74 68 65 20 43 61 6c 65 6e 64 61 72 20 41 50 49 20 77 69 6c 6c 20 72 65 74 75 72 en",.the.Calendar.API.will.retur
77a0 6e 20 61 6c 6c 20 65 76 65 6e 74 73 0a 20 20 20 20 20 20 20 20 3b 3b 20 63 68 61 6e 67 65 64 20 n.all.events.........;;.changed.
77c0 6f 6e 20 74 68 65 20 63 61 6c 65 6e 64 61 72 2c 20 77 69 74 68 6f 75 74 20 72 65 73 70 65 63 74 on.the.calendar,.without.respect
77e0 69 6e 67 0a 20 20 20 20 20 20 20 20 3b 3b 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 75 70 2d 64 61 ing.........;;....org-gcal-up-da
7800 79 73 e2 80 99 20 6f 72 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 64 6f 77 6e 2d 64 61 79 73 e2 80 ys....or....org-gcal-down-days..
7820 99 2c 20 77 68 69 63 68 20 6d 65 61 6e 73 0a 20 20 20 20 20 20 20 20 3b 3b 20 72 65 70 65 61 74 .,.which.means.........;;.repeat
7840 65 64 20 65 76 65 6e 74 73 20 66 61 72 20 69 6e 20 74 68 65 20 66 75 74 75 72 65 20 77 69 6c 6c ed.events.far.in.the.future.will
7860 20 62 65 20 64 6f 77 6e 6c 6f 61 64 65 64 2e 0a 20 20 20 20 20 20 20 20 28 28 77 68 65 6e 2d 6c .be.downloaded..........((when-l
7880 65 74 2a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 75 70 2d 74 69 6d 65 29 20 28 64 6f 77 et*..............((up-time).(dow
78a0 6e 2d 74 69 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 61 72 74 20 28 70 6c n-time)...............(start.(pl
78c0 69 73 74 2d 67 65 74 20 65 76 65 6e 74 20 3a 73 74 61 72 74 29 29 0a 20 20 20 20 20 20 20 20 20 ist-get.event.:start))..........
78e0 20 20 20 20 20 28 65 6e 64 20 28 70 6c 69 73 74 2d 67 65 74 20 65 76 65 6e 74 20 3a 65 6e 64 29 .....(end.(plist-get.event.:end)
7900 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 6f 72 20 28 74 69 6d 65 2d 6c 65 73 73 2d )...............((or.(time-less-
7920 70 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 70 61 72 73 65 2d 63 61 6c 65 6e 64 61 72 2d 74 69 6d 65 p.(org-gcal--parse-calendar-time
7940 20 73 74 61 72 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .start).........................
7960 20 20 20 20 20 20 20 20 75 70 2d 74 69 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ........up-time)................
7980 20 20 20 20 28 74 69 6d 65 2d 6c 65 73 73 2d 70 20 64 6f 77 6e 2d 74 69 6d 65 0a 20 20 20 20 20 ....(time-less-p.down-time......
79a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d ...........................(org-
79c0 67 63 61 6c 2d 2d 70 61 72 73 65 2d 63 61 6c 65 6e 64 61 72 2d 74 69 6d 65 20 65 6e 64 29 29 29 gcal--parse-calendar-time.end)))
79e0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 74 29 0a 20 20 20 20 20 20 20 20 20 6e 69 6c 29 0a 20 ))............t)..........nil)..
7a00 20 20 20 20 20 20 20 3b 3b 20 57 68 65 6e 20 66 65 74 63 68 69 6e 67 20 69 6e 73 74 61 6e 63 65 .......;;.When.fetching.instance
7a20 73 20 6f 66 20 72 65 63 75 72 72 69 6e 67 20 65 76 65 6e 74 73 20 74 68 61 74 20 61 72 65 20 6e s.of.recurring.events.that.are.n
7a40 6f 74 20 79 65 74 0a 20 20 20 20 20 20 20 20 3b 3b 20 70 72 65 73 65 6e 74 2c 20 69 6e 73 65 72 ot.yet.........;;.present,.inser
7a60 74 20 74 68 65 6d 20 62 65 6c 6f 77 20 74 68 65 69 72 20 70 61 72 65 6e 74 20 65 76 65 6e 74 73 t.them.below.their.parent.events
7a80 2c 20 69 66 20 74 68 65 20 70 61 72 65 6e 74 20 65 76 65 6e 74 0a 20 20 20 20 20 20 20 20 3b 3b ,.if.the.parent.event.........;;
7aa0 20 65 78 69 73 74 73 2e 0a 20 20 20 20 20 20 20 20 28 72 65 63 75 72 72 69 6e 67 2d 69 6e 73 74 .exists..........(recurring-inst
7ac0 61 6e 63 65 73 3f 0a 20 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 70 61 72 65 6e 74 2d 69 ances?..........(let*.((parent-i
7ae0 64 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 65 6e 74 72 79 2d 69 64 0a 20 20 20 d.(org-gcal--format-entry-id....
7b00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 6c 65 6e 64 61 .........................calenda
7b20 72 2d 69 64 20 28 70 6c 69 73 74 2d 67 65 74 20 65 76 65 6e 74 20 3a 72 65 63 75 72 72 69 6e 67 r-id.(plist-get.event.:recurring
7b40 45 76 65 6e 74 49 64 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 72 65 EventId))).................(pare
7b60 6e 74 2d 6d 61 72 6b 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e nt-marker..................(when
7b80 20 70 61 72 65 6e 74 2d 69 64 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 69 64 2d 66 69 6e 64 20 70 61 .parent-id.(org-gcal--id-find.pa
7ba0 72 65 6e 74 2d 69 64 20 27 6d 61 72 6b 65 72 70 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 rent-id.'markerp))))............
7bc0 28 77 68 65 6e 20 70 61 72 65 6e 74 2d 6d 61 72 6b 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 (when.parent-marker.............
7be0 20 28 61 74 6f 6d 69 63 2d 63 68 61 6e 67 65 2d 67 72 6f 75 70 0a 20 20 20 20 20 20 20 20 20 20 .(atomic-change-group...........
7c00 20 20 20 20 20 28 6f 72 67 2d 77 69 74 68 2d 70 6f 69 6e 74 2d 61 74 20 70 61 72 65 6e 74 2d 6d .....(org-with-point-at.parent-m
7c20 61 72 6b 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 69 6e 73 65 arker..................(org-inse
7c40 72 74 2d 68 65 61 64 69 6e 67 2d 72 65 73 70 65 63 74 2d 63 6f 6e 74 65 6e 74 20 27 69 6e 76 69 rt-heading-respect-content.'invi
7c60 73 69 62 6c 65 2d 6f 6b 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d sible-ok)..................(org-
7c80 64 65 6d 6f 74 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 demote)..................(org-gc
7ca0 61 6c 2d 2d 75 70 64 61 74 65 2d 65 6e 74 72 79 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 65 al--update-entry.calendar-id.eve
7cc0 6e 74 20 27 6e 65 77 6c 79 2d 66 65 74 63 68 65 64 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 nt.'newly-fetched))))...........
7ce0 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 44 6f 6e 27 74 20 69 6e 73 65 72 74 20 69 .nil)).........;;.Don't.insert.i
7d00 6e 73 74 61 6e 63 65 73 20 6f 66 20 63 61 6e 63 65 6c 6c 65 64 20 65 76 65 6e 74 73 20 74 68 61 nstances.of.cancelled.events.tha
7d20 74 20 68 61 76 65 6e 27 74 20 61 6c 72 65 61 64 79 20 62 65 65 6e 0a 20 20 20 20 20 20 20 20 3b t.haven't.already.been.........;
7d40 3b 20 66 65 74 63 68 65 64 2e 0a 20 20 20 20 20 20 20 20 28 28 73 74 72 69 6e 67 3d 20 22 63 61 ;.fetched..........((string=."ca
7d60 6e 63 65 6c 6c 65 64 22 20 28 70 6c 69 73 74 2d 67 65 74 20 65 76 65 6e 74 20 3a 73 74 61 74 75 ncelled".(plist-get.event.:statu
7d80 73 29 29 0a 20 20 20 20 20 20 20 20 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 28 74 0a 20 20 20 s))..........nil).........(t....
7da0 20 20 20 20 20 20 3b 3b 20 4f 74 68 65 72 77 69 73 65 2c 20 69 6e 73 65 72 74 20 61 20 6e 65 77 ......;;.Otherwise,.insert.a.new
7dc0 20 65 6e 74 72 79 20 69 6e 74 6f 20 74 68 65 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 64 65 66 61 .entry.into.the..........;;.defa
7de0 75 6c 74 20 66 65 74 63 68 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 20 20 20 28 61 74 6f 6d 69 63 ult.fetch.file...........(atomic
7e00 2d 63 68 61 6e 67 65 2d 67 72 6f 75 70 0a 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 77 69 -change-group............(org-wi
7e20 74 68 2d 70 6f 69 6e 74 2d 61 74 20 28 70 6f 69 6e 74 2d 6d 61 78 29 0a 20 20 20 20 20 20 20 20 th-point-at.(point-max).........
7e40 20 20 20 20 20 28 69 6e 73 65 72 74 20 22 5c 6e 2a 20 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 .....(insert."\n*.")............
7e60 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 75 70 64 61 74 65 2d 65 6e 74 72 79 20 63 61 6c 65 6e 64 ..(org-gcal--update-entry.calend
7e80 61 72 2d 69 64 20 65 76 65 6e 74 20 27 6e 65 77 6c 79 2d 66 65 74 63 68 65 64 29 0a 20 20 20 20 ar-id.event.'newly-fetched).....
7ea0 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 65 6e 74 72 79 2d 70 75 74 20 28 70 6f 69 6e 74 29 20 .........(org-entry-put.(point).
7ec0 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e 61 67 65 64 2d 70 72 6f 70 65 72 74 79 0a 20 20 20 20 20 20 org-gcal-managed-property.......
7ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 67 2d 67 63 61 6c 2d 6d ......................org-gcal-m
7f00 61 6e 61 67 65 64 2d 6e 65 77 6c 79 2d 66 65 74 63 68 65 64 2d 6d 6f 64 65 29 29 29 0a 20 20 20 anaged-newly-fetched-mode)))....
7f20 20 20 20 20 20 20 6e 69 6c 29 29 29 0a 20 20 20 20 20 63 6f 6c 6c 65 63 74 20 69 74 29 29 29 0a ......nil)))......collect.it))).
7f40 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 75 70 64 61 74 65 2d 65 6e .(defun.org-gcal--sync-update-en
7f60 74 72 69 65 73 20 28 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 6e 74 72 69 65 73 20 73 6b 69 70 2d tries.(calendar-id.entries.skip-
7f80 65 78 70 6f 72 74 29 0a 20 20 22 55 70 64 61 74 65 20 68 65 61 64 6c 69 6e 65 73 20 67 69 76 65 export)..."Update.headlines.give
7fa0 6e 20 62 79 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 2d 65 76 65 6e 74 2d 65 6e 74 72 79 e2 80 99 n.by....org-gcal--event-entry...
7fc0 20 45 4e 54 52 49 45 53 2e 0a 0a 46 69 6e 64 20 61 6c 72 65 61 64 79 20 72 65 74 72 69 65 76 65 .ENTRIES...Find.already.retrieve
7fe0 64 20 65 6e 74 72 69 65 73 20 61 6e 64 20 75 70 64 61 74 65 20 74 68 65 6d 2e 20 54 68 69 73 20 d.entries.and.update.them..This.
8000 77 69 6c 6c 20 75 70 64 61 74 65 20 65 76 65 6e 74 73 20 74 68 61 74 0a 68 61 76 65 20 62 65 65 will.update.events.that.have.bee
8020 6e 20 6d 6f 76 65 64 20 66 72 6f 6d 20 74 68 65 20 64 65 66 61 75 6c 74 20 66 65 74 63 68 20 66 n.moved.from.the.default.fetch.f
8040 69 6c 65 2e 20 20 43 41 4c 45 4e 44 41 52 2d 49 44 20 69 73 20 64 65 66 69 6e 65 64 20 69 6e 0a ile...CALENDAR-ID.is.defined.in.
8060 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 69 6e 6e 65 72 27 2e 22 0a 20 20 28 64 65 ...org-gcal--sync-inner'."...(de
8080 66 65 72 72 65 64 3a 24 0a 20 20 20 28 64 65 66 65 72 72 65 64 3a 6c 6f 6f 70 20 65 6e 74 72 69 ferred:$....(deferred:loop.entri
80a0 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 65 6e es...................(lambda.(en
80c0 74 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 try).....................(deferr
80e0 65 64 3a 24 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 ed:$......................(let.(
8100 28 6d 61 72 6b 65 72 20 28 6f 72 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 65 76 65 6e 74 2d 65 6e 74 (marker.(or.(org-gcal--event-ent
8120 72 79 2d 6d 61 72 6b 65 72 20 65 6e 74 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ry-marker.entry)................
8140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 ........................(org-gca
8160 6c 2d 2d 69 64 2d 66 69 6e 64 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 65 76 65 6e 74 2d 65 6e 74 72 l--id-find.(org-gcal--event-entr
8180 79 2d 65 6e 74 72 79 2d 69 64 20 65 6e 74 72 79 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 y-entry-id.entry))))............
81a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 76 65 6e 74 20 28 6f 72 67 2d 67 63 61 6c ................(event.(org-gcal
81c0 2d 2d 65 76 65 6e 74 2d 65 6e 74 72 79 2d 65 76 65 6e 74 20 65 6e 74 72 79 29 29 29 0a 20 20 20 --event-entry-event.entry)))....
81e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 77 69 74 68 2d 70 6f ....................(org-with-po
8200 69 6e 74 2d 61 74 20 6d 61 72 6b 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 int-at.marker...................
8220 20 20 20 20 20 20 20 3b 3b 20 49 66 20 73 6b 69 70 70 69 6e 67 20 65 78 70 6f 72 74 73 2c 20 6a .......;;.If.skipping.exports,.j
8240 75 73 74 20 6f 76 65 72 77 72 69 74 65 20 63 75 72 72 65 6e 74 20 65 6e 74 72 79 27 73 0a 20 20 ust.overwrite.current.entry's...
8260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 63 61 6c 65 6e 64 .......................;;.calend
8280 61 72 20 64 61 74 61 20 77 69 74 68 20 77 68 61 74 27 73 20 62 65 65 6e 20 72 65 74 72 69 65 76 ar.data.with.what's.been.retriev
82a0 65 64 20 66 72 6f 6d 20 74 68 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ed.from.the.....................
82c0 20 20 20 20 20 3b 3b 20 73 65 72 76 65 72 2e 20 4f 74 68 65 72 77 69 73 65 2c 20 73 79 6e 63 20 .....;;.server..Otherwise,.sync.
82e0 74 68 65 20 65 6e 74 72 79 20 61 74 20 74 68 65 20 63 75 72 72 65 6e 74 0a 20 20 20 20 20 20 20 the.entry.at.the.current........
8300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 70 6f 69 6e 74 2e 0a 20 20 20 20 ..................;;.point......
8320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 2d 6d 61 72 6b 65 72 .....................(set-marker
8340 20 6d 61 72 6b 65 72 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .marker.nil)....................
8360 20 20 20 20 20 20 28 69 66 20 28 61 6e 64 20 73 6b 69 70 2d 65 78 70 6f 72 74 20 65 76 65 6e 74 ......(if.(and.skip-export.event
8380 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 )..............................(
83a0 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 progn...........................
83c0 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 75 70 64 61 74 65 2d 65 6e 74 72 79 20 63 61 6c .....(org-gcal--update-entry.cal
83e0 65 6e 64 61 72 2d 69 64 20 65 76 65 6e 74 20 27 75 70 64 61 74 65 2d 65 78 69 73 74 69 6e 67 29 endar-id.event.'update-existing)
8400 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
8420 28 64 65 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 (deferred:succeed.nil)).........
8440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 70 6f 73 ...................(org-gcal-pos
8460 74 2d 61 74 2d 70 6f 69 6e 74 20 6e 69 6c 20 73 6b 69 70 2d 65 78 70 6f 72 74 0a 20 20 20 20 20 t-at-point.nil.skip-export......
8480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
84a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 67 65 ..............(org-gcal--sync-ge
84c0 74 2d 75 70 64 61 74 65 2d 65 78 69 73 74 69 6e 67 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 t-update-existing)))))..........
84e0 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4c 6f 67 20 62 75 74 20 6f 74 68 65 72 77 69 73 65 ............;;.Log.but.otherwise
8500 20 69 67 6e 6f 72 65 20 65 72 72 6f 72 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .ignore.errors..................
8520 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 65 72 72 6f 72 20 69 74 0a 20 20 20 20 20 20 20 20 .....(deferred:error.it.........
8540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 .............................(la
8560 6d 62 64 61 20 28 65 72 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 mbda.(err)......................
8580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 6f 72 67 2d ..................(message."org-
85a0 67 63 61 6c 2d 73 79 6e 63 3a 20 65 72 72 6f 72 3a 20 25 73 22 20 65 72 72 29 29 29 29 29 29 0a gcal-sync:.error:.%s".err)))))).
85c0 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 20 6e 69 6c 29 29 29 0a 0a 28 64 65 ...(deferred:succeed.nil)))..(de
85e0 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 6c 6f 63 6b 20 28 29 0a 20 20 22 41 63 fun.org-gcal--sync-lock.()..."Ac
8600 74 69 76 61 74 65 20 73 79 6e 63 20 6c 6f 63 6b 2e 22 0a 20 20 28 73 65 74 71 20 6f 72 67 2d 67 tivate.sync.lock."...(setq.org-g
8620 63 61 6c 2d 2d 73 79 6e 63 2d 6c 6f 63 6b 20 74 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 cal--sync-lock.t))..(defun.org-g
8640 63 61 6c 2d 2d 73 79 6e 63 2d 75 6e 6c 6f 63 6b 20 28 29 0a 20 20 22 44 65 61 63 74 69 76 61 74 cal--sync-unlock.()..."Deactivat
8660 65 20 73 79 6e 63 20 6c 6f 63 6b 20 69 6e 20 63 61 73 65 20 6f 66 20 66 61 69 6c 65 64 20 73 79 e.sync.lock.in.case.of.failed.sy
8680 6e 63 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 73 65 74 71 20 6f 72 67 nc."...(interactive)...(setq.org
86a0 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 6c 6f 63 6b 20 6e 69 6c 29 29 0a 0a 28 64 65 66 75 6e 20 6f -gcal--sync-lock.nil))..(defun.o
86c0 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 67 65 74 2d 75 70 64 61 74 65 2d 65 78 69 73 74 69 6e rg-gcal--sync-get-update-existin
86e0 67 20 28 29 0a 20 20 22 4f 62 74 61 69 6e 20 76 61 6c 75 65 20 6f 66 20 e2 80 98 6f 72 67 2d 67 g.()..."Obtain.value.of....org-g
8700 63 61 6c 2d 6d 61 6e 61 67 65 64 2d 70 6f 73 74 2d 61 74 2d 70 6f 69 6e 74 2d 75 70 64 61 74 65 cal-managed-post-at-point-update
8720 2d 65 78 69 73 74 69 6e 67 e2 80 99 20 66 6f 72 20 73 79 6e 63 73 2e 22 0a 20 20 28 69 66 20 28 -existing....for.syncs."...(if.(
8740 65 71 75 61 6c 20 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e 61 67 65 64 2d 70 6f 73 74 2d 61 74 2d 70 equal.org-gcal-managed-post-at-p
8760 6f 69 6e 74 2d 75 70 64 61 74 65 2d 65 78 69 73 74 69 6e 67 20 27 70 72 6f 6d 70 74 29 0a 20 20 oint-update-existing.'prompt)...
8780 20 20 20 20 27 6e 65 76 65 72 2d 70 75 73 68 0a 20 20 20 20 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e ....'never-push.....org-gcal-man
87a0 61 67 65 64 2d 70 6f 73 74 2d 61 74 2d 70 6f 69 6e 74 2d 75 70 64 61 74 65 2d 65 78 69 73 74 69 aged-post-at-point-update-existi
87c0 6e 67 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 6f 72 67 2d ng))..;;;###autoload.(defun.org-
87e0 67 63 61 6c 2d 66 65 74 63 68 20 28 29 0a 20 20 22 46 65 74 63 68 20 65 76 65 6e 74 20 64 61 74 gcal-fetch.()..."Fetch.event.dat
8800 61 20 66 72 6f 6d 20 67 6f 6f 67 6c 65 20 63 61 6c 65 6e 64 61 72 2e 22 0a 20 20 28 69 6e 74 65 a.from.google.calendar."...(inte
8820 72 61 63 74 69 76 65 29 0a 20 20 28 6f 72 67 2d 67 63 61 6c 2d 73 79 6e 63 20 74 29 29 0a 0a 3b ractive)...(org-gcal-sync.t))..;
8840 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 73 79 ;;###autoload.(defun.org-gcal-sy
8860 6e 63 2d 62 75 66 66 65 72 20 28 26 6f 70 74 69 6f 6e 61 6c 20 73 6b 69 70 2d 65 78 70 6f 72 74 nc-buffer.(&optional.skip-export
8880 20 73 69 6c 65 6e 74 20 66 69 6c 74 65 72 2d 64 61 74 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 .silent.filter-date.............
88a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 69 6c 74 65 ...........................filte
88c0 72 2d 6d 61 6e 61 67 65 64 29 0a 20 20 22 53 79 6e 63 20 65 6e 74 72 69 65 73 20 77 69 74 68 20 r-managed)..."Sync.entries.with.
88e0 43 61 6c 65 6e 64 61 72 20 65 76 65 6e 74 73 20 69 6e 20 63 75 72 72 65 6e 74 6c 79 2d 76 69 73 Calendar.events.in.currently-vis
8900 69 62 6c 65 20 70 6f 72 74 69 6f 6e 20 6f 66 20 62 75 66 66 65 72 2e 0a 0a 55 70 64 61 74 65 73 ible.portion.of.buffer...Updates
8920 20 65 76 65 6e 74 73 20 6f 6e 20 74 68 65 20 73 65 72 76 65 72 20 75 6e 6c 65 73 73 20 53 4b 49 .events.on.the.server.unless.SKI
8940 50 2d 45 58 50 4f 52 54 20 69 73 20 73 65 74 2e 20 49 6e 20 74 68 69 73 20 63 61 73 65 2c 20 65 P-EXPORT.is.set..In.this.case,.e
8960 76 65 6e 74 73 0a 6d 6f 64 69 66 69 65 64 20 6f 6e 20 74 68 65 20 73 65 72 76 65 72 20 77 69 6c vents.modified.on.the.server.wil
8980 6c 20 6f 76 65 72 77 72 69 74 65 20 65 6e 74 72 69 65 73 20 69 6e 20 74 68 65 20 62 75 66 66 65 l.overwrite.entries.in.the.buffe
89a0 72 2e 0a 53 65 74 20 53 49 4c 45 4e 54 20 74 6f 20 6e 6f 6e 2d 6e 69 6c 20 74 6f 20 69 6e 68 69 r..Set.SILENT.to.non-nil.to.inhi
89c0 62 69 74 20 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 2e 0a 53 65 74 20 46 49 4c 54 45 52 2d 44 41 bit.notifications..Set.FILTER-DA
89e0 54 45 20 74 6f 20 6f 6e 6c 79 20 75 70 64 61 74 65 20 65 76 65 6e 74 73 20 73 63 68 65 64 75 6c TE.to.only.update.events.schedul
8a00 65 64 20 66 6f 72 20 6c 61 74 65 72 20 74 68 61 6e 0a e2 80 98 6f 72 67 2d 67 63 61 6c 2d 75 70 ed.for.later.than....org-gcal-up
8a20 2d 64 61 79 73 27 20 61 6e 64 20 65 61 72 6c 69 65 72 20 74 68 61 6e 20 e2 80 98 6f 72 67 2d 67 -days'.and.earlier.than....org-g
8a40 63 61 6c 2d 64 6f 77 6e 2d 64 61 79 73 27 2e 0a 53 65 74 20 46 49 4c 54 45 52 2d 4d 41 41 4e 47 cal-down-days'..Set.FILTER-MAANG
8a60 45 44 20 74 6f 20 6f 6e 6c 79 20 75 70 64 61 74 65 20 65 76 65 6e 74 73 20 77 69 74 68 20 e2 80 ED.to.only.update.events.with...
8a80 98 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e 61 67 65 64 2d 70 72 6f 70 65 72 74 79 e2 80 99 20 73 65 .org-gcal-managed-property....se
8aa0 74 0a 74 6f 20 e2 80 9c 6f 72 67 e2 80 9d 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 t.to....org...."...(interactive)
8ac0 0a 20 20 28 77 68 65 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 6c 6f 63 6b 0a 20 20 20 ...(when.org-gcal--sync-lock....
8ae0 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22 6f 72 67 2d 67 63 61 6c 20 73 79 6e 63 20 6c 6f 63 6b .(user-error."org-gcal.sync.lock
8b00 65 64 2e 20 49 66 20 61 20 70 72 65 76 69 6f 75 73 20 73 79 6e 63 20 68 61 73 20 66 61 69 6c 65 ed..If.a.previous.sync.has.faile
8b20 64 2c 20 63 61 6c 6c 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 75 6e 6c 6f 63 6b d,.call....org-gcal--sync-unlock
8b40 e2 80 99 20 74 6f 20 72 65 73 65 74 20 74 68 65 20 6c 6f 63 6b 20 61 6e 64 20 74 72 79 20 61 67 ....to.reset.the.lock.and.try.ag
8b60 61 69 6e 2e 22 29 29 0a 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 6c 6f 63 6b 29 0a ain."))...(org-gcal--sync-lock).
8b80 20 20 28 6c 65 74 2a 0a 20 20 20 20 20 20 28 28 6e 61 6d 65 20 28 6f 72 20 28 62 75 66 66 65 72 ..(let*.......((name.(or.(buffer
8ba0 2d 66 69 6c 65 2d 6e 61 6d 65 29 20 28 62 75 66 66 65 72 2d 6e 61 6d 65 29 29 29 29 0a 20 20 20 -file-name).(buffer-name))))....
8bc0 20 28 64 65 66 65 72 72 65 64 3a 74 72 79 0a 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 24 0a .(deferred:try......(deferred:$.
8be0 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 62 75 66 66 65 72 2d 69 6e 6e ......(org-gcal--sync-buffer-inn
8c00 65 72 20 73 6b 69 70 2d 65 78 70 6f 72 74 20 73 69 6c 65 6e 74 20 66 69 6c 74 65 72 2d 64 61 74 er.skip-export.silent.filter-dat
8c20 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e...............................
8c40 20 20 20 20 20 66 69 6c 74 65 72 2d 6d 61 6e 61 67 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 .....filter-managed.............
8c60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6f 69 6e 74 2d 6d 69 .......................(point-mi
8c80 6e 2d 6d 61 72 6b 65 72 29 29 0a 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 n-marker)).......(deferred:nextc
8ca0 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 .it.......................(lambd
8cc0 61 20 28 5f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f a.(_).........................(o
8ce0 72 67 2d 67 63 61 6c 2d 2d 6e 6f 74 69 66 79 20 22 43 6f 6d 70 6c 65 74 65 64 20 73 79 6e 63 69 rg-gcal--notify."Completed.synci
8d00 6e 67 20 65 76 65 6e 74 73 20 69 6e 20 62 75 66 66 65 72 2e 22 0a 20 20 20 20 20 20 20 20 20 20 ng.events.in.buffer."...........
8d20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
8d40 28 63 6f 6e 63 61 74 20 22 45 76 65 6e 74 73 20 73 79 6e 63 65 64 20 69 6e 5c 6e 22 20 6e 61 6d (concat."Events.synced.in\n".nam
8d60 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e)..............................
8d80 20 20 20 20 20 20 20 20 20 20 20 20 20 73 69 6c 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 .............silent)............
8da0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 20 6e .............(deferred:succeed.n
8dc0 69 6c 29 29 29 29 0a 20 20 20 20 20 3a 66 69 6e 61 6c 6c 79 0a 20 20 20 20 20 28 6c 61 6d 62 64 il))))......:finally......(lambd
8de0 61 20 28 29 0a 20 20 20 20 20 20 20 28 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 75 70 64 61 a.()........(org-generic-id-upda
8e00 74 65 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 20 6f 72 67 2d 67 63 61 6c 2d 65 6e 74 72 79 2d 69 te-id-locations.org-gcal-entry-i
8e20 64 2d 70 72 6f 70 65 72 74 79 29 0a 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 d-property)........(org-gcal--sy
8e40 6e 63 2d 75 6e 6c 6f 63 6b 29 29 29 29 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 6f 72 67 2d 67 63 nc-unlock)))))..(defmacro.org-gc
8e60 61 6c 2d 2d 77 69 74 68 2d 70 6f 69 6e 74 2d 61 74 2d 6e 6f 2d 77 69 64 65 6e 20 28 70 6f 6d 20 al--with-point-at-no-widen.(pom.
8e80 26 72 65 73 74 20 62 6f 64 79 29 0a 20 20 22 4d 6f 76 65 20 74 6f 20 62 75 66 66 65 72 20 61 6e &rest.body)..."Move.to.buffer.an
8ea0 64 20 70 6f 69 6e 74 20 6f 66 20 70 6f 69 6e 74 2d 6f 72 2d 6d 61 72 6b 65 72 20 50 4f 4d 20 66 d.point.of.point-or-marker.POM.f
8ec0 6f 72 20 74 68 65 20 64 75 72 61 74 69 6f 6e 20 6f 66 20 42 4f 44 59 2e 0a 0a 42 61 73 65 64 20 or.the.duration.of.BODY...Based.
8ee0 6f 6e 20 e2 80 98 6f 72 67 2d 77 69 74 68 2d 70 6f 69 6e 74 2d 61 74 e2 80 99 20 62 75 74 20 64 on....org-with-point-at....but.d
8f00 6f 65 73 6e e2 80 99 74 20 77 69 64 65 6e 20 74 68 65 20 62 75 66 66 65 72 2e 22 0a 20 20 28 64 oesn...t.widen.the.buffer."...(d
8f20 65 63 6c 61 72 65 20 28 64 65 62 75 67 20 28 66 6f 72 6d 20 62 6f 64 79 29 29 20 28 69 6e 64 65 eclare.(debug.(form.body)).(inde
8f40 6e 74 20 31 29 29 0a 20 20 28 6f 72 67 2d 77 69 74 68 2d 67 65 6e 73 79 6d 73 20 28 6d 70 6f 6d nt.1))...(org-with-gensyms.(mpom
8f60 29 0a 20 20 20 20 60 28 6c 65 74 20 28 28 2c 6d 70 6f 6d 20 2c 70 6f 6d 29 29 0a 20 20 20 20 20 ).....`(let.((,mpom.,pom))......
8f80 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 28 77 68 65 6e ..(save-excursion..........(when
8fa0 20 28 6d 61 72 6b 65 72 70 20 2c 6d 70 6f 6d 29 20 28 73 65 74 2d 62 75 66 66 65 72 20 28 6d 61 .(markerp.,mpom).(set-buffer.(ma
8fc0 72 6b 65 72 2d 62 75 66 66 65 72 20 2c 6d 70 6f 6d 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 67 rker-buffer.,mpom)))..........(g
8fe0 6f 74 6f 2d 63 68 61 72 20 28 6f 72 20 2c 6d 70 6f 6d 20 28 70 6f 69 6e 74 29 29 29 0a 20 20 20 oto-char.(or.,mpom.(point)))....
9000 20 20 20 20 20 20 2c 40 62 6f 64 79 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 ......,@body))))..(defun.org-gca
9020 6c 2d 2d 73 79 6e 63 2d 62 75 66 66 65 72 2d 69 6e 6e 65 72 0a 20 20 20 20 28 73 6b 69 70 2d 65 l--sync-buffer-inner.....(skip-e
9040 78 70 6f 72 74 20 5f 73 69 6c 65 6e 74 20 66 69 6c 74 65 72 2d 64 61 74 65 20 66 69 6c 74 65 72 xport._silent.filter-date.filter
9060 2d 6d 61 6e 61 67 65 64 20 6d 61 72 6b 65 72 29 0a 20 20 22 49 6e 6e 65 72 20 6c 6f 6f 70 20 6f -managed.marker)..."Inner.loop.o
9080 66 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 73 79 6e 63 2d 62 75 66 66 65 72 e2 80 99 2e 22 0a 20 f....org-gcal-sync-buffer...."..
90a0 20 28 77 68 69 6c 65 0a 20 20 20 20 20 20 28 6e 6f 74 0a 20 20 20 20 20 20 20 28 63 61 74 63 68 .(while.......(not........(catch
90c0 20 27 62 6c 6f 63 6b 0a 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 20 20 .'block..........(deferred:$....
90e0 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 20 6e 69 6c 29 0a 20 20 .......(deferred:succeed.nil)...
9100 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 ........(deferred:nextc.it......
9120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 52 65 74 75 72 6e 73 20 .....................;;.Returns.
9140 28 77 72 61 70 70 65 64 20 69 6e 20 64 65 66 65 72 72 65 64 20 6f 62 6a 65 63 74 29 3a 0a 20 20 (wrapped.in.deferred.object):...
9160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 2d 20 6d 61 72 ........................;;.-.mar
9180 6b 65 72 20 77 69 74 68 69 6e 20 63 75 72 72 65 6e 74 20 68 65 61 64 6c 69 6e 65 20 69 66 20 74 ker.within.current.headline.if.t
91a0 68 65 72 65 20 61 72 65 20 73 74 69 6c 6c 20 68 65 61 64 6c 69 6e 65 73 0a 20 20 20 20 20 20 20 here.are.still.headlines........
91c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 20 20 6c 65 66 74 20 69 6e 20 ...................;;...left.in.
91e0 74 68 65 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 the.file........................
9200 20 20 20 20 3b 3b 20 2d 20 6e 69 6c 20 69 66 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 6d 6f 72 ....;;.-.nil.if.there.are.no.mor
9220 65 20 68 65 61 64 6c 69 6e 65 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e.headlines.....................
9240 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .......(lambda.(_)..............
9260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 77 69 74 68 2d 70 ...............(org-gcal--with-p
9280 6f 69 6e 74 2d 61 74 2d 6e 6f 2d 77 69 64 65 6e 20 6d 61 72 6b 65 72 0a 20 20 20 20 20 20 20 20 oint-at-no-widen.marker.........
92a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 42 79 20 64 65 66 61 ......................;;.By.defa
92c0 75 6c 74 20 73 65 74 20 6e 65 78 74 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 6d 61 72 6b 65 72 20 ult.set.next.position.of.marker.
92e0 74 6f 20 6e 69 6c 2e 20 57 65 e2 80 99 6c 6c 20 73 65 74 20 69 74 20 62 65 6c 6f 77 20 69 66 0a to.nil..We...ll.set.it.below.if.
9300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b ..............................;;
9320 20 74 68 65 72 65 20 72 65 6d 61 69 6e 73 20 6d 6f 72 65 20 74 6f 20 65 64 69 74 2e 0a 20 20 20 .there.remains.more.to.edit.....
9340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 ...........................(setq
9360 20 6d 61 72 6b 65 72 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .marker.nil)....................
9380 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 64 72 61 77 65 72 2d 70 6f 69 6e 74 0a ...........(let*.((drawer-point.
93a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
93c0 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......(lambda.()................
93e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 2d 73 65 61 .........................(re-sea
9400 72 63 68 2d 66 6f 72 77 61 72 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rch-forward.....................
9420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 5e 5b .....................(format."^[
9440 20 5c 74 5d 2a 3a 25 73 3a 5b 20 5c 74 5d 2a 24 22 20 6f 72 67 2d 67 63 61 6c 2d 64 72 61 77 65 .\t]*:%s:[.\t]*$".org-gcal-drawe
9460 72 2d 6e 61 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r-name).........................
9480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6f 69 6e 74 2d 6d 61 78 29 0a 20 20 20 .................(point-max)....
94a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
94c0 20 20 20 20 20 20 27 6e 6f 65 72 72 6f 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......'noerror)))...............
94e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 72 6b 65 72 2d 66 .......................(marker-f
9500 6f 72 2d 70 6f 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 or-post.........................
9520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 ..............(cond.............
9540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 65 71 20 ...........................((eq.
9560 6d 61 6a 6f 72 2d 6d 6f 64 65 20 27 6f 72 67 2d 6d 6f 64 65 29 0a 20 20 20 20 20 20 20 20 20 20 major-mode.'org-mode)...........
9580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 ..............................(w
95a0 68 65 6e 20 28 66 75 6e 63 61 6c 6c 20 64 72 61 77 65 72 2d 70 6f 69 6e 74 29 0a 20 20 20 20 20 hen.(funcall.drawer-point)......
95c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
95e0 20 20 20 20 20 28 73 65 74 71 20 6d 61 72 6b 65 72 20 28 70 6f 69 6e 74 2d 6d 61 72 6b 65 72 29 .....(setq.marker.(point-marker)
9600 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )...............................
9620 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 72 6b 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 ............marker))............
9640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 65 71 ............................((eq
9660 20 6d 61 6a 6f 72 2d 6d 6f 64 65 20 27 6f 72 67 2d 61 67 65 6e 64 61 2d 6d 6f 64 65 29 0a 20 20 .major-mode.'org-agenda-mode)...
9680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
96a0 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 20 28 6e 6f 74 20 6d 61 72 6b 65 72 29 20 28 ......(while.(and.(not.marker).(
96c0 6e 6f 74 20 28 65 6f 62 70 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 not.(eobp)))....................
96e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 2d 6c 65 74 .......................(when-let
9700 20 28 28 61 67 65 6e 64 61 2d 6d 61 72 6b 65 72 20 28 70 6f 69 6e 74 2d 6d 61 72 6b 65 72 29 29 .((agenda-marker.(point-marker))
9720 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 6d 61 72 6b 65 ......................(org-marke
9760 72 20 28 6f 72 67 2d 67 65 74 2d 61 74 2d 62 6f 6c 20 27 6f 72 67 2d 68 64 2d 6d 61 72 6b 65 72 r.(org-get-at-bol.'org-hd-marker
9780 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ))).............................
97a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 77 69 74 68 2d 70 6f 69 6e 74 2d ................(org-with-point-
97c0 61 74 20 6f 72 67 2d 6d 61 72 6b 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 at.org-marker...................
97e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 ............................(org
9800 2d 6e 61 72 72 6f 77 2d 74 6f 2d 65 6c 65 6d 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 -narrow-to-element).............
9820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9840 20 20 28 77 68 65 6e 20 28 66 75 6e 63 61 6c 6c 20 64 72 61 77 65 72 2d 70 6f 69 6e 74 29 0a 20 ..(when.(funcall.drawer-point)..
9860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 6d 61 72 6b 65 72 20 61 67 65 6e ...............(setq.marker.agen
98a0 64 61 2d 6d 61 72 6b 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 da-marker)......................
98c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6f 69 6e ...........................(poin
98e0 74 2d 6d 61 72 6b 65 72 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t-marker)))))...................
9900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 49 66 20 6f 72 67 2d ......................;;.If.org-
9920 6d 61 72 6b 65 72 20 69 73 6e e2 80 99 74 20 66 6f 75 6e 64 20 6f 6e 20 74 68 69 73 20 6c 69 6e marker.isn...t.found.on.this.lin
9940 65 2c 20 67 6f 20 74 6f 20 74 68 65 20 6e 65 78 74 20 6f 6e 65 2e 0a 20 20 20 20 20 20 20 20 20 e,.go.to.the.next.one...........
9960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ...............................(
9980 66 6f 72 77 61 72 64 2d 6c 69 6e 65 20 31 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 forward-line.1))................
99a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 ........................(t......
99c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
99e0 20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22 55 6e 73 75 70 70 6f 72 74 65 64 20 6d 61 6a 6f ...(user-error."Unsupported.majo
9a00 72 20 6d 6f 64 65 20 25 73 20 69 6e 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 22 0a 20 20 20 r.mode.%s.in.current.buffer"....
9a20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 6a 6f 72 2d 6d 6f 64 65 29 29 29 29 29 .................major-mode)))))
9a60 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9a80 20 28 69 66 20 28 61 6e 64 20 6d 61 72 6b 65 72 20 6d 61 72 6b 65 72 2d 66 6f 72 2d 70 6f 73 74 .(if.(and.marker.marker-for-post
9aa0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )...............................
9ac0 20 20 20 20 20 20 28 6f 72 67 2d 77 69 74 68 2d 70 6f 69 6e 74 2d 61 74 20 6d 61 72 6b 65 72 2d ......(org-with-point-at.marker-
9ae0 66 6f 72 2d 70 6f 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 for-post........................
9b00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 74 69 6d 65 2d 64 65 73 63 ...............(let*.((time-desc
9b20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 67 65 74 2d 74 69 6d 65 2d 61 6e 64 2d 64 65 73 63 29 29 0a .(org-gcal--get-time-and-desc)).
9b40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9b60 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 61 72 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 .............(start.............
9b80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9ba0 20 20 28 70 6c 69 73 74 2d 67 65 74 20 74 69 6d 65 2d 64 65 73 63 20 3a 73 74 61 72 74 29 29 0a ..(plist-get.time-desc.:start)).
9bc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9be0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 61 72 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 .............(start.............
9c00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9c20 20 20 28 61 6e 64 20 73 74 61 72 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..(and.start....................
9c40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9c60 28 6f 72 67 2d 67 63 61 6c 2d 2d 70 61 72 73 65 2d 63 61 6c 65 6e 64 61 72 2d 74 69 6d 65 2d 73 (org-gcal--parse-calendar-time-s
9c80 74 72 69 6e 67 20 73 74 61 72 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tring.start)))..................
9ca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6e 64 ............................(end
9cc0 20 28 70 6c 69 73 74 2d 67 65 74 20 74 69 6d 65 2d 64 65 73 63 20 3a 65 6e 64 29 29 0a 20 20 20 .(plist-get.time-desc.:end))....
9ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9d00 20 20 20 20 20 20 20 20 20 20 28 65 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........(end..................
9d20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6e .............................(an
9d40 64 20 65 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 d.end...........................
9d60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 .........................(org-gc
9d80 61 6c 2d 2d 70 61 72 73 65 2d 63 61 6c 65 6e 64 61 72 2d 74 69 6d 65 2d 73 74 72 69 6e 67 20 65 al--parse-calendar-time-string.e
9da0 6e 64 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nd))))..........................
9dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ...............(if..............
9de0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b ...............................;
9e00 3b 20 53 6b 69 70 20 70 6f 73 74 69 6e 67 20 74 68 65 20 68 65 61 64 6c 69 6e 65 20 75 6e 64 65 ;.Skip.posting.the.headline.unde
9e20 72 20 74 68 65 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r.these.........................
9e40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 63 6f 6e 64 69 74 69 6f 6e ....................;;.condition
9e60 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s...............................
9e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............(or...............
9ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b ...............................;
9ec0 3b 20 44 6f 6e e2 80 99 74 20 73 79 6e 63 20 65 76 65 6e 74 73 20 69 66 20 e2 80 98 66 69 6c 74 ;.Don...t.sync.events.if....filt
9ee0 65 72 2d 64 61 74 65 e2 80 99 20 69 73 20 73 65 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 er-date....is.set...............
9f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b ...............................;
9f20 3b 20 61 6e 64 20 65 76 65 6e 74 20 69 73 20 74 6f 6f 20 66 61 72 20 69 6e 20 74 68 65 20 70 61 ;.and.event.is.too.far.in.the.pa
9f40 73 74 20 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 st.or...........................
9f60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 66 75 74 75 72 65 2e 0a 20 20 ...................;;.future....
9f80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9fa0 20 20 20 20 20 20 20 20 20 20 20 28 61 6e 64 20 66 69 6c 74 65 72 2d 64 61 74 65 0a 20 20 20 20 ...........(and.filter-date.....
9fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............(or...............
a000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a020 20 20 20 20 20 28 6e 6f 74 20 73 74 61 72 74 29 20 28 6e 6f 74 20 65 6e 64 29 0a 20 20 20 20 20 .....(not.start).(not.end)......
a040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 69 6d 65 2d 6c 65 73 73 2d 70 20 73 74 61 72 74 ..............(time-less-p.start
a080 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 75 70 2d 74 69 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 .(org-gcal--up-time))...........
a0a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a0c0 20 20 20 20 20 20 20 20 20 28 74 69 6d 65 2d 6c 65 73 73 2d 70 20 28 6f 72 67 2d 67 63 61 6c 2d .........(time-less-p.(org-gcal-
a0e0 2d 64 6f 77 6e 2d 74 69 6d 65 29 20 65 6e 64 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 -down-time).end)))..............
a100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a120 3b 3b 20 44 6f 6e e2 80 99 74 20 73 79 6e 63 20 69 66 20 e2 80 98 66 69 6c 74 65 72 2d 6d 61 6e ;;.Don...t.sync.if....filter-man
a140 61 67 65 64 e2 80 99 20 69 73 20 73 65 74 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 aged....is.set.and..............
a160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a180 3b 3b 20 68 65 61 64 6c 69 6e 65 20 69 73 20 6e 6f 74 20 6d 61 6e 61 67 65 64 20 62 79 20 4f 72 ;;.headline.is.not.managed.by.Or
a1a0 67 20 28 73 65 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 g.(see..........................
a1c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 e2 80 98 6f 72 67 2d 67 63 ....................;;....org-gc
a1e0 61 6c 2d 6d 61 6e 61 67 65 64 2d 70 72 6f 70 65 72 74 79 27 29 0a 20 20 20 20 20 20 20 20 20 20 al-managed-property')...........
a200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a220 20 20 20 28 61 6e 64 20 66 69 6c 74 65 72 2d 6d 61 6e 61 67 65 64 0a 20 20 20 20 20 20 20 20 20 ...(and.filter-managed..........
a240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a260 20 20 20 20 20 20 20 20 20 28 6e 6f 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........(not...................
a280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a2a0 20 28 73 74 72 69 6e 67 3d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(string=.......................
a2c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 6f .............................."o
a2e0 72 67 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rg".............................
a300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 65 6e 74 ........................(org-ent
a320 72 79 2d 67 65 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ry-get..........................
a340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6f 69 ............................(poi
a360 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nt).............................
a380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 67 2d 67 63 61 .........................org-gca
a3a0 6c 2d 6d 61 6e 61 67 65 64 2d 70 72 6f 70 65 72 74 79 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 l-managed-property))))).........
a3c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a3e0 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 20 6d 61 72 6b 65 72 29 0a 20 20 ....(deferred:succeed.marker)...
a400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a420 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 74 72 79 0a 20 20 20 20 20 20 20 20 20 20 ........(deferred:try...........
a440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a460 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(deferred:$....................
a480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 72 79 20 .........................;;.Try.
a4a0 74 6f 20 61 76 6f 69 64 20 68 61 6e 67 69 6e 67 20 45 6d 61 63 73 20 64 75 72 69 6e 67 0a 20 20 to.avoid.hanging.Emacs.during...
a4c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a4e0 20 20 20 20 20 20 20 20 20 20 3b 3b 20 69 6e 74 65 72 61 63 74 69 76 65 20 75 73 65 20 62 79 20 ..........;;.interactive.use.by.
a500 77 61 69 74 69 6e 67 20 75 6e 74 69 6c 20 45 6d 61 63 73 20 69 73 0a 20 20 20 20 20 20 20 20 20 waiting.until.Emacs.is..........
a520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a540 20 20 20 3b 3b 20 69 64 6c 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...;;.idle......................
a560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 ........................(deferre
a580 64 3a 77 61 69 74 2d 69 64 6c 65 20 31 30 30 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 d:wait-idle.1000)...............
a5a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 ..............................(d
a5c0 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 eferred:nextc.it................
a5e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a600 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 29 0a 20 20 20 20 20 20 20 .............(lambda.(_)........
a620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 77 69 74 68 .......................(org-with
a660 2d 70 6f 69 6e 74 2d 61 74 20 6d 61 72 6b 65 72 2d 66 6f 72 2d 70 6f 73 74 0a 20 20 20 20 20 20 -point-at.marker-for-post.......
a680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a6a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 ..........................(org-g
a6c0 63 61 6c 2d 70 6f 73 74 2d 61 74 2d 70 6f 69 6e 74 20 6e 69 6c 20 73 6b 69 70 2d 65 78 70 6f 72 cal-post-at-point.nil.skip-expor
a6e0 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t...............................
a700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 ..........................(org-g
a740 63 61 6c 2d 2d 73 79 6e 63 2d 67 65 74 2d 75 70 64 61 74 65 2d 65 78 69 73 74 69 6e 67 29 29 29 cal--sync-get-update-existing)))
a760 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ))).............................
a780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 63 61 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 ...............:catch...........
a7a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a7c0 20 28 6c 61 6d 62 64 61 20 28 65 72 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(lambda.(err)..................
a7e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 73 ............................(mes
a800 73 61 67 65 20 22 6f 72 67 2d 67 63 61 6c 2d 73 79 6e 63 2d 62 75 66 66 65 72 3a 20 61 74 20 25 sage."org-gcal-sync-buffer:.at.%
a820 53 20 65 76 65 6e 74 20 25 53 3a 20 65 72 72 6f 72 3a 20 25 73 22 0a 20 20 20 20 20 20 20 20 20 S.event.%S:.error:.%s"..........
a840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a860 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 72 6b 65 72 2d 66 6f 72 2d 70 6f 73 74 20 74 69 6d .............marker-for-post.tim
a880 65 2d 64 65 73 63 20 65 72 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e-desc.err))....................
a8a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 66 69 6e 61 6c 6c 79 ........................:finally
a8c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a8e0 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 29 0a 20 20 20 20 20 20 20 20 ............(lambda.(_).........
a900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
a920 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 20 6d 61 72 6b 65 72 29 29 29 .....(deferred:succeed.marker)))
a940 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ))).............................
a960 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 20 6e 69 6c 29 29 29 29 29 ......(deferred:succeed.nil)))))
a980 29 0a 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 69 74 0a 20 )...........(deferred:nextc.it..
a9a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 .........................(lambda
a9c0 20 28 6d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(m)............................
a9e0 20 28 77 68 65 6e 20 6d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(when.m........................
aa00 20 20 20 20 20 20 20 28 73 65 74 71 20 6d 61 72 6b 65 72 20 6d 29 0a 20 20 20 20 20 20 20 20 20 .......(setq.marker.m)..........
aa20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 68 72 6f 77 20 27 62 6c 6f .....................(throw.'blo
aa40 63 6b 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ck.nil))........................
aa60 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 20 6e 69 6c 29 29 29 0a 20 20 .....(deferred:succeed.nil)))...
aa80 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 65 72 72 6f 72 20 69 74 0a 20 20 20 20 20 ........(deferred:error.it......
aaa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 65 72 .....................(lambda.(er
aac0 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 r).............................(
aae0 6d 65 73 73 61 67 65 20 22 6f 72 67 2d 67 63 61 6c 2d 73 79 6e 63 2d 62 75 66 66 65 72 3a 20 65 message."org-gcal-sync-buffer:.e
ab00 72 72 6f 72 3a 20 25 73 22 20 65 72 72 29 29 29 29 29 29 29 0a 20 20 28 64 65 66 65 72 72 65 64 rror:.%s".err)))))))...(deferred
ab20 3a 73 75 63 63 65 65 64 20 6e 69 6c 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 :succeed.nil))..;;;###autoload.(
ab40 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 66 65 74 63 68 2d 62 75 66 66 65 72 20 28 26 6f 70 defun.org-gcal-fetch-buffer.(&op
ab60 74 69 6f 6e 61 6c 20 73 69 6c 65 6e 74 20 66 69 6c 74 65 72 2d 64 61 74 65 29 0a 20 20 22 46 65 tional.silent.filter-date)..."Fe
ab80 74 63 68 20 63 68 61 6e 67 65 73 20 74 6f 20 65 76 65 6e 74 73 20 69 6e 20 74 68 65 20 63 75 72 tch.changes.to.events.in.the.cur
aba0 72 65 6e 74 6c 79 2d 76 69 73 69 62 6c 65 20 70 6f 72 74 69 6f 6e 20 6f 66 20 74 68 65 20 62 75 rently-visible.portion.of.the.bu
abc0 66 66 65 72 0a 0a 55 6e 6c 69 6b 65 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 73 79 6e 63 2d 62 75 ffer..Unlike....org-gcal-sync-bu
abe0 66 66 65 72 e2 80 99 2c 20 74 68 69 73 20 77 69 6c 6c 20 6e 6f 74 20 70 75 73 68 20 61 6e 79 20 ffer...,.this.will.not.push.any.
ac00 63 68 61 6e 67 65 73 20 74 6f 20 47 6f 6f 67 6c 65 0a 43 61 6c 65 6e 64 61 72 2e 20 46 6f 72 20 changes.to.Google.Calendar..For.
ac20 53 49 4c 45 4e 54 20 61 6e 64 20 46 49 4c 54 45 52 2d 44 41 54 45 20 73 65 65 20 e2 80 98 6f 72 SILENT.and.FILTER-DATE.see....or
ac40 67 2d 67 63 61 6c 2d 73 79 6e 63 2d 62 75 66 66 65 72 e2 80 99 2e 22 0a 20 20 28 69 6e 74 65 72 g-gcal-sync-buffer...."...(inter
ac60 61 63 74 69 76 65 29 0a 20 20 28 6f 72 67 2d 67 63 61 6c 2d 73 79 6e 63 2d 62 75 66 66 65 72 20 active)...(org-gcal-sync-buffer.
ac80 74 20 73 69 6c 65 6e 74 20 66 69 6c 74 65 72 2d 64 61 74 65 29 29 0a 0a 28 64 65 66 76 61 72 20 t.silent.filter-date))..(defvar.
aca0 6f 72 67 2d 67 63 61 6c 2d 64 65 62 75 67 20 6e 69 6c 29 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f org-gcal-debug.nil).;;;###autolo
acc0 61 64 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 74 6f 67 67 6c 65 2d 64 65 62 75 67 20 ad.(defun.org-gcal-toggle-debug.
ace0 28 29 0a 20 20 22 54 6f 67 67 6c 65 20 64 65 62 75 67 67 69 6e 67 20 66 6c 61 67 73 20 66 6f 72 ()..."Toggle.debugging.flags.for
ad00 20 e2 80 98 6f 72 67 2d 67 63 61 6c 27 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a ....org-gcal'."...(interactive).
ad20 20 20 28 63 6f 6e 64 0a 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 64 65 62 75 67 0a 20 20 20 20 28 ..(cond....(org-gcal-debug.....(
ad40 73 65 74 71 0a 20 20 20 20 20 64 65 62 75 67 2d 6f 6e 2d 65 72 72 6f 72 20 28 63 64 72 20 28 61 setq......debug-on-error.(cdr.(a
ad60 73 73 71 20 27 64 65 62 75 67 2d 6f 6e 2d 65 72 72 6f 72 20 6f 72 67 2d 67 63 61 6c 2d 64 65 62 ssq.'debug-on-error.org-gcal-deb
ad80 75 67 29 29 0a 20 20 20 20 20 64 65 62 75 67 2d 69 67 6e 6f 72 65 64 2d 65 72 72 6f 72 73 20 28 ug))......debug-ignored-errors.(
ada0 63 64 72 20 28 61 73 73 71 20 27 64 65 62 75 67 2d 69 67 6e 6f 72 65 64 2d 65 72 72 6f 72 73 20 cdr.(assq.'debug-ignored-errors.
adc0 6f 72 67 2d 67 63 61 6c 2d 64 65 62 75 67 29 29 0a 20 20 20 20 20 64 65 66 65 72 72 65 64 3a 64 org-gcal-debug))......deferred:d
ade0 65 62 75 67 20 28 63 64 72 20 28 61 73 73 71 20 27 64 65 66 65 72 72 65 64 3a 64 65 62 75 67 20 ebug.(cdr.(assq.'deferred:debug.
ae00 6f 72 67 2d 67 63 61 6c 2d 64 65 62 75 67 29 29 0a 20 20 20 20 20 64 65 66 65 72 72 65 64 3a 64 org-gcal-debug))......deferred:d
ae20 65 62 75 67 2d 6f 6e 2d 73 69 67 6e 61 6c 0a 20 20 20 20 20 28 63 64 72 20 28 61 73 73 71 20 27 ebug-on-signal......(cdr.(assq.'
ae40 64 65 66 65 72 72 65 64 3a 64 65 62 75 67 2d 6f 6e 2d 73 69 67 6e 61 6c 20 6f 72 67 2d 67 63 61 deferred:debug-on-signal.org-gca
ae60 6c 2d 64 65 62 75 67 29 29 0a 20 20 20 20 20 72 65 71 75 65 73 74 2d 6c 6f 67 2d 6c 65 76 65 6c l-debug))......request-log-level
ae80 20 28 63 64 72 20 28 61 73 73 71 20 27 72 65 71 75 65 73 74 2d 6c 6f 67 2d 6c 65 76 65 6c 20 6f .(cdr.(assq.'request-log-level.o
aea0 72 67 2d 67 63 61 6c 2d 64 65 62 75 67 29 29 0a 20 20 20 20 20 72 65 71 75 65 73 74 2d 6c 6f 67 rg-gcal-debug))......request-log
aec0 2d 62 75 66 66 65 72 2d 6e 61 6d 65 20 28 63 64 72 20 28 61 73 73 71 20 27 72 65 71 75 65 73 74 -buffer-name.(cdr.(assq.'request
aee0 2d 6c 6f 67 2d 62 75 66 66 65 72 2d 6e 61 6d 65 20 6f 72 67 2d 67 63 61 6c 2d 64 65 62 75 67 29 -log-buffer-name.org-gcal-debug)
af00 29 0a 20 20 20 20 20 6f 72 67 2d 67 63 61 6c 2d 64 65 62 75 67 20 6e 69 6c 29 0a 20 20 20 20 28 )......org-gcal-debug.nil).....(
af20 6d 65 73 73 61 67 65 20 22 6f 72 67 2d 67 63 61 6c 2d 64 65 62 75 67 20 44 49 53 41 42 4c 45 44 message."org-gcal-debug.DISABLED
af40 22 29 29 0a 20 20 20 28 74 0a 20 20 20 20 28 73 65 74 71 0a 20 20 20 20 20 6f 72 67 2d 67 63 61 "))....(t.....(setq......org-gca
af60 6c 2d 64 65 62 75 67 0a 20 20 20 20 20 60 28 28 64 65 62 75 67 2d 6f 6e 2d 65 72 72 6f 72 20 2e l-debug......`((debug-on-error..
af80 20 2c 64 65 62 75 67 2d 6f 6e 2d 65 72 72 6f 72 29 0a 20 20 20 20 20 20 20 28 64 65 62 75 67 2d .,debug-on-error)........(debug-
afa0 69 67 6e 6f 72 65 64 2d 65 72 72 6f 72 73 20 2e 20 2c 64 65 62 75 67 2d 69 67 6e 6f 72 65 64 2d ignored-errors...,debug-ignored-
afc0 65 72 72 6f 72 73 29 0a 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 64 65 62 75 67 20 2e errors)........(deferred:debug..
afe0 20 2c 64 65 66 65 72 72 65 64 3a 64 65 62 75 67 29 0a 20 20 20 20 20 20 20 28 64 65 66 65 72 72 .,deferred:debug)........(deferr
b000 65 64 3a 64 65 62 75 67 2d 6f 6e 2d 73 69 67 6e 61 6c 20 2e 20 2c 64 65 66 65 72 72 65 64 3a 64 ed:debug-on-signal...,deferred:d
b020 65 62 75 67 2d 6f 6e 2d 73 69 67 6e 61 6c 29 0a 20 20 20 20 20 20 20 28 72 65 71 75 65 73 74 2d ebug-on-signal)........(request-
b040 6c 6f 67 2d 6c 65 76 65 6c 20 2e 20 2c 72 65 71 75 65 73 74 2d 6c 6f 67 2d 6c 65 76 65 6c 29 0a log-level...,request-log-level).
b060 20 20 20 20 20 20 20 28 72 65 71 75 65 73 74 2d 6c 6f 67 2d 62 75 66 66 65 72 2d 6e 61 6d 65 20 .......(request-log-buffer-name.
b080 2e 20 2c 72 65 71 75 65 73 74 2d 6c 6f 67 2d 62 75 66 66 65 72 2d 6e 61 6d 65 29 29 0a 20 20 20 ..,request-log-buffer-name))....
b0a0 20 20 64 65 62 75 67 2d 6f 6e 2d 65 72 72 6f 72 20 27 28 65 72 72 6f 72 29 0a 20 20 20 20 20 3b ..debug-on-error.'(error)......;
b0c0 3b 20 54 68 65 73 65 20 61 72 65 20 65 72 72 6f 72 73 20 74 68 61 74 20 61 72 65 20 74 68 72 6f ;.These.are.errors.that.are.thro
b0e0 77 6e 20 62 79 20 76 61 72 69 6f 75 73 20 70 69 65 63 65 73 20 6f 66 20 63 6f 64 65 20 74 68 61 wn.by.various.pieces.of.code.tha
b100 74 0a 20 20 20 20 20 3b 3b 20 64 6f 6e e2 80 99 74 20 6d 65 61 6e 20 61 6e 79 74 68 69 6e 67 2e t......;;.don...t.mean.anything.
b120 0a 20 20 20 20 20 64 65 62 75 67 2d 69 67 6e 6f 72 65 64 2d 65 72 72 6f 72 73 20 28 61 70 70 65 ......debug-ignored-errors.(appe
b140 6e 64 20 64 65 62 75 67 2d 69 67 6e 6f 72 65 64 2d 65 72 72 6f 72 73 0a 20 20 20 20 20 20 20 20 nd.debug-ignored-errors.........
b160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 28 73 63 61 6e ..........................'(scan
b180 2d 65 72 72 6f 72 20 66 69 6c 65 2d 61 6c 72 65 61 64 79 2d 65 78 69 73 74 73 29 29 0a 20 20 20 -error.file-already-exists))....
b1a0 20 20 64 65 66 65 72 72 65 64 3a 64 65 62 75 67 20 74 0a 20 20 20 20 20 72 65 71 75 65 73 74 2d ..deferred:debug.t......request-
b1c0 6d 65 73 73 61 67 65 2d 6c 65 76 65 6c 20 27 64 65 62 75 67 0a 20 20 20 20 20 72 65 71 75 65 73 message-level.'debug......reques
b1e0 74 2d 6c 6f 67 2d 6c 65 76 65 6c 20 27 64 65 62 75 67 0a 20 20 20 20 20 3b 3b 20 52 65 6d 6f 76 t-log-level.'debug......;;.Remov
b200 65 20 6c 65 61 64 69 6e 67 20 73 70 61 63 65 20 73 6f 20 69 74 20 73 68 6f 77 73 20 75 70 20 69 e.leading.space.so.it.shows.up.i
b220 6e 20 74 68 65 20 62 75 66 66 65 72 20 6c 69 73 74 2e 0a 20 20 20 20 20 72 65 71 75 65 73 74 2d n.the.buffer.list.......request-
b240 6c 6f 67 2d 62 75 66 66 65 72 2d 6e 61 6d 65 20 22 2a 72 65 71 75 65 73 74 2d 6c 6f 67 2a 22 0a log-buffer-name."*request-log*".
b260 20 20 20 20 20 64 65 66 65 72 72 65 64 3a 64 65 62 75 67 2d 6f 6e 2d 73 69 67 6e 61 6c 20 74 29 .....deferred:debug-on-signal.t)
b280 0a 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 6f 72 67 2d 67 63 61 6c 2d 64 65 62 75 67 20 45 4e .....(message."org-gcal-debug.EN
b2a0 41 42 4c 45 44 22 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 68 65 61 ABLED"))))..(defun.org-gcal--hea
b2c0 64 6c 69 6e 65 20 28 29 0a 20 20 22 47 65 74 20 62 61 72 65 20 68 65 61 64 6c 69 6e 65 20 61 74 dline.()..."Get.bare.headline.at
b2e0 20 63 75 72 72 65 6e 74 20 70 6f 69 6e 74 2e 22 0a 20 20 28 73 75 62 73 74 72 69 6e 67 2d 6e 6f .current.point."...(substring-no
b300 2d 70 72 6f 70 65 72 74 69 65 73 0a 20 20 20 28 6f 72 67 2d 67 65 74 2d 68 65 61 64 69 6e 67 20 -properties....(org-get-heading.
b320 27 6e 6f 2d 74 61 67 73 20 27 6e 6f 2d 74 6f 64 6f 20 27 6e 6f 2d 70 72 69 6f 72 69 74 79 20 27 'no-tags.'no-todo.'no-priority.'
b340 6e 6f 2d 63 6f 6d 6d 65 6e 74 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d no-comment)))..(defun.org-gcal--
b360 66 69 6c 74 65 72 20 28 69 74 65 6d 73 29 0a 20 20 22 46 69 6c 74 65 72 20 49 54 45 4d 53 20 6f filter.(items)..."Filter.ITEMS.o
b380 6e 20 61 6e 20 41 4e 44 20 6f 66 20 60 6f 72 67 2d 67 63 61 6c 2d 66 65 74 63 68 2d 65 76 65 6e n.an.AND.of.`org-gcal-fetch-even
b3a0 74 2d 66 69 6c 74 65 72 73 27 20 66 75 6e 63 74 69 6f 6e 73 2e 0a 52 75 6e 20 65 61 63 68 20 65 t-filters'.functions..Run.each.e
b3c0 6c 65 6d 65 6e 74 20 66 72 6f 6d 20 49 54 45 4d 53 20 74 68 72 6f 75 67 68 20 61 6c 6c 20 6f 66 lement.from.ITEMS.through.all.of
b3e0 20 74 68 65 20 66 69 6c 74 65 72 73 2e 20 20 49 66 20 61 6e 79 0a 66 69 6c 74 65 72 20 72 65 74 .the.filters...If.any.filter.ret
b400 75 72 6e 73 20 4e 49 4c 2c 20 64 69 73 63 61 72 64 20 74 68 65 20 69 74 65 6d 2e 22 0a 20 20 28 urns.NIL,.discard.the.item."...(
b420 69 66 20 6f 72 67 2d 67 63 61 6c 2d 66 65 74 63 68 2d 65 76 65 6e 74 2d 66 69 6c 74 65 72 73 0a if.org-gcal-fetch-event-filters.
b440 20 20 20 20 20 20 28 63 6c 2d 72 65 6d 6f 76 65 2d 69 66 0a 20 20 20 20 20 20 20 28 6c 61 6d 62 ......(cl-remove-if........(lamb
b460 64 61 20 28 69 74 65 6d 29 0a 20 20 20 20 20 20 20 20 20 28 61 6e 64 20 28 6d 65 6d 62 65 72 20 da.(item)..........(and.(member.
b480 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 61 nil.......................(mapca
b4a0 72 20 28 6c 61 6d 62 64 61 20 28 66 69 6c 74 65 72 2d 66 75 6e 63 29 0a 20 20 20 20 20 20 20 20 r.(lambda.(filter-func).........
b4c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c ........................(funcall
b4e0 20 66 69 6c 74 65 72 2d 66 75 6e 63 20 69 74 65 6d 29 29 20 6f 72 67 2d 67 63 61 6c 2d 66 65 74 .filter-func.item)).org-gcal-fet
b500 63 68 2d 65 76 65 6e 74 2d 66 69 6c 74 65 72 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ch-event-filters))..............
b520 20 74 29 29 0a 20 20 20 20 20 20 20 69 74 65 6d 73 29 0a 20 20 20 20 69 74 65 6d 73 29 29 0a 0a .t))........items).....items))..
b540 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 61 6c 6c 2d 70 72 6f 70 65 72 74 79 2d 6c 6f (defun.org-gcal--all-property-lo
b560 63 61 6c 2d 76 61 6c 75 65 73 20 28 70 6f 6d 20 70 72 6f 70 65 72 74 79 20 6c 69 74 65 72 61 6c cal-values.(pom.property.literal
b580 2d 6e 69 6c 29 0a 20 20 22 52 65 74 75 72 6e 20 61 6c 6c 20 76 61 6c 75 65 73 20 66 6f 72 20 50 -nil)..."Return.all.values.for.P
b5a0 52 4f 50 45 52 54 59 20 69 6e 20 65 6e 74 72 79 20 61 74 20 70 6f 69 6e 74 20 6f 72 20 6d 61 72 ROPERTY.in.entry.at.point.or.mar
b5c0 6b 65 72 20 50 4f 4d 2e 0a 57 6f 72 6b 73 20 6c 69 6b 65 20 e2 80 98 6f 72 67 2d 2d 70 72 6f 70 ker.POM..Works.like....org--prop
b5e0 65 72 74 79 2d 6c 6f 63 61 6c 2d 76 61 6c 75 65 73 e2 80 99 2c 20 65 78 63 65 70 74 20 74 68 61 erty-local-values...,.except.tha
b600 74 20 69 66 20 6d 75 6c 74 69 70 6c 65 20 76 61 6c 75 65 73 20 6f 66 20 61 0a 70 72 6f 70 65 72 t.if.multiple.values.of.a.proper
b620 74 79 20 77 68 6f 73 65 20 6b 65 79 20 64 6f 65 73 6e e2 80 99 74 20 63 6f 6e 74 61 69 6e 20 61 ty.whose.key.doesn...t.contain.a
b640 20 e2 80 98 2b e2 80 99 20 73 69 67 6e 20 61 72 65 20 70 72 65 73 65 6e 74 2c 20 74 68 69 73 20 ....+....sign.are.present,.this.
b660 66 75 6e 63 74 69 6f 6e 20 77 69 6c 6c 0a 72 65 74 75 72 6e 20 61 6c 6c 20 6f 66 20 74 68 65 6d function.will.return.all.of.them
b680 2e 20 49 6e 20 70 61 72 74 69 63 75 6c 61 72 2c 20 77 65 20 77 69 73 68 20 74 6f 20 72 65 74 72 ..In.particular,.we.wish.to.retr
b6a0 69 65 76 65 20 61 6c 6c 20 6c 6f 63 61 6c 20 76 61 6c 75 65 73 20 6f 66 20 74 68 65 0a 5c 22 49 ieve.all.local.values.of.the.\"I
b6c0 44 5c 22 20 70 72 6f 70 65 72 74 79 2e 20 4c 49 54 45 52 41 4c 2d 4e 49 4c 20 61 6c 73 6f 20 77 D\".property..LITERAL-NIL.also.w
b6e0 6f 72 6b 73 20 74 68 65 20 73 61 6d 65 20 77 61 79 2e 0a 0a 44 6f 65 73 20 6e 6f 74 20 70 72 65 orks.the.same.way...Does.not.pre
b700 73 65 72 76 65 20 70 6f 69 6e 74 2e 22 0a 20 20 28 6f 72 67 2d 77 69 74 68 2d 70 6f 69 6e 74 2d serve.point."...(org-with-point-
b720 61 74 20 70 6f 6d 0a 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 62 61 63 6b 2d 74 6f 2d 68 65 at.pom.....(org-gcal--back-to-he
b740 61 64 69 6e 67 29 0a 20 20 20 20 28 6c 65 74 20 28 28 72 61 6e 67 65 20 28 6f 72 67 2d 67 65 74 ading).....(let.((range.(org-get
b760 2d 70 72 6f 70 65 72 74 79 2d 62 6c 6f 63 6b 29 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 72 -property-block))).......(when.r
b780 61 6e 67 65 0a 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 63 61 72 20 72 61 6e ange.........(goto-char.(car.ran
b7a0 67 65 29 29 0a 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 63 61 73 65 2d 66 6f 6c 64 2d 73 ge)).........(let*.((case-fold-s
b7c0 65 61 72 63 68 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6e 64 20 28 63 64 earch.t)................(end.(cd
b7e0 72 20 72 61 6e 67 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 6c 75 65 29 0a r.range))................value).
b800 20 20 20 20 20 20 20 20 20 20 3b 3b 20 46 69 6e 64 20 76 61 6c 75 65 73 2e 0a 20 20 20 20 20 20 ..........;;.Find.values........
b820 20 20 20 20 28 6c 65 74 2a 20 28 28 70 72 6f 70 65 72 74 79 2b 20 28 6f 72 67 2d 72 65 2d 70 72 ....(let*.((property+.(org-re-pr
b840 6f 70 65 72 74 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 operty..........................
b860 20 20 20 20 28 63 6f 6e 63 61 74 20 28 72 65 67 65 78 70 2d 71 75 6f 74 65 20 70 72 6f 70 65 72 ....(concat.(regexp-quote.proper
b880 74 79 29 20 22 5c 5c 2b 3f 22 29 20 74 20 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 ty)."\\+?").t.t))).............(
b8a0 77 68 69 6c 65 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 70 72 6f 70 65 72 74 while.(re-search-forward.propert
b8c0 79 2b 20 65 6e 64 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 76 y+.end.t)...............(let.((v
b8e0 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 33 29 29 .(match-string-no-properties.3))
b900 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 69 66 20 6c 69 74 65 ).................(push.(if.lite
b920 72 61 6c 2d 6e 69 6c 20 76 20 28 6f 72 67 2d 6e 6f 74 2d 6e 69 6c 20 76 29 29 20 76 61 6c 75 65 ral-nil.v.(org-not-nil.v)).value
b940 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 52 65 74 75 72 6e 20 66 69 6e 61 6c 20 76 ))))...........;;.Return.final.v
b960 61 6c 75 65 73 2e 0a 20 20 20 20 20 20 20 20 20 20 28 61 6e 64 20 28 6e 6f 74 20 28 65 71 75 61 alues............(and.(not.(equa
b980 6c 20 76 61 6c 75 65 20 27 28 6e 69 6c 29 29 29 20 28 6e 72 65 76 65 72 73 65 20 76 61 6c 75 65 l.value.'(nil))).(nreverse.value
b9a0 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 69 64 2d 66 69 6e )))))))..(defun.org-gcal--id-fin
b9c0 64 20 28 69 64 20 26 6f 70 74 69 6f 6e 61 6c 20 6d 61 72 6b 65 72 70 29 0a 20 20 22 52 65 74 75 d.(id.&optional.markerp)..."Retu
b9e0 72 6e 20 74 68 65 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 65 6e 74 72 79 20 77 69 74 rn.the.location.of.the.entry.wit
ba00 68 20 74 68 65 20 69 64 20 49 44 2e 0a 54 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 69 73 h.the.id.ID..The.return.value.is
ba20 20 61 20 63 6f 6e 73 20 63 65 6c 6c 20 28 66 69 6c 65 2d 6e 61 6d 65 20 2e 20 70 6f 73 69 74 69 .a.cons.cell.(file-name...positi
ba40 6f 6e 29 2c 20 6f 72 20 6e 69 6c 0a 69 66 20 74 68 65 72 65 20 69 73 20 6e 6f 20 65 6e 74 72 79 on),.or.nil.if.there.is.no.entry
ba60 20 77 69 74 68 20 74 68 61 74 20 49 44 2e 0a 57 69 74 68 20 6f 70 74 69 6f 6e 61 6c 20 61 72 67 .with.that.ID..With.optional.arg
ba80 75 6d 65 6e 74 20 4d 41 52 4b 45 52 50 2c 20 72 65 74 75 72 6e 20 74 68 65 20 70 6f 73 69 74 69 ument.MARKERP,.return.the.positi
baa0 6f 6e 20 61 73 20 61 20 6e 65 77 20 6d 61 72 6b 65 72 2e 22 0a 20 20 28 6f 72 0a 20 20 20 28 6f on.as.a.new.marker."...(or....(o
bac0 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 66 69 6e 64 20 6f 72 67 2d 67 63 61 6c 2d 65 6e 74 72 rg-generic-id-find.org-gcal-entr
bae0 79 2d 69 64 2d 70 72 6f 70 65 72 74 79 20 69 64 20 6d 61 72 6b 65 72 70 0a 20 20 20 20 20 20 20 y-id-property.id.markerp........
bb00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 63 61 63 68 65 64 29 0a 20 20 20 3b 3b 20 .................'cached)....;;.
bb20 46 61 6c 6c 62 61 63 6b 20 66 6f 72 20 6c 65 67 61 63 79 20 22 49 44 22 20 70 72 6f 70 65 72 74 Fallback.for.legacy."ID".propert
bb40 79 2e 20 44 6f 6e e2 80 99 74 20 75 73 65 20 e2 80 98 6f 72 67 2d 69 64 2d 66 69 6e 64 e2 80 99 y..Don...t.use....org-id-find...
bb60 20 64 69 72 65 63 74 6c 79 0a 20 20 20 3b 3b 20 62 65 63 61 75 73 65 20 69 74 20 61 6c 77 61 79 .directly....;;.because.it.alway
bb80 73 20 72 75 6e 20 e2 80 98 6f 72 67 2d 69 64 2d 75 70 64 61 74 65 2d 69 64 2d 6c 6f 63 61 74 69 s.run....org-id-update-id-locati
bba0 6f 6e 73 e2 80 99 20 69 66 20 74 68 65 20 49 44 20 69 73 6e e2 80 99 74 20 66 6f 75 6e 64 2c 0a ons....if.the.ID.isn...t.found,.
bbc0 20 20 20 3b 3b 20 77 68 69 63 68 20 73 6c 6f 77 73 20 75 73 20 64 6f 77 6e 20 63 6f 6e 73 69 64 ...;;.which.slows.us.down.consid
bbe0 65 72 61 62 6c 79 2c 20 61 6e 64 20 74 72 69 65 73 20 74 6f 20 66 61 6c 6c 20 62 61 63 6b 20 74 erably,.and.tries.to.fall.back.t
bc00 6f 20 74 68 65 20 63 75 72 72 65 6e 74 0a 20 20 20 3b 3b 20 62 75 66 66 65 72 2c 20 77 68 69 63 o.the.current....;;.buffer,.whic
bc20 68 20 77 65 20 64 6f 6e e2 80 99 74 20 77 61 6e 74 20 65 69 74 68 65 72 2e 0a 20 20 20 28 77 68 h.we.don...t.want.either.....(wh
bc40 65 6e 2d 6c 65 74 20 28 28 66 69 6c 65 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 66 69 6e 64 2d 69 64 en-let.((file.(org-gcal--find-id
bc60 2d 66 69 6c 65 20 69 64 29 29 29 0a 20 20 20 20 20 28 6f 72 67 2d 69 64 2d 66 69 6e 64 2d 69 64 -file.id)))......(org-id-find-id
bc80 2d 69 6e 2d 66 69 6c 65 20 69 64 20 66 69 6c 65 20 6d 61 72 6b 65 72 70 29 29 29 29 0a 0a 28 64 -in-file.id.file.markerp))))..(d
bca0 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 66 69 6e 64 2d 69 64 2d 66 69 6c 65 20 28 69 64 29 efun.org-gcal--find-id-file.(id)
bcc0 0a 20 20 22 51 75 65 72 79 20 74 68 65 20 69 64 20 64 61 74 61 62 61 73 65 20 66 6f 72 20 74 68 ..."Query.the.id.database.for.th
bce0 65 20 66 69 6c 65 20 69 6e 20 77 68 69 63 68 20 74 68 69 73 20 49 44 20 69 73 20 6c 6f 63 61 74 e.file.in.which.this.ID.is.locat
bd00 65 64 2e 0a 0a 4c 69 6b 65 20 e2 80 98 6f 72 67 2d 69 64 2d 66 69 6e 64 2d 69 64 2d 66 69 6c 65 ed...Like....org-id-find-id-file
bd20 e2 80 99 2c 20 65 78 63 65 70 74 20 74 68 61 74 20 69 74 20 64 6f 65 73 6e e2 80 99 74 20 66 61 ...,.except.that.it.doesn...t.fa
bd40 6c 6c 20 62 61 63 6b 20 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 0a 62 75 66 66 65 72 20 69 66 ll.back.to.the.current.buffer.if
bd60 20 49 44 20 69 73 20 6e 6f 74 20 66 6f 75 6e 64 20 69 6e 20 74 68 65 20 69 64 20 64 61 74 61 62 .ID.is.not.found.in.the.id.datab
bd80 61 73 65 2c 20 62 75 74 20 69 6e 73 74 65 61 64 20 72 65 74 75 72 6e 73 20 6e 69 6c 2e 0a 0a 4f ase,.but.instead.returns.nil...O
bda0 6e 6c 79 20 6e 65 65 64 65 64 20 66 6f 72 20 6c 65 67 61 63 79 20 65 6e 74 72 69 65 73 20 74 68 nly.needed.for.legacy.entries.th
bdc0 61 74 20 75 73 65 20 5c 22 49 44 5c 22 20 74 6f 20 73 74 6f 72 65 20 65 6e 74 72 79 20 49 44 73 at.use.\"ID\".to.store.entry.IDs
bde0 2e 22 0a 20 20 28 75 6e 6c 65 73 73 20 6f 72 67 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 20 28 6f ."...(unless.org-id-locations.(o
be00 72 67 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 2d 6c 6f 61 64 29 29 0a 20 20 28 6f 72 20 28 61 6e rg-id-locations-load))...(or.(an
be20 64 20 6f 72 67 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 28 68 d.org-id-locations............(h
be40 61 73 68 2d 74 61 62 6c 65 2d 70 20 6f 72 67 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 29 0a 20 20 ash-table-p.org-id-locations)...
be60 20 20 20 20 20 20 20 20 20 28 67 65 74 68 61 73 68 20 69 64 20 6f 72 67 2d 69 64 2d 6c 6f 63 61 .........(gethash.id.org-id-loca
be80 74 69 6f 6e 73 29 29 0a 20 20 20 20 20 20 6e 69 6c 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d tions)).......nil))..(defun.org-
bea0 67 63 61 6c 2d 2d 67 65 74 2d 69 64 20 28 70 6f 6d 29 0a 20 20 22 52 65 74 72 69 65 76 65 20 61 gcal--get-id.(pom)..."Retrieve.a
bec0 6e 20 65 6e 74 72 79 20 49 44 20 61 74 20 70 6f 69 6e 74 2d 6f 72 2d 6d 61 72 6b 65 72 20 50 4f n.entry.ID.at.point-or-marker.PO
bee0 4d 2e 0a 0a 20 20 55 73 65 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 65 6e 74 72 79 2d 69 64 2d 70 M.....Use....org-gcal-entry-id-p
bf00 72 6f 70 65 72 74 79 27 2c 20 6f 72 20 5c 22 3a 49 44 3a 5c 22 20 69 66 20 6e 6f 74 20 70 72 65 roperty',.or.\":ID:\".if.not.pre
bf20 73 65 6e 74 20 28 66 6f 72 20 62 61 63 6b 77 61 72 64 0a 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 sent.(for.backward.compatibility
bf40 29 2e 22 0a 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 65 76 65 6e 74 2d 69 64 2d 66 72 6f 6d 2d 65 )."...(org-gcal--event-id-from-e
bf60 6e 74 72 79 2d 69 64 0a 20 20 20 28 6f 72 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 65 74 20 70 6f ntry-id....(or.(org-entry-get.po
bf80 6d 20 6f 72 67 2d 67 63 61 6c 2d 65 6e 74 72 79 2d 69 64 2d 70 72 6f 70 65 72 74 79 29 0a 20 20 m.org-gcal-entry-id-property)...
bfa0 20 20 20 20 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 65 74 20 70 6f 6d 20 22 49 44 22 29 29 29 29 .....(org-entry-get.pom."ID"))))
bfc0 0a 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 70 75 74 2d 69 64 20 28 70 6f 6d 20 ...(defun.org-gcal--put-id.(pom.
bfe0 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 65 6e 74 2d 69 64 29 0a 20 20 22 53 74 6f 72 65 20 61 calendar-id.event-id)..."Store.a
c000 20 63 61 6e 6f 6e 69 63 61 6c 20 65 6e 74 72 79 20 49 44 20 61 74 20 70 6f 69 6e 74 2d 6f 72 2d .canonical.entry.ID.at.point-or-
c020 6d 61 72 6b 65 72 20 50 4f 4d 2e 0a 0a 45 6e 74 72 79 20 49 44 20 69 73 20 67 65 6e 65 72 61 74 marker.POM...Entry.ID.is.generat
c040 65 64 20 66 72 6f 6d 20 43 41 4c 45 4e 44 41 52 2d 49 44 20 61 6e 64 20 45 56 45 4e 54 2d 49 44 ed.from.CALENDAR-ID.and.EVENT-ID
c060 20 61 6e 64 20 73 74 6f 72 65 64 20 69 6e 20 74 68 65 0a e2 80 98 6f 72 67 2d 67 63 61 6c 2d 65 .and.stored.in.the....org-gcal-e
c080 6e 74 72 79 2d 69 64 2d 70 72 6f 70 65 72 74 79 27 2e 0a 0a 54 68 69 73 20 77 69 6c 6c 20 61 6c ntry-id-property'...This.will.al
c0a0 73 6f 20 75 70 64 61 74 65 20 74 68 65 20 73 74 6f 72 65 64 20 49 44 20 6c 6f 63 61 74 69 6f 6e so.update.the.stored.ID.location
c0c0 73 20 75 73 69 6e 67 0a e2 80 98 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 61 64 64 2d 6c 6f s.using....org-generic-id-add-lo
c0e0 63 61 74 69 6f 6e 27 2e 22 0a 20 20 28 6f 72 67 2d 77 69 74 68 2d 70 6f 69 6e 74 2d 61 74 20 70 cation'."...(org-with-point-at.p
c100 6f 6d 0a 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 62 61 63 6b 2d 74 6f 2d 68 65 61 64 69 6e om.....(org-gcal--back-to-headin
c120 67 29 0a 20 20 20 20 28 6c 65 74 20 28 28 65 6e 74 72 79 2d 69 64 20 28 6f 72 67 2d 67 63 61 6c g).....(let.((entry-id.(org-gcal
c140 2d 2d 66 6f 72 6d 61 74 2d 65 6e 74 72 79 2d 69 64 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 --format-entry-id.calendar-id.ev
c160 65 6e 74 2d 69 64 29 29 29 0a 20 20 20 20 20 20 28 6f 72 67 2d 65 6e 74 72 79 2d 70 75 74 20 28 ent-id))).......(org-entry-put.(
c180 70 6f 69 6e 74 29 20 6f 72 67 2d 67 63 61 6c 2d 65 6e 74 72 79 2d 69 64 2d 70 72 6f 70 65 72 74 point).org-gcal-entry-id-propert
c1a0 79 20 65 6e 74 72 79 2d 69 64 29 0a 20 20 20 20 20 20 28 77 68 65 6e 2d 6c 65 74 2a 20 28 28 66 y.entry-id).......(when-let*.((f
c1c0 6e 61 6d 65 20 28 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 name.(buffer-file-name))........
c1e0 20 20 20 20 20 20 20 20 20 20 20 28 74 72 75 65 6e 61 6d 65 20 28 66 69 6c 65 2d 74 72 75 65 6e ...........(truename.(file-truen
c200 61 6d 65 20 66 6e 61 6d 65 29 29 29 0a 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 65 6e 65 72 69 ame.fname))).........(org-generi
c220 63 2d 69 64 2d 61 64 64 2d 6c 6f 63 61 74 69 6f 6e 20 6f 72 67 2d 67 63 61 6c 2d 65 6e 74 72 79 c-id-add-location.org-gcal-entry
c240 2d 69 64 2d 70 72 6f 70 65 72 74 79 20 65 6e 74 72 79 2d 69 64 0a 20 20 20 20 20 20 20 20 20 20 -id-property.entry-id...........
c260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 72 75 65 6e ...........................truen
c280 61 6d 65 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 65 76 65 6e 74 ame)))))..(defun.org-gcal--event
c2a0 2d 69 64 2d 66 72 6f 6d 2d 65 6e 74 72 79 2d 69 64 20 28 65 6e 74 72 79 2d 69 64 29 0a 20 20 22 -id-from-entry-id.(entry-id)..."
c2c0 50 61 72 73 65 20 61 6e 20 45 4e 54 52 59 2d 49 44 20 63 72 65 61 74 65 64 20 62 79 20 e2 80 98 Parse.an.ENTRY-ID.created.by....
c2e0 6f 72 67 2d 67 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 65 6e 74 72 79 2d 69 64 e2 80 99 20 61 6e 64 org-gcal--format-entry-id....and
c300 20 72 65 74 75 72 6e 20 45 56 45 4e 54 2d 49 44 2e 22 0a 20 20 28 77 68 65 6e 0a 20 20 20 20 20 .return.EVENT-ID."...(when......
c320 20 28 61 6e 64 20 65 6e 74 72 79 2d 69 64 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e .(and.entry-id............(strin
c340 67 2d 6d 61 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 72 78 2d 74 6f 2d 73 74 72 69 6e g-match.............(rx-to-strin
c360 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 27 28 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 g..............'(and............
c380 20 20 20 20 73 74 72 69 6e 67 2d 73 74 61 72 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....string-start................
c3a0 28 73 75 62 6d 61 74 63 68 2d 6e 20 31 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 (submatch-n.1..................(
c3c0 31 2b 20 28 6e 6f 74 20 28 61 6e 79 20 3f 2f 20 3f 5c 6e 29 29 29 29 0a 20 20 20 20 20 20 20 20 1+.(not.(any.?/.?\n)))).........
c3e0 20 20 20 20 20 20 20 3f 2f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 75 62 6d 61 74 .......?/................(submat
c400 63 68 2d 6e 20 32 20 28 31 2b 20 28 6e 6f 74 20 28 61 6e 79 20 3f 2f 20 3f 5c 6e 29 29 29 29 0a ch-n.2.(1+.(not.(any.?/.?\n)))).
c420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 2d 65 6e 64 29 29 0a 20 20 20 20 ...............string-end)).....
c440 20 20 20 20 20 20 20 20 65 6e 74 72 79 2d 69 64 29 29 0a 20 20 20 20 28 6d 61 74 63 68 2d 73 74 ........entry-id)).....(match-st
c460 72 69 6e 67 20 31 20 65 6e 74 72 79 2d 69 64 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 ring.1.entry-id)))..(defun.org-g
c480 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 65 6e 74 72 79 2d 69 64 20 28 63 61 6c 65 6e 64 61 72 2d 69 cal--format-entry-id.(calendar-i
c4a0 64 20 65 76 65 6e 74 2d 69 64 29 0a 20 20 22 46 6f 72 6d 61 74 20 43 41 4c 45 4e 44 41 52 2d 49 d.event-id)..."Format.CALENDAR-I
c4c0 44 20 61 6e 64 20 45 4e 54 52 59 2d 49 44 20 69 6e 74 6f 20 61 20 63 61 6e 6f 6e 69 63 61 6c 20 D.and.ENTRY-ID.into.a.canonical.
c4e0 49 44 20 66 6f 72 20 61 6e 20 4f 72 67 20 6d 6f 64 65 20 65 6e 74 72 79 2e 0a 0a 20 20 52 65 74 ID.for.an.Org.mode.entry.....Ret
c500 75 72 6e 20 6e 69 6c 20 69 66 20 65 69 74 68 65 72 20 61 72 67 75 6d 65 6e 74 20 69 73 20 6e 69 urn.nil.if.either.argument.is.ni
c520 6c 2e 22 0a 20 20 28 77 68 65 6e 20 28 61 6e 64 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 65 l."...(when.(and.calendar-id.eve
c540 6e 74 2d 69 64 29 0a 20 20 20 20 28 66 6f 72 6d 61 74 20 22 25 73 2f 25 73 22 20 65 76 65 6e 74 nt-id).....(format."%s/%s".event
c560 2d 69 64 20 63 61 6c 65 6e 64 61 72 2d 69 64 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 -id.calendar-id)))..(defun.org-g
c580 63 61 6c 2d 2d 62 61 63 6b 2d 74 6f 2d 68 65 61 64 69 6e 67 20 28 29 0a 20 20 22 5c 0a 20 20 43 cal--back-to-heading.()..."\...C
c5a0 61 6c 6c 20 e2 80 98 6f 72 67 2d 62 61 63 6b 2d 74 6f 2d 68 65 61 64 69 6e 67 e2 80 99 20 77 69 all....org-back-to-heading....wi
c5c0 74 68 20 74 68 65 20 69 6e 76 69 73 69 62 6c 65 2d 6f 6b 20 61 72 67 75 6d 65 6e 74 20 73 65 74 th.the.invisible-ok.argument.set
c5e0 20 74 6f 20 74 72 75 65 2e 0a 20 20 57 65 20 61 6c 77 61 79 73 20 69 6e 74 65 6e 64 20 74 6f 20 .to.true....We.always.intend.to.
c600 67 6f 20 62 61 63 6b 20 74 6f 20 74 68 65 20 69 6e 76 69 73 69 62 6c 65 20 68 65 61 64 69 6e 67 go.back.to.the.invisible.heading
c620 20 68 65 72 65 2e 22 0a 20 20 28 6f 72 67 2d 62 61 63 6b 2d 74 6f 2d 68 65 61 64 69 6e 67 20 27 .here."...(org-back-to-heading.'
c640 69 6e 76 69 73 69 62 6c 65 2d 6f 6b 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d invisible-ok))..(defun.org-gcal-
c660 2d 67 65 74 2d 74 69 6d 65 2d 61 6e 64 2d 64 65 73 63 20 28 29 0a 20 20 22 47 65 74 20 74 68 65 -get-time-and-desc.()..."Get.the
c680 20 74 69 6d 65 73 74 61 6d 70 20 61 6e 64 20 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 74 68 .timestamp.and.description.of.th
c6a0 65 20 65 76 65 6e 74 20 61 74 20 70 6f 69 6e 74 2e 0a 0a 20 20 52 65 74 75 72 6e 20 61 20 70 6c e.event.at.point.....Return.a.pl
c6c0 69 73 74 20 77 69 74 68 20 3a 73 74 61 72 74 2c 20 3a 65 6e 64 2c 20 61 6e 64 20 3a 64 65 73 63 ist.with.:start,.:end,.and.:desc
c6e0 20 6b 65 79 73 2e 20 54 68 65 20 76 61 6c 75 65 20 66 6f 72 20 61 20 6b 65 79 20 69 73 20 6e 69 .keys..The.value.for.a.key.is.ni
c700 6c 0a 20 20 69 66 20 6e 6f 74 20 70 72 65 73 65 6e 74 2e 22 0a 20 20 28 6c 65 74 20 28 73 74 61 l...if.not.present."...(let.(sta
c720 72 74 20 65 6e 64 20 64 65 73 63 20 74 6f 62 6a 20 65 6c 65 6d 29 0a 20 20 20 20 28 73 61 76 65 rt.end.desc.tobj.elem).....(save
c740 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 62 61 63 6b -excursion.......(org-gcal--back
c760 2d 74 6f 2d 68 65 61 64 69 6e 67 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 65 6c 65 6d 20 28 6f -to-heading).......(setq.elem.(o
c780 72 67 2d 65 6c 65 6d 65 6e 74 2d 61 74 2d 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20 3b 3b 20 50 rg-element-at-point)).......;;.P
c7a0 61 72 73 65 20 3a 6f 72 67 2d 67 63 61 6c 3a 20 64 72 61 77 65 72 20 66 6f 72 20 65 76 65 6e 74 arse.:org-gcal:.drawer.for.event
c7c0 20 74 69 6d 65 20 61 6e 64 20 64 65 73 63 72 69 70 74 69 6f 6e 2e 0a 20 20 20 20 20 20 28 77 68 .time.and.description........(wh
c7e0 65 6e 0a 20 20 20 20 20 20 20 20 20 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 0a en...........(re-search-forward.
c800 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 5e 5b 20 5c 74 5d 2a 3a 25 73 3a 5b ...........(format."^[.\t]*:%s:[
c820 20 5c 74 5d 2a 24 22 20 6f 72 67 2d 67 63 61 6c 2d 64 72 61 77 65 72 2d 6e 61 6d 65 29 0a 20 20 .\t]*$".org-gcal-drawer-name)...
c840 20 20 20 20 20 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 20 28 6f 75 74 6c 69 6e .........(save-excursion.(outlin
c860 65 2d 6e 65 78 74 2d 68 65 61 64 69 6e 67 29 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20 20 e-next-heading).(point))........
c880 20 20 20 20 27 6e 6f 65 72 72 6f 72 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 46 69 72 73 74 20 72 ....'noerror).........;;.First.r
c8a0 65 61 64 20 61 6e 79 20 65 76 65 6e 74 20 74 69 6d 65 20 66 72 6f 6d 20 74 68 65 20 64 72 61 77 ead.any.event.time.from.the.draw
c8c0 65 72 20 69 66 20 70 72 65 73 65 6e 74 2e 20 49 74 27 73 20 6c 6f 63 61 74 65 64 0a 20 20 20 20 er.if.present..It's.located.....
c8e0 20 20 20 20 3b 3b 20 61 74 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68 65 20 64 ....;;.at.the.beginning.of.the.d
c900 72 61 77 65 72 2e 0a 20 20 20 20 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 rawer..........(save-excursion..
c920 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 .........(when...............(re
c940 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 22 3c 5b 30 2d 39 5d 5b 30 2d 39 5d 5b 30 2d 39 -search-forward."<[0-9][0-9][0-9
c960 5d 5b 30 2d 39 5d 2d 5b 30 2d 39 5d 5b 30 2d 39 5d 2d 5b 30 2d 39 5d 5b 30 2d 39 5d 22 0a 20 20 ][0-9]-[0-9][0-9]-[0-9][0-9]"...
c980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ...............................(
c9a0 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 20 28 6f 75 74 6c 69 6e 65 2d 6e 65 78 74 2d 68 65 61 save-excursion.(outline-next-hea
c9c0 64 69 6e 67 29 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ding).(point))..................
c9e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 6e 6f 65 72 72 6f 72 29 0a 20 20 20 20 20 20 ................'noerror).......
ca00 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 6d 61 74 63 68 2d 62 65 67 69 6e 6e 69 6e ......(goto-char.(match-beginnin
ca20 67 20 30 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 74 6f 62 6a 20 28 6f 72 g.0)).............(setq.tobj.(or
ca40 67 2d 65 6c 65 6d 65 6e 74 2d 74 69 6d 65 73 74 61 6d 70 2d 70 61 72 73 65 72 29 29 29 29 0a 20 g-element-timestamp-parser))))..
ca60 20 20 20 20 20 20 20 3b 3b 20 4c 69 6e 65 73 20 61 66 74 65 72 20 74 68 65 20 74 69 6d 65 73 74 .......;;.Lines.after.the.timest
ca80 61 6d 70 20 63 6f 6e 74 61 69 6e 20 74 68 65 20 64 65 73 63 72 69 70 74 69 6f 6e 2e 20 53 6b 69 amp.contain.the.description..Ski
caa0 70 20 6c 65 61 64 69 6e 67 0a 20 20 20 20 20 20 20 20 3b 3b 20 62 6c 61 6e 6b 20 6c 69 6e 65 73 p.leading.........;;.blank.lines
cac0 2e 0a 20 20 20 20 20 20 20 20 28 66 6f 72 77 61 72 64 2d 6c 69 6e 65 29 0a 20 20 20 20 20 20 20 ..........(forward-line)........
cae0 20 28 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20 20 20 20 20 20 28 72 65 .(beginning-of-line).........(re
cb00 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 0a 20 20 20 20 20 20 20 20 20 22 5c 5c 28 3f 3a 5e -search-forward.........."\\(?:^
cb20 5b 20 5c 74 5d 2a 24 5c 5c 29 2a 5c 5c 28 5b 5e 7a 2d 61 5d 2a 3f 5c 5c 29 5c 6e 3f 5b 20 5c 74 [.\t]*$\\)*\\([^z-a]*?\\)\n?[.\t
cb40 5d 2a 3a 45 4e 44 3a 22 0a 20 20 20 20 20 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f ]*:END:"..........(save-excursio
cb60 6e 20 28 6f 75 74 6c 69 6e 65 2d 6e 65 78 74 2d 68 65 61 64 69 6e 67 29 20 28 70 6f 69 6e 74 29 n.(outline-next-heading).(point)
cb80 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 64 65 73 63 20 28 6d 61 74 63 68 2d 73 74 72 )).........(setq.desc.(match-str
cba0 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 31 29 29 0a 20 20 20 20 20 20 20 20 28 73 ing-no-properties.1)).........(s
cbc0 65 74 71 20 64 65 73 63 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 73 74 72 69 etq.desc...............(if.(stri
cbe0 6e 67 2d 6d 61 74 63 68 2d 70 20 22 5c 5c e2 80 98 5c 6e 2a 5c 5c e2 80 99 22 20 64 65 73 63 29 ng-match-p."\\...\n*\\...".desc)
cc00 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 ...................nil..........
cc20 20 20 20 20 20 20 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 .......(replace-regexp-in-string
cc40 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5e e2 9c b1 22 20 22 2a 22 0a 20 20 20 .................."^..."."*"....
cc60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e ..............(replace-regexp-in
cc80 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5c 5c 60 5c 5c -string..................."\\`\\
cca0 28 3f 3a 20 2a 3c 5b 30 2d 39 5d 5b 30 2d 39 5d 5b 30 2d 39 5d 5b 30 2d 39 5d 2d 5b 30 2d 39 5d (?:.*<[0-9][0-9][0-9][0-9]-[0-9]
ccc0 5b 30 2d 39 5d 2d 5b 30 2d 39 5d 5b 30 2d 39 5d 2e 2a 3f 3e 24 5c 5c 29 5c 6e 3f 5c 6e 3f 22 0a [0-9]-[0-9][0-9].*?>$\\)\n?\n?".
cce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 22 0a 20 20 20 20 20 20 20 20 20 20 20 ..................""............
cd00 20 20 20 20 20 20 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 .......(replace-regexp-in-string
cd20 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 2a 3a 50 52 4f 50 45 52 54 49 ....................".*:PROPERTI
cd40 45 53 3a 5c 6e 20 2a 5c 5c 28 2e 2a 5c 5c 28 3f 3a 5c 6e 2e 2a 5c 5c 29 2a 3f 5c 5c 29 20 2a 3a ES:\n.*\\(.*\\(?:\n.*\\)*?\\).*:
cd60 45 4e 44 3a 5c 6e 2b 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 22 0a 20 END:\n+"....................""..
cd80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 73 63 29 29 29 29 29 29 29 0a 20 20 ..................desc)))))))...
cda0 20 20 3b 3b 20 50 72 65 66 65 72 20 74 6f 20 72 65 61 64 20 65 76 65 6e 74 20 74 69 6d 65 20 66 ..;;.Prefer.to.read.event.time.f
cdc0 72 6f 6d 20 74 68 65 20 53 43 48 45 44 55 4c 45 44 20 70 72 6f 70 65 72 74 79 20 69 66 20 70 72 rom.the.SCHEDULED.property.if.pr
cde0 65 73 65 6e 74 2e 0a 20 20 20 20 28 73 65 74 71 20 74 6f 62 6a 20 28 6f 72 20 28 6f 72 67 2d 65 esent......(setq.tobj.(or.(org-e
ce00 6c 65 6d 65 6e 74 2d 70 72 6f 70 65 72 74 79 20 3a 73 63 68 65 64 75 6c 65 64 20 65 6c 65 6d 29 lement-property.:scheduled.elem)
ce20 20 74 6f 62 6a 29 29 0a 20 20 20 20 28 77 68 65 6e 20 74 6f 62 6a 0a 20 20 20 20 20 20 28 77 68 .tobj)).....(when.tobj.......(wh
ce40 65 6e 20 28 70 6c 69 73 74 2d 67 65 74 20 28 63 61 64 72 20 74 6f 62 6a 29 20 3a 79 65 61 72 2d en.(plist-get.(cadr.tobj).:year-
ce60 73 74 61 72 74 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 0a 20 20 20 20 20 20 20 20 20 73 74 start).........(setq..........st
ce80 61 72 74 0a 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 6f art..........(org-gcal--format-o
cea0 72 67 32 69 73 6f 0a 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 28 63 61 64 rg2iso...........(plist-get.(cad
cec0 72 20 74 6f 62 6a 29 20 3a 79 65 61 72 2d 73 74 61 72 74 29 0a 20 20 20 20 20 20 20 20 20 20 28 r.tobj).:year-start)...........(
cee0 70 6c 69 73 74 2d 67 65 74 20 28 63 61 64 72 20 74 6f 62 6a 29 20 3a 6d 6f 6e 74 68 2d 73 74 61 plist-get.(cadr.tobj).:month-sta
cf00 72 74 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 28 63 61 64 72 20 74 rt)...........(plist-get.(cadr.t
cf20 6f 62 6a 29 20 3a 64 61 79 2d 73 74 61 72 74 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 obj).:day-start)...........(plis
cf40 74 2d 67 65 74 20 28 63 61 64 72 20 74 6f 62 6a 29 20 3a 68 6f 75 72 2d 73 74 61 72 74 29 0a 20 t-get.(cadr.tobj).:hour-start)..
cf60 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 28 63 61 64 72 20 74 6f 62 6a 29 20 .........(plist-get.(cadr.tobj).
cf80 3a 6d 69 6e 75 74 65 2d 73 74 61 72 74 29 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 :minute-start)...........(when.(
cfa0 70 6c 69 73 74 2d 67 65 74 20 28 63 61 64 72 20 74 6f 62 6a 29 20 3a 68 6f 75 72 2d 73 74 61 72 plist-get.(cadr.tobj).:hour-star
cfc0 74 29 20 74 29 29 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 70 6c 69 73 74 2d 67 65 74 20 t).t)))).......(when.(plist-get.
cfe0 28 63 61 64 72 20 74 6f 62 6a 29 20 3a 79 65 61 72 2d 65 6e 64 29 0a 20 20 20 20 20 20 20 20 28 (cadr.tobj).:year-end).........(
d000 73 65 74 71 0a 20 20 20 20 20 20 20 20 20 65 6e 64 0a 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d setq..........end..........(org-
d020 67 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 6f 72 67 32 69 73 6f 0a 20 20 20 20 20 20 20 20 20 20 28 gcal--format-org2iso...........(
d040 70 6c 69 73 74 2d 67 65 74 20 28 63 61 64 72 20 74 6f 62 6a 29 20 3a 79 65 61 72 2d 65 6e 64 29 plist-get.(cadr.tobj).:year-end)
d060 0a 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 28 63 61 64 72 20 74 6f 62 6a ...........(plist-get.(cadr.tobj
d080 29 20 3a 6d 6f 6e 74 68 2d 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 ).:month-end)...........(plist-g
d0a0 65 74 20 28 63 61 64 72 20 74 6f 62 6a 29 20 3a 64 61 79 2d 65 6e 64 29 0a 20 20 20 20 20 20 20 et.(cadr.tobj).:day-end)........
d0c0 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 28 63 61 64 72 20 74 6f 62 6a 29 20 3a 68 6f 75 72 2d ...(plist-get.(cadr.tobj).:hour-
d0e0 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 28 63 61 64 72 20 end)...........(plist-get.(cadr.
d100 74 6f 62 6a 29 20 3a 6d 69 6e 75 74 65 2d 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 tobj).:minute-end)...........(wh
d120 65 6e 20 28 70 6c 69 73 74 2d 67 65 74 20 28 63 61 64 72 20 74 6f 62 6a 29 20 3a 68 6f 75 72 2d en.(plist-get.(cadr.tobj).:hour-
d140 65 6e 64 29 20 74 29 29 29 29 29 0a 20 20 20 20 28 6c 69 73 74 20 3a 73 74 61 72 74 20 73 74 61 end).t))))).....(list.:start.sta
d160 72 74 20 3a 65 6e 64 20 65 6e 64 20 3a 64 65 73 63 20 64 65 73 63 29 29 29 0a 0a 28 64 65 66 75 rt.:end.end.:desc.desc)))..(defu
d180 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 73 6f 75 72 63 65 2d 66 72 6f 6d 2d 6c 69 6e 6b 2d 73 74 72 n.org-gcal--source-from-link-str
d1a0 69 6e 67 20 28 6c 69 6e 6b 29 0a 20 20 22 50 61 72 73 65 20 4c 49 4e 4b 2c 20 61 20 6c 69 6e 6b ing.(link)..."Parse.LINK,.a.link
d1c0 20 69 6e 20 4f 72 67 20 66 6f 72 6d 61 74 2c 20 74 6f 20 61 20 47 6f 6f 67 6c 65 20 43 61 6c 65 .in.Org.format,.to.a.Google.Cale
d1e0 6e 64 61 72 20 41 50 49 20 73 6f 75 72 63 65 20 6f 62 6a 65 63 74 2e 0a 0a 52 65 74 75 72 6e 73 ndar.API.source.object...Returns
d200 20 61 6e 20 61 6c 69 73 74 20 77 69 74 68 20 e2 80 98 3a 75 72 6c e2 80 99 20 66 6f 72 20 74 68 .an.alist.with....:url....for.th
d220 65 20 6c 69 6e 6b 20 55 52 4c 20 61 6e 64 20 e2 80 98 3a 74 69 74 6c 65 e2 80 99 20 66 6f 72 20 e.link.URL.and....:title....for.
d240 74 68 65 20 6c 69 6e 6b 20 74 69 74 6c 65 2c 0a 6f 72 20 6e 69 6c 20 69 66 20 6e 6f 20 76 61 6c the.link.title,.or.nil.if.no.val
d260 69 64 20 6c 69 6e 6b 20 69 73 20 66 6f 75 6e 64 2e 22 0a 20 20 28 77 69 74 68 2d 74 65 6d 70 2d id.link.is.found."...(with-temp-
d280 62 75 66 66 65 72 0a 20 20 20 20 28 6c 65 74 20 28 28 6f 72 67 2d 69 6e 68 69 62 69 74 2d 73 74 buffer.....(let.((org-inhibit-st
d2a0 61 72 74 75 70 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 6c 69 6e 6b 29 0a artup.nil)).......(insert.link).
d2c0 20 20 20 20 20 20 28 6f 72 67 2d 6d 6f 64 65 29 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 ......(org-mode).......(goto-cha
d2e0 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e 2d 6c 65 74 20 28 r.(point-min)).......(when-let.(
d300 28 6c 69 6e 6b 2d 65 6c 65 6d 65 6e 74 20 28 6f 72 67 2d 65 6c 65 6d 65 6e 74 2d 6c 69 6e 6b 2d (link-element.(org-element-link-
d320 70 61 72 73 65 72 29 29 29 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6c 69 6e 6b 2d 74 69 parser))).........(let.((link-ti
d340 74 6c 65 2d 62 65 67 69 6e 20 28 6f 72 67 2d 65 6c 65 6d 65 6e 74 2d 70 72 6f 70 65 72 74 79 20 tle-begin.(org-element-property.
d360 3a 63 6f 6e 74 65 6e 74 73 2d 62 65 67 69 6e 20 6c 69 6e 6b 2d 65 6c 65 6d 65 6e 74 29 29 0a 20 :contents-begin.link-element))..
d380 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 6b 2d 74 69 74 6c 65 2d 65 6e 64 20 28 6f 72 .............(link-title-end.(or
d3a0 67 2d 65 6c 65 6d 65 6e 74 2d 70 72 6f 70 65 72 74 79 20 3a 63 6f 6e 74 65 6e 74 73 2d 65 6e 64 g-element-property.:contents-end
d3c0 20 6c 69 6e 6b 2d 65 6c 65 6d 65 6e 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 61 70 70 65 .link-element)))...........(appe
d3e0 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 60 28 28 75 72 6c 20 2e 20 2c 28 6f 72 67 2d 65 6c 65 nd............`((url...,(org-ele
d400 6d 65 6e 74 2d 70 72 6f 70 65 72 74 79 20 3a 72 61 77 2d 6c 69 6e 6b 20 6c 69 6e 6b 2d 65 6c 65 ment-property.:raw-link.link-ele
d420 6d 65 6e 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 6c 69 ment)))............(when.(and.li
d440 6e 6b 2d 74 69 74 6c 65 2d 62 65 67 69 6e 20 6c 69 6e 6b 2d 74 69 74 6c 65 2d 65 6e 64 29 0a 20 nk-title-begin.link-title-end)..
d460 20 20 20 20 20 20 20 20 20 20 20 20 60 28 28 74 69 74 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 ............`((title............
d480 20 20 20 20 20 2e 20 2c 28 62 75 66 66 65 72 2d 73 75 62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f .......,(buffer-substring-no-pro
d4a0 70 65 72 74 69 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 69 6e 6b perties.....................link
d4c0 2d 74 69 74 6c 65 2d 62 65 67 69 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -title-begin....................
d4e0 20 6c 69 6e 6b 2d 74 69 74 6c 65 2d 65 6e 64 29 29 29 29 29 29 29 29 29 29 0a 0a 3b 3b 3b 23 23 .link-title-end))))))))))..;;;##
d500 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 70 6f 73 74 2d 61 #autoload.(defun.org-gcal-post-a
d520 74 2d 70 6f 69 6e 74 20 28 26 6f 70 74 69 6f 6e 61 6c 20 73 6b 69 70 2d 69 6d 70 6f 72 74 20 73 t-point.(&optional.skip-import.s
d540 6b 69 70 2d 65 78 70 6f 72 74 20 65 78 69 73 74 69 6e 67 2d 6d 6f 64 65 29 0a 20 20 22 50 6f 73 kip-export.existing-mode)..."Pos
d560 74 20 65 6e 74 72 79 20 61 74 20 70 6f 69 6e 74 20 74 6f 20 63 75 72 72 65 6e 74 20 63 61 6c 65 t.entry.at.point.to.current.cale
d580 6e 64 61 72 2e 0a 0a 54 68 69 73 20 6f 76 65 72 77 72 69 74 65 73 20 74 68 65 20 65 76 65 6e 74 ndar...This.overwrites.the.event
d5a0 20 6f 6e 20 74 68 65 20 73 65 72 76 65 72 20 77 69 74 68 20 74 68 65 20 64 61 74 61 20 66 72 6f .on.the.server.with.the.data.fro
d5c0 6d 20 74 68 65 20 65 6e 74 72 79 2c 20 65 78 63 65 70 74 20 69 66 0a 74 68 65 20 e2 80 98 6f 72 m.the.entry,.except.if.the....or
d5e0 67 2d 67 63 61 6c 2d 65 74 61 67 2d 70 72 6f 70 65 72 74 79 e2 80 99 20 69 73 20 70 72 65 73 65 g-gcal-etag-property....is.prese
d600 6e 74 20 61 6e 64 20 69 73 20 6f 75 74 20 6f 66 20 73 79 6e 63 20 77 69 74 68 20 74 68 65 20 73 nt.and.is.out.of.sync.with.the.s
d620 65 72 76 65 72 2c 20 69 6e 0a 77 68 69 63 68 20 63 61 73 65 20 74 68 65 20 65 6e 74 72 79 20 69 erver,.in.which.case.the.entry.i
d640 73 20 6f 76 65 72 77 72 69 74 74 65 6e 20 77 69 74 68 20 64 61 74 61 20 66 72 6f 6d 20 74 68 65 s.overwritten.with.data.from.the
d660 20 73 65 72 76 65 72 20 69 6e 73 74 65 61 64 2e 0a 0a 49 66 20 53 4b 49 50 2d 49 4d 50 4f 52 54 .server.instead...If.SKIP-IMPORT
d680 20 69 73 20 6e 6f 74 20 6e 69 6c 2c 20 64 6f 6e e2 80 99 74 20 6f 76 65 72 77 72 69 74 65 20 74 .is.not.nil,.don...t.overwrite.t
d6a0 68 65 20 65 6e 74 72 79 20 77 69 74 68 20 64 61 74 61 20 66 72 6f 6d 20 74 68 65 20 73 65 72 76 he.entry.with.data.from.the.serv
d6c0 65 72 2e 0a 49 66 20 53 4b 49 50 2d 45 58 50 4f 52 54 20 69 73 20 6e 6f 74 20 6e 69 6c 2c 20 64 er..If.SKIP-EXPORT.is.not.nil,.d
d6e0 6f 6e e2 80 99 74 20 6f 76 65 72 77 72 69 74 65 20 74 68 65 20 65 76 65 6e 74 20 6f 6e 20 74 68 on...t.overwrite.the.event.on.th
d700 65 20 73 65 72 76 65 72 2e 0a 46 6f 72 20 76 61 6c 69 64 20 76 61 6c 75 65 73 20 6f 66 20 45 58 e.server..For.valid.values.of.EX
d720 49 53 54 49 4e 47 2d 4d 4f 44 45 20 73 65 65 0a e2 80 98 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e 61 ISTING-MODE.see....org-gcal-mana
d740 67 65 64 2d 70 6f 73 74 2d 61 74 2d 70 6f 69 6e 74 2d 75 70 64 61 74 65 2d 65 78 69 73 74 69 6e ged-post-at-point-update-existin
d760 67 27 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 73 61 76 65 2d 65 78 63 g'."...(interactive)...(save-exc
d780 75 72 73 69 6f 6e 0a 20 20 20 20 3b 3b 20 50 6f 73 74 20 65 6e 74 72 79 20 61 74 20 70 6f 69 6e ursion.....;;.Post.entry.at.poin
d7a0 74 20 69 6e 20 6f 72 67 2d 61 67 65 6e 64 61 20 62 75 66 66 65 72 2e 0a 20 20 20 20 28 77 68 65 t.in.org-agenda.buffer......(whe
d7c0 6e 20 28 65 71 20 6d 61 6a 6f 72 2d 6d 6f 64 65 20 27 6f 72 67 2d 61 67 65 6e 64 61 2d 6d 6f 64 n.(eq.major-mode.'org-agenda-mod
d7e0 65 29 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 6d 20 28 6f 72 67 2d 67 65 74 2d 61 74 2d 62 6f e).......(let.((m.(org-get-at-bo
d800 6c 20 27 6f 72 67 2d 68 64 2d 6d 61 72 6b 65 72 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 l.'org-hd-marker))).........(set
d820 2d 62 75 66 66 65 72 20 28 6d 61 72 6b 65 72 2d 62 75 66 66 65 72 20 6d 29 29 0a 20 20 20 20 20 -buffer.(marker-buffer.m))......
d840 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 6d 61 72 6b 65 72 2d 70 6f 73 69 74 69 6f 6e 20 6d ...(goto-char.(marker-position.m
d860 29 29 29 29 0a 20 20 20 20 28 65 6e 64 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20 20 28 6f 72 67 2d )))).....(end-of-line).....(org-
d880 67 63 61 6c 2d 2d 62 61 63 6b 2d 74 6f 2d 68 65 61 64 69 6e 67 29 0a 20 20 20 20 28 6c 65 74 2a gcal--back-to-heading).....(let*
d8a0 20 28 28 73 6b 69 70 2d 69 6d 70 6f 72 74 20 73 6b 69 70 2d 69 6d 70 6f 72 74 29 0a 20 20 20 20 .((skip-import.skip-import).....
d8c0 20 20 20 20 20 20 20 28 73 6b 69 70 2d 65 78 70 6f 72 74 20 73 6b 69 70 2d 65 78 70 6f 72 74 29 .......(skip-export.skip-export)
d8e0 0a 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 72 6b 65 72 20 28 70 6f 69 6e 74 2d 6d 61 72 6b 65 ............(marker.(point-marke
d900 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 65 6c 65 6d 20 28 6f 72 67 2d 65 6c 65 6d 65 6e r))............(elem.(org-elemen
d920 74 2d 68 65 61 64 6c 69 6e 65 2d 70 61 72 73 65 72 20 28 70 6f 69 6e 74 2d 6d 61 78 29 20 74 29 t-headline-parser.(point-max).t)
d940 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 6d 72 79 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 68 65 )............(smry.(org-gcal--he
d960 61 64 6c 69 6e 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 6c 6f 63 20 28 6f 72 67 2d 65 6e adline))............(loc.(org-en
d980 74 72 79 2d 67 65 74 20 28 70 6f 69 6e 74 29 20 22 4c 4f 43 41 54 49 4f 4e 22 29 29 0a 20 20 20 try-get.(point)."LOCATION"))....
d9a0 20 20 20 20 20 20 20 20 28 73 6f 75 72 63 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 ........(source.............(whe
d9c0 6e 2d 6c 65 74 20 28 28 6c 69 6e 6b 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 n-let.((link-string.............
d9e0 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 65 74 20 28 ............(or.(org-entry-get.(
da00 70 6f 69 6e 74 29 20 22 6c 69 6e 6b 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 point)."link")..................
da20 20 20 20 20 20 20 20 20 20 20 20 28 6e 74 68 20 30 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........(nth.0...............
da40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 65 ...................(org-entry-ge
da60 74 2d 6d 75 6c 74 69 76 61 6c 75 65 64 2d 70 72 6f 70 65 72 74 79 0a 20 20 20 20 20 20 20 20 20 t-multivalued-property..........
da80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6f 69 6e 74 29 .........................(point)
daa0 20 22 52 4f 41 4d 5f 52 45 46 53 22 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ."ROAM_REFS")))))...............
dac0 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 6f 75 72 63 65 2d 66 72 6f 6d 2d 6c 69 6e 6b 2d 73 74 72 69 (org-gcal--source-from-link-stri
dae0 6e 67 20 6c 69 6e 6b 2d 73 74 72 69 6e 67 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 74 72 ng.link-string)))............(tr
db00 61 6e 73 70 61 72 65 6e 63 79 20 28 6f 72 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 65 74 20 28 70 ansparency.(or.(org-entry-get.(p
db20 6f 69 6e 74 29 20 22 54 52 41 4e 53 50 41 52 45 4e 43 59 22 29 0a 20 20 20 20 20 20 20 20 20 20 oint)."TRANSPARENCY")...........
db40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 67 2d 67 63 61 6c 2d 64 65 66 61 ...................org-gcal-defa
db60 75 6c 74 2d 74 72 61 6e 73 70 61 72 65 6e 63 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 72 ult-transparency))............(r
db80 65 63 75 72 72 65 6e 63 65 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 65 74 20 28 70 6f 69 6e 74 29 ecurrence.(org-entry-get.(point)
dba0 20 22 72 65 63 75 72 72 65 6e 63 65 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 65 76 65 6e ."recurrence"))............(even
dbc0 74 2d 69 64 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 67 65 74 2d 69 64 20 28 70 6f 69 6e 74 29 29 29 t-id.(org-gcal--get-id.(point)))
dbe0 0a 20 20 20 20 20 20 20 20 20 20 20 28 65 74 61 67 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 65 74 ............(etag.(org-entry-get
dc00 20 28 70 6f 69 6e 74 29 20 6f 72 67 2d 67 63 61 6c 2d 65 74 61 67 2d 70 72 6f 70 65 72 74 79 29 .(point).org-gcal-etag-property)
dc20 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 6e 61 67 65 64 20 28 6f 72 67 2d 65 6e 74 72 79 )............(managed.(org-entry
dc40 2d 67 65 74 20 28 70 6f 69 6e 74 29 20 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e 61 67 65 64 2d 70 72 -get.(point).org-gcal-managed-pr
dc60 6f 70 65 72 74 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 63 61 6c 65 6e 64 61 72 2d 69 64 operty))............(calendar-id
dc80 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 65 74 20 28 70 6f 69 .............(org-entry-get.(poi
dca0 6e 74 29 20 6f 72 67 2d 67 63 61 6c 2d 63 61 6c 65 6e 64 61 72 2d 69 64 2d 70 72 6f 70 65 72 74 nt).org-gcal-calendar-id-propert
dcc0 79 29 29 29 0a 20 20 20 20 20 20 3b 3b 20 53 65 74 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 6d 61 y))).......;;.Set....org-gcal-ma
dce0 6e 61 67 65 64 2d 70 72 6f 70 65 72 74 79 e2 80 99 20 69 66 20 6e 6f 74 20 70 72 65 73 65 6e 74 naged-property....if.not.present
dd00 2e 0a 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 61 6e 64 20 6d 61 6e 61 67 65 64 20 28 6d 65 ........(unless.(and.managed.(me
dd20 6d 62 65 72 20 6d 61 6e 61 67 65 64 20 27 28 22 6f 72 67 22 20 22 67 63 61 6c 22 29 29 29 0a 20 mber.managed.'("org"."gcal")))..
dd40 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 78 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 .......(let.((x................(
dd60 69 66 20 28 61 6e 64 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 65 6e 74 2d 69 64 29 0a 20 20 if.(and.calendar-id.event-id)...
dd80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e 61 67 65 .................org-gcal-manage
dda0 64 2d 75 70 64 61 74 65 2d 65 78 69 73 74 69 6e 67 2d 6d 6f 64 65 0a 20 20 20 20 20 20 20 20 20 d-update-existing-mode..........
ddc0 20 20 20 20 20 20 20 20 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e 61 67 65 64 2d 63 72 65 61 74 65 2d ........org-gcal-managed-create-
dde0 66 72 6f 6d 2d 65 6e 74 72 79 2d 6d 6f 64 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 6f 72 from-entry-mode)))...........(or
de00 67 2d 65 6e 74 72 79 2d 70 75 74 20 28 70 6f 69 6e 74 29 20 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e g-entry-put.(point).org-gcal-man
de20 61 67 65 64 2d 70 72 6f 70 65 72 74 79 20 78 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 aged-property.x)...........(setq
de40 20 6d 61 6e 61 67 65 64 20 78 29 29 29 0a 20 20 20 20 20 20 3b 3b 20 46 69 6c 6c 20 69 6e 20 43 .managed.x))).......;;.Fill.in.C
de60 61 6c 65 6e 64 61 72 20 49 44 20 69 66 20 6e 6f 74 20 61 6c 72 65 61 64 79 20 70 72 65 73 65 6e alendar.ID.if.not.already.presen
de80 74 2e 0a 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 63 61 6c 65 6e 64 61 72 2d 69 64 0a 20 20 20 t........(unless.calendar-id....
dea0 20 20 20 20 20 28 73 65 74 71 20 63 61 6c 65 6e 64 61 72 2d 69 64 0a 20 20 20 20 20 20 20 20 20 .....(setq.calendar-id..........
dec0 20 20 20 20 20 3b 3b 20 43 6f 6d 70 6c 65 74 65 73 20 72 65 61 64 20 77 69 74 68 20 70 72 6f 6d .....;;.Completes.read.with.prom
dee0 70 74 73 20 6c 69 6b 65 20 22 43 41 4c 45 4e 44 41 52 2d 46 49 4c 45 20 28 43 41 4c 45 4e 44 41 pts.like."CALENDAR-FILE.(CALENDA
df00 52 2d 49 44 29 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 61 6e 64 20 74 68 65 R-ID)",...............;;.and.the
df20 6e 20 75 73 65 73 20 e2 80 98 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 n.uses....replace-regexp-in-stri
df40 6e 67 e2 80 99 20 74 6f 20 65 78 74 72 61 63 74 20 6a 75 73 74 0a 20 20 20 20 20 20 20 20 20 20 ng....to.extract.just...........
df60 20 20 20 20 3b 3b 20 43 41 4c 45 4e 44 41 52 2d 49 44 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 ....;;.CALENDAR-ID..............
df80 20 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 0a 20 20 20 20 ..(replace-regexp-in-string.....
dfa0 20 20 20 20 20 20 20 20 20 20 20 22 2e 2a 28 5c 5c 28 2e 2a 3f 5c 5c 29 29 24 22 20 22 5c 5c 31 ...........".*(\\(.*?\\))$"."\\1
dfc0 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6d 70 6c 65 74 69 6e 67 2d 72 65 61 "................(completing-rea
dfe0 64 20 22 43 61 6c 65 6e 64 61 72 20 49 44 3a 20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 d."Calendar.ID:."...............
e000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 61 72 0a 20 20 20 20 20 20 ..................(mapcar.......
e020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 ...........................(lamb
e040 64 61 20 28 78 29 20 28 66 6f 72 6d 61 74 20 22 25 73 20 28 25 73 29 22 20 28 63 64 72 20 78 29 da.(x).(format."%s.(%s)".(cdr.x)
e060 20 28 63 61 72 20 78 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(car.x)))......................
e080 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 67 2d 67 63 61 6c 2d 66 65 74 63 68 2d 66 69 6c 65 2d ............org-gcal-fetch-file-
e0a0 61 6c 69 73 74 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 6f 72 67 2d 65 6e 74 72 79 2d 70 75 74 alist)))).........(org-entry-put
e0c0 20 28 70 6f 69 6e 74 29 20 6f 72 67 2d 67 63 61 6c 2d 63 61 6c 65 6e 64 61 72 2d 69 64 2d 70 72 .(point).org-gcal-calendar-id-pr
e0e0 6f 70 65 72 74 79 20 63 61 6c 65 6e 64 61 72 2d 69 64 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e operty.calendar-id)).......(when
e100 20 28 65 71 75 61 6c 20 6d 61 6e 61 67 65 64 20 22 67 63 61 6c 22 29 0a 20 20 20 20 20 20 20 20 .(equal.managed."gcal").........
e120 28 75 6e 6c 65 73 73 20 65 78 69 73 74 69 6e 67 2d 6d 6f 64 65 0a 20 20 20 20 20 20 20 20 20 20 (unless.existing-mode...........
e140 28 73 65 74 71 20 65 78 69 73 74 69 6e 67 2d 6d 6f 64 65 20 6f 72 67 2d 67 63 61 6c 2d 6d 61 6e (setq.existing-mode.org-gcal-man
e160 61 67 65 64 2d 70 6f 73 74 2d 61 74 2d 70 6f 69 6e 74 2d 75 70 64 61 74 65 2d 65 78 69 73 74 69 aged-post-at-point-update-existi
e180 6e 67 29 29 0a 20 20 20 20 20 20 20 20 28 70 63 61 73 65 20 65 78 69 73 74 69 6e 67 2d 6d 6f 64 ng)).........(pcase.existing-mod
e1a0 65 0a 20 20 20 20 20 20 20 20 20 20 28 27 6e 65 76 65 72 2d 70 75 73 68 0a 20 20 20 20 20 20 20 e...........('never-push........
e1c0 20 20 20 20 28 73 65 74 71 20 73 6b 69 70 2d 65 78 70 6f 72 74 20 74 29 29 0a 20 20 20 20 20 20 ....(setq.skip-export.t)).......
e1e0 20 20 20 20 3b 3b 20 50 52 4f 4d 50 54 20 61 6e 64 20 50 52 4f 4d 50 54 2d 53 59 4e 43 20 61 72 ....;;.PROMPT.and.PROMPT-SYNC.ar
e200 65 20 68 61 6e 64 6c 65 64 20 69 64 65 6e 74 69 63 61 6c 6c 79 20 68 65 72 65 2e 20 57 68 65 6e e.handled.identically.here..When
e220 20 73 79 6e 63 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 50 52 4f 4d 50 54 20 69 73 20 .syncing...........;;.PROMPT.is.
e240 6d 61 70 70 65 64 20 74 6f 20 4e 45 56 45 52 2d 50 55 53 48 20 69 6e 20 74 68 65 20 63 61 6c 6c mapped.to.NEVER-PUSH.in.the.call
e260 69 6e 67 20 66 75 6e 63 74 69 6f 6e 2c 20 77 68 69 6c 65 0a 20 20 20 20 20 20 20 20 20 20 3b 3b ing.function,.while...........;;
e280 20 50 52 4f 4d 50 54 2d 53 59 4e 43 20 69 73 20 6c 65 66 74 20 75 6e 63 68 61 6e 67 65 64 2e 0a .PROMPT-SYNC.is.left.unchanged..
e2a0 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4f 6e 6c 79 20 77 68 65 6e 20 6d 61 6e 75 61 6c 6c 79 20 ..........;;.Only.when.manually.
e2c0 72 75 6e 6e 69 6e 67 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 70 6f 73 74 2d 61 74 2d 70 6f 69 6e running....org-gcal-post-at-poin
e2e0 74 e2 80 99 20 73 68 6f 75 6c 64 20 50 52 4f 4d 50 54 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 t....should.PROMPT...........;;.
e300 62 65 20 73 65 65 6e 20 68 65 72 65 2e 0a 20 20 20 20 20 20 20 20 20 20 28 28 6f 72 20 27 70 72 be.seen.here............((or.'pr
e320 6f 6d 70 74 20 27 70 72 6f 6d 70 74 2d 73 79 6e 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 75 ompt.'prompt-sync)............(u
e340 6e 6c 65 73 73 20 28 79 2d 6f 72 2d 6e 2d 70 20 28 66 6f 72 6d 61 74 20 22 50 75 73 68 20 65 76 nless.(y-or-n-p.(format."Push.ev
e360 65 6e 74 20 74 6f 20 47 6f 6f 67 6c 65 20 43 61 6c 65 6e 64 61 72 3f 5c 6e 5c 6e 25 73 5c 6e 5c ent.to.Google.Calendar?\n\n%s\n\
e380 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 n"..............................
e3a0 20 20 20 20 20 20 20 20 73 6d 72 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 ........smry))..............(set
e3c0 71 20 73 6b 69 70 2d 65 78 70 6f 72 74 20 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 27 61 q.skip-export.t)))...........('a
e3e0 6c 77 61 79 73 2d 70 75 73 68 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 28 76 61 6c 0a 20 lways-push.nil)...........(val..
e400 20 20 20 20 20 20 20 20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22 42 61 64 20 76 61 6c 75 65 ..........(user-error."Bad.value
e420 20 25 53 20 6f 66 20 45 58 49 53 54 49 4e 47 2d 4d 4f 44 45 20 70 61 73 73 65 64 20 74 6f 20 e2 .%S.of.EXISTING-MODE.passed.to..
e440 80 98 6f 72 67 2d 67 63 61 6c 2d 70 6f 73 74 2d 61 74 2d 70 6f 69 6e 74 e2 80 99 2e 20 46 6f 72 ..org-gcal-post-at-point.....For
e460 20 76 61 6c 69 64 20 76 61 6c 75 65 73 20 73 65 65 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 6d 61 .valid.values.see....org-gcal-ma
e480 6e 61 67 65 64 2d 70 6f 73 74 2d 61 74 2d 70 6f 69 6e 74 2d 75 70 64 61 74 65 2d 65 78 69 73 74 naged-post-at-point-update-exist
e4a0 69 6e 67 e2 80 99 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ing...."........................
e4c0 76 61 6c 29 29 29 29 0a 20 20 20 20 20 20 3b 3b 20 52 65 61 64 20 63 75 72 72 65 6e 74 6c 79 2d val)))).......;;.Read.currently-
e4e0 70 72 65 73 65 6e 74 20 73 74 61 72 74 20 61 6e 64 20 65 6e 64 20 74 69 6d 65 73 20 61 6e 64 20 present.start.and.end.times.and.
e500 64 65 73 63 72 69 70 74 69 6f 6e 2e 20 46 69 6c 6c 20 69 6e 20 61 0a 20 20 20 20 20 20 3b 3b 20 description..Fill.in.a.......;;.
e520 72 65 61 73 6f 6e 61 62 6c 65 20 73 74 61 72 74 20 61 6e 64 20 65 6e 64 20 74 69 6d 65 20 69 66 reasonable.start.and.end.time.if
e540 20 65 69 74 68 65 72 20 69 73 20 6d 69 73 73 69 6e 67 2e 0a 20 20 20 20 20 20 28 6c 65 74 2a 20 .either.is.missing........(let*.
e560 28 28 74 69 6d 65 2d 64 65 73 63 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 67 65 74 2d 74 69 6d 65 2d ((time-desc.(org-gcal--get-time-
e580 61 6e 64 2d 64 65 73 63 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 61 72 74 20 28 and-desc))..............(start.(
e5a0 70 6c 69 73 74 2d 67 65 74 20 74 69 6d 65 2d 64 65 73 63 20 3a 73 74 61 72 74 29 29 0a 20 20 20 plist-get.time-desc.:start))....
e5c0 20 20 20 20 20 20 20 20 20 20 28 65 6e 64 20 28 70 6c 69 73 74 2d 67 65 74 20 74 69 6d 65 2d 64 ..........(end.(plist-get.time-d
e5e0 65 73 63 20 3a 65 6e 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 73 63 20 28 70 esc.:end))..............(desc.(p
e600 6c 69 73 74 2d 67 65 74 20 74 69 6d 65 2d 64 65 73 63 20 3a 64 65 73 63 29 29 29 0a 20 20 20 20 list-get.time-desc.:desc))).....
e620 20 20 20 20 28 75 6e 6c 65 73 73 20 65 6e 64 0a 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 ....(unless.end...........(let*.
e640 28 28 73 74 61 72 74 2d 74 69 6d 65 20 28 6f 72 20 73 74 61 72 74 20 28 6f 72 67 2d 72 65 61 64 ((start-time.(or.start.(org-read
e660 2d 64 61 74 65 20 27 77 69 74 68 2d 74 69 6d 65 20 27 74 6f 2d 74 69 6d 65 29 29 29 0a 20 20 20 -date.'with-time.'to-time)))....
e680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 69 6e 2d 64 75 72 61 74 69 6f 6e 20 35 29 0a 20 ..............(min-duration.5)..
e6a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 73 6f 6c 75 74 69 6f 6e 20 35 29 0a 20 ................(resolution.5)..
e6c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 75 72 61 74 69 6f 6e 2d 64 65 66 61 75 6c ................(duration-defaul
e6e0 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 64 75 72 61 74 69 6f t...................(org-duratio
e700 6e 2d 66 72 6f 6d 2d 6d 69 6e 75 74 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 n-from-minutes..................
e720 20 20 28 6d 61 78 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 69 6e 2d 64 ..(max.....................min-d
e740 75 72 61 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 52 uration.....................;;.R
e760 6f 75 6e 64 20 75 70 20 74 6f 20 74 68 65 20 6e 65 61 72 65 73 74 20 6d 75 6c 74 69 70 6c 65 20 ound.up.to.the.nearest.multiple.
e780 6f 66 20 e2 80 98 72 65 73 6f 6c 75 74 69 6f 6e e2 80 99 20 6d 69 6e 75 74 65 73 2e 0a 20 20 20 of....resolution....minutes.....
e7a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 20 72 65 73 6f 6c 75 74 69 6f 6e 0a 20 .................(*.resolution..
e7c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 65 69 6c 69 6e 67 0a 20 ......................(ceiling..
e7e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2f 20 28 2d 20 28 6f 72 .......................(/.(-.(or
e800 67 2d 64 75 72 61 74 69 6f 6e 2d 74 6f 2d 6d 69 6e 75 74 65 73 0a 20 20 20 20 20 20 20 20 20 20 g-duration-to-minutes...........
e820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 6f 72 67 2d 65 6c .....................(or.(org-el
e840 65 6d 65 6e 74 2d 70 72 6f 70 65 72 74 79 20 3a 45 46 46 4f 52 54 20 65 6c 65 6d 29 20 22 30 3a ement-property.:EFFORT.elem)."0:
e860 30 30 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00"))...........................
e880 20 20 20 20 28 6f 72 67 2d 63 6c 6f 63 6b 2d 73 75 6d 2d 63 75 72 72 65 6e 74 2d 69 74 65 6d 29 ....(org-clock-sum-current-item)
e8a0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 73 )............................res
e8c0 6f 6c 75 74 69 6f 6e 29 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 olution))))))..................(
e8e0 64 75 72 61 74 69 6f 6e 20 28 72 65 61 64 2d 66 72 6f 6d 2d 6d 69 6e 69 62 75 66 66 65 72 20 22 duration.(read-from-minibuffer."
e900 44 75 72 61 74 69 6f 6e 3a 20 22 20 64 75 72 61 74 69 6f 6e 2d 64 65 66 61 75 6c 74 29 29 0a 20 Duration:.".duration-default))..
e920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 75 72 61 74 69 6f 6e 2d 6d 69 6e 75 74 65 ................(duration-minute
e940 73 20 28 6f 72 67 2d 64 75 72 61 74 69 6f 6e 2d 74 6f 2d 6d 69 6e 75 74 65 73 20 64 75 72 61 74 s.(org-duration-to-minutes.durat
e960 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 75 72 61 74 69 6f 6e ion))..................(duration
e980 2d 73 65 63 6f 6e 64 73 20 28 2a 20 36 30 20 64 75 72 61 74 69 6f 6e 2d 6d 69 6e 75 74 65 73 29 -seconds.(*.60.duration-minutes)
e9a0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6e 64 2d 74 69 6d 65 20 28 74 69 )..................(end-time.(ti
e9c0 6d 65 2d 61 64 64 20 73 74 61 72 74 2d 74 69 6d 65 20 64 75 72 61 74 69 6f 6e 2d 73 65 63 6f 6e me-add.start-time.duration-secon
e9e0 64 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 73 74 61 72 74 20 28 6f ds))).............(setq.start.(o
ea00 72 67 2d 67 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 74 69 6d 65 32 69 73 6f 20 73 74 61 72 74 2d 74 rg-gcal--format-time2iso.start-t
ea20 69 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 64 20 28 6f 72 67 2d ime)...................end.(org-
ea40 67 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 74 69 6d 65 32 69 73 6f 20 65 6e 64 2d 74 69 6d 65 29 29 gcal--format-time2iso.end-time))
ea60 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 72 65 63 75 72 72 65 6e 63 65 0a 20 20 20 20 )).........(when.recurrence.....
ea80 20 20 20 20 20 20 28 73 65 74 71 20 73 74 61 72 74 20 6e 69 6c 20 65 6e 64 20 6e 69 6c 29 29 0a ......(setq.start.nil.end.nil)).
eaa0 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 70 6f 73 74 2d 65 76 65 6e 74 20 73 74 ........(org-gcal--post-event.st
eac0 61 72 74 20 65 6e 64 20 73 6d 72 79 20 6c 6f 63 20 73 6f 75 72 63 65 20 64 65 73 63 20 63 61 6c art.end.smry.loc.source.desc.cal
eae0 65 6e 64 61 72 2d 69 64 20 6d 61 72 6b 65 72 20 74 72 61 6e 73 70 61 72 65 6e 63 79 20 65 74 61 endar-id.marker.transparency.eta
eb00 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 g...............................
eb20 65 76 65 6e 74 2d 69 64 20 6e 69 6c 20 73 6b 69 70 2d 69 6d 70 6f 72 74 20 73 6b 69 70 2d 65 78 event-id.nil.skip-import.skip-ex
eb40 70 6f 72 74 29 29 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e port)))))..;;;###autoload.(defun
eb60 20 6f 72 67 2d 67 63 61 6c 2d 64 65 6c 65 74 65 2d 61 74 2d 70 6f 69 6e 74 20 28 26 6f 70 74 69 .org-gcal-delete-at-point.(&opti
eb80 6f 6e 61 6c 20 63 6c 65 61 72 2d 67 63 61 6c 2d 69 6e 66 6f 29 0a 20 20 22 44 65 6c 65 74 65 20 onal.clear-gcal-info)..."Delete.
eba0 65 6e 74 72 79 20 61 74 20 70 6f 69 6e 74 20 74 6f 20 63 75 72 72 65 6e 74 20 63 61 6c 65 6e 64 entry.at.point.to.current.calend
ebc0 61 72 2e 0a 0a 49 66 20 63 61 6c 6c 65 64 20 77 69 74 68 20 70 72 65 66 69 78 20 6f 72 20 77 69 ar...If.called.with.prefix.or.wi
ebe0 74 68 20 43 4c 45 41 52 2d 47 43 41 4c 2d 49 4e 46 4f 20 6e 6f 6e 2d 6e 69 6c 2c 20 77 69 6c 6c th.CLEAR-GCAL-INFO.non-nil,.will
ec00 20 63 6c 65 61 72 20 63 61 6c 65 6e 64 61 72 20 69 6e 66 6f 0a 66 72 6f 6d 20 74 68 65 20 65 6e .clear.calendar.info.from.the.en
ec20 74 72 79 20 65 76 65 6e 20 69 66 20 64 65 6c 65 74 69 6e 67 20 74 68 65 20 65 76 65 6e 74 20 66 try.even.if.deleting.the.event.f
ec40 72 6f 6d 20 74 68 65 20 73 65 72 76 65 72 20 66 61 69 6c 73 2e 20 20 55 73 65 20 74 68 69 73 20 rom.the.server.fails...Use.this.
ec60 74 6f 0a 64 65 6c 65 74 65 20 63 61 6c 65 6e 64 61 72 20 69 6e 66 6f 20 66 72 6f 6d 20 65 76 65 to.delete.calendar.info.from.eve
ec80 6e 74 73 20 6f 6e 20 63 61 6c 65 6e 64 61 72 73 20 79 6f 75 20 6e 6f 20 6c 6f 6e 67 65 72 20 68 nts.on.calendars.you.no.longer.h
eca0 61 76 65 20 61 63 63 65 73 73 20 74 6f 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 20 22 ave.access.to."...(interactive."
ecc0 50 22 29 0a 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 3b 3b 20 44 65 6c P")...(save-excursion.....;;.Del
ece0 65 74 65 20 65 6e 74 72 79 20 61 74 20 70 6f 69 6e 74 20 69 6e 20 6f 72 67 2d 61 67 65 6e 64 61 ete.entry.at.point.in.org-agenda
ed00 20 62 75 66 66 65 72 2e 0a 20 20 20 20 28 77 68 65 6e 20 28 65 71 20 6d 61 6a 6f 72 2d 6d 6f 64 .buffer......(when.(eq.major-mod
ed20 65 20 27 6f 72 67 2d 61 67 65 6e 64 61 2d 6d 6f 64 65 29 0a 20 20 20 20 20 20 28 6c 65 74 20 28 e.'org-agenda-mode).......(let.(
ed40 28 6d 20 28 6f 72 67 2d 67 65 74 2d 61 74 2d 62 6f 6c 20 27 6f 72 67 2d 68 64 2d 6d 61 72 6b 65 (m.(org-get-at-bol.'org-hd-marke
ed60 72 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 2d 62 75 66 66 65 72 20 28 6d 61 72 6b 65 72 r))).........(set-buffer.(marker
ed80 2d 62 75 66 66 65 72 20 6d 29 29 0a 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 -buffer.m)).........(goto-char.(
eda0 6d 61 72 6b 65 72 2d 70 6f 73 69 74 69 6f 6e 20 6d 29 29 29 29 0a 20 20 20 20 28 65 6e 64 2d 6f marker-position.m)))).....(end-o
edc0 66 2d 6c 69 6e 65 29 0a 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 62 61 63 6b 2d 74 6f 2d 68 f-line).....(org-gcal--back-to-h
ede0 65 61 64 69 6e 67 29 0a 20 20 20 20 28 6c 65 74 2a 20 28 28 6d 61 72 6b 65 72 20 28 70 6f 69 6e eading).....(let*.((marker.(poin
ee00 74 2d 6d 61 72 6b 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 6d 72 79 20 28 6f 72 67 t-marker))............(smry.(org
ee20 2d 67 63 61 6c 2d 2d 68 65 61 64 6c 69 6e 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 65 76 -gcal--headline))............(ev
ee40 65 6e 74 2d 69 64 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 67 65 74 2d 69 64 20 28 70 6f 69 6e 74 29 ent-id.(org-gcal--get-id.(point)
ee60 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 65 74 61 67 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 ))............(etag.(org-entry-g
ee80 65 74 20 28 70 6f 69 6e 74 29 20 6f 72 67 2d 67 63 61 6c 2d 65 74 61 67 2d 70 72 6f 70 65 72 74 et.(point).org-gcal-etag-propert
eea0 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 63 61 6c 65 6e 64 61 72 2d 69 64 0a 20 20 20 20 y))............(calendar-id.....
eec0 20 20 20 20 20 20 20 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 65 74 20 28 70 6f 69 6e 74 29 20 6f ........(org-entry-get.(point).o
eee0 72 67 2d 67 63 61 6c 2d 63 61 6c 65 6e 64 61 72 2d 69 64 2d 70 72 6f 70 65 72 74 79 29 29 0a 20 rg-gcal-calendar-id-property))..
ef00 20 20 20 20 20 20 20 20 20 20 28 64 65 6c 65 74 65 2d 65 72 72 6f 72 29 29 0a 20 20 20 20 20 20 ..........(delete-error)).......
ef20 28 69 66 20 28 61 6e 64 20 65 76 65 6e 74 2d 69 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (if.(and.event-id...............
ef40 20 28 79 2d 6f 72 2d 6e 2d 70 20 28 66 6f 72 6d 61 74 20 22 44 6f 20 79 6f 75 20 72 65 61 6c 6c .(y-or-n-p.(format."Do.you.reall
ef60 79 20 77 61 6e 74 20 74 6f 20 64 65 6c 65 74 65 20 65 76 65 6e 74 3f 5c 6e 5c 6e 25 73 5c 6e 5c y.want.to.delete.event?\n\n%s\n\
ef80 6e 22 20 73 6d 72 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 74 n".smry)))...........(deferred:t
efa0 72 79 0a 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 64 65 6c 65 74 65 2d ry............(org-gcal--delete-
efc0 65 76 65 6e 74 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 65 6e 74 2d 69 64 20 65 74 61 67 20 event.calendar-id.event-id.etag.
efe0 28 63 6f 70 79 2d 6d 61 72 6b 65 72 20 6d 61 72 6b 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 (copy-marker.marker))...........
f000 20 3a 63 61 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 65 72 72 29 .:catch............(lambda.(err)
f020 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 53 65 74 74 69 6e 67 20 ..............(message."Setting.
f040 64 65 6c 65 74 65 2d 65 72 72 6f 72 20 74 6f 20 25 53 22 20 65 72 72 29 0a 20 20 20 20 20 20 20 delete-error.to.%S".err)........
f060 20 20 20 20 20 20 28 73 65 74 71 20 64 65 6c 65 74 65 2d 65 72 72 6f 72 20 65 72 72 29 29 0a 20 ......(setq.delete-error.err))..
f080 20 20 20 20 20 20 20 20 20 20 3a 66 69 6e 61 6c 6c 79 0a 20 20 20 20 20 20 20 20 20 20 20 28 6c ..........:finally............(l
f0a0 61 6d 62 64 61 20 28 5f 75 6e 75 73 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 ambda.(_unused)..............;;.
f0c0 4f 6e 6c 79 20 63 6c 65 61 72 20 6f 72 67 2d 67 63 61 6c 20 66 72 6f 6d 20 68 65 61 64 6c 69 6e Only.clear.org-gcal.from.headlin
f0e0 65 20 69 66 20 73 75 63 63 65 73 73 66 75 6c 20 6f 72 20 77 65 20 77 65 72 65 0a 20 20 20 20 20 e.if.successful.or.we.were......
f100 20 20 20 20 20 20 20 20 3b 3b 20 66 6f 72 63 65 64 20 74 6f 2e 0a 20 20 20 20 20 20 20 20 20 20 ........;;.forced.to............
f120 20 20 20 28 6d 65 73 73 61 67 65 20 22 63 6c 65 61 72 2d 67 63 61 6c 2d 69 6e 66 6f 20 64 65 6c ...(message."clear-gcal-info.del
f140 65 74 65 2d 65 72 72 6f 72 3a 20 25 53 20 25 53 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ete-error:.%S.%S"...............
f160 20 20 20 20 20 20 20 20 63 6c 65 61 72 2d 67 63 61 6c 2d 69 6e 66 6f 20 64 65 6c 65 74 65 2d 65 ........clear-gcal-info.delete-e
f180 72 72 6f 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 6f 72 20 63 6c 65 rror)..............(when.(or.cle
f1a0 61 72 2d 67 63 61 6c 2d 69 6e 66 6f 20 28 6e 75 6c 6c 20 64 65 6c 65 74 65 2d 65 72 72 6f 72 29 ar-gcal-info.(null.delete-error)
f1c0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 44 65 6c 65 74 65 20 3a 6f 72 67 2d )................;;.Delete.:org-
f1e0 67 63 61 6c 3a 20 64 72 61 77 65 72 20 61 66 74 65 72 20 64 65 6c 65 74 69 6e 67 20 65 76 65 6e gcal:.drawer.after.deleting.even
f200 74 2e 20 54 68 69 73 20 77 69 6c 6c 20 70 72 65 73 65 72 76 65 0a 20 20 20 20 20 20 20 20 20 20 t..This.will.preserve...........
f220 20 20 20 20 20 3b 3b 20 74 68 65 20 49 44 20 66 6f 72 20 6c 69 6e 6b 73 2c 20 62 75 74 20 77 69 .....;;.the.ID.for.links,.but.wi
f240 6c 6c 20 65 6e 73 75 72 65 20 66 75 6e 63 74 69 6f 6e 73 20 69 6e 20 74 68 69 73 20 6d 6f 64 75 ll.ensure.functions.in.this.modu
f260 6c 65 20 64 6f 6e e2 80 99 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 69 64 65 le.don...t................;;.ide
f280 6e 74 69 66 79 20 74 68 65 20 65 6e 74 72 79 20 61 73 20 61 20 43 61 6c 65 6e 64 61 72 20 65 76 ntify.the.entry.as.a.Calendar.ev
f2a0 65 6e 74 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 77 69 74 68 2d 70 6f ent.................(org-with-po
f2c0 69 6e 74 2d 61 74 20 6d 61 72 6b 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 int-at.marker..................(
f2e0 77 68 65 6e 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 0a 20 20 20 20 20 20 20 20 when.(re-search-forward.........
f300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 0a 20 20 20 20 20 20 20 20 ................(format.........
f320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5e 5b 20 5c 74 5d 2a 3a 25 73 3a 5b 5e 7a ................."^[.\t]*:%s:[^z
f340 2d 61 5d 2a 3f 5c 6e 5b 20 5c 74 5d 2a 3a 45 4e 44 3a 5b 20 5c 74 5d 2a 5c 6e 3f 22 0a 20 20 20 -a]*?\n[.\t]*:END:[.\t]*\n?"....
f360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 67 65 78 70 2d 71 75 ......................(regexp-qu
f380 6f 74 65 20 6f 72 67 2d 67 63 61 6c 2d 64 72 61 77 65 72 2d 6e 61 6d 65 29 29 0a 20 20 20 20 20 ote.org-gcal-drawer-name))......
f3a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 ...................(save-excursi
f3c0 6f 6e 20 28 6f 75 74 6c 69 6e 65 2d 6e 65 78 74 2d 68 65 61 64 69 6e 67 29 20 28 70 6f 69 6e 74 on.(outline-next-heading).(point
f3e0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 6e 6f 65 72 )).........................'noer
f400 72 6f 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 70 6c 61 63 65 ror)....................(replace
f420 2d 6d 61 74 63 68 20 22 22 20 27 66 69 78 65 64 63 61 73 65 29 29 0a 20 20 20 20 20 20 20 20 20 -match."".'fixedcase))..........
f440 20 20 20 20 20 20 20 20 28 6f 72 67 2d 65 6e 74 72 79 2d 64 65 6c 65 74 65 20 6d 61 72 6b 65 72 ........(org-entry-delete.marker
f460 20 6f 72 67 2d 67 63 61 6c 2d 63 61 6c 65 6e 64 61 72 2d 69 64 2d 70 72 6f 70 65 72 74 79 29 0a .org-gcal-calendar-id-property).
f480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 65 6e 74 72 79 2d 64 65 6c 65 .................(org-entry-dele
f4a0 74 65 20 6d 61 72 6b 65 72 20 6f 72 67 2d 67 63 61 6c 2d 65 6e 74 72 79 2d 69 64 2d 70 72 6f 70 te.marker.org-gcal-entry-id-prop
f4c0 65 72 74 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 46 69 6e 61 6c 6c 79 erty))................;;.Finally
f4e0 20 63 61 6e 63 65 6c 20 61 6e 64 20 64 65 6c 65 74 65 20 74 68 65 20 65 76 65 6e 74 20 69 66 20 .cancel.and.delete.the.event.if.
f500 74 68 69 73 20 69 73 20 63 6f 6e 66 69 67 75 72 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 this.is.configured..............
f520 20 20 20 28 6f 72 67 2d 77 69 74 68 2d 70 6f 69 6e 74 2d 61 74 20 6d 61 72 6b 65 72 0a 20 20 20 ...(org-with-point-at.marker....
f540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 62 61 63 6b 2d 74 6f 2d 68 65 61 64 69 ..............(org-back-to-headi
f560 6e 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d ng)..................(org-gcal--
f580 68 61 6e 64 6c 65 2d 63 61 6e 63 65 6c 6c 65 64 2d 65 6e 74 72 79 29 29 29 0a 20 20 20 20 20 20 handle-cancelled-entry))).......
f5a0 20 20 20 20 20 20 20 28 69 66 20 64 65 6c 65 74 65 2d 65 72 72 6f 72 0a 20 20 20 20 20 20 20 20 .......(if.delete-error.........
f5c0 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 6f 72 67 2d 67 63 61 6c 2d 64 65 6c 65 74 65 .........(error."org-gcal-delete
f5e0 2d 61 74 2d 70 6f 69 6e 74 3a 20 66 6f 72 20 25 73 20 25 73 3a 20 65 72 72 6f 72 3a 20 25 53 22 -at-point:.for.%s.%s:.error:.%S"
f600 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 6c 65 6e 64 61 .........................calenda
f620 72 2d 69 64 20 65 76 65 6e 74 2d 69 64 20 64 65 6c 65 74 65 2d 65 72 72 6f 72 29 0a 20 20 20 20 r-id.event-id.delete-error).....
f640 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 20 6e 69 6c ...........(deferred:succeed.nil
f660 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 20 6e )))).........(deferred:succeed.n
f680 69 6c 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 67 65 74 2d 61 63 il)))))..(defun.org-gcal--get-ac
f6a0 63 65 73 73 2d 74 6f 6b 65 6e 20 28 63 61 6c 65 6e 64 61 72 2d 69 64 29 0a 20 20 22 52 65 74 75 cess-token.(calendar-id)..."Retu
f6c0 72 6e 20 74 68 65 20 61 63 63 65 73 73 20 74 6f 6b 65 6e 20 66 6f 72 20 43 41 4c 45 4e 44 41 52 rn.the.access.token.for.CALENDAR
f6e0 2d 49 44 2e 22 0a 20 20 28 61 69 6f 2d 77 61 69 74 2d 66 6f 72 0a 20 20 20 28 6f 61 75 74 68 32 -ID."...(aio-wait-for....(oauth2
f700 2d 61 75 74 6f 2d 61 63 63 65 73 73 2d 74 6f 6b 65 6e 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 27 -auto-access-token.calendar-id.'
f720 6f 72 67 2d 67 63 61 6c 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 72 65 org-gcal)))..(defun.org-gcal--re
f740 66 72 65 73 68 2d 74 6f 6b 65 6e 20 28 63 61 6c 65 6e 64 61 72 2d 69 64 29 0a 20 20 22 52 65 66 fresh-token.(calendar-id)..."Ref
f760 72 65 73 68 20 4f 41 75 74 68 20 61 63 63 65 73 73 20 61 6e 64 20 72 65 74 75 72 6e 20 74 68 65 resh.OAuth.access.and.return.the
f780 20 6e 65 77 20 61 63 63 65 73 73 20 74 6f 6b 65 6e 20 61 73 20 61 20 64 65 66 65 72 72 65 64 20 .new.access.token.as.a.deferred.
f7a0 6f 62 6a 65 63 74 2e 22 0a 20 20 3b 3b 20 46 49 58 4d 45 3a 20 46 6f 72 20 6e 6f 77 2c 20 77 65 object."...;;.FIXME:.For.now,.we
f7c0 20 6a 75 73 74 20 73 79 6e 63 68 72 6f 6e 6f 75 73 6c 79 20 77 61 69 74 20 66 6f 72 20 74 68 65 .just.synchronously.wait.for.the
f7e0 20 72 65 66 72 65 73 68 2e 20 4f 6e 63 65 20 74 68 65 0a 20 20 3b 3b 20 70 72 6f 6a 65 63 74 20 .refresh..Once.the...;;.project.
f800 68 61 73 20 62 65 65 6e 20 72 65 77 72 69 74 74 65 6e 20 74 6f 20 75 73 65 20 61 69 6f 0a 20 20 has.been.rewritten.to.use.aio...
f820 3b 3b 20 28 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6b 69 64 64 2f 6f 72 67 2d ;;.(https://github.com/kidd/org-
f840 67 63 61 6c 2e 65 6c 2f 69 73 73 75 65 73 2f 31 39 31 29 2c 20 77 65 20 63 61 6e 20 77 61 69 74 gcal.el/issues/191),.we.can.wait
f860 20 66 6f 72 20 74 68 69 73 0a 20 20 3b 3b 20 61 73 79 6e 63 68 72 6f 6e 6f 75 73 6c 79 20 61 73 .for.this...;;.asynchronously.as
f880 20 77 65 6c 6c 2e 0a 20 20 28 6c 65 74 20 28 28 74 6f 6b 65 6e 0a 20 20 20 20 20 20 20 20 20 28 .well....(let.((token..........(
f8a0 61 69 6f 2d 77 61 69 74 2d 66 6f 72 0a 20 20 20 20 20 20 20 20 20 20 28 6f 61 75 74 68 32 2d 61 aio-wait-for...........(oauth2-a
f8c0 75 74 6f 2d 61 63 63 65 73 73 2d 74 6f 6b 65 6e 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 27 6f 72 uto-access-token.calendar-id.'or
f8e0 67 2d 67 63 61 6c 29 29 29 29 0a 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 g-gcal)))).....(deferred:succeed
f900 20 74 6f 6b 65 6e 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e .token)))..;;;###autoload.(defun
f920 20 6f 72 67 2d 67 63 61 6c 2d 73 79 6e 63 2d 74 6f 6b 65 6e 73 2d 63 6c 65 61 72 20 28 29 0a 20 .org-gcal-sync-tokens-clear.()..
f940 20 22 43 6c 65 61 72 20 61 6c 6c 20 43 61 6c 65 6e 64 61 72 20 41 50 49 20 73 79 6e 63 20 74 6f ."Clear.all.Calendar.API.sync.to
f960 6b 65 6e 73 2e 0a 0a 20 20 55 73 65 20 74 68 69 73 20 74 6f 20 66 6f 72 63 65 20 72 65 74 72 69 kens.....Use.this.to.force.retri
f980 65 76 69 6e 67 20 61 6c 6c 20 65 76 65 6e 74 73 20 69 6e 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d eving.all.events.in....org-gcal-
f9a0 73 79 6e 63 e2 80 99 20 6f 72 0a 20 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 66 65 74 63 68 e2 80 sync....or......org-gcal-fetch..
f9c0 99 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 73 65 74 71 20 6f 72 67 2d .."...(interactive)...(setq.org-
f9e0 67 63 61 6c 2d 2d 73 79 6e 63 2d 74 6f 6b 65 6e 73 20 6e 69 6c 29 0a 20 20 28 70 65 72 73 69 73 gcal--sync-tokens.nil)...(persis
fa00 74 2d 73 61 76 65 20 27 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 74 6f 6b 65 6e 73 29 29 0a t-save.'org-gcal--sync-tokens)).
fa20 0a 3b 3b 20 49 6e 74 65 72 6e 61 6c 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 61 72 .;;.Internal.(defun.org-gcal--ar
fa40 63 68 69 76 65 2d 6f 6c 64 2d 65 76 65 6e 74 20 28 29 0a 20 20 22 41 72 63 68 69 76 65 20 6f 6c chive-old-event.()..."Archive.ol
fa60 64 20 65 76 65 6e 74 20 61 74 20 70 6f 69 6e 74 2e 22 0a 20 20 28 73 61 76 65 2d 65 78 63 75 72 d.event.at.point."...(save-excur
fa80 73 69 6f 6e 0a 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 sion.....(goto-char.(point-min))
faa0 0a 20 20 20 20 28 77 68 69 6c 65 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 6f .....(while.(re-search-forward.o
fac0 72 67 2d 68 65 61 64 69 6e 67 2d 72 65 67 65 78 70 20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20 28 rg-heading-regexp.nil.t).......(
fae0 6c 65 74 20 28 28 70 72 6f 70 65 72 74 69 65 73 20 28 6f 72 67 2d 65 6e 74 72 79 2d 70 72 6f 70 let.((properties.(org-entry-prop
fb00 65 72 74 69 65 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 erties))).......................
fb20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 20 43 68 65 63 6b 20 69 66 20 68 65 61 ..................;.Check.if.hea
fb40 64 6c 69 6e 65 20 69 73 20 6d 61 6e 61 67 65 64 20 62 79 20 60 6f 72 67 2d 67 63 61 6c 27 2c 20 dline.is.managed.by.`org-gcal',.
fb60 61 6e 64 20 68 61 73 6e 27 74 20 62 65 65 6e 20 61 72 63 68 69 76 65 64 0a 20 20 20 20 20 20 20 and.hasn't.been.archived........
fb80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
fba0 20 3b 20 79 65 74 2e 20 4f 6e 6c 79 20 69 6e 20 74 68 61 74 20 63 61 73 65 2c 20 70 6f 74 65 6e .;.yet..Only.in.that.case,.poten
fbc0 74 69 61 6c 6c 79 20 61 72 63 68 69 76 65 2e 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 tially.archive..........(when.(a
fbe0 6e 64 20 28 61 73 73 6f 63 20 22 4f 52 47 2d 47 43 41 4c 2d 4d 41 4e 41 47 45 44 22 20 70 72 6f nd.(assoc."ORG-GCAL-MANAGED".pro
fc00 70 65 72 74 69 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 perties)....................(not
fc20 20 28 61 73 73 6f 63 20 22 41 52 43 48 49 56 45 5f 54 49 4d 45 22 20 70 72 6f 70 65 72 74 69 65 .(assoc."ARCHIVE_TIME".propertie
fc40 73 29 29 29 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s)))............................
fc60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 20 47 6f 20 74 6f 20 62 65 67 69 6e 6e 69 6e 67 20 ..............;.Go.to.beginning.
fc80 6f 66 20 6c 69 6e 65 20 74 6f 20 70 61 72 73 65 20 74 68 65 20 68 65 61 64 6c 69 6e 65 0a 20 20 of.line.to.parse.the.headline...
fca0 20 20 20 20 20 20 20 20 28 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20 20 ........(beginning-of-line).....
fcc0 20 20 20 20 20 20 28 6c 65 74 20 28 28 65 6c 65 6d 20 28 6f 72 67 2d 65 6c 65 6d 65 6e 74 2d 68 ......(let.((elem.(org-element-h
fce0 65 61 64 6c 69 6e 65 2d 70 61 72 73 65 72 20 28 70 6f 69 6e 74 2d 6d 61 78 29 20 74 29 29 29 0a eadline-parser.(point-max).t))).
fd00 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
fd20 20 20 20 20 20 20 20 20 20 3b 20 47 6f 20 74 6f 20 6e 65 78 74 20 74 69 6d 65 73 74 61 6d 70 20 .........;.Go.to.next.timestamp.
fd40 74 6f 20 70 61 72 73 65 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 69 74 69 to.parse.it.............(conditi
fd60 6f 6e 2d 63 61 73 65 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 67 6f 74 on-case.nil.................(got
fd80 6f 2d 63 68 61 72 20 28 63 64 72 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 74 69 6d 65 73 74 61 6d 70 o-char.(cdr.(org-gcal--timestamp
fda0 2d 73 75 63 63 65 73 73 6f 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 -successor)))...............(err
fdc0 6f 72 20 28 65 72 72 6f 72 20 22 4f 72 67 2d 67 63 61 6c 20 65 72 72 6f 72 3a 20 43 6f 75 6c 64 or.(error."Org-gcal.error:.Could
fde0 6e 27 74 20 70 61 72 73 65 20 25 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 n't.parse.%s"...................
fe00 20 20 20 20 20 20 20 20 20 20 28 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 29 29 29 29 0a ..........(buffer-file-name)))).
fe20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 74 6f 62 6a 20 28 63 61 64 72 20 28 6f ............(let.((tobj.(cadr.(o
fe40 72 67 2d 65 6c 65 6d 65 6e 74 2d 74 69 6d 65 73 74 61 6d 70 2d 70 61 72 73 65 72 29 29 29 29 0a rg-element-timestamp-parser)))).
fe60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 3e 0a 20 20 20 20 20 20 20 20 20 ..............(when.(>..........
fe80 20 20 20 20 20 20 20 20 20 20 20 20 28 74 69 6d 65 2d 74 6f 2d 73 65 63 6f 6e 64 73 20 28 74 69 ............(time-to-seconds.(ti
fea0 6d 65 2d 73 75 62 74 72 61 63 74 20 28 63 75 72 72 65 6e 74 2d 74 69 6d 65 29 20 28 64 61 79 73 me-subtract.(current-time).(days
fec0 2d 74 6f 2d 74 69 6d 65 20 6f 72 67 2d 67 63 61 6c 2d 75 70 2d 64 61 79 73 29 29 29 0a 20 20 20 -to-time.org-gcal-up-days)))....
fee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 69 6d 65 2d 74 6f 2d 73 65 63 6f 6e ..................(time-to-secon
ff00 64 73 20 28 65 6e 63 6f 64 65 2d 74 69 6d 65 20 30 20 28 69 66 20 28 70 6c 69 73 74 2d 67 65 74 ds.(encode-time.0.(if.(plist-get
ff20 20 74 6f 62 6a 20 3a 6d 69 6e 75 74 65 2d 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .tobj.:minute-end)..............
ff40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
ff60 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 74 6f 62 6a 20 3a 6d 69 6e ............(plist-get.tobj.:min
ff80 75 74 65 2d 65 6e 64 29 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ute-end).0).....................
ffa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ...............................(
ffc0 69 66 20 28 70 6c 69 73 74 2d 67 65 74 20 74 6f 62 6a 20 3a 68 6f 75 72 2d 65 6e 64 29 0a 20 20 if.(plist-get.tobj.:hour-end)...
ffe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
10000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 .....................(plist-get.
10020 74 6f 62 6a 20 3a 68 6f 75 72 2d 65 6e 64 29 20 32 34 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 tobj.:hour-end).24).............
10040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
10060 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 74 6f 62 6a 20 3a 64 61 79 2d 65 6e 64 29 .......(plist-get.tobj.:day-end)
10080 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
100a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 74 ....................(plist-get.t
100c0 6f 62 6a 20 3a 6d 6f 6e 74 68 2d 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 obj.:month-end).................
100e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
10100 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 74 6f 62 6a 20 3a 79 65 61 72 2d 65 6e 64 29 29 29 29 ...(plist-get.tobj.:year-end))))
10120 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 6e 6f 74 69 .................(org-gcal--noti
10140 66 79 20 22 41 72 63 68 69 76 65 64 20 65 76 65 6e 74 2e 22 20 28 6f 72 67 2d 65 6c 65 6d 65 6e fy."Archived.event.".(org-elemen
10160 74 2d 70 72 6f 70 65 72 74 79 20 3a 74 69 74 6c 65 20 65 6c 65 6d 29 29 0a 20 20 20 20 20 20 20 t-property.:title.elem))........
10180 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6b 69 6c 6c 2d 72 69 6e 67 20 6b 69 6c 6c 2d 72 .........(let.((kill-ring.kill-r
101a0 69 6e 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 6c 65 ing).......................(sele
101c0 63 74 2d 65 6e 61 62 6c 65 2d 63 6c 69 70 62 6f 61 72 64 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 ct-enable-clipboard.nil)).......
101e0 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 61 72 63 68 69 76 65 2d 73 75 62 74 72 65 65 ............(org-archive-subtree
10200 29 29 29 29 29 29 29 29 0a 20 20 20 20 28 73 61 76 65 2d 62 75 66 66 65 72 29 29 29 0a 0a 28 64 )))))))).....(save-buffer)))..(d
10220 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 73 61 76 65 2d 73 65 78 70 20 28 64 61 74 61 20 66 efun.org-gcal--save-sexp.(data.f
10240 69 6c 65 29 0a 20 20 22 50 72 69 6e 74 20 4c 69 73 70 20 6f 62 6a 65 63 74 20 44 41 54 41 20 74 ile)..."Print.Lisp.object.DATA.t
10260 6f 20 46 49 4c 45 2c 20 63 72 65 61 74 69 6e 67 20 69 74 20 69 66 20 6e 65 63 65 73 73 61 72 79 o.FILE,.creating.it.if.necessary
10280 2e 22 0a 20 20 28 6c 65 74 20 28 28 64 69 72 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 64 69 72 65 63 ."...(let.((dir.(file-name-direc
102a0 74 6f 72 79 20 66 69 6c 65 29 29 29 0a 20 20 20 20 28 75 6e 6c 65 73 73 20 28 66 69 6c 65 2d 64 tory.file))).....(unless.(file-d
102c0 69 72 65 63 74 6f 72 79 2d 70 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 64 69 72 65 63 74 6f 72 79 20 irectory-p.(file-name-directory.
102e0 66 69 6c 65 29 29 0a 20 20 20 20 20 20 28 6d 61 6b 65 2d 64 69 72 65 63 74 6f 72 79 20 64 69 72 file)).......(make-directory.dir
10300 29 29 29 0a 20 20 28 6c 65 74 2a 20 28 28 63 6f 6e 74 65 6e 74 20 28 77 68 65 6e 20 28 66 69 6c )))...(let*.((content.(when.(fil
10320 65 2d 65 78 69 73 74 73 2d 70 20 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e-exists-p.file)................
10340 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 72 65 61 64 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e .....(org-gcal--read-file-conten
10360 74 73 20 66 69 6c 65 29 29 29 29 0a 20 20 20 20 28 69 66 20 28 61 6e 64 20 63 6f 6e 74 65 6e 74 ts.file)))).....(if.(and.content
10380 20 28 6c 69 73 74 70 20 63 6f 6e 74 65 6e 74 29 20 28 70 6c 69 73 74 2d 67 65 74 20 63 6f 6e 74 .(listp.content).(plist-get.cont
103a0 65 6e 74 20 3a 74 6f 6b 65 6e 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 6e 74 65 ent.:token)).........(setq.conte
103c0 6e 74 20 28 70 6c 69 73 74 2d 70 75 74 20 63 6f 6e 74 65 6e 74 20 3a 74 6f 6b 65 6e 20 64 61 74 nt.(plist-put.content.:token.dat
103e0 61 29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 6e 74 65 6e 74 20 60 28 3a 74 6f 6b 65 6e a)).......(setq.content.`(:token
10400 20 2c 64 61 74 61 20 3a 65 6c 65 6d 20 6e 69 6c 29 29 29 0a 20 20 20 20 28 77 69 74 68 2d 74 65 .,data.:elem.nil))).....(with-te
10420 6d 70 2d 66 69 6c 65 20 66 69 6c 65 0a 20 20 20 20 20 20 28 70 70 20 63 6f 6e 74 65 6e 74 20 28 mp-file.file.......(pp.content.(
10440 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d current-buffer)))))..(defun.org-
10460 67 63 61 6c 2d 2d 72 65 61 64 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e 74 73 20 28 66 69 6c 65 29 0a gcal--read-file-contents.(file).
10480 20 20 22 43 61 6c 6c 20 e2 80 98 72 65 61 64 e2 80 99 20 6f 6e 20 74 68 65 20 63 6f 6e 74 65 6e .."Call....read....on.the.conten
104a0 74 73 20 6f 66 20 46 49 4c 45 2c 20 72 65 74 75 72 6e 69 6e 67 20 74 68 65 20 72 65 73 75 6c 74 ts.of.FILE,.returning.the.result
104c0 69 6e 67 20 6f 62 6a 65 63 74 2e 22 0a 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 62 75 66 66 65 72 ing.object."...(with-temp-buffer
104e0 0a 20 20 20 20 28 69 6e 73 65 72 74 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e 74 73 20 66 69 6c 65 29 .....(insert-file-contents.file)
10500 0a 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 .....(goto-char.(point-min))....
10520 20 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 28 72 65 .(condition-case.nil.........(re
10540 61 64 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 0a 20 20 20 20 20 20 28 65 6e 64 2d ad.(current-buffer)).......(end-
10560 6f 66 2d 66 69 6c 65 20 6e 69 6c 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c of-file.nil))))..(defun.org-gcal
10580 2d 2d 6a 73 6f 6e 2d 72 65 61 64 20 28 29 0a 20 20 28 6c 65 74 20 28 28 6a 73 6f 6e 2d 6f 62 6a --json-read.()...(let.((json-obj
105a0 65 63 74 2d 74 79 70 65 20 27 70 6c 69 73 74 29 29 0a 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 ect-type.'plist)).....(goto-char
105c0 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 .(point-min)).....(re-search-for
105e0 77 61 72 64 20 22 5e 7b 22 20 6e 69 6c 20 74 29 0a 20 20 20 20 28 64 65 6c 65 74 65 2d 72 65 67 ward."^{".nil.t).....(delete-reg
10600 69 6f 6e 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 20 28 31 2d 20 28 70 6f 69 6e 74 29 29 29 0a 20 20 ion.(point-min).(1-.(point)))...
10620 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 28 6a ..(goto-char.(point-min)).....(j
10640 73 6f 6e 2d 72 65 61 64 2d 66 72 6f 6d 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 28 64 65 63 6f 64 son-read-from-string......(decod
10660 65 2d 63 6f 64 69 6e 67 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 28 62 75 66 66 65 72 2d 73 75 e-coding-string.......(buffer-su
10680 62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 28 70 6f 69 6e 74 2d 6d 69 6e bstring-no-properties.(point-min
106a0 29 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 20 27 75 74 66 2d 38 29 29 29 29 0a 0a 28 64 65 66 75 ).(point-max)).'utf-8))))..(defu
106c0 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 73 61 66 65 2d 73 75 62 73 74 72 69 6e 67 20 28 73 74 72 69 n.org-gcal--safe-substring.(stri
106e0 6e 67 20 66 72 6f 6d 20 26 6f 70 74 69 6f 6e 61 6c 20 74 6f 29 0a 20 20 22 43 61 6c 6c 20 74 68 ng.from.&optional.to)..."Call.th
10700 65 20 60 73 75 62 73 74 72 69 6e 67 27 20 66 75 6e 63 74 69 6f 6e 20 73 61 66 65 6c 79 2e 0a 20 e.`substring'.function.safely...
10720 20 4e 6f 20 65 72 72 6f 72 73 20 77 69 6c 6c 20 62 65 20 72 65 74 75 72 6e 65 64 20 66 6f 72 20 .No.errors.will.be.returned.for.
10740 6f 75 74 20 6f 66 20 72 61 6e 67 65 20 76 61 6c 75 65 73 20 6f 66 20 46 52 4f 4d 20 61 6e 64 0a out.of.range.values.of.FROM.and.
10760 20 20 54 4f 2e 20 20 49 6e 73 74 65 61 64 20 61 6e 20 65 6d 70 74 79 20 73 74 72 69 6e 67 20 69 ..TO...Instead.an.empty.string.i
10780 73 20 72 65 74 75 72 6e 65 64 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 6c 65 6e 20 28 6c 65 6e 67 s.returned."...(let*.((len.(leng
107a0 74 68 20 73 74 72 69 6e 67 29 29 0a 20 20 20 20 20 20 20 20 20 28 74 6f 20 28 6f 72 20 74 6f 20 th.string))..........(to.(or.to.
107c0 6c 65 6e 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28 3c 20 66 72 6f 6d 20 30 29 0a 20 20 20 20 len))).....(when.(<.from.0).....
107e0 20 20 28 73 65 74 71 20 66 72 6f 6d 20 28 2b 20 6c 65 6e 20 66 72 6f 6d 29 29 29 0a 20 20 20 20 ..(setq.from.(+.len.from))).....
10800 28 77 68 65 6e 20 28 3c 20 74 6f 20 30 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 74 6f 20 28 2b (when.(<.to.0).......(setq.to.(+
10820 20 6c 65 6e 20 74 6f 29 29 29 0a 20 20 20 20 28 69 66 20 28 6f 72 20 28 3c 20 66 72 6f 6d 20 30 .len.to))).....(if.(or.(<.from.0
10840 29 20 28 3e 20 66 72 6f 6d 20 6c 65 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 3c 20 74 6f ).(>.from.len).............(<.to
10860 20 30 29 20 28 3e 20 74 6f 20 6c 65 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 3c 20 74 6f .0).(>.to.len).............(<.to
10880 20 66 72 6f 6d 29 29 0a 20 20 20 20 20 20 20 20 22 22 0a 20 20 20 20 20 20 28 73 75 62 73 74 72 .from))........."".......(substr
108a0 69 6e 67 20 73 74 72 69 6e 67 20 66 72 6f 6d 20 74 6f 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f ing.string.from.to))))..(defun.o
108c0 72 67 2d 67 63 61 6c 2d 2d 61 6c 6c 64 61 79 70 20 28 73 20 65 29 0a 20 20 28 6c 65 74 20 28 28 rg-gcal--alldayp.(s.e)...(let.((
108e0 73 6c 73 74 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 70 61 72 73 65 2d 64 61 74 65 20 73 29 29 0a 20 slst.(org-gcal--parse-date.s))..
10900 20 20 20 20 20 20 20 28 65 6c 73 74 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 70 61 72 73 65 2d 64 61 .......(elst.(org-gcal--parse-da
10920 74 65 20 65 29 29 29 0a 20 20 20 20 28 61 6e 64 0a 20 20 20 20 20 28 3d 20 28 6c 65 6e 67 74 68 te.e))).....(and......(=.(length
10940 20 73 29 20 31 30 29 0a 20 20 20 20 20 28 3d 20 28 6c 65 6e 67 74 68 20 65 29 20 31 30 29 0a 20 .s).10)......(=.(length.e).10)..
10960 20 20 20 20 28 3d 20 28 2d 20 28 74 69 6d 65 2d 74 6f 2d 73 65 63 6f 6e 64 73 0a 20 20 20 20 20 ....(=.(-.(time-to-seconds......
10980 20 20 20 20 20 20 20 28 65 6e 63 6f 64 65 2d 74 69 6d 65 20 30 20 30 20 30 0a 20 20 20 20 20 20 .......(encode-time.0.0.0.......
109a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 65 6c ...................(plist-get.el
109c0 73 74 20 3a 64 61 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 st.:day)........................
109e0 20 20 28 70 6c 69 73 74 2d 67 65 74 20 65 6c 73 74 20 3a 6d 6f 6e 29 0a 20 20 20 20 20 20 20 20 ..(plist-get.elst.:mon).........
10a00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 65 6c 73 74 .................(plist-get.elst
10a20 20 3a 79 65 61 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 74 69 6d 65 2d 74 6f 2d 73 65 .:year)))............(time-to-se
10a40 63 6f 6e 64 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6e 63 6f 64 65 2d 74 69 6d 65 20 30 conds.............(encode-time.0
10a60 20 30 20 30 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 .0.0..........................(p
10a80 6c 69 73 74 2d 67 65 74 20 73 6c 73 74 20 3a 64 61 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 list-get.slst.:day).............
10aa0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 73 6c 73 74 20 3a 6d 6f .............(plist-get.slst.:mo
10ac0 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 n)..........................(pli
10ae0 73 74 2d 67 65 74 20 73 6c 73 74 20 3a 79 65 61 72 29 29 29 29 20 38 36 34 30 30 29 29 29 29 0a st-get.slst.:year)))).86400)))).
10b00 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 70 61 72 73 65 2d 64 61 74 65 20 28 73 74 .(defun.org-gcal--parse-date.(st
10b20 72 29 0a 20 20 28 6c 69 73 74 20 3a 79 65 61 72 20 28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 r)...(list.:year.(string-to-numb
10b40 65 72 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 61 66 65 2d 73 75 62 73 74 72 69 6e 67 20 73 74 er..(org-gcal--safe-substring.st
10b60 72 20 30 20 34 29 29 0a 20 20 20 20 20 20 20 20 3a 6d 6f 6e 20 20 28 73 74 72 69 6e 67 2d 74 6f r.0.4)).........:mon..(string-to
10b80 2d 6e 75 6d 62 65 72 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 61 66 65 2d 73 75 62 73 74 72 69 6e -number.(org-gcal--safe-substrin
10ba0 67 20 73 74 72 20 35 20 37 29 29 0a 20 20 20 20 20 20 20 20 3a 64 61 79 20 20 28 73 74 72 69 6e g.str.5.7)).........:day..(strin
10bc0 67 2d 74 6f 2d 6e 75 6d 62 65 72 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 61 66 65 2d 73 75 62 73 g-to-number.(org-gcal--safe-subs
10be0 74 72 69 6e 67 20 73 74 72 20 38 20 31 30 29 29 0a 20 20 20 20 20 20 20 20 3a 68 6f 75 72 20 28 tring.str.8.10)).........:hour.(
10c00 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 61 66 65 string-to-number.(org-gcal--safe
10c20 2d 73 75 62 73 74 72 69 6e 67 20 73 74 72 20 31 31 20 31 33 29 29 0a 20 20 20 20 20 20 20 20 3a -substring.str.11.13)).........:
10c40 6d 69 6e 20 20 28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 20 28 6f 72 67 2d 67 63 61 6c min..(string-to-number.(org-gcal
10c60 2d 2d 73 61 66 65 2d 73 75 62 73 74 72 69 6e 67 20 73 74 72 20 31 34 20 31 36 29 29 0a 20 20 20 --safe-substring.str.14.16))....
10c80 20 20 20 20 20 3a 73 65 63 20 20 28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 20 28 6f 72 .....:sec..(string-to-number.(or
10ca0 67 2d 67 63 61 6c 2d 2d 73 61 66 65 2d 73 75 62 73 74 72 69 6e 67 20 73 74 72 20 31 37 20 31 39 g-gcal--safe-substring.str.17.19
10cc0 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 70 61 72 73 65 2d 63 61 6c ))))..(defun.org-gcal--parse-cal
10ce0 65 6e 64 61 72 2d 74 69 6d 65 20 28 74 69 6d 65 29 0a 20 20 22 50 61 72 73 65 20 54 49 4d 45 2c endar-time.(time)..."Parse.TIME,
10d00 20 74 68 65 20 73 74 61 72 74 20 6f 72 20 65 6e 64 20 74 69 6d 65 20 6f 62 6a 65 63 74 20 66 72 .the.start.or.end.time.object.fr
10d20 6f 6d 20 43 61 6c 65 6e 64 61 72 20 41 50 49 20 45 76 65 6e 74 73 20 72 65 73 6f 75 72 63 65 2e om.Calendar.API.Events.resource.
10d40 0a 52 65 74 75 72 6e 20 61 6e 20 45 6d 61 63 73 20 74 69 6d 65 20 6f 62 6a 65 63 74 20 66 72 6f .Return.an.Emacs.time.object.fro
10d60 6d 20 e2 80 98 65 6e 63 6f 64 65 2d 74 69 6d 65 27 2e 22 0a 20 20 28 6f 72 67 2d 67 63 61 6c 2d m....encode-time'."...(org-gcal-
10d80 2d 70 61 72 73 65 2d 63 61 6c 65 6e 64 61 72 2d 74 69 6d 65 2d 73 74 72 69 6e 67 0a 20 20 20 28 -parse-calendar-time-string....(
10da0 6f 72 20 28 70 6c 69 73 74 2d 67 65 74 20 74 69 6d 65 20 3a 64 61 74 65 54 69 6d 65 29 0a 20 20 or.(plist-get.time.:dateTime)...
10dc0 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 74 69 6d 65 20 3a 64 61 74 65 29 29 29 29 0a 0a .....(plist-get.time.:date))))..
10de0 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 70 61 72 73 65 2d 63 61 6c 65 6e 64 61 72 2d (defun.org-gcal--parse-calendar-
10e00 74 69 6d 65 2d 73 74 72 69 6e 67 20 28 74 69 6d 65 2d 73 74 72 69 6e 67 29 0a 20 20 28 69 66 20 time-string.(time-string)...(if.
10e20 28 3c 20 31 31 20 28 6c 65 6e 67 74 68 20 74 69 6d 65 2d 73 74 72 69 6e 67 29 29 0a 20 20 20 20 (<.11.(length.time-string)).....
10e40 20 20 28 70 61 72 73 65 2d 69 73 6f 38 36 30 31 2d 74 69 6d 65 2d 73 74 72 69 6e 67 20 74 69 6d ..(parse-iso8601-time-string.tim
10e60 65 2d 73 74 72 69 6e 67 29 0a 20 20 20 20 28 61 70 70 6c 79 20 23 27 65 6e 63 6f 64 65 2d 74 69 e-string).....(apply.#'encode-ti
10e80 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 46 75 6c 6c 20 64 61 79 73 20 68 61 76 65 20 me............;;.Full.days.have.
10ea0 74 69 6d 65 20 73 74 72 69 6e 67 73 20 77 69 74 68 20 75 6e 6b 6e 6f 77 6e 20 68 6f 75 72 2c 20 time.strings.with.unknown.hour,.
10ec0 6d 69 6e 75 74 65 2c 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 73 65 63 6f 6e 64 minute,.and............;;.second
10ee0 2c 20 77 68 69 63 68 20 e2 80 98 70 61 72 73 65 2d 74 69 6d 65 2d 73 74 72 69 6e 67 e2 80 99 20 ,.which....parse-time-string....
10f00 77 69 6c 6c 20 73 65 74 20 74 6f 0a 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 6e 69 6c 2e 20 e2 will.set.to............;;.nil...
10f20 80 98 65 6e 63 6f 64 65 2d 74 69 6d 65 e2 80 99 20 63 61 6e e2 80 99 74 20 74 6f 6c 65 72 61 74 ..encode-time....can...t.tolerat
10f40 65 20 74 68 61 74 2c 20 73 6f 20 69 6e 73 74 65 61 64 20 73 65 74 20 74 68 65 20 74 69 6d 65 0a e.that,.so.instead.set.the.time.
10f60 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 6f 20 30 30 3a 30 30 3a 30 30 2e 0a 20 20 20 20 20 ...........;;.to.00:00:00.......
10f80 20 20 20 20 20 20 60 28 30 20 30 20 30 20 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 28 6e ......`(0.0.0................,(n
10fa0 74 68 63 64 72 20 33 20 28 70 61 72 73 65 2d 74 69 6d 65 2d 73 74 72 69 6e 67 20 74 69 6d 65 2d thcdr.3.(parse-time-string.time-
10fc0 73 74 72 69 6e 67 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 64 string))))))..(defun.org-gcal--d
10fe0 6f 77 6e 2d 74 69 6d 65 20 28 29 0a 20 20 22 43 6f 6e 76 65 72 74 20 e2 80 98 6f 72 67 2d 67 63 own-time.()..."Convert....org-gc
11000 61 6c 2d 64 6f 77 6e 2d 64 61 79 73 e2 80 99 20 74 6f 20 45 6d 61 63 73 20 74 69 6d 65 20 76 61 al-down-days....to.Emacs.time.va
11020 6c 75 65 2e 22 0a 20 20 28 74 69 6d 65 2d 61 64 64 20 28 63 75 72 72 65 6e 74 2d 74 69 6d 65 29 lue."...(time-add.(current-time)
11040 20 28 64 61 79 73 2d 74 6f 2d 74 69 6d 65 20 6f 72 67 2d 67 63 61 6c 2d 64 6f 77 6e 2d 64 61 79 .(days-to-time.org-gcal-down-day
11060 73 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 75 70 2d 74 69 6d 65 20 28 s)))..(defun.org-gcal--up-time.(
11080 29 0a 20 20 22 43 6f 6e 76 65 72 74 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 75 70 2d 64 61 79 73 )..."Convert....org-gcal-up-days
110a0 e2 80 99 20 74 6f 20 45 6d 61 63 73 20 74 69 6d 65 20 76 61 6c 75 65 2e 22 0a 20 20 28 74 69 6d ....to.Emacs.time.value."...(tim
110c0 65 2d 73 75 62 74 72 61 63 74 20 28 63 75 72 72 65 6e 74 2d 74 69 6d 65 29 20 28 64 61 79 73 2d e-subtract.(current-time).(days-
110e0 74 6f 2d 74 69 6d 65 20 6f 72 67 2d 67 63 61 6c 2d 75 70 2d 64 61 79 73 29 29 29 0a 0a 28 64 65 to-time.org-gcal-up-days)))..(de
11100 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 74 69 6d 65 2d 7a 6f 6e 65 20 28 73 65 63 6f 6e 64 73 fun.org-gcal--time-zone.(seconds
11120 29 0a 20 20 28 63 75 72 72 65 6e 74 2d 74 69 6d 65 2d 7a 6f 6e 65 20 28 73 65 63 6f 6e 64 73 2d )...(current-time-zone.(seconds-
11140 74 6f 2d 74 69 6d 65 20 73 65 63 6f 6e 64 73 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 to-time.seconds)))..(defun.org-g
11160 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 74 69 6d 65 32 69 73 6f 20 28 74 69 6d 65 29 0a 20 20 22 46 cal--format-time2iso.(time)..."F
11180 6f 72 6d 61 74 20 45 6d 61 63 73 20 74 69 6d 65 20 76 61 6c 75 65 20 54 49 4d 45 20 74 6f 20 49 ormat.Emacs.time.value.TIME.to.I
111a0 53 4f 20 66 6f 72 6d 61 74 20 73 74 72 69 6e 67 2e 22 0a 20 20 28 66 6f 72 6d 61 74 2d 74 69 6d SO.format.string."...(format-tim
111c0 65 2d 73 74 72 69 6e 67 20 22 25 46 54 25 54 25 7a 22 20 74 69 6d 65 20 28 63 61 72 20 28 6f 72 e-string."%FT%T%z".time.(car.(or
111e0 67 2d 67 63 61 6c 2d 2d 74 69 6d 65 2d 7a 6f 6e 65 20 30 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 g-gcal--time-zone.0))))..(defun.
11200 6f 72 67 2d 67 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 69 73 6f 32 6f 72 67 20 28 73 74 72 20 26 6f org-gcal--format-iso2org.(str.&o
11220 70 74 69 6f 6e 61 6c 20 74 7a 29 0a 20 20 28 6c 65 74 2a 20 28 28 70 6c 73 74 20 28 6f 72 67 2d ptional.tz)...(let*.((plst.(org-
11240 67 63 61 6c 2d 2d 70 61 72 73 65 2d 64 61 74 65 20 73 74 72 29 29 0a 20 20 20 20 20 20 20 20 20 gcal--parse-date.str))..........
11260 28 73 65 63 6f 6e 64 73 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 74 69 6d 65 2d 74 6f 2d 73 65 63 6f (seconds.(org-gcal--time-to-seco
11280 6e 64 73 20 70 6c 73 74 29 29 29 0a 20 20 20 20 28 63 6f 6e 63 61 74 0a 20 20 20 20 20 22 3c 22 nds.plst))).....(concat......"<"
112a0 0a 20 20 20 20 20 28 66 6f 72 6d 61 74 2d 74 69 6d 65 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 ......(format-time-string.......
112c0 28 69 66 20 28 3c 20 31 31 20 28 6c 65 6e 67 74 68 20 73 74 72 29 29 20 22 25 59 2d 25 6d 2d 25 (if.(<.11.(length.str))."%Y-%m-%
112e0 64 20 25 61 20 25 48 3a 25 4d 22 20 22 25 59 2d 25 6d 2d 25 64 20 25 61 22 29 0a 20 20 20 20 20 d.%a.%H:%M"."%Y-%m-%d.%a")......
11300 20 28 73 65 63 6f 6e 64 73 2d 74 6f 2d 74 69 6d 65 0a 20 20 20 20 20 20 20 28 2b 20 28 69 66 20 .(seconds-to-time........(+.(if.
11320 74 7a 20 28 63 61 72 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 74 69 6d 65 2d 7a 6f 6e 65 20 73 65 63 tz.(car.(org-gcal--time-zone.sec
11340 6f 6e 64 73 29 29 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 73 65 63 6f 6e 64 73 29 29 29 0a 20 onds)).0)...........seconds)))..
11360 20 20 20 20 3b 3b 28 69 66 20 28 61 6e 64 20 72 65 70 65 61 74 20 28 6e 6f 74 20 28 73 74 72 69 ....;;(if.(and.repeat.(not.(stri
11380 6e 67 3d 20 72 65 70 65 61 74 20 22 22 29 29 29 20 28 63 6f 6e 63 61 74 20 22 20 22 20 72 65 70 ng=.repeat.""))).(concat.".".rep
113a0 65 61 74 29 20 22 22 29 0a 20 20 20 20 20 22 3e 22 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 eat)."")......">")))..(defun.org
113c0 2d 67 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 6f 72 67 32 69 73 6f 20 28 79 65 61 72 20 6d 6f 6e 20 -gcal--format-org2iso.(year.mon.
113e0 64 61 79 20 26 6f 70 74 69 6f 6e 61 6c 20 68 6f 75 72 20 6d 69 6e 20 74 7a 29 0a 20 20 28 6c 65 day.&optional.hour.min.tz)...(le
11400 74 20 28 28 73 65 63 6f 6e 64 73 20 28 74 69 6d 65 2d 74 6f 2d 73 65 63 6f 6e 64 73 20 28 65 6e t.((seconds.(time-to-seconds.(en
11420 63 6f 64 65 2d 74 69 6d 65 20 30 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 code-time.0.....................
11440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 6d ...........................(or.m
11460 69 6e 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 in.0)...........................
11480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 68 6f 75 72 20 30 29 .....................(or.hour.0)
114a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
114c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 61 79 20 6d 6f 6e 20 79 65 61 72 29 29 29 29 ................day.mon.year))))
114e0 0a 20 20 20 20 28 66 6f 72 6d 61 74 2d 74 69 6d 65 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 28 69 .....(format-time-string......(i
11500 66 20 28 6f 72 20 68 6f 75 72 20 6d 69 6e 29 20 22 25 59 2d 25 6d 2d 25 64 54 25 48 3a 25 4d 3a f.(or.hour.min)."%Y-%m-%dT%H:%M:
11520 30 30 5a 22 20 22 25 59 2d 25 6d 2d 25 64 22 29 0a 20 20 20 20 20 28 73 65 63 6f 6e 64 73 2d 74 00Z"."%Y-%m-%d")......(seconds-t
11540 6f 2d 74 69 6d 65 0a 20 20 20 20 20 20 28 2d 0a 20 20 20 20 20 20 20 73 65 63 6f 6e 64 73 0a 20 o-time.......(-........seconds..
11560 20 20 20 20 20 20 28 69 66 20 74 7a 20 28 63 61 72 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 74 69 6d ......(if.tz.(car.(org-gcal--tim
11580 65 2d 7a 6f 6e 65 20 73 65 63 6f 6e 64 73 29 29 20 30 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e e-zone.seconds)).0))))))..(defun
115a0 20 6f 72 67 2d 67 63 61 6c 2d 2d 69 73 6f 2d 6e 65 78 74 2d 64 61 79 20 28 73 74 72 20 26 6f 70 .org-gcal--iso-next-day.(str.&op
115c0 74 69 6f 6e 61 6c 20 70 72 65 76 69 6f 75 73 2d 70 29 0a 20 20 28 6c 65 74 20 28 28 66 6f 72 6d tional.previous-p)...(let.((form
115e0 61 74 20 28 69 66 20 28 3c 20 31 31 20 28 6c 65 6e 67 74 68 20 73 74 72 29 29 0a 20 20 20 20 20 at.(if.(<.11.(length.str))......
11600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 25 59 2d 25 6d 2d 25 64 54 25 48 3a 25 4d 22 0a ..............."%Y-%m-%dT%H:%M".
11620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 25 59 2d 25 6d 2d 25 64 22 29 29 0a 20 .................."%Y-%m-%d"))..
11640 20 20 20 20 20 20 20 28 70 6c 73 74 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 70 61 72 73 65 2d 64 61 .......(plst.(org-gcal--parse-da
11660 74 65 20 73 74 72 29 29 0a 20 20 20 20 20 20 20 20 28 70 72 65 76 20 28 69 66 20 70 72 65 76 69 te.str)).........(prev.(if.previ
11680 6f 75 73 2d 70 20 2d 31 20 2b 31 29 29 29 0a 20 20 20 20 28 66 6f 72 6d 61 74 2d 74 69 6d 65 2d ous-p.-1.+1))).....(format-time-
116a0 73 74 72 69 6e 67 20 66 6f 72 6d 61 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 string.format...................
116c0 20 20 20 20 20 20 28 73 65 63 6f 6e 64 73 2d 74 6f 2d 74 69 6d 65 0a 20 20 20 20 20 20 20 20 20 ......(seconds-to-time..........
116e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2b 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 74 69 ................(+.(org-gcal--ti
11700 6d 65 2d 74 6f 2d 73 65 63 6f 6e 64 73 20 70 6c 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 me-to-seconds.plst).............
11720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 20 36 30 20 36 30 20 32 34 20 70 72 65 76 ................(*.60.60.24.prev
11740 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 69 73 6f 2d 70 72 65 ))))))..(defun.org-gcal--iso-pre
11760 76 69 6f 75 73 2d 64 61 79 20 28 73 74 72 29 0a 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 69 73 6f vious-day.(str)...(org-gcal--iso
11780 2d 6e 65 78 74 2d 64 61 79 20 73 74 72 20 74 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 -next-day.str.t))..(defun.org-gc
117a0 61 6c 2d 2d 65 76 65 6e 74 2d 63 61 6e 63 65 6c 6c 65 64 2d 70 20 28 65 76 65 6e 74 29 0a 20 20 al--event-cancelled-p.(event)...
117c0 22 48 61 73 20 45 56 45 4e 54 20 62 65 65 6e 20 63 61 6e 63 65 6c 6c 65 64 3f 22 0a 20 20 28 73 "Has.EVENT.been.cancelled?"...(s
117e0 74 72 69 6e 67 3d 20 28 70 6c 69 73 74 2d 67 65 74 20 65 76 65 6e 74 20 3a 73 74 61 74 75 73 29 tring=.(plist-get.event.:status)
11800 20 22 63 61 6e 63 65 6c 6c 65 64 22 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d ."cancelled"))..(defun.org-gcal-
11820 2d 63 6f 6e 76 65 72 74 2d 74 69 6d 65 2d 74 6f 2d 6c 6f 63 61 6c 2d 74 69 6d 65 7a 6f 6e 65 20 -convert-time-to-local-timezone.
11840 28 64 61 74 65 2d 74 69 6d 65 20 6c 6f 63 61 6c 2d 74 69 6d 65 7a 6f 6e 65 29 0a 20 20 28 69 66 (date-time.local-timezone)...(if
11860 20 28 61 6e 64 20 64 61 74 65 2d 74 69 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 6c 6f 63 61 6c .(and.date-time............local
11880 2d 74 69 6d 65 7a 6f 6e 65 29 0a 20 20 20 20 20 20 28 66 6f 72 6d 61 74 2d 74 69 6d 65 2d 73 74 -timezone).......(format-time-st
118a0 72 69 6e 67 20 22 25 59 2d 25 6d 2d 25 64 54 25 48 3a 25 4d 3a 25 53 25 7a 22 20 28 70 61 72 73 ring."%Y-%m-%dT%H:%M:%S%z".(pars
118c0 65 2d 69 73 6f 38 36 30 31 2d 74 69 6d 65 2d 73 74 72 69 6e 67 20 64 61 74 65 2d 74 69 6d 65 29 e-iso8601-time-string.date-time)
118e0 20 6c 6f 63 61 6c 2d 74 69 6d 65 7a 6f 6e 65 29 0a 20 20 20 20 64 61 74 65 2d 74 69 6d 65 29 29 .local-timezone).....date-time))
11900 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 75 70 64 61 74 65 2d 65 6e 74 72 79 20 ..(defun.org-gcal--update-entry.
11920 28 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 65 6e 74 20 26 6f 70 74 69 6f 6e 61 6c 20 75 70 64 (calendar-id.event.&optional.upd
11940 61 74 65 2d 6d 6f 64 65 29 0a 20 20 22 55 70 64 61 74 65 20 74 68 65 20 65 6e 74 72 79 20 61 74 ate-mode)..."Update.the.entry.at
11960 20 74 68 65 20 63 75 72 72 65 6e 74 20 68 65 61 64 69 6e 67 20 77 69 74 68 20 69 6e 66 6f 72 6d .the.current.heading.with.inform
11980 61 74 69 6f 6e 20 66 72 6f 6d 20 45 56 45 4e 54 2e 0a 0a 45 56 45 4e 54 20 69 73 20 70 61 72 73 ation.from.EVENT...EVENT.is.pars
119a0 65 64 20 66 72 6f 6d 20 74 68 65 20 43 61 6c 65 6e 64 61 72 20 41 50 49 20 4a 53 4f 4e 20 72 65 ed.from.the.Calendar.API.JSON.re
119c0 73 70 6f 6e 73 65 20 75 73 69 6e 67 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 2d 6a 73 6f 6e 2d 72 sponse.using....org-gcal--json-r
119e0 65 61 64 e2 80 99 2e 0a 43 41 4c 45 4e 44 41 52 2d 49 44 20 6d 75 73 74 20 62 65 20 70 61 73 73 ead.....CALENDAR-ID.must.be.pass
11a00 65 64 20 61 73 20 77 65 6c 6c 2e 20 50 6f 69 6e 74 20 6d 75 73 74 20 62 65 20 6c 6f 63 61 74 65 ed.as.well..Point.must.be.locate
11a20 64 20 6f 6e 20 61 6e 20 4f 72 67 2d 6d 6f 64 65 20 68 65 61 64 69 6e 67 0a 6c 69 6e 65 20 6f 72 d.on.an.Org-mode.heading.line.or
11a40 20 61 6e 20 65 72 72 6f 72 20 77 69 6c 6c 20 62 65 20 74 68 72 6f 77 6e 2e 20 50 6f 69 6e 74 20 .an.error.will.be.thrown..Point.
11a60 69 73 20 6e 6f 74 20 70 72 65 73 65 72 76 65 64 2e 0a 0a 49 66 20 55 50 44 41 54 45 2d 4d 4f 44 is.not.preserved...If.UPDATE-MOD
11a80 45 20 69 73 20 70 61 73 73 65 64 2c 20 74 68 65 6e 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 73 20 E.is.passed,.then.the.functions.
11aa0 69 6e 0a e2 80 98 6f 72 67 2d 67 63 61 6c 2d 61 66 74 65 72 2d 75 70 64 61 74 65 2d 65 6e 74 72 in....org-gcal-after-update-entr
11ac0 79 2d 66 75 6e 63 74 69 6f 6e 73 27 20 61 72 65 20 63 61 6c 6c 65 64 20 69 6e 20 6f 72 64 65 72 y-functions'.are.called.in.order
11ae0 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 0a 61 72 67 75 6d 65 6e 74 73 20 61 73 20 70 61 73 73 .with.the.same.arguments.as.pass
11b00 65 64 20 74 6f 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 61 6e 64 20 74 68 65 20 70 6f 69 6e ed.to.this.function.and.the.poin
11b20 74 20 6d 6f 76 65 64 20 74 6f 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68 65 0a t.moved.to.the.beginning.of.the.
11b40 68 65 61 64 69 6e 67 2e 22 0a 20 20 28 75 6e 6c 65 73 73 20 28 6f 72 67 2d 61 74 2d 68 65 61 64 heading."...(unless.(org-at-head
11b60 69 6e 67 2d 70 29 0a 20 20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22 4d 75 73 74 20 62 65 20 ing-p).....(user-error."Must.be.
11b80 6f 6e 20 4f 72 67 2d 6d 6f 64 65 20 68 65 61 64 69 6e 67 2e 22 29 29 0a 20 20 28 6c 65 74 2a 20 on.Org-mode.heading."))...(let*.
11ba0 28 28 73 6d 72 79 20 20 28 70 6c 69 73 74 2d 67 65 74 20 65 76 65 6e 74 20 3a 73 75 6d 6d 61 72 ((smry..(plist-get.event.:summar
11bc0 79 29 29 0a 20 20 20 20 20 20 20 20 20 28 64 65 73 63 20 20 28 70 6c 69 73 74 2d 67 65 74 20 65 y))..........(desc..(plist-get.e
11be0 76 65 6e 74 20 3a 64 65 73 63 72 69 70 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20 28 6c 6f vent.:description))..........(lo
11c00 63 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 65 76 65 6e 74 20 3a 6c 6f 63 61 74 69 6f 6e 29 29 c...(plist-get.event.:location))
11c20 0a 20 20 20 20 20 20 20 20 20 28 73 6f 75 72 63 65 20 28 70 6c 69 73 74 2d 67 65 74 20 65 76 65 ..........(source.(plist-get.eve
11c40 6e 74 20 3a 73 6f 75 72 63 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 74 72 61 6e 73 70 61 72 65 nt.:source))..........(transpare
11c60 6e 63 79 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 65 76 65 6e 74 20 3a 74 72 61 6e 73 70 61 72 ncy...(plist-get.event.:transpar
11c80 65 6e 63 79 29 29 0a 20 20 20 20 20 20 20 20 20 28 5f 6c 69 6e 6b 20 20 28 70 6c 69 73 74 2d 67 ency))..........(_link..(plist-g
11ca0 65 74 20 65 76 65 6e 74 20 3a 68 74 6d 6c 4c 69 6e 6b 29 29 0a 20 20 20 20 20 20 20 20 20 28 6d et.event.:htmlLink))..........(m
11cc0 65 65 74 20 20 28 70 6c 69 73 74 2d 67 65 74 20 65 76 65 6e 74 20 3a 68 61 6e 67 6f 75 74 4c 69 eet..(plist-get.event.:hangoutLi
11ce0 6e 6b 29 29 0a 20 20 20 20 20 20 20 20 20 28 65 74 61 67 20 28 70 6c 69 73 74 2d 67 65 74 20 65 nk))..........(etag.(plist-get.e
11d00 76 65 6e 74 20 3a 65 74 61 67 29 29 0a 20 20 20 20 20 20 20 20 20 28 65 76 65 6e 74 2d 69 64 20 vent.:etag))..........(event-id.
11d20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 65 76 65 6e 74 20 3a 69 64 29 29 0a 20 20 20 20 20 20 ...(plist-get.event.:id)).......
11d40 20 20 20 28 73 74 69 6d 65 20 28 70 6c 69 73 74 2d 67 65 74 20 28 70 6c 69 73 74 2d 67 65 74 20 ...(stime.(plist-get.(plist-get.
11d60 65 76 65 6e 74 20 3a 73 74 61 72 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 event.:start)...................
11d80 20 20 20 20 20 20 20 20 20 3a 64 61 74 65 54 69 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 65 .........:dateTime))..........(e
11da0 74 69 6d 65 20 28 70 6c 69 73 74 2d 67 65 74 20 28 70 6c 69 73 74 2d 67 65 74 20 65 76 65 6e 74 time.(plist-get.(plist-get.event
11dc0 20 3a 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .:end)..........................
11de0 20 20 3a 64 61 74 65 54 69 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 64 61 79 20 20 28 70 ..:dateTime))..........(sday..(p
11e00 6c 69 73 74 2d 67 65 74 20 28 70 6c 69 73 74 2d 67 65 74 20 65 76 65 6e 74 20 3a 73 74 61 72 74 list-get.(plist-get.event.:start
11e20 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 64 61 )............................:da
11e40 74 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 65 64 61 79 20 20 28 70 6c 69 73 74 2d 67 65 74 20 te))..........(eday..(plist-get.
11e60 28 70 6c 69 73 74 2d 67 65 74 20 65 76 65 6e 74 20 3a 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 (plist-get.event.:end)..........
11e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 64 61 74 65 29 29 0a 20 20 20 20 20 20 ..................:date)).......
11ea0 20 20 20 28 73 74 61 72 74 20 28 69 66 20 73 74 69 6d 65 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 63 ...(start.(if.stime.(org-gcal--c
11ec0 6f 6e 76 65 72 74 2d 74 69 6d 65 2d 74 6f 2d 6c 6f 63 61 6c 2d 74 69 6d 65 7a 6f 6e 65 20 73 74 onvert-time-to-local-timezone.st
11ee0 69 6d 65 20 6f 72 67 2d 67 63 61 6c 2d 6c 6f 63 61 6c 2d 74 69 6d 65 7a 6f 6e 65 29 20 73 64 61 ime.org-gcal-local-timezone).sda
11f00 79 29 29 0a 20 20 20 20 20 20 20 20 20 28 65 6e 64 20 20 20 28 69 66 20 65 74 69 6d 65 20 28 6f y))..........(end...(if.etime.(o
11f20 72 67 2d 67 63 61 6c 2d 2d 63 6f 6e 76 65 72 74 2d 74 69 6d 65 2d 74 6f 2d 6c 6f 63 61 6c 2d 74 rg-gcal--convert-time-to-local-t
11f40 69 6d 65 7a 6f 6e 65 20 65 74 69 6d 65 20 6f 72 67 2d 67 63 61 6c 2d 6c 6f 63 61 6c 2d 74 69 6d imezone.etime.org-gcal-local-tim
11f60 65 7a 6f 6e 65 29 20 65 64 61 79 29 29 0a 20 20 20 20 20 20 20 20 20 28 6f 6c 64 2d 74 69 6d 65 ezone).eday))..........(old-time
11f80 2d 64 65 73 63 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 67 65 74 2d 74 69 6d 65 2d 61 6e 64 2d 64 65 -desc.(org-gcal--get-time-and-de
11fa0 73 63 29 29 0a 20 20 20 20 20 20 20 20 20 28 6f 6c 64 2d 73 74 61 72 74 20 28 70 6c 69 73 74 2d sc))..........(old-start.(plist-
11fc0 67 65 74 20 6f 6c 64 2d 74 69 6d 65 2d 64 65 73 63 20 3a 73 74 61 72 74 29 29 0a 20 20 20 20 20 get.old-time-desc.:start))......
11fe0 20 20 20 20 28 6f 6c 64 2d 65 6e 64 20 28 70 6c 69 73 74 2d 67 65 74 20 6f 6c 64 2d 74 69 6d 65 ....(old-end.(plist-get.old-time
12000 2d 64 65 73 63 20 3a 73 74 61 72 74 29 29 0a 20 20 20 20 20 20 20 20 20 28 72 65 63 75 72 72 65 -desc.:start))..........(recurre
12020 6e 63 65 20 28 70 6c 69 73 74 2d 67 65 74 20 65 76 65 6e 74 20 3a 72 65 63 75 72 72 65 6e 63 65 nce.(plist-get.event.:recurrence
12040 29 29 0a 20 20 20 20 20 20 20 20 20 28 65 6c 65 6d 29 29 0a 20 20 20 20 28 77 68 65 6e 20 6c 6f ))..........(elem)).....(when.lo
12060 63 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 20 22 5c 6e 22 c.(replace-regexp-in-string."\n"
12080 20 22 2c 20 22 20 6c 6f 63 29 29 0a 20 20 20 20 28 6f 72 67 2d 65 64 69 74 2d 68 65 61 64 6c 69 .",.".loc)).....(org-edit-headli
120a0 6e 65 0a 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 3b 3b 20 44 6f 6e e2 80 99 74 20 75 ne......(cond.......;;.Don...t.u
120c0 70 64 61 74 65 20 68 65 61 64 6c 69 6e 65 20 69 66 20 74 68 65 20 6e 65 77 20 73 75 6d 6d 61 72 pdate.headline.if.the.new.summar
120e0 79 20 69 73 20 74 68 65 20 73 61 6d 65 20 61 73 20 74 68 65 20 43 41 4e 43 45 4c 4c 45 44 0a 20 y.is.the.same.as.the.CANCELLED..
12100 20 20 20 20 20 3b 3b 20 74 6f 64 6f 20 6b 65 79 77 6f 72 64 2e 0a 20 20 20 20 20 20 28 28 65 71 .....;;.todo.keyword........((eq
12120 75 61 6c 20 73 6d 72 79 20 6f 72 67 2d 67 63 61 6c 2d 63 61 6e 63 65 6c 6c 65 64 2d 74 6f 64 6f ual.smry.org-gcal-cancelled-todo
12140 2d 6b 65 79 77 6f 72 64 29 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 68 65 61 64 6c 69 6e 65 29 29 0a -keyword).(org-gcal--headline)).
12160 20 20 20 20 20 20 28 73 6d 72 79 20 73 6d 72 79 29 0a 20 20 20 20 20 20 3b 3b 20 53 65 74 20 68 ......(smry.smry).......;;.Set.h
12180 65 61 64 6c 69 6e 65 20 74 6f 20 e2 80 9c 62 75 73 79 e2 80 9d 20 69 66 20 74 68 65 72 65 20 69 eadline.to....busy....if.there.i
121a0 73 20 6e 6f 20 65 78 69 73 74 69 6e 67 20 68 65 61 64 6c 69 6e 65 20 61 6e 64 20 6e 6f 20 73 75 s.no.existing.headline.and.no.su
121c0 6d 6d 61 72 79 0a 20 20 20 20 20 20 3b 3b 20 66 72 6f 6d 20 73 65 72 76 65 72 2e 0a 20 20 20 20 mmary.......;;.from.server......
121e0 20 20 28 28 6f 72 20 28 6e 75 6c 6c 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 68 65 61 64 6c 69 6e 65 ..((or.(null.(org-gcal--headline
12200 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 2d 65 6d 70 74 79 2d 70 20 28 6f ))............(string-empty-p.(o
12220 72 67 2d 67 63 61 6c 2d 2d 68 65 61 64 6c 69 6e 65 29 29 29 0a 20 20 20 20 20 20 20 22 62 75 73 rg-gcal--headline)))........"bus
12240 79 22 29 0a 20 20 20 20 20 20 28 74 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 68 65 61 64 6c 69 6e 65 y").......(t.(org-gcal--headline
12260 29 29 29 29 0a 20 20 20 20 28 6f 72 67 2d 65 6e 74 72 79 2d 70 75 74 20 28 70 6f 69 6e 74 29 20 )))).....(org-entry-put.(point).
12280 6f 72 67 2d 67 63 61 6c 2d 65 74 61 67 2d 70 72 6f 70 65 72 74 79 20 65 74 61 67 29 0a 20 20 20 org-gcal-etag-property.etag)....
122a0 20 28 77 68 65 6e 20 72 65 63 75 72 72 65 6e 63 65 20 28 6f 72 67 2d 65 6e 74 72 79 2d 70 75 74 .(when.recurrence.(org-entry-put
122c0 20 28 70 6f 69 6e 74 29 20 22 72 65 63 75 72 72 65 6e 63 65 22 20 28 66 6f 72 6d 61 74 20 22 25 .(point)."recurrence".(format."%
122e0 73 22 20 72 65 63 75 72 72 65 6e 63 65 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 6c 6f 63 20 28 s".recurrence))).....(when.loc.(
12300 6f 72 67 2d 65 6e 74 72 79 2d 70 75 74 20 28 70 6f 69 6e 74 29 20 22 4c 4f 43 41 54 49 4f 4e 22 org-entry-put.(point)."LOCATION"
12320 20 6c 6f 63 29 29 0a 20 20 20 20 28 77 68 65 6e 20 73 6f 75 72 63 65 0a 20 20 20 20 20 20 28 6c .loc)).....(when.source.......(l
12340 65 74 20 28 28 72 6f 61 6d 2d 72 65 66 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 et.((roam-refs..............(org
12360 2d 65 6e 74 72 79 2d 67 65 74 2d 6d 75 6c 74 69 76 61 6c 75 65 64 2d 70 72 6f 70 65 72 74 79 20 -entry-get-multivalued-property.
12380 28 70 6f 69 6e 74 29 20 22 52 4f 41 4d 5f 52 45 46 53 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 (point)."ROAM_REFS"))...........
123a0 20 20 28 6c 69 6e 6b 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 65 74 20 28 70 6f 69 6e 74 29 20 22 ..(link.(org-entry-get.(point)."
123c0 6c 69 6e 6b 22 29 29 29 0a 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 20 link"))).........(cond..........
123e0 3b 3b 20 52 4f 41 4d 5f 52 45 46 53 20 63 61 6e 20 63 6f 6e 74 61 69 6e 20 6d 75 6c 74 69 70 6c ;;.ROAM_REFS.can.contain.multipl
12400 65 20 72 65 66 65 72 65 6e 63 65 73 2c 20 62 75 74 20 6f 6e 6c 79 20 62 61 72 65 20 55 52 4c 73 e.references,.but.only.bare.URLs
12420 20 61 72 65 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 73 75 70 70 6f 72 74 65 64 2e 20 54 6f 20 6d .are..........;;.supported..To.m
12440 61 6b 65 20 73 75 72 65 20 77 65 20 63 61 6e 20 72 6f 75 6e 64 2d 74 72 69 70 20 62 65 74 77 65 ake.sure.we.can.round-trip.betwe
12460 65 6e 20 52 4f 41 4d 5f 52 45 46 53 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 47 6f 6f en.ROAM_REFS.and..........;;.Goo
12480 67 6c 65 20 43 61 6c 65 6e 64 61 72 2c 20 6f 6e 6c 79 20 69 6d 70 6f 72 74 20 74 6f 20 52 4f 41 gle.Calendar,.only.import.to.ROA
124a0 4d 5f 52 45 46 53 20 69 66 20 74 68 65 72 65 20 69 73 20 6e 6f 20 74 69 74 6c 65 20 69 6e 0a 20 M_REFS.if.there.is.no.title.in..
124c0 20 20 20 20 20 20 20 20 3b 3b 20 74 68 65 20 73 6f 75 72 63 65 2c 20 61 6e 64 20 69 66 20 52 4f ........;;.the.source,.and.if.RO
124e0 41 4d 5f 52 45 46 53 20 68 61 73 20 61 74 20 6d 6f 73 74 20 6f 6e 65 20 65 6e 74 72 79 2e 0a 20 AM_REFS.has.at.most.one.entry...
12500 20 20 20 20 20 20 20 20 28 28 61 6e 64 20 28 6e 75 6c 6c 20 6c 69 6e 6b 29 0a 20 20 20 20 20 20 ........((and.(null.link).......
12520 20 20 20 20 20 20 20 20 20 28 3c 3d 20 28 6c 65 6e 67 74 68 20 72 6f 61 6d 2d 72 65 66 73 29 20 .........(<=.(length.roam-refs).
12540 31 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 6e 75 6c 6c 20 28 70 6c 69 1)................(or.(null.(pli
12560 73 74 2d 67 65 74 20 73 6f 75 72 63 65 20 3a 74 69 74 6c 65 29 29 0a 20 20 20 20 20 20 20 20 20 st-get.source.:title))..........
12580 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 2d 65 6d 70 74 79 2d 70 20 28 70 6c 69 73 74 ..........(string-empty-p.(plist
125a0 2d 67 65 74 20 73 6f 75 72 63 65 20 3a 74 69 74 6c 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 -get.source.:title))))..........
125c0 20 28 6f 72 67 2d 65 6e 74 72 79 2d 70 75 74 20 28 70 6f 69 6e 74 29 20 22 52 4f 41 4d 5f 52 45 .(org-entry-put.(point)."ROAM_RE
125e0 46 53 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c FS"..........................(pl
12600 69 73 74 2d 67 65 74 20 73 6f 75 72 63 65 20 3a 75 72 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 ist-get.source.:url)))..........
12620 28 74 0a 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 65 6e 74 72 79 2d 70 75 74 20 28 70 6f 69 (t...........(org-entry-put.(poi
12640 6e 74 29 20 22 6c 69 6e 6b 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nt)."link"......................
12660 20 20 20 20 28 6f 72 67 2d 6c 69 6e 6b 2d 6d 61 6b 65 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 ....(org-link-make-string.......
12680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 73 ....................(plist-get.s
126a0 6f 75 72 63 65 20 3a 75 72 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ource.:url).....................
126c0 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 73 6f 75 72 63 65 20 3a 74 69 74 6c 65 29 29 ......(plist-get.source.:title))
126e0 29 29 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 74 72 61 6e 73 70 61 72 65 6e 63 79 20 28 6f 72 ))))).....(when.transparency.(or
12700 67 2d 65 6e 74 72 79 2d 70 75 74 20 28 70 6f 69 6e 74 29 20 22 54 52 41 4e 53 50 41 52 45 4e 43 g-entry-put.(point)."TRANSPARENC
12720 59 22 20 74 72 61 6e 73 70 61 72 65 6e 63 79 29 29 0a 20 20 20 20 28 77 68 65 6e 20 6d 65 65 74 Y".transparency)).....(when.meet
12740 0a 20 20 20 20 20 20 28 6f 72 67 2d 65 6e 74 72 79 2d 70 75 74 0a 20 20 20 20 20 20 20 28 70 6f .......(org-entry-put........(po
12760 69 6e 74 29 0a 20 20 20 20 20 20 20 22 48 41 4e 47 4f 55 54 53 22 0a 20 20 20 20 20 20 20 28 66 int)........"HANGOUTS"........(f
12780 6f 72 6d 61 74 20 22 5b 5b 25 73 5d 5b 25 73 5d 5d 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ormat."[[%s][%s]]"..............
127a0 20 20 6d 65 65 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 4a 6f 69 6e 20 48 61 6e 67 ..meet................"Join.Hang
127c0 6f 75 74 73 20 4d 65 65 74 22 29 29 29 0a 20 20 20 20 28 6f 72 67 2d 65 6e 74 72 79 2d 70 75 74 outs.Meet"))).....(org-entry-put
127e0 20 28 70 6f 69 6e 74 29 20 6f 72 67 2d 67 63 61 6c 2d 63 61 6c 65 6e 64 61 72 2d 69 64 2d 70 72 .(point).org-gcal-calendar-id-pr
12800 6f 70 65 72 74 79 20 63 61 6c 65 6e 64 61 72 2d 69 64 29 0a 20 20 20 20 28 6f 72 67 2d 67 63 61 operty.calendar-id).....(org-gca
12820 6c 2d 2d 70 75 74 2d 69 64 20 28 70 6f 69 6e 74 29 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 l--put-id.(point).calendar-id.ev
12840 65 6e 74 2d 69 64 29 0a 20 20 20 20 3b 3b 20 49 6e 73 65 72 74 20 65 76 65 6e 74 20 74 69 6d 65 ent-id).....;;.Insert.event.time
12860 20 61 6e 64 20 64 65 73 63 72 69 70 74 69 6f 6e 20 69 6e 20 3a 4f 52 47 2d 47 43 41 4c 3a 20 64 .and.description.in.:ORG-GCAL:.d
12880 72 61 77 65 72 2c 20 65 72 61 73 69 6e 67 20 74 68 65 0a 20 20 20 20 3b 3b 20 63 75 72 72 65 6e rawer,.erasing.the.....;;.curren
128a0 74 20 63 6f 6e 74 65 6e 74 73 2e 0a 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 62 61 63 6b 2d t.contents......(org-gcal--back-
128c0 74 6f 2d 68 65 61 64 69 6e 67 29 0a 20 20 20 20 28 73 65 74 71 20 65 6c 65 6d 20 28 6f 72 67 2d to-heading).....(setq.elem.(org-
128e0 65 6c 65 6d 65 6e 74 2d 61 74 2d 70 6f 69 6e 74 29 29 0a 20 20 20 20 28 73 61 76 65 2d 65 78 63 element-at-point)).....(save-exc
12900 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f ursion.......(when.(re-search-fo
12920 72 77 61 72 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 0a 20 20 20 20 20 rward..............(format......
12940 20 20 20 20 20 20 20 20 20 22 5e 5b 20 5c 74 5d 2a 3a 25 73 3a 5b 5e 7a 2d 61 5d 2a 3f 5c 6e 5b ........."^[.\t]*:%s:[^z-a]*?\n[
12960 20 5c 74 5d 2a 3a 45 4e 44 3a 5b 20 5c 74 5d 2a 5c 6e 3f 22 0a 20 20 20 20 20 20 20 20 20 20 20 .\t]*:END:[.\t]*\n?"............
12980 20 20 20 28 72 65 67 65 78 70 2d 71 75 6f 74 65 20 6f 72 67 2d 67 63 61 6c 2d 64 72 61 77 65 72 ...(regexp-quote.org-gcal-drawer
129a0 2d 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 -name))..............(save-excur
129c0 73 69 6f 6e 20 28 6f 75 74 6c 69 6e 65 2d 6e 65 78 74 2d 68 65 61 64 69 6e 67 29 20 28 70 6f 69 sion.(outline-next-heading).(poi
129e0 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 27 6e 6f 65 72 72 6f 72 29 0a 20 20 20 20 nt))..............'noerror).....
12a00 20 20 20 20 28 72 65 70 6c 61 63 65 2d 6d 61 74 63 68 20 22 22 20 27 66 69 78 65 64 63 61 73 65 ....(replace-match."".'fixedcase
12a20 29 29 29 0a 20 20 20 20 28 75 6e 6c 65 73 73 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 ))).....(unless.(re-search-forwa
12a40 72 64 20 22 3a 50 52 4f 50 45 52 54 49 45 53 3a 5b 5e 7a 2d 61 5d 2a 3f 3a 45 4e 44 3a 22 0a 20 rd.":PROPERTIES:[^z-a]*?:END:"..
12a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 ..............................(s
12a80 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 20 28 6f 75 74 6c 69 6e 65 2d 6e 65 78 74 2d 68 65 61 64 ave-excursion.(outline-next-head
12aa0 69 6e 67 29 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ing).(point))...................
12ac0 20 20 20 20 20 20 20 20 20 20 20 20 20 27 6e 6f 65 72 72 6f 72 29 0a 20 20 20 20 20 20 28 6d 65 .............'noerror).......(me
12ae0 73 73 61 67 65 20 22 50 52 4f 50 45 52 54 49 45 53 20 6e 6f 74 20 66 6f 75 6e 64 3a 20 25 73 20 ssage."PROPERTIES.not.found:.%s.
12b00 28 25 73 29 20 25 64 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 62 75 66 66 65 72 2d (%s).%d"................(buffer-
12b20 6e 61 6d 65 29 20 28 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 29 20 28 70 6f 69 6e 74 29 name).(buffer-file-name).(point)
12b40 29 29 0a 20 20 20 20 28 65 6e 64 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20 20 28 6e 65 77 6c 69 6e )).....(end-of-line).....(newlin
12b60 65 29 0a 20 20 20 20 28 69 6e 73 65 72 74 20 28 66 6f 72 6d 61 74 20 22 3a 25 73 3a 22 20 6f 72 e).....(insert.(format.":%s:".or
12b80 67 2d 67 63 61 6c 2d 64 72 61 77 65 72 2d 6e 61 6d 65 29 29 0a 20 20 20 20 28 6e 65 77 6c 69 6e g-gcal-drawer-name)).....(newlin
12ba0 65 29 0a 20 20 20 20 3b 3b 20 4b 65 65 70 20 65 78 69 73 74 69 6e 67 20 74 69 6d 65 73 74 61 6d e).....;;.Keep.existing.timestam
12bc0 70 73 20 66 6f 72 20 70 61 72 65 6e 74 20 72 65 63 75 72 72 69 6e 67 20 65 76 65 6e 74 73 2e 0a ps.for.parent.recurring.events..
12be0 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 72 65 63 75 72 72 65 6e 63 65 20 6f 6c 64 2d 73 74 ....(when.(and.recurrence.old-st
12c00 61 72 74 20 6f 6c 64 2d 65 6e 64 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 73 74 61 72 74 20 6f art.old-end).......(setq.start.o
12c20 6c 64 2d 73 74 61 72 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 64 20 6f 6c 64 2d 65 6e 64 ld-start.............end.old-end
12c40 29 29 0a 20 20 20 20 28 6c 65 74 2a 0a 20 20 20 20 20 20 20 20 28 28 74 69 6d 65 73 74 61 6d 70 )).....(let*.........((timestamp
12c60 0a 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 6f 72 20 28 73 74 72 69 6e 67 3d 20 73 74 61 72 ...........(if.(or.(string=.star
12c80 74 20 65 6e 64 29 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 61 6c 6c 64 61 79 70 20 73 74 61 72 74 20 t.end).(org-gcal--alldayp.start.
12ca0 65 6e 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 66 end))...............(org-gcal--f
12cc0 6f 72 6d 61 74 2d 69 73 6f 32 6f 72 67 20 73 74 61 72 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 ormat-iso2org.start)............
12ce0 20 28 69 66 20 28 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 3d 20 28 70 .(if.(and..................(=.(p
12d00 6c 69 73 74 2d 67 65 74 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 70 61 72 73 65 2d 64 61 74 65 20 73 list-get.(org-gcal--parse-date.s
12d20 74 61 72 74 29 20 3a 79 65 61 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tart).:year)....................
12d40 20 28 70 6c 69 73 74 2d 67 65 74 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 70 61 72 73 65 2d 64 61 74 .(plist-get.(org-gcal--parse-dat
12d60 65 20 65 6e 64 29 20 20 20 3a 79 65 61 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e.end)...:year))................
12d80 20 20 28 3d 20 28 70 6c 69 73 74 2d 67 65 74 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 70 61 72 73 65 ..(=.(plist-get.(org-gcal--parse
12da0 2d 64 61 74 65 20 73 74 61 72 74 29 20 3a 6d 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 -date.start).:mon)..............
12dc0 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 70 61 72 .......(plist-get.(org-gcal--par
12de0 73 65 2d 64 61 74 65 20 65 6e 64 29 20 20 20 3a 6d 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 se-date.end)...:mon))...........
12e00 20 20 20 20 20 20 20 28 3d 20 28 70 6c 69 73 74 2d 67 65 74 20 28 6f 72 67 2d 67 63 61 6c 2d 2d .......(=.(plist-get.(org-gcal--
12e20 70 61 72 73 65 2d 64 61 74 65 20 73 74 61 72 74 29 20 3a 64 61 79 29 0a 20 20 20 20 20 20 20 20 parse-date.start).:day).........
12e40 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 28 6f 72 67 2d 67 63 61 6c ............(plist-get.(org-gcal
12e60 2d 2d 70 61 72 73 65 2d 64 61 74 65 20 65 6e 64 29 20 20 20 3a 64 61 79 29 29 29 0a 20 20 20 20 --parse-date.end)...:day))).....
12e80 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 3c 25 73 2d 25 73 3e 22 0a 20 20 ............(format."<%s-%s>"...
12ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d ......................(org-gcal-
12ec0 2d 66 6f 72 6d 61 74 2d 64 61 74 65 20 73 74 61 72 74 20 22 25 59 2d 25 6d 2d 25 64 20 25 61 20 -format-date.start."%Y-%m-%d.%a.
12ee0 25 48 3a 25 4d 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 %H:%M").........................
12f00 28 6f 72 67 2d 67 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 64 61 74 65 20 65 6e 64 20 22 25 48 3a 25 (org-gcal--format-date.end."%H:%
12f20 4d 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 25 73 2d 2d M"))...............(format."%s--
12f40 25 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 %s".......................(org-g
12f60 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 69 73 6f 32 6f 72 67 20 73 74 61 72 74 29 0a 20 20 20 20 20 cal--format-iso2org.start)......
12f80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 66 6f 72 6d .................(org-gcal--form
12fa0 61 74 2d 69 73 6f 32 6f 72 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 at-iso2org......................
12fc0 20 20 28 69 66 20 28 3c 20 31 31 20 28 6c 65 6e 67 74 68 20 65 6e 64 29 29 0a 20 20 20 20 20 20 ..(if.(<.11.(length.end)).......
12fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 64 0a 20 20 20 20 20 20 20 .....................end........
13000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 69 73 6f ..................(org-gcal--iso
13020 2d 70 72 65 76 69 6f 75 73 2d 64 61 79 20 65 6e 64 29 29 29 29 29 29 29 29 0a 20 20 20 20 20 20 -previous-day.end)))))))).......
13040 28 69 66 20 28 6f 72 67 2d 65 6c 65 6d 65 6e 74 2d 70 72 6f 70 65 72 74 79 20 3a 73 63 68 65 64 (if.(org-element-property.:sched
13060 75 6c 65 64 20 65 6c 65 6d 29 0a 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 61 6e uled.elem)...........(unless.(an
13080 64 20 72 65 63 75 72 72 65 6e 63 65 20 6f 6c 64 2d 73 74 61 72 74 29 0a 20 20 20 20 20 20 20 20 d.recurrence.old-start).........
130a0 20 20 20 20 3b 3b 20 45 6e 73 75 72 65 20 43 4c 4f 53 45 44 20 74 69 6d 65 73 74 61 6d 70 20 69 ....;;.Ensure.CLOSED.timestamp.i
130c0 73 6e e2 80 99 74 20 77 69 70 65 64 20 6f 75 74 20 62 79 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d sn...t.wiped.out.by....org-gcal-
130e0 73 79 6e 63 e2 80 99 20 28 73 65 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 68 74 74 70 sync....(see.............;;.http
13100 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6b 69 64 64 2f 6f 72 67 2d 67 63 61 6c 2e 65 6c 2f s://github.com/kidd/org-gcal.el/
13120 69 73 73 75 65 73 2f 32 31 38 29 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 issues/218)..............(let.((
13140 6f 72 67 2d 63 6c 6f 73 65 64 2d 6b 65 65 70 2d 77 68 65 6e 2d 6e 6f 2d 74 6f 64 6f 20 74 29 29 org-closed-keep-when-no-todo.t))
13160 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 73 63 68 65 64 75 6c 65 20 6e 69 6c ...............(org-schedule.nil
13180 20 74 69 6d 65 73 74 61 6d 70 29 29 29 0a 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 74 69 .timestamp))).........(insert.ti
131a0 6d 65 73 74 61 6d 70 29 0a 20 20 20 20 20 20 20 20 28 6e 65 77 6c 69 6e 65 29 0a 20 20 20 20 20 mestamp).........(newline)......
131c0 20 20 20 28 77 68 65 6e 20 64 65 73 63 20 28 6e 65 77 6c 69 6e 65 29 29 29 29 0a 20 20 20 20 3b ...(when.desc.(newline)))).....;
131e0 3b 20 49 6e 73 65 72 74 20 65 76 65 6e 74 20 64 65 73 63 72 69 70 74 69 6f 6e 20 69 66 20 70 72 ;.Insert.event.description.if.pr
13200 65 73 65 6e 74 2e 0a 20 20 20 20 28 77 68 65 6e 20 64 65 73 63 0a 20 20 20 20 20 20 28 69 6e 73 esent......(when.desc.......(ins
13220 65 72 74 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 20 22 5e ert.(replace-regexp-in-string."^
13240 5c 2a 22 20 22 e2 9c b1 22 20 64 65 73 63 29 29 0a 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 28 \*"."...".desc)).......(insert.(
13260 69 66 20 28 73 74 72 69 6e 67 3d 20 22 5c 6e 22 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 73 61 66 65 if.(string=."\n".(org-gcal--safe
13280 2d 73 75 62 73 74 72 69 6e 67 20 64 65 73 63 20 2d 31 29 29 20 22 22 20 22 5c 6e 22 29 29 29 0a -substring.desc.-1)).""."\n"))).
132a0 20 20 20 20 28 69 6e 73 65 72 74 20 22 3a 45 4e 44 3a 22 29 0a 20 20 20 20 28 77 68 65 6e 20 28 ....(insert.":END:").....(when.(
132c0 6f 72 67 2d 67 63 61 6c 2d 2d 65 76 65 6e 74 2d 63 61 6e 63 65 6c 6c 65 64 2d 70 20 65 76 65 6e org-gcal--event-cancelled-p.even
132e0 74 29 0a 20 20 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 t).......(save-excursion........
13300 20 28 6f 72 67 2d 62 61 63 6b 2d 74 6f 2d 68 65 61 64 69 6e 67 20 74 29 0a 20 20 20 20 20 20 20 .(org-back-to-heading.t)........
13320 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 68 61 6e 64 6c 65 2d 63 61 6e 63 65 6c 6c 65 64 2d 65 6e 74 .(org-gcal--handle-cancelled-ent
13340 72 79 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 75 70 64 61 74 65 2d 6d 6f 64 65 0a 20 20 20 20 ry))).....(when.update-mode.....
13360 20 20 28 63 6c 2d 64 6f 6c 69 73 74 20 28 66 20 6f 72 67 2d 67 63 61 6c 2d 61 66 74 65 72 2d 75 ..(cl-dolist.(f.org-gcal-after-u
13380 70 64 61 74 65 2d 65 6e 74 72 79 2d 66 75 6e 63 74 69 6f 6e 73 29 0a 20 20 20 20 20 20 20 20 28 pdate-entry-functions).........(
133a0 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 62 61 save-excursion...........(org-ba
133c0 63 6b 2d 74 6f 2d 68 65 61 64 69 6e 67 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 ck-to-heading.t)...........(func
133e0 61 6c 6c 20 66 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 65 6e 74 20 75 70 64 61 74 65 2d 6d all.f.calendar-id.event.update-m
13400 6f 64 65 29 29 29 29 29 29 0a 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 68 61 6e ode))))))...(defun.org-gcal--han
13420 64 6c 65 2d 63 61 6e 63 65 6c 6c 65 64 2d 65 6e 74 72 79 20 28 29 0a 20 20 22 50 65 72 66 6f 72 dle-cancelled-entry.()..."Perfor
13440 6d 20 61 63 74 69 6f 6e 73 20 74 6f 20 62 65 20 64 6f 6e 65 20 6f 6e 20 63 61 6e 63 65 6c 6c 65 m.actions.to.be.done.on.cancelle
13460 64 20 65 6e 74 72 69 65 73 2e 22 0a 20 20 28 75 6e 6c 65 73 73 20 28 6f 72 67 2d 61 74 2d 68 65 d.entries."...(unless.(org-at-he
13480 61 64 69 6e 67 2d 70 29 0a 20 20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22 4d 75 73 74 20 62 ading-p).....(user-error."Must.b
134a0 65 20 6f 6e 20 4f 72 67 2d 6d 6f 64 65 20 68 65 61 64 69 6e 67 22 29 29 0a 20 20 28 6c 65 74 20 e.on.Org-mode.heading"))...(let.
134c0 28 28 61 6c 72 65 61 64 79 2d 63 61 6e 63 65 6c 6c 65 64 0a 20 20 20 20 20 20 20 20 20 28 73 74 ((already-cancelled..........(st
134e0 72 69 6e 67 3d 20 28 6e 74 68 20 32 20 28 6f 72 67 2d 68 65 61 64 69 6e 67 2d 63 6f 6d 70 6f 6e ring=.(nth.2.(org-heading-compon
13500 65 6e 74 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 67 2d 67 63 61 ents))...................org-gca
13520 6c 2d 63 61 6e 63 65 6c 6c 65 64 2d 74 6f 64 6f 2d 6b 65 79 77 6f 72 64 29 29 29 0a 20 20 20 20 l-cancelled-todo-keyword))).....
13540 28 75 6e 6c 65 73 73 20 61 6c 72 65 61 64 79 2d 63 61 6e 63 65 6c 6c 65 64 0a 20 20 20 20 20 20 (unless.already-cancelled.......
13560 28 77 68 65 6e 20 28 61 6e 64 20 6f 72 67 2d 67 63 61 6c 2d 75 70 64 61 74 65 2d 63 61 6e 63 65 (when.(and.org-gcal-update-cance
13580 6c 6c 65 64 2d 65 76 65 6e 74 73 2d 77 69 74 68 2d 74 6f 64 6f 0a 20 20 20 20 20 20 20 20 20 20 lled-events-with-todo...........
135a0 20 20 20 20 20 20 20 28 6d 65 6d 62 65 72 20 6f 72 67 2d 67 63 61 6c 2d 63 61 6e 63 65 6c 6c 65 .......(member.org-gcal-cancelle
135c0 64 2d 74 6f 64 6f 2d 6b 65 79 77 6f 72 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 d-todo-keyword..................
135e0 20 20 20 20 20 20 20 20 6f 72 67 2d 74 6f 64 6f 2d 6b 65 79 77 6f 72 64 73 2d 31 29 29 0a 20 20 ........org-todo-keywords-1))...
13600 20 20 20 20 20 20 28 6c 65 74 20 28 28 6f 72 67 2d 69 6e 68 69 62 69 74 2d 6c 6f 67 67 69 6e 67 ......(let.((org-inhibit-logging
13620 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 74 6f 64 6f 20 6f 72 67 2d 67 63 61 .t))...........(org-todo.org-gca
13640 6c 2d 63 61 6e 63 65 6c 6c 65 64 2d 74 6f 64 6f 2d 6b 65 79 77 6f 72 64 29 29 29 29 0a 20 20 20 l-cancelled-todo-keyword))))....
13660 20 28 77 68 65 6e 20 28 6f 72 20 6f 72 67 2d 67 63 61 6c 2d 72 65 6d 6f 76 65 2d 65 76 65 6e 74 .(when.(or.org-gcal-remove-event
13680 73 2d 77 69 74 68 2d 63 61 6e 63 65 6c 6c 65 64 2d 74 6f 64 6f 0a 20 20 20 20 20 20 20 20 20 20 s-with-cancelled-todo...........
136a0 20 20 20 20 28 6e 6f 74 20 61 6c 72 65 61 64 79 2d 63 61 6e 63 65 6c 6c 65 64 29 29 0a 20 20 20 ....(not.already-cancelled))....
136c0 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 6d 61 79 62 65 2d 72 65 6d 6f 76 65 2d 65 6e 74 72 79 ...(org-gcal--maybe-remove-entry
136e0 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 6d 61 79 62 65 2d 72 65 6d ))))..(defun.org-gcal--maybe-rem
13700 6f 76 65 2d 65 6e 74 72 79 20 28 29 0a 20 20 22 4d 61 79 62 65 20 72 65 6d 6f 76 65 20 74 68 65 ove-entry.()..."Maybe.remove.the
13720 20 65 6e 74 72 79 20 61 74 20 74 68 65 20 63 75 72 72 65 6e 74 20 68 65 61 64 69 6e 67 0a 0a 44 .entry.at.the.current.heading..D
13740 65 70 65 6e 64 73 20 6f 6e 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 e2 80 98 6f 72 67 2d 67 63 epends.on.the.value.of....org-gc
13760 61 6c 2d 72 65 6d 6f 76 65 2d 61 70 69 2d 63 61 6e 63 65 6c 6c 65 64 2d 65 76 65 6e 74 73 e2 80 al-remove-api-cancelled-events..
13780 99 2e 22 0a 20 20 28 77 68 65 6e 2d 6c 65 74 20 28 28 28 61 6e 64 20 6f 72 67 2d 67 63 61 6c 2d .."...(when-let.(((and.org-gcal-
137a0 72 65 6d 6f 76 65 2d 61 70 69 2d 63 61 6e 63 65 6c 6c 65 64 2d 65 76 65 6e 74 73 29 29 0a 20 20 remove-api-cancelled-events))...
137c0 20 20 20 20 20 20 20 20 20 20 20 28 73 6d 72 79 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 68 65 61 64 ...........(smry.(org-gcal--head
137e0 6c 69 6e 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 6f 72 20 28 65 71 20 6f 72 67 line))..............((or.(eq.org
13800 2d 67 63 61 6c 2d 72 65 6d 6f 76 65 2d 61 70 69 2d 63 61 6e 63 65 6c 6c 65 64 2d 65 76 65 6e 74 -gcal-remove-api-cancelled-event
13820 73 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 79 2d 6f 72 2d 6e 2d 70 s.t)...................(y-or-n-p
13840 20 28 66 6f 72 6d 61 74 20 22 44 65 6c 65 74 65 20 4f 72 67 20 68 65 61 64 6c 69 6e 65 20 66 6f .(format."Delete.Org.headline.fo
13860 72 20 63 61 6e 63 65 6c 6c 65 64 20 65 76 65 6e 74 5c 6e 25 73 3f 20 22 0a 20 20 20 20 20 20 20 r.cancelled.event\n%s?."........
13880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 .............................(or
138a0 20 73 6d 72 79 20 22 22 29 29 29 29 29 29 0a 20 20 20 20 28 64 65 6c 65 74 65 2d 72 65 67 69 6f .smry."")))))).....(delete-regio
138c0 6e 0a 20 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 28 6f n......(save-excursion........(o
138e0 72 67 2d 62 61 63 6b 2d 74 6f 2d 68 65 61 64 69 6e 67 20 74 29 0a 20 20 20 20 20 20 20 28 70 6f rg-back-to-heading.t)........(po
13900 69 6e 74 29 29 0a 20 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 int))......(save-excursion......
13920 20 20 28 6f 72 67 2d 65 6e 64 2d 6f 66 2d 73 75 62 74 72 65 65 20 74 20 74 29 0a 20 20 20 20 20 ..(org-end-of-subtree.t.t)......
13940 20 20 28 70 6f 69 6e 74 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d ..(point)))))..(defun.org-gcal--
13960 66 6f 72 6d 61 74 2d 64 61 74 65 20 28 73 74 72 20 66 6f 72 6d 61 74 20 26 6f 70 74 69 6f 6e 61 format-date.(str.format.&optiona
13980 6c 20 74 7a 29 0a 20 20 28 6c 65 74 2a 20 28 28 70 6c 73 74 20 28 6f 72 67 2d 67 63 61 6c 2d 2d l.tz)...(let*.((plst.(org-gcal--
139a0 70 61 72 73 65 2d 64 61 74 65 20 73 74 72 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 65 63 6f 6e parse-date.str))..........(secon
139c0 64 73 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 74 69 6d 65 2d 74 6f 2d 73 65 63 6f 6e 64 73 20 70 6c ds.(org-gcal--time-to-seconds.pl
139e0 73 74 29 29 29 0a 20 20 20 20 28 63 6f 6e 63 61 74 0a 20 20 20 20 20 28 66 6f 72 6d 61 74 2d 74 st))).....(concat......(format-t
13a00 69 6d 65 2d 73 74 72 69 6e 67 20 66 6f 72 6d 61 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ime-string.format...............
13a20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 63 6f 6e 64 73 2d 74 6f 2d 74 69 6d 65 0a 20 20 20 20 ...........(seconds-to-time.....
13a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2b 20 28 69 66 20 74 7a 20 ......................(+.(if.tz.
13a60 28 63 61 72 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 74 69 6d 65 2d 7a 6f 6e 65 20 73 65 63 6f 6e 64 (car.(org-gcal--time-zone.second
13a80 73 29 29 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s)).0)..........................
13aa0 20 20 20 20 73 65 63 6f 6e 64 73 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 ....seconds))))))..(defun.org-gc
13ac0 61 6c 2d 2d 70 61 72 61 6d 2d 64 61 74 65 20 28 73 74 72 29 0a 20 20 28 61 6e 64 20 73 74 72 0a al--param-date.(str)...(and.str.
13ae0 20 20 20 20 20 20 20 28 69 66 20 28 3c 20 31 31 20 28 6c 65 6e 67 74 68 20 73 74 72 29 29 20 22 .......(if.(<.11.(length.str))."
13b00 64 61 74 65 54 69 6d 65 22 20 22 64 61 74 65 22 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d dateTime"."date")))..(defun.org-
13b20 67 63 61 6c 2d 2d 70 61 72 61 6d 2d 64 61 74 65 2d 61 6c 74 20 28 73 74 72 29 0a 20 20 28 61 6e gcal--param-date-alt.(str)...(an
13b40 64 20 73 74 72 0a 20 20 20 20 20 20 20 28 69 66 20 28 3c 20 31 31 20 28 6c 65 6e 67 74 68 20 73 d.str........(if.(<.11.(length.s
13b60 74 72 29 29 20 22 64 61 74 65 54 69 6d 65 22 20 22 64 61 74 65 22 29 29 29 0a 0a 28 64 65 66 75 tr))."dateTime"."date")))..(defu
13b80 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 67 65 74 2d 63 61 6c 65 6e 64 61 72 2d 69 64 2d 6f 66 2d 62 n.org-gcal--get-calendar-id-of-b
13ba0 75 66 66 65 72 20 28 29 0a 20 20 22 46 69 6e 64 20 63 61 6c 65 6e 64 61 72 20 69 64 20 6f 66 20 uffer.()..."Find.calendar.id.of.
13bc0 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 2e 22 0a 20 20 28 6f 72 20 28 63 6c 2d 6c 6f 6f 70 20 current.buffer."...(or.(cl-loop.
13be0 66 6f 72 20 28 69 64 20 2e 20 66 69 6c 65 29 20 69 6e 20 6f 72 67 2d 67 63 61 6c 2d 66 65 74 63 for.(id...file).in.org-gcal-fetc
13c00 68 2d 66 69 6c 65 2d 61 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 h-file-alist................if.(
13c20 66 69 6c 65 2d 65 71 75 61 6c 2d 70 20 66 69 6c 65 20 28 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e file-equal-p.file.(buffer-file-n
13c40 61 6d 65 20 28 62 75 66 66 65 72 2d 62 61 73 65 2d 62 75 66 66 65 72 29 29 29 0a 20 20 20 20 20 ame.(buffer-base-buffer)))......
13c60 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 69 64 29 0a 20 20 20 20 20 20 28 75 73 65 72 ..........return.id).......(user
13c80 2d 65 72 72 6f 72 20 28 63 6f 6e 63 61 74 20 22 42 75 66 66 65 72 20 60 25 73 27 20 6d 61 79 20 -error.(concat."Buffer.`%s'.may.
13ca0 6e 6f 74 20 62 65 20 72 65 6c 61 74 65 64 20 74 6f 20 67 6f 6f 67 6c 65 20 63 61 6c 65 6e 64 61 not.be.related.to.google.calenda
13cc0 72 3b 20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 r;."..........................."
13ce0 70 6c 65 61 73 65 20 63 68 65 63 6b 2f 63 6f 6e 66 69 67 75 72 65 20 60 6f 72 67 2d 67 63 61 6c please.check/configure.`org-gcal
13d00 2d 66 65 74 63 68 2d 66 69 6c 65 2d 61 6c 69 73 74 27 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 -fetch-file-alist'")............
13d20 20 20 20 20 20 20 20 28 62 75 66 66 65 72 2d 6e 61 6d 65 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 .......(buffer-name))))..(defun.
13d40 6f 72 67 2d 67 63 61 6c 2d 2d 67 65 74 2d 65 76 65 6e 74 20 28 63 61 6c 65 6e 64 61 72 2d 69 64 org-gcal--get-event.(calendar-id
13d60 20 65 76 65 6e 74 2d 69 64 29 0a 20 20 22 5c 0a 52 65 74 72 69 65 76 65 73 20 61 20 47 6f 6f 67 .event-id)..."\.Retrieves.a.Goog
13d80 6c 65 20 43 61 6c 65 6e 64 61 72 20 65 76 65 6e 74 20 67 69 76 65 6e 20 61 20 43 41 4c 45 4e 44 le.Calendar.event.given.a.CALEND
13da0 41 52 2d 49 44 20 61 6e 64 20 45 56 45 4e 54 2d 49 44 2e 20 49 66 20 74 68 65 0a 61 63 63 65 73 AR-ID.and.EVENT-ID..If.the.acces
13dc0 73 20 74 6f 6b 65 6e 20 41 2d 54 4f 4b 45 4e 20 69 73 20 6e 6f 74 20 73 70 65 63 69 66 69 65 64 s.token.A-TOKEN.is.not.specified
13de0 2c 20 69 74 20 69 73 20 6c 6f 61 64 65 64 20 66 72 6f 6d 20 74 68 65 20 74 6f 6b 65 6e 20 66 69 ,.it.is.loaded.from.the.token.fi
13e00 6c 65 2e 0a 0a 52 65 74 75 72 6e 73 20 61 20 e2 80 98 64 65 66 65 72 72 65 64 e2 80 99 20 66 75 le...Returns.a....deferred....fu
13e20 6e 63 74 69 6f 6e 20 74 68 61 74 20 6f 6e 20 73 75 63 63 65 73 73 20 72 65 74 75 72 6e 73 20 61 nction.that.on.success.returns.a
13e40 20 e2 80 98 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 e2 80 98 0a 6f 62 6a 65 63 74 2e 22 ....request-response....object."
13e60 0a 20 20 28 6c 65 74 20 28 28 61 2d 74 6f 6b 65 6e 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 67 65 74 ...(let.((a-token.(org-gcal--get
13e80 2d 61 63 63 65 73 73 2d 74 6f 6b 65 6e 20 63 61 6c 65 6e 64 61 72 2d 69 64 29 29 29 0a 20 20 20 -access-token.calendar-id)))....
13ea0 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 20 20 20 20 28 72 65 71 75 65 73 74 2d 64 65 66 65 72 .(deferred:$......(request-defer
13ec0 72 65 64 0a 20 20 20 20 20 20 28 63 6f 6e 63 61 74 0a 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 red.......(concat........(org-gc
13ee0 61 6c 2d 65 76 65 6e 74 73 2d 75 72 6c 20 63 61 6c 65 6e 64 61 72 2d 69 64 29 0a 20 20 20 20 20 al-events-url.calendar-id)......
13f00 20 20 28 63 6f 6e 63 61 74 20 22 2f 22 20 65 76 65 6e 74 2d 69 64 29 29 0a 20 20 20 20 20 20 3a ..(concat."/".event-id)).......:
13f20 74 79 70 65 20 22 47 45 54 22 0a 20 20 20 20 20 20 3a 68 65 61 64 65 72 73 0a 20 20 20 20 20 20 type."GET".......:headers.......
13f40 60 28 28 22 41 63 63 65 70 74 22 20 2e 20 22 61 70 70 6c 69 63 61 74 69 6f 6e 2f 6a 73 6f 6e 22 `(("Accept"..."application/json"
13f60 29 0a 20 20 20 20 20 20 20 20 28 22 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 22 20 2e 20 2c 28 66 ).........("Authorization"...,(f
13f80 6f 72 6d 61 74 20 22 42 65 61 72 65 72 20 25 73 22 20 61 2d 74 6f 6b 65 6e 29 29 29 0a 20 20 20 ormat."Bearer.%s".a-token)))....
13fa0 20 20 20 3a 70 61 72 73 65 72 20 27 6f 72 67 2d 67 63 61 6c 2d 2d 6a 73 6f 6e 2d 72 65 61 64 29 ...:parser.'org-gcal--json-read)
13fc0 0a 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 ......(deferred:nextc.it........
13fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 72 65 73 70 6f 6e 73 65 29 ..............(lambda.(response)
14000 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 0a 20 20 20 ........................(let....
14020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 5f 64 61 74 61 20 ........................((_data.
14040 28 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 2d 64 61 74 61 20 72 65 73 70 6f 6e 73 65 29 (request-response-data.response)
14060 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 ).............................(s
14080 74 61 74 75 73 2d 63 6f 64 65 20 28 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 2d 73 74 61 tatus-code.(request-response-sta
140a0 74 75 73 2d 63 6f 64 65 20 72 65 73 70 6f 6e 73 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 tus-code.response)).............
140c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 2d 74 68 72 6f 77 6e 20 28 72 ................(error-thrown.(r
140e0 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 2d 65 72 72 6f 72 2d 74 68 72 6f 77 6e 20 72 65 73 equest-response-error-thrown.res
14100 70 6f 6e 73 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ponse)))........................
14120 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..(cond.........................
14140 20 20 3b 3b 20 49 66 20 74 68 65 72 65 20 69 73 20 6e 6f 20 6e 65 74 77 6f 72 6b 20 63 6f 6e 6e ..;;.If.there.is.no.network.conn
14160 65 63 74 69 76 69 74 79 2c 20 74 68 65 20 72 65 73 70 6f 6e 73 65 20 77 69 6c 6c 20 6e 6f 74 0a ectivity,.the.response.will.not.
14180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 69 6e 63 ..........................;;.inc
141a0 6c 75 64 65 20 61 20 73 74 61 74 75 73 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 lude.a.status.code..............
141c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 65 71 20 73 74 61 74 75 73 2d 63 6f 64 65 20 6e ..............((eq.status-code.n
141e0 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 il)............................(
14200 6f 72 67 2d 67 63 61 6c 2d 2d 6e 6f 74 69 66 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 org-gcal--notify................
14220 20 20 20 20 20 20 20 20 20 20 20 20 20 22 47 6f 74 20 45 72 72 6f 72 22 0a 20 20 20 20 20 20 20 ............."Got.Error"........
14240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 43 6f 75 6c 64 20 6e 6f 74 20 ....................."Could.not.
14260 63 6f 6e 74 61 63 74 20 72 65 6d 6f 74 65 20 73 65 72 76 69 63 65 2e 20 50 6c 65 61 73 65 20 63 contact.remote.service..Please.c
14280 68 65 63 6b 20 79 6f 75 72 20 6e 65 74 77 6f 72 6b 20 63 6f 6e 6e 65 63 74 69 76 69 74 79 2e 22 heck.your.network.connectivity."
142a0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72 )............................(er
142c0 72 6f 72 20 22 4e 65 74 77 6f 72 6b 20 63 6f 6e 6e 65 63 74 69 76 69 74 79 20 69 73 73 75 65 22 ror."Network.connectivity.issue"
142e0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 65 ))...........................((e
14300 71 20 34 30 31 20 28 6f 72 20 28 70 6c 69 73 74 2d 67 65 74 20 28 70 6c 69 73 74 2d 67 65 74 20 q.401.(or.(plist-get.(plist-get.
14320 28 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 2d 64 61 74 61 20 72 65 73 70 6f 6e 73 65 29 (request-response-data.response)
14340 20 3a 65 72 72 6f 72 29 20 3a 63 6f 64 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .:error).:code).................
14360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 75 73 2d 63 6f .......................status-co
14380 64 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 de))............................
143a0 28 6f 72 67 2d 67 63 61 6c 2d 2d 6e 6f 74 69 66 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (org-gcal--notify...............
143c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 52 65 63 65 69 76 65 64 20 48 54 54 50 20 34 30 31 .............."Received.HTTP.401
143e0 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 4f "............................."O
14400 41 75 74 68 20 74 6f 6b 65 6e 20 65 78 70 69 72 65 64 2e 20 4e 6f 77 20 74 72 79 69 6e 67 20 74 Auth.token.expired..Now.trying.t
14420 6f 20 72 65 66 72 65 73 68 20 74 6f 6b 65 6e 2e 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 o.refresh.token.")..............
14440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 20 20 20 20 20 ..............(deferred:$.......
14460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d ......................(org-gcal-
14480 2d 72 65 66 72 65 73 68 2d 74 6f 6b 65 6e 20 63 61 6c 65 6e 64 61 72 2d 69 64 29 0a 20 20 20 20 -refresh-token.calendar-id).....
144a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 ........................(deferre
144c0 64 3a 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 d:nextc.it......................
144e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 .......................(lambda.(
14500 5f 75 6e 75 73 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 _unused)........................
14520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c .......................(org-gcal
14540 2d 2d 67 65 74 2d 65 76 65 6e 74 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 65 6e 74 2d 69 64 --get-event.calendar-id.event-id
14560 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )))))...........................
14580 3b 3b 20 47 65 6e 65 72 69 63 20 65 72 72 6f 72 2d 68 61 6e 64 6c 65 72 20 6d 65 61 6e 74 20 74 ;;.Generic.error-handler.meant.t
145a0 6f 20 70 72 6f 76 69 64 65 20 75 73 65 66 75 6c 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f o.provide.useful.information.abo
145c0 75 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 ut...........................;;.
145e0 66 61 69 6c 75 72 65 20 63 61 73 65 73 20 6e 6f 74 20 6f 74 68 65 72 77 69 73 65 20 65 78 70 6c failure.cases.not.otherwise.expl
14600 69 63 69 74 6c 79 20 73 70 65 63 69 66 69 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 icitly.specified................
14620 20 20 20 20 20 20 20 20 20 20 20 20 28 28 6e 6f 74 20 28 65 71 20 65 72 72 6f 72 2d 74 68 72 6f ............((not.(eq.error-thro
14640 77 6e 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 wn.nil))........................
14660 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 6e 6f 74 69 66 79 0a 20 20 20 20 20 20 20 20 20 20 ....(org-gcal--notify...........
14680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 22 53 74 61 74 75 ..................(concat."Statu
146a0 73 20 63 6f 64 65 3a 20 22 20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 72 69 6e 67 20 73 74 61 74 s.code:.".(number-to-string.stat
146c0 75 73 2d 63 6f 64 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 us-code)).......................
146e0 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 25 73 20 25 73 3a 20 25 73 22 0a 20 20 20 20 20 20 ......(format."%s.%s:.%s".......
14700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 ..............................ca
14720 6c 65 6e 64 61 72 2d 69 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lendar-id.......................
14740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 65 6e 74 2d 69 64 0a 20 20 20 20 20 20 20 20 20 ..............event-id..........
14760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 70 2d 74 ...........................(pp-t
14780 6f 2d 73 74 72 69 6e 67 20 65 72 72 6f 72 2d 74 68 72 6f 77 6e 29 29 29 0a 20 20 20 20 20 20 20 o-string.error-thrown)))........
147a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 6f 72 67 2d ....................(error."org-
147c0 67 63 61 6c 2d 2d 67 65 74 2d 65 76 65 6e 74 3a 20 47 6f 74 20 65 72 72 6f 72 20 25 53 20 66 6f gcal--get-event:.Got.error.%S.fo
147e0 72 20 25 73 20 25 73 3a 20 25 53 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r.%s.%s:.%S"....................
14800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 75 73 2d 63 6f 64 65 20 63 61 6c 65 6e ...............status-code.calen
14820 64 61 72 2d 69 64 20 65 76 65 6e 74 2d 69 64 20 65 72 72 6f 72 2d 74 68 72 6f 77 6e 29 29 0a 20 dar-id.event-id.error-thrown))..
14840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 46 65 74 63 .........................;;.Fetc
14860 68 20 77 61 73 20 73 75 63 63 65 73 73 66 75 6c 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 h.was.successful................
14880 20 20 20 20 20 20 20 20 20 20 20 20 28 74 20 72 65 73 70 6f 6e 73 65 29 29 29 29 29 29 29 29 0a ............(t.response)))))))).
148a0 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 70 6f 73 74 2d 65 76 65 6e 74 20 28 73 74 .(defun.org-gcal--post-event.(st
148c0 61 72 74 20 65 6e 64 20 73 6d 72 79 20 6c 6f 63 20 73 6f 75 72 63 65 20 64 65 73 63 20 63 61 6c art.end.smry.loc.source.desc.cal
148e0 65 6e 64 61 72 2d 69 64 20 6d 61 72 6b 65 72 20 74 72 61 6e 73 70 61 72 65 6e 63 79 20 26 6f 70 endar-id.marker.transparency.&op
14900 74 69 6f 6e 61 6c 20 65 74 61 67 20 65 76 65 6e 74 2d 69 64 20 61 2d 74 6f 6b 65 6e 20 73 6b 69 tional.etag.event-id.a-token.ski
14920 70 2d 69 6d 70 6f 72 74 20 73 6b 69 70 2d 65 78 70 6f 72 74 29 0a 20 20 22 5c 0a 43 72 65 61 74 p-import.skip-export)..."\.Creat
14940 65 73 20 6f 72 20 75 70 64 61 74 65 73 20 61 6e 20 65 76 65 6e 74 20 6f 6e 20 43 61 6c 65 6e 64 es.or.updates.an.event.on.Calend
14960 61 72 20 43 41 4c 45 4e 44 41 52 2d 49 44 20 77 69 74 68 20 61 74 74 72 69 62 75 74 65 73 20 53 ar.CALENDAR-ID.with.attributes.S
14980 54 41 52 54 2c 20 45 4e 44 2c 0a 53 4d 52 59 2c 20 4c 4f 43 2c 20 44 45 53 43 2e 20 54 68 65 20 TART,.END,.SMRY,.LOC,.DESC..The.
149a0 4f 72 67 20 62 75 66 66 65 72 20 61 6e 64 20 70 6f 69 6e 74 20 66 72 6f 6d 20 77 68 69 63 68 20 Org.buffer.and.point.from.which.
149c0 74 68 65 20 65 76 65 6e 74 20 69 73 20 72 65 61 64 20 69 73 20 67 69 76 65 6e 0a 62 79 20 4d 41 the.event.is.read.is.given.by.MA
149e0 52 4b 45 52 2e 0a 0a 49 66 20 45 54 41 47 20 69 73 20 70 72 6f 76 69 64 65 64 2c 20 69 74 20 69 RKER...If.ETAG.is.provided,.it.i
14a00 73 20 75 73 65 64 20 74 6f 20 72 65 74 72 69 65 76 65 20 74 68 65 20 65 76 65 6e 74 20 64 61 74 s.used.to.retrieve.the.event.dat
14a20 61 20 66 72 6f 6d 20 74 68 65 20 73 65 72 76 65 72 20 61 6e 64 0a 6f 76 65 72 77 72 69 74 65 20 a.from.the.server.and.overwrite.
14a40 74 68 65 20 65 76 65 6e 74 20 61 74 20 4d 41 52 4b 45 52 20 69 66 20 74 68 65 20 65 76 65 6e 74 the.event.at.MARKER.if.the.event
14a60 20 68 61 73 20 63 68 61 6e 67 65 64 20 6f 6e 20 74 68 65 20 73 65 72 76 65 72 2e 20 4d 41 52 4b .has.changed.on.the.server..MARK
14a80 45 52 20 69 73 0a 64 65 73 74 72 6f 79 65 64 20 62 79 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e ER.is.destroyed.by.this.function
14aa0 2e 0a 0a 52 65 74 75 72 6e 73 20 61 20 e2 80 98 64 65 66 65 72 72 65 64 e2 80 99 20 6f 62 6a 65 ...Returns.a....deferred....obje
14ac0 63 74 20 74 68 61 74 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 77 61 69 74 20 66 6f 72 20 ct.that.can.be.used.to.wait.for.
14ae0 63 6f 6d 70 6c 65 74 69 6f 6e 2e 22 0a 20 20 28 6c 65 74 20 28 28 73 74 69 6d 65 20 28 6f 72 67 completion."...(let.((stime.(org
14b00 2d 67 63 61 6c 2d 2d 70 61 72 61 6d 2d 64 61 74 65 20 73 74 61 72 74 29 29 0a 20 20 20 20 20 20 -gcal--param-date.start)).......
14b20 20 20 28 65 74 69 6d 65 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 70 61 72 61 6d 2d 64 61 74 65 20 65 ..(etime.(org-gcal--param-date.e
14b40 6e 64 29 29 0a 20 20 20 20 20 20 20 20 28 73 74 69 6d 65 2d 61 6c 74 20 28 6f 72 67 2d 67 63 61 nd)).........(stime-alt.(org-gca
14b60 6c 2d 2d 70 61 72 61 6d 2d 64 61 74 65 2d 61 6c 74 20 73 74 61 72 74 29 29 0a 20 20 20 20 20 20 l--param-date-alt.start)).......
14b80 20 20 28 65 74 69 6d 65 2d 61 6c 74 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 70 61 72 61 6d 2d 64 61 ..(etime-alt.(org-gcal--param-da
14ba0 74 65 2d 61 6c 74 20 65 6e 64 29 29 0a 20 20 20 20 20 20 20 20 28 61 2d 74 6f 6b 65 6e 20 28 6f te-alt.end)).........(a-token.(o
14bc0 72 20 61 2d 74 6f 6b 65 6e 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 67 65 74 2d 61 63 63 65 73 73 2d r.a-token.(org-gcal--get-access-
14be0 74 6f 6b 65 6e 20 63 61 6c 65 6e 64 61 72 2d 69 64 29 29 29 29 0a 20 20 20 20 28 64 65 66 65 72 token.calendar-id)))).....(defer
14c00 72 65 64 3a 74 72 79 0a 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 20 20 20 20 20 28 red:try......(deferred:$.......(
14c20 61 70 70 6c 79 0a 20 20 20 20 20 20 20 23 27 72 65 71 75 65 73 74 2d 64 65 66 65 72 72 65 64 0a apply........#'request-deferred.
14c40 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 0a 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c .......(concat.........(org-gcal
14c60 2d 65 76 65 6e 74 73 2d 75 72 6c 20 63 61 6c 65 6e 64 61 72 2d 69 64 29 0a 20 20 20 20 20 20 20 -events-url.calendar-id)........
14c80 20 28 77 68 65 6e 20 65 76 65 6e 74 2d 69 64 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 .(when.event-id...........(conca
14ca0 74 20 22 2f 22 20 28 75 72 6c 2d 68 65 78 69 66 79 2d 73 74 72 69 6e 67 20 65 76 65 6e 74 2d 69 t."/".(url-hexify-string.event-i
14cc0 64 29 29 29 29 0a 20 20 20 20 20 20 20 3a 74 79 70 65 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 d))))........:type.(cond........
14ce0 20 20 20 20 20 20 20 28 73 6b 69 70 2d 65 78 70 6f 72 74 20 22 47 45 54 22 29 0a 20 20 20 20 20 .......(skip-export."GET")......
14d00 20 20 20 20 20 20 20 20 20 28 65 76 65 6e 74 2d 69 64 20 22 50 41 54 43 48 22 29 0a 20 20 20 20 .........(event-id."PATCH").....
14d20 20 20 20 20 20 20 20 20 20 20 28 74 20 22 50 4f 53 54 22 29 29 0a 20 20 20 20 20 20 20 3a 68 65 ..........(t."POST"))........:he
14d40 61 64 65 72 73 20 28 61 70 70 65 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 60 aders.(append..................`
14d60 28 28 22 43 6f 6e 74 65 6e 74 2d 54 79 70 65 22 20 2e 20 22 61 70 70 6c 69 63 61 74 69 6f 6e 2f (("Content-Type"..."application/
14d80 6a 73 6f 6e 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 22 41 63 63 65 json")....................("Acce
14da0 70 74 22 20 2e 20 22 61 70 70 6c 69 63 61 74 69 6f 6e 2f 6a 73 6f 6e 22 29 0a 20 20 20 20 20 20 pt"..."application/json").......
14dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 22 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 22 20 2e 20 .............("Authorization"...
14de0 2c 28 66 6f 72 6d 61 74 20 22 42 65 61 72 65 72 20 25 73 22 20 61 2d 74 6f 6b 65 6e 29 29 29 0a ,(format."Bearer.%s".a-token))).
14e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 20 .................(cond..........
14e20 20 20 20 20 20 20 20 20 20 28 28 6e 75 6c 6c 20 65 74 61 67 29 20 6e 69 6c 29 0a 20 20 20 20 20 .........((null.etag).nil)......
14e40 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 6e 75 6c 6c 20 65 76 65 6e 74 2d 69 64 29 0a 20 20 .............((null.event-id)...
14e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 6f 72 67 2d 67 63 61 .................(error."org-gca
14e80 6c 2d 2d 70 6f 73 74 2d 65 76 65 6e 74 3a 20 25 73 20 25 73 20 25 73 3a 20 25 73 22 0a 20 20 20 l--post-event:.%s.%s.%s:.%s"....
14ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6f 69 6e 74 2d 6d 61 .......................(point-ma
14ec0 72 6b 65 72 29 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 65 6e 74 2d 69 64 0a 20 20 20 20 20 rker).calendar-id.event-id......
14ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 45 76 65 6e 74 20 63 61 6e 6e ....................."Event.cann
14f00 6f 74 20 68 61 76 65 20 45 54 61 67 20 73 65 74 20 77 68 65 6e 20 65 76 65 6e 74 20 49 44 20 61 ot.have.ETag.set.when.event.ID.a
14f20 62 73 65 6e 74 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 0a 20 20 bsent"))...................(t...
14f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 60 28 28 22 49 66 2d 4d 61 74 63 68 22 20 2e .................`(("If-Match"..
14f60 20 2c 65 74 61 67 29 29 29 29 29 0a 20 20 20 20 20 20 20 3a 70 61 72 73 65 72 20 27 6f 72 67 2d .,etag)))))........:parser.'org-
14f80 67 63 61 6c 2d 2d 6a 73 6f 6e 2d 72 65 61 64 0a 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 73 gcal--json-read........(unless.s
14fa0 6b 69 70 2d 65 78 70 6f 72 74 0a 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 0a 20 20 20 20 20 20 kip-export..........(list.......
14fc0 20 20 20 20 3a 64 61 74 61 20 28 65 6e 63 6f 64 65 2d 63 6f 64 69 6e 67 2d 73 74 72 69 6e 67 0a ....:data.(encode-coding-string.
14fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6a 73 6f 6e 2d 65 6e 63 6f 64 65 0a 20 20 .................(json-encode...
15000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 70 70 65 6e 64 0a 20 20 20 20 20 20 20 20 ................(append.........
15020 20 20 20 20 20 20 20 20 20 20 20 60 28 28 22 73 75 6d 6d 61 72 79 22 20 2e 20 2c 73 6d 72 79 29 ...........`(("summary"...,smry)
15040 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 22 6c 6f 63 61 74 69 6f 6e ......................("location
15060 22 20 2e 20 2c 6c 6f 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 "...,loc)......................(
15080 22 73 6f 75 72 63 65 22 20 2e 20 2c 73 6f 75 72 63 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 "source"...,source).............
150a0 20 20 20 20 20 20 20 20 20 28 22 74 72 61 6e 73 70 61 72 65 6e 63 79 22 20 2e 20 2c 74 72 61 6e .........("transparency"...,tran
150c0 73 70 61 72 65 6e 63 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 sparency)......................(
150e0 22 64 65 73 63 72 69 70 74 69 6f 6e 22 20 2e 20 2c 64 65 73 63 29 29 0a 20 20 20 20 20 20 20 20 "description"...,desc)).........
15100 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 61 6e 64 20 73 74 61 72 74 20 65 6e 64 29 0a 20 ...........(if.(and.start.end)..
15120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 60 28 28 22 73 74 61 72 74 22 ......................`(("start"
15140 20 28 2c 73 74 69 6d 65 20 2e 20 2c 73 74 61 72 74 29 20 28 2c 73 74 69 6d 65 2d 61 6c 74 20 2e .(,stime...,start).(,stime-alt..
15160 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .nil))..........................
15180 28 22 65 6e 64 22 20 28 2c 65 74 69 6d 65 20 2e 20 2c 28 69 66 20 28 65 71 75 61 6c 20 22 64 61 ("end".(,etime...,(if.(equal."da
151a0 74 65 22 20 65 74 69 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 te".etime)......................
151c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 ..........................(org-g
151e0 63 61 6c 2d 2d 69 73 6f 2d 6e 65 78 74 2d 64 61 79 20 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 cal--iso-next-day.end)..........
15200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
15220 20 20 20 20 65 6e 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....end)).......................
15240 20 20 20 20 28 2c 65 74 69 6d 65 2d 61 6c 74 20 2e 20 6e 69 6c 29 29 29 0a 20 20 20 20 20 20 20 ....(,etime-alt...nil)))........
15260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 ..............nil)))............
15280 20 20 20 20 20 20 27 75 74 66 2d 38 29 29 29 29 0a 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 ......'utf-8)))).......(deferred
152a0 3a 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 :nextc.it.......................
152c0 28 6c 61 6d 62 64 61 20 28 72 65 73 70 6f 6e 73 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 (lambda.(response)..............
152e0 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........(let.................
15300 20 20 20 20 20 20 20 20 20 20 20 20 28 28 5f 74 65 6d 70 20 28 72 65 71 75 65 73 74 2d 72 65 73 ............((_temp.(request-res
15320 70 6f 6e 73 65 2d 64 61 74 61 20 72 65 73 70 6f 6e 73 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 ponse-data.response))...........
15340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 61 74 75 73 2d 63 6f 64 65 20 ...................(status-code.
15360 28 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 2d 73 74 61 74 75 73 2d 63 6f 64 65 20 72 65 (request-response-status-code.re
15380 73 70 6f 6e 73 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 sponse))........................
153a0 20 20 20 20 20 20 28 65 72 72 6f 72 2d 6d 73 67 20 28 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e ......(error-msg.(request-respon
153c0 73 65 2d 65 72 72 6f 72 2d 74 68 72 6f 77 6e 20 72 65 73 70 6f 6e 73 65 29 29 29 0a 20 20 20 20 se-error-thrown.response))).....
153e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 ......................(cond.....
15400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 49 66 20 74 68 65 .......................;;.If.the
15420 72 65 20 69 73 20 6e 6f 20 6e 65 74 77 6f 72 6b 20 63 6f 6e 6e 65 63 74 69 76 69 74 79 2c 20 74 re.is.no.network.connectivity,.t
15440 68 65 20 72 65 73 70 6f 6e 73 65 20 77 69 6c 6c 20 6e 6f 74 0a 20 20 20 20 20 20 20 20 20 20 20 he.response.will.not............
15460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 69 6e 63 6c 75 64 65 20 61 20 73 74 61 ................;;.include.a.sta
15480 74 75 73 20 63 6f 64 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tus.code........................
154a0 20 20 20 20 20 28 28 65 71 20 73 74 61 74 75 73 2d 63 6f 64 65 20 6e 69 6c 29 0a 20 20 20 20 20 .....((eq.status-code.nil)......
154c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c .......................(org-gcal
154e0 2d 2d 6e 6f 74 69 66 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 --notify........................
15500 20 20 20 20 20 20 22 47 6f 74 20 45 72 72 6f 72 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......"Got.Error"...............
15520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 43 6f 75 6c 64 20 6e 6f 74 20 63 6f 6e 74 61 63 ..............."Could.not.contac
15540 74 20 72 65 6d 6f 74 65 20 73 65 72 76 69 63 65 2e 20 50 6c 65 61 73 65 20 63 68 65 63 6b 20 79 t.remote.service..Please.check.y
15560 6f 75 72 20 6e 65 74 77 6f 72 6b 20 63 6f 6e 6e 65 63 74 69 76 69 74 79 2e 22 29 0a 20 20 20 20 our.network.connectivity.").....
15580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 ........................(error."
155a0 4e 65 74 77 6f 72 6b 20 63 6f 6e 6e 65 63 74 69 76 69 74 79 20 69 73 73 75 65 22 29 29 0a 20 20 Network.connectivity.issue"))...
155c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 65 71 20 34 30 .........................((eq.40
155e0 31 20 28 6f 72 20 28 70 6c 69 73 74 2d 67 65 74 20 28 70 6c 69 73 74 2d 67 65 74 20 28 72 65 71 1.(or.(plist-get.(plist-get.(req
15600 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 2d 64 61 74 61 20 72 65 73 70 6f 6e 73 65 29 20 3a 65 72 uest-response-data.response).:er
15620 72 6f 72 29 20 3a 63 6f 64 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ror).:code).....................
15640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 75 73 2d 63 6f 64 65 29 ....................status-code)
15660 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f ).............................(o
15680 72 67 2d 67 63 61 6c 2d 2d 6e 6f 74 69 66 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rg-gcal--notify.................
156a0 20 20 20 20 20 20 20 20 20 20 20 20 20 22 52 65 63 65 69 76 65 64 20 48 54 54 50 20 34 30 31 22 ............."Received.HTTP.401"
156c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 4f .............................."O
156e0 41 75 74 68 20 74 6f 6b 65 6e 20 65 78 70 69 72 65 64 2e 20 4e 6f 77 20 74 72 79 69 6e 67 20 74 Auth.token.expired..Now.trying.t
15700 6f 20 72 65 66 72 65 73 68 2d 74 6f 6b 65 6e 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 o.refresh-token")...............
15720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 20 20 20 20 20 ..............(deferred:$.......
15740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c .......................(org-gcal
15760 2d 2d 72 65 66 72 65 73 68 2d 74 6f 6b 65 6e 20 63 61 6c 65 6e 64 61 72 2d 69 64 29 0a 20 20 20 --refresh-token.calendar-id)....
15780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 ..........................(defer
157a0 72 65 64 3a 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 red:nextc.it....................
157c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 ..........................(lambd
157e0 61 20 28 5f 75 6e 75 73 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 a.(_unused).....................
15800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d ...........................(org-
15820 67 63 61 6c 2d 2d 70 6f 73 74 2d 65 76 65 6e 74 20 73 74 61 72 74 20 65 6e 64 20 73 6d 72 79 20 gcal--post-event.start.end.smry.
15840 6c 6f 63 20 73 6f 75 72 63 65 20 64 65 73 63 20 63 61 6c 65 6e 64 61 72 2d 69 64 0a 20 20 20 20 loc.source.desc.calendar-id.....
15860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
15880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
158a0 20 6d 61 72 6b 65 72 20 74 72 61 6e 73 70 61 72 65 6e 63 79 20 65 74 61 67 20 65 76 65 6e 74 2d .marker.transparency.etag.event-
158c0 69 64 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 id.nil..........................
158e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
15900 20 20 20 20 20 20 20 20 20 20 20 20 73 6b 69 70 2d 69 6d 70 6f 72 74 20 73 6b 69 70 2d 65 78 70 ............skip-import.skip-exp
15920 6f 72 74 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ort)))))........................
15940 20 20 20 20 3b 3b 20 45 54 61 67 20 6f 6e 20 63 75 72 72 65 6e 74 20 65 6e 74 72 79 20 69 73 20 ....;;.ETag.on.current.entry.is.
15960 73 74 61 6c 65 2e 20 54 68 69 73 20 6d 65 61 6e 73 20 74 68 65 20 65 76 65 6e 74 20 6f 6e 20 74 stale..This.means.the.event.on.t
15980 68 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b he............................;;
159a0 20 73 65 72 76 65 72 20 68 61 73 20 62 65 65 6e 20 75 70 64 61 74 65 64 2e 20 49 6e 20 74 68 61 .server.has.been.updated..In.tha
159c0 74 20 63 61 73 65 2c 20 75 70 64 61 74 65 20 74 68 65 20 65 76 65 6e 74 20 75 73 69 6e 67 0a 20 t.case,.update.the.event.using..
159e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 68 65 ..........................;;.the
15a00 20 64 61 74 61 20 66 72 6f 6d 20 74 68 65 20 73 65 72 76 65 72 2e 0a 20 20 20 20 20 20 20 20 20 .data.from.the.server...........
15a20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 65 71 20 73 74 61 74 75 73 2d 63 6f ..................((eq.status-co
15a40 64 65 20 34 31 32 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 de.412).........................
15a60 20 20 20 20 28 75 6e 6c 65 73 73 20 73 6b 69 70 2d 69 6d 70 6f 72 74 0a 20 20 20 20 20 20 20 20 ....(unless.skip-import.........
15a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d ......................(org-gcal-
15aa0 2d 6e 6f 74 69 66 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -notify.........................
15ac0 20 20 20 20 20 20 20 22 52 65 63 65 69 76 65 64 20 48 54 54 50 20 34 31 32 22 0a 20 20 20 20 20 ......."Received.HTTP.412"......
15ae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 ..........................(forma
15b00 74 20 22 45 54 61 67 20 73 74 61 6c 65 20 66 6f 72 20 25 73 5c 6e 25 73 5c 6e 5c 6e 25 73 22 0a t."ETag.stale.for.%s\n%s\n\n%s".
15b20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
15b40 20 20 20 20 20 20 20 73 6d 72 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......smry.....................
15b60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 66 6f ...................(org-gcal--fo
15b80 72 6d 61 74 2d 65 6e 74 72 79 2d 69 64 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 65 6e 74 2d rmat-entry-id.calendar-id.event-
15ba0 69 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 id).............................
15bc0 20 20 20 20 20 20 20 20 20 20 20 22 57 69 6c 6c 20 6f 76 65 72 77 72 69 74 65 20 74 68 69 73 20 ..........."Will.overwrite.this.
15be0 65 6e 74 72 79 20 77 69 74 68 20 65 76 65 6e 74 20 66 72 6f 6d 20 73 65 72 76 65 72 2e 22 29 29 entry.with.event.from.server."))
15c00 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ...............................(
15c20 64 65 66 65 72 72 65 64 3a 24 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 deferred:$......................
15c40 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 67 65 74 2d 65 76 65 6e 74 20 63 ..........(org-gcal--get-event.c
15c60 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 65 6e 74 2d 69 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 alendar-id.event-id)............
15c80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 ....................(deferred:ne
15ca0 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 xtc.it..........................
15cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 72 ......................(lambda.(r
15ce0 65 73 70 6f 6e 73 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 esponse)........................
15d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 61 76 65 2d ..........................(save-
15d20 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 excursion.......................
15d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 .............................(wi
15d60 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 6d 61 72 6b 65 72 2d 62 75 66 66 65 72 th-current-buffer.(marker-buffer
15d80 20 6d 61 72 6b 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .marker)........................
15da0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 67 ..............................(g
15dc0 6f 74 6f 2d 63 68 61 72 20 28 6d 61 72 6b 65 72 2d 70 6f 73 69 74 69 6f 6e 20 6d 61 72 6b 65 72 oto-char.(marker-position.marker
15de0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ))..............................
15e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 ........................(org-gca
15e20 6c 2d 2d 75 70 64 61 74 65 2d 65 6e 74 72 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 l--update-entry.................
15e40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
15e60 20 20 20 20 20 20 63 61 6c 65 6e 64 61 72 2d 69 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......calendar-id...............
15e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
15ea0 20 20 20 20 20 20 20 20 28 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 2d 64 61 74 61 20 72 ........(request-response-data.r
15ec0 65 73 70 6f 6e 73 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 esponse)........................
15ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ...............................(
15f00 69 66 20 65 76 65 6e 74 2d 69 64 20 27 75 70 64 61 74 65 2d 65 78 69 73 74 69 6e 67 20 27 63 72 if.event-id.'update-existing.'cr
15f20 65 61 74 65 2d 66 72 6f 6d 2d 65 6e 74 72 79 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 eate-from-entry)))).............
15f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
15f60 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 20 6e 69 6c 29 29 29 29 29 29 .....(deferred:succeed.nil))))))
15f80 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 47 ............................;;.G
15fa0 65 6e 65 72 69 63 20 65 72 72 6f 72 2d 68 61 6e 64 6c 65 72 20 6d 65 61 6e 74 20 74 6f 20 70 72 eneric.error-handler.meant.to.pr
15fc0 6f 76 69 64 65 20 75 73 65 66 75 6c 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 0a 20 ovide.useful.information.about..
15fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 66 61 69 ..........................;;.fai
16000 6c 75 72 65 20 63 61 73 65 73 20 6e 6f 74 20 6f 74 68 65 72 77 69 73 65 20 65 78 70 6c 69 63 69 lure.cases.not.otherwise.explici
16020 74 6c 79 20 73 70 65 63 69 66 69 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tly.specified...................
16040 20 20 20 20 20 20 20 20 20 20 28 28 6e 6f 74 20 28 65 71 20 65 72 72 6f 72 2d 6d 73 67 20 6e 69 ..........((not.(eq.error-msg.ni
16060 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 l)).............................
16080 28 6f 72 67 2d 67 63 61 6c 2d 2d 6e 6f 74 69 66 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (org-gcal--notify...............
160a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 22 53 74 61 74 75 73 20 63 ...............(concat."Status.c
160c0 6f 64 65 3a 20 22 20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 72 69 6e 67 20 73 74 61 74 75 73 2d ode:.".(number-to-string.status-
160e0 63 6f 64 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 code))..........................
16100 20 20 20 20 28 70 70 2d 74 6f 2d 73 74 72 69 6e 67 20 65 72 72 6f 72 2d 6d 73 67 29 29 0a 20 20 ....(pp-to-string.error-msg))...
16120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 ..........................(error
16140 20 22 47 6f 74 20 65 72 72 6f 72 20 25 53 3a 20 25 53 22 20 73 74 61 74 75 73 2d 63 6f 64 65 20 ."Got.error.%S:.%S".status-code.
16160 65 72 72 6f 72 2d 6d 73 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 error-msg)).....................
16180 20 20 20 20 20 20 20 3b 3b 20 46 65 74 63 68 20 77 61 73 20 73 75 63 63 65 73 73 66 75 6c 2e 0a .......;;.Fetch.was.successful..
161a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 0a 20 20 ...........................(t...
161c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 ..........................(unles
161e0 73 20 73 6b 69 70 2d 65 78 70 6f 72 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s.skip-export...................
16200 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 64 61 74 61 20 28 72 65 71 75 65 73 ............(let*.((data.(reques
16220 74 2d 72 65 73 70 6f 6e 73 65 2d 64 61 74 61 20 72 65 73 70 6f 6e 73 65 29 29 29 0a 20 20 20 20 t-response-data.response))).....
16240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 61 76 ............................(sav
16260 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e-excursion.....................
16280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 ..............(with-current-buff
162a0 65 72 20 28 6d 61 72 6b 65 72 2d 62 75 66 66 65 72 20 6d 61 72 6b 65 72 29 0a 20 20 20 20 20 20 er.(marker-buffer.marker).......
162c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 67 ..............................(g
162e0 6f 74 6f 2d 63 68 61 72 20 28 6d 61 72 6b 65 72 2d 70 6f 73 69 74 69 6f 6e 20 6d 61 72 6b 65 72 oto-char.(marker-position.marker
16300 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ))..............................
16320 20 20 20 20 20 20 20 3b 3b 20 55 70 64 61 74 65 20 74 68 65 20 65 6e 74 72 79 20 74 6f 20 61 64 .......;;.Update.the.entry.to.ad
16340 64 20 45 54 61 67 2c 20 61 73 20 77 65 6c 6c 20 61 73 20 6f 74 68 65 72 0a 20 20 20 20 20 20 20 d.ETag,.as.well.as.other........
16360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 .............................;;.
16380 70 72 6f 70 65 72 74 69 65 73 20 69 66 20 74 68 69 73 20 69 73 20 61 20 6e 65 77 6c 79 2d 63 72 properties.if.this.is.a.newly-cr
163a0 65 61 74 65 64 20 65 76 65 6e 74 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 eated.event.....................
163c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 75 70 64 61 .................(org-gcal--upda
163e0 74 65 2d 65 6e 74 72 79 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 64 61 74 61 0a 20 20 20 20 20 20 te-entry.calendar-id.data.......
16400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
16420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 65 76 65 6e 74 2d ......................(if.event-
16440 69 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 id..............................
16460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
16480 20 20 20 27 75 70 64 61 74 65 2d 65 78 69 73 74 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 ...'update-existing.............
164a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
164c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 63 72 65 61 74 65 2d 66 72 6f 6d 2d 65 ..................'create-from-e
164e0 6e 74 72 79 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ntry))))........................
16500 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 6e 6f 74 69 66 79 20 22 45 76 65 6e .........(org-gcal--notify."Even
16520 74 20 50 6f 73 74 65 64 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t.Posted".......................
16540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e ............................(con
16560 63 61 74 20 22 4f 72 67 2d 67 63 61 6c 20 70 6f 73 74 20 65 76 65 6e 74 5c 6e 20 20 22 20 28 70 cat."Org-gcal.post.event\n..".(p
16580 6c 69 73 74 2d 67 65 74 20 64 61 74 61 20 3a 73 75 6d 6d 61 72 79 29 29 29 29 29 0a 20 20 20 20 list-get.data.:summary))))).....
165a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 ........................(deferre
165c0 64 3a 73 75 63 63 65 65 64 20 6e 69 6c 29 29 29 29 29 29 29 0a 20 20 20 20 20 3a 66 69 6e 61 6c d:succeed.nil)))))))......:final
165e0 6c 79 0a 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 29 0a 20 20 20 20 20 20 20 28 73 65 74 2d ly......(lambda.(_)........(set-
16600 6d 61 72 6b 65 72 20 6d 61 72 6b 65 72 20 6e 69 6c 29 29 29 29 29 0a 0a 0a 28 64 65 66 75 6e 20 marker.marker.nil)))))...(defun.
16620 6f 72 67 2d 67 63 61 6c 2d 2d 64 65 6c 65 74 65 2d 65 76 65 6e 74 20 28 63 61 6c 65 6e 64 61 72 org-gcal--delete-event.(calendar
16640 2d 69 64 20 65 76 65 6e 74 2d 69 64 20 65 74 61 67 20 6d 61 72 6b 65 72 20 26 6f 70 74 69 6f 6e -id.event-id.etag.marker.&option
16660 61 6c 20 61 2d 74 6f 6b 65 6e 29 0a 20 20 22 5c 0a 44 65 6c 65 74 65 73 20 61 6e 20 65 76 65 6e al.a-token)..."\.Deletes.an.even
16680 74 20 6f 6e 20 43 61 6c 65 6e 64 61 72 20 43 41 4c 45 4e 44 41 52 2d 49 44 20 77 69 74 68 20 45 t.on.Calendar.CALENDAR-ID.with.E
166a0 56 45 4e 54 2d 49 44 2e 20 54 68 65 20 4f 72 67 20 62 75 66 66 65 72 20 61 6e 64 0a 70 6f 69 6e VENT-ID..The.Org.buffer.and.poin
166c0 74 20 66 72 6f 6d 20 77 68 69 63 68 20 74 68 65 20 65 76 65 6e 74 20 69 73 20 72 65 61 64 20 69 t.from.which.the.event.is.read.i
166e0 73 20 67 69 76 65 6e 20 62 79 20 4d 41 52 4b 45 52 2e 20 4d 41 52 4b 45 52 20 69 73 20 64 65 73 s.given.by.MARKER..MARKER.is.des
16700 74 72 6f 79 65 64 20 62 79 0a 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 2e 0a 0a 49 66 20 45 54 41 troyed.by.this.function...If.ETA
16720 47 20 69 73 20 70 72 6f 76 69 64 65 64 2c 20 69 74 20 69 73 20 75 73 65 64 20 74 6f 20 72 65 74 G.is.provided,.it.is.used.to.ret
16740 72 69 65 76 65 20 74 68 65 20 65 76 65 6e 74 20 64 61 74 61 20 66 72 6f 6d 20 74 68 65 20 73 65 rieve.the.event.data.from.the.se
16760 72 76 65 72 20 61 6e 64 0a 6f 76 65 72 77 72 69 74 65 20 74 68 65 20 65 76 65 6e 74 20 61 74 20 rver.and.overwrite.the.event.at.
16780 4d 41 52 4b 45 52 20 69 66 20 74 68 65 20 65 76 65 6e 74 20 68 61 73 20 63 68 61 6e 67 65 64 20 MARKER.if.the.event.has.changed.
167a0 6f 6e 20 74 68 65 20 73 65 72 76 65 72 2e 0a 0a 52 65 74 75 72 6e 73 20 61 20 e2 80 98 64 65 66 on.the.server...Returns.a....def
167c0 65 72 72 65 64 e2 80 99 20 6f 62 6a 65 63 74 20 74 68 61 74 20 63 61 6e 20 62 65 20 75 73 65 64 erred....object.that.can.be.used
167e0 20 74 6f 20 77 61 69 74 20 66 6f 72 20 63 6f 6d 70 6c 65 74 69 6f 6e 2e 22 0a 20 20 28 6c 65 74 .to.wait.for.completion."...(let
16800 20 28 28 61 2d 74 6f 6b 65 6e 20 28 6f 72 20 61 2d 74 6f 6b 65 6e 20 28 6f 72 67 2d 67 63 61 6c .((a-token.(or.a-token.(org-gcal
16820 2d 2d 67 65 74 2d 61 63 63 65 73 73 2d 74 6f 6b 65 6e 20 63 61 6c 65 6e 64 61 72 2d 69 64 29 29 --get-access-token.calendar-id))
16840 29 29 0a 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 74 72 79 0a 20 20 20 20 20 28 64 65 66 65 72 )).....(deferred:try......(defer
16860 72 65 64 3a 24 0a 20 20 20 20 20 20 28 72 65 71 75 65 73 74 2d 64 65 66 65 72 72 65 64 0a 20 20 red:$.......(request-deferred...
16880 20 20 20 20 20 28 63 6f 6e 63 61 74 0a 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 65 .....(concat.........(org-gcal-e
168a0 76 65 6e 74 73 2d 75 72 6c 20 63 61 6c 65 6e 64 61 72 2d 69 64 29 0a 20 20 20 20 20 20 20 20 28 vents-url.calendar-id).........(
168c0 63 6f 6e 63 61 74 20 22 2f 22 20 65 76 65 6e 74 2d 69 64 29 29 0a 20 20 20 20 20 20 20 3a 74 79 concat."/".event-id))........:ty
168e0 70 65 20 22 44 45 4c 45 54 45 22 0a 20 20 20 20 20 20 20 3a 68 65 61 64 65 72 73 20 28 61 70 70 pe."DELETE"........:headers.(app
16900 65 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 60 28 28 22 43 6f 6e 74 65 6e 74 end..................`(("Content
16920 2d 54 79 70 65 22 20 2e 20 22 61 70 70 6c 69 63 61 74 69 6f 6e 2f 6a 73 6f 6e 22 29 0a 20 20 20 -Type"..."application/json")....
16940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 22 41 63 63 65 70 74 22 20 2e 20 22 61 70 70 ................("Accept"..."app
16960 6c 69 63 61 74 69 6f 6e 2f 6a 73 6f 6e 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lication/json").................
16980 20 20 20 28 22 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 22 20 2e 20 2c 28 66 6f 72 6d 61 74 20 22 ...("Authorization"...,(format."
169a0 42 65 61 72 65 72 20 25 73 22 20 61 2d 74 6f 6b 65 6e 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 Bearer.%s".a-token)))...........
169c0 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 .......(cond...................(
169e0 28 6e 75 6c 6c 20 65 74 61 67 29 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (null.etag).nil)................
16a00 20 20 20 28 28 6e 75 6c 6c 20 65 76 65 6e 74 2d 69 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 ...((null.event-id).............
16a20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 45 76 65 6e 74 20 63 61 6e 6e 6f 74 20 68 61 76 65 .......(error."Event.cannot.have
16a40 20 45 54 61 67 20 73 65 74 20 77 68 65 6e 20 65 76 65 6e 74 20 49 44 20 61 62 73 65 6e 74 22 29 .ETag.set.when.event.ID.absent")
16a60 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 )...................(t..........
16a80 20 20 20 20 20 20 20 20 20 20 60 28 28 22 49 66 2d 4d 61 74 63 68 22 20 2e 20 2c 65 74 61 67 29 ..........`(("If-Match"...,etag)
16aa0 29 29 29 29 0a 0a 20 20 20 20 20 20 20 3a 70 61 72 73 65 72 20 27 6f 72 67 2d 67 63 61 6c 2d 2d )))).........:parser.'org-gcal--
16ac0 6a 73 6f 6e 2d 72 65 61 64 29 0a 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 json-read).......(deferred:nextc
16ae0 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 .it.......................(lambd
16b00 61 20 28 72 65 73 70 6f 6e 73 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 a.(response)....................
16b20 20 20 20 20 20 28 6c 65 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....(let.......................
16b40 20 20 20 20 20 20 28 28 5f 74 65 6d 70 20 28 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 2d ......((_temp.(request-response-
16b60 64 61 74 61 20 72 65 73 70 6f 6e 73 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 data.response)).................
16b80 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 61 74 75 73 2d 63 6f 64 65 20 28 72 65 71 75 65 .............(status-code.(reque
16ba0 73 74 2d 72 65 73 70 6f 6e 73 65 2d 73 74 61 74 75 73 2d 63 6f 64 65 20 72 65 73 70 6f 6e 73 65 st-response-status-code.response
16bc0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ))..............................
16be0 28 65 72 72 6f 72 2d 6d 73 67 20 28 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 2d 65 72 72 (error-msg.(request-response-err
16c00 6f 72 2d 74 68 72 6f 77 6e 20 72 65 73 70 6f 6e 73 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 or-thrown.response)))...........
16c20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 20 20 ................(cond...........
16c40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 49 66 20 74 68 65 72 65 20 69 73 20 .................;;.If.there.is.
16c60 6e 6f 20 6e 65 74 77 6f 72 6b 20 63 6f 6e 6e 65 63 74 69 76 69 74 79 2c 20 74 68 65 20 72 65 73 no.network.connectivity,.the.res
16c80 70 6f 6e 73 65 20 77 69 6c 6c 20 6e 6f 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ponse.will.not..................
16ca0 20 20 20 20 20 20 20 20 20 20 3b 3b 20 69 6e 63 6c 75 64 65 20 61 20 73 74 61 74 75 73 20 63 6f ..........;;.include.a.status.co
16cc0 64 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 de.............................(
16ce0 28 65 71 20 73 74 61 74 75 73 2d 63 6f 64 65 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 (eq.status-code.nil)............
16d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 6e 6f 74 69 .................(org-gcal--noti
16d20 66 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 fy..............................
16d40 22 47 6f 74 20 45 72 72 6f 72 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 "Got.Error".....................
16d60 20 20 20 20 20 20 20 20 20 22 43 6f 75 6c 64 20 6e 6f 74 20 63 6f 6e 74 61 63 74 20 72 65 6d 6f ........."Could.not.contact.remo
16d80 74 65 20 73 65 72 76 69 63 65 2e 20 50 6c 65 61 73 65 20 63 68 65 63 6b 20 79 6f 75 72 20 6e 65 te.service..Please.check.your.ne
16da0 74 77 6f 72 6b 20 63 6f 6e 6e 65 63 74 69 76 69 74 79 2e 22 29 0a 20 20 20 20 20 20 20 20 20 20 twork.connectivity.")...........
16dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 4e 65 74 77 6f 72 ..................(error."Networ
16de0 6b 20 63 6f 6e 6e 65 63 74 69 76 69 74 79 20 69 73 73 75 65 22 29 29 0a 20 20 20 20 20 20 20 20 k.connectivity.issue")).........
16e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 65 71 20 34 30 31 20 28 6f 72 20 ...................((eq.401.(or.
16e20 28 70 6c 69 73 74 2d 67 65 74 20 28 70 6c 69 73 74 2d 67 65 74 20 28 72 65 71 75 65 73 74 2d 72 (plist-get.(plist-get.(request-r
16e40 65 73 70 6f 6e 73 65 2d 64 61 74 61 20 72 65 73 70 6f 6e 73 65 29 20 3a 65 72 72 6f 72 29 20 3a esponse-data.response).:error).:
16e60 63 6f 64 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 code)...........................
16e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 75 73 2d 63 6f 64 65 29 29 0a 20 20 20 20 ..............status-code)).....
16ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 ........................(org-gca
16ec0 6c 2d 2d 6e 6f 74 69 66 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 l--notify.......................
16ee0 20 20 20 20 20 20 20 22 52 65 63 65 69 76 65 64 20 48 54 54 50 20 34 30 31 22 0a 20 20 20 20 20 ......."Received.HTTP.401"......
16f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 4f 41 75 74 68 20 74 ........................"OAuth.t
16f20 6f 6b 65 6e 20 65 78 70 69 72 65 64 2e 20 4e 6f 77 20 74 72 79 69 6e 67 20 74 6f 20 72 65 66 72 oken.expired..Now.trying.to.refr
16f40 65 73 68 2d 74 6f 6b 65 6e 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 esh-token").....................
16f60 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 20 20 20 20 20 20 20 20 20 20 20 ........(deferred:$.............
16f80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 72 65 66 72 .................(org-gcal--refr
16fa0 65 73 68 2d 74 6f 6b 65 6e 20 63 61 6c 65 6e 64 61 72 2d 69 64 29 0a 20 20 20 20 20 20 20 20 20 esh-token.calendar-id)..........
16fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 6e 65 ....................(deferred:ne
16fe0 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 xtc.it..........................
17000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 75 6e ....................(lambda.(_un
17020 75 73 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 used)...........................
17040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d .....................(org-gcal--
17060 64 65 6c 65 74 65 2d 65 76 65 6e 74 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 65 6e 74 2d 69 delete-event.calendar-id.event-i
17080 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 d...............................
170a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
170c0 20 20 20 20 20 20 20 20 20 65 74 61 67 20 6d 61 72 6b 65 72 20 6e 69 6c 29 29 29 29 29 0a 20 20 .........etag.marker.nil)))))...
170e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 45 54 61 67 .........................;;.ETag
17100 20 6f 6e 20 63 75 72 72 65 6e 74 20 65 6e 74 72 79 20 69 73 20 73 74 61 6c 65 2e 20 54 68 69 73 .on.current.entry.is.stale..This
17120 20 6d 65 61 6e 73 20 74 68 65 20 65 76 65 6e 74 20 6f 6e 20 74 68 65 0a 20 20 20 20 20 20 20 20 .means.the.event.on.the.........
17140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 73 65 72 76 65 72 20 68 61 73 ...................;;.server.has
17160 20 62 65 65 6e 20 75 70 64 61 74 65 64 2e 20 49 6e 20 74 68 61 74 20 63 61 73 65 2c 20 75 70 64 .been.updated..In.that.case,.upd
17180 61 74 65 20 74 68 65 20 65 76 65 6e 74 20 75 73 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 ate.the.event.using.............
171a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 68 65 20 64 61 74 61 20 66 72 6f 6d 20 ...............;;.the.data.from.
171c0 74 68 65 20 73 65 72 76 65 72 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 the.server......................
171e0 20 20 20 20 20 20 20 28 28 65 71 20 73 74 61 74 75 73 2d 63 6f 64 65 20 34 31 32 29 0a 20 20 20 .......((eq.status-code.412)....
17200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 .........................(org-gc
17220 61 6c 2d 2d 6e 6f 74 69 66 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 al--notify......................
17240 20 20 20 20 20 20 20 20 22 52 65 63 65 69 76 65 64 20 48 54 54 50 20 34 31 32 22 0a 20 20 20 20 ........"Received.HTTP.412".....
17260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 .........................(format
17280 20 22 45 54 61 67 20 73 74 61 6c 65 20 66 6f 72 20 65 6e 74 72 79 20 25 73 5c 6e 5c 6e 25 73 22 ."ETag.stale.for.entry.%s\n\n%s"
172a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
172c0 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 66 6f 72 6d 61 74 2d 65 6e 74 72 79 2d 69 64 ......(org-gcal--format-entry-id
172e0 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 65 6e 74 2d 69 64 29 0a 20 20 20 20 20 20 20 20 20 .calendar-id.event-id)..........
17300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 57 69 6c ............................"Wil
17320 6c 20 6f 76 65 72 77 72 69 74 65 20 74 68 69 73 20 65 6e 74 72 79 20 77 69 74 68 20 65 76 65 6e l.overwrite.this.entry.with.even
17340 74 20 66 72 6f 6d 20 73 65 72 76 65 72 2e 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t.from.server."))...............
17360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 24 0a 20 20 20 20 20 20 ..............(deferred:$.......
17380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c .......................(org-gcal
173a0 2d 2d 67 65 74 2d 65 76 65 6e 74 20 63 61 6c 65 6e 64 61 72 2d 69 64 20 65 76 65 6e 74 2d 69 64 --get-event.calendar-id.event-id
173c0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 )..............................(
173e0 64 65 66 65 72 72 65 64 3a 6e 65 78 74 63 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 deferred:nextc.it...............
17400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ...............................(
17420 6c 61 6d 62 64 61 20 28 72 65 73 70 6f 6e 73 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lambda.(response)...............
17440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
17460 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(save-excursion................
17480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
174a0 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 6d 61 72 6b 65 72 2d 62 ..(with-current-buffer.(marker-b
174c0 75 66 66 65 72 20 6d 61 72 6b 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 uffer.marker)...................
174e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
17500 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 6d 61 72 6b 65 72 2d 70 6f 73 69 74 69 6f 6e 20 6d 61 72 .(goto-char.(marker-position.mar
17520 6b 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ker))...........................
17540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 .........................(org-gc
17560 61 6c 2d 2d 75 70 64 61 74 65 2d 65 6e 74 72 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 al--update-entry................
17580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
175a0 20 20 20 20 20 63 61 6c 65 6e 64 61 72 2d 69 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....calendar-id................
175c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
175e0 20 20 20 20 20 28 72 65 71 75 65 73 74 2d 72 65 73 70 6f 6e 73 65 2d 64 61 74 61 20 72 65 73 70 .....(request-response-data.resp
17600 6f 6e 73 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 onse)...........................
17620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 75 70 64 61 74 ..........................'updat
17640 65 2d 65 78 69 73 74 69 6e 67 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e-existing)))...................
17660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 .............................(de
17680 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 20 6e 69 6c 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 ferred:succeed.nil))))).........
176a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 47 65 6e 65 72 69 63 20 65 72 ...................;;.Generic.er
176c0 72 6f 72 2d 68 61 6e 64 6c 65 72 20 6d 65 61 6e 74 20 74 6f 20 70 72 6f 76 69 64 65 20 75 73 65 ror-handler.meant.to.provide.use
176e0 66 75 6c 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 0a 20 20 20 20 20 20 20 20 20 20 ful.information.about...........
17700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 66 61 69 6c 75 72 65 20 63 61 73 65 .................;;.failure.case
17720 73 20 6e 6f 74 20 6f 74 68 65 72 77 69 73 65 20 65 78 70 6c 69 63 69 74 6c 79 20 73 70 65 63 69 s.not.otherwise.explicitly.speci
17740 66 69 65 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 fied............................
17760 20 28 28 6e 6f 74 20 28 65 71 20 65 72 72 6f 72 2d 6d 73 67 20 6e 69 6c 29 29 0a 20 20 20 20 20 .((not.(eq.error-msg.nil))......
17780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c .......................(org-gcal
177a0 2d 2d 6e 6f 74 69 66 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 --notify........................
177c0 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 22 53 74 61 74 75 73 20 63 6f 64 65 3a 20 22 20 28 6e ......(concat."Status.code:.".(n
177e0 75 6d 62 65 72 2d 74 6f 2d 73 74 72 69 6e 67 20 73 74 61 74 75 73 2d 63 6f 64 65 29 29 0a 20 20 umber-to-string.status-code))...
17800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 70 2d 74 ...........................(pp-t
17820 6f 2d 73 74 72 69 6e 67 20 65 72 72 6f 72 2d 6d 73 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 o-string.error-msg))............
17840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 47 6f 74 20 65 72 72 .................(error."Got.err
17860 6f 72 20 25 53 3a 20 25 53 22 20 73 74 61 74 75 73 2d 63 6f 64 65 20 65 72 72 6f 72 2d 6d 73 67 or.%S:.%S".status-code.error-msg
17880 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b ))............................;;
178a0 20 46 65 74 63 68 20 77 61 73 20 73 75 63 63 65 73 73 66 75 6c 2e 0a 20 20 20 20 20 20 20 20 20 .Fetch.was.successful...........
178c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 ..................(t............
178e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 2d 6e 6f 74 69 .................(org-gcal--noti
17900 66 79 20 22 45 76 65 6e 74 20 44 65 6c 65 74 65 64 22 20 22 4f 72 67 2d 67 63 61 6c 20 64 65 6c fy."Event.Deleted"."Org-gcal.del
17920 65 74 65 64 20 65 76 65 6e 74 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 eted.event")....................
17940 20 20 20 20 20 20 20 20 20 28 64 65 66 65 72 72 65 64 3a 73 75 63 63 65 65 64 20 6e 69 6c 29 29 .........(deferred:succeed.nil))
17960 29 29 29 29 29 0a 20 20 20 20 20 3a 66 69 6e 61 6c 6c 79 0a 20 20 20 20 20 28 6c 61 6d 62 64 61 )))))......:finally......(lambda
17980 20 28 5f 29 0a 20 20 20 20 20 20 20 28 73 65 74 2d 6d 61 72 6b 65 72 20 6d 61 72 6b 65 72 20 6e .(_)........(set-marker.marker.n
179a0 69 6c 29 29 29 29 29 0a 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 6f 72 67 2d 63 il)))))..(declare-function.org-c
179c0 61 70 74 75 72 65 2d 67 6f 74 6f 2d 6c 61 73 74 2d 73 74 6f 72 65 64 20 22 6f 72 67 2d 63 61 70 apture-goto-last-stored."org-cap
179e0 74 75 72 65 22 20 28 29 29 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 63 61 70 74 75 ture".()).(defun.org-gcal--captu
17a00 72 65 2d 70 6f 73 74 20 28 29 0a 20 20 22 43 72 65 61 74 65 20 67 63 61 6c 20 65 76 65 6e 74 20 re-post.()..."Create.gcal.event.
17a20 66 6f 72 20 68 65 61 64 6c 69 6e 65 20 77 68 65 6e 20 63 61 70 74 75 72 65 64 20 6f 72 20 72 65 for.headline.when.captured.or.re
17a40 66 69 6c 65 64 20 69 6e 74 6f 20 61 20 67 63 61 6c 20 4f 72 67 20 66 69 6c 65 2e 22 0a 20 20 28 filed.into.a.gcal.Org.file."...(
17a60 77 68 65 6e 20 28 6e 6f 74 20 6f 72 67 2d 6e 6f 74 65 2d 61 62 6f 72 74 29 0a 20 20 20 20 28 73 when.(not.org-note-abort).....(s
17a80 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 28 73 61 76 65 2d 77 69 6e 64 6f 77 ave-excursion.......(save-window
17aa0 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 69 6e 68 69 62 69 -excursion.........(let.((inhibi
17ac0 74 2d 6d 65 73 73 61 67 65 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 63 61 70 t-message.t))...........(org-cap
17ae0 74 75 72 65 2d 67 6f 74 6f 2d 6c 61 73 74 2d 73 74 6f 72 65 64 29 29 0a 20 20 20 20 20 20 20 20 ture-goto-last-stored)).........
17b00 28 64 6f 6c 69 73 74 20 28 69 20 6f 72 67 2d 67 63 61 6c 2d 66 65 74 63 68 2d 66 69 6c 65 2d 61 (dolist.(i.org-gcal-fetch-file-a
17b20 6c 69 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 28 62 75 66 66 list)...........(when.(and.(buff
17b40 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 er-file-name)...................
17b60 20 20 20 28 73 74 72 69 6e 67 3d 20 28 66 69 6c 65 2d 74 72 75 65 6e 61 6d 65 20 28 63 64 72 20 ...(string=.(file-truename.(cdr.
17b80 69 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 i)).............................
17ba0 20 20 28 66 69 6c 65 2d 74 72 75 65 6e 61 6d 65 20 28 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e 61 ..(file-truename.(buffer-file-na
17bc0 6d 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 65 6e 74 72 79 2d 70 75 me)))).............(org-entry-pu
17be0 74 20 28 70 6f 69 6e 74 29 20 6f 72 67 2d 67 63 61 6c 2d 63 61 6c 65 6e 64 61 72 2d 69 64 2d 70 t.(point).org-gcal-calendar-id-p
17c00 72 6f 70 65 72 74 79 20 28 63 61 72 20 69 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 roperty.(car.i)).............(or
17c20 67 2d 67 63 61 6c 2d 70 6f 73 74 2d 61 74 2d 70 6f 69 6e 74 29 29 29 29 29 29 29 0a 28 64 65 66 g-gcal-post-at-point))))))).(def
17c40 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 72 65 66 69 6c 65 2d 70 6f 73 74 20 28 29 0a 20 20 22 43 un.org-gcal--refile-post.()..."C
17c60 72 65 61 74 65 20 67 63 61 6c 20 65 76 65 6e 74 20 66 6f 72 20 68 65 61 64 6c 69 6e 65 20 77 68 reate.gcal.event.for.headline.wh
17c80 65 6e 20 72 65 66 69 6c 65 64 20 69 6e 74 6f 20 61 20 67 63 61 6c 20 4f 72 67 20 66 69 6c 65 2e en.refiled.into.a.gcal.Org.file.
17ca0 22 0a 20 20 28 75 6e 6c 65 73 73 20 28 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 52 65 "...(unless.(or............;;.Re
17cc0 66 69 6c 65 20 66 72 6f 6d 20 63 61 70 74 75 72 65 20 69 73 20 68 61 6e 64 6c 65 64 20 62 79 20 file.from.capture.is.handled.by.
17ce0 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 2d 63 61 70 74 75 72 65 2d 70 6f 73 74 27 2e 0a 20 20 20 20 ...org-gcal--capture-post'......
17d00 20 20 20 20 20 20 20 28 62 6f 75 6e 64 2d 61 6e 64 2d 74 72 75 65 2d 70 20 6f 72 67 2d 63 61 70 .......(bound-and-true-p.org-cap
17d20 74 75 72 65 2d 69 73 2d 72 65 66 69 6c 69 6e 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 ture-is-refiling)............;;.
17d40 44 6f 6e e2 80 99 74 20 50 4f 53 54 20 75 6e 6e 65 63 65 73 73 61 72 69 6c 79 20 69 66 20 74 68 Don...t.POST.unnecessarily.if.th
17d60 65 20 68 65 61 64 6c 69 6e 65 20 62 65 69 6e 67 20 72 65 66 69 6c 65 64 20 69 73 20 61 6c 72 65 e.headline.being.refiled.is.alre
17d80 61 64 79 0a 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 61 20 67 63 61 6c 20 65 76 65 6e 74 2e 0a ady............;;.a.gcal.event..
17da0 20 20 20 20 20 20 20 20 20 20 20 28 61 6e 64 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 65 74 20 28 ...........(and.(org-entry-get.(
17dc0 70 6f 69 6e 74 29 20 6f 72 67 2d 67 63 61 6c 2d 63 61 6c 65 6e 64 61 72 2d 69 64 2d 70 72 6f 70 point).org-gcal-calendar-id-prop
17de0 65 72 74 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 65 6e 74 72 79 erty).................(org-entry
17e00 2d 67 65 74 20 28 70 6f 69 6e 74 29 20 6f 72 67 2d 67 63 61 6c 2d 65 6e 74 72 79 2d 69 64 2d 70 -get.(point).org-gcal-entry-id-p
17e20 72 6f 70 65 72 74 79 29 29 29 0a 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 roperty))).....(save-excursion..
17e40 20 20 20 20 20 28 73 61 76 65 2d 77 69 6e 64 6f 77 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 .....(save-window-excursion.....
17e60 20 20 20 20 28 64 6f 6c 69 73 74 20 28 69 20 6f 72 67 2d 67 63 61 6c 2d 66 65 74 63 68 2d 66 69 ....(dolist.(i.org-gcal-fetch-fi
17e80 6c 65 2d 61 6c 69 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 28 le-alist)...........(when.(and.(
17ea0 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 buffer-file-name)...............
17ec0 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 3d 20 28 66 69 6c 65 2d 74 72 75 65 6e 61 6d 65 20 28 .......(string=.(file-truename.(
17ee0 63 64 72 20 69 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 cdr.i)).........................
17f00 20 20 20 20 20 20 28 66 69 6c 65 2d 74 72 75 65 6e 61 6d 65 20 28 62 75 66 66 65 72 2d 66 69 6c ......(file-truename.(buffer-fil
17f20 65 2d 6e 61 6d 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 65 6e 74 72 e-name)))).............(org-entr
17f40 79 2d 70 75 74 20 28 70 6f 69 6e 74 29 20 6f 72 67 2d 67 63 61 6c 2d 63 61 6c 65 6e 64 61 72 2d y-put.(point).org-gcal-calendar-
17f60 69 64 2d 70 72 6f 70 65 72 74 79 20 28 63 61 72 20 69 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 id-property.(car.i))............
17f80 20 28 6f 72 67 2d 67 63 61 6c 2d 70 6f 73 74 2d 61 74 2d 70 6f 69 6e 74 29 29 29 29 29 29 29 0a .(org-gcal-post-at-point))))))).
17fa0 28 77 69 74 68 2d 65 76 61 6c 2d 61 66 74 65 72 2d 6c 6f 61 64 20 27 6f 72 67 2d 63 61 70 74 75 (with-eval-after-load.'org-captu
17fc0 72 65 0a 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 6f 72 67 2d 63 61 70 74 75 72 65 2d 61 66 74 65 re...(add-hook.'org-capture-afte
17fe0 72 2d 66 69 6e 61 6c 69 7a 65 2d 68 6f 6f 6b 20 27 6f 72 67 2d 67 63 61 6c 2d 2d 63 61 70 74 75 r-finalize-hook.'org-gcal--captu
18000 72 65 2d 70 6f 73 74 29 29 0a 28 77 69 74 68 2d 65 76 61 6c 2d 61 66 74 65 72 2d 6c 6f 61 64 20 re-post)).(with-eval-after-load.
18020 27 6f 72 67 2d 72 65 66 69 6c 65 0a 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 6f 72 67 2d 61 66 74 'org-refile...(add-hook.'org-aft
18040 65 72 2d 72 65 66 69 6c 65 2d 69 6e 73 65 72 74 2d 68 6f 6f 6b 20 27 6f 72 67 2d 67 63 61 6c 2d er-refile-insert-hook.'org-gcal-
18060 2d 72 65 66 69 6c 65 2d 70 6f 73 74 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d -refile-post))..(defun.org-gcal-
18080 2d 73 79 6e 63 2d 74 6f 6b 65 6e 73 2d 76 61 6c 69 64 20 28 29 0a 20 20 22 49 73 20 e2 80 98 6f -sync-tokens-valid.()..."Is....o
180a0 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 74 6f 6b 65 6e 73 e2 80 99 20 69 6e 20 61 20 76 61 6c rg-gcal--sync-tokens....in.a.val
180c0 69 64 20 66 6f 72 6d 61 74 3f 22 0a 20 20 28 61 6e 64 20 28 6c 69 73 74 70 20 6f 72 67 2d 67 63 id.format?"...(and.(listp.org-gc
180e0 61 6c 2d 2d 73 79 6e 63 2d 74 6f 6b 65 6e 73 29 0a 20 20 20 20 20 20 20 28 6a 73 6f 6e 2d 61 6c al--sync-tokens)........(json-al
18100 69 73 74 2d 70 20 6f 72 67 2d 67 63 61 6c 2d 2d 73 79 6e 63 2d 74 6f 6b 65 6e 73 29 29 29 0a 0a ist-p.org-gcal--sync-tokens)))..
18120 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 74 69 6d 65 73 74 61 6d 70 2d 73 75 63 63 65 (defun.org-gcal--timestamp-succe
18140 73 73 6f 72 20 28 29 0a 20 20 22 53 65 61 72 63 68 20 66 6f 72 20 74 68 65 20 6e 65 78 74 20 74 ssor.()..."Search.for.the.next.t
18160 69 6d 65 73 74 61 6d 70 20 6f 62 6a 65 63 74 2e 0a 52 65 74 75 72 6e 20 76 61 6c 75 65 20 69 73 imestamp.object..Return.value.is
18180 20 61 20 63 6f 6e 73 20 63 65 6c 6c 20 77 68 6f 73 65 20 43 41 52 20 69 73 20 60 74 69 6d 65 73 .a.cons.cell.whose.CAR.is.`times
181a0 74 61 6d 70 27 20 61 6e 64 20 43 44 52 20 69 73 0a 62 65 67 69 6e 6e 69 6e 67 20 70 6f 73 69 74 tamp'.and.CDR.is.beginning.posit
181c0 69 6f 6e 2e 22 0a 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 28 77 68 65 ion."...(save-excursion.....(whe
181e0 6e 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 0a 20 20 20 20 20 20 20 20 20 20 20 n.(re-search-forward............
18200 28 63 6f 6e 63 61 74 20 6f 72 67 2d 74 73 2d 72 65 67 65 78 70 2d 62 6f 74 68 0a 20 20 20 20 20 (concat.org-ts-regexp-both......
18220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5c 5c 7c 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 .............."\\|".............
18240 20 20 20 20 20 20 20 22 5c 5c 28 3f 3a 3c 5b 30 2d 39 5d 2b 2d 5b 30 2d 39 5d 2b 2d 5b 30 2d 39 ......."\\(?:<[0-9]+-[0-9]+-[0-9
18260 5d 2b 5b 5e 3e 5c 6e 5d 2b 3f 5c 5c 2b 5b 30 2d 39 5d 2b 5b 64 77 6d 79 5d 3e 5c 5c 29 22 0a 20 ]+[^>\n]+?\\+[0-9]+[dwmy]>\\)"..
18280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5c 5c 7c 22 0a 20 20 20 20 20 20 20 20 .................."\\|".........
182a0 20 20 20 20 20 20 20 20 20 20 20 22 5c 5c 28 3f 3a 3c 25 25 5c 5c 28 3f 3a 28 5b 5e 3e 5c 6e 5d ..........."\\(?:<%%\\(?:([^>\n]
182c0 2b 29 5c 5c 29 3e 5c 5c 29 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 20 74 29 0a 20 20 +)\\)>\\)")............nil.t)...
182e0 20 20 20 20 28 63 6f 6e 73 20 27 74 69 6d 65 73 74 61 6d 70 20 28 6d 61 74 63 68 2d 62 65 67 69 ....(cons.'timestamp.(match-begi
18300 6e 6e 69 6e 67 20 30 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 2d 6e nning.0)))))..(defun.org-gcal--n
18320 6f 74 69 66 79 20 28 74 69 74 6c 65 20 6d 65 73 73 61 67 65 20 26 6f 70 74 69 6f 6e 61 6c 20 73 otify.(title.message.&optional.s
18340 69 6c 65 6e 74 29 0a 20 20 22 53 65 6e 64 20 61 6c 65 72 74 20 77 69 74 68 20 54 49 54 4c 45 20 ilent)..."Send.alert.with.TITLE.
18360 61 6e 64 20 4d 45 53 53 41 47 45 2e 0a 0a 57 68 65 6e 20 53 49 4c 45 4e 54 20 69 73 20 6e 6f 6e and.MESSAGE...When.SILENT.is.non
18380 2d 6e 69 6c 2c 20 73 69 6c 65 6e 63 65 20 6d 65 73 73 61 67 65 73 20 65 76 65 6e 20 77 68 65 6e -nil,.silence.messages.even.when
183a0 20 e2 80 98 6f 72 67 2d 67 63 61 6c 2d 6e 6f 74 69 66 79 2d 70 e2 80 99 20 69 73 0a 6e 6f 6e 2d ....org-gcal-notify-p....is.non-
183c0 6e 69 6c 2e 22 0a 20 20 28 77 68 65 6e 20 28 61 6e 64 20 6f 72 67 2d 67 63 61 6c 2d 6e 6f 74 69 nil."...(when.(and.org-gcal-noti
183e0 66 79 2d 70 20 28 6e 6f 74 20 73 69 6c 65 6e 74 29 29 0a 20 20 20 20 28 69 66 20 6f 72 67 2d 67 fy-p.(not.silent)).....(if.org-g
18400 63 61 6c 2d 6c 6f 67 6f 2d 66 69 6c 65 0a 20 20 20 20 20 20 20 20 28 61 6c 65 72 74 20 6d 65 73 cal-logo-file.........(alert.mes
18420 73 61 67 65 20 3a 74 69 74 6c 65 20 74 69 74 6c 65 20 3a 69 63 6f 6e 20 6f 72 67 2d 67 63 61 6c sage.:title.title.:icon.org-gcal
18440 2d 6c 6f 67 6f 2d 66 69 6c 65 29 0a 20 20 20 20 20 20 28 61 6c 65 72 74 20 6d 65 73 73 61 67 65 -logo-file).......(alert.message
18460 20 3a 74 69 74 6c 65 20 74 69 74 6c 65 29 29 0a 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 25 73 .:title.title)).....(message."%s
18480 5c 6e 25 73 22 20 74 69 74 6c 65 20 6d 65 73 73 61 67 65 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f \n%s".title.message)))..(defun.o
184a0 72 67 2d 67 63 61 6c 2d 2d 74 69 6d 65 2d 74 6f 2d 73 65 63 6f 6e 64 73 20 28 70 6c 73 74 29 0a rg-gcal--time-to-seconds.(plst).
184c0 20 20 28 74 69 6d 65 2d 74 6f 2d 73 65 63 6f 6e 64 73 0a 20 20 20 28 65 6e 63 6f 64 65 2d 74 69 ..(time-to-seconds....(encode-ti
184e0 6d 65 0a 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 70 6c 73 74 20 3a 73 65 63 29 0a 20 20 20 me.....(plist-get.plst.:sec)....
18500 20 28 70 6c 69 73 74 2d 67 65 74 20 70 6c 73 74 20 3a 6d 69 6e 29 0a 20 20 20 20 28 70 6c 69 73 .(plist-get.plst.:min).....(plis
18520 74 2d 67 65 74 20 70 6c 73 74 20 3a 68 6f 75 72 29 0a 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 t-get.plst.:hour).....(plist-get
18540 20 70 6c 73 74 20 3a 64 61 79 29 0a 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 70 6c 73 74 20 .plst.:day).....(plist-get.plst.
18560 3a 6d 6f 6e 29 0a 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 70 6c 73 74 20 3a 79 65 61 72 29 :mon).....(plist-get.plst.:year)
18580 29 29 29 0a 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 63 61 6c 2d 72 65 6c 6f 61 64 2d 63 6c 69 )))...(defun.org-gcal-reload-cli
185a0 65 6e 74 2d 69 64 2d 73 65 63 72 65 74 20 28 29 0a 20 20 22 53 65 74 75 70 20 4f 41 75 74 68 32 ent-id-secret.()..."Setup.OAuth2
185c0 20 61 75 74 68 65 6e 74 69 63 61 74 69 6f 6e 20 61 66 74 65 72 20 73 65 74 74 69 6e 67 20 63 6c .authentication.after.setting.cl
185e0 69 65 6e 74 20 49 44 20 61 6e 64 20 73 65 63 72 65 74 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 ient.ID.and.secret."...(interact
18600 69 76 65 29 0a 20 20 28 61 64 64 2d 74 6f 2d 6c 69 73 74 0a 20 20 20 27 6f 61 75 74 68 32 2d 61 ive)...(add-to-list....'oauth2-a
18620 75 74 6f 2d 61 64 64 69 74 69 6f 6e 61 6c 2d 70 72 6f 76 69 64 65 72 73 2d 61 6c 69 73 74 0a 20 uto-additional-providers-alist..
18640 20 20 60 28 6f 72 67 2d 67 63 61 6c 0a 20 20 20 20 20 28 61 75 74 68 6f 72 69 7a 65 5f 75 72 6c ..`(org-gcal......(authorize_url
18660 20 2e 20 22 68 74 74 70 73 3a 2f 2f 61 63 63 6f 75 6e 74 73 2e 67 6f 6f 67 6c 65 2e 63 6f 6d 2f ..."https://accounts.google.com/
18680 6f 2f 6f 61 75 74 68 32 2f 61 75 74 68 22 29 0a 20 20 20 20 20 28 74 6f 6b 65 6e 5f 75 72 6c 20 o/oauth2/auth")......(token_url.
186a0 2e 20 22 68 74 74 70 73 3a 2f 2f 6f 61 75 74 68 32 2e 67 6f 6f 67 6c 65 61 70 69 73 2e 63 6f 6d .."https://oauth2.googleapis.com
186c0 2f 74 6f 6b 65 6e 22 29 0a 20 20 20 20 20 28 73 63 6f 70 65 20 2e 20 22 68 74 74 70 73 3a 2f 2f /token")......(scope..."https://
186e0 77 77 77 2e 67 6f 6f 67 6c 65 61 70 69 73 2e 63 6f 6d 2f 61 75 74 68 2f 63 61 6c 65 6e 64 61 72 www.googleapis.com/auth/calendar
18700 22 29 0a 20 20 20 20 20 28 63 6c 69 65 6e 74 5f 69 64 20 2e 20 2c 6f 72 67 2d 67 63 61 6c 2d 63 ")......(client_id...,org-gcal-c
18720 6c 69 65 6e 74 2d 69 64 29 0a 20 20 20 20 20 28 63 6c 69 65 6e 74 5f 73 65 63 72 65 74 20 2e 20 lient-id)......(client_secret...
18740 2c 6f 72 67 2d 67 63 61 6c 2d 63 6c 69 65 6e 74 2d 73 65 63 72 65 74 29 29 29 29 0a 0a 28 69 66 ,org-gcal-client-secret))))..(if
18760 20 28 61 6e 64 20 6f 72 67 2d 67 63 61 6c 2d 63 6c 69 65 6e 74 2d 69 64 20 6f 72 67 2d 67 63 61 .(and.org-gcal-client-id.org-gca
18780 6c 2d 63 6c 69 65 6e 74 2d 73 65 63 72 65 74 29 0a 20 20 20 20 28 6f 72 67 2d 67 63 61 6c 2d 72 l-client-secret).....(org-gcal-r
187a0 65 6c 6f 61 64 2d 63 6c 69 65 6e 74 2d 69 64 2d 73 65 63 72 65 74 29 0a 20 20 3b 3b 20 44 6f 6e eload-client-id-secret)...;;.Don
187c0 e2 80 99 74 20 70 72 69 6e 74 20 77 61 72 6e 69 6e 67 20 64 75 72 69 6e 67 20 74 65 73 74 73 2e ...t.print.warning.during.tests.
187e0 0a 20 20 28 75 6e 6c 65 73 73 20 6e 6f 6e 69 6e 74 65 72 61 63 74 69 76 65 0a 20 20 20 20 28 77 ...(unless.noninteractive.....(w
18800 61 72 6e 20 22 6f 72 67 2d 67 63 61 6c 3a 20 6d 75 73 74 20 73 65 74 20 e2 80 98 6f 72 67 2d 67 arn."org-gcal:.must.set....org-g
18820 63 61 6c 2d 63 6c 69 65 6e 74 2d 69 64 e2 80 99 20 61 6e 64 20 e2 80 98 6f 72 67 2d 67 63 61 6c cal-client-id....and....org-gcal
18840 2d 63 6c 69 65 6e 74 2d 73 65 63 72 65 74 e2 80 99 20 66 6f 72 20 74 68 69 73 20 70 61 63 6b 61 -client-secret....for.this.packa
18860 67 65 20 74 6f 20 77 6f 72 6b 2e 20 50 6c 65 61 73 65 20 72 75 6e 20 e2 80 98 6f 72 67 2d 67 63 ge.to.work..Please.run....org-gc
18880 61 6c 2d 72 65 6c 6f 61 64 2d 63 6c 69 65 6e 74 2d 69 64 2d 73 65 63 72 65 74 e2 80 99 20 61 66 al-reload-client-id-secret....af
188a0 74 65 72 20 73 65 74 74 69 6e 67 20 74 68 65 73 65 20 76 61 72 69 61 62 6c 65 73 2e 22 29 29 29 ter.setting.these.variables.")))
188c0 0a 0a 28 70 72 6f 76 69 64 65 20 27 6f 72 67 2d 67 63 61 6c 29 0a 0a 3b 3b 3b 20 6f 72 67 2d 67 ..(provide.'org-gcal)..;;;.org-g
188e0 63 61 6c 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 cal.el.ends.here................
18900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
189a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
189c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
189e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18a00 6f 72 67 2d 67 63 61 6c 2d 32 30 32 35 30 36 32 34 2e 31 36 32 38 2f 6f 72 67 2d 67 65 6e 65 72 org-gcal-20250624.1628/org-gener
18a20 69 63 2d 69 64 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ic-id.el........................
18a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18a60 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
18a80 30 30 35 32 33 30 37 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 35 36 33 35 00 20 30 00 00 00 0052307.00000000000.015635..0...
18aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18b00 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
18b20 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
18b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18c00 3b 3b 3b 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2e 65 6c 20 2d 2d 2d 20 47 6c 6f 62 61 6c ;;;.org-generic-id.el.---.Global
18c20 20 69 64 65 6e 74 69 66 69 65 72 73 20 66 6f 72 20 4f 72 67 20 65 6e 74 72 69 65 73 20 2d 2a 2d .identifiers.for.Org.entries.-*-
18c40 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 3b 3b 0a 3b 3b 20 41 .lexical-binding:.t;.-*-.;;.;;.A
18c60 75 74 68 6f 72 3a 20 52 6f 62 65 72 74 20 49 72 65 6c 61 6e 20 3c 72 69 72 65 6c 61 6e 20 61 74 uthor:.Robert.Irelan.<rirelan.at
18c80 20 67 6d 61 69 6c 20 64 6f 74 20 63 6f 6d 3e 0a 3b 3b 20 48 6f 6d 65 70 61 67 65 3a 20 68 74 74 .gmail.dot.com>.;;.Homepage:.htt
18ca0 70 73 3a 2f 2f 6f 72 67 6d 6f 64 65 2e 6f 72 67 0a 3b 3b 0a 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b ps://orgmode.org.;;.;;;;;;;;;;;;
18cc0 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
18ce0 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
18d00 3b 0a 3b 3b 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 20 54 68 69 73 20 66 69 ;.;;.;;;.Commentary:..;;.This.fi
18d20 6c 65 20 67 65 6e 65 72 61 6c 69 7a 65 73 20 e2 80 98 6f 72 67 2d 69 64 27 20 74 6f 20 61 6c 6c le.generalizes....org-id'.to.all
18d40 6f 77 20 75 73 69 6e 67 20 61 6e 79 20 70 72 6f 70 65 72 74 79 2c 20 6e 6f 74 20 6a 75 73 74 20 ow.using.any.property,.not.just.
18d60 3a 49 44 3a 2c 0a 3b 3b 20 74 6f 20 6c 6f 63 61 74 65 20 4f 72 67 2d 6d 6f 64 65 20 65 6e 74 72 :ID:,.;;.to.locate.Org-mode.entr
18d80 69 65 73 2e 20 54 68 69 73 20 6c 69 62 72 61 72 79 20 6f 6e 6c 79 20 68 61 6e 64 6c 65 73 20 73 ies..This.library.only.handles.s
18da0 74 6f 72 69 6e 67 20 49 44 73 20 69 6e 20 65 6e 74 72 69 65 73 2c 0a 3b 3b 20 6c 6f 63 61 74 69 toring.IDs.in.entries,.;;.locati
18dc0 6e 67 20 65 6e 74 72 69 65 73 20 77 69 74 68 20 61 20 67 69 76 65 6e 20 49 44 2c 20 61 6e 64 20 ng.entries.with.a.given.ID,.and.
18de0 73 74 6f 72 69 6e 67 20 61 20 6d 61 70 20 6f 66 20 49 44 73 20 74 6f 20 66 69 6c 65 73 0a 3b 3b storing.a.map.of.IDs.to.files.;;
18e00 20 63 6f 6e 74 61 69 6e 69 6e 67 20 73 75 63 68 20 49 44 73 2e 20 47 65 6e 65 72 61 74 69 6f 6e .containing.such.IDs..Generation
18e20 20 6f 66 20 49 44 73 20 6d 75 73 74 20 62 65 20 68 61 6e 64 6c 65 64 20 62 79 20 74 68 65 20 75 .of.IDs.must.be.handled.by.the.u
18e40 73 65 72 20 6f 66 20 74 68 65 0a 3b 3b 20 6c 69 62 72 61 72 79 20 2d 20 75 6e 6c 69 6b 65 20 e2 ser.of.the.;;.library.-.unlike..
18e60 80 98 6f 72 67 2d 69 64 27 2c 20 6e 6f 20 66 75 6e 63 74 69 6f 6e 73 20 61 72 65 20 70 72 6f 76 ..org-id',.no.functions.are.prov
18e80 69 64 65 64 20 74 6f 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 0a 3b 3b 20 67 65 6e 65 72 61 74 ided.to.automatically.;;.generat
18ea0 65 20 49 44 73 2e 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 72 65 20 27 63 6c 2d e.IDs...;;;.Code:..(require.'cl-
18ec0 6c 69 62 29 0a 28 72 65 71 75 69 72 65 20 27 64 61 73 68 29 0a 28 72 65 71 75 69 72 65 20 27 6f lib).(require.'dash).(require.'o
18ee0 72 67 29 0a 28 72 65 71 75 69 72 65 20 27 70 65 72 73 69 73 74 29 0a 0a 28 64 65 63 6c 61 72 65 rg).(require.'persist)..(declare
18f00 2d 66 75 6e 63 74 69 6f 6e 20 6d 65 73 73 61 67 65 2d 6d 61 6b 65 2d 66 71 64 6e 20 22 6d 65 73 -function.message-make-fqdn."mes
18f20 73 61 67 65 22 20 28 29 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 6f 72 67 2d sage".()).(declare-function.org-
18f40 67 6f 74 6f 2d 6c 6f 63 61 74 69 6f 6e 20 22 6f 72 67 2d 67 6f 74 6f 22 20 28 26 6f 70 74 69 6f goto-location."org-goto".(&optio
18f60 6e 61 6c 20 5f 62 75 66 20 68 65 6c 70 29 29 0a 0a 3b 3b 3b 20 43 75 73 74 6f 6d 69 7a 61 74 69 nal._buf.help))..;;;.Customizati
18f80 6f 6e 0a 0a 28 64 65 66 67 72 6f 75 70 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 20 6e 69 6c on..(defgroup.org-generic-id.nil
18fa0 0a 20 20 22 4f 70 74 69 6f 6e 73 20 63 6f 6e 63 65 72 6e 69 6e 67 20 67 6c 6f 62 61 6c 20 65 6e ..."Options.concerning.global.en
18fc0 74 72 79 20 69 64 65 6e 74 69 66 69 65 72 73 20 69 6e 20 4f 72 67 20 6d 6f 64 65 2e 22 0a 20 20 try.identifiers.in.Org.mode."...
18fe0 3a 74 61 67 20 22 4f 72 67 20 49 44 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 29 0a 0a 28 64 :tag."Org.ID"...:group.'org)..(d
19000 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e efcustom.org-generic-id-location
19020 73 2d 66 69 6c 65 20 28 63 6f 6e 76 65 72 74 2d 73 74 61 6e 64 61 72 64 2d 66 69 6c 65 6e 61 6d s-file.(convert-standard-filenam
19040 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e...............................
19060 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 75 73 65 72 2d 65 6d 61 63 73 2d 64 ............(concat.user-emacs-d
19080 69 72 65 63 74 6f 72 79 20 22 2e 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 irectory.".org-generic-id-locati
190a0 6f 6e 73 22 29 29 0a 20 20 22 54 68 65 20 66 69 6c 65 20 66 6f 72 20 72 65 6d 65 6d 62 65 72 69 ons"))..."The.file.for.rememberi
190c0 6e 67 20 69 6e 20 77 68 69 63 68 20 66 69 6c 65 20 61 6e 20 49 44 20 77 61 73 20 64 65 66 69 6e ng.in.which.file.an.ID.was.defin
190e0 65 64 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 0a 20 20 ed."...:group.'org-generic-id...
19100 3a 74 79 70 65 20 27 66 69 6c 65 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 65 6e :type.'file)..(defcustom.org-gen
19120 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 2d 66 69 6c 65 2d 72 65 6c 61 74 69 76 65 20 eric-id-locations-file-relative.
19140 6e 69 6c 0a 20 20 22 44 65 74 65 72 6d 69 6e 65 73 20 69 66 20 6f 72 67 2d 67 65 6e 65 72 69 63 nil..."Determines.if.org-generic
19160 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 20 73 68 6f 75 6c 64 20 62 65 20 73 74 6f 72 65 64 20 61 -id-locations.should.be.stored.a
19180 73 20 72 65 6c 61 74 69 76 65 20 6c 69 6e 6b 73 2e 0a 4e 6f 6e 2d 6e 69 6c 20 6d 65 61 6e 73 20 s.relative.links..Non-nil.means.
191a0 74 68 61 74 20 6c 69 6e 6b 73 20 74 6f 20 6c 6f 63 61 74 69 6f 6e 73 20 61 72 65 20 73 74 6f 72 that.links.to.locations.are.stor
191c0 65 64 20 61 73 20 6c 69 6e 6b 73 0a 72 65 6c 61 74 69 76 65 20 74 6f 20 74 68 65 20 6c 6f 63 61 ed.as.links.relative.to.the.loca
191e0 74 69 6f 6e 20 6f 66 20 77 68 65 72 65 20 60 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f tion.of.where.`org-generic-id-lo
19200 63 61 74 69 6f 6e 73 2d 66 69 6c 65 27 20 69 73 0a 73 74 6f 72 65 64 2e 0a 0a 4e 69 6c 20 6d 65 cations-file'.is.stored...Nil.me
19220 61 6e 73 20 74 6f 20 73 74 6f 72 65 20 61 62 73 6f 6c 75 74 65 20 70 61 74 68 73 20 74 6f 20 66 ans.to.store.absolute.paths.to.f
19240 69 6c 65 73 2e 0a 0a 54 68 69 73 20 63 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 69 73 20 75 73 65 iles...This.customization.is.use
19260 66 75 6c 20 77 68 65 6e 20 66 6f 6c 64 65 72 73 20 61 72 65 20 73 68 61 72 65 64 20 61 63 72 6f ful.when.folders.are.shared.acro
19280 73 73 0a 73 79 73 74 65 6d 73 20 62 75 74 20 6d 6f 75 6e 74 65 64 20 61 74 20 64 69 66 66 65 72 ss.systems.but.mounted.at.differ
192a0 65 6e 74 20 72 6f 6f 74 73 2e 20 20 52 65 6c 61 74 69 76 65 20 70 61 74 68 20 74 6f 0a 60 6f 72 ent.roots...Relative.path.to.`or
192c0 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 2d 66 69 6c 65 27 20 73 74 69 g-generic-id-locations-file'.sti
192e0 6c 6c 20 68 61 73 20 74 6f 20 62 65 20 6d 61 69 6e 74 61 69 6e 65 64 20 61 63 72 6f 73 73 0a 73 ll.has.to.be.maintained.across.s
19300 79 73 74 65 6d 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 ystems."...:group.'org-generic-i
19320 64 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d d...:type.'boolean)..(defun.org-
19340 67 65 6e 65 72 69 63 2d 69 64 2d 2d 6d 61 6b 65 2d 68 61 73 68 2d 74 61 62 6c 65 20 28 26 72 65 generic-id--make-hash-table.(&re
19360 73 74 20 61 72 67 73 29 0a 20 20 22 4d 61 6b 65 20 68 61 73 68 20 74 61 62 6c 65 20 77 69 74 68 st.args)..."Make.hash.table.with
19380 20 e2 80 98 65 71 75 61 6c e2 80 99 20 74 65 73 74 20 61 6e 64 20 6f 70 74 69 6f 6e 61 6c 20 6f ....equal....test.and.optional.o
193a0 74 68 65 72 20 41 52 47 53 2e 22 0a 20 20 28 61 70 70 6c 79 20 23 27 6d 61 6b 65 2d 68 61 73 68 ther.ARGS."...(apply.#'make-hash
193c0 2d 74 61 62 6c 65 20 3a 74 65 73 74 20 23 27 65 71 75 61 6c 20 61 72 67 73 29 29 0a 0a 28 64 65 -table.:test.#'equal.args))..(de
193e0 66 76 61 72 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 20 28 6f fvar.org-generic-id-locations.(o
19400 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 6d 61 6b 65 2d 68 61 73 68 2d 74 61 62 6c 65 29 0a rg-generic-id--make-hash-table).
19420 20 20 22 48 61 73 68 74 61 62 6c 65 20 73 74 6f 72 69 6e 67 20 6d 61 70 20 6f 66 20 49 44 20 6e .."Hashtable.storing.map.of.ID.n
19440 61 6d 65 73 20 74 6f 20 49 44 73 20 74 6f 20 66 69 6c 65 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 ames.to.IDs.to.file.containing.t
19460 68 65 6d 2e 0a 0a 45 78 61 6d 70 6c 65 20 73 74 72 75 63 74 75 72 65 3a 0a 0a 23 73 28 68 61 73 hem...Example.structure:..#s(has
19480 68 2d 74 61 62 6c 65 20 73 69 7a 65 20 33 31 20 74 65 73 74 20 65 71 75 61 6c 20 72 65 68 61 73 h-table.size.31.test.equal.rehas
194a0 68 2d 73 69 7a 65 20 31 2e 35 20 72 65 68 61 73 68 2d 74 68 72 65 73 68 6f 6c 64 20 30 2e 38 31 h-size.1.5.rehash-threshold.0.81
194c0 32 35 20 64 61 74 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 5c 22 65 6e 74 72 79 2d 69 25.data...............(\"entry-i
194e0 64 5c 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 73 28 68 61 73 68 2d 74 61 62 6c d\".................#s(hash-tabl
19500 65 20 73 69 7a 65 20 32 20 74 65 73 74 20 65 71 75 61 6c 20 72 65 68 61 73 68 2d 73 69 7a 65 20 e.size.2.test.equal.rehash-size.
19520 31 2e 35 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 1.5.............................
19540 20 20 72 65 68 61 73 68 2d 74 68 72 65 73 68 6f 6c 64 20 30 2e 38 31 32 35 20 64 61 74 61 0a 20 ..rehash-threshold.0.8125.data..
19560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
19580 20 20 20 20 20 20 20 28 5c 22 65 6e 74 72 79 2d 69 64 2d 31 5c 22 20 5c 22 66 69 6c 65 31 2e 6f .......(\"entry-id-1\".\"file1.o
195a0 72 67 5c 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rg\"............................
195c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5c 22 65 6e 74 72 79 2d 69 64 2d 32 5c 22 20 5c 22 66 ..............\"entry-id-2\".\"f
195e0 69 6c 65 32 2e 6f 72 67 5c 22 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 5c 22 6f ile2.org\")))...............(\"o
19600 74 68 65 72 2d 69 64 5c 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 73 28 68 61 73 ther-id\".................#s(has
19620 68 2d 74 61 62 6c 65 20 73 69 7a 65 20 32 20 74 65 73 74 20 65 71 75 61 6c 20 72 65 68 61 73 68 h-table.size.2.test.equal.rehash
19640 2d 73 69 7a 65 20 31 2e 35 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -size.1.5.......................
19660 20 20 20 20 20 20 20 20 72 65 68 61 73 68 2d 74 68 72 65 73 68 6f 6c 64 20 30 2e 38 31 32 35 20 ........rehash-threshold.0.8125.
19680 64 61 74 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 data............................
196a0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 5c 22 6f 74 68 65 72 2d 69 64 2d 31 5c 22 20 5c 22 66 .............(\"other-id-1\".\"f
196c0 69 6c 65 33 2e 6f 72 67 5c 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ile3.org\"......................
196e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5c 22 6f 74 68 65 72 2d 69 64 2d 32 ....................\"other-id-2
19700 5c 22 20 5c 22 66 69 6c 65 34 2e 6f 72 67 5c 22 29 29 29 29 0a 22 29 0a 0a 28 64 65 66 76 61 72 \".\"file4.org\")))).")..(defvar
19720 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 66 69 6c 65 73 0a 20 20 28 6f 72 67 2d 67 65 .org-generic-id--files...(org-ge
19740 6e 65 72 69 63 2d 69 64 2d 2d 6d 61 6b 65 2d 68 61 73 68 2d 74 61 62 6c 65 20 3a 77 65 61 6b 6e neric-id--make-hash-table.:weakn
19760 65 73 73 20 27 76 61 6c 75 65 29 0a 20 20 22 48 61 73 68 74 61 62 6c 65 20 6d 61 70 70 69 6e 67 ess.'value)..."Hashtable.mapping
19780 20 66 69 6c 65 20 6e 61 6d 65 73 20 74 6f 20 62 75 66 66 65 72 73 20 76 69 73 69 74 69 6e 67 20 .file.names.to.buffers.visiting.
197a0 74 68 65 20 66 69 6c 65 73 2e 0a 0a 54 68 65 20 6b 65 79 73 20 61 72 65 20 66 69 6c 65 20 6e 61 the.files...The.keys.are.file.na
197c0 6d 65 73 20 2d 20 6d 75 6c 74 69 70 6c 65 20 6b 65 79 73 20 6d 61 79 20 72 65 66 65 72 20 74 6f mes.-.multiple.keys.may.refer.to
197e0 20 74 68 65 20 73 61 6d 65 20 62 75 66 66 65 72 2e 20 20 54 68 65 0a 76 61 6c 75 65 73 20 61 72 .the.same.buffer...The.values.ar
19800 65 20 61 73 20 66 6f 6c 6c 6f 77 73 3a 0a 0a 2d 20 62 75 66 66 65 72 3a 20 6c 69 73 74 20 63 6f e.as.follows:..-.buffer:.list.co
19820 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 62 75 66 66 65 72 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e ntaining.the.buffer.correspondin
19840 67 20 74 6f 20 74 68 65 20 66 69 6c 65 0a 2d 20 6e 69 6c 3a 20 6c 69 73 74 20 63 6f 6e 74 61 69 g.to.the.file.-.nil:.list.contai
19860 6e 69 6e 67 20 6e 69 6c 2c 20 73 69 67 6e 69 66 79 69 6e 67 20 74 68 61 74 20 74 68 65 20 66 69 ning.nil,.signifying.that.the.fi
19880 6c 65 20 68 61 73 20 62 65 65 6e 20 64 65 74 65 72 6d 69 6e 65 64 20 74 6f 20 6e 6f 74 0a 20 20 le.has.been.determined.to.not...
198a0 20 20 20 20 20 20 20 62 65 20 76 69 73 69 74 65 64 20 62 79 20 61 20 62 75 66 66 65 72 0a 2d 20 .......be.visited.by.a.buffer.-.
198c0 60 75 6e 6b 6e 6f 77 6e e2 80 99 3a 20 77 68 65 6e 20 74 68 65 20 62 75 66 66 65 72 20 66 6f 72 `unknown...:.when.the.buffer.for
198e0 20 61 20 66 69 6c 65 20 68 61 73 20 6e 6f 74 20 62 65 65 6e 20 64 65 74 65 72 6d 69 6e 65 64 2e .a.file.has.not.been.determined.
19900 0a 0a 54 68 65 20 74 61 62 6c 65 20 68 61 73 20 77 65 61 6b 20 76 61 6c 75 65 73 20 73 6f 20 74 ..The.table.has.weak.values.so.t
19920 68 61 74 20 69 74 20 64 6f 65 73 20 6e 6f 74 20 63 61 75 73 65 20 62 75 66 66 65 72 73 20 74 6f hat.it.does.not.cause.buffers.to
19940 20 62 65 20 72 65 74 61 69 6e 65 64 20 77 68 65 6e 0a 74 68 65 79 20 77 6f 75 6c 64 20 6f 74 68 .be.retained.when.they.would.oth
19960 65 72 77 69 73 65 20 62 65 20 67 61 72 62 61 67 65 20 63 6f 6c 6c 65 63 74 65 64 20 28 61 66 74 erwise.be.garbage.collected.(aft
19980 65 72 20 62 65 69 6e 67 20 6b 69 6c 6c 65 64 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 29 2e 22 29 er.being.killed,.for.example).")
199a0 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 66 69 6c 65 73 20 28 29 ..(defun.org-generic-id-files.()
199c0 0a 20 20 22 52 65 74 75 72 6e 20 61 20 6c 69 73 74 20 6f 66 20 61 6c 6c 20 66 69 6c 65 73 20 6b ..."Return.a.list.of.all.files.k
199e0 6e 6f 77 6e 20 74 6f 20 68 61 76 65 20 49 44 73 2e 22 0a 20 20 28 6c 65 74 20 28 28 74 6d 70 20 nown.to.have.IDs."...(let.((tmp.
19a00 28 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 6d 61 6b 65 2d 68 61 73 68 2d 74 61 62 6c 65 (org-generic-id--make-hash-table
19a20 29 29 0a 20 20 20 20 20 20 20 20 72 65 73 29 0a 20 20 20 20 28 6d 61 70 68 61 73 68 0a 20 20 20 )).........res).....(maphash....
19a40 20 20 28 6c 61 6d 62 64 61 20 28 5f 69 64 2d 6e 61 6d 65 20 69 64 2d 68 61 73 68 29 0a 20 20 20 ..(lambda.(_id-name.id-hash)....
19a60 20 20 20 20 28 6d 61 70 68 61 73 68 0a 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 69 ....(maphash.........(lambda.(_i
19a80 64 20 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 75 74 68 61 73 68 20 66 69 6c 65 20 d.file)...........(puthash.file.
19aa0 74 20 74 6d 70 29 29 0a 20 20 20 20 20 20 20 20 69 64 2d 68 61 73 68 29 29 0a 20 20 20 20 20 6f t.tmp)).........id-hash))......o
19ac0 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 29 0a 20 20 20 20 28 6d 61 rg-generic-id-locations).....(ma
19ae0 70 68 61 73 68 0a 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 66 69 6c 65 20 5f 76 29 20 28 70 75 phash......(lambda.(file._v).(pu
19b00 73 68 20 66 69 6c 65 20 72 65 73 29 29 0a 20 20 20 20 20 74 6d 70 29 0a 20 20 20 20 72 65 73 29 sh.file.res))......tmp).....res)
19b20 29 0a 0a 28 70 65 72 73 69 73 74 2d 64 65 66 76 61 72 0a 20 20 6f 72 67 2d 67 65 6e 65 72 69 63 )..(persist-defvar...org-generic
19b40 2d 69 64 2d 2d 6c 61 73 74 2d 75 70 64 61 74 65 2d 69 64 2d 74 69 6d 65 20 6e 69 6c 0a 20 20 22 -id--last-update-id-time.nil..."
19b60 54 69 6d 65 20 61 74 20 77 68 69 63 68 20 e2 80 98 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d Time.at.which....org-generic-id-
19b80 75 70 64 61 74 65 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 e2 80 99 20 6c 61 73 74 20 63 6f 6d 70 update-id-locations....last.comp
19ba0 6c 65 74 65 64 2e 0a 0a 54 68 69 73 20 69 73 20 61 20 70 6c 69 73 74 20 6d 61 70 70 69 6e 67 20 leted...This.is.a.plist.mapping.
19bc0 65 61 63 68 20 49 44 2d 50 52 4f 50 20 74 6f 20 74 68 65 20 6c 61 73 74 20 74 69 6d 65 20 74 68 each.ID-PROP.to.the.last.time.th
19be0 61 74 20 49 44 2d 50 52 4f 50 20 77 61 73 20 75 70 64 61 74 65 64 2e 0a 46 6f 72 20 64 6f 63 75 at.ID-PROP.was.updated..For.docu
19c00 6d 65 6e 74 61 74 69 6f 6e 20 6f 6e 20 49 44 2d 50 52 4f 50 20 73 65 65 20 e2 80 98 6f 72 67 2d mentation.on.ID-PROP.see....org-
19c20 67 65 6e 65 72 69 63 2d 69 64 2d 66 69 6e 64 e2 80 99 2e 22 29 0a 0a 28 64 65 66 63 75 73 74 6f generic-id-find....")..(defcusto
19c40 6d 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 65 78 74 72 61 2d 66 69 6c 65 73 20 27 6f 72 m.org-generic-id-extra-files.'or
19c60 67 2d 61 67 65 6e 64 61 2d 74 65 78 74 2d 73 65 61 72 63 68 2d 65 78 74 72 61 2d 66 69 6c 65 73 g-agenda-text-search-extra-files
19c80 0a 20 20 22 46 69 6c 65 73 20 74 6f 20 62 65 20 73 65 61 72 63 68 65 64 20 66 6f 72 20 49 44 73 ..."Files.to.be.searched.for.IDs
19ca0 2c 20 62 65 73 69 64 65 73 20 74 68 65 20 61 67 65 6e 64 61 20 66 69 6c 65 73 2e 0a 57 68 65 6e ,.besides.the.agenda.files..When
19cc0 20 4f 72 67 20 72 65 70 61 72 73 65 73 20 66 69 6c 65 73 20 74 6f 20 72 65 6d 61 6b 65 20 74 68 .Org.reparses.files.to.remake.th
19ce0 65 20 6c 69 73 74 20 6f 66 20 66 69 6c 65 73 20 61 6e 64 20 49 44 73 20 69 74 20 69 73 20 74 72 e.list.of.files.and.IDs.it.is.tr
19d00 61 63 6b 69 6e 67 2c 0a 69 74 20 77 69 6c 6c 20 6e 6f 72 6d 61 6c 6c 79 20 73 63 61 6e 20 74 68 acking,.it.will.normally.scan.th
19d20 65 20 61 67 65 6e 64 61 20 66 69 6c 65 73 2c 20 74 68 65 20 61 72 63 68 69 76 65 73 20 72 65 6c e.agenda.files,.the.archives.rel
19d40 61 74 65 64 20 74 6f 20 61 67 65 6e 64 61 20 66 69 6c 65 73 2c 0a 61 6e 79 20 66 69 6c 65 73 20 ated.to.agenda.files,.any.files.
19d60 74 68 61 74 20 61 72 65 20 6c 69 73 74 65 64 20 61 73 20 49 44 20 63 6f 6e 74 61 69 6e 69 6e 67 that.are.listed.as.ID.containing
19d80 20 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 72 65 67 69 73 74 65 72 2c 20 61 6e 64 0a 61 6e .in.the.current.register,.and.an
19da0 79 20 4f 72 67 20 66 69 6c 65 20 63 75 72 72 65 6e 74 6c 79 20 76 69 73 69 74 65 64 20 62 79 20 y.Org.file.currently.visited.by.
19dc0 45 6d 61 63 73 2e 0a 59 6f 75 20 63 61 6e 20 6c 69 73 74 20 61 64 64 69 74 69 6f 6e 61 6c 20 66 Emacs..You.can.list.additional.f
19de0 69 6c 65 73 20 68 65 72 65 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 65 6e 65 72 69 iles.here."...:group.'org-generi
19e00 63 2d 69 64 0a 20 20 3a 74 79 70 65 0a 20 20 27 28 63 68 6f 69 63 65 0a 20 20 20 20 28 73 79 6d c-id...:type...'(choice.....(sym
19e20 62 6f 6c 20 3a 74 61 67 20 22 56 61 72 69 61 62 6c 65 22 29 0a 20 20 20 20 28 72 65 70 65 61 74 bol.:tag."Variable").....(repeat
19e40 20 3a 74 61 67 20 22 4c 69 73 74 20 6f 66 20 66 69 6c 65 73 22 0a 20 20 20 20 20 20 20 20 20 20 .:tag."List.of.files"...........
19e60 20 20 28 66 69 6c 65 29 29 29 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 67 65 6e 65 ..(file))))..(defcustom.org-gene
19e80 72 69 63 2d 69 64 2d 73 65 61 72 63 68 2d 61 72 63 68 69 76 65 73 20 74 0a 20 20 22 4e 6f 6e 2d ric-id-search-archives.t..."Non-
19ea0 6e 69 6c 20 6d 65 61 6e 73 20 73 65 61 72 63 68 20 61 6c 73 6f 20 74 68 65 20 61 72 63 68 69 76 nil.means.search.also.the.archiv
19ec0 65 20 66 69 6c 65 73 20 6f 66 20 61 67 65 6e 64 61 20 66 69 6c 65 73 20 66 6f 72 20 65 6e 74 72 e.files.of.agenda.files.for.entr
19ee0 69 65 73 2e 0a 54 68 69 73 20 69 73 20 61 20 70 6f 73 73 69 62 69 6c 69 74 79 20 74 6f 20 72 65 ies..This.is.a.possibility.to.re
19f00 64 75 63 65 20 6f 76 65 72 68 65 61 64 2c 20 62 75 74 20 69 74 20 6d 65 61 6e 73 20 74 68 61 74 duce.overhead,.but.it.means.that
19f20 20 65 6e 74 72 69 65 73 20 6d 6f 76 65 64 0a 74 6f 20 74 68 65 20 61 72 63 68 69 76 65 73 20 63 .entries.moved.to.the.archives.c
19f40 61 6e 20 6e 6f 20 6c 6f 6e 67 65 72 20 62 65 20 66 6f 75 6e 64 20 62 79 20 49 44 2e 22 0a 20 20 an.no.longer.be.found.by.ID."...
19f60 3a 67 72 6f 75 70 20 27 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 0a 20 20 3a 74 79 70 65 20 27 :group.'org-generic-id...:type.'
19f80 62 6f 6f 6c 65 61 6e 29 0a 0a 3b 3b 3b 20 54 68 65 20 41 50 49 20 66 75 6e 63 74 69 6f 6e 73 0a boolean)..;;;.The.API.functions.
19fa0 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 65 6e 65 72 .;;;###autoload.(defun.org-gener
19fc0 69 63 2d 69 64 2d 67 65 74 20 28 26 6f 70 74 69 6f 6e 61 6c 20 69 64 2d 70 72 6f 70 20 70 6f 6d ic-id-get.(&optional.id-prop.pom
19fe0 29 0a 20 20 22 47 65 74 20 74 68 65 20 49 44 2d 50 52 4f 50 20 70 72 6f 70 65 72 74 79 20 6f 66 )..."Get.the.ID-PROP.property.of
1a000 20 74 68 65 20 65 6e 74 72 79 20 61 74 20 70 6f 69 6e 74 2d 6f 72 2d 6d 61 72 6b 65 72 20 50 4f .the.entry.at.point-or-marker.PO
1a020 4d 2e 0a 49 66 20 50 4f 4d 20 69 73 20 6e 69 6c 2c 20 72 65 66 65 72 20 74 6f 20 74 68 65 20 65 M..If.POM.is.nil,.refer.to.the.e
1a040 6e 74 72 79 20 61 74 20 70 6f 69 6e 74 2e 0a 49 66 20 74 68 65 20 65 6e 74 72 79 20 64 6f 65 73 ntry.at.point..If.the.entry.does
1a060 20 6e 6f 74 20 68 61 76 65 20 61 6e 20 49 44 2c 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 72 65 .not.have.an.ID,.the.function.re
1a080 74 75 72 6e 73 20 6e 69 6c 2e 0a 49 6e 20 61 6e 79 20 63 61 73 65 2c 20 74 68 65 20 49 44 20 6f turns.nil..In.any.case,.the.ID.o
1a0a0 66 20 74 68 65 20 65 6e 74 72 79 20 69 73 20 72 65 74 75 72 6e 65 64 2e 22 0a 20 20 28 6f 72 67 f.the.entry.is.returned."...(org
1a0c0 2d 77 69 74 68 2d 70 6f 69 6e 74 2d 61 74 20 70 6f 6d 0a 20 20 20 20 28 6c 65 74 20 28 28 69 64 -with-point-at.pom.....(let.((id
1a0e0 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 65 74 20 6e 69 6c 20 69 64 2d 70 72 6f 70 29 29 29 0a 20 .(org-entry-get.nil.id-prop)))..
1a100 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 28 28 61 6e 64 20 69 64 20 28 73 74 72 69 .....(cond........((and.id.(stri
1a120 6e 67 70 20 69 64 29 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5c 5c 53 2d 22 20 69 64 29 ngp.id).(string-match."\\S-".id)
1a140 29 0a 20 20 20 20 20 20 20 20 69 64 29 0a 20 20 20 20 20 20 20 28 74 20 6e 69 6c 29 29 29 29 29 ).........id)........(t.nil)))))
1a160 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 65 6e 65 ..;;;###autoload.(defun.org-gene
1a180 72 69 63 2d 69 64 2d 66 69 6e 64 20 28 69 64 2d 70 72 6f 70 20 69 64 20 26 6f 70 74 69 6f 6e 61 ric-id-find.(id-prop.id.&optiona
1a1a0 6c 20 6d 61 72 6b 65 72 70 20 63 61 63 68 65 64 20 6e 6f 2d 66 61 6c 6c 62 61 63 6b 29 0a 20 20 l.markerp.cached.no-fallback)...
1a1c0 22 52 65 74 75 72 6e 20 74 68 65 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 65 6e 74 72 "Return.the.location.of.the.entr
1a1e0 79 20 77 69 74 68 20 70 72 6f 70 65 72 74 79 20 49 44 2d 50 52 4f 50 2c 20 76 61 6c 75 65 20 49 y.with.property.ID-PROP,.value.I
1a200 44 2e 0a 54 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 69 73 20 61 20 63 6f 6e 73 20 63 65 D..The.return.value.is.a.cons.ce
1a220 6c 6c 20 28 66 69 6c 65 2d 6e 61 6d 65 20 2e 20 70 6f 73 69 74 69 6f 6e 29 2c 20 6f 72 20 6e 69 ll.(file-name...position),.or.ni
1a240 6c 0a 69 66 20 74 68 65 72 65 20 69 73 20 6e 6f 20 65 6e 74 72 79 20 77 69 74 68 20 74 68 61 74 l.if.there.is.no.entry.with.that
1a260 20 49 44 2e 0a 57 69 74 68 20 6f 70 74 69 6f 6e 61 6c 20 61 72 67 75 6d 65 6e 74 20 4d 41 52 4b .ID..With.optional.argument.MARK
1a280 45 52 50 2c 20 72 65 74 75 72 6e 20 74 68 65 20 70 6f 73 69 74 69 6f 6e 20 61 73 20 61 20 6e 65 ERP,.return.the.position.as.a.ne
1a2a0 77 20 6d 61 72 6b 65 72 2e 0a 0a 4e 6f 72 6d 61 6c 6c 79 2c 20 69 66 20 61 6e 20 65 6e 74 72 79 w.marker...Normally,.if.an.entry
1a2c0 20 77 69 74 68 20 49 44 20 69 73 20 6e 6f 74 20 66 6f 75 6e 64 2c 20 74 68 69 73 20 66 75 6e 63 .with.ID.is.not.found,.this.func
1a2e0 74 69 6f 6e 20 77 69 6c 6c 20 72 75 6e 0a e2 80 98 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d tion.will.run....org-generic-id-
1a300 75 70 64 61 74 65 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 27 20 69 6e 20 6f 72 64 65 72 20 74 6f update-id-locations'.in.order.to
1a320 20 70 69 63 6b 20 75 70 20 61 6e 79 20 75 70 64 61 74 65 73 20 74 6f 20 74 68 65 0a 66 69 6c 65 .pick.up.any.updates.to.the.file
1a340 73 2c 20 61 6e 64 20 74 68 65 6e 20 73 65 61 72 63 68 20 61 67 61 69 6e 2c 20 62 65 66 6f 72 65 s,.and.then.search.again,.before
1a360 20 63 6f 6e 63 6c 75 64 69 6e 67 20 61 6e 20 49 44 20 63 61 6e e2 80 99 74 20 62 65 20 66 6f 75 .concluding.an.ID.can...t.be.fou
1a380 6e 64 2e 20 49 66 0a 43 41 43 48 45 44 20 69 73 20 70 61 73 73 65 64 2c 20 74 68 61 74 20 66 75 nd..If.CACHED.is.passed,.that.fu
1a3a0 6e 63 74 69 6f 6e 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 72 75 6e 2e 0a 0a 4e 6f 72 6d 61 6c 6c nction.will.not.be.run...Normall
1a3c0 79 20 74 68 65 20 49 44 20 77 69 6c 6c 20 62 65 20 73 65 61 72 63 68 65 64 20 66 6f 72 20 69 6e y.the.ID.will.be.searched.for.in
1a3e0 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 20 62 65 66 6f 72 65 20 75 70 64 61 74 .the.current.buffer.before.updat
1a400 69 6e 67 20 49 44 0a 6c 6f 63 61 74 69 6f 6e 73 2e 20 54 68 69 73 20 62 65 68 61 76 69 6f 72 20 ing.ID.locations..This.behavior.
1a420 63 61 6e 20 62 65 20 64 69 73 61 62 6c 65 64 20 77 69 74 68 20 4e 4f 2d 46 41 4c 4c 42 41 43 4b can.be.disabled.with.NO-FALLBACK
1a440 2e 22 0a 20 20 28 63 6f 6e 64 0a 20 20 20 28 28 73 79 6d 62 6f 6c 70 20 69 64 29 20 28 73 65 74 ."...(cond....((symbolp.id).(set
1a460 71 20 69 64 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 69 64 29 29 29 0a 20 20 20 28 28 6e 75 6d q.id.(symbol-name.id)))....((num
1a480 62 65 72 70 20 69 64 29 20 28 73 65 74 71 20 69 64 20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 72 berp.id).(setq.id.(number-to-str
1a4a0 69 6e 67 20 69 64 29 29 29 29 0a 20 20 28 6c 65 74 20 28 28 66 69 6c 65 20 28 6f 72 67 2d 67 65 ing.id))))...(let.((file.(org-ge
1a4c0 6e 65 72 69 63 2d 69 64 2d 66 69 6e 64 2d 69 64 2d 66 69 6c 65 20 69 64 2d 70 72 6f 70 20 69 64 neric-id-find-id-file.id-prop.id
1a4e0 20 6e 6f 2d 66 61 6c 6c 62 61 63 6b 29 29 0a 20 20 20 20 20 20 20 20 6f 72 67 2d 61 67 65 6e 64 .no-fallback)).........org-agend
1a500 61 2d 6e 65 77 2d 62 75 66 66 65 72 73 20 77 68 65 72 65 29 0a 20 20 20 20 28 77 68 65 6e 20 66 a-new-buffers.where).....(when.f
1a520 69 6c 65 0a 20 20 20 20 20 20 28 73 65 74 71 20 77 68 65 72 65 20 28 6f 72 67 2d 67 65 6e 65 72 ile.......(setq.where.(org-gener
1a540 69 63 2d 69 64 2d 66 69 6e 64 2d 69 64 2d 69 6e 2d 66 69 6c 65 20 69 64 2d 70 72 6f 70 20 69 64 ic-id-find-id-in-file.id-prop.id
1a560 20 66 69 6c 65 20 6d 61 72 6b 65 72 70 29 29 29 0a 20 20 20 20 28 75 6e 6c 65 73 73 20 28 6f 72 .file.markerp))).....(unless.(or
1a580 20 77 68 65 72 65 20 63 61 63 68 65 64 29 0a 20 20 20 20 20 20 28 6f 72 67 2d 67 65 6e 65 72 69 .where.cached).......(org-generi
1a5a0 63 2d 69 64 2d 75 70 64 61 74 65 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 20 69 64 2d 70 72 6f 70 c-id-update-id-locations.id-prop
1a5c0 20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 66 69 6c 65 20 28 6f 72 67 2d 67 65 .nil.t).......(setq.file.(org-ge
1a5e0 6e 65 72 69 63 2d 69 64 2d 66 69 6e 64 2d 69 64 2d 66 69 6c 65 20 69 64 2d 70 72 6f 70 20 69 64 neric-id-find-id-file.id-prop.id
1a600 20 6e 6f 2d 66 61 6c 6c 62 61 63 6b 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 66 69 6c 65 0a .no-fallback)).......(when.file.
1a620 20 20 20 20 20 20 20 20 28 73 65 74 71 20 77 68 65 72 65 20 28 6f 72 67 2d 67 65 6e 65 72 69 63 ........(setq.where.(org-generic
1a640 2d 69 64 2d 66 69 6e 64 2d 69 64 2d 69 6e 2d 66 69 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 -id-find-id-in-file.............
1a660 20 20 20 20 20 20 20 20 20 69 64 2d 70 72 6f 70 20 69 64 20 66 69 6c 65 20 6d 61 72 6b 65 72 70 .........id-prop.id.file.markerp
1a680 29 29 29 29 0a 20 20 20 20 77 68 65 72 65 29 29 0a 0a 3b 3b 3b 20 49 6e 74 65 72 6e 61 6c 20 66 )))).....where))..;;;.Internal.f
1a6a0 75 6e 63 74 69 6f 6e 73 0a 0a 3b 3b 20 53 74 6f 72 69 6e 67 20 49 44 20 6c 6f 63 61 74 69 6f 6e unctions..;;.Storing.ID.location
1a6c0 73 20 28 66 69 6c 65 73 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e s.(files)..;;;###autoload.(defun
1a6e0 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 75 70 64 61 74 65 2d 69 64 2d 6c 6f 63 61 74 69 .org-generic-id-update-id-locati
1a700 6f 6e 73 20 28 69 64 2d 70 72 6f 70 20 26 6f 70 74 69 6f 6e 61 6c 20 66 69 6c 65 73 20 73 69 6c ons.(id-prop.&optional.files.sil
1a720 65 6e 74 29 0a 20 20 22 53 63 61 6e 20 72 65 6c 65 76 61 6e 74 20 66 69 6c 65 73 20 66 6f 72 20 ent)..."Scan.relevant.files.for.
1a740 49 44 73 2e 0a 53 74 6f 72 65 20 74 68 65 20 72 65 6c 61 74 69 6f 6e 20 62 65 74 77 65 65 6e 20 IDs..Store.the.relation.between.
1a760 66 69 6c 65 73 20 61 6e 64 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 49 44 73 2e 0a 54 68 69 files.and.corresponding.IDs..Thi
1a780 73 20 77 69 6c 6c 20 73 63 61 6e 20 61 6c 6c 20 61 67 65 6e 64 61 20 66 69 6c 65 73 2c 20 61 6c s.will.scan.all.agenda.files,.al
1a7a0 6c 20 61 73 73 6f 63 69 61 74 65 64 20 61 72 63 68 69 76 65 73 2c 20 61 6e 64 20 61 6c 6c 0a 66 l.associated.archives,.and.all.f
1a7c0 69 6c 65 73 20 63 75 72 72 65 6e 74 6c 79 20 6d 65 6e 74 69 6f 6e 65 64 20 69 6e 20 60 6f 72 67 iles.currently.mentioned.in.`org
1a7e0 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 27 2e 0a 57 68 65 6e 20 46 49 4c -generic-id-locations'..When.FIL
1a800 45 53 20 69 73 20 67 69 76 65 6e 2c 20 73 63 61 6e 20 61 6c 73 6f 20 74 68 65 73 65 20 66 69 6c ES.is.given,.scan.also.these.fil
1a820 65 73 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 20 22 73 49 44 20 50 72 6f 70 65 72 74 es."...(interactive."sID.Propert
1a840 79 3a 20 22 29 0a 20 20 28 6c 65 74 2a 20 28 28 66 69 6c 65 73 0a 20 20 20 20 20 20 20 20 20 20 y:.")...(let*.((files...........
1a860 28 64 65 6c 65 74 65 2d 64 75 70 73 0a 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 61 72 20 (delete-dups............(mapcar.
1a880 23 27 61 62 62 72 65 76 69 61 74 65 2d 66 69 6c 65 2d 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 #'abbreviate-file-name..........
1a8a0 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 72 65 6d 6f 76 65 2d 69 66 2d 6e 6f 74 0a 20 20 20 20 ..........(cl-remove-if-not.....
1a8c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 44 65 66 61 75 6c 74 20 60 6f 72 67 2d ................;;.Default.`org-
1a8e0 67 65 6e 65 72 69 63 2d 69 64 2d 65 78 74 72 61 2d 66 69 6c 65 73 27 20 76 61 6c 75 65 20 63 6f generic-id-extra-files'.value.co
1a900 6e 74 61 69 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 60 61 ntains.....................;;.`a
1a920 67 65 6e 64 61 2d 61 72 63 68 69 76 65 73 27 20 73 79 6d 62 6f 6c 2e 0a 20 20 20 20 20 20 20 20 genda-archives'.symbol..........
1a940 20 20 20 20 20 20 20 20 20 20 20 20 23 27 73 74 72 69 6e 67 70 0a 20 20 20 20 20 20 20 20 20 20 ............#'stringp...........
1a960 20 20 20 20 20 20 20 20 20 20 28 61 70 70 65 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........(append...............
1a980 20 20 20 20 20 20 20 3b 3b 20 41 67 65 6e 64 61 20 66 69 6c 65 73 20 61 6e 64 20 61 6c 6c 20 61 .......;;.Agenda.files.and.all.a
1a9a0 73 73 6f 63 69 61 74 65 64 20 61 72 63 68 69 76 65 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 ssociated.archives..............
1a9c0 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 61 67 65 6e 64 61 2d 66 69 6c 65 73 20 74 20 6f 72 67 .........(org-agenda-files.t.org
1a9e0 2d 67 65 6e 65 72 69 63 2d 69 64 2d 73 65 61 72 63 68 2d 61 72 63 68 69 76 65 73 29 0a 20 20 20 -generic-id-search-archives)....
1aa00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 45 78 70 6c 69 63 69 74 20 65 78 ..................;;.Explicit.ex
1aa20 74 72 61 20 66 69 6c 65 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tra.files.......................
1aa40 28 69 66 20 28 73 79 6d 62 6f 6c 70 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 65 78 74 72 (if.(symbolp.org-generic-id-extr
1aa60 61 2d 66 69 6c 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 a-files)........................
1aa80 20 20 28 73 79 6d 62 6f 6c 2d 76 61 6c 75 65 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 65 ..(symbol-value.org-generic-id-e
1aaa0 78 74 72 61 2d 66 69 6c 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 xtra-files).....................
1aac0 20 20 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 65 78 74 72 61 2d 66 69 6c 65 73 29 0a 20 ...org-generic-id-extra-files)..
1aae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 41 6c 6c 20 66 69 6c 65 73 ....................;;.All.files
1ab00 20 6b 6e 6f 77 6e 20 74 6f 20 68 61 76 65 20 49 44 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 .known.to.have.IDs..............
1ab20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 66 69 6c 65 73 29 0a .........(org-generic-id-files).
1ab40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 41 64 64 69 74 69 6f 6e .....................;;.Addition
1ab60 61 6c 20 66 69 6c 65 73 20 66 72 6f 6d 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 2e 0a 20 20 20 al.files.from.function.call.....
1ab80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 69 6c 65 73 29 29 29 29 29 0a 20 20 20 ..................files)))))....
1aba0 20 20 20 20 20 20 28 6e 66 69 6c 65 73 20 28 6c 65 6e 67 74 68 20 66 69 6c 65 73 29 29 0a 20 20 ......(nfiles.(length.files))...
1abc0 20 20 20 20 20 20 20 28 69 64 2d 72 65 67 65 78 70 0a 20 20 20 20 20 20 20 20 20 20 28 72 78 2d .......(id-regexp...........(rx-
1abe0 74 6f 2d 73 74 72 69 6e 67 20 60 28 73 65 71 20 62 6f 6c 20 28 30 2b 20 28 61 6e 79 20 22 5c 74 to-string.`(seq.bol.(0+.(any."\t
1ac00 20 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c ."))...........................,
1ac20 28 66 6f 72 6d 61 74 20 22 3a 25 73 3a 22 20 69 64 2d 70 72 6f 70 29 0a 20 20 20 20 20 20 20 20 (format.":%s:".id-prop).........
1ac40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 31 2b 20 22 20 22 29 20 28 6e 6f 74 20 ..................(1+.".").(not.
1ac60 28 61 6e 79 20 22 20 22 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 65 65 6e 2d 69 64 73 (any.".")))))..........(seen-ids
1ac80 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 28 6e 64 75 70 20 30 29 0a 20 20 20 20 20 20 20 20 .nil)..........(ndup.0).........
1aca0 20 28 69 20 30 29 29 0a 20 20 20 20 28 75 6e 6c 65 73 73 20 28 67 65 74 68 61 73 68 20 69 64 2d .(i.0)).....(unless.(gethash.id-
1acc0 70 72 6f 70 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 29 0a 20 prop.org-generic-id-locations)..
1ace0 20 20 20 20 20 28 70 75 74 68 61 73 68 20 69 64 2d 70 72 6f 70 20 28 6f 72 67 2d 67 65 6e 65 72 .....(puthash.id-prop.(org-gener
1ad00 69 63 2d 69 64 2d 2d 6d 61 6b 65 2d 68 61 73 68 2d 74 61 62 6c 65 29 20 6f 72 67 2d 67 65 6e 65 ic-id--make-hash-table).org-gene
1ad20 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 29 29 0a 20 20 20 20 28 77 69 74 68 2d 74 65 6d ric-id-locations)).....(with-tem
1ad40 70 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 28 64 65 6c 61 79 2d 6d 6f 64 65 2d 68 6f 6f 6b 73 p-buffer.......(delay-mode-hooks
1ad60 0a 20 20 20 20 20 20 20 20 28 6f 72 67 2d 6d 6f 64 65 29 0a 20 20 20 20 20 20 20 20 28 64 6f 6c .........(org-mode).........(dol
1ad80 69 73 74 20 28 66 69 6c 65 20 66 69 6c 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 ist.(file.files)...........(cond
1ada0 69 74 69 6f 6e 2d 63 61 73 65 20 65 72 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 ition-case.err...............(wh
1adc0 65 6e 2d 6c 65 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 66 69 6c 65 0a en-let...................((file.
1ade0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 61 72 2d 73 61 66 65 0a 20 20 ....................(car-safe...
1ae00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 65 6e 65 72 69 63 2d ...................(org-generic-
1ae20 69 64 2d 66 69 6c 65 73 2d 6d 6f 64 69 66 69 65 64 2d 73 69 6e 63 65 2d 6d 6f 64 74 69 6d 65 0a id-files-modified-since-modtime.
1ae40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 65 6e 65 72 ......................(org-gener
1ae60 69 63 2d 69 64 2d 2d 6c 61 73 74 2d 75 70 64 61 74 65 2d 69 64 2d 74 69 6d 65 2d 67 65 74 20 69 ic-id--last-update-id-time-get.i
1ae80 64 2d 70 72 6f 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c d-prop).......................(l
1aea0 69 73 74 20 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ist.file).......................
1aec0 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 66 69 6c 65 73 29 29 29 29 0a 20 20 20 20 20 20 org-generic-id--files)))).......
1aee0 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 73 69 6c 65 6e 74 0a 20 20 20 20 20 20 20 ..........(unless.silent........
1af00 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 69 6e 63 66 20 69 29 0a 20 20 20 20 20 20 20 20 20 ...........(cl-incf.i)..........
1af20 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 46 69 6e 64 69 6e 67 20 3a 25 73 3a 20 .........(message."Finding.:%s:.
1af40 6c 6f 63 61 74 69 6f 6e 73 20 28 25 64 2f 25 64 20 66 69 6c 65 73 29 3a 20 25 73 22 0a 20 20 20 locations.(%d/%d.files):.%s"....
1af60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 64 2d 70 72 6f 70 20 ........................id-prop.
1af80 69 20 6e 66 69 6c 65 73 20 66 69 6c 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 i.nfiles.file)).................
1afa0 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20 20 20 20 (goto-char.(point-min)).........
1afc0 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 62 75 66 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ........(let.((buf..............
1afe0 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 67 65 74 2d 66 ..........(org-generic-id--get-f
1b000 69 6c 65 2d 74 6f 2d 62 75 66 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ile-to-buf......................
1b020 20 20 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 66 69 6c 65 73 20 66 69 6c 65 29 29 29 ...org-generic-id--files.file)))
1b040 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 ...................(save-excursi
1b060 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 62 75 66 0a 20 on.....................(if.buf..
1b080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 2d 62 75 66 66 .......................(set-buff
1b0a0 65 72 20 62 75 66 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 er.buf).......................(i
1b0c0 6e 73 65 72 74 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e 74 73 20 66 69 6c 65 20 6e 69 6c 20 6e 69 6c nsert-file-contents.file.nil.nil
1b0e0 20 6e 69 6c 20 27 72 65 70 6c 61 63 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .nil.'replace)).................
1b100 20 20 20 20 28 73 61 76 65 2d 72 65 73 74 72 69 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 ....(save-restriction...........
1b120 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 64 65 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 ............(widen).............
1b140 20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 ..........(goto-char.(point-min)
1b160 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 69 ).......................(let.((i
1b180 64 73 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ds.nil).........................
1b1a0 20 20 20 20 28 63 61 73 65 2d 66 6f 6c 64 2d 73 65 61 72 63 68 20 74 29 29 0a 20 20 20 20 20 20 ....(case-fold-search.t)).......
1b1c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 72 65 2d 73 65 61 ..................(while.(re-sea
1b1e0 72 63 68 2d 66 6f 72 77 61 72 64 20 69 64 2d 72 65 67 65 78 70 20 6e 69 6c 20 74 29 0a 20 20 20 rch-forward.id-regexp.nil.t)....
1b200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 6f 72 .......................(when.(or
1b220 67 2d 61 74 2d 70 72 6f 70 65 72 74 79 2d 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 g-at-property-p)................
1b240 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 65 .............(push.(org-entry-ge
1b260 74 20 28 70 6f 69 6e 74 29 20 69 64 2d 70 72 6f 70 29 20 69 64 73 29 29 29 0a 20 20 20 20 20 20 t.(point).id-prop).ids))).......
1b280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6f 6c 69 73 74 20 28 69 64 20 69 64 ..................(dolist.(id.id
1b2a0 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f s)...........................(co
1b2c0 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 nd............................((
1b2e0 6e 6f 74 20 28 6d 65 6d 62 65 72 20 69 64 20 73 65 65 6e 2d 69 64 73 29 29 0a 20 20 20 20 20 20 not.(member.id.seen-ids)).......
1b300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 69 64 20 73 ......................(push.id.s
1b320 65 65 6e 2d 69 64 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 een-ids)........................
1b340 20 20 20 20 20 28 70 75 74 68 61 73 68 20 69 64 20 66 69 6c 65 20 28 67 65 74 68 61 73 68 20 69 .....(puthash.id.file.(gethash.i
1b360 64 2d 70 72 6f 70 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 29 d-prop.org-generic-id-locations)
1b380 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 ))............................(s
1b3a0 69 6c 65 6e 74 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ilent.nil)......................
1b3c0 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......(t........................
1b3e0 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 44 75 70 6c 69 63 61 74 65 20 3a 25 73 3a 20 70 72 .....(message."Duplicate.:%s:.pr
1b400 6f 70 65 72 74 79 20 25 53 22 20 69 64 2d 70 72 6f 70 20 69 64 29 0a 20 20 20 20 20 20 20 20 20 operty.%S".id-prop.id)..........
1b420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 69 6e 63 66 20 6e 64 75 70 ...................(cl-incf.ndup
1b440 29 29 29 29 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 66 69 6c 65 2d 65 72 72 6f ))))))))).............(file-erro
1b460 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 61 72 6e 20 22 6f 72 67 2d 67 65 6e 65 72 69 r..............(warn."org-generi
1b480 63 2d 69 64 2d 75 70 64 61 74 65 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 3a 20 66 69 6c 65 20 e2 c-id-update-id-locations:.file..
1b4a0 80 9c 25 73 e2 80 9d 3a 20 25 53 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..%s...:.%S"....................
1b4c0 66 69 6c 65 20 65 72 72 29 29 29 29 29 29 0a 20 20 20 20 3b 3b 20 53 61 76 65 20 74 68 65 20 6e file.err)))))).....;;.Save.the.n
1b4e0 65 77 20 6c 6f 63 61 74 69 6f 6e 73 20 61 6e 64 20 72 65 6c 6f 61 64 20 74 6f 20 72 65 67 65 6e ew.locations.and.reload.to.regen
1b500 65 72 61 74 65 20 76 61 72 69 61 62 6c 65 73 2e 0a 20 20 20 20 28 6f 72 67 2d 67 65 6e 65 72 69 erate.variables......(org-generi
1b520 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 2d 73 61 76 65 29 0a 20 20 20 20 28 6f 72 67 2d 67 65 c-id-locations-save).....(org-ge
1b540 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 2d 6c 6f 61 64 29 0a 20 20 20 20 28 6f 72 neric-id-locations-load).....(or
1b560 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 6c 61 73 74 2d 75 70 64 61 74 65 2d 69 64 2d 74 69 6d g-generic-id--last-update-id-tim
1b580 65 2d 70 75 74 20 69 64 2d 70 72 6f 70 20 28 63 75 72 72 65 6e 74 2d 74 69 6d 65 29 29 0a 20 20 e-put.id-prop.(current-time))...
1b5a0 20 20 28 77 68 65 6e 20 28 61 6e 64 20 28 6e 6f 74 20 73 69 6c 65 6e 74 29 20 28 3e 20 6e 64 75 ..(when.(and.(not.silent).(>.ndu
1b5c0 70 20 30 29 29 0a 20 20 20 20 20 20 28 77 61 72 6e 0a 20 20 20 20 20 20 20 22 57 41 52 4e 49 4e p.0)).......(warn........"WARNIN
1b5e0 47 3a 20 25 64 20 64 75 70 6c 69 63 61 74 65 20 3a 25 73 3a 20 70 72 6f 70 65 72 74 69 65 73 20 G:.%d.duplicate.:%s:.properties.
1b600 66 6f 75 6e 64 2c 20 63 68 65 63 6b 20 2a 4d 65 73 73 61 67 65 73 2a 20 62 75 66 66 65 72 22 0a found,.check.*Messages*.buffer".
1b620 20 20 20 20 20 20 20 6e 64 75 70 20 69 64 2d 70 72 6f 70 29 29 0a 20 20 20 20 28 6d 65 73 73 61 .......ndup.id-prop)).....(messa
1b640 67 65 20 22 25 64 20 66 69 6c 65 73 20 73 63 61 6e 6e 65 64 2c 20 61 6e 64 20 25 64 20 3a 25 73 ge."%d.files.scanned,.and.%d.:%s
1b660 3a 20 49 44 73 20 66 6f 75 6e 64 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 66 69 6c 65 :.IDs.found."..............nfile
1b680 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 68 61 73 68 2d 74 61 62 6c 65 2d 63 6f 75 6e 74 s..............(hash-table-count
1b6a0 20 28 67 65 74 68 61 73 68 20 69 64 2d 70 72 6f 70 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 .(gethash.id-prop.org-generic-id
1b6c0 2d 6c 6f 63 61 74 69 6f 6e 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 69 64 2d 70 72 6f -locations))..............id-pro
1b6e0 70 29 0a 20 20 20 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 29 p).....org-generic-id-locations)
1b700 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f )..(defun.org-generic-id-locatio
1b720 6e 73 2d 73 61 76 65 20 28 29 0a 20 20 22 53 61 76 65 20 60 6f 72 67 2d 67 65 6e 65 72 69 63 2d ns-save.()..."Save.`org-generic-
1b740 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 27 20 69 6e 20 60 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 id-locations'.in.`org-generic-id
1b760 2d 6c 6f 63 61 74 69 6f 6e 73 2d 66 69 6c 65 27 2e 22 0a 20 20 28 77 68 65 6e 20 28 61 6e 64 20 -locations-file'."...(when.(and.
1b780 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 29 0a 20 20 20 20 28 6c org-generic-id-locations).....(l
1b7a0 65 74 20 28 28 6f 75 74 20 28 69 66 20 28 68 61 73 68 2d 74 61 62 6c 65 2d 70 20 6f 72 67 2d 67 et.((out.(if.(hash-table-p.org-g
1b7c0 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 eneric-id-locations)............
1b7e0 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 6c 6f 63 61 74 69 6f ........(org-generic-id--locatio
1b800 6e 73 2d 68 61 73 68 2d 74 6f 2d 61 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ns-hash-to-alist................
1b820 20 20 20 20 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 29 0a 20 .....org-generic-id-locations)..
1b840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c ................org-generic-id-l
1b860 6f 63 61 74 69 6f 6e 73 29 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 6f 72 67 ocations))).......(when.(and.org
1b880 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 2d 66 69 6c 65 2d 72 65 6c 61 74 -generic-id-locations-file-relat
1b8a0 69 76 65 20 6f 75 74 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 6f 75 74 20 28 6d 61 70 63 ive.out).........(setq.out.(mapc
1b8c0 61 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 69 ar....................(lambda.(i
1b8e0 74 65 6d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 66 tem)......................(if.(f
1b900 69 6c 65 2d 6e 61 6d 65 2d 61 62 73 6f 6c 75 74 65 2d 70 20 28 63 61 72 20 69 74 65 6d 29 29 0a ile-name-absolute-p.(car.item)).
1b920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 28 .........................(cons.(
1b940 66 69 6c 65 2d 72 65 6c 61 74 69 76 65 2d 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 file-relative-name..............
1b960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 61 72 20 69 74 65 6d 29 20 28 66 ...................(car.item).(f
1b980 69 6c 65 2d 6e 61 6d 65 2d 64 69 72 65 63 74 6f 72 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ile-name-directory..............
1b9a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f ...............................o
1b9c0 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 2d 66 69 6c 65 29 29 0a 20 rg-generic-id-locations-file))..
1b9e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 ..............................(c
1ba00 64 72 20 69 74 65 6d 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dr.item)).......................
1ba20 20 69 74 65 6d 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 75 74 29 29 .item))....................out))
1ba40 29 0a 20 20 20 20 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 66 69 6c 65 20 6f 72 67 2d 67 65 6e 65 ).......(with-temp-file.org-gene
1ba60 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 2d 66 69 6c 65 0a 20 20 20 20 20 20 20 20 28 6c ric-id-locations-file.........(l
1ba80 65 74 20 28 28 70 72 69 6e 74 2d 6c 65 76 65 6c 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 et.((print-level.nil)...........
1baa0 20 20 20 20 28 70 72 69 6e 74 2d 6c 65 6e 67 74 68 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 ....(print-length.nil)).........
1bac0 20 20 28 70 70 20 6f 75 74 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29 29 29 29 29 ..(pp.out.(current-buffer)))))))
1bae0 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 65 6e 65 ..;;;###autoload.(defun.org-gene
1bb00 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 2d 6c 6f 61 64 20 28 29 0a 20 20 22 52 65 61 64 ric-id-locations-load.()..."Read
1bb20 20 74 68 65 20 64 61 74 61 20 66 72 6f 6d 20 60 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c .the.data.from.`org-generic-id-l
1bb40 6f 63 61 74 69 6f 6e 73 2d 66 69 6c 65 27 2e 22 0a 20 20 28 73 65 74 71 20 6f 72 67 2d 67 65 6e ocations-file'."...(setq.org-gen
1bb60 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 20 6e 69 6c 29 0a 20 20 28 77 69 74 68 2d 74 eric-id-locations.nil)...(with-t
1bb80 65 6d 70 2d 62 75 66 66 65 72 0a 20 20 20 20 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 6e emp-buffer.....(condition-case.n
1bba0 69 6c 0a 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 il.........(progn...........(ins
1bbc0 65 72 74 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e 74 73 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 ert-file-contents.org-generic-id
1bbe0 2d 6c 6f 63 61 74 69 6f 6e 73 2d 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 -locations-file)...........(setq
1bc00 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 20 28 72 65 61 64 20 .org-generic-id-locations.(read.
1bc20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 6c 65 (current-buffer)))...........(le
1bc40 74 20 28 28 6c 6f 63 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 64 69 72 65 63 74 6f 72 79 20 6f 72 67 t.((loc.(file-name-directory.org
1bc60 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 2d 66 69 6c 65 29 29 29 0a 20 20 -generic-id-locations-file)))...
1bc80 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 20 28 6c 61 6d 62 64 61 20 28 69 64 2d 69 74 65 6d ..........(mapc.(lambda.(id-item
1bca0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 0a 20 20 20 20 ).....................(mapc.....
1bcc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 69 74 65 6d 29 0a .................(lambda.(item).
1bce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 .......................(unless.(
1bd00 66 69 6c 65 2d 6e 61 6d 65 2d 61 62 73 6f 6c 75 74 65 2d 70 20 28 63 61 72 20 69 74 65 6d 29 29 file-name-absolute-p.(car.item))
1bd20 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 66 20 ..........................(setf.
1bd40 28 63 61 72 20 69 74 65 6d 29 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 28 63 61 (car.item).(expand-file-name.(ca
1bd60 72 20 69 74 65 6d 29 20 6c 6f 63 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r.item).loc)))).................
1bd80 20 20 20 20 20 28 63 64 72 20 69 64 2d 69 74 65 6d 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 .....(cdr.id-item)))............
1bda0 20 20 20 20 20 20 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 29 .......org-generic-id-locations)
1bdc0 29 29 0a 20 20 20 20 20 20 28 65 72 72 6f 72 0a 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 )).......(error........(message.
1bde0 22 43 6f 75 6c 64 20 6e 6f 74 20 72 65 61 64 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 76 "Could.not.read.org-generic-id-v
1be00 61 6c 75 65 73 20 66 72 6f 6d 20 25 73 2e 20 20 53 65 74 74 69 6e 67 20 69 74 20 74 6f 20 6e 69 alues.from.%s...Setting.it.to.ni
1be20 6c 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d l.".................org-generic-
1be40 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 2d 66 69 6c 65 29 29 29 29 0a 20 20 28 73 65 74 71 20 6f 72 id-locations-file))))...(setq.or
1be60 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 20 28 6f 72 67 2d 67 65 6e 65 g-generic-id-locations.(org-gene
1be80 72 69 63 2d 69 64 2d 2d 6c 6f 63 61 74 69 6f 6e 73 2d 61 6c 69 73 74 2d 74 6f 2d 68 61 73 68 20 ric-id--locations-alist-to-hash.
1bea0 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 29 29 29 0a 0a 3b 3b 3b org-generic-id-locations)))..;;;
1bec0 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 ###autoload.(defun.org-generic-i
1bee0 64 2d 61 64 64 2d 6c 6f 63 61 74 69 6f 6e 20 28 69 64 2d 70 72 6f 70 20 69 64 20 66 69 6c 65 29 d-add-location.(id-prop.id.file)
1bf00 0a 20 20 22 41 64 64 20 74 68 65 20 49 44 20 77 69 74 68 20 6c 6f 63 61 74 69 6f 6e 20 46 49 4c ..."Add.the.ID.with.location.FIL
1bf20 45 20 74 6f 20 74 68 65 20 64 61 74 61 62 61 73 65 20 6f 66 20 49 44 20 6c 6f 63 61 74 69 6f 6e E.to.the.database.of.ID.location
1bf40 73 2e 22 0a 20 20 3b 3b 20 4f 6e 6c 79 20 77 68 65 6e 20 74 68 65 20 62 75 66 66 65 72 20 68 61 s."...;;.Only.when.the.buffer.ha
1bf60 73 20 61 20 66 69 6c 65 0a 20 20 28 75 6e 6c 65 73 73 20 66 69 6c 65 0a 20 20 20 20 28 65 72 72 s.a.file...(unless.file.....(err
1bf80 6f 72 20 22 62 75 67 3a 20 e2 80 98 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 61 64 64 2d 6c or."bug:....org-generic-id-add-l
1bfa0 6f 63 61 74 69 6f 6e 73 27 20 65 78 70 65 63 74 73 20 61 20 66 69 6c 65 2d 76 69 73 69 74 69 6e ocations'.expects.a.file-visitin
1bfc0 67 20 62 75 66 66 65 72 22 29 29 0a 20 20 28 6c 65 74 20 28 28 61 66 69 6c 65 20 28 61 62 62 72 g.buffer"))...(let.((afile.(abbr
1bfe0 65 76 69 61 74 65 2d 66 69 6c 65 2d 6e 61 6d 65 20 66 69 6c 65 29 29 29 0a 20 20 20 20 28 77 68 eviate-file-name.file))).....(wh
1c000 65 6e 20 69 64 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 69 64 2d 70 72 6f 70 2d 68 61 73 68 20 en.id.......(let.((id-prop-hash.
1c020 28 67 65 74 68 61 73 68 20 69 64 2d 70 72 6f 70 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d (gethash.id-prop.org-generic-id-
1c040 6c 6f 63 61 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 locations.......................
1c060 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 6d 61 .............(org-generic-id--ma
1c080 6b 65 2d 68 61 73 68 2d 74 61 62 6c 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 70 75 74 68 61 ke-hash-table)))).........(putha
1c0a0 73 68 20 69 64 2d 70 72 6f 70 20 69 64 2d 70 72 6f 70 2d 68 61 73 68 20 6f 72 67 2d 67 65 6e 65 sh.id-prop.id-prop-hash.org-gene
1c0c0 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 29 0a 20 20 20 20 20 20 20 20 28 70 75 74 68 61 ric-id-locations).........(putha
1c0e0 73 68 20 69 64 20 61 66 69 6c 65 20 69 64 2d 70 72 6f 70 2d 68 61 73 68 29 29 0a 20 20 20 20 20 sh.id.afile.id-prop-hash))......
1c100 20 28 77 68 65 6e 20 28 65 71 20 27 75 6e 6b 6e 6f 77 6e 20 28 67 65 74 68 61 73 68 20 61 66 69 .(when.(eq.'unknown.(gethash.afi
1c120 6c 65 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 66 69 6c 65 73 20 27 75 6e 6b 6e 6f 77 le.org-generic-id--files.'unknow
1c140 6e 29 29 0a 20 20 20 20 20 20 20 20 28 70 75 74 68 61 73 68 20 61 66 69 6c 65 20 28 66 69 6e 64 n)).........(puthash.afile.(find
1c160 2d 62 75 66 66 65 72 2d 76 69 73 69 74 69 6e 67 20 61 66 69 6c 65 29 20 6f 72 67 2d 67 65 6e 65 -buffer-visiting.afile).org-gene
1c180 72 69 63 2d 69 64 2d 2d 66 69 6c 65 73 29 29 29 29 29 0a 0a 28 75 6e 6c 65 73 73 20 6e 6f 6e 69 ric-id--files)))))..(unless.noni
1c1a0 6e 74 65 72 61 63 74 69 76 65 0a 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 6b 69 6c 6c 2d 65 6d 61 nteractive...(add-hook.'kill-ema
1c1c0 63 73 2d 68 6f 6f 6b 20 27 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e cs-hook.'org-generic-id-location
1c1e0 73 2d 73 61 76 65 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d s-save))..(defun.org-generic-id-
1c200 2d 6c 6f 63 61 74 69 6f 6e 73 2d 68 61 73 68 2d 74 6f 2d 61 6c 69 73 74 20 28 68 61 73 68 29 0a -locations-hash-to-alist.(hash).
1c220 20 20 22 54 75 72 6e 20 61 6e 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 20 68 61 73 68 20 69 .."Turn.an.org-generic-id.hash.i
1c240 6e 74 6f 20 61 6e 20 61 6c 69 73 74 2c 20 73 6f 20 69 74 20 63 61 6e 20 62 65 20 77 72 69 74 74 nto.an.alist,.so.it.can.be.writt
1c260 65 6e 20 74 6f 20 61 20 66 69 6c 65 2e 22 0a 20 20 28 6c 65 74 20 28 72 65 73 29 0a 20 20 20 20 en.to.a.file."...(let.(res).....
1c280 28 6d 61 70 68 61 73 68 0a 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 6b 20 76 29 0a 20 20 20 20 (maphash......(lambda.(k.v).....
1c2a0 20 20 20 28 6c 65 74 20 28 28 76 20 28 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 68 61 73 ...(let.((v.(org-generic-id--has
1c2c0 68 2d 74 6f 2d 61 6c 69 73 74 20 76 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 65 74 66 20 28 h-to-alist.v)))..........(setf.(
1c2e0 61 6c 69 73 74 2d 67 65 74 20 6b 20 72 65 73 29 20 76 29 29 29 0a 20 20 20 20 20 68 61 73 68 29 alist-get.k.res).v)))......hash)
1c300 0a 20 20 20 20 28 73 65 74 71 20 72 65 73 20 28 73 6f 72 74 20 72 65 73 20 28 6c 61 6d 62 64 61 .....(setq.res.(sort.res.(lambda
1c320 20 28 78 20 79 29 20 28 73 74 72 69 6e 67 3c 20 28 63 61 72 20 78 29 20 28 63 61 72 20 79 29 29 .(x.y).(string<.(car.x).(car.y))
1c340 29 29 29 0a 20 20 20 20 72 65 73 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 65 6e 65 72 69 ))).....res))..(defun.org-generi
1c360 63 2d 69 64 2d 2d 68 61 73 68 2d 74 6f 2d 61 6c 69 73 74 20 28 68 61 73 68 29 0a 20 20 22 54 75 c-id--hash-to-alist.(hash)..."Tu
1c380 72 6e 20 61 20 68 61 73 68 20 69 6e 74 6f 20 61 6e 20 61 6c 69 73 74 20 77 68 69 6c 65 20 72 65 rn.a.hash.into.an.alist.while.re
1c3a0 76 65 72 73 69 6e 67 20 6b 65 79 73 20 61 6e 64 20 76 61 6c 75 65 73 2e 0a 0a 43 72 65 61 74 65 versing.keys.and.values...Create
1c3c0 20 61 6e 20 61 6c 69 73 74 20 77 69 74 68 20 65 61 63 68 20 6b 65 79 20 62 65 69 6e 67 20 74 68 .an.alist.with.each.key.being.th
1c3e0 65 20 64 69 73 74 69 6e 63 74 20 76 61 6c 75 65 73 20 69 6e 20 74 68 65 20 6f 72 69 67 69 6e 61 e.distinct.values.in.the.origina
1c400 6c 20 68 61 73 68 2c 0a 61 6e 64 20 65 61 63 68 20 76 61 6c 75 65 20 61 20 6c 69 73 74 20 6f 66 l.hash,.and.each.value.a.list.of
1c420 20 61 6c 6c 20 6f 72 69 67 69 6e 61 6c 20 68 61 73 68 20 6b 65 79 73 20 74 68 61 74 20 6d 61 70 .all.original.hash.keys.that.map
1c440 20 74 6f 20 74 68 65 20 6b 65 79 20 6f 66 20 74 68 65 0a 61 6c 69 73 74 2e 20 46 6f 72 20 65 78 .to.the.key.of.the.alist..For.ex
1c460 61 6d 70 6c 65 2c 20 61 20 68 61 73 68 0a 0a 20 20 20 20 7b e2 80 99 69 64 31 e2 80 99 3a 20 e2 ample,.a.hash......{...id1...:..
1c480 80 99 66 69 6c 65 31 e2 80 99 2c 20 e2 80 99 69 64 32 e2 80 99 3a 20 e2 80 99 66 69 6c 65 32 e2 ..file1...,....id2...:....file2.
1c4a0 80 99 2c 20 e2 80 99 69 64 33 e2 80 99 3a 20 e2 80 99 66 69 6c 65 31 e2 80 99 7d 0a 0a 69 73 20 ..,....id3...:....file1...}..is.
1c4c0 74 75 72 6e 65 64 20 69 6e 74 6f 20 61 6e 20 61 6c 69 73 74 20 6c 69 6b 65 20 74 68 69 73 3a 0a turned.into.an.alist.like.this:.
1c4e0 0a 20 20 20 20 28 28 e2 80 99 66 69 6c 65 31 e2 80 99 20 2e 20 28 e2 80 99 69 64 31 e2 80 99 20 .....((...file1......(...id1....
1c500 e2 80 99 69 64 33 e2 80 99 29 29 20 28 e2 80 99 66 69 6c 65 32 e2 80 99 20 2e 20 28 e2 80 99 69 ...id3...)).(...file2......(...i
1c520 64 32 e2 80 99 29 29 29 22 0a 20 20 28 6c 65 74 20 28 72 65 73 20 78 29 0a 20 20 20 20 28 6d 61 d2...)))"...(let.(res.x).....(ma
1c540 70 68 61 73 68 0a 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 6b 20 76 29 0a 20 20 20 20 20 20 20 phash......(lambda.(k.v)........
1c560 28 69 66 20 28 73 65 74 71 20 78 20 28 61 73 73 6f 63 20 76 20 72 65 73 29 29 0a 20 20 20 20 20 (if.(setq.x.(assoc.v.res))......
1c580 20 20 20 20 20 20 28 73 65 74 63 64 72 20 78 20 28 63 6f 6e 73 20 6b 20 28 63 64 72 20 78 29 29 ......(setcdr.x.(cons.k.(cdr.x))
1c5a0 29 0a 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 6c 69 73 74 20 76 20 6b 29 20 72 65 73 29 )..........(push.(list.v.k).res)
1c5c0 29 29 0a 20 20 20 20 20 68 61 73 68 29 0a 20 20 20 20 28 6d 61 70 63 20 28 6c 61 6d 62 64 61 20 ))......hash).....(mapc.(lambda.
1c5e0 28 78 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 63 64 72 20 78 20 28 73 6f 72 74 20 (x).............(setcdr.x.(sort.
1c600 28 63 64 72 20 78 29 20 23 27 73 74 72 69 6e 67 3c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 72 (cdr.x).#'string<)))...........r
1c620 65 73 29 0a 20 20 20 20 28 73 65 74 71 20 72 65 73 20 28 73 6f 72 74 20 72 65 73 20 28 6c 61 6d es).....(setq.res.(sort.res.(lam
1c640 62 64 61 20 28 78 20 79 29 20 28 73 74 72 69 6e 67 3c 20 28 63 61 72 20 78 29 20 28 63 61 72 20 bda.(x.y).(string<.(car.x).(car.
1c660 79 29 29 29 29 29 0a 20 20 20 20 72 65 73 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 65 6e y))))).....res))..(defun.org-gen
1c680 65 72 69 63 2d 69 64 2d 2d 6c 6f 63 61 74 69 6f 6e 73 2d 61 6c 69 73 74 2d 74 6f 2d 68 61 73 68 eric-id--locations-alist-to-hash
1c6a0 20 28 6c 69 73 74 29 0a 20 20 22 54 75 72 6e 20 61 6e 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 .(list)..."Turn.an.org-generic-i
1c6c0 64 20 6c 6f 63 61 74 69 6f 6e 20 6c 69 73 74 20 69 6e 74 6f 20 61 20 68 61 73 68 20 74 61 62 6c d.location.list.into.a.hash.tabl
1c6e0 65 2e 22 0a 20 20 28 6c 65 74 20 28 28 72 65 73 20 28 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 e."...(let.((res.(org-generic-id
1c700 2d 2d 6d 61 6b 65 2d 68 61 73 68 2d 74 61 62 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 --make-hash-table...............
1c720 3a 73 69 7a 65 20 28 61 70 70 6c 79 20 27 2b 20 28 6d 61 70 63 61 72 20 27 6c 65 6e 67 74 68 20 :size.(apply.'+.(mapcar.'length.
1c740 6c 69 73 74 29 29 29 29 29 0a 20 20 20 20 28 6d 61 70 63 0a 20 20 20 20 20 28 6c 61 6d 62 64 61 list))))).....(mapc......(lambda
1c760 20 28 78 29 0a 20 20 20 20 20 20 20 28 70 75 74 68 61 73 68 20 28 63 61 72 20 78 29 20 28 6f 72 .(x)........(puthash.(car.x).(or
1c780 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 61 6c 69 73 74 2d 74 6f 2d 68 61 73 68 20 28 63 64 72 g-generic-id--alist-to-hash.(cdr
1c7a0 20 78 29 29 20 72 65 73 29 29 0a 20 20 20 20 20 6c 69 73 74 29 0a 20 20 20 20 72 65 73 29 29 0a .x)).res))......list).....res)).
1c7c0 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 61 6c 69 73 74 2d 74 6f .(defun.org-generic-id--alist-to
1c7e0 2d 68 61 73 68 20 28 6c 69 73 74 29 0a 20 20 22 52 65 76 65 72 73 65 20 74 68 65 20 74 72 61 6e -hash.(list)..."Reverse.the.tran
1c800 73 66 6f 72 6d 61 74 69 6f 6e 20 6d 61 64 65 20 69 6e 20 e2 80 98 6f 72 67 2d 67 65 6e 65 72 69 sformation.made.in....org-generi
1c820 63 2d 69 64 2d 2d 68 61 73 68 2d 74 6f 2d 61 6c 69 73 74 e2 80 99 2e 22 0a 20 20 28 6c 65 74 20 c-id--hash-to-alist...."...(let.
1c840 28 28 72 65 73 20 28 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 6d 61 6b 65 2d 68 61 73 68 ((res.(org-generic-id--make-hash
1c860 2d 74 61 62 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 73 69 7a 65 20 28 61 70 70 6c -table...............:size.(appl
1c880 79 20 27 2b 20 28 6d 61 70 63 61 72 20 27 6c 65 6e 67 74 68 20 6c 69 73 74 29 29 29 29 0a 20 20 y.'+.(mapcar.'length.list))))...
1c8a0 20 20 20 20 20 20 66 29 0a 20 20 20 20 28 6d 61 70 63 0a 20 20 20 20 20 28 6c 61 6d 62 64 61 20 ......f).....(mapc......(lambda.
1c8c0 28 78 29 0a 20 20 20 20 20 20 20 28 73 65 74 71 20 66 20 28 63 61 72 20 78 29 29 0a 20 20 20 20 (x)........(setq.f.(car.x)).....
1c8e0 20 20 20 28 6d 61 70 63 20 28 6c 61 6d 62 64 61 20 28 69 29 20 28 70 75 74 68 61 73 68 20 69 20 ...(mapc.(lambda.(i).(puthash.i.
1c900 66 20 72 65 73 29 29 20 28 63 64 72 20 78 29 29 29 0a 20 20 20 20 20 6c 69 73 74 29 0a 20 20 20 f.res)).(cdr.x)))......list)....
1c920 20 72 65 73 29 29 0a 0a 3b 3b 20 46 69 6e 64 69 6e 67 20 65 6e 74 72 69 65 73 20 77 69 74 68 20 .res))..;;.Finding.entries.with.
1c940 73 70 65 63 69 66 69 65 64 20 69 64 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 specified.id..;;;###autoload.(de
1c960 66 75 6e 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 66 69 6e 64 2d 69 64 2d 66 69 6c 65 20 fun.org-generic-id-find-id-file.
1c980 28 69 64 2d 70 72 6f 70 20 69 64 20 26 6f 70 74 69 6f 6e 61 6c 20 6e 6f 2d 66 61 6c 6c 62 61 63 (id-prop.id.&optional.no-fallbac
1c9a0 6b 29 0a 20 20 22 51 75 65 72 79 20 74 68 65 20 69 64 20 64 61 74 61 62 61 73 65 20 66 6f 72 20 k)..."Query.the.id.database.for.
1c9c0 74 68 65 20 66 69 6c 65 20 69 6e 20 77 68 69 63 68 20 74 68 69 73 20 49 44 20 69 73 20 6c 6f 63 the.file.in.which.this.ID.is.loc
1c9e0 61 74 65 64 2e 0a 0a 49 66 20 4e 4f 2d 46 41 4c 4c 42 41 43 4b 20 69 73 20 73 65 74 2c 20 64 6f ated...If.NO-FALLBACK.is.set,.do
1ca00 6e e2 80 99 74 20 66 61 6c 6c 20 62 61 63 6b 20 74 6f 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 n...t.fall.back.to.current.buffe
1ca20 72 20 69 66 20 6e 6f 74 20 66 6f 75 6e 64 20 69 6e 0a e2 80 98 6f 72 67 2d 67 65 6e 65 72 69 63 r.if.not.found.in....org-generic
1ca40 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 e2 80 99 2e 22 0a 20 20 28 6f 72 20 28 61 6e 64 20 6f 72 -id-locations...."...(or.(and.or
1ca60 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 g-generic-id-locations..........
1ca80 20 20 28 68 61 73 68 2d 74 61 62 6c 65 2d 70 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c ..(hash-table-p.org-generic-id-l
1caa0 6f 63 61 74 69 6f 6e 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 47 75 61 72 64 20 66 6f ocations)............;;.Guard.fo
1cac0 72 20 65 72 72 6f 72 73 20 69 6e 20 74 68 65 20 e2 80 98 67 65 74 68 61 73 68 e2 80 99 20 63 61 r.errors.in.the....gethash....ca
1cae0 6c 6c 20 61 66 74 65 72 20 74 68 69 73 0a 20 20 20 20 20 20 20 20 20 20 20 28 67 65 74 68 61 73 ll.after.this............(gethas
1cb00 68 20 69 64 2d 70 72 6f 70 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f h.id-prop.org-generic-id-locatio
1cb20 6e 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 67 65 74 68 61 73 68 20 69 64 0a 20 20 20 20 20 ns)............(gethash.id......
1cb40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 67 65 74 68 61 73 68 20 69 64 2d 70 72 6f 70 20 ...............(gethash.id-prop.
1cb60 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 29 29 29 0a 20 20 20 20 org-generic-id-locations))).....
1cb80 20 20 3b 3b 20 46 61 6c 6c 20 62 61 63 6b 20 6f 6e 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 ..;;.Fall.back.on.current.buffer
1cba0 0a 20 20 20 20 20 20 28 61 6e 64 20 28 6e 6f 74 20 6e 6f 2d 66 61 6c 6c 62 61 63 6b 29 0a 20 20 .......(and.(not.no-fallback)...
1cbc0 20 20 20 20 20 20 20 20 20 28 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 20 28 6f 72 20 28 .........(buffer-file-name.(or.(
1cbe0 62 75 66 66 65 72 2d 62 61 73 65 2d 62 75 66 66 65 72 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 buffer-base-buffer.(current-buff
1cc00 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 er))............................
1cc20 20 20 20 20 20 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29 29 29 29 0a 0a 28 64 65 ......(current-buffer))))))..(de
1cc40 66 75 6e 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 66 69 6e 64 2d 69 64 2d 69 6e 2d 66 69 fun.org-generic-id-find-id-in-fi
1cc60 6c 65 20 28 69 64 2d 70 72 6f 70 20 69 64 20 66 69 6c 65 20 26 6f 70 74 69 6f 6e 61 6c 20 6d 61 le.(id-prop.id.file.&optional.ma
1cc80 72 6b 65 72 70 29 0a 20 20 22 52 65 74 75 72 6e 20 74 68 65 20 70 6f 73 69 74 69 6f 6e 20 6f 66 rkerp)..."Return.the.position.of
1cca0 20 74 68 65 20 65 6e 74 72 79 20 49 44 20 69 6e 20 46 49 4c 45 2e 0a 0a 49 66 20 74 68 61 74 20 .the.entry.ID.in.FILE...If.that.
1ccc0 66 69 6c 65 73 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2c 20 6f 72 20 69 66 20 69 74 20 64 files.does.not.exist,.or.if.it.d
1cce0 6f 65 73 20 6e 6f 74 20 63 6f 6e 74 61 69 6e 20 74 68 69 73 20 49 44 2c 0a 72 65 74 75 72 6e 20 oes.not.contain.this.ID,.return.
1cd00 6e 69 6c 2e 0a 0a 54 68 65 20 70 6f 73 69 74 69 6f 6e 20 69 73 20 72 65 74 75 72 6e 65 64 20 61 nil...The.position.is.returned.a
1cd20 73 20 61 20 63 6f 6e 73 20 63 65 6c 6c 20 28 66 69 6c 65 2d 6e 61 6d 65 20 2e 20 70 6f 73 69 74 s.a.cons.cell.(file-name...posit
1cd40 69 6f 6e 29 2e 20 20 57 69 74 68 0a 6f 70 74 69 6f 6e 61 6c 20 61 72 67 75 6d 65 6e 74 20 4d 41 ion)...With.optional.argument.MA
1cd60 52 4b 45 52 50 2c 20 72 65 74 75 72 6e 20 74 68 65 20 70 6f 73 69 74 69 6f 6e 20 61 73 20 61 20 RKERP,.return.the.position.as.a.
1cd80 6e 65 77 20 6d 61 72 6b 65 72 2e 22 0a 20 20 28 63 6f 6e 64 0a 20 20 20 28 28 6e 6f 74 20 66 69 new.marker."...(cond....((not.fi
1cda0 6c 65 29 20 6e 69 6c 29 0a 20 20 20 28 28 6e 6f 74 20 28 66 69 6c 65 2d 65 78 69 73 74 73 2d 70 le).nil)....((not.(file-exists-p
1cdc0 20 66 69 6c 65 29 29 20 6e 69 6c 29 0a 20 20 20 28 74 0a 20 20 20 20 28 6c 65 74 2a 20 28 28 76 .file)).nil)....(t.....(let*.((v
1cde0 69 73 69 74 69 6e 67 20 28 66 69 6e 64 2d 62 75 66 66 65 72 2d 76 69 73 69 74 69 6e 67 20 66 69 isiting.(find-buffer-visiting.fi
1ce00 6c 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 62 75 66 66 65 72 20 28 6f 72 20 76 69 73 69 le))............(buffer.(or.visi
1ce20 74 69 6e 67 20 28 66 69 6e 64 2d 66 69 6c 65 2d 6e 6f 73 65 6c 65 63 74 20 66 69 6c 65 29 29 29 ting.(find-file-noselect.file)))
1ce40 29 0a 20 20 20 20 20 20 28 75 6e 77 69 6e 64 2d 70 72 6f 74 65 63 74 0a 20 20 20 20 20 20 20 20 ).......(unwind-protect.........
1ce60 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 62 75 66 66 65 72 0a 20 20 ..(with-current-buffer.buffer...
1ce80 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 70 6f 73 20 28 6f 72 67 2d 77 69 74 68 2d 77 ..........(let.((pos.(org-with-w
1cea0 69 64 65 2d 62 75 66 66 65 72 20 28 6f 72 67 2d 66 69 6e 64 2d 70 72 6f 70 65 72 74 79 20 69 64 ide-buffer.(org-find-property.id
1cec0 2d 70 72 6f 70 20 69 64 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 -prop.id))))...............(cond
1cee0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 6e 75 6c 6c 20 70 6f 73 29 20 6e 69 6c 29 ................((null.pos).nil)
1cf00 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 72 6b 65 72 70 20 28 6d 6f 76 65 2d 6d ................(markerp.(move-m
1cf20 61 72 6b 65 72 20 28 6d 61 6b 65 2d 6d 61 72 6b 65 72 29 20 70 6f 73 20 62 75 66 66 65 72 29 29 arker.(make-marker).pos.buffer))
1cf40 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 20 28 63 6f 6e 73 20 66 69 6c 65 20 70 6f ................(t.(cons.file.po
1cf60 73 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 52 65 6d 6f 76 65 20 6f 70 65 6e 65 64 20 s))))).........;;.Remove.opened.
1cf80 62 75 66 66 65 72 20 69 6e 20 74 68 65 20 70 72 6f 63 65 73 73 2e 0a 20 20 20 20 20 20 20 20 28 buffer.in.the.process..........(
1cfa0 75 6e 6c 65 73 73 20 28 6f 72 20 76 69 73 69 74 69 6e 67 20 6d 61 72 6b 65 72 70 29 20 28 6b 69 unless.(or.visiting.markerp).(ki
1cfc0 6c 6c 2d 62 75 66 66 65 72 20 62 75 66 66 65 72 29 29 29 29 29 29 29 0a 0a 28 63 6c 2d 64 65 66 ll-buffer.buffer)))))))..(cl-def
1cfe0 75 6e 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 66 69 6c 65 73 2d 6d 6f 64 69 66 69 65 64 un.org-generic-id-files-modified
1d000 2d 73 69 6e 63 65 2d 6d 6f 64 74 69 6d 65 20 28 6d 6f 64 74 69 6d 65 20 66 69 6c 65 73 20 26 6f -since-modtime.(modtime.files.&o
1d020 70 74 69 6f 6e 61 6c 20 66 69 6c 65 2d 74 6f 2d 62 75 66 29 0a 20 20 22 52 65 74 75 72 6e 20 61 ptional.file-to-buf)..."Return.a
1d040 6c 6c 20 66 69 6c 65 73 20 6d 6f 64 69 66 69 65 64 20 73 69 6e 63 65 20 61 20 63 65 72 74 61 69 ll.files.modified.since.a.certai
1d060 6e 20 74 69 6d 65 2e 0a 4d 4f 44 54 49 4d 45 20 69 73 20 61 20 74 69 6d 65 73 74 61 6d 70 20 6f n.time..MODTIME.is.a.timestamp.o
1d080 66 20 74 68 65 20 66 6f 72 6d 61 74 20 72 65 74 75 72 6e 65 64 20 62 79 20 e2 80 98 63 75 72 72 f.the.format.returned.by....curr
1d0a0 65 6e 74 2d 74 69 6d 65 e2 80 99 2e 0a 6f 66 20 66 69 6c 65 6e 61 6d 65 73 20 74 68 61 74 20 73 ent-time.....of.filenames.that.s
1d0c0 68 6f 75 6c 64 20 62 65 20 63 68 65 63 6b 65 64 2e 0a 0a 45 61 63 68 20 66 69 6c 65 6e 61 6d 65 hould.be.checked...Each.filename
1d0e0 e2 80 99 73 20 6d 6f 64 74 69 6d 65 20 69 73 20 63 68 65 63 6b 65 64 20 61 73 20 66 6f 6c 6c 6f ...s.modtime.is.checked.as.follo
1d100 77 73 3a 0a 0a 2d 20 49 66 20 74 68 65 72 65 20 69 73 20 6e 6f 20 62 75 66 66 65 72 20 76 69 73 ws:..-.If.there.is.no.buffer.vis
1d120 69 74 69 6e 67 20 74 68 65 20 66 69 6c 65 2c 20 74 68 65 20 6d 6f 64 74 69 6d 65 20 69 73 20 72 iting.the.file,.the.modtime.is.r
1d140 65 61 64 20 66 72 6f 6d 20 74 68 65 20 66 69 6c 65 0a 20 20 73 79 73 74 65 6d 20 61 6e 64 20 63 ead.from.the.file...system.and.c
1d160 68 65 63 6b 65 64 20 61 67 61 69 6e 73 74 20 4d 4f 44 54 49 4d 45 2e 0a 2d 20 49 66 20 74 68 65 hecked.against.MODTIME..-.If.the
1d180 20 62 75 66 66 65 72 20 76 69 73 69 74 69 6e 67 20 74 68 65 20 66 69 6c 65 20 69 73 20 6d 61 72 .buffer.visiting.the.file.is.mar
1d1a0 6b 65 64 20 6d 6f 64 69 66 69 65 64 2c 20 69 74 20 69 73 20 61 6c 77 61 79 73 20 63 6f 6e 73 69 ked.modified,.it.is.always.consi
1d1c0 64 65 72 65 64 0a 20 20 6d 6f 64 69 66 69 65 64 2e 0a 2d 20 4f 74 68 65 72 77 69 73 65 2c 20 74 dered...modified..-.Otherwise,.t
1d1e0 68 65 20 6d 6f 64 74 69 6d 65 20 69 73 20 72 65 61 64 20 75 73 69 6e 67 20 e2 80 98 76 69 73 69 he.modtime.is.read.using....visi
1d200 74 65 64 2d 66 69 6c 65 2d 6d 6f 64 74 69 6d 65 e2 80 99 20 66 72 6f 6d 20 74 68 65 20 62 75 66 ted-file-modtime....from.the.buf
1d220 66 65 72 0a 20 20 76 69 73 69 74 69 6e 67 20 74 68 65 20 66 69 6c 65 2e 0a 0a 46 49 4c 45 2d 54 fer...visiting.the.file...FILE-T
1d240 4f 2d 42 55 46 2c 20 69 66 20 70 72 65 73 65 6e 74 2c 20 69 73 20 61 20 68 61 73 68 74 61 62 6c O-BUF,.if.present,.is.a.hashtabl
1d260 65 20 6d 61 70 70 69 6e 67 20 66 69 6c 65 20 6e 61 6d 65 73 20 74 6f 20 65 69 74 68 65 72 20 74 e.mapping.file.names.to.either.t
1d280 68 65 20 62 75 66 66 65 72 0a 76 69 73 69 74 69 6e 67 20 74 68 61 74 20 66 69 6c 65 2c 20 6f 72 he.buffer.visiting.that.file,.or
1d2a0 20 6e 69 6c 20 69 66 20 69 74 e2 80 99 73 20 6b 6e 6f 77 6e 20 74 68 61 74 20 6e 6f 20 66 69 6c .nil.if.it...s.known.that.no.fil
1d2c0 65 20 69 73 20 76 69 73 69 74 69 6e 67 20 74 68 65 20 62 75 66 66 65 72 2e 0a 53 65 65 20 e2 80 e.is.visiting.the.buffer..See...
1d2e0 98 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 66 69 6c 65 73 27 20 66 6f 72 20 6d 6f 72 65 .org-generic-id--files'.for.more
1d300 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 74 68 65 20 66 6f 72 6d 61 74 2e 22 0a .information.about.the.format.".
1d320 20 20 28 69 66 20 28 6e 75 6c 6c 20 6d 6f 64 74 69 6d 65 29 0a 20 20 20 20 20 20 66 69 6c 65 73 ..(if.(null.modtime).......files
1d340 0a 20 20 20 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 66 69 6c 65 20 69 6e 20 66 69 6c 65 73 0a .....(cl-loop.for.file.in.files.
1d360 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 65 6e 20 28 66 69 6c 65 2d 65 78 69 73 74 73 2d 70 .............when.(file-exists-p
1d380 20 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 0a 20 20 20 20 20 20 20 20 20 .file)..............if..........
1d3a0 20 20 20 20 28 6c 65 74 2a 20 28 28 62 75 66 20 28 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d ....(let*.((buf.(org-generic-id-
1d3c0 2d 67 65 74 2d 66 69 6c 65 2d 74 6f 2d 62 75 66 20 66 69 6c 65 2d 74 6f 2d 62 75 66 20 66 69 6c -get-file-to-buf.file-to-buf.fil
1d3e0 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 e)))................(cond.......
1d400 20 20 20 20 20 20 20 20 20 20 28 28 6e 75 6c 6c 20 62 75 66 29 0a 20 20 20 20 20 20 20 20 20 20 ..........((null.buf)...........
1d420 20 20 20 20 20 20 20 28 74 69 6d 65 2d 6c 65 73 73 2d 70 20 6d 6f 64 74 69 6d 65 0a 20 20 20 20 .......(time-less-p.modtime.....
1d440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 69 6c 65 2d ..........................(file-
1d460 61 74 74 72 69 62 75 74 65 2d 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2d 74 69 6d 65 0a 20 20 20 20 attribute-modification-time.....
1d480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 69 6c 65 ...........................(file
1d4a0 2d 61 74 74 72 69 62 75 74 65 73 20 66 69 6c 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 -attributes.file))))............
1d4c0 20 20 20 20 20 28 28 62 75 66 66 65 72 2d 6d 6f 64 69 66 69 65 64 2d 70 20 62 75 66 29 20 74 29 .....((buffer-modified-p.buf).t)
1d4e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 .................(t.............
1d500 20 20 20 20 20 28 74 69 6d 65 2d 6c 65 73 73 2d 70 20 6d 6f 64 74 69 6d 65 0a 20 20 20 20 20 20 .....(time-less-p.modtime.......
1d520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 74 68 2d 63 75 ........................(with-cu
1d540 72 72 65 6e 74 2d 62 75 66 66 65 72 20 62 75 66 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rrent-buffer.buf................
1d560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 69 73 69 74 65 64 2d 66 69 6c 65 2d 6d .................(visited-file-m
1d580 6f 64 74 69 6d 65 29 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6c 65 63 odtime))))))..............collec
1d5a0 74 20 66 69 6c 65 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 t.file)))..(defun.org-generic-id
1d5c0 2d 2d 67 65 74 2d 66 69 6c 65 2d 74 6f 2d 62 75 66 20 28 66 69 6c 65 2d 74 6f 2d 62 75 66 20 66 --get-file-to-buf.(file-to-buf.f
1d5e0 69 6c 65 29 0a 20 20 22 47 65 74 20 62 75 66 66 65 72 20 76 69 73 69 74 69 6e 67 20 46 49 4c 45 ile)..."Get.buffer.visiting.FILE
1d600 2c 20 6f 72 20 6e 69 6c 20 69 66 20 6e 6f 20 73 75 63 68 20 62 75 66 66 65 72 2e 0a 0a 49 66 20 ,.or.nil.if.no.such.buffer...If.
1d620 46 49 4c 45 20 6f 72 20 e2 80 98 28 61 62 62 72 65 76 69 61 74 65 2d 66 69 6c 65 2d 6e 61 6d 65 FILE.or....(abbreviate-file-name
1d640 20 46 49 4c 45 29 e2 80 99 20 69 73 20 70 72 65 73 65 6e 74 20 69 6e 20 46 49 4c 45 2d 54 4f 2d .FILE)....is.present.in.FILE-TO-
1d660 42 55 46 2c 20 75 73 65 20 74 68 61 74 2e 0a 4f 74 68 65 72 77 69 73 65 2c 20 66 69 6e 64 20 74 BUF,.use.that..Otherwise,.find.t
1d680 68 65 20 62 75 66 66 65 72 20 76 69 73 69 74 69 6e 67 20 46 49 4c 45 20 69 66 20 61 6e 79 2c 20 he.buffer.visiting.FILE.if.any,.
1d6a0 61 6e 64 20 63 61 63 68 65 20 74 68 65 20 72 65 73 75 6c 74 20 69 6e 0a 46 49 4c 45 2d 54 4f 2d and.cache.the.result.in.FILE-TO-
1d6c0 42 55 46 2c 20 77 68 6f 73 65 20 66 6f 72 6d 61 74 20 69 73 20 64 6f 63 75 6d 65 6e 74 65 64 20 BUF,.whose.format.is.documented.
1d6e0 61 74 20 e2 80 98 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 66 69 6c 65 73 e2 80 99 2e 22 at....org-generic-id--files...."
1d700 0a 20 20 28 6c 65 74 20 28 28 62 20 28 67 65 74 68 61 73 68 20 66 69 6c 65 20 66 69 6c 65 2d 74 ...(let.((b.(gethash.file.file-t
1d720 6f 2d 62 75 66 20 27 75 6e 6b 6e 6f 77 6e 29 29 29 0a 20 20 20 20 28 69 66 20 28 6e 6f 74 20 28 o-buf.'unknown))).....(if.(not.(
1d740 65 71 20 27 75 6e 6b 6e 6f 77 6e 20 62 29 29 0a 20 20 20 20 20 20 20 20 62 0a 20 20 20 20 20 20 eq.'unknown.b)).........b.......
1d760 28 6c 65 74 2a 20 28 28 74 6d 70 20 28 6f 72 20 28 67 65 74 2d 66 69 6c 65 2d 62 75 66 66 65 72 (let*.((tmp.(or.(get-file-buffer
1d780 20 66 69 6c 65 29 20 28 66 69 6e 64 2d 62 75 66 66 65 72 2d 76 69 73 69 74 69 6e 67 20 66 69 6c .file).(find-buffer-visiting.fil
1d7a0 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 62 75 66 20 28 77 68 65 6e 20 74 6d 70 e)))..............(buf.(when.tmp
1d7c0 20 28 69 66 2d 6c 65 74 20 28 28 62 61 73 65 20 28 62 75 66 66 65 72 2d 62 61 73 65 2d 62 75 66 .(if-let.((base.(buffer-base-buf
1d7e0 66 65 72 20 74 6d 70 29 29 29 20 62 61 73 65 20 74 6d 70 29 29 29 29 0a 20 20 20 20 20 20 20 20 fer.tmp))).base.tmp)))).........
1d800 28 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 66 69 6c 65 73 2d 62 75 66 66 65 72 2d 68 6f (org-generic-id--files-buffer-ho
1d820 6f 6b 2d 69 6d 70 6c 0a 20 20 20 20 20 20 20 20 20 66 69 6c 65 2d 74 6f 2d 62 75 66 20 66 69 6c ok-impl..........file-to-buf.fil
1d840 65 20 62 75 66 29 0a 20 20 20 20 20 20 20 20 62 75 66 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f e.buf).........buf))))..(defun.o
1d860 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 6c 61 73 74 2d 75 70 64 61 74 65 2d 69 64 2d 74 69 rg-generic-id--last-update-id-ti
1d880 6d 65 2d 67 65 74 20 28 69 64 2d 70 72 6f 70 29 0a 20 20 22 47 65 74 20 6c 61 73 74 20 75 70 64 me-get.(id-prop)..."Get.last.upd
1d8a0 61 74 65 20 49 44 20 74 69 6d 65 20 66 6f 72 20 49 44 2d 50 52 4f 50 2e 0a 49 44 2d 50 52 4f 50 ate.ID.time.for.ID-PROP..ID-PROP
1d8c0 20 69 73 20 61 20 73 74 72 69 6e 67 2e 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 63 6f 6e .is.a.string...This.function.con
1d8e0 76 65 72 74 73 20 49 44 2d 50 52 4f 50 20 74 6f 20 61 20 73 79 6d 62 6f 6c 20 69 6e 20 6f 72 64 verts.ID-PROP.to.a.symbol.in.ord
1d900 65 72 20 74 6f 0a 71 75 65 72 79 20 e2 80 98 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 6c er.to.query....org-generic-id--l
1d920 61 73 74 2d 75 70 64 61 74 65 2d 69 64 2d 74 69 6d 65 27 20 75 73 69 6e 67 20 e2 80 98 70 6c 69 ast-update-id-time'.using....pli
1d940 73 74 2d 67 65 74 e2 80 99 2e 22 0a 20 20 28 70 6c 69 73 74 2d 67 65 74 20 6f 72 67 2d 67 65 6e st-get...."...(plist-get.org-gen
1d960 65 72 69 63 2d 69 64 2d 2d 6c 61 73 74 2d 75 70 64 61 74 65 2d 69 64 2d 74 69 6d 65 20 28 69 6e eric-id--last-update-id-time.(in
1d980 74 65 72 6e 20 69 64 2d 70 72 6f 70 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 65 6e 65 tern.id-prop)))..(defun.org-gene
1d9a0 72 69 63 2d 69 64 2d 2d 6c 61 73 74 2d 75 70 64 61 74 65 2d 69 64 2d 74 69 6d 65 2d 70 75 74 20 ric-id--last-update-id-time-put.
1d9c0 28 69 64 2d 70 72 6f 70 20 74 69 6d 65 29 0a 20 20 22 53 65 74 20 6c 61 73 74 20 75 70 64 61 74 (id-prop.time)..."Set.last.updat
1d9e0 65 20 49 44 20 74 69 6d 65 20 66 6f 72 20 49 44 2d 50 52 4f 50 20 74 6f 20 54 49 4d 45 2e 0a 49 e.ID.time.for.ID-PROP.to.TIME..I
1da00 44 2d 50 52 4f 50 20 69 73 20 61 20 73 74 72 69 6e 67 3b 20 54 49 4d 45 20 69 73 20 61 6e 20 45 D-PROP.is.a.string;.TIME.is.an.E
1da20 6d 61 63 73 20 74 69 6d 65 20 76 61 6c 75 65 20 61 73 20 72 65 74 75 72 6e 65 64 20 62 79 20 e2 macs.time.value.as.returned.by..
1da40 80 98 65 6e 63 6f 64 65 2d 74 69 6d 65 e2 80 99 2e 0a 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 ..encode-time.....This.function.
1da60 63 6f 6e 76 65 72 74 73 20 49 44 2d 50 52 4f 50 20 74 6f 20 61 20 73 79 6d 62 6f 6c 20 69 6e 20 converts.ID-PROP.to.a.symbol.in.
1da80 6f 72 64 65 72 20 74 6f 20 71 75 65 72 79 0a e2 80 98 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 order.to.query....org-generic-id
1daa0 2d 2d 6c 61 73 74 2d 75 70 64 61 74 65 2d 69 64 2d 74 69 6d 65 27 20 75 73 69 6e 67 20 e2 80 98 --last-update-id-time'.using....
1dac0 70 6c 69 73 74 2d 70 75 74 e2 80 99 2e 22 0a 20 20 3b 3b 20 57 6f 72 6b 20 61 72 6f 75 6e 64 20 plist-put...."...;;.Work.around.
1dae0 74 68 65 20 66 61 63 74 20 74 68 61 74 20 e2 80 98 70 6c 69 73 74 2d 70 75 74 e2 80 99 20 64 6f the.fact.that....plist-put....do
1db00 65 73 20 6e 6f 74 68 69 6e 67 20 69 66 20 74 68 65 20 70 6c 69 73 74 20 69 73 20 6e 69 6c 2c 0a es.nothing.if.the.plist.is.nil,.
1db20 20 20 3b 3b 20 73 69 6e 63 65 20 61 20 6e 69 6c 20 6c 69 73 74 20 63 61 6e e2 80 99 74 20 62 65 ..;;.since.a.nil.list.can...t.be
1db40 20 6d 75 74 61 74 65 64 20 69 6e 20 70 6c 61 63 65 2e 0a 20 20 28 69 66 20 6f 72 67 2d 67 65 6e .mutated.in.place....(if.org-gen
1db60 65 72 69 63 2d 69 64 2d 2d 6c 61 73 74 2d 75 70 64 61 74 65 2d 69 64 2d 74 69 6d 65 0a 20 20 20 eric-id--last-update-id-time....
1db80 20 20 20 28 70 6c 69 73 74 2d 70 75 74 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 6c 61 ...(plist-put.org-generic-id--la
1dba0 73 74 2d 75 70 64 61 74 65 2d 69 64 2d 74 69 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 st-update-id-time...............
1dbc0 20 20 20 28 69 6e 74 65 72 6e 20 69 64 2d 70 72 6f 70 29 20 74 69 6d 65 29 0a 20 20 20 20 28 73 ...(intern.id-prop).time).....(s
1dbe0 65 74 71 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 6c 61 73 74 2d 75 70 64 61 74 65 2d etq.org-generic-id--last-update-
1dc00 69 64 2d 74 69 6d 65 0a 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 28 69 6e 74 65 72 6e 20 id-time...........(list.(intern.
1dc20 69 64 2d 70 72 6f 70 29 20 74 69 6d 65 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 65 id-prop).time))))..(defun.org-ge
1dc40 6e 65 72 69 63 2d 69 64 2d 2d 66 69 6c 65 73 2d 66 69 6e 64 2d 66 69 6c 65 2d 68 6f 6f 6b 20 28 neric-id--files-find-file-hook.(
1dc60 29 0a 20 20 22 55 70 64 61 74 65 20 e2 80 98 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 66 )..."Update....org-generic-id--f
1dc80 69 6c 65 73 e2 80 99 20 61 66 74 65 72 20 61 20 66 69 6c 65 20 69 73 20 6c 6f 61 64 65 64 2e 22 iles....after.a.file.is.loaded."
1dca0 0a 20 20 28 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 66 69 6c 65 73 2d 62 75 66 66 65 72 ...(org-generic-id--files-buffer
1dcc0 2d 68 6f 6f 6b 2d 69 6d 70 6c 0a 20 20 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 66 69 -hook-impl....org-generic-id--fi
1dce0 6c 65 73 20 28 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 29 20 28 63 75 72 72 65 6e 74 2d les.(buffer-file-name).(current-
1dd00 62 75 66 66 65 72 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 buffer)))..(defun.org-generic-id
1dd20 2d 2d 66 69 6c 65 73 2d 6b 69 6c 6c 2d 62 75 66 66 65 72 2d 68 6f 6f 6b 20 28 29 0a 20 20 22 55 --files-kill-buffer-hook.()..."U
1dd40 70 64 61 74 65 20 e2 80 98 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 66 69 6c 65 73 e2 80 pdate....org-generic-id--files..
1dd60 99 20 61 66 74 65 72 20 61 20 62 75 66 66 65 72 20 69 73 20 6b 69 6c 6c 65 64 2e 22 0a 20 20 28 ..after.a.buffer.is.killed."...(
1dd80 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 66 69 6c 65 73 2d 62 75 66 66 65 72 2d 68 6f 6f org-generic-id--files-buffer-hoo
1dda0 6b 2d 69 6d 70 6c 0a 20 20 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 66 69 6c 65 73 20 k-impl....org-generic-id--files.
1ddc0 28 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 29 20 6e 69 6c 29 29 0a 0a 28 64 65 66 75 6e (buffer-file-name).nil))..(defun
1dde0 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 2d 66 69 6c 65 73 2d 62 75 66 66 65 72 2d 68 6f .org-generic-id--files-buffer-ho
1de00 6f 6b 2d 69 6d 70 6c 20 28 66 69 6c 65 2d 74 6f 2d 62 75 66 20 66 6e 61 6d 65 20 62 75 66 29 0a ok-impl.(file-to-buf.fname.buf).
1de20 20 20 22 55 70 64 61 74 65 20 46 49 4c 45 2d 54 4f 2d 42 55 46 20 74 6f 20 61 73 73 6f 63 69 61 .."Update.FILE-TO-BUF.to.associa
1de40 74 65 20 46 4e 41 4d 45 20 77 69 74 68 20 42 55 46 2e 0a 46 49 4c 45 2d 54 4f 2d 42 55 46 20 68 te.FNAME.with.BUF..FILE-TO-BUF.h
1de60 61 73 20 61 20 66 6f 72 6d 61 74 20 6c 69 6b 65 20 e2 80 98 6f 72 67 2d 67 65 6e 65 72 69 63 2d as.a.format.like....org-generic-
1de80 69 64 2d 2d 66 69 6c 65 73 e2 80 99 2e 22 0a 20 20 28 77 68 65 6e 20 66 6e 61 6d 65 0a 20 20 20 id--files...."...(when.fname....
1dea0 20 28 6c 65 74 20 28 28 74 72 75 65 2d 66 6e 61 6d 65 20 28 61 62 62 72 65 76 69 61 74 65 2d 66 .(let.((true-fname.(abbreviate-f
1dec0 69 6c 65 2d 6e 61 6d 65 20 66 6e 61 6d 65 29 29 29 0a 20 20 20 20 20 20 28 70 75 74 68 61 73 68 ile-name.fname))).......(puthash
1dee0 20 66 6e 61 6d 65 20 62 75 66 20 66 69 6c 65 2d 74 6f 2d 62 75 66 29 0a 20 20 20 20 20 20 28 77 .fname.buf.file-to-buf).......(w
1df00 68 65 6e 20 28 6e 6f 74 20 28 65 71 75 61 6c 20 66 6e 61 6d 65 20 74 72 75 65 2d 66 6e 61 6d 65 hen.(not.(equal.fname.true-fname
1df20 29 29 0a 20 20 20 20 20 20 20 20 28 70 75 74 68 61 73 68 20 74 72 75 65 2d 66 6e 61 6d 65 20 62 )).........(puthash.true-fname.b
1df40 75 66 20 66 69 6c 65 2d 74 6f 2d 62 75 66 29 29 29 29 29 0a 0a 28 61 64 64 2d 68 6f 6f 6b 20 27 uf.file-to-buf)))))..(add-hook.'
1df60 66 69 6e 64 2d 66 69 6c 65 2d 68 6f 6f 6b 20 23 27 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d find-file-hook.#'org-generic-id-
1df80 2d 66 69 6c 65 73 2d 66 69 6e 64 2d 66 69 6c 65 2d 68 6f 6f 6b 29 0a 28 61 64 64 2d 68 6f 6f 6b -files-find-file-hook).(add-hook
1dfa0 20 27 6b 69 6c 6c 2d 62 75 66 66 65 72 2d 68 6f 6f 6b 20 23 27 6f 72 67 2d 67 65 6e 65 72 69 63 .'kill-buffer-hook.#'org-generic
1dfc0 2d 69 64 2d 2d 66 69 6c 65 73 2d 6b 69 6c 6c 2d 62 75 66 66 65 72 2d 68 6f 6f 6b 29 0a 0a 0a 28 -id--files-kill-buffer-hook)...(
1dfe0 75 6e 6c 65 73 73 20 28 66 65 61 74 75 72 65 70 20 27 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 unless.(featurep.'org-generic-id
1e000 29 0a 20 20 28 75 6e 6c 65 73 73 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 )...(unless.org-generic-id-locat
1e020 69 6f 6e 73 0a 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 4c 6f 61 64 69 6e 67 20 6f 72 67 2d 67 ions.....(message."Loading.org-g
1e040 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f 6e 73 20 6f 6e 20 66 69 72 73 74 20 6c 6f 61 eneric-id-locations.on.first.loa
1e060 64 2e 22 29 0a 20 20 20 20 28 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2d 6c 6f 63 61 74 69 6f d.").....(org-generic-id-locatio
1e080 6e 73 2d 6c 6f 61 64 29 29 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 6f 72 67 2d 67 65 6e 65 72 69 ns-load)))..(provide.'org-generi
1e0a0 63 2d 69 64 29 0a 0a 3b 3b 3b 20 6f 72 67 2d 67 65 6e 65 72 69 63 2d 69 64 2e 65 6c 20 65 6e 64 c-id)..;;;.org-generic-id.el.end
1e0c0 73 20 68 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 s.here..........................
1e0e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e2a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e2c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e2e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e3a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e3c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e3e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e4a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e4c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e4e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e5a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e5c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e5e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e6a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e6c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e8a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e8e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e9a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e9c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ea00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ea20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ea40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ea60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ea80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1eaa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1eac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1eae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1eb00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1eb20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1eb40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1eb60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1eb80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1eba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ebc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ebe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ec00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ec20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ec40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ec60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ec80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1eca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ecc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ece0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ed00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ed20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ed40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ed60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ed80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1eda0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1edc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ede0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ee00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ee20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ee40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ee60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ee80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1eea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1eec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1eee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ef00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ef20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ef40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ef60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ef80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1efa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1efc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1efe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f0a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f0c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f0e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f2a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f2c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f2e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f3a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f3c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f3e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f4a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f4c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f4e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f5a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f5c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f5e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f6a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f6c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f8a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f8e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f9a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f9c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fa00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fa20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fa40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fa60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fa80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1faa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fb00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fb20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fb40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fb60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fb80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fbc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fbe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fc00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fc20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fc40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fc60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fc80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fcc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fd00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fd20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fd40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fd60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fd80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fda0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fdc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fde0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fe00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fe20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fe40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fe60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fe80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ff00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ff20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ff40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ff60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ff80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ffa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ffc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ffe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
200a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
200c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
200e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
201a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
201c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
201e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
202a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
202c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
202e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
203a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
203c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
203e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
204a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
204c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
204e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
205a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
205c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
205e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
206a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
206c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
206e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
207a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
207c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
207e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................