-
Notifications
You must be signed in to change notification settings - Fork 38
/
Copy pathD3Chart.js
1392 lines (1368 loc) · 61.1 KB
/
D3Chart.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
var d3 = require('d3');
var jsdom = require('jsdom-jscore');
var React = require('react-native');
var { View, Text } = React;
var Svg = require('./Svg');
var TimerMixin = require('react-timer-mixin');
var parseDate = d3.time.format("%d-%b-%y").parse;
var D3Chart = React.createClass({
mixins: [TimerMixin],
componentDidMount() {
this.loadDOM();
},
renderChart(window, el) {
var self = this;
var margin = {top: 20, right: 20, bottom: 100, left: 100},
width = 960 - margin.left - margin.right,
height = 1600 - margin.top - margin.bottom;
var x = d3.time.scale()
.range([0, width]);
var y = d3.scale.linear()
.range([height, 0]);
var xAxis = d3.svg.axis()
.scale(x)
.orient("bottom");
var yAxis = d3.svg.axis()
.scale(y)
.orient("left");
var svg = d3.select(el).append("svg")
.attr('xmlns', 'http://www.w3.org/2000/svg')
.attr("width", width + margin.left + margin.right)
.attr("height", height + margin.top + margin.bottom)
.append("g")
.attr("transform", "translate(" + margin.left + "," + margin.top + ")");
x.domain(d3.extent(DATA, function(d) { return d.date; }));
y.domain(d3.extent(DATA, function(d) { return d.close; }));
svg.append("g")
.attr("class", "x axis")
.attr("transform", "translate(0," + height + ")")
.call(xAxis)
svg.selectAll('text')
.attr('transform', "translate(0, 30)")
svg.append("g")
.attr("class", "y axis")
.call(yAxis)
.append("text")
.attr("transform", "rotate(-90)")
.attr("y", 6)
.attr("dy", ".71em")
.style("text-anchor", "end")
.style('font-size', '32px')
.text("Price ($)");
svg.selectAll('.axis path')
.style({'stroke': 'black', 'fill': 'none', 'stroke-width': '1px'});
svg.selectAll('text')
.style('font-size', '32px')
var line = d3.svg.line()
.x(function(d) { return x(d.date); })
.y(function(d) { return y(d.close); });
svg.append("path")
.datum(DATA)
.attr("fill", "none")
.attr("stroke", "steelblue")
.attr('stroke-width', '3px')
.attr("d", line);
self.setState({data: el.innerHTML});
},
loadDOM(n) {
var self = this;
jsdom.env('<body></body>', function(errors, window) {
var el = window.document.querySelector('body');
self.renderChart(window, el);
})
},
render() {
if (this.state && this.state.data) {
return (
<View style={{paddingTop: 40}}>
<Svg width={960} height={1600} style={{width: 390, height: 630}} data={this.state.data} forceUpdate={(new Date()).toString()} />
</View>
)
} else {
return <View />
}
},
});
module.exports = D3Chart;
var DATA = [
{date: parseDate('1-May-12'), close: 582.13},
{date: parseDate('30-Apr-12'), close: 583.98},
{date: parseDate('27-Apr-12'), close: 603.00},
{date: parseDate('26-Apr-12'), close: 607.70},
{date: parseDate('25-Apr-12'), close: 610.00},
{date: parseDate('24-Apr-12'), close: 560.28},
{date: parseDate('23-Apr-12'), close: 571.70},
{date: parseDate('20-Apr-12'), close: 572.98},
{date: parseDate('19-Apr-12'), close: 587.44},
{date: parseDate('18-Apr-12'), close: 608.34},
{date: parseDate('17-Apr-12'), close: 609.70},
{date: parseDate('16-Apr-12'), close: 580.13},
{date: parseDate('13-Apr-12'), close: 605.23},
{date: parseDate('12-Apr-12'), close: 622.77},
{date: parseDate('11-Apr-12'), close: 626.20},
{date: parseDate('10-Apr-12'), close: 628.44},
{date: parseDate('9-Apr-12'), close: 636.23},
{date: parseDate('5-Apr-12'), close: 633.68},
{date: parseDate('4-Apr-12'), close: 624.31},
{date: parseDate('3-Apr-12'), close: 629.32},
{date: parseDate('2-Apr-12'), close: 618.63},
{date: parseDate('30-Mar-12'), close: 599.55},
{date: parseDate('29-Mar-12'), close: 609.86},
{date: parseDate('28-Mar-12'), close: 617.62},
{date: parseDate('27-Mar-12'), close: 614.48},
{date: parseDate('26-Mar-12'), close: 606.98},
{date: parseDate('23-Mar-12'), close: 596.05},
{date: parseDate('22-Mar-12'), close: 599.34},
{date: parseDate('21-Mar-12'), close: 602.50},
{date: parseDate('20-Mar-12'), close: 605.96},
{date: parseDate('19-Mar-12'), close: 601.10},
{date: parseDate('16-Mar-12'), close: 585.57},
{date: parseDate('15-Mar-12'), close: 585.56},
{date: parseDate('14-Mar-12'), close: 589.58},
{date: parseDate('13-Mar-12'), close: 568.10},
{date: parseDate('12-Mar-12'), close: 552.00},
{date: parseDate('9-Mar-12'), close: 545.17},
{date: parseDate('8-Mar-12'), close: 541.99},
{date: parseDate('7-Mar-12'), close: 530.69},
{date: parseDate('6-Mar-12'), close: 530.26},
{date: parseDate('5-Mar-12'), close: 533.16},
{date: parseDate('2-Mar-12'), close: 545.18},
{date: parseDate('1-Mar-12'), close: 544.47},
{date: parseDate('29-Feb-12'), close: 542.44},
{date: parseDate('28-Feb-12'), close: 535.41},
{date: parseDate('27-Feb-12'), close: 525.76},
{date: parseDate('24-Feb-12'), close: 522.41},
{date: parseDate('23-Feb-12'), close: 516.39},
{date: parseDate('22-Feb-12'), close: 513.04},
{date: parseDate('21-Feb-12'), close: 514.85},
{date: parseDate('17-Feb-12'), close: 502.12},
{date: parseDate('16-Feb-12'), close: 502.21},
{date: parseDate('15-Feb-12'), close: 497.67},
{date: parseDate('14-Feb-12'), close: 509.46},
{date: parseDate('13-Feb-12'), close: 502.60},
{date: parseDate('10-Feb-12'), close: 493.42},
{date: parseDate('9-Feb-12'), close: 493.17},
{date: parseDate('8-Feb-12'), close: 476.68},
{date: parseDate('7-Feb-12'), close: 468.83},
{date: parseDate('6-Feb-12'), close: 463.97},
{date: parseDate('3-Feb-12'), close: 459.68},
{date: parseDate('2-Feb-12'), close: 455.12},
{date: parseDate('1-Feb-12'), close: 456.19},
{date: parseDate('31-Jan-12'), close: 456.48},
{date: parseDate('30-Jan-12'), close: 453.01},
{date: parseDate('27-Jan-12'), close: 447.28},
{date: parseDate('26-Jan-12'), close: 444.63},
{date: parseDate('25-Jan-12'), close: 446.66},
{date: parseDate('24-Jan-12'), close: 420.41},
{date: parseDate('23-Jan-12'), close: 427.41},
{date: parseDate('20-Jan-12'), close: 420.30},
{date: parseDate('19-Jan-12'), close: 427.75},
{date: parseDate('18-Jan-12'), close: 429.11},
{date: parseDate('17-Jan-12'), close: 424.70},
{date: parseDate('13-Jan-12'), close: 419.81},
{date: parseDate('12-Jan-12'), close: 421.39},
{date: parseDate('11-Jan-12'), close: 422.55},
{date: parseDate('10-Jan-12'), close: 423.24},
{date: parseDate('9-Jan-12'), close: 421.73},
{date: parseDate('6-Jan-12'), close: 422.40},
{date: parseDate('5-Jan-12'), close: 418.03},
{date: parseDate('4-Jan-12'), close: 413.44},
{date: parseDate('3-Jan-12'), close: 411.23},
{date: parseDate('30-Dec-11'), close: 405.00},
{date: parseDate('29-Dec-11'), close: 405.12},
{date: parseDate('28-Dec-11'), close: 402.64},
{date: parseDate('27-Dec-11'), close: 406.53},
{date: parseDate('23-Dec-11'), close: 403.43},
{date: parseDate('22-Dec-11'), close: 398.55},
{date: parseDate('21-Dec-11'), close: 396.44},
{date: parseDate('20-Dec-11'), close: 395.95},
{date: parseDate('19-Dec-11'), close: 382.21},
{date: parseDate('16-Dec-11'), close: 381.02},
{date: parseDate('15-Dec-11'), close: 378.94},
{date: parseDate('14-Dec-11'), close: 380.19},
{date: parseDate('13-Dec-11'), close: 388.81},
{date: parseDate('12-Dec-11'), close: 391.84},
{date: parseDate('9-Dec-11'), close: 393.62},
{date: parseDate('8-Dec-11'), close: 390.66},
{date: parseDate('7-Dec-11'), close: 389.09},
{date: parseDate('6-Dec-11'), close: 390.95},
{date: parseDate('5-Dec-11'), close: 393.01},
{date: parseDate('2-Dec-11'), close: 389.70},
{date: parseDate('1-Dec-11'), close: 387.93},
{date: parseDate('30-Nov-11'), close: 382.20},
{date: parseDate('29-Nov-11'), close: 373.20},
{date: parseDate('28-Nov-11'), close: 376.12},
{date: parseDate('25-Nov-11'), close: 363.57},
{date: parseDate('23-Nov-11'), close: 366.99},
{date: parseDate('22-Nov-11'), close: 376.51},
{date: parseDate('21-Nov-11'), close: 369.01},
{date: parseDate('18-Nov-11'), close: 374.94},
{date: parseDate('17-Nov-11'), close: 377.41},
{date: parseDate('16-Nov-11'), close: 384.77},
{date: parseDate('15-Nov-11'), close: 388.83},
{date: parseDate('14-Nov-11'), close: 379.26},
{date: parseDate('11-Nov-11'), close: 384.62},
{date: parseDate('10-Nov-11'), close: 385.22},
{date: parseDate('9-Nov-11'), close: 395.28},
{date: parseDate('8-Nov-11'), close: 406.23},
{date: parseDate('7-Nov-11'), close: 399.73},
{date: parseDate('4-Nov-11'), close: 400.24},
{date: parseDate('3-Nov-11'), close: 403.07},
{date: parseDate('2-Nov-11'), close: 397.41},
{date: parseDate('1-Nov-11'), close: 396.51},
{date: parseDate('31-Oct-11'), close: 404.78},
{date: parseDate('28-Oct-11'), close: 404.95},
{date: parseDate('27-Oct-11'), close: 404.69},
{date: parseDate('26-Oct-11'), close: 400.60},
{date: parseDate('25-Oct-11'), close: 397.77},
{date: parseDate('24-Oct-11'), close: 405.77},
{date: parseDate('21-Oct-11'), close: 392.87},
{date: parseDate('20-Oct-11'), close: 395.31},
{date: parseDate('19-Oct-11'), close: 398.62},
{date: parseDate('18-Oct-11'), close: 422.24},
{date: parseDate('17-Oct-11'), close: 419.99},
{date: parseDate('14-Oct-11'), close: 422.00},
{date: parseDate('13-Oct-11'), close: 408.43},
{date: parseDate('12-Oct-11'), close: 402.19},
{date: parseDate('11-Oct-11'), close: 400.29},
{date: parseDate('10-Oct-11'), close: 388.81},
{date: parseDate('7-Oct-11'), close: 369.80},
{date: parseDate('6-Oct-11'), close: 377.37},
{date: parseDate('5-Oct-11'), close: 378.25},
{date: parseDate('4-Oct-11'), close: 372.50},
{date: parseDate('3-Oct-11'), close: 374.60},
{date: parseDate('30-Sep-11'), close: 381.32},
{date: parseDate('29-Sep-11'), close: 390.57},
{date: parseDate('28-Sep-11'), close: 397.01},
{date: parseDate('27-Sep-11'), close: 399.26},
{date: parseDate('26-Sep-11'), close: 403.17},
{date: parseDate('23-Sep-11'), close: 404.30},
{date: parseDate('22-Sep-11'), close: 401.82},
{date: parseDate('21-Sep-11'), close: 412.14},
{date: parseDate('20-Sep-11'), close: 413.45},
{date: parseDate('19-Sep-11'), close: 411.63},
{date: parseDate('16-Sep-11'), close: 400.50},
{date: parseDate('15-Sep-11'), close: 392.96},
{date: parseDate('14-Sep-11'), close: 389.30},
{date: parseDate('13-Sep-11'), close: 384.62},
{date: parseDate('12-Sep-11'), close: 379.94},
{date: parseDate('9-Sep-11'), close: 377.48},
{date: parseDate('8-Sep-11'), close: 384.14},
{date: parseDate('7-Sep-11'), close: 383.93},
{date: parseDate('6-Sep-11'), close: 379.74},
{date: parseDate('2-Sep-11'), close: 374.05},
{date: parseDate('1-Sep-11'), close: 381.03},
{date: parseDate('31-Aug-11'), close: 384.83},
{date: parseDate('30-Aug-11'), close: 389.99},
{date: parseDate('29-Aug-11'), close: 389.97},
{date: parseDate('26-Aug-11'), close: 383.58},
{date: parseDate('25-Aug-11'), close: 373.72},
{date: parseDate('24-Aug-11'), close: 376.18},
{date: parseDate('23-Aug-11'), close: 373.60},
{date: parseDate('22-Aug-11'), close: 356.44},
{date: parseDate('19-Aug-11'), close: 356.03},
{date: parseDate('18-Aug-11'), close: 366.05},
{date: parseDate('17-Aug-11'), close: 380.44},
{date: parseDate('16-Aug-11'), close: 380.48},
{date: parseDate('15-Aug-11'), close: 383.41},
{date: parseDate('12-Aug-11'), close: 376.99},
{date: parseDate('11-Aug-11'), close: 373.70},
{date: parseDate('10-Aug-11'), close: 363.69},
{date: parseDate('9-Aug-11'), close: 374.01},
{date: parseDate('8-Aug-11'), close: 353.21},
{date: parseDate('5-Aug-11'), close: 373.62},
{date: parseDate('4-Aug-11'), close: 377.37},
{date: parseDate('3-Aug-11'), close: 392.57},
{date: parseDate('2-Aug-11'), close: 388.91},
{date: parseDate('1-Aug-11'), close: 396.75},
{date: parseDate('29-Jul-11'), close: 390.48},
{date: parseDate('28-Jul-11'), close: 391.82},
{date: parseDate('27-Jul-11'), close: 392.59},
{date: parseDate('26-Jul-11'), close: 403.41},
{date: parseDate('25-Jul-11'), close: 398.50},
{date: parseDate('22-Jul-11'), close: 393.30},
{date: parseDate('21-Jul-11'), close: 387.29},
{date: parseDate('20-Jul-11'), close: 386.90},
{date: parseDate('19-Jul-11'), close: 376.85},
{date: parseDate('18-Jul-11'), close: 373.80},
{date: parseDate('15-Jul-11'), close: 364.92},
{date: parseDate('14-Jul-11'), close: 357.77},
{date: parseDate('13-Jul-11'), close: 358.02},
{date: parseDate('12-Jul-11'), close: 353.75},
{date: parseDate('11-Jul-11'), close: 354.00},
{date: parseDate('8-Jul-11'), close: 359.71},
{date: parseDate('7-Jul-11'), close: 357.20},
{date: parseDate('6-Jul-11'), close: 351.76},
{date: parseDate('5-Jul-11'), close: 349.43},
{date: parseDate('1-Jul-11'), close: 343.26},
{date: parseDate('30-Jun-11'), close: 335.67},
{date: parseDate('29-Jun-11'), close: 334.04},
{date: parseDate('28-Jun-11'), close: 335.26},
{date: parseDate('27-Jun-11'), close: 332.04},
{date: parseDate('24-Jun-11'), close: 326.35},
{date: parseDate('23-Jun-11'), close: 331.23},
{date: parseDate('22-Jun-11'), close: 322.61},
{date: parseDate('21-Jun-11'), close: 325.30},
{date: parseDate('20-Jun-11'), close: 315.32},
{date: parseDate('17-Jun-11'), close: 320.26},
{date: parseDate('16-Jun-11'), close: 325.16},
{date: parseDate('15-Jun-11'), close: 326.75},
{date: parseDate('14-Jun-11'), close: 332.44},
{date: parseDate('13-Jun-11'), close: 326.60},
{date: parseDate('10-Jun-11'), close: 325.90},
{date: parseDate('9-Jun-11'), close: 331.49},
{date: parseDate('8-Jun-11'), close: 332.24},
{date: parseDate('7-Jun-11'), close: 332.04},
{date: parseDate('6-Jun-11'), close: 338.04},
{date: parseDate('3-Jun-11'), close: 343.44},
{date: parseDate('2-Jun-11'), close: 346.10},
{date: parseDate('1-Jun-11'), close: 345.51},
{date: parseDate('31-May-11'), close: 347.83},
{date: parseDate('27-May-11'), close: 337.41},
{date: parseDate('26-May-11'), close: 335.00},
{date: parseDate('25-May-11'), close: 336.78},
{date: parseDate('24-May-11'), close: 332.19},
{date: parseDate('23-May-11'), close: 334.40},
{date: parseDate('20-May-11'), close: 335.22},
{date: parseDate('19-May-11'), close: 340.53},
{date: parseDate('18-May-11'), close: 339.87},
{date: parseDate('17-May-11'), close: 336.14},
{date: parseDate('16-May-11'), close: 333.30},
{date: parseDate('13-May-11'), close: 340.50},
{date: parseDate('12-May-11'), close: 346.57},
{date: parseDate('11-May-11'), close: 347.23},
{date: parseDate('10-May-11'), close: 349.45},
{date: parseDate('9-May-11'), close: 347.60},
{date: parseDate('6-May-11'), close: 346.66},
{date: parseDate('5-May-11'), close: 346.75},
{date: parseDate('4-May-11'), close: 349.57},
{date: parseDate('3-May-11'), close: 348.20},
{date: parseDate('2-May-11'), close: 346.28},
{date: parseDate('29-Apr-11'), close: 350.13},
{date: parseDate('28-Apr-11'), close: 346.75},
{date: parseDate('27-Apr-11'), close: 350.15},
{date: parseDate('26-Apr-11'), close: 350.42},
{date: parseDate('25-Apr-11'), close: 353.01},
{date: parseDate('21-Apr-11'), close: 350.70},
{date: parseDate('20-Apr-11'), close: 342.41},
{date: parseDate('19-Apr-11'), close: 337.86},
{date: parseDate('18-Apr-11'), close: 331.85},
{date: parseDate('15-Apr-11'), close: 327.46},
{date: parseDate('14-Apr-11'), close: 332.42},
{date: parseDate('13-Apr-11'), close: 336.13},
{date: parseDate('12-Apr-11'), close: 332.40},
{date: parseDate('11-Apr-11'), close: 330.80},
{date: parseDate('8-Apr-11'), close: 335.06},
{date: parseDate('7-Apr-11'), close: 338.08},
{date: parseDate('6-Apr-11'), close: 338.04},
{date: parseDate('5-Apr-11'), close: 338.89},
{date: parseDate('4-Apr-11'), close: 341.19},
{date: parseDate('1-Apr-11'), close: 344.56},
{date: parseDate('31-Mar-11'), close: 348.51},
{date: parseDate('30-Mar-11'), close: 348.63},
{date: parseDate('29-Mar-11'), close: 350.96},
{date: parseDate('28-Mar-11'), close: 350.44},
{date: parseDate('25-Mar-11'), close: 351.54},
{date: parseDate('24-Mar-11'), close: 344.97},
{date: parseDate('23-Mar-11'), close: 339.19},
{date: parseDate('22-Mar-11'), close: 341.20},
{date: parseDate('21-Mar-11'), close: 339.30},
{date: parseDate('18-Mar-11'), close: 330.67},
{date: parseDate('17-Mar-11'), close: 334.64},
{date: parseDate('16-Mar-11'), close: 330.01},
{date: parseDate('15-Mar-11'), close: 345.43},
{date: parseDate('14-Mar-11'), close: 353.56},
{date: parseDate('11-Mar-11'), close: 351.99},
{date: parseDate('10-Mar-11'), close: 346.67},
{date: parseDate('9-Mar-11'), close: 352.47},
{date: parseDate('8-Mar-11'), close: 355.76},
{date: parseDate('7-Mar-11'), close: 355.36},
{date: parseDate('4-Mar-11'), close: 360.00},
{date: parseDate('3-Mar-11'), close: 359.56},
{date: parseDate('2-Mar-11'), close: 352.12},
{date: parseDate('1-Mar-11'), close: 349.31},
{date: parseDate('28-Feb-11'), close: 353.21},
{date: parseDate('25-Feb-11'), close: 348.16},
{date: parseDate('24-Feb-11'), close: 342.88},
{date: parseDate('23-Feb-11'), close: 342.62},
{date: parseDate('22-Feb-11'), close: 338.61},
{date: parseDate('18-Feb-11'), close: 350.56},
{date: parseDate('17-Feb-11'), close: 358.30},
{date: parseDate('16-Feb-11'), close: 363.13},
{date: parseDate('15-Feb-11'), close: 359.90},
{date: parseDate('14-Feb-11'), close: 359.18},
{date: parseDate('11-Feb-11'), close: 356.85},
{date: parseDate('10-Feb-11'), close: 354.54},
{date: parseDate('9-Feb-11'), close: 358.16},
{date: parseDate('8-Feb-11'), close: 355.20},
{date: parseDate('7-Feb-11'), close: 351.88},
{date: parseDate('4-Feb-11'), close: 346.50},
{date: parseDate('3-Feb-11'), close: 343.44},
{date: parseDate('2-Feb-11'), close: 344.32},
{date: parseDate('1-Feb-11'), close: 345.03},
{date: parseDate('31-Jan-11'), close: 339.32},
{date: parseDate('28-Jan-11'), close: 336.10},
{date: parseDate('27-Jan-11'), close: 343.21},
{date: parseDate('26-Jan-11'), close: 343.85},
{date: parseDate('25-Jan-11'), close: 341.40},
{date: parseDate('24-Jan-11'), close: 337.45},
{date: parseDate('21-Jan-11'), close: 326.72},
{date: parseDate('20-Jan-11'), close: 332.68},
{date: parseDate('19-Jan-11'), close: 338.84},
{date: parseDate('18-Jan-11'), close: 340.65},
{date: parseDate('14-Jan-11'), close: 348.48},
{date: parseDate('13-Jan-11'), close: 345.68},
{date: parseDate('12-Jan-11'), close: 344.42},
{date: parseDate('11-Jan-11'), close: 341.64},
{date: parseDate('10-Jan-11'), close: 342.46},
{date: parseDate('7-Jan-11'), close: 336.12},
{date: parseDate('6-Jan-11'), close: 333.73},
{date: parseDate('5-Jan-11'), close: 334.00},
{date: parseDate('4-Jan-11'), close: 331.29},
{date: parseDate('3-Jan-11'), close: 329.57},
{date: parseDate('31-Dec-10'), close: 322.56},
{date: parseDate('30-Dec-10'), close: 323.66},
{date: parseDate('29-Dec-10'), close: 325.29},
{date: parseDate('28-Dec-10'), close: 325.47},
{date: parseDate('27-Dec-10'), close: 324.68},
{date: parseDate('23-Dec-10'), close: 323.60},
{date: parseDate('22-Dec-10'), close: 325.16},
{date: parseDate('21-Dec-10'), close: 324.20},
{date: parseDate('20-Dec-10'), close: 322.21},
{date: parseDate('17-Dec-10'), close: 320.61},
{date: parseDate('16-Dec-10'), close: 321.25},
{date: parseDate('15-Dec-10'), close: 320.36},
{date: parseDate('14-Dec-10'), close: 320.29},
{date: parseDate('13-Dec-10'), close: 321.67},
{date: parseDate('10-Dec-10'), close: 320.56},
{date: parseDate('9-Dec-10'), close: 319.76},
{date: parseDate('8-Dec-10'), close: 321.01},
{date: parseDate('7-Dec-10'), close: 318.21},
{date: parseDate('6-Dec-10'), close: 320.15},
{date: parseDate('3-Dec-10'), close: 317.44},
{date: parseDate('2-Dec-10'), close: 318.15},
{date: parseDate('1-Dec-10'), close: 316.40},
{date: parseDate('30-Nov-10'), close: 311.15},
{date: parseDate('29-Nov-10'), close: 316.87},
{date: parseDate('26-Nov-10'), close: 315.00},
{date: parseDate('24-Nov-10'), close: 314.80},
{date: parseDate('23-Nov-10'), close: 308.73},
{date: parseDate('22-Nov-10'), close: 313.36},
{date: parseDate('19-Nov-10'), close: 306.73},
{date: parseDate('18-Nov-10'), close: 308.43},
{date: parseDate('17-Nov-10'), close: 300.50},
{date: parseDate('16-Nov-10'), close: 301.59},
{date: parseDate('15-Nov-10'), close: 307.04},
{date: parseDate('12-Nov-10'), close: 308.03},
{date: parseDate('11-Nov-10'), close: 316.66},
{date: parseDate('10-Nov-10'), close: 318.03},
{date: parseDate('9-Nov-10'), close: 316.08},
{date: parseDate('8-Nov-10'), close: 318.62},
{date: parseDate('5-Nov-10'), close: 317.13},
{date: parseDate('4-Nov-10'), close: 318.27},
{date: parseDate('3-Nov-10'), close: 312.80},
{date: parseDate('2-Nov-10'), close: 309.36},
{date: parseDate('1-Nov-10'), close: 304.18},
{date: parseDate('29-Oct-10'), close: 300.98},
{date: parseDate('28-Oct-10'), close: 305.24},
{date: parseDate('27-Oct-10'), close: 307.83},
{date: parseDate('26-Oct-10'), close: 308.05},
{date: parseDate('25-Oct-10'), close: 308.84},
{date: parseDate('22-Oct-10'), close: 307.47},
{date: parseDate('21-Oct-10'), close: 309.52},
{date: parseDate('20-Oct-10'), close: 310.53},
{date: parseDate('19-Oct-10'), close: 309.49},
{date: parseDate('18-Oct-10'), close: 318.00},
{date: parseDate('15-Oct-10'), close: 314.74},
{date: parseDate('14-Oct-10'), close: 302.31},
{date: parseDate('13-Oct-10'), close: 300.14},
{date: parseDate('12-Oct-10'), close: 298.54},
{date: parseDate('11-Oct-10'), close: 295.36},
{date: parseDate('8-Oct-10'), close: 294.07},
{date: parseDate('7-Oct-10'), close: 289.22},
{date: parseDate('6-Oct-10'), close: 289.19},
{date: parseDate('5-Oct-10'), close: 288.94},
{date: parseDate('4-Oct-10'), close: 278.64},
{date: parseDate('1-Oct-10'), close: 282.52},
{date: parseDate('30-Sep-10'), close: 283.75},
{date: parseDate('29-Sep-10'), close: 287.37},
{date: parseDate('28-Sep-10'), close: 286.86},
{date: parseDate('27-Sep-10'), close: 291.16},
{date: parseDate('24-Sep-10'), close: 292.32},
{date: parseDate('23-Sep-10'), close: 288.92},
{date: parseDate('22-Sep-10'), close: 287.75},
{date: parseDate('21-Sep-10'), close: 283.77},
{date: parseDate('20-Sep-10'), close: 283.23},
{date: parseDate('17-Sep-10'), close: 275.37},
{date: parseDate('16-Sep-10'), close: 276.57},
{date: parseDate('15-Sep-10'), close: 270.22},
{date: parseDate('14-Sep-10'), close: 268.06},
{date: parseDate('13-Sep-10'), close: 267.04},
{date: parseDate('10-Sep-10'), close: 263.41},
{date: parseDate('9-Sep-10'), close: 263.07},
{date: parseDate('8-Sep-10'), close: 262.92},
{date: parseDate('7-Sep-10'), close: 257.81},
{date: parseDate('6-Sep-10'), close: 258.77},
{date: parseDate('3-Sep-10'), close: 258.77},
{date: parseDate('2-Sep-10'), close: 252.17},
{date: parseDate('1-Sep-10'), close: 250.33},
{date: parseDate('31-Aug-10'), close: 243.10},
{date: parseDate('30-Aug-10'), close: 242.50},
{date: parseDate('27-Aug-10'), close: 241.62},
{date: parseDate('26-Aug-10'), close: 240.28},
{date: parseDate('25-Aug-10'), close: 242.89},
{date: parseDate('24-Aug-10'), close: 239.93},
{date: parseDate('23-Aug-10'), close: 245.80},
{date: parseDate('20-Aug-10'), close: 249.64},
{date: parseDate('19-Aug-10'), close: 249.88},
{date: parseDate('18-Aug-10'), close: 253.07},
{date: parseDate('17-Aug-10'), close: 251.97},
{date: parseDate('16-Aug-10'), close: 247.64},
{date: parseDate('13-Aug-10'), close: 249.10},
{date: parseDate('12-Aug-10'), close: 251.79},
{date: parseDate('11-Aug-10'), close: 250.19},
{date: parseDate('10-Aug-10'), close: 259.41},
{date: parseDate('9-Aug-10'), close: 261.75},
{date: parseDate('6-Aug-10'), close: 260.09},
{date: parseDate('5-Aug-10'), close: 261.70},
{date: parseDate('4-Aug-10'), close: 262.98},
{date: parseDate('3-Aug-10'), close: 261.93},
{date: parseDate('2-Aug-10'), close: 261.85},
{date: parseDate('30-Jul-10'), close: 257.25},
{date: parseDate('29-Jul-10'), close: 258.11},
{date: parseDate('28-Jul-10'), close: 260.96},
{date: parseDate('27-Jul-10'), close: 264.08},
{date: parseDate('26-Jul-10'), close: 259.28},
{date: parseDate('23-Jul-10'), close: 259.94},
{date: parseDate('22-Jul-10'), close: 259.02},
{date: parseDate('21-Jul-10'), close: 254.24},
{date: parseDate('20-Jul-10'), close: 251.89},
{date: parseDate('19-Jul-10'), close: 245.58},
{date: parseDate('16-Jul-10'), close: 249.90},
{date: parseDate('15-Jul-10'), close: 251.45},
{date: parseDate('14-Jul-10'), close: 252.73},
{date: parseDate('13-Jul-10'), close: 251.80},
{date: parseDate('12-Jul-10'), close: 257.28},
{date: parseDate('9-Jul-10'), close: 259.62},
{date: parseDate('8-Jul-10'), close: 258.09},
{date: parseDate('7-Jul-10'), close: 258.66},
{date: parseDate('6-Jul-10'), close: 248.63},
{date: parseDate('5-Jul-10'), close: 246.94},
{date: parseDate('2-Jul-10'), close: 246.94},
{date: parseDate('1-Jul-10'), close: 248.48},
{date: parseDate('30-Jun-10'), close: 251.53},
{date: parseDate('29-Jun-10'), close: 256.17},
{date: parseDate('28-Jun-10'), close: 268.30},
{date: parseDate('25-Jun-10'), close: 266.70},
{date: parseDate('24-Jun-10'), close: 269.00},
{date: parseDate('23-Jun-10'), close: 270.97},
{date: parseDate('22-Jun-10'), close: 273.85},
{date: parseDate('21-Jun-10'), close: 270.17},
{date: parseDate('18-Jun-10'), close: 274.07},
{date: parseDate('17-Jun-10'), close: 271.87},
{date: parseDate('16-Jun-10'), close: 267.25},
{date: parseDate('15-Jun-10'), close: 259.69},
{date: parseDate('14-Jun-10'), close: 254.28},
{date: parseDate('11-Jun-10'), close: 253.51},
{date: parseDate('10-Jun-10'), close: 250.51},
{date: parseDate('9-Jun-10'), close: 243.20},
{date: parseDate('8-Jun-10'), close: 249.33},
{date: parseDate('7-Jun-10'), close: 250.94},
{date: parseDate('4-Jun-10'), close: 255.96},
{date: parseDate('3-Jun-10'), close: 263.12},
{date: parseDate('2-Jun-10'), close: 263.95},
{date: parseDate('1-Jun-10'), close: 260.83},
{date: parseDate('31-May-10'), close: 256.88},
{date: parseDate('28-May-10'), close: 256.88},
{date: parseDate('27-May-10'), close: 253.35},
{date: parseDate('26-May-10'), close: 244.11},
{date: parseDate('25-May-10'), close: 245.22},
{date: parseDate('24-May-10'), close: 246.76},
{date: parseDate('21-May-10'), close: 242.32},
{date: parseDate('20-May-10'), close: 237.76},
{date: parseDate('19-May-10'), close: 248.34},
{date: parseDate('18-May-10'), close: 252.36},
{date: parseDate('17-May-10'), close: 254.22},
{date: parseDate('14-May-10'), close: 253.82},
{date: parseDate('13-May-10'), close: 258.36},
{date: parseDate('12-May-10'), close: 262.09},
{date: parseDate('11-May-10'), close: 256.52},
{date: parseDate('10-May-10'), close: 253.99},
{date: parseDate('7-May-10'), close: 235.86},
{date: parseDate('6-May-10'), close: 246.25},
{date: parseDate('5-May-10'), close: 255.98},
{date: parseDate('4-May-10'), close: 258.68},
{date: parseDate('3-May-10'), close: 266.35},
{date: parseDate('30-Apr-10'), close: 261.09},
{date: parseDate('29-Apr-10'), close: 268.64},
{date: parseDate('28-Apr-10'), close: 261.60},
{date: parseDate('27-Apr-10'), close: 262.04},
{date: parseDate('26-Apr-10'), close: 269.50},
{date: parseDate('23-Apr-10'), close: 270.83},
{date: parseDate('22-Apr-10'), close: 266.47},
{date: parseDate('21-Apr-10'), close: 259.22},
{date: parseDate('20-Apr-10'), close: 244.59},
{date: parseDate('19-Apr-10'), close: 247.07},
{date: parseDate('16-Apr-10'), close: 247.40},
{date: parseDate('15-Apr-10'), close: 248.92},
{date: parseDate('14-Apr-10'), close: 245.69},
{date: parseDate('13-Apr-10'), close: 242.43},
{date: parseDate('12-Apr-10'), close: 242.29},
{date: parseDate('9-Apr-10'), close: 241.79},
{date: parseDate('8-Apr-10'), close: 239.95},
{date: parseDate('7-Apr-10'), close: 240.60},
{date: parseDate('6-Apr-10'), close: 239.54},
{date: parseDate('5-Apr-10'), close: 238.49},
{date: parseDate('2-Apr-10'), close: 235.97},
{date: parseDate('1-Apr-10'), close: 235.97},
{date: parseDate('31-Mar-10'), close: 235.00},
{date: parseDate('30-Mar-10'), close: 235.84},
{date: parseDate('29-Mar-10'), close: 232.39},
{date: parseDate('26-Mar-10'), close: 230.90},
{date: parseDate('25-Mar-10'), close: 226.65},
{date: parseDate('24-Mar-10'), close: 229.37},
{date: parseDate('23-Mar-10'), close: 228.36},
{date: parseDate('22-Mar-10'), close: 224.75},
{date: parseDate('19-Mar-10'), close: 222.25},
{date: parseDate('18-Mar-10'), close: 224.65},
{date: parseDate('17-Mar-10'), close: 224.12},
{date: parseDate('16-Mar-10'), close: 224.45},
{date: parseDate('15-Mar-10'), close: 223.84},
{date: parseDate('12-Mar-10'), close: 226.60},
{date: parseDate('11-Mar-10'), close: 225.50},
{date: parseDate('10-Mar-10'), close: 224.84},
{date: parseDate('9-Mar-10'), close: 223.02},
{date: parseDate('8-Mar-10'), close: 219.08},
{date: parseDate('5-Mar-10'), close: 218.95},
{date: parseDate('4-Mar-10'), close: 210.71},
{date: parseDate('3-Mar-10'), close: 209.33},
{date: parseDate('2-Mar-10'), close: 208.85},
{date: parseDate('1-Mar-10'), close: 208.99},
{date: parseDate('26-Feb-10'), close: 204.62},
{date: parseDate('25-Feb-10'), close: 202.00},
{date: parseDate('24-Feb-10'), close: 200.66},
{date: parseDate('23-Feb-10'), close: 197.06},
{date: parseDate('22-Feb-10'), close: 200.42},
{date: parseDate('19-Feb-10'), close: 201.67},
{date: parseDate('18-Feb-10'), close: 202.93},
{date: parseDate('17-Feb-10'), close: 202.55},
{date: parseDate('16-Feb-10'), close: 203.40},
{date: parseDate('15-Feb-10'), close: 200.38},
{date: parseDate('12-Feb-10'), close: 200.38},
{date: parseDate('11-Feb-10'), close: 198.67},
{date: parseDate('10-Feb-10'), close: 195.12},
{date: parseDate('9-Feb-10'), close: 196.19},
{date: parseDate('8-Feb-10'), close: 194.12},
{date: parseDate('5-Feb-10'), close: 195.46},
{date: parseDate('4-Feb-10'), close: 192.05},
{date: parseDate('3-Feb-10'), close: 199.23},
{date: parseDate('2-Feb-10'), close: 195.86},
{date: parseDate('1-Feb-10'), close: 194.73},
{date: parseDate('29-Jan-10'), close: 192.06},
{date: parseDate('28-Jan-10'), close: 199.29},
{date: parseDate('27-Jan-10'), close: 207.88},
{date: parseDate('26-Jan-10'), close: 205.94},
{date: parseDate('25-Jan-10'), close: 203.08},
{date: parseDate('22-Jan-10'), close: 197.75},
{date: parseDate('21-Jan-10'), close: 208.07},
{date: parseDate('20-Jan-10'), close: 211.72},
{date: parseDate('19-Jan-10'), close: 215.04},
{date: parseDate('18-Jan-10'), close: 205.93},
{date: parseDate('15-Jan-10'), close: 205.93},
{date: parseDate('14-Jan-10'), close: 209.43},
{date: parseDate('13-Jan-10'), close: 210.65},
{date: parseDate('12-Jan-10'), close: 207.72},
{date: parseDate('11-Jan-10'), close: 210.11},
{date: parseDate('8-Jan-10'), close: 211.98},
{date: parseDate('7-Jan-10'), close: 210.58},
{date: parseDate('6-Jan-10'), close: 210.97},
{date: parseDate('5-Jan-10'), close: 214.38},
{date: parseDate('4-Jan-10'), close: 214.01},
{date: parseDate('1-Jan-10'), close: 210.73},
{date: parseDate('31-Dec-09'), close: 210.73},
{date: parseDate('30-Dec-09'), close: 211.64},
{date: parseDate('29-Dec-09'), close: 209.10},
{date: parseDate('28-Dec-09'), close: 211.61},
{date: parseDate('25-Dec-09'), close: 209.04},
{date: parseDate('24-Dec-09'), close: 209.04},
{date: parseDate('23-Dec-09'), close: 202.10},
{date: parseDate('22-Dec-09'), close: 200.36},
{date: parseDate('21-Dec-09'), close: 198.23},
{date: parseDate('18-Dec-09'), close: 195.43},
{date: parseDate('17-Dec-09'), close: 191.86},
{date: parseDate('16-Dec-09'), close: 195.03},
{date: parseDate('15-Dec-09'), close: 194.17},
{date: parseDate('14-Dec-09'), close: 196.98},
{date: parseDate('11-Dec-09'), close: 194.67},
{date: parseDate('10-Dec-09'), close: 196.43},
{date: parseDate('9-Dec-09'), close: 197.80},
{date: parseDate('8-Dec-09'), close: 189.87},
{date: parseDate('7-Dec-09'), close: 188.95},
{date: parseDate('4-Dec-09'), close: 193.32},
{date: parseDate('3-Dec-09'), close: 196.48},
{date: parseDate('2-Dec-09'), close: 196.23},
{date: parseDate('1-Dec-09'), close: 196.97},
{date: parseDate('30-Nov-09'), close: 199.91},
{date: parseDate('27-Nov-09'), close: 200.59},
{date: parseDate('26-Nov-09'), close: 204.19},
{date: parseDate('25-Nov-09'), close: 204.19},
{date: parseDate('24-Nov-09'), close: 204.44},
{date: parseDate('23-Nov-09'), close: 205.88},
{date: parseDate('20-Nov-09'), close: 199.92},
{date: parseDate('19-Nov-09'), close: 200.51},
{date: parseDate('18-Nov-09'), close: 205.96},
{date: parseDate('17-Nov-09'), close: 207.00},
{date: parseDate('16-Nov-09'), close: 206.63},
{date: parseDate('13-Nov-09'), close: 204.45},
{date: parseDate('12-Nov-09'), close: 201.99},
{date: parseDate('11-Nov-09'), close: 203.25},
{date: parseDate('10-Nov-09'), close: 202.98},
{date: parseDate('9-Nov-09'), close: 201.46},
{date: parseDate('6-Nov-09'), close: 194.34},
{date: parseDate('5-Nov-09'), close: 194.03},
{date: parseDate('4-Nov-09'), close: 190.81},
{date: parseDate('3-Nov-09'), close: 188.75},
{date: parseDate('2-Nov-09'), close: 189.31},
{date: parseDate('30-Oct-09'), close: 188.50},
{date: parseDate('29-Oct-09'), close: 196.35},
{date: parseDate('28-Oct-09'), close: 192.40},
{date: parseDate('27-Oct-09'), close: 197.37},
{date: parseDate('26-Oct-09'), close: 202.48},
{date: parseDate('23-Oct-09'), close: 203.94},
{date: parseDate('22-Oct-09'), close: 205.20},
{date: parseDate('21-Oct-09'), close: 204.92},
{date: parseDate('20-Oct-09'), close: 198.76},
{date: parseDate('19-Oct-09'), close: 189.86},
{date: parseDate('16-Oct-09'), close: 188.05},
{date: parseDate('15-Oct-09'), close: 190.56},
{date: parseDate('14-Oct-09'), close: 191.29},
{date: parseDate('13-Oct-09'), close: 190.02},
{date: parseDate('12-Oct-09'), close: 190.81},
{date: parseDate('9-Oct-09'), close: 190.47},
{date: parseDate('8-Oct-09'), close: 189.27},
{date: parseDate('7-Oct-09'), close: 190.25},
{date: parseDate('6-Oct-09'), close: 190.01},
{date: parseDate('5-Oct-09'), close: 186.02},
{date: parseDate('2-Oct-09'), close: 184.90},
{date: parseDate('1-Oct-09'), close: 180.86},
{date: parseDate('30-Sep-09'), close: 185.35},
{date: parseDate('29-Sep-09'), close: 185.38},
{date: parseDate('28-Sep-09'), close: 186.15},
{date: parseDate('25-Sep-09'), close: 182.37},
{date: parseDate('24-Sep-09'), close: 183.82},
{date: parseDate('23-Sep-09'), close: 185.50},
{date: parseDate('22-Sep-09'), close: 184.48},
{date: parseDate('21-Sep-09'), close: 184.02},
{date: parseDate('18-Sep-09'), close: 185.02},
{date: parseDate('17-Sep-09'), close: 184.55},
{date: parseDate('16-Sep-09'), close: 181.87},
{date: parseDate('15-Sep-09'), close: 175.16},
{date: parseDate('14-Sep-09'), close: 173.72},
{date: parseDate('11-Sep-09'), close: 172.16},
{date: parseDate('10-Sep-09'), close: 172.56},
{date: parseDate('9-Sep-09'), close: 171.14},
{date: parseDate('8-Sep-09'), close: 172.93},
{date: parseDate('4-Sep-09'), close: 170.31},
{date: parseDate('3-Sep-09'), close: 166.55},
{date: parseDate('2-Sep-09'), close: 165.18},
{date: parseDate('1-Sep-09'), close: 165.30},
{date: parseDate('31-Aug-09'), close: 168.21},
{date: parseDate('28-Aug-09'), close: 170.05},
{date: parseDate('27-Aug-09'), close: 169.45},
{date: parseDate('26-Aug-09'), close: 167.41},
{date: parseDate('25-Aug-09'), close: 169.40},
{date: parseDate('24-Aug-09'), close: 169.06},
{date: parseDate('21-Aug-09'), close: 169.22},
{date: parseDate('20-Aug-09'), close: 166.33},
{date: parseDate('19-Aug-09'), close: 164.60},
{date: parseDate('18-Aug-09'), close: 164.00},
{date: parseDate('17-Aug-09'), close: 159.59},
{date: parseDate('14-Aug-09'), close: 166.78},
{date: parseDate('13-Aug-09'), close: 168.42},
{date: parseDate('12-Aug-09'), close: 165.31},
{date: parseDate('10-Aug-09'), close: 164.72},
{date: parseDate('7-Aug-09'), close: 165.51},
{date: parseDate('6-Aug-09'), close: 163.91},
{date: parseDate('5-Aug-09'), close: 165.11},
{date: parseDate('4-Aug-09'), close: 165.55},
{date: parseDate('3-Aug-09'), close: 166.43},
{date: parseDate('31-Jul-09'), close: 163.39},
{date: parseDate('30-Jul-09'), close: 162.79},
{date: parseDate('29-Jul-09'), close: 160.03},
{date: parseDate('28-Jul-09'), close: 160.00},
{date: parseDate('27-Jul-09'), close: 160.10},
{date: parseDate('24-Jul-09'), close: 159.99},
{date: parseDate('23-Jul-09'), close: 157.82},
{date: parseDate('22-Jul-09'), close: 156.74},
{date: parseDate('21-Jul-09'), close: 151.51},
{date: parseDate('20-Jul-09'), close: 152.91},
{date: parseDate('17-Jul-09'), close: 151.75},
{date: parseDate('16-Jul-09'), close: 147.52},
{date: parseDate('15-Jul-09'), close: 146.88},
{date: parseDate('14-Jul-09'), close: 142.27},
{date: parseDate('13-Jul-09'), close: 142.34},
{date: parseDate('10-Jul-09'), close: 138.52},
{date: parseDate('9-Jul-09'), close: 136.36},
{date: parseDate('8-Jul-09'), close: 137.22},
{date: parseDate('7-Jul-09'), close: 135.40},
{date: parseDate('6-Jul-09'), close: 138.61},
{date: parseDate('3-Jul-09'), close: 140.02},
{date: parseDate('2-Jul-09'), close: 140.02},
{date: parseDate('1-Jul-09'), close: 142.83},
{date: parseDate('30-Jun-09'), close: 142.43},
{date: parseDate('29-Jun-09'), close: 141.97},
{date: parseDate('26-Jun-09'), close: 142.44},
{date: parseDate('25-Jun-09'), close: 139.86},
{date: parseDate('24-Jun-09'), close: 136.22},
{date: parseDate('23-Jun-09'), close: 134.01},
{date: parseDate('22-Jun-09'), close: 137.37},
{date: parseDate('19-Jun-09'), close: 139.48},
{date: parseDate('18-Jun-09'), close: 135.88},
{date: parseDate('17-Jun-09'), close: 135.58},
{date: parseDate('16-Jun-09'), close: 136.35},
{date: parseDate('15-Jun-09'), close: 136.09},
{date: parseDate('12-Jun-09'), close: 136.97},
{date: parseDate('11-Jun-09'), close: 139.95},
{date: parseDate('10-Jun-09'), close: 140.25},
{date: parseDate('9-Jun-09'), close: 142.72},
{date: parseDate('8-Jun-09'), close: 143.85},
{date: parseDate('5-Jun-09'), close: 144.67},
{date: parseDate('4-Jun-09'), close: 143.74},
{date: parseDate('3-Jun-09'), close: 140.95},
{date: parseDate('2-Jun-09'), close: 139.49},
{date: parseDate('1-Jun-09'), close: 139.35},
{date: parseDate('29-May-09'), close: 135.81},
{date: parseDate('28-May-09'), close: 135.07},
{date: parseDate('27-May-09'), close: 133.05},
{date: parseDate('26-May-09'), close: 130.78},
{date: parseDate('22-May-09'), close: 122.50},
{date: parseDate('21-May-09'), close: 124.18},
{date: parseDate('20-May-09'), close: 125.87},
{date: parseDate('19-May-09'), close: 127.45},
{date: parseDate('18-May-09'), close: 126.65},
{date: parseDate('15-May-09'), close: 122.42},
{date: parseDate('14-May-09'), close: 122.95},
{date: parseDate('13-May-09'), close: 119.49},
{date: parseDate('12-May-09'), close: 124.42},
{date: parseDate('11-May-09'), close: 129.57},
{date: parseDate('8-May-09'), close: 129.19},
{date: parseDate('7-May-09'), close: 129.06},
{date: parseDate('6-May-09'), close: 132.50},
{date: parseDate('5-May-09'), close: 132.71},
{date: parseDate('4-May-09'), close: 132.07},
{date: parseDate('1-May-09'), close: 127.24},
{date: parseDate('30-Apr-09'), close: 125.83},
{date: parseDate('29-Apr-09'), close: 125.14},
{date: parseDate('28-Apr-09'), close: 123.90},
{date: parseDate('27-Apr-09'), close: 124.73},
{date: parseDate('24-Apr-09'), close: 123.90},
{date: parseDate('23-Apr-09'), close: 125.40},
{date: parseDate('22-Apr-09'), close: 121.51},
{date: parseDate('21-Apr-09'), close: 121.76},
{date: parseDate('20-Apr-09'), close: 120.50},
{date: parseDate('17-Apr-09'), close: 123.42},
{date: parseDate('16-Apr-09'), close: 121.45},
{date: parseDate('15-Apr-09'), close: 117.64},
{date: parseDate('14-Apr-09'), close: 118.31},
{date: parseDate('13-Apr-09'), close: 120.22},
{date: parseDate('10-Apr-09'), close: 119.57},
{date: parseDate('9-Apr-09'), close: 119.57},
{date: parseDate('8-Apr-09'), close: 116.32},
{date: parseDate('7-Apr-09'), close: 115.00},
{date: parseDate('6-Apr-09'), close: 118.45},
{date: parseDate('3-Apr-09'), close: 115.99},
{date: parseDate('2-Apr-09'), close: 112.71},
{date: parseDate('1-Apr-09'), close: 108.69},
{date: parseDate('31-Mar-09'), close: 105.12},
{date: parseDate('30-Mar-09'), close: 104.49},
{date: parseDate('27-Mar-09'), close: 106.85},
{date: parseDate('26-Mar-09'), close: 109.87},
{date: parseDate('25-Mar-09'), close: 106.49},
{date: parseDate('24-Mar-09'), close: 106.50},
{date: parseDate('23-Mar-09'), close: 107.66},
{date: parseDate('20-Mar-09'), close: 101.59},
{date: parseDate('19-Mar-09'), close: 101.62},
{date: parseDate('18-Mar-09'), close: 101.52},
{date: parseDate('17-Mar-09'), close: 99.66},
{date: parseDate('16-Mar-09'), close: 95.42},
{date: parseDate('13-Mar-09'), close: 95.93},
{date: parseDate('12-Mar-09'), close: 96.35},
{date: parseDate('11-Mar-09'), close: 92.68},
{date: parseDate('10-Mar-09'), close: 88.63},
{date: parseDate('9-Mar-09'), close: 83.11},
{date: parseDate('6-Mar-09'), close: 85.30},
{date: parseDate('5-Mar-09'), close: 88.84},
{date: parseDate('4-Mar-09'), close: 91.17},
{date: parseDate('3-Mar-09'), close: 88.37},
{date: parseDate('2-Mar-09'), close: 87.94},
{date: parseDate('27-Feb-09'), close: 89.31},
{date: parseDate('26-Feb-09'), close: 89.19},
{date: parseDate('25-Feb-09'), close: 91.16},
{date: parseDate('24-Feb-09'), close: 90.25},
{date: parseDate('23-Feb-09'), close: 86.95},
{date: parseDate('20-Feb-09'), close: 91.20},
{date: parseDate('19-Feb-09'), close: 90.64},
{date: parseDate('18-Feb-09'), close: 94.37},
{date: parseDate('17-Feb-09'), close: 94.53},
{date: parseDate('13-Feb-09'), close: 99.16},
{date: parseDate('12-Feb-09'), close: 99.27},
{date: parseDate('11-Feb-09'), close: 96.82},
{date: parseDate('10-Feb-09'), close: 97.83},
{date: parseDate('9-Feb-09'), close: 102.51},
{date: parseDate('6-Feb-09'), close: 99.72},
{date: parseDate('5-Feb-09'), close: 96.46},
{date: parseDate('4-Feb-09'), close: 93.55},
{date: parseDate('3-Feb-09'), close: 92.98},
{date: parseDate('2-Feb-09'), close: 91.51},
{date: parseDate('30-Jan-09'), close: 90.13},
{date: parseDate('29-Jan-09'), close: 93.00},
{date: parseDate('28-Jan-09'), close: 94.20},
{date: parseDate('27-Jan-09'), close: 90.73},
{date: parseDate('26-Jan-09'), close: 89.64},
{date: parseDate('23-Jan-09'), close: 88.36},
{date: parseDate('22-Jan-09'), close: 88.36},
{date: parseDate('21-Jan-09'), close: 82.83},
{date: parseDate('20-Jan-09'), close: 78.20},
{date: parseDate('16-Jan-09'), close: 82.33},
{date: parseDate('15-Jan-09'), close: 83.38},
{date: parseDate('14-Jan-09'), close: 85.33},
{date: parseDate('13-Jan-09'), close: 87.71},
{date: parseDate('12-Jan-09'), close: 88.66},
{date: parseDate('9-Jan-09'), close: 90.58},
{date: parseDate('8-Jan-09'), close: 92.70},
{date: parseDate('7-Jan-09'), close: 91.01},
{date: parseDate('6-Jan-09'), close: 93.02},
{date: parseDate('5-Jan-09'), close: 94.58},
{date: parseDate('2-Jan-09'), close: 90.75},
{date: parseDate('1-Jan-09'), close: 85.35},
{date: parseDate('31-Dec-08'), close: 85.35},
{date: parseDate('30-Dec-08'), close: 86.29},
{date: parseDate('29-Dec-08'), close: 86.61},
{date: parseDate('26-Dec-08'), close: 85.81},
{date: parseDate('25-Dec-08'), close: 85.04},
{date: parseDate('24-Dec-08'), close: 85.04},
{date: parseDate('23-Dec-08'), close: 86.38},
{date: parseDate('22-Dec-08'), close: 85.74},
{date: parseDate('19-Dec-08'), close: 90.00},
{date: parseDate('18-Dec-08'), close: 89.43},
{date: parseDate('17-Dec-08'), close: 89.16},
{date: parseDate('16-Dec-08'), close: 95.43},
{date: parseDate('15-Dec-08'), close: 94.75},
{date: parseDate('12-Dec-08'), close: 98.27},
{date: parseDate('11-Dec-08'), close: 95.00},
{date: parseDate('10-Dec-08'), close: 98.21},
{date: parseDate('9-Dec-08'), close: 100.06},
{date: parseDate('8-Dec-08'), close: 99.72},
{date: parseDate('5-Dec-08'), close: 94.00},
{date: parseDate('4-Dec-08'), close: 91.41},
{date: parseDate('3-Dec-08'), close: 95.90},
{date: parseDate('2-Dec-08'), close: 92.47},
{date: parseDate('1-Dec-08'), close: 88.93},
{date: parseDate('28-Nov-08'), close: 92.67},
{date: parseDate('27-Nov-08'), close: 95.00},
{date: parseDate('26-Nov-08'), close: 95.00},
{date: parseDate('25-Nov-08'), close: 90.80},
{date: parseDate('24-Nov-08'), close: 92.95},
{date: parseDate('21-Nov-08'), close: 82.58},
{date: parseDate('20-Nov-08'), close: 80.49},
{date: parseDate('19-Nov-08'), close: 86.29},
{date: parseDate('18-Nov-08'), close: 89.91},
{date: parseDate('17-Nov-08'), close: 88.14},
{date: parseDate('14-Nov-08'), close: 90.24},
{date: parseDate('13-Nov-08'), close: 96.44},
{date: parseDate('12-Nov-08'), close: 90.12},
{date: parseDate('11-Nov-08'), close: 94.77},
{date: parseDate('10-Nov-08'), close: 95.88},
{date: parseDate('7-Nov-08'), close: 98.24},