ical2gcal 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
data/lib/ics.rb ADDED
@@ -0,0 +1,5 @@
1
+ # -*- mode: ruby; coding: utf-8 -*-
2
+
3
+ Dir.glob( File.dirname( __FILE__ ) + '/ics/*.rb' ).each { |f|
4
+ require f.sub( /\.rb\z/, '' )
5
+ }
data/lib/ics/events.rb ADDED
@@ -0,0 +1,39 @@
1
+ # -*- coding: utf-8 -*-
2
+
3
+ #
4
+ # iCal format may include more than one calendars, but this force flatten them
5
+ #
6
+
7
+ require 'ri_cal'
8
+
9
+ module Ical2gcal
10
+ module Ics
11
+ class Events
12
+ def initialize( uri )
13
+ @uri = uri
14
+ @calendars = nil
15
+ @events = []
16
+ end
17
+
18
+ def calendars
19
+ if ( @uri and !@calendars )
20
+ @calendars = RiCal.parse( open( @uri ) )
21
+ end
22
+
23
+ @calendars
24
+ end
25
+
26
+ def get
27
+ calendars.map { |c| c.events }.flatten
28
+ end
29
+
30
+ def each( &block )
31
+ calendars.each { |c|
32
+ c.events.each { |e|
33
+ block.call( e )
34
+ }
35
+ }
36
+ end
37
+ end
38
+ end
39
+ end
data/lib/ics/list.rb ADDED
@@ -0,0 +1,30 @@
1
+ # -*- coding: utf-8 -*-
2
+
3
+ require 'open-uri'
4
+
5
+ module Ical2gcal
6
+ module Ics
7
+ class List
8
+ def initialize( uri = nil )
9
+ @uri ||= uri
10
+ @icses = nil
11
+ end
12
+
13
+ def import( uri = nil )
14
+ @uri = uri if uri
15
+
16
+ if ( @uri )
17
+ @icses = open( @uri ).read.split( /[\r\n]+/ )
18
+ end
19
+ end
20
+
21
+ def list
22
+ @icses || []
23
+ end
24
+
25
+ def with_scheme?
26
+ ( %r!\A[a-z]+://! =~ @uri ) ? true : false
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,27 @@
1
+ require File.dirname( __FILE__ ) + '/../spec_helper'
2
+
3
+ HOLIDAYS = File.dirname( __FILE__ ) + '/../support/japanese_holidays.ics'
4
+
5
+ describe Ical2gcal::Ics::Events do
6
+ describe 'get' do
7
+ it {
8
+ events = Ical2gcal::Ics::Events.new( HOLIDAYS ).get
9
+ events.class.should be Array
10
+ events.size.should > 0
11
+ events.each { |e|
12
+ e.class.should be RiCal::Component::Event
13
+ }
14
+ }
15
+ end
16
+
17
+ describe 'each' do
18
+ it {
19
+ count = 0
20
+ Ical2gcal::Ics::Events.new( HOLIDAYS ).each { |e|
21
+ e.class.should be RiCal::Component::Event
22
+ count += 1
23
+ }
24
+ count.should > 0
25
+ }
26
+ end
27
+ end
@@ -0,0 +1,60 @@
1
+ require File.dirname( __FILE__ ) + '/../spec_helper'
2
+
3
+ ICS_FILE = File.dirname( __FILE__ ) + '/../support/ics_list.txt'
4
+ JAPANESE_HOLIDAYS = 'https://www.google.com/calendar/ical/japanese%40holiday.calendar.google.com/public/basic.ics'
5
+
6
+ describe Ical2gcal::Ics::List do
7
+ describe 'import' do
8
+ context 'localfile' do
9
+ it {
10
+ Ical2gcal::Ics::List.new( ICS_FILE ).import.class.should be Array
11
+ }
12
+ end
13
+ context 'uri' do
14
+ it {
15
+ Ical2gcal::Ics::List.new( JAPANESE_HOLIDAYS ).import.class.should be Array
16
+ }
17
+ end
18
+ context 'with uri' do
19
+ it {
20
+ Ical2gcal::Ics::List.new.import( ICS_FILE ).class.should be Array
21
+ }
22
+ end
23
+ context 'no data given' do
24
+ it {
25
+ Ical2gcal::Ics::List.new.import.should be_nil
26
+ }
27
+ end
28
+ end
29
+
30
+ describe 'list' do
31
+ context 'localfile' do
32
+ it {
33
+ ics = Ical2gcal::Ics::List.new( ICS_FILE )
34
+ ics.import
35
+ ics.list.class.should be Array
36
+ }
37
+ end
38
+ context 'no data given' do
39
+ it {
40
+ ics = Ical2gcal::Ics::List.new
41
+ ics.import
42
+ ics.list.class.should be Array
43
+ ics.list.size == 0
44
+ }
45
+ end
46
+ end
47
+
48
+ describe 'with_scheme?' do
49
+ context 'localfile' do
50
+ it {
51
+ Ical2gcal::Ics::List.new( ICS_FILE ).with_scheme?.should be_false
52
+ }
53
+ end
54
+ context 'uri' do
55
+ it {
56
+ Ical2gcal::Ics::List.new( JAPANESE_HOLIDAYS ).with_scheme?.should be_true
57
+ }
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,12 @@
1
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
2
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
3
+ require 'rspec'
4
+ require 'ical2gcal'
5
+
6
+ # Requires supporting files with custom matchers and macros, etc,
7
+ # in ./support/ and its subdirectories.
8
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
9
+
10
+ RSpec.configure do |config|
11
+
12
+ end
@@ -0,0 +1 @@
1
+ https://www.google.com/calendar/ical/japanese%40holiday.calendar.google.com/public/basic.ics
@@ -0,0 +1,728 @@
1
+ BEGIN:VCALENDAR
2
+ PRODID:-//Google Inc//Google Calendar 70.9054//EN
3
+ VERSION:2.0
4
+ CALSCALE:GREGORIAN
5
+ METHOD:PUBLISH
6
+ X-WR-TIMEZONE:UTC
7
+ X-WR-CALDESC:Japanese Holidays
8
+ BEGIN:VEVENT
9
+ DTSTART;VALUE=DATE:20120320
10
+ DTEND;VALUE=DATE:20120321
11
+ DTSTAMP:20110426T020728Z
12
+ UID:h@86bcce05aa2dce7b48d4968b62e9c222b63b7279@google.com
13
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
14
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
15
+ CLASS:PUBLIC
16
+ CREATED:20110425T220839Z
17
+ LAST-MODIFIED:20110425T220839Z
18
+ SEQUENCE:1
19
+ STATUS:CONFIRMED
20
+ SUMMARY:Vernal Equinox
21
+ TRANSP:OPAQUE
22
+ END:VEVENT
23
+ BEGIN:VEVENT
24
+ DTSTART;VALUE=DATE:20110321
25
+ DTEND;VALUE=DATE:20110322
26
+ DTSTAMP:20110426T020728Z
27
+ UID:h@6b8d1a217d41d3a7a0b76d54513f6796e0f6e750@google.com
28
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
29
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
30
+ CLASS:PUBLIC
31
+ CREATED:20110425T220839Z
32
+ LAST-MODIFIED:20110425T220839Z
33
+ SEQUENCE:1
34
+ STATUS:CONFIRMED
35
+ SUMMARY:Vernal Equinox
36
+ TRANSP:OPAQUE
37
+ END:VEVENT
38
+ BEGIN:VEVENT
39
+ DTSTART;VALUE=DATE:20100321
40
+ DTEND;VALUE=DATE:20100322
41
+ DTSTAMP:20110426T020728Z
42
+ UID:h@6941120cb12044a89a0345be572745b5bd9a2520@google.com
43
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
44
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
45
+ CLASS:PUBLIC
46
+ CREATED:20110425T220839Z
47
+ LAST-MODIFIED:20110425T220839Z
48
+ SEQUENCE:1
49
+ STATUS:CONFIRMED
50
+ SUMMARY:Vernal Equinox
51
+ TRANSP:OPAQUE
52
+ END:VEVENT
53
+ BEGIN:VEVENT
54
+ DTSTART;VALUE=DATE:20120321
55
+ DTEND;VALUE=DATE:20120322
56
+ DTSTAMP:20110426T020728Z
57
+ UID:h@266d772b1a371b2d2c3981e0eb64f3086d1c82b7@google.com
58
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
59
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
60
+ CLASS:PUBLIC
61
+ CREATED:20110425T220839Z
62
+ LAST-MODIFIED:20110425T220839Z
63
+ SEQUENCE:1
64
+ STATUS:CONFIRMED
65
+ SUMMARY:Vernal Equinox
66
+ TRANSP:OPAQUE
67
+ END:VEVENT
68
+ BEGIN:VEVENT
69
+ DTSTART;VALUE=DATE:20101223
70
+ DTEND;VALUE=DATE:20101224
71
+ DTSTAMP:20110426T020728Z
72
+ UID:h@fb1d5091a3fdd32fa2e2a244fb169b82332e350d@google.com
73
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
74
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
75
+ CLASS:PUBLIC
76
+ CREATED:20110425T220839Z
77
+ LAST-MODIFIED:20110425T220839Z
78
+ SEQUENCE:1
79
+ STATUS:CONFIRMED
80
+ SUMMARY:The Emperor's Birthday
81
+ TRANSP:OPAQUE
82
+ END:VEVENT
83
+ BEGIN:VEVENT
84
+ DTSTART;VALUE=DATE:20111223
85
+ DTEND;VALUE=DATE:20111224
86
+ DTSTAMP:20110426T020728Z
87
+ UID:h@bfc0dc57c926434f2a2997bcd8effee038a93f09@google.com
88
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
89
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
90
+ CLASS:PUBLIC
91
+ CREATED:20110425T220839Z
92
+ LAST-MODIFIED:20110425T220839Z
93
+ SEQUENCE:1
94
+ STATUS:CONFIRMED
95
+ SUMMARY:The Emperor's Birthday
96
+ TRANSP:OPAQUE
97
+ END:VEVENT
98
+ BEGIN:VEVENT
99
+ DTSTART;VALUE=DATE:20121223
100
+ DTEND;VALUE=DATE:20121224
101
+ DTSTAMP:20110426T020728Z
102
+ UID:h@763ab060687ba9eab100c880db9f20d6390deb2c@google.com
103
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
104
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
105
+ CLASS:PUBLIC
106
+ CREATED:20110425T220839Z
107
+ LAST-MODIFIED:20110425T220839Z
108
+ SEQUENCE:1
109
+ STATUS:CONFIRMED
110
+ SUMMARY:The Emperor's Birthday
111
+ TRANSP:OPAQUE
112
+ END:VEVENT
113
+ BEGIN:VEVENT
114
+ DTSTART;VALUE=DATE:20100429
115
+ DTEND;VALUE=DATE:20100430
116
+ DTSTAMP:20110426T020728Z
117
+ UID:h@f666f2ada2a6e3d8838714ad6fe5f2fd1c94e6c5@google.com
118
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
119
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
120
+ CLASS:PUBLIC
121
+ CREATED:20110425T220839Z
122
+ LAST-MODIFIED:20110425T220839Z
123
+ SEQUENCE:1
124
+ STATUS:CONFIRMED
125
+ SUMMARY:Showa Day
126
+ TRANSP:OPAQUE
127
+ END:VEVENT
128
+ BEGIN:VEVENT
129
+ DTSTART;VALUE=DATE:20120429
130
+ DTEND;VALUE=DATE:20120430
131
+ DTSTAMP:20110426T020728Z
132
+ UID:h@e67042a1b0ab2dc545207f1002beb9a2479b2338@google.com
133
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
134
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
135
+ CLASS:PUBLIC
136
+ CREATED:20110425T220839Z
137
+ LAST-MODIFIED:20110425T220839Z
138
+ SEQUENCE:1
139
+ STATUS:CONFIRMED
140
+ SUMMARY:Showa Day
141
+ TRANSP:OPAQUE
142
+ END:VEVENT
143
+ BEGIN:VEVENT
144
+ DTSTART;VALUE=DATE:20110429
145
+ DTEND;VALUE=DATE:20110430
146
+ DTSTAMP:20110426T020728Z
147
+ UID:h@2ca650e27e0b02b08d866dcb13d9c92523742136@google.com
148
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
149
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
150
+ CLASS:PUBLIC
151
+ CREATED:20110425T220839Z
152
+ LAST-MODIFIED:20110425T220839Z
153
+ SEQUENCE:1
154
+ STATUS:CONFIRMED
155
+ SUMMARY:Showa Day
156
+ TRANSP:OPAQUE
157
+ END:VEVENT
158
+ BEGIN:VEVENT
159
+ DTSTART;VALUE=DATE:20100920
160
+ DTEND;VALUE=DATE:20100921
161
+ DTSTAMP:20110426T020728Z
162
+ UID:h@fb608bf9c2c7e3f8cae54ae7c7c7edf8f819c6aa@google.com
163
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
164
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
165
+ CLASS:PUBLIC
166
+ CREATED:20110425T220839Z
167
+ LAST-MODIFIED:20110425T220839Z
168
+ SEQUENCE:1
169
+ STATUS:CONFIRMED
170
+ SUMMARY:Respect for the Aged Day
171
+ TRANSP:OPAQUE
172
+ END:VEVENT
173
+ BEGIN:VEVENT
174
+ DTSTART;VALUE=DATE:20120917
175
+ DTEND;VALUE=DATE:20120918
176
+ DTSTAMP:20110426T020728Z
177
+ UID:h@ea60ddf46332afea32f81cac2aac63d4b507a79b@google.com
178
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
179
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
180
+ CLASS:PUBLIC
181
+ CREATED:20110425T220839Z
182
+ LAST-MODIFIED:20110425T220839Z
183
+ SEQUENCE:1
184
+ STATUS:CONFIRMED
185
+ SUMMARY:Respect for the Aged Day
186
+ TRANSP:OPAQUE
187
+ END:VEVENT
188
+ BEGIN:VEVENT
189
+ DTSTART;VALUE=DATE:20110919
190
+ DTEND;VALUE=DATE:20110920
191
+ DTSTAMP:20110426T020728Z
192
+ UID:h@86a2c4e3cc9e95c96b0ea21d4b9e414f98fdcae6@google.com
193
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
194
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
195
+ CLASS:PUBLIC
196
+ CREATED:20110425T220839Z
197
+ LAST-MODIFIED:20110425T220839Z
198
+ SEQUENCE:1
199
+ STATUS:CONFIRMED
200
+ SUMMARY:Respect for the Aged Day
201
+ TRANSP:OPAQUE
202
+ END:VEVENT
203
+ BEGIN:VEVENT
204
+ DTSTART;VALUE=DATE:20121224
205
+ DTEND;VALUE=DATE:20121225
206
+ DTSTAMP:20110426T020728Z
207
+ UID:h@7a03cf8230d3d952e9b1c10298d7a3f2d360b0d4@google.com
208
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
209
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
210
+ CLASS:PUBLIC
211
+ CREATED:20110425T220839Z
212
+ LAST-MODIFIED:20110425T220839Z
213
+ SEQUENCE:1
214
+ STATUS:CONFIRMED
215
+ SUMMARY:Public Holiday
216
+ TRANSP:OPAQUE
217
+ END:VEVENT
218
+ BEGIN:VEVENT
219
+ DTSTART;VALUE=DATE:20120102
220
+ DTEND;VALUE=DATE:20120103
221
+ DTSTAMP:20110426T020728Z
222
+ UID:h@6b33dad1ccc43c0dbe93487c58e5ba717e8958b5@google.com
223
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
224
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
225
+ CLASS:PUBLIC
226
+ CREATED:20110425T220839Z
227
+ LAST-MODIFIED:20110425T220839Z
228
+ SEQUENCE:1
229
+ STATUS:CONFIRMED
230
+ SUMMARY:Public Holiday
231
+ TRANSP:OPAQUE
232
+ END:VEVENT
233
+ BEGIN:VEVENT
234
+ DTSTART;VALUE=DATE:20120101
235
+ DTEND;VALUE=DATE:20120102
236
+ DTSTAMP:20110426T020728Z
237
+ UID:h@a17502b62a11b4c0314d5ea87f7a483297285f34@google.com
238
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
239
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
240
+ CLASS:PUBLIC
241
+ CREATED:20110425T220839Z
242
+ LAST-MODIFIED:20110425T220839Z
243
+ SEQUENCE:1
244
+ STATUS:CONFIRMED
245
+ SUMMARY:New Year's Day
246
+ TRANSP:OPAQUE
247
+ END:VEVENT
248
+ BEGIN:VEVENT
249
+ DTSTART;VALUE=DATE:20110101
250
+ DTEND;VALUE=DATE:20110102
251
+ DTSTAMP:20110426T020728Z
252
+ UID:h@4ec61d11353c71dfb78349215c145d3c31378e11@google.com
253
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
254
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
255
+ CLASS:PUBLIC
256
+ CREATED:20110425T220839Z
257
+ LAST-MODIFIED:20110425T220839Z
258
+ SEQUENCE:1
259
+ STATUS:CONFIRMED
260
+ SUMMARY:New Year's Day
261
+ TRANSP:OPAQUE
262
+ END:VEVENT
263
+ BEGIN:VEVENT
264
+ DTSTART;VALUE=DATE:20100101
265
+ DTEND;VALUE=DATE:20100102
266
+ DTSTAMP:20110426T020728Z
267
+ UID:h@2523d75c8e090a12c44c258238a2cf23f4e798a7@google.com
268
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
269
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
270
+ CLASS:PUBLIC
271
+ CREATED:20110425T220839Z
272
+ LAST-MODIFIED:20110425T220839Z
273
+ SEQUENCE:1
274
+ STATUS:CONFIRMED
275
+ SUMMARY:New Year's Day
276
+ TRANSP:OPAQUE
277
+ END:VEVENT
278
+ BEGIN:VEVENT
279
+ DTSTART;VALUE=DATE:20110211
280
+ DTEND;VALUE=DATE:20110212
281
+ DTSTAMP:20110426T020728Z
282
+ UID:h@ae86cbdbf3302a26858b9a555c86ada77292ca75@google.com
283
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
284
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
285
+ CLASS:PUBLIC
286
+ CREATED:20110425T220839Z
287
+ LAST-MODIFIED:20110425T220839Z
288
+ SEQUENCE:1
289
+ STATUS:CONFIRMED
290
+ SUMMARY:National Foundation Day
291
+ TRANSP:OPAQUE
292
+ END:VEVENT
293
+ BEGIN:VEVENT
294
+ DTSTART;VALUE=DATE:20100211
295
+ DTEND;VALUE=DATE:20100212
296
+ DTSTAMP:20110426T020728Z
297
+ UID:h@a1c53b2041dbf3e60364e678c62979bcfe4b0235@google.com
298
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
299
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
300
+ CLASS:PUBLIC
301
+ CREATED:20110425T220839Z
302
+ LAST-MODIFIED:20110425T220839Z
303
+ SEQUENCE:1
304
+ STATUS:CONFIRMED
305
+ SUMMARY:National Foundation Day
306
+ TRANSP:OPAQUE
307
+ END:VEVENT
308
+ BEGIN:VEVENT
309
+ DTSTART;VALUE=DATE:20120211
310
+ DTEND;VALUE=DATE:20120212
311
+ DTSTAMP:20110426T020728Z
312
+ UID:h@7499854c5c5719748cb17fb4eb5d064160c6f270@google.com
313
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
314
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
315
+ CLASS:PUBLIC
316
+ CREATED:20110425T220839Z
317
+ LAST-MODIFIED:20110425T220839Z
318
+ SEQUENCE:1
319
+ STATUS:CONFIRMED
320
+ SUMMARY:National Foundation Day
321
+ TRANSP:OPAQUE
322
+ END:VEVENT
323
+ BEGIN:VEVENT
324
+ DTSTART;VALUE=DATE:20110718
325
+ DTEND;VALUE=DATE:20110719
326
+ DTSTAMP:20110426T020728Z
327
+ UID:h@efc070e4a2f1a67f9fca076d50fed6047bfd2f69@google.com
328
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
329
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
330
+ CLASS:PUBLIC
331
+ CREATED:20110425T220839Z
332
+ LAST-MODIFIED:20110425T220839Z
333
+ SEQUENCE:1
334
+ STATUS:CONFIRMED
335
+ SUMMARY:Marine Day
336
+ TRANSP:OPAQUE
337
+ END:VEVENT
338
+ BEGIN:VEVENT
339
+ DTSTART;VALUE=DATE:20120716
340
+ DTEND;VALUE=DATE:20120717
341
+ DTSTAMP:20110426T020728Z
342
+ UID:h@cd35b67dbb3b8608a8602309fabac04c7a90cc2d@google.com
343
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
344
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
345
+ CLASS:PUBLIC
346
+ CREATED:20110425T220839Z
347
+ LAST-MODIFIED:20110425T220839Z
348
+ SEQUENCE:1
349
+ STATUS:CONFIRMED
350
+ SUMMARY:Marine Day
351
+ TRANSP:OPAQUE
352
+ END:VEVENT
353
+ BEGIN:VEVENT
354
+ DTSTART;VALUE=DATE:20100719
355
+ DTEND;VALUE=DATE:20100720
356
+ DTSTAMP:20110426T020728Z
357
+ UID:h@1fbd99cf0849652aebca1a1f26c8418a13d8d106@google.com
358
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
359
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
360
+ CLASS:PUBLIC
361
+ CREATED:20110425T220839Z
362
+ LAST-MODIFIED:20110425T220839Z
363
+ SEQUENCE:1
364
+ STATUS:CONFIRMED
365
+ SUMMARY:Marine Day
366
+ TRANSP:OPAQUE
367
+ END:VEVENT
368
+ BEGIN:VEVENT
369
+ DTSTART;VALUE=DATE:20111123
370
+ DTEND;VALUE=DATE:20111124
371
+ DTSTAMP:20110426T020728Z
372
+ UID:h@ca81f7029a1b00b8aa87f068f4f0fc89cddd3bb1@google.com
373
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
374
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
375
+ CLASS:PUBLIC
376
+ CREATED:20110425T220839Z
377
+ LAST-MODIFIED:20110425T220839Z
378
+ SEQUENCE:1
379
+ STATUS:CONFIRMED
380
+ SUMMARY:Labour Thanksgiving Day
381
+ TRANSP:OPAQUE
382
+ END:VEVENT
383
+ BEGIN:VEVENT
384
+ DTSTART;VALUE=DATE:20101123
385
+ DTEND;VALUE=DATE:20101124
386
+ DTSTAMP:20110426T020728Z
387
+ UID:h@b533636dc4d1e0d1496ac6d52170287285245742@google.com
388
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
389
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
390
+ CLASS:PUBLIC
391
+ CREATED:20110425T220839Z
392
+ LAST-MODIFIED:20110425T220839Z
393
+ SEQUENCE:1
394
+ STATUS:CONFIRMED
395
+ SUMMARY:Labour Thanksgiving Day
396
+ TRANSP:OPAQUE
397
+ END:VEVENT
398
+ BEGIN:VEVENT
399
+ DTSTART;VALUE=DATE:20121123
400
+ DTEND;VALUE=DATE:20121124
401
+ DTSTAMP:20110426T020728Z
402
+ UID:h@30f4210c80e65b6becc5d5f418525fe3463e3f8c@google.com
403
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
404
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
405
+ CLASS:PUBLIC
406
+ CREATED:20110425T220839Z
407
+ LAST-MODIFIED:20110425T220839Z
408
+ SEQUENCE:1
409
+ STATUS:CONFIRMED
410
+ SUMMARY:Labour Thanksgiving Day
411
+ TRANSP:OPAQUE
412
+ END:VEVENT
413
+ BEGIN:VEVENT
414
+ DTSTART;VALUE=DATE:20111010
415
+ DTEND;VALUE=DATE:20111011
416
+ DTSTAMP:20110426T020728Z
417
+ UID:h@bb97a95498ecbf43a344b9adbc9cd2b0b9ce6b9c@google.com
418
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
419
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
420
+ CLASS:PUBLIC
421
+ CREATED:20110425T220839Z
422
+ LAST-MODIFIED:20110425T220839Z
423
+ SEQUENCE:1
424
+ STATUS:CONFIRMED
425
+ SUMMARY:Health and Sports Day
426
+ TRANSP:OPAQUE
427
+ END:VEVENT
428
+ BEGIN:VEVENT
429
+ DTSTART;VALUE=DATE:20121008
430
+ DTEND;VALUE=DATE:20121009
431
+ DTSTAMP:20110426T020728Z
432
+ UID:h@7d84543b4c4696687922d3e1a9c0aff7541cbb8d@google.com
433
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
434
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
435
+ CLASS:PUBLIC
436
+ CREATED:20110425T220839Z
437
+ LAST-MODIFIED:20110425T220839Z
438
+ SEQUENCE:1
439
+ STATUS:CONFIRMED
440
+ SUMMARY:Health and Sports Day
441
+ TRANSP:OPAQUE
442
+ END:VEVENT
443
+ BEGIN:VEVENT
444
+ DTSTART;VALUE=DATE:20101011
445
+ DTEND;VALUE=DATE:20101012
446
+ DTSTAMP:20110426T020728Z
447
+ UID:h@455d097a1deb92fbe73d45169d9cc4182ce4a6b9@google.com
448
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
449
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
450
+ CLASS:PUBLIC
451
+ CREATED:20110425T220839Z
452
+ LAST-MODIFIED:20110425T220839Z
453
+ SEQUENCE:1
454
+ STATUS:CONFIRMED
455
+ SUMMARY:Health and Sports Day
456
+ TRANSP:OPAQUE
457
+ END:VEVENT
458
+ BEGIN:VEVENT
459
+ DTSTART;VALUE=DATE:20110504
460
+ DTEND;VALUE=DATE:20110505
461
+ DTSTAMP:20110426T020728Z
462
+ UID:h@876cf4283799eca52d548ab2e2a73ef6a77c1871@google.com
463
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
464
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
465
+ CLASS:PUBLIC
466
+ CREATED:20110425T220839Z
467
+ LAST-MODIFIED:20110425T220839Z
468
+ SEQUENCE:1
469
+ STATUS:CONFIRMED
470
+ SUMMARY:Greenery Day
471
+ TRANSP:OPAQUE
472
+ END:VEVENT
473
+ BEGIN:VEVENT
474
+ DTSTART;VALUE=DATE:20120504
475
+ DTEND;VALUE=DATE:20120505
476
+ DTSTAMP:20110426T020728Z
477
+ UID:h@6c8fedf6c64a76faaaee644cc777196c63c99f2a@google.com
478
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
479
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
480
+ CLASS:PUBLIC
481
+ CREATED:20110425T220839Z
482
+ LAST-MODIFIED:20110425T220839Z
483
+ SEQUENCE:1
484
+ STATUS:CONFIRMED
485
+ SUMMARY:Greenery Day
486
+ TRANSP:OPAQUE
487
+ END:VEVENT
488
+ BEGIN:VEVENT
489
+ DTSTART;VALUE=DATE:20100504
490
+ DTEND;VALUE=DATE:20100505
491
+ DTSTAMP:20110426T020728Z
492
+ UID:h@6997e2707f792f773ae0c7b77da800be14b81c17@google.com
493
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
494
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
495
+ CLASS:PUBLIC
496
+ CREATED:20110425T220839Z
497
+ LAST-MODIFIED:20110425T220839Z
498
+ SEQUENCE:1
499
+ STATUS:CONFIRMED
500
+ SUMMARY:Greenery Day
501
+ TRANSP:OPAQUE
502
+ END:VEVENT
503
+ BEGIN:VEVENT
504
+ DTSTART;VALUE=DATE:20101103
505
+ DTEND;VALUE=DATE:20101104
506
+ DTSTAMP:20110426T020728Z
507
+ UID:h@ee78f59ba9bc5037b2b72bac64a389ac53f8d15a@google.com
508
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
509
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
510
+ CLASS:PUBLIC
511
+ CREATED:20110425T220839Z
512
+ LAST-MODIFIED:20110425T220839Z
513
+ SEQUENCE:1
514
+ STATUS:CONFIRMED
515
+ SUMMARY:Culture Day
516
+ TRANSP:OPAQUE
517
+ END:VEVENT
518
+ BEGIN:VEVENT
519
+ DTSTART;VALUE=DATE:20111103
520
+ DTEND;VALUE=DATE:20111104
521
+ DTSTAMP:20110426T020728Z
522
+ UID:h@e26e32a9027f3e1ecb374b30241a555bdaa06f8a@google.com
523
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
524
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
525
+ CLASS:PUBLIC
526
+ CREATED:20110425T220839Z
527
+ LAST-MODIFIED:20110425T220839Z
528
+ SEQUENCE:1
529
+ STATUS:CONFIRMED
530
+ SUMMARY:Culture Day
531
+ TRANSP:OPAQUE
532
+ END:VEVENT
533
+ BEGIN:VEVENT
534
+ DTSTART;VALUE=DATE:20121103
535
+ DTEND;VALUE=DATE:20121104
536
+ DTSTAMP:20110426T020728Z
537
+ UID:h@4796e1e4bb4f01c9c5da94000d60189a3808fc4e@google.com
538
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
539
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
540
+ CLASS:PUBLIC
541
+ CREATED:20110425T220839Z
542
+ LAST-MODIFIED:20110425T220839Z
543
+ SEQUENCE:1
544
+ STATUS:CONFIRMED
545
+ SUMMARY:Culture Day
546
+ TRANSP:OPAQUE
547
+ END:VEVENT
548
+ BEGIN:VEVENT
549
+ DTSTART;VALUE=DATE:20110503
550
+ DTEND;VALUE=DATE:20110504
551
+ DTSTAMP:20110426T020728Z
552
+ UID:h@b8862619b4489c128d4e861bd4d936f00c577def@google.com
553
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
554
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
555
+ CLASS:PUBLIC
556
+ CREATED:20110425T220839Z
557
+ LAST-MODIFIED:20110425T220839Z
558
+ SEQUENCE:1
559
+ STATUS:CONFIRMED
560
+ SUMMARY:Constitution Memorial Day
561
+ TRANSP:OPAQUE
562
+ END:VEVENT
563
+ BEGIN:VEVENT
564
+ DTSTART;VALUE=DATE:20100503
565
+ DTEND;VALUE=DATE:20100504
566
+ DTSTAMP:20110426T020728Z
567
+ UID:h@4d2b8251279fcd97da24b7ed19a188f8d32bfbd0@google.com
568
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
569
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
570
+ CLASS:PUBLIC
571
+ CREATED:20110425T220839Z
572
+ LAST-MODIFIED:20110425T220839Z
573
+ SEQUENCE:1
574
+ STATUS:CONFIRMED
575
+ SUMMARY:Constitution Memorial Day
576
+ TRANSP:OPAQUE
577
+ END:VEVENT
578
+ BEGIN:VEVENT
579
+ DTSTART;VALUE=DATE:20120503
580
+ DTEND;VALUE=DATE:20120504
581
+ DTSTAMP:20110426T020728Z
582
+ UID:h@098941a9b4a95b8bb0bbd36e6be6e87a9f15d432@google.com
583
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
584
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
585
+ CLASS:PUBLIC
586
+ CREATED:20110425T220839Z
587
+ LAST-MODIFIED:20110425T220839Z
588
+ SEQUENCE:1
589
+ STATUS:CONFIRMED
590
+ SUMMARY:Constitution Memorial Day
591
+ TRANSP:OPAQUE
592
+ END:VEVENT
593
+ BEGIN:VEVENT
594
+ DTSTART;VALUE=DATE:20100111
595
+ DTEND;VALUE=DATE:20100112
596
+ DTSTAMP:20110426T020728Z
597
+ UID:h@e3a0cbb729800fa4f5a270703bbb65661fe7a688@google.com
598
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
599
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
600
+ CLASS:PUBLIC
601
+ CREATED:20110425T220839Z
602
+ LAST-MODIFIED:20110425T220839Z
603
+ SEQUENCE:1
604
+ STATUS:CONFIRMED
605
+ SUMMARY:Coming-of-Age Day
606
+ TRANSP:OPAQUE
607
+ END:VEVENT
608
+ BEGIN:VEVENT
609
+ DTSTART;VALUE=DATE:20110110
610
+ DTEND;VALUE=DATE:20110111
611
+ DTSTAMP:20110426T020728Z
612
+ UID:h@bd95d9f2d5a1ce0d8939d9101f30f5891495ceca@google.com
613
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
614
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
615
+ CLASS:PUBLIC
616
+ CREATED:20110425T220839Z
617
+ LAST-MODIFIED:20110425T220839Z
618
+ SEQUENCE:1
619
+ STATUS:CONFIRMED
620
+ SUMMARY:Coming-of-Age Day
621
+ TRANSP:OPAQUE
622
+ END:VEVENT
623
+ BEGIN:VEVENT
624
+ DTSTART;VALUE=DATE:20120109
625
+ DTEND;VALUE=DATE:20120110
626
+ DTSTAMP:20110426T020728Z
627
+ UID:h@170a8b7857dcc46013e1b312ee1305f7fa29a38e@google.com
628
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
629
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
630
+ CLASS:PUBLIC
631
+ CREATED:20110425T220839Z
632
+ LAST-MODIFIED:20110425T220839Z
633
+ SEQUENCE:1
634
+ STATUS:CONFIRMED
635
+ SUMMARY:Coming-of-Age Day
636
+ TRANSP:OPAQUE
637
+ END:VEVENT
638
+ BEGIN:VEVENT
639
+ DTSTART;VALUE=DATE:20100505
640
+ DTEND;VALUE=DATE:20100506
641
+ DTSTAMP:20110426T020728Z
642
+ UID:h@ffd6f876d10c6af6f8576228357ba75670ffa147@google.com
643
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
644
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
645
+ CLASS:PUBLIC
646
+ CREATED:20110425T220839Z
647
+ LAST-MODIFIED:20110425T220839Z
648
+ SEQUENCE:1
649
+ STATUS:CONFIRMED
650
+ SUMMARY:Children's Day
651
+ TRANSP:OPAQUE
652
+ END:VEVENT
653
+ BEGIN:VEVENT
654
+ DTSTART;VALUE=DATE:20120505
655
+ DTEND;VALUE=DATE:20120506
656
+ DTSTAMP:20110426T020728Z
657
+ UID:h@ac21a358ccd5e063788da22de7e6c8eb88231f32@google.com
658
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
659
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
660
+ CLASS:PUBLIC
661
+ CREATED:20110425T220839Z
662
+ LAST-MODIFIED:20110425T220839Z
663
+ SEQUENCE:1
664
+ STATUS:CONFIRMED
665
+ SUMMARY:Children's Day
666
+ TRANSP:OPAQUE
667
+ END:VEVENT
668
+ BEGIN:VEVENT
669
+ DTSTART;VALUE=DATE:20110505
670
+ DTEND;VALUE=DATE:20110506
671
+ DTSTAMP:20110426T020728Z
672
+ UID:h@00d8590b768fd9797c5c4f31d6596efba9d4a251@google.com
673
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
674
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
675
+ CLASS:PUBLIC
676
+ CREATED:20110425T220839Z
677
+ LAST-MODIFIED:20110425T220839Z
678
+ SEQUENCE:1
679
+ STATUS:CONFIRMED
680
+ SUMMARY:Children's Day
681
+ TRANSP:OPAQUE
682
+ END:VEVENT
683
+ BEGIN:VEVENT
684
+ DTSTART;VALUE=DATE:20120922
685
+ DTEND;VALUE=DATE:20120923
686
+ DTSTAMP:20110426T020728Z
687
+ UID:h@f11719d401fc917ddbb82289126610f8a9c7b129@google.com
688
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
689
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
690
+ CLASS:PUBLIC
691
+ CREATED:20110425T220839Z
692
+ LAST-MODIFIED:20110425T220839Z
693
+ SEQUENCE:1
694
+ STATUS:CONFIRMED
695
+ SUMMARY:Autumnal equinox
696
+ TRANSP:OPAQUE
697
+ END:VEVENT
698
+ BEGIN:VEVENT
699
+ DTSTART;VALUE=DATE:20100923
700
+ DTEND;VALUE=DATE:20100924
701
+ DTSTAMP:20110426T020728Z
702
+ UID:h@d35767f027796cd599918c11c63b5d45cba8f74f@google.com
703
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
704
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
705
+ CLASS:PUBLIC
706
+ CREATED:20110425T220839Z
707
+ LAST-MODIFIED:20110425T220839Z
708
+ SEQUENCE:1
709
+ STATUS:CONFIRMED
710
+ SUMMARY:Autumnal equinox
711
+ TRANSP:OPAQUE
712
+ END:VEVENT
713
+ BEGIN:VEVENT
714
+ DTSTART;VALUE=DATE:20110923
715
+ DTEND;VALUE=DATE:20110924
716
+ DTSTAMP:20110426T020728Z
717
+ UID:h@9320be5fdc19f066473114bfc2677c601d07acc4@google.com
718
+ ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;CN=Japane
719
+ se Holidays;X-NUM-GUESTS=0:mailto:japanese@holiday.calendar.google.com
720
+ CLASS:PUBLIC
721
+ CREATED:20110425T220839Z
722
+ LAST-MODIFIED:20110425T220839Z
723
+ SEQUENCE:1
724
+ STATUS:CONFIRMED
725
+ SUMMARY:Autumnal equinox
726
+ TRANSP:OPAQUE
727
+ END:VEVENT
728
+ END:VCALENDAR