forked from CalculusWithJulia/CalculusWithJulia.github.io
-
Notifications
You must be signed in to change notification settings - Fork 0
/
calculator.html
1007 lines (797 loc) · 115 KB
/
calculator.html
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
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link
href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css"
rel="stylesheet">
<style>
.julia {font-family: "Source Code Pro";
color:#0033CC;
}
body { padding-top: 60px; }
h5:before {content:"\2746\ ";}
h6:before {content:"\2742\ ";}
pre {display: block;}
</style>
<script src="http://code.jquery.com/jquery.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
<!-- .julia:before {content: "julia> "} -->
<style></style>
<script type="text/javascript"
src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
<script>
MathJax.Hub.Config({
tex2jax: {
inlineMath: [ ["\$","\$"], ["\\(","\\)"]]
},
displayAlign: "left",
displayIndent: "5%"
});
</script>
<script type="text/javascript">
$( document ).ready(function() {
$("h1").each(function(index) {
var title = $( this ).text()
$("#page_title").html("<strong>" + title + "</strong>");
document.title = title
});
$( "h2" ).each(function( index ) {
var nm = $( this ).text();
var id = $.trim(nm).replace(/ /g,'');
this.id = id
$("#page_dropdown").append("<li><a href='#" + id + "'>" + nm + "</a></li>");
});
$('[data-toggle="popover"]').popover();
});
</script>
</head>
<body data-spy="scroll" >
<nav class="navbar navbar-default navbar-fixed-top">
<div class="container-fluid">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="../toc.html">Calculus with Julia</a>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav">
<li><a href="#" id="page_title"></a></li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
Jump to... <span class="caret"></span></a>
<ul class="dropdown-menu" role="menu" id="page_dropdown"></ul>
</li>
</ul>
</div><!-- /.navbar-collapse -->
</div><!-- /.container-fluid -->
</nav>
<header>
</header>
<div class="container-fluid">
<div class="span10 offset1">
<h1>Replacing the calculator with a computer</h1><p>Let's consider a basic calculator with buttons to add, subtract, multiply, divide, and take square roots. Using such a simple thing is certainly familiar for any reader of this. <code>Julia</code> makes all these tasks just as easy, offering numerous conveniences along the way.</p><p>The following image is the calculator that Google presents upon searching for "calculator." </p><div><div class="well well-sm">
<figure>
<img src="data:image/gif;base64, iVBORw0KGgoAAAANSUhEUgAAAm0AAAHnCAYAAADqyGqdAAAYKWlDQ1BJQ0MgUHJvZmlsZQAAWIWVWQVYVNu33+ecKWKG7u6S7u4G6Va6m6FDBQQkFMRABAQFFRUVREkpUVCEi4CCikWICKJiICgg7wDqve++9//e9/b37TO/WXutdX57r11rBgAOVq/IyFCYFoCw8BiyrbEer7OLKy/+FYAAHhABO2Dy8omO1LW2tgD/sXwbQ7XR8lBy09d/1vtfC52vX7QPAJA1ir19o33CUHwDAAy7TyQ5BgDsECoXiI+J3MRfUcxIRgkCgCNs4oBtzLmJvbexzJaOva0+ig0AIFB7eZEDACBt+ueN8wlA/ZAi0Tb6cN+gcFQ1A8VaPoFevgCw30F1doSFRWziRRSLev/DT8B/8+n9x6eXV8AfvN2XrUIwCIqODPVK/H8Ox/9dwkJjf7+DH63UgWQT280+o+N2ISTCfBNTo7gt3HunFYrpUXwvyHdLfxOPB8aaOPzSX/CJ1kfHDDADAANfLwNzFKNjCTPHhjjo/sJyXuQtW1Qf3hkUY2r/C3uTI2x/+Yfj/KIN7X7jQD9Ti18+s8NDd/7G5f5BRqYoRmcafCMp0N5pmyd8Jy7IcSeKSSgeig6xM/+l/zIpUH/nbx1yrO0mZ0EUf/UnG9lu6yCsYdG/+4VI+XhtcWBFsU5MoL3Jti3i7BftbPGbm6+fgeE2B8TXL9zhF2cEnV16tr9ssyJDrX/pI+V+oca22+OM1EXH2f22HYlBJ9j2OCBTwV5m1tv8kW+RMdb229wwGGAB9IEB4AWxaPUGESAYBA0uNC2g37ZbjIAXIIMA4Ackf0l+WzhttYSjTzuQBN6jyA9E/7HT22r1A3GofP2PdPspCfy3WuO2LELAGxSHYdgxWhh1jAX61EGrHEYFo/rbjpfm91txhjgDnAnOCCf2h4cPyjoUrWQQ9D9lf1ti32CHsVPYUewE9ikwR1v90D5vMgz/0zNH8HrLy6/vHkHp5H8x5wWWYAK1M/rVO2/Ueu63DkYYZa2I0cNoovxR7hhmDDuQxCigPdHFaKN9U0Sl/2QY+4fF32P57/dt8vtnH3/JSeIkxV8svP/w1/+j9W8v+v8YI1/00/zfmkg2ch25i9xC+pA2pAnwIp1IMzKAtG/iPzPh9dZM+P022y1uIaifoN86MjUyczJr/+PtXr8YkLfiDWL8EmI2F4R+RGQiOSggMIZXF92R/XhNw32kdvDKycgqArC5v29vH19st/ZtiPnB37IIWQBUN/fj/X/LPD8A0BSMbmn0f8uEmwCgkQOg74RPLDluW4bZfGABJaBBVwYb4AYCQBTtkxxQAupABxgCM2AF7IELcEdHPRCEoazjQQpIA1kgDxwGx0EJqABV4AK4AupBE2gDt0Av6AdDYBQ8Q+fGDHgHFsE3sApBEB4iQgwQG8QDCUESkBykAmlBhpAFZAu5QJ5QABQOxUIp0H4oDzoClUBnoIvQNagFugX1QcPQU2gSmoM+Qz9gBKaGGWEuWBiWhlVgXdgctod3wwFwFJwEZ8D5cDFcCV+GG+FbcD88Ck/A7+AlBCBUCDPCh0giKog+YoW4Iv4IGdmL5CJFSCVyFWlFY/0QmUAWkO8YHIYBw4uRROenCcYB44OJwuzFHMSUYC5gGjF3MA8xk5hFzE8sEcuJlcCqYU2xztgAbDw2C1uEPY9twPagK2oG+w2HwzHjRHDK6Np0wQXjknEHcadwtbgu3DBuGreEx+PZ8BJ4TbwV3gsfg8/Cn8RfxnfiR/Az+BUCFYGHIEcwIrgSwgnphCLCJUIHYYQwS1iloKUQolCjsKLwpUikKKA4S9FK8YBihmKVko5ShFKT0p4ymDKNspjyKmUP5XPKL1RUVPxUqlQ2VEFUqVTFVHVU96gmqb5T01OLU+tT76KOpc6nrqbuon5K/YVIJAoTdYiuxBhiPvEi8TbxJXGFxECSIpmSfEn7SKWkRtII6QMNBY0QjS6NO00STRHNdZoHNAu0FLTCtPq0XrR7aUtpW2gf0y7RMdDJ0lnRhdEdpLtE10f3lh5PL0xvSO9Ln0FfRX+bfpoBYRBg0GfwYdjPcJahh2GGEccowmjKGMyYx3iFcZBxkYmeSYHJkSmBqZSpnWmCGWEWZjZlDmUuYK5nHmP+wcLFosvix5LDcpVlhGWZlYNVh9WPNZe1lnWU9QcbL5shWwhbIVsT2wt2DLs4uw17PHs5ew/7AgcjhzqHD0cuRz3HOCfMKc5py5nMWcU5wLnExc1lzBXJdZLrNtcCNzO3Dncw9zHuDu45HgYeLZ4gnmM8nTzzvEy8uryhvMW8d3gX+Tj5TPhi+c7wDfKt8ovwO/Cn89fyvxCgFFAR8Bc4JtAtsCjII2gpmCJYIzguRCGkIhQodELortCysIiwk/AB4SbhtyKsIqYiSSI1Is9FiaLaolGilaKPxHBiKmIhYqfEhsRhcUXxQPFS8QcSsISSRJDEKYnhHdgdqjvCd1TueCxJLakrGSdZIzkpxSxlIZUu1ST1QVpQ2lW6UPqu9E8ZRZlQmbMyz2TpZc1k02VbZT/Licv5yJXKPZInyhvJ75Nvlv+kIKHgp1Cu8ESRQdFS8YBit+K6krISWemq0pyyoLKncpnyYxVGFWuVgyr3VLGqeqr7VNtUv6spqcWo1at9VJdUD1G/pP5WQ0TDT+OsxrQmv6aX5hnNCS1eLU+t01oT2nzaXtqV2lM6Ajq+Oud1ZnXFdIN1L+t+0JPRI+s16C3rq+nv0e8yQAyMDXINBg3pDR0MSwxfGvEbBRjVGC0aKxonG3eZYE3MTQpNHptymfqYXjRdNFM222N2x5za3M68xHzKQtyCbNFqCVuaWR61fL5TaGf4ziYrYGVqddTqhbWIdZT1TRucjbVNqc0bW1nbFNu7dgx2HnaX7L7Z69kX2D9zEHWIdeh2pHHc5XjRcdnJwOmI04SztPMe534Xdpcgl2ZXvKuj63nXJTdDt+NuM7sUd2XtGtstsjthd587u3uoe7sHjYeXx3VPrKeT5yXPNS8rr0qvJW9T7zLvRR99nxM+73x1fI/5zvlp+h3xm/XX9D/i/zZAM+BowFygdmBR4EKQflBJ0Kdgk+CK4OUQq5DqkI1Qp9DaMEKYZ1hLOH14SPidCO6IhIjhSInIrMiJKLWo41GLZHPy+Wgoend0cwwjetUZiBWNzYydjNOKK41biXeMv55AlxCeMJAonpiTOJtklHQuGZPsk9ydwpeSljK5R3fPmb3QXu+93fsE9mXsm0k1Tr2QRpkWkvZXukz6kfSv+532t2ZwZaRmTGcaZ9ZkkbLIWY8PqB+oyMZkB2UP5sjnnMz5meubez9PJq8ob+2gz8H7h2QPFR/ayPfPHyxQKig/jDscfnisULvwwhG6I0lHpo9aHm08xnss99jX4x7H+4oUiipOUJ6IPTFRbFHcfFLw5OGTayWBJaOleqW1ZZxlOWXLp3xPjZTrlF+t4KrIq/hxOuj0kzPGZxorhSuLqnBVcVVvzjqevXtO5dzF8+zn886vV4dXT1ywvXDnovLFi5c4LxXUwDWxNXOXd10eumJwpfmq5NUztcy1eXWgLrZu/prntbF68/ru6yrXr94QulHWwNCQ2wg1JjYuNgU2TTS7NA+3mLV0t6q3NtyUulndxtdW2s7UXtBB2ZHRsdGZ1LnUFdm1cCvg1nS3R/ez2863H92xuTPYY95zr9eo9/Zd3bud9zTvtfWp9bXcV7nf1K/U3zigONDwl+JfDYNKg40PlB80D6kOtQ5rDHeMaI/cemjwsPeR6aP+0Z2jw2MOY08e73o88cT3ydunoU8/jceNrz5LfY59nvuC9kXRS86Xla/EXtVOKE20TxpMDkzZTT2b9pl+9zr69dpMxhvim6JZntmLb+Xets0ZzQ3Nu83PvIt8t7qQ9Z7ufdkH0Q83Pup8HFh0Xpz5RP608fngF7Yv1V8VvnYvWS+9/Bb2bXU5d4Vt5cJ3le93fzj9mF2NX8OvFa+Lrbf+NP/5fCNsYyPSi+y1dRVA0Ar7+wPwuRoAogsADGgeR0nazr9+FQTaTDsAmmdyozeDPDANiaPndhfMBsfA44gpchtjjHmEDcPR4brxKQQtCjzFC8oWqjLqAmI16TktLZ05fQ5DHxMd8y6Wy2wYdi+Odi5e7oM8K3y+/OOCO4X6RKRF88XeSZjuqJD8Jq0vc0h2SJ6ooKcYrVSm3KUyobquzqIhoamqZahtq+OjG62XoX/CoMaw0+ih8ZzJhhmT+Q4LfUu3nUFWcdaZNkdsK+xq7JvQVd/vNOL81OWV67Tb213vd791f+4x6NnpVetd7nPIN8nP398mQD1QMIgU9C34VUhv6MWwQ+GREXaRylHsUWvkl9FdMVWxmXH+8aYJEomUifNJA8l1KcV7MvbG74tKJaclpefuP5PRnvnqAEW2Rk5kblXe2CHKfI2CsMPlhYNH1o/tOO5WlHuisXiihKpUsczjVE55fcWzM5hKySrHs/vOXTg/XL1ykfeSRU3K5forn2rV6gqufbzuduNBo1XToxaN1pibF9ued1B1ync53orqzrxdeKeop6i38G72vf19B+4f6j80kPlXzKDTA6kHq0Ndw8kjSiPfHj5+1DJaMrbnsccTvadC4xTj758NP294UfJyzyvPCYNJsSnaqe/Tb16PzfS9uTV7823LXMv8uXf5C3Hv3T8YfpRYpF1c+jT+uePLma+ZS4HfzJelVxhWlr8//9G1WrmWse7302CDf2MDjT8OsKO3wwTQg97oLKDD0CtYHr17fUE8kDH01vQCG4kj4ZrwfgR2wjhFGWUAlR61JtGeFEiTSnua7hb9HCMTkwFzIkst60d2KQ4yZxs3FY8j7yW+DQFdwTShTuE1UWWxYPFTEv07PksxScvLmMi6yQXIRykkKu5RSlIOVnFTtVDTVJfR4Ndk0iJo/dB+rzOpO6p3X7/D4LphtVGxcbZJvGmgmYu5iYWKpchOJiuM1VfrKZth2y67Ovtyh2zHaCd3Z1MXeVcuN5zbB3Snb3ev8sj1jPCy91bwofaZ8m3xK/D3D9AIpAt8E3QzuDDEL1QtjCZsOrwpIjvSJUoCnReD0adjyLH6cUxxs/EtCQcT3ZNkkuHkxym1e/L2hu1zSDVIU0tX3a+ZYZLpnBV+4ED2uZzbuZN5Pw9x5qsWOB6OLjx85PLRvmNviuATnMVKJ21Kwkrzyi6fGir/dpr/jHXl/qqWs5/OS1VHXbhxcblG9XLKlY5aUKd7bX99zw1sg3FjdtPdFnyr4c30tvb2r53CXXa3krvLb9+8M9oz17t8D9PHcJ+vX3pA8y+LQdcHgUPxw1kjxx9WPqodbRvrezz2ZObp12fIc8YXQi9VXllMBExWTc29FplxfZM1e+nt3bnJ+ZUF0nuhD9of3RZTPw19kf96dOnLsu3KjR+sq5lrKz/jt+KPAXRAHOwEqaALvderQTFQEwzDlvBpeBVxR+5jNDCNWBVsN84aN41PJnAQ7lIcovSh0qDmoP5JnCL10zTQnqMrps9nyGbMZMpizmM5ylrBVsPezNHO2c7Vwd3J08F7k6+Bv0bglGCeUKzwLhEdUX4xIPZMvEkib4ejJK/kvFSDdKqMuSyz7KRcjXysgrYiheJDpVPKgSoKKiuqHWqZ6uYa9BrjmpVawdpy2ms6vbqFerv1xfWXDW4bFhi5GYsYfzbpMM01czTnM39n0WiZutPCitlq0rrGJtpW3Q62u29/xMHVkddx1umqc6yLuivs2udWsMtuN/Pup+6lHrs9uTxfeJ3y3u3D6TPuW+zn6M/g/yAgL9AwCKDzJS5ENmQhtDrMO5wz/HHE0cidUYSoW+SkaPnohZhzse5xLHEP4g8kaCesJNYlBSXzJj9NObbHfi/b3pl9zanH0hLT/ffvynDJdMvyOxCbnZlTlHs+r/Fg76HR/JmCr4XIEYaj/MdkjqsV6Z8wK7Y56VLiXRpRtu/U0fLLFf2nP1YKVSWeHTovUr33wtglyZqMy8+uytZm172sV7qed+NVo3zTgebnrfI3c9umOjQ6i7u+ddvfbugR6T17T7Kvpz/kL8HBhaG7I9ceXRyre3Jr/MUL8Epmsvp11mzufNMHmk/ZS6wrDWtOm/Hf/h1us+CUADg3DYDjGQBs3AColgBAqBQAEiMA1kQA7FUBrFcAoKcnAWR89c/5QQQiaAbtDw6gmWMfeAeRIFnIAUqCTkFt0DNoDc3vtGFvOAu+BD+AvyIciC4SiBxGWpApDBVGEeOJZmTNmNdYeqw2Nhx7BjuKo8Tp4hJw9bgFvCg+AF+NnyNIEWIJnRRUFK4UlykhSmfKeioSVTjVCLUK9WkigUgmviSZkVpoRGlKaIm0abTLdBFovuJD/4rBm2GWMYzxG1MaM4n5FIs0y21WN9YltkJ2WfaHHPGcXJxDXAe49XgAzy3eTD5Lfjb+twI3BQuFgoWNRIREqUWXxKbERyTu7GiVvC5VJ10rUy/bLNcl36/wUvGTMkaFSVVATVJdVkNGU1yLV5teB9b5qPtMr1O/0iDbMMLI2VjPRNqU24zGHDFfsVi0nN85YzVlPWnz2vad3Rf7dUcKJxZnERdVV0s3n13Ju4+716Hn2Htvko+8r4vfPv+qgJ7A6aD1EPpQvjDxcKkIyUixKH4yczRF9I+YuTj2eMuEjMTOpJ8phnuO7n2Xapl2c79CRkuW6YHpnAN5fAev5usUTBQWHnU+rnnC9GR8aU85x2lSJVz1/dzn6g8XF2oWrnysXbq2foPQyNEs3WrQ5tIR1BXXvfdOau+ee3H3Qwc8B/OGmkfmR/ke735a8ezNS9mJtKnRGYnZ7LnZBeMPlz7Rfkleer/i/2N2PXJr/6ABUsAGxIIS0AleQ1SQHOQGZaAZfz/0Ec3u1WBPOBuug58iCJqzuyCZyDXkFYaI7iohmFLMX2j+LYv1xZahcafBWeBycPfwlHhL/BH8OEGIQCZ0UzBThFL0UgpQplPOUJlRtVJLUFcQmYgHSThSOg2gSaNFaLPpSHQn6Pnpaxl0GEYZw5hwTJXMusxTLFmskqxjbGnsMuwTHEc5TbgwXN3c+3mMeKl5x/gq+aMFjAS5BVeExoSbRE6LnhArFM+XyN9xRLJE6rx0g8w92ZdyywpMimpKPsr5Ku2qH9WFNDw0S7We6XDr+urV6q8aGhrlGfebYs2Uzb0tsizP77xlNW69aIuxY7YXd9BxdHGKdi5wueo66PZpN7O7poe/Z6FXh/cHXwE/Z/+CgN7A9WCFkKDQ8rDhCDhSLsqTnB99M+ZtHE28coJnYl5Sc/LsHpa9pvv2pNanze8XyNidWZL1JJslxyW3PO/1Icn8hILeQtYjEUcHjssUlRaTTuaUUpcdLxepuHsmqIr6bP151wuYi3U1Hldor96uS6iXvv62obopqEWy9XNba0d6l0U3y+3pnrq7KX1m/WwDQ4MOD6aHkx5yPxocy3tiNy78HHox9ap3sma6YIY8azfHMV+xIPL+2ketxcHPHl8+LqUu06yc/MG9WrHO/rNgK/4sQBdEggrwAGygsfeHTkI90BeYH7aFM+AmeAHhQ5zR9d6HQTBamCRME2YJq4iNw7bjsDgrXCluHq+OP4x/SzAgnKUgUERSPKe0oOyiUkYjrUc9QHQhzpP20jDR1NFa0X6iK6LXop9jOMVox0Rkus+cw2LBSs86znaOncyhy8nA+Y6rl/ssTxZvCJ89v66AnKCIEI8whwi7KK+YhLiqhPkOL8kUqRLpdpnXciR5DQWy4lWljyqKqmlqIxqimhlab3QsdJv0JQzOGvEZV5mKmTVYGFg+sYq0obats3dD12u7S5ybwq4V9y7PQ97uvkr+1AFPg0pCTEPnwhMj1qJiyDMx1rHX4+kSyImPktVSzuyl2peQOpvuvH8gUy+rNVshpzFP82BfvkvBu8K9R+mOVRZJn2g5qVXSWaZxqrECe9rizPHKV2fFz8Wf77nAdNH/Uutl0hXfq211TNci6/tviKKZz/tmm5amm9xtWe0fOp26bnVL3D5+Z6M3+O6jPp37NQPMf0UP3h/iGA4cufxwflRgzOlx+pMLT++Pzzxbe0H7kueVxITipNqU1rTOa50ZrTdqs8pvZefE5/nfkd7NLbS8j/+g+GHh47lFl0+Un9o++3+h/dL8ddcSWKr8pvdtannfCudKy3eH74s/Dq6KrHavua+trB/9Kf2zb8N3M/7R/vJyW8cHRK0HAPblxsYXYTSpOALAeuHGxmrlxsZ6FZpsPAegK3T7v52ts4YWgLKq//Qfy38BRhrOpjYyZqIAAAGdaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA1LjQuMCI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjYyMTwvZXhpZjpQaXhlbFhEaW1lbnNpb24+CiAgICAgICAgIDxleGlmOlBpeGVsWURpbWVuc2lvbj40ODc8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KdPqkhQAAQABJREFUeAHsnQtclFX+/z/IKIOCgve7hgTeVi0sKdm0jTYr+qlblrpdtG3bbru1W/vP3W232q0td6vVti2zi2blJa2opaSNCgsTSgpUEAgQBQUvCCjKIIP8v+c8M8MwDDIqwgCf85J5nuec85zzPe9znvN8n++56FNRUVEHOhIgARIgARIgARIgAa8m0MWrpaNwJEACJEACJEACJEACmgCVNjYEEiABEiABEiABEmgHBKi0tYNKoogkQAIkQAIkQAIkQKWNbYAESIAESIAESIAE2gEBKm3toJIoIgmQAAmQAAmQAAlQaWMbIAESIAESIAESIIF2QIBKWzuoJIpIAiRAAiRAAiRAAqbmEJSUlKC4uLi5aAwnARIgARIgARIggUYEHvzf+Y38OoJHSH8fvLqwR6sWpVmlTUkzbdq0VhWKmZEACZAACZAACbR/Ajk5OboQQwcEy1Ht5e/TYY75+8t02Vrzh8OjrUmbeZEACZAACZBAJyRQV2f850sd7djaVUmlrbWJMz8SIAESIAES6GQEtH1NFLeOdGyLKqTS1hbUmScJkAAJkAAJdCICdXUndWk72rG1q9CjOW2tLRTzIwESIAESIAES6EAEDBObbUqbDJW24LWPsuApE5QagrUdT7Zg+jpdd+m1QfVQaWsD6MySBEiABEiABNoTgcTERHzwwQda5JkzZ2L69OmnJb6ay+ZO71F61tn6K0FOiiGvQTri1+C6BfJxTe+0ALRQZK8YHi1IfA0LHvgPCixC9SycpSAJD8z9DRILjnuYSjUKClp/9YeHwjEaCZAACZAACbQZAfuiAbUCdMOGDejevbv+U+f2VaH2OM0JqRUeWT16Lo6Dg30QMdIXF4zsoo+hA7sYBrdzlF+dLd3mynwuwr1CabMUb8EbS9ei/GxLaDmApev+jYJqz5S/rDXzER6+CpazzZf3kwAJkAAJkEAHI2BXyNLS0mSEsA733nuv/lPnyk85e5zmiq7nssmruSWPJtEAo8eZ8JeZPfDorO54bJZxXDynB267rBt6+fu0aH5qx5IG8jdX6HMQfm6GRy2iBpnNpyWuj88AuLtDKVTu/E8rcRVZWfHMSsdv6HzGBTX0sF81Ed8ezCMJkAAJkAAJdGQCPj7170yr1Yo+ffro4qpzu3OOY/dzfzRsbLZBS4ly9teXjTbhniv8YZWh0Q++r8bewycRIO/5K8d1w+wL/RDo54OXPrOgplYZcs4+P1HZXNJxX9Jz6duClrZqpK39NyZJJfv4+8PH58dYFp/hkD0r/lVMV2G2v0lzf4/kEvfDmJaS7VhyW7SO6y/xp8vQaZYoUZaCjyX9H2Ft9jFHupaC9+Hre68Od3jaT8p/wLLbrjTy9O8ixx9h0dqt2rKWteYejJn/Hqq/X4AA04PG0KxY6mKf+mV9/Ek3IzbrsC21asRKWotWLsNcH18dJ9bjYVi7QDySAAmQAAmQQPsg4GpFq6qqgvpzdq5xnMOcz1t61Wj/nsAtU/1RVVOHFz87jle/qEL8thNYn2LBU3HHUHCoFpeP6YapYYZtygfnZvWqcxlb47zFlLaC9x/DBfN+AzzwCr7/Phkv3VqDu68erxWs8i0vYczVvwTufwVbvv8eX6z5J7DuGfz4txsaD01afsCiQRfit6v2Y8UXqfh+4yvYtPQ+/Gjhm7CIBS8dOxreI8rcyZPbGvppckewJHgC7l5lwYqNm0WmTXjq1u5YPO8ixIrSN/CCBfjXrVPgM/FevBV3PYJQjbW3RWD2H1/Fw2s+k/if4P66WMwe08ehJFosWVi88G5k3fYgbpt2H0YGtYgNsDXqmXmQAAmQAAmQwFkRsBtdziQRsb/oodSzPXaxpdOvZxf0CfDBV9kn8HnGCTGkAL7yp8J3HajFupQq+IqGM3qwr87XVwKUgnm2+TvffyYczvaeFhoePYL4R5fBNPcNJP/rVj2cOenlN5G1aqxM9C9GuV833LRgOZYtuUOUI3GTJuHpLS9j5rbG4luykrAUVqxI24IFEwMkwoXYuToX4/+xG/urxza+webTSH2yVMB86yys+O0LWDDJMOlOevzv+MOqaK3gBY2+GLNmjMei7RfJ8VIg6z3Me6cIt63djqdvGq9TXZKSjHL/ibhl5WbMfWqa9us6/WUkr7yzZYZsmywNA0iABEiABEigbQl06WLYdezWNPtRSWU/t8dpTtK6kzK0KBrP2R5P2tIJ8pcVo5JkcXmtzlopbFbloRUzH/xQXKsHM9W1cnZ5zzb/BvfrlFv3p2WUNst+JG4/guv/dGG9MmM+H0vqamylCcXKkdsQu2wpkpOTkfjGWrGYQZS8xoUt2LlZ6vV6RIbX/yeso+c9Des8mZYmipXHzjwMd72xEmmJH2LJoq+RvGUF1n1Z0eB2CxqvHF0wzUkxlDLMuHEwVicXiKI3TVpHNS79xSX1ZWyQGi9IgARIgARIoGMQqK2tlVGsk+jatSuUYqasbN26ddOFU+d2Za2mpkaf+/r6nrrgholKK25akTrDa5W3UsAqquq0Va1PoCiWcm2Vjdm6iJp20hY+pI9MYxKJlIVN56eulAJ3hvm6ve/UJT4noS02POpWOhnOVAsJst7/A/zPm4h5d7+K8oEyr2zj51jxmxB0KXF7l1tPNTTqzllkHppbJ8OsD/gE4ILLb8SKgsOYNO9FfLFxlduoDTwbmezU9EU3ng1u4gUJkAAJkAAJdBwCf/zjH/H666/rApllYaFSyrKzs/WfOld+yq1cuRIqbnOupea0nbT9zwqllVZUyk4R08K74aIQk+hjJ7XlTR379fTBvClqvhuwrdAwHtWqjdzEtZQc9nSaK3dLh7eMpU0qbyR88Vx8JiwytGhU5UEs8h+C+GVf4IHVr8I0aTEOfv//jOFRmT+28qkjxs7FLiUaODJCoN6DrJIqjB7ZXYeWfPFXDPrJenxftlrZu2Rum2HuVIEFX3wsCvAAHc/5x1KwVQ+z/iv5IB6Y0lcHWbLWOEdxex6bko/pV4Xawg6g4J2DOPlAsNu49CQBEiABEiCBjkhAKWV5eXnyPq7DJZdcgm+++cahxPXu3Vv7qbDc3FyHAncqDsrqZd/frCWO+2SN4NtfH8evLu+BB2YE4N1vj2PXwVoEde+CmRFmjOpvwt6ykzhy/KTOV1mo1FlLynGq8p6rsBaytA3DgtW3omblTbhrWQIKSnJkFeaDWIwaUZhGI2hkD9Smf4PEtHyUS9jap36GhV8eEoDlDRYQKFta0AU/xk1i5PxZyC+RmLULBWnvYu5PHkXX6b/GaGlEAyXs3gWPSlgWktc+gwt+91/3bMy9tH/ylk0oKC9HVvIGzBgzX/tZqmxWO4ssP/j+VayM/VpmK0bjpR8FYemM87EsMRMlBduw7KZL8AdRMP+54FLa2txTpi8JkAAJkEAHJHDxxRejsrISCQkJ6Nu3L+68805MmDBB/6lz5ffpp5/i6NGjUHGbc445ZWqIUlxLXP9vWzXeSDomFrY6LLysB/56fU/87uoAjOxrwnaxsA0J7oLfXxuACcNNqJX5bvZFDC2Vvy5IK/+0jKVNhB497z/4otyEy+++Em/cbZTiqTVb9SIAyx9exY2rrsLsC97VAT43/Q0rXhqKhXe/grSS+0QRU+PkfoZiZB6Plbs2wTzzKlmuu1rH7zL9r0h9/xbR5v3x9Bf/xrrL75Ww5yQsCk89dYuYZo2JiDqy/ChLn3nkFdj491tx9W9vwLrfGiFPrViBSf+6D79el4q7Jv1UVpBeIQGv4+7ZUxGUVYm75EsCv7oFd18+DkYRxuOlL/6HuyaqhQzVRiL8JQESIAESIIEOTuDyyy/Hli1b8OGHH+r92S688EL88peyC4TNffvttzpMWd1UXI+cTWETjc2IfpbHatnuY32yBTtEQVOKmnJqytr+iloUiNXtnisDMGVUN9wbHYDnPj6CbFmcoN1Z5uuQ30itVX99Kioq6sca3WRdUlKCsLAwNyFNeNnmsWklrMFmttWOYU37WHgTKTi87fPYGseXtMplrxixppkb5OG4tf7ELo9Y6dzPTFNydWuQjj1f8WzinvrkeUYCJEACJEACHZGAGh5dvnw5RE/AmDFjEBoaCrVAQfmr+W29evXSFrhRo0Y1WXz1313NfyMAA4K6uZ3Lr/Sns1kbICOeauK51qNc0wmQFaa/+Wmg7NXmhwNHTuKfHx1BZpH1rPJzlnd/uWw38rDa5aL1XItZ2hwiN6noiCXNvdbkuNX1pLGyZo8haQX52S9OfWxSHvttjeVqOl/7PTySAAmQAAmQQMcmoJSx+++/X/+/o/n5+cjMzNQFVv8H6dixY3HDDTdg8ODBHkEwFCq1T5p9v7SWO0pKslDClp6MgaptQVQ+lbLCdEn8UT00etloM+66IgB/3lCBimMnW0QOjwrewpFaXmlrYQGZHAmQAAmQAAmQQOsTUPPOlFL2m9/8BgcOHMCzzz6rhXjwwQfRv39/fa7iKAWpOWestlSKlVrF2bJHtbzgZK2RrlpuoE1vcpT/gwnHq0/i+U+O4qjlpMxx66q3MVGytowcKqXWdVTaWpc3cyMBEiABEiCBdkHA2SqmlDSTyVAZTldhcxRWjy3KVSsd9WIH0SerZGuQFz+tlHwlb6VfOo5qbPYs5JFbW9tRaWtt4syPBEiABEiABNoJAbvipsR1XfHpiYXNXkxtkdNpnJ2e1Er6nkd6pb1srXmk0taatJkXCZAACZAACbQzAnbl7O9///sZS24YuNRAppqB1jGOZwzjLG5soX3azkIC3koCJEACJEACJNChCbha6TrKdWtXGpW21ibO/EiABEiABEigsxE4m7lj3jQm6lyONqhDj4ZH1T4rdCRAAiRAAiRAAiRwJgQOVBj/96exCkCloFYDKNd+j+f1Uxpc67pmN9dtXXGYGwmQAAmQAAmQAAmQgDsCHB51R4V+JEACJEACJEACJOBlBKi0eVmFUBwSIAESIAESIAEScEeASps7KvQjARIgARIgARIgAS8jQKXNyyqE4pAACZAACZAACZCAOwJU2txRoR8JkAAJkAAJkAAJeBkBKm1eViEUhwRIgARIgARIgATcEaDS5o4K/UiABEiABEiABEjAywhQafOyCqE4JEACJEACJEACJOCOAJU2d1ToRwIkQAIkQAIkQAJeRoBKm5dVCMUhARIgARIgARIgAXcEqLS5o0I/EiABEiABEiABEvAyAqbKykovE4nikAAJkAAJkAAJkAAJuBLwqRPn6slrEiABEiABEiABEiAB7yLA4VHvqg9KQwIkQAIkQAIkQAJuCVBpc4uFniRAAiRAAiRAAiTgXQSotHlXfVAaEiABEiABEiABEnBLgEqbWyz0JAESIAESIAESIAHvIkClzbvqg9KQAAmQAAmQAAmQgFsCVNrcYqEnCZAACZAACZAACXgXASpt3lUflIYESIAESIAESIAE3BKg0uYWCz1JgARIgARIgARIwLsIUGnzrvqgNCRAAiRAAiRAAiTglgCVNrdY6EkCJEACJEACJEAC3kWASpt31QelIQESIAESIAESIAG3BKi0ucVCTxIgARIgARIgARLwLgJU2ryrPigNCZAACZAACZAACbglQKXNLRZ6kgAJkAAJkAAJkIB3EaDS5l31QWlIgARIgARIgARIwC0BKm1usdCTBEiABEiABEiABLyLAJW2Fq6PmhoLqqqqUNPC6TI5EiABEiCB1iPAvrz1WDMnzwmYPI/KmKcikLHxLby/eQcqrfWxAgaNxuxbb8W4YEM3zn7/P1iRcgK3PPoAxvn71EdskzML/rv4r9iMC/HowzfAv01kaPlMy5LXYHFsOkzBk/GwlCuw5bPwzhRr8rD0z6+g2DwK9zz2Swx3kXJP0gq8GFcibW+RF7Q9F+HO0WVZ6no8uz4dVvhi2j1/xNXD/RrllPz6U4jNr4ApcDL+1IGeg0YFFQ/ycEelsZ8nfXnju1rPpyo7Do+vSMKUhY9gdnjAaWRsRfrGTxE4fQZCWvD9413vtdPA0U6jtoilrfzTF7Hrmpny9wD2l510oCj/6D/aP3/m5Sj4y0ZUO0IOYM/8n6CxvyNCo5ND7zyB/GumY9evP4ClUWjbeqhG++YmQ2ELHnY+xo4NQ7Cow5XFWXhz8ZNIP1pnCGitlKP68w5nqRK5jlbJS62jOAsSN23XhbGWbUXinvoW11FK2HQ5rDiqAi15eH1VSqNoR4sPiF/HqelGBXTjsS8rT0qsylyN1KQdjWOIorspp0JjsVZ1fDbk0bgJuPp43Je73tiq10ZbrbKeXpvNXv8s1mxKNvqJlpTXy95rLVk0b0yrRSxt3Qb2QR2k80MaqvOPABFBcn4CxzfGir8MFMq/utTNoq5cDf2tu38PrOWGcucTEW74NUfnmE3ZKTvRXMxWDq9ASmqR5NkLcx5+GBE2q5oSInXV01ifWY7/fpaJibPG1cvVItTrkzuzMzPmPPYUZsnNXc8sAe+760AaUtVHg0kAS4eWkvAtrrs9yvvkPEcS2evRkvk+1mePwxynr3CvaHLnqNxNJWvqZicin0qZ32EfIjDYKXLZtu9QZr/uBIDIw17ZTR3PoC9vKqlW8O/a1XxauXQ1qefBBHMLWtlOSwBGbhECLdJVdT9vDNRgn7InnUwuEKVtkuhsB3Aiv35mV11dEqoLq4Bh/qjM+9YhvOlHgxznnp609cBiAzlrDqHYKiU3DUSIk8Km4kRcF42EzFgE+3VzusWKnJSPkJCwGcWWOpjMQRLvZsyOGOqIU7XnW6x5/3/IKVa2ExMCho3GnPnzEW5Lf0/SaqzafBjhYX2Qn5qOMvngMgeHYsa8eYgc3kPusSDp9VewuaonwoJPIHWbsjiYEBxyAebd8jMM1w+tLQ4m4De3T4NpzxY8JxaakOmTUbX5f8gU5dhk6oGQiGtxy+wLHYpdzYEdWLPmAy2bVdTtsKlXILg4DWWDonH7dWMdZWiLk4xNm7RdZcotC2Fd8ypSc75CRtXU+uHAmt1Y9dxaHB10HoItu7Etv1TwmhEWcQ3mzb7YGCL2JI4ULiNpHeISd6KsUuy+ksawsIsw59Zr0b8tCu4mz9QVb2LK03c3GiZ1jnog/X/Szr7EQavqBqwYNPZK3Dp/GgKFwevPvYWqYdNx7/ypxi1Hs7D8xXdR4+q3dAMCon+B+ZGDvJuJNQ8puyyYfV79iy4j2Y31TUpbtS8N69XzV3hYtyeTWZ6DiVc52kiNPCsvrvoSweEhsGRvQ35ljTSBAYiYMRuzI0cavOTXq9vIafBAVRHeX/OePE/7NA9zwBBEz5mPqPA+uqyKx3NrMjB1am8kJmSKnwnTb/8toob7ynDcWvx3cxYsuon5YeyMeZgfFepg5FUnp92XH8LGVWuwOXO/8Z0obWDG/FsRFdLLUax9qR/j/YTvUVx2VNiJwhTQFxOjZznayZ6kVViT0wtTgw8iIaNE7huI2x/+BYZL//T++g+Rnr8PFt2/jxTm8xqkXZbxOVZv3Iptxcclf7P01ddIX32xo692CCEn+p2RqqztwPrFizF4ws9w+9Xno7l3jYrvSRwVz+7KMr7G6rgvHGUOlvfXjDlzMLF/4+kJ9nt49JxAiwyPIiAEpiAjqbrtP+jhy+r8DNQPlBoC1XxXrE+Of2cobT4+UfAbanSilsI07LnvFmMIVIZady/+EOWVSg10cXWFOPzxeuyaOUvHLVj0Bg6WuYnncts5u+w6AmMDpOzWbCx+5Gm8nyTlOHDEWIig5lU9/QTulIfDcKrnqkZKXBKKxTI3bFAgrJZypKx/Af+1DeXp+QryclQKW4AMtYYM6obKwh1YsfhxJNuGnquKi1FZVoTUlHQc7Xc+JojyZinLReyL/3DEKd5XjLLCnUgRhS0wbAzCBnVBWf63ePHJlQ7rQvGefSjbU6w7YmvVflFASpAaFycKmw8GDestxqpjomC+g+VJhYb4Vdl4Tl7mmSKbSRSfkEG+yNn8MVKkY8lJTW15s7uRq4e/+7E5VdlNhmBK+ChM0UpwBRITd9Xfb7VgT1kZCsXqsk3mMYVMGItBUh85Ke9h8QrbkKIHcfYlvYI3475HmcUXYWMlDVO1pPkVnluaWJ9XG5ypT6TgKTciZqya5yKKl71MbmTZJ3PcnlvzuXw4AINChmOQuRaF2zbiycdW4EDXPjBXVcr1N8i33Xsg41vky4unUKxTe+x+6VtEYamE1b8rvJWJEnXs1IlQvUz6lgyb5HKQtpxYWC1d1/kIrveViV9bsfj5tcgUhc087DyEhYhtzqKeg/ewPN6goZ6V4soyZEqbz7f0xtgJoyTOfqTELsOq7w7p1DoMj6pcLH38BaSIwobgoZqHpXIv4lb8E6uSjf5c9x3S/8TFfYNKS6X8lcuHQA2Slj8hw3Fq2ogfQkJGwCz9yba4V/HYqs3OxL3n/LT68r1Y/siz2JS5F9aAARge0h9WxWX5Uw4uZclv4vn1X6KwrAqDwsKkv/SHRfpY1U4c/b305WU5WxCXkithlfJ3UPrjvfjPk8s0c2ugYq769wJJ+59IOlD/Vs1P+VIUtloMGyaGD+m3VBt90dZGXaFaj9aowQftrDUyJUYMDR69a9T8uWbeRw3y2peMxW9+aCvzWP3+KpP315rnljv6jQbxeXHaBJQW0QIuAN0uHYmaj6VT27MZxzAH2PKFTtcn+AL4BOzGSekETyZkAzOH4sTXBUaeIVMR2M0HlvwvsO++xx1yqKHW2k3PoWzT56h551/oF1BvW6sr+xBVLzii4uS2Faj8+Teoe+cF9HeKVx/jXJ+ZcN39t2LP4jdQaBUFLG4tjNe/smyNQfSMGEQMr//yUtIEjL0Oj9xqWDCMCeLZOCpzy9Q4ctwao0OLmPcQ5kzsq4XP3/g6lm/KQezqLxF573Ttp37MYTF4zDb8Nz1JOoi4DMSt/xqRd06WbzrDhcXci9ujhumLpNefQFxONt6Xzvb2yGD5OhOu8iDb4+pIAePwu0du0Rajmvx4/Hl5Ig5K3YmJFBnvva8VvmFTb8e914Xp6MYkVKXUdW2Yjg5tvZ+qjK+0ghEw4VJjCGx6FMyb16Bw8yaUXR1ivJiloGqAQA9l/06GsvurD439eP2RJcjJ/q90iBchSt7gzcUJLlY8/DDr4UcQGajaZgVWPfY0Mg/ulI5p+imtWxL5nLqaWj9EyeKXzYteRFm2DJNmyDDpONfJynvxfpw8ixjQYFFM8qpnEJuZjU2i20RO7IdtKfuRLtapELFO5Yjyb7i9SJcPjOEyqT81NVenMWVsH5TFei+TwLCLMS59u1icv8G++cYQ6YF0UTCkxU6begFy8n+wlQ3ITvhMf3SGxNyPO6PkZaicKHKPLN6AMlFaGzinZwXRyXjsuVhkyjNy4MJfosyL28jp8Mh4b4N8YIq+FnEjHp5zoS5+VX4CnlyegMzYWOyJvBv97FDM4fjNYwvR72i5zJVNxp/zLfJxF4mH759lWxB0CKufeA7bMj8XC/il9RZw2/2ZmZn49NNP7anp45gxY/DTn/60gd+5u/C8L9+3MQ75ovgMmnIL7p9tm/pyQBT+5zYgM34TqiJnITHesDrG/O6viNJ9jTQl20Ipo79Xliej91XvhIflnWCRNnYw7hWoHjVArGGPzL9YF1cpgItjMxD/2XZEGNUgLwCDtxryr9mTIMpVAo4edmmj+m4g5OrbcLvlOSxPOYZ5j/wZ4dL618sHmnJNv2smn9b7SKVVVaashUDYjQ/h9gvVNCmZJvTGE1i/8xAybP2G9uTPGRNQb60WcT0uMRpXnZrXVliMavkKVc7n0nkIvOESIw+x9JRX7nfMZ+tyWZi8+ipx8JG/GXG7RaH7yx+i3+K/2IZb03Bsdbpxr9Nvl2mL0Ped99Bj5k+0bx0ycHyD3SbgFLG1TgNH494nnsJvFt6IKRPCERygXvtWsWxtx/oXn8LqVOOLVGtI8pBGX2fjIbEG9TO6vPyde6XF70a2DJkiIAKzbAqbKkLI1f+HMKVgHSyBUu2MdPxw3RxD8VM+g6P+D2MljnXfrnqLlykcs20Km4oTNXuG7iL27DLM5MrP1YVdc7VjiK+rWPrqrRAWZP5QIdGH4DqbwqbuDZ99nVir2t6lJm7XQgwfNwQ1YiWqMg3AOJsFNDHbNh9SYtTInyn8JzaFTd0yALN1p2vFnmKZjymuuThGN1uN2Ccfw/LVMmyUUY7Zf3oKTz9x6uFInfg5/rHWqM/p4bhzzkSdU+qbK2Qulyii0qzsriY/Tb8UZKxGPpgyRflKRWq6aGq2uS7ZmXkImWLcn5O6R247hEx5Adtd/rb9crpHf+Vj2AUI7+pje/V4KZOuAzF1whCRebceIlXPT8qmnaohICqsV4OFTeFzHsSjf/oTbpF5uQf2FSI7PQX/3fi9LrrJiaHyCLuy/llB/0hcFybKsbUIxbLAx6vbiMc8Km3PfC/MmnWBZqB+/EOiEaPKKu2iTC1msrmQ6Bn6g6lrYBDyU7ZpX1NgV+zJSNdtLD1jv+2D6Ji0p2P22xzHsWK1vvLKKx3Xrauw2bL1qC+3yAjGbn1DoPk4MtK/k/KlI+Ogbb61ZRfyq/ykT/irrEiWj8PA49i3ZxfSkzdj47ZdjvIZJ+p5leFkeSeot0ZgcCDKjhyXsx64bvZFRhT5DY6cg3vuvAcPzprg8Au7+jrHHM2uMvKhVspX5ufY3hGOaI6TGrF+KmdVdebJu8aTOI7UbSdGw0fOO89g6fK3kZS6A8N+9v/w9NOPu1297Xo7r5snYEPcfMTmYgSEXIoDWKuj1Wz8EnW2+WxdIsPQZ+hxsUV8JJPesnD0sy2OYVNfNZ+tUobnbIsSMOwimLsdQ13/UJiGmVBTaEWdfPYfv1PmyNmcD8ahx2+vQk+x0PX81e9Q+PEXqKmpQ13yd7AsGKWHQexxW+dokc79MPz7Dcbg8AtlCbbxGVRTdVCsbjLvSRYpbHs/AddF3GITxw+BZmWdMZyxuk3OT8jDawrQD655VJitc7PHCkCwukdM54b6p6qt1h5oO9rStTpZvMRk3sAFBOsH21D8GoQ4LgL91ECS3Vm1AmO/0pa5gIH1X9Y6YDBCRDkqVn1PW7mj6XqoS2WfuWYJ/uwiR2rCVqmX6dpXdYyVx43Oyx4tIMD4IrS9aTX7U8UJn3UbIvYtR6rMJclXQ4jyp9ywKfNx7+z6TtWeflscgyPmISY5C3GFe/H66m8wO1C9ZJU1TDrtGlv5ZaXp+jftFjQdpH8saiXl4IkIw6fIycpA2YFB2oo5YdYNsMa9i8y8fBzIr9RW17DJ4/U93sykxuqLwT+eDHxdKC/OPJnX1lUvWAmInALRKRq0caAU8ateQ0qhocDXU2l8VqVn8db7BwR3l4tjuhl1DB4mwxpvPg/DRTF3dsG6rLILgCgqhs1dFAtROOzOv5/63DsAi8wrfTPH7lt/bGrlo1LclCsqKmpFC5tdLk/78nky+iMNp0ymVmySqSz22x1Hi3wWSLsqy8CqF9ehUH2In9L5Gf27jlOJ/EKltJ1EwwXNZhmCHa5j2PvvwICGfbUOtNbqvPX5qX5kDpzqC0/5rjH5NR/HJQ//8BjMiSjB+tQCFIvRIk7+lDMPi8T9985yMgK43MhLjwm0mNKG4GEwyYNtFQWqNvYlLYCPfAf4hfSUp3ms7JSk1Ix9qHn5RVvYJAnzt50bixjq8v6Fwwu1V/2P6wdZt8nwF4XNcN3QZYCkXCSPSL0xpf7eVjiryojDc29uxaDp9+D+GcZDpbLt6t8PUXPuw8HsPyKlsgh7HF/fpxBKJh2o16nlcJlLJKs8wPLgm/tpq5asvZVwP5idn1nx03EkBRWqnTm4oRIr803sD7w9iuvR6W6XIFEvlQwW+bqWEKPmVJT92FN5UmRzid6Kl3uS1MpkMVDKQovpY3vJULPRSQbKCzRx01aZE/gVUo9OQ4TIqPiae9e/XJSYFktDKs3GEUvFnPv/gllHDyInIwfp277WixoKU1Yjacp4RA1uMQO2Eu+MXdSdtyJV7d227T28qVNRi1TE2RqIadgMPHx7hEyHMTxUZ3D0qMxXDB4oZ90QMSYAOTuzsDG+SK79MC5C4qbLnMddMgdno6LUAxET+shRnDczUZN5gsdhgjkW27K/QXKSr7auxVwaKg3ihwYfSMmvvyQKmwzrqYU90RdhcL9hGBZ8AIufXGkfN1el1S44sP4pUB4WbSGx4e0gPHTLsBzEQSlffe8mZTyurEqyQKNfN2V01c6576jSw8PyIRNzB26XUQOL6ju0k61pZH5V8CDbh5LN1/mgFDe78ubsf67PPe/La2QetWr/Mrx+pyy4kAVijieophJHZQ7fIP9SvPn4Wm3RDg67CNER49Bv+HAE7/sfnnwzWdpcU69eM8xKmxK2gQ36VAuyxZpXaR4qIyoGCWfeho/8SlhTKTviqBNP3jWiAKpSNv8+ck7ZhIg5dyFiliifOTlihRQrvkytsBQmY3VSBO51GvlxvovnnhNowbdLMPwu6d8w525Xoode8dgf3SL6NQwbfrmezyY7gzi+V31CFqDH355D90VPo/vvHoH/755C979dLq8PJ3diK6pO2DsAuVcpDDZXf2b3OfdH/2BjALE48W0k76tukGFV/hZkKPlMQ20rNhsEN77wDzKGJgu/QLLThNOq7ERsa/C1ph7LY9icUuRIoyojwYgjLxmHSmLZgdR99VQy4hP0y6qfLDI4fRcgc5vUS3834pJ2OW7fk/Q/Y6jNo57CcVsLnshig5RCSc8P0fNuRFTUDFx99dX6L+rqG3CdKB6KVcKmH3Seqj+0yOomNWRoOAsS4tXwlwnDg+UDQ9yp43SVuSB/wKJF/0JhYD+Mi5yK+Xf+HgsjjHaw52DzFhqdSWv8dB2F2+dFOOVkVJK/TL5XVKzFP6DKP1AsJMH672hGLJ5/8UUs/8RgFRaprGgVMgdpr2i6oQiRj7KQiaO0X46yBgT/CGNtK5G9mkmdeqUGIFItTrFkIzYuU8ozTlazuXZ/8qKxLQia/btfICpiIkKG90Zlznb9UWAVhdbZZSZtrb+UhQ3xO9WnQ1/086/27jbiMQ8zBvVXve9eJNgWHegCS1njtpfXl93N2fCxI7TvwZwS+Mtwqb2NZaxfhhdffB7xYqn1Nud5X+6PsPNUX2FF8b4TMqRpPD/Bwcex/vnn8eLzLyOn5pjxgWyeJB9G1yNi4mjpX7rLgq1cXWz1ceTemTAurK8ENezfsW8zVqyXOaqJxrPp/l4PfVU34Mm7xpM4Lllmr18sfeMi/LfYHyHjLsR183+JxxYa04EO7jngEpuXZ0KgRV+13S+ZhmNfvuOQw+fKC/TLQXkERF+OqlSnsMjzDeNMQKC2wukvlZqu8JdZlj3FrL5n/lxYfQbBd/LdqP3RYEeaev7ayq2w3HkRTmx5Fyfs+71dNg7dHbFa8WTwNMSEfCVm4ArEPv8oEgYNRf9AkaSqRMzcxgs8ZEZUvSLlKpouuN1zAGJiwmVBgbxYnnsShTHRGFSWh3j5nxaUi5gzw8nCBeTH/QfLD16DseY9iN9kxImZfZnEVF/BylkR9/yTOCjpmPO3ykon9b08Atfprx3DhK+jNfVjk80+lyfiZ7Ox8ck3Jd+X8UTqUDF1V6BQb0uisnL73ddUyi3mXyOKcaZSaGXBS4ReFNAw6YmXR2LNzgSUJW3CvqsUG3HW3Xj+sWWImTFe5t6o7U1EsR32U8NCpj4tlWsyTg9kjwuSOSz7sfyJZZgWPRmBB7OQoFeu9sBEmSPlTS5w4hzEpMgCFT0nzVah/uMQLXOSYnPy8Nwj/8LUmEsQLCu84vQLReZcXjFGF8FfhvoHIVkPyZtDxhptOHyMqLcZ2rIwbGqEzUplxoR2wCRkSgRMmwu17IMiZGhUlVKQ2KtcKXYhg/3EamrBxhXvwTQ1FPvSv8Ym2/wly54iPV/U3mlaZaHOE8tLET3BrFeEKwv0sJgYGV/oKDxkHmzMDOlDYpETuxTLC69BxKCj8pHzlba2B0T8n15M0NBOrZsO/MdNF4tQKjJz4vDI0gLMkG0+ilM/R6qeyzYK05z2EDTu8ILf0+jLx10TDdP2DciJW4qley6VrTh6IzXhI704wRT2Y4zr2sNYkGZJw/L3B2NqmB8yEz9Bqh76BPblH5DVPu5nA4dMvwzmlA2O/n1Cv0NIkJW5yk2R/gZI0OcNfhq04wYhjgurNnYcw5rFSxEhH7TNv2uCPIjjSF6fDJc53UhNxuYX/w6LvHdC5F2eFJ+sw8ImSRjdWRNw/dQ8qwT9R9fPPVMJ+V52niO9wNEXO851WMQQ23V/9Pzttfq8rvAVHLpmumzlcaMxz61sL7pEqMUKDV1t7O+xT+Id+tvLOsBHts8wzxzdMFKrXZkQdecizJkyWiuhlcVF2iysFTbZ52yCDA/cGWVwMDY3bCiYvwxF6ZeANomrBQULcWfMBPE7JttvfIA4Udisahhq1r2yCrDhkIJZ5jTkp3yMOFHYVJwp8x5wGZqTPd4CjssL5QO9NB3mkZjzu185hjm0Gd4kw8viTF1tAjiL5y9z6ZyvA8fhkT8tQJjM51DlLCw+gZCxyvIihovhxkRY5+itcZ6fmqGzCZs2xaZAuOQ6PBIRakEC1D5dtteL1EuAVZbQx8pQn5QhQOZS/u7e6Q1vPEWc8Dm/wFS1F1NlATbFbtB1ZJH40xbe02hFXMNEz+2VqkG1r7Cri1p4i22xSH1g5O0PYdaEoaK0yFYpsgpQK2ymIEy95T5Eauu4SmU4IkKUdVUm3UcY9Yxg+R8/9JxMP0TIog+781YmSj5/2ZJEu/7jMVG3BT9Mse8VJm28vxGqfyNvuRkhUr5KWTS15s01WmELmXKp9oNMMFfTHOzOFKAWcnyL2Niv9F6Nw2S7FfvwT0fhgcGR+NOdM/X/8JIve46tjxOFTfb1GxbxM1lNOtGGwmhXDXuQvrj1T/diwqDuYtGVD4L1saKwHdHDzgv/dEcD5naebX/0vC9HsPy3Z/fMlK1yfGT6wddYL31JvmxRFRx2iex7GSVF6Ys5C6/Q7wTVR7/55vuisPkgYupkbcioLBQrtyqwqSE1zUDSflilLQvL1L2xaisVeQuqd4n6b6ua6qud27FOx+Un5JLJWh6r2nZE9o7r58G7xqP3kVMZ1Jy2eVPOd7y/1sdtkWdDtkaadivm662IXITi5WkT8KkTd9p3NXmDWMhm3qTntflgEnrIdh3123DI/ljzr0eNWMYah8n034TVqJC9XOxOKWKmXz2NQTPVl72Ev/MEKlYm6Ht9L+sK65ff6qhqYYLfc3/H4NHeYeGoErO3ReYLqM0OA13mvNjL5tlR5n6oDRklHde5M8oEvSL1JBb+bRHCZe+jMrE0OU8CljEgvP/EX+VL7wL87ZE5sMoSfIs89K7peCZHfax9Se/I//Dgh1tVJ273PpqKR55cD9PEeXhsnr0Ttwd62bEmG0/8eYV84d6CR+R/qDgqe7ZBNjcOtK2a1NJ6EsderBqL7G1X1QJ1bU+wDY62MqgNgs+2fRj8OgATKUiVembkZRMgk+tdX6tV2bHyfz8mI+JXj2GOfI+VyT5cZhki83dXfR2hjdjKdVSYWJtg4q7odj+1mrvSojYgDpBnzZWmPZb3HT3ty422UieLsaUNNCpe0/24JyVWfZTalNddO/Tkfndxqqpq6j9kdARPZPQkjnNu9vgie2DjZ8g5Js9Pj0D9p/fp3ddE7P4Y/sEXTYQFY9jqz5sIA/pEz5e/G2TTWJkXJg2/qwybOlvY+tz4CNSf3VXfd1RWjUo86VSd49nD2+roLw3Ubed92gKZ9FyJpm9TCwMkVFnDmspQJpKq9aOBMqekqShNp9845GjxLlkRVIal/7HK7vCXwP9oEeLXvK9GmGQzXmM+WOO7vNDnuJJYLa93qJ6NhfQkjvw3MsHB5sb3tiefli5DS6fXRizVPKzmnpma4+rpUvO1TtEGOggPVQ2qHzkT1/VUfdSZJNhK93jal5+6rTTXj5+6MKfso059a5OhDsuzI4YnMnoSx5GgnJxufOd7eX4qAi2stJ0qK0/CuskXRYNlB03e5Oei1DUZsSMGqO1BZCd/Q/VwX0C90tO2L4/7GKfvGz5nASbkL8W2wm+x4nnD0qlSCZ5wnQwL1Q+Fn37KrXeHYmbV2m7TeXoSp+m7GdLhCdjaTzPNqMNjYAFJgARan0ALD4+2fgE6ZY56yEWWzTvti+TKQQ9JyFBGiwx5uSR+VDbw3VN2XD6m/NFvsFp44Zmi7ZJMm1yqoQyrqVfDIVEXSTyJ43ILLzsVAWPox9TUkGinYsHCkgAJtCYBKm2tSZt5kQAJkAAJkAAJkMAZEmjR1aNnKANvIwESIAESIAESIAESaIYAlbZmADGYBEiABEiABEiABLyBAJU2b6gFykACJEACJEACJEACzRCg0tYMIAaTAAmQAAmQAAmQgDcQoNLmDbVAGUiABEiABEiABEigGQJU2poBxGASIAESIAESIAES8AYCVNq8oRYoAwmQAAmQAAmQAAk0Q4BKWzOAGEwCJEACJEACJEAC3kCASps31AJlIAESIAESIAESIIFmCFBpawYQg0mABEiABEiABEjAGwhQafOGWqAMJEACJEACJEACJNAMASptzQBiMAmQAAmQAAmQAAl4AwEqbd5QC5SBBEiABEiABEiABJohQKWtGUAMJgESIAESIAESIAFvIEClzRtqgTKQAAmQAAmQAAmQQDMETM2EO4Lzr5nuOG+PJyEfJ7ZHsSkzCZAACZAACZAACWgCtLSxIZAACZAACZAACZBAOyDgUyeuHchJEUmABEiABEiABEigUxMwHTp0qFMDYOFJgARIgARIgARIoD0QoKWtPdQSZSQBEiABEiABEuj0BDinrdM3AQIgARIgARIgARJoDwSotLWHWqKMJEACJEACJEACnZ4AlbZO3wQIgARIgARIgARIoD0QoNLWHmqJMpIACZAACZAACXR6AlTaOn0TIAASIAESIAESIIH2QIBKW3uoJcpIAiRAAiRAAiTQ6QlQaev0TYAASIAESIAESIAE2gMBKm3toZYoIwmQAAmQAAmQQKcnQKWt0zcBAiABEiABEiABEmgPBKi0tYdaoowkQAIkQAIkQAKdngCVtk7fBAigJQlYLcdQabG2ZJJM6wwIqHpgNZwBON5CAiTg1QRM50K6kqS38PJneUCP83H/Q/MR5JyJJQtLFq+DNXwmHpo7yTnknJxbir5HQlZ3xESHe5S+JSsez6xLgdlFPkvBt3hrw/+w95jxQu4x4HzMunkeQgN8HOmmrV2OhJLjMJvqsVrlzREasxAxo3s54jU4sRYj7q33kLr7kPb27TEY0XN/jsih3eujtVSc+hRtZ7VIi3sb8am7UK18fLsjPPp6zI0McYrpQRxP5HNKsW1PjyH2mWeRjlA8KG0zQIQ53TbSpPzlqXh6aRxM0nYW6bbtATs3iZXv+AJvxW1GaXWthPqiz4gJ0tauw1BTfVvLTVqPDZ9lGvWGbhg15SrcMONCmN2k1xG8rAWJePqNTQi9/gHMHd/Es+QoaDXilkgdW0fh/kd+3rD/ccThCQmQAAm0PwLnwNJ2DInJ+QaJYz8gMfeYCxUrLOJjsbaCNUIpiK99iNSSoy4yNHFp3YWVorCpV6XVWb7yNDzzxsdaYfPrMxgDeplwbP8PePvZl5BrrbMldgRZuSU4VlGB0tJSx1/FsQqUN/nJLy+XF141FDa/3hgyIAC1x/bhk9f+g62V9nRbKk7jMufGvoQPtMLWHUNG9AVqjyP7kzexNq3UEbn5OJ7I50jOK050dVhsfE+3jTRZglrEr/xY2k5PzLphoo7VPLvGiVlyP8LSd7/UCluvISPQx+8kSnd/j9eeWY0SW/Ss2Bfwtk1h6zNkCHr5nkBeyn/xzFspjRPsID6W8tLGz2WTZfPDjFkR0p5z8Va8fDzSkQAJkEAHIVBvEmqpAhUlI/uYXeEA0hO3YlbotEapm5ysUY0CW8rDVjo/D/NKWrkW+93knZWYpF8YfSLm4r4Yw2KXvPKf+GT3QSTvOIzQSX1EC92Holopd59JePC+mTA7K31N5F+5Iw6pFSeBXuPx4APXa6tPbvyreDtlLxLivsPkuRFoqTiNilWZhdh0pZwF4/qHf43xZh9YchPwzNubkR0fj8pJP0eAB3HgQRka5e1NHqfZRpoS3SrsUqQue0Vcg9HKIuYBO2Xla+hqkRj/nfYKn3kf5qp2Jba0+Bf+gZTSXKQVncCMgXsQr+vNF1Nu+x1mjFQW2SOIXbIU6XnxiM0aj1mjezRMtgNcmaV9no4zj45GRK/vkJryEXKjf41QJyvl6aTDuCRAAiTgTQRaXGlLS/pely/8+huB2PXI3vsN0iovwySnYUQVofrQNqx99XMJV1awbhgSfhnmzp2qFRedgLyIktduQGJ2oWPobtTkn2LujInQQlt+wKtL3kXA9HkynDfCuAXHEP/qy8gyR+CuGwbjrRfeNe7N3ohnnvkWMffdgdFNdP7lW9fhs70nbOk0PKghTuXM/dRL1HBDhwYDu4/bL2Et2i25i84WOtoYcpNbzOZT481N26XvD4+OdpQ7dMZVGJDyOvbnZqESEWipOK4KQmVuupbXT7grhU05c+jlmNxniygIe5Arlr5QD+LAgzK45g1dT6+iqG8YAkq2I7f8JMxBP8J9d10LyHD2WhmG3l1RIwODtTD1UcPQczE6yGYUth5A/Nr3kVZQAmP0sDtGTLoCN8dcqNtFbvwKbMjyw833zXMMJypl9IW12xF5868QNVIX1fhRbchNGwkt36FlKCit1Mq6b4/emBQ9EzGThjvd7HyqlK1vxKMbpk8P0wGe8HV9JtSNA0PDMUDazXStsCkfPwztGyh1IhbbQ1WwYjcqxNd3xOU2hU3F6YnpUSFI/ygXhw4dkmt3SpsM1cavQ0JaPo41Neyqh7nXi+W3TNiLoUqsv1Nn/RzRo3urTLQrz/oaG+K/wt4KZS+XnGSaQMzcOVI/XfV1Ze4WrI370hHu1+c8xNwwF+MHdtPhufFvYsMOC8bLEGdWyk7dBuHbU4blZzYYli/auhEbElJRoWT164dRAxta5q3SblQ7abqO/KQuxiL1gx1ISMxHaPQonT9/SIAESKA9E2jh4dFCJGcr1SUYkePHYPJ41dkfR1JiTgNGWpUp3aUVtj5DBshr6QT2ZidgyatJtnjHsPaZJfhEK2wydCdxfGXoLi8lFk+/usmIY63Goepq5MqQpLMrL6lERV4BLKYeYu1SA53K1erhzobdvhGifyt34NWPsuRNGIqbro9wCjBOQ8cP0yd7v3gHybmFKEj7FBs279V+A+WFqtyhkoP6WJqyFo8//jgWL35Sjv9EXNo+7e/ux7A2dsPokT2dgnsjyE+UqNoDKJAhvJaK45SBPrVbOkeOPs8pyFcrCJD6yCo6YssbaD7OqcvglIHjtPxQBfamf4Ps/VWolXo8Vm6BteAzLJbh7N2iEPj1GYCBfcyoLv0B65Y+i62i2Kl6jF/2MlLyRGEz9caIEQN1u9id+l8ssw2DqWG06op8lBg6hc7PaqnAsdojKCivcuSvT9y1ERkif/Xl95AnCptJhsJHDAiSIevD8vJfgbgCPfOvYRrqyrITW0uVxXQsRts+Tjzh2zghX0yacSPuuuNnGChltVRWIEvmrsVmKzWtJ8aP7glrpVEwk8mvwe32z4NDBUY7bBAoFwXxr+CDlB9EYfOVofARMqRaawy7vvCxKILipNzLnlyuFTaIsjZwiMxErT6Mzev+jZVJu3Vy1oJPsHTdp1oh09MEehjTBNYtXYEiiVG54108+7bM+9T1Z0wjqJbn/N2X/4GkEuODSNePTAFIVQqbzKHsI2lA6kYNy8fb+FamvYvXPvpGK2y9BgxBD+tB5IkiqZwup4d1FDB6HNTst/3JyfIBREcCJEAC7Z+Ava9vkZJUpn2thxf9Rk3BSJXi9Evgmx6H0tQklMiw4sAGufhi6m2/R/RIefnoF8Yq7N+bKJ37xRhfEmcMscpChl/JZHF9n1hFli1erePEF0TKMJE9MWUTcHK6RCZROAbj5oduxNNPrgPCY2wTw53iOU5lYvqy9/QX/5QFcxFa+YEjxH5iHn89ImIzkFp9EJ+8/brdGxhxLaKHGhaEotwih38fmYtktuzH3tLj8rJ/BZUmd5Ona1FSbrxK3CuTFj3vr7xF4jhEc5wU2V7u1lr3uSvrYlGRoQA0HcfiQRkcWbo9GXHFzVgQNVDSqUPSyn/pOOHXy9DgeMOqWZS8Fq99ko2PNnyFyXdMRrnEA4biV4t+YbQLmfz/hEz+Ly3IkrmSdmuKr/Fyd5ujk6e7NiIKfJyKMuQKLLojSkcuT34bSz/JRVFWgWiwjRe0WApytEW3x0Cpd32HGAw94GuL6v5QuR2Ln3Vqi2IF1RbRkaPkI2crqvO+QZYlwmY5PoaEpHz36dh8jXbkiyvufxhR2mp5ECufeEkU5N0okHmZpvhP9LPbSxZRPGBfICRTHZ557RPslukBlVJHCWuNOXOjrlqAm23W7aRXnxALdTES0wphisvQuYVfewfmTh6iz7PiXsG61H34bMOniLzvWoeMfiOi8dCCqbqesmRu5br0Azik27oVcfFGOhNl0cEsvejgINYuWYZsGX7WrVVWhparlJqrI/MwDJQPoIrqUhRJGfWwtUMCnpAACZBA+yPQgkpbLZKSDIvawNGDtJXAauqHUOk0s6uLkLijwrHqS3W8anhHK2yKmUmGUKaOwGub5QUiw6UBOws1yfAZ19YremYZJrtipKxKLZDOXawNDqVNR3X/YxvWbLCowCVmbtybSJc5eAOm3IwZQ31hzTIimLraX7/AjrX/RmqtUhZ6YuIVURhY+QMSxGpRu/sjvJU8SF5gfWE1D0KvXicQdcNtmGxT5HITVuJtKVN2XBwqx8scsQZ5W2VrCJWmWNWadC0Vp3EGFpvFxr3KZsRvPs5JD8rQOO96n0GIjjIUrYHmLGSp+X0yMBdgKcTW5B/kBW0Sa6ktdkmBvKgn2y6K8PIT/8IoGYoeP3k8Hnr0UYeyVJ+2h2eubcT+ROz9DE8s2Y7Q0RPFYnwNHn00uMkEraIQKDfQyWrZPLsmkzMCzINx1dSfCF+xXqdKW8v9AMsSAnFX9PmIGuIritJBrFv8NEaEnwelNO6vNmRoKlWjWLX4bOnfsWNUKCaNj8Csh/6MID00LpbtrAP61oCA40jbmiwfDMLebBv+r90nw+XlKNcP7kjEOKYjAFE3346+MtduaN9SvKCeEb9QzLIpbCrB0TExGJK6HHvLy/UCJPlCE19fTJ91iUOxHjl6gEx+NfKHZReKVFkknWjHKtF+iJFh5+wP7A+nFhVoto56IHSoP7Lz1DYsck/DB9CWCA8kQAIk0H4I2F9RZy+xrLBMU0NE4nZ/tAKLP2qYZHZiMqzjr3J01LW2F509Vt+htiFCMZwZQ0vdMT7UedgQCAoyet1DRTIkOtp+5ymOzZVOVg7GphpLDwJM+5CQsAuHsoyv/GNZnyIu4SgmybyYtFw1NNMTMx9+AJP0S+4iGf7dhMdfS0RekrzgIq9H5NzbEOkiSmj0tRix+UXslveUXfeoj+KHgUEmpMvIl/t1Cj0QYDa3UJz6XO1nI9WQrwy7mf3cQwoIMKP5OD09kM+eo5ujb4/67Rhk4YbBqBapHzlZmOy36ZHuHjK/7Uose+t/qJAhtbzsb/TfB6IEhM+8XSbuD7bH9vzoWnzzeMy9KgtvfZKB2ooDyE75VP/Btx+uveMOTLbNzXKfQX0tN8+u/qPAbVqm/oiM7q+Dpo/+BE++nYz9O3bAInOzou74LSwrX8NmGTLcnZ0tcUsqSQQAAEAASURBVGSrlojhyE21KTVuEhw/6ybsWLZKqtyK/XnZ+ET9CeY+YoW+a+54Q3mTj5e9qTL82ej+alhlSLNEK2VixXYOF+VydKh4yLOk/K1Dw10U6J4IUMP9NmuXcauvbItT/7FiV3rtySqKfiPHNdCxzEF97cEy+dLzOrLn00Dm+pR4RgIkQALtikCL9WW5SVv0EJGfTEyeJHO07IsnZdYL0uRlUl36ncxLuhKRtneVX0DDz16L03wjwzJ2HAUyD2a8Gj61OYvNKjJw6EDxMaxx9rlDRhT3xXHvK3dYZQjSlnbe5s+RZzs3DkeQuvl/GPqjHsaqUJncPdI2YV+HDxwONYBXalFpVCMrIR5ZlYMwa9bFTi+t+vQbJG27CDCrydvHUCTlnOQo5xFYlKXBt4+eSG9toTiN8rfpF4dkQj8cFg2Zl1Sp5n11w8iBsiox17jrVHFMHsjXKO8mPAyR+uGm+2VvP+GqnTC3yrCZVeaw6f3+hl6E+xZdhMqSPOzYkSV/O7Bf9s7L/mADcsf/uj5lp0o3OSkI9REanjlFx9DJs7Bo8nUokcUgO7J2SB65MifuoAzRfopJMsTnHLdhKk5XnvB1im6cVmNr3LuycGcobp57maMdmUaOkNaXjGNi7VJUFI/Jc+9BtKlWWzqVgl259W08K2Ejx5zXKFXtIcrVDfc9LHPi9iNLmCluefsrUZodh4SC81Bu22Im4qZf6uFTg76aunAEldZuGNqrAkmSUKNZfcoSmFQA85CuWumuLd+vj/WM1HxSudHWngu0MKf4sXGrLtktZZ3kYKDmJTo7T+uo0lKjb7Ml65wEz0mABEig3RFooYUIB5GUdlgK74uouXMxY0YMYmRYRP3NiLkJ0SOU4nVCFiRkOgBV536HAsfVEcQnGipTUJA/+g7Ur2ekJSQ7YugVh4nKqiBOvRGcOndHhywrygrcDBM5wvXNTj8BY7Dgtttwm/z94hfq71e4aWqIjuA7ZDJ+8eDDmDRgJIb6KqtAhV7l6Li7ZA/UhhlKFpO8ynZsTkN2+kaZk2dYG1VQedo3xhYioqAauqpMLldKnk2goaFi7RK3Q7ZFsTvLjq+xW13IPaqYLRVHTeJ3zjsgVM2NEqUzLdmx/xcsO5CkV9AqK5+I4EEcT+RTxWnWBQzHSM35MIoqAzFw4EDjT1ZyvvbGW3jjrY9FodwhcxSfxJNLPkCAWHSiZszEXQ89hHBlyRHlV42aGx8LJ1DktBI4LVkTPaUI9jaiJtM/KXksiduFoTI0OkNWTz606CbNSpZvnnJCu57zZsvFE3Y6qgis6sXIX5R/GQrdm/0Ftjq1o8odGXrOJQKCpB0VYuXSZVi6+A2Uy2IEpbABBxGbYHt++vi7KacMfz4h3J78NwqChmBS1FW4+a4HcX14Dx33UKnM97Jt5lwiQ51BdvYDKxH7mgzxC/8sjNTzw1C9C8kSx+4KEj7AJ/LBk7S3zlCqS7+X8Fp7sCxO+BR5ykLnqZN2oJ+3iu0NGOzYWl+HntfRMfnwU0qbi3XQU1kYjwRIgAS8jED9B/FZCGbJ+ga7VcfcQ1aM2rdmcEpvUtQF+Gi3WArSv0bBjEu1MlJdW4g3nl6OqdNHoShpM3YrZavPZL2NgWmkbHuxWba92Cu7oC/bi6hJA5Cr4qj932SuywxtGTqiXxL7K9Kw5IUDMkzXFUV5uw1LgL1UNnNfbd5HWLLsB8y6Yy5GNrC6yHYKI0c6SSqjPOViYRJnChiIofqFaEbkpP7Ik2HUj2QVY+6USAy1FiJRXq7KjYqeLsM4PRE5sQ/yZP+szS8/i0NTo9D3UCY2ZxfpOFNmXamVtsq0DXhW5uX4jroWj9w8GUGTL8MQWbW6d7esnH2rFJEDLUjYvNN2zwx9j7mF4rjmjYBJiBoQh8/2F+DlJatwReRAUZK3aOWgz5RrjX2tPInjgXy6QM3+yLYV00cgW+Ysbn7tKRRFTBEZypAkqwyVGxIVJQpKX4xUcySP7cAzy6qlXYTIcLasQNWWyeF65Wa5UvhlDlPqW8+jZMQgmGT/vN2yQlU5e7PQF/Yf1zYiQ4V+2CFtdR2WWS7SFtAsWX2oLEx+oRPrh3Pt98sxIHScWMJk6NJuHVRhnrCTaDs2LMG7suJ6RMx9WBDRB5Hyl5dais+kHRW5tKOJM6KlTfSQDwmZ07a/CC+8sBrTJw+QFaabsVcY+Mrk/hi9b5sSwNn1kKkG3ZGdfQTrnn4REVHyPyccyrGt9O6G8eGypcmQKHyQ9wn2bn4DS0omIFLSSUtKMT46hlws0wJkqF6e1exPcqV+jDYedGgnUrLVp0t32XIkEgHWDLwhewx+9to/UDRFngHLLmxO36UFCY+Z0WC401k6+weY4We0gzxpBwaDSJhlG5j03Ud0sKrDAFkM4lkd2azWPUIcq3ob5MsLEiABEmhnBHwfE3e2MmclfIydpdUYctk1uHi4YSVzTrNL7/4oSU5Bae1RWPqH4HjWD/IS7Aa/2grsytsD2ZILfgN+hDvumSnqj3K9MFkUtYIdmSgtK62PI3t23XyPrCbVilcvhPa1IG3nXlRVHUVZWQVqe52H8KBjKK0MwqWXTUC3bsGyYWwqCo9aUX1MXi7DL8Lo3sZqT2f5nM8tB3Ziy84DMMkeYlHjjTlSvcMuQFBlAbKLD6F07y7sKj4MeUUi/Iq5mB95nr69t2wvYC7ZJVtFlKG0MA+Fpeol0x1TbroLM2xz87rIitKv0vegW29Je4JKOxAXTuqLrK075X9QKEFe4SGd7qgrfo6fTehnE6tl4jTOW3BMHoNyGf7bX3pQGBehSnTiXqOm486fXeBQcJqP44l8tqI4DjXYkbwFpdbeRj3Z/AOGTxKFuBiZwqGsuBC79h4S+6AobBNjsOCnY9BF2ozaHiUnMwcVFapd5GG/bC8Bv0GYec/NGG72Rc+QUNnXNh3Fx6pwtKIMFTJ0OmriaBzZfwg9R1+MCQNN2CFD+aUnbXm7tpHQazFjuAWZPxSjonQf8lT7rD4p7XMS7lowXSvSjmLYT0yBOCwrp/fuP4i+kZHob/swaJ4dcGDHN/rZGX3JNITKh0fvsIkIKM/HD/sPN2hHETMX4P9sK2qHjx6GoswMeTYO6WfjqDw/vUZchDsXXOFePpGzvyySKM/JFF4VKN4l7XN/ubS1boi4/jZcpuaTBgyVBTRAZqbsA1e6H3m7imRIWL7DhvwIty6YgZ5dfCTKBF0/2wsPiGy7ZHW0Wv3cE1NvWigfHN0RFHohBspwaYbUm3pOVB5qqD38CtlL8eIhmtZhKW9GqRWjL5UFPd18tN/JykJs3l6E3rp+uqOntIO+lbuwUz1vko+q4x6yNUhNzUn0lTjjh4/EyICjzdaRRealfpRxAL0m/ARRYU5z4nSu/CEBEiCB9kfAp05cm4ltPYaSQ0dhlmGfIG3VaiyJRVadlYsFI0AmIge43ay2FuWyR5p06zKcFtg4AfFR/3m0Vb7Nm9vs1u3Nzp4ib7lFtpOQuXCmIDVU5cbpOIK00gqzWH1c4yQtky0SzNF4dEGk0832MvghqG+wTNJ2CnKcnn0c93kr6+J+KVedbHDbVyaku83cgzieyOcoTDMn1VKnZVKnTfOwt4um2o5V9jg7JPPzzEEDbCskT51l4zYi88XUcKilm7S9IGl7hoLRVCpqc+alYjUdcsUC3BE1okE0T/g2uEFdqG0trEZbM0v+7mrFouf6ycCqKaCJZ6NRqvpZOFQuz5w5wLGwxzVWpbQHtbK5yWdO9kgsPyT1I2n0lcVBjWRrLtw1w6auJR31391ZLF1EVnfDvqeuI93e9/vi2gcXYbLL5t5NZUl/EiABEvBmAm2rtHkzmXMgmyXrPSxet11WOv7yzFY6noVMbZn3WYjdjm49greeWCKLWUbIf1J+m9th1HZUmPYvarmxfx9GzZCpCFPaf3lYAhIgARIQAlTaWrUZVKNEVoo2ZRE8t6K0Zd7ntmTekrol6yNRyreiz9SbcR//26Q2rJZaJLzwd2wuDcBNsk1PU/91XRsKyKxJgARI4IwIUGk7I2y8iQTcEyjKSsUh2Sx6Umj9/9fpPiZ9zx2BWvk/e7fDJHu9jbT9n6jnLi+mTAIkQAKtR4BKW+uxZk4kQAIkQAIkQAIkcMYEWmiftjPOnzeSAAmQAAmQAAmQAAl4QIBKmweQGIUESIAESIAESIAE2poAlba2rgHmTwIkQAIkQAIkQAIeEKDS5gEkRiEBEiABEiABEiCBtiZApa2ta4D5kwAJkAAJkAAJkIAHBKi0eQCJUUiABEiABEiABEigrQlQaWvrGmD+JEACJEACJEACJOABASptHkBiFBIgARIgARIgARJoawJU2tq6Bpg/CZAACZAACZAACXhAgEqbB5AYhQRIgARIgARIgATamgCVtrauAeZPAiRAAiRAAiRAAh4QoNLmASRGIQESIAESIAESIIG2JkClra1rgPmTAAmQAAmQAAmQgAcEqLR5AIlRSIAESIAESIAESKCtCVBpa+saYP4kQAIkQAIkQAIk4AEBKm0eQGIUEiABEiABEiABEmhrAiZPBKirq9PR7EfXe5ryd43HaxIgARIgARIggdYj4OPj0yAz+7X92CCQF15PoFmlTSlkJ0+edPypa1clzfXa60tNAUmABEiABEigExCwK2fqqP66dOni+LOHdQIMHaaIp1Ta7Aqb1WqFn59fhyk0C0ICJEACJEACnZVAdXU1TCaTVt6ouLWvVtDsnDZlZaupqWlfpaK0JEACJEACJEACbgmod7p6t9O1PwKnVNqcLW3tr2iUmARIgARIgARIwJWAGj1TShunNrmS8f7rUyptSny74ub9RaGEJEACJEACJEACzRGgwtYcIe8N90hpozbuvRVIyUiABEiABEjgdAiodzrf66dDzHviNqu0eY+olIQESIAESIAESIAEOi8BKm2dt+5ZchIgARIgARIggXZEwO2WH3azqd2Ear9uR+WiqCRAAiRAAiRAAm4IOL/b7e93bv3hBpQXetHS5oWVQpFIgARIgARIgARIwJUAlTZXIrwmARIgARIgARIgAS8kQKXNCyuFIpEACZAACZAACZCAKwEqba5EeE0CJEACJEACJEACXkiASpsXVgpFIgESIAESIAESIAFXAlTaXInwmgRIgARIgARIgAS8kACVNi+sFIpEAiRAAiRAAiRAAq4EqLS5EuE1CZAACZAACZAACXghASptXlgpFIkESIAESIAESIAEXAlQaXMlwmsSIAESIAES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"/>
<figcaption><div class="markdown"><p>Screenshot of a calculator provided by the Google search engine.</p>
</div></figcaption>
</figure>
</div>
</div><p>This calculator should have a familiar appearance with a keypad of numbers, a set of buttons for arithmetic operations, a set of buttons for some common mathematical functions, a degree/radian switch, and buttons for interacting with the calculator: <code>Ans</code>, <code>AC</code> (also <code>CE</code>), and <code>=</code>.</p><hr /><p>For an illustration of <em>really</em> basic calculator, have some fun watching this video:</p><div><iframe width="560" height="315" src="https://www.youtube.com/embed/sxLdGjV-_yg" frameborder="0" allowfullscreen></iframe>
</div><h2>Operations</h2><p>Performing a simple computation on the calculator typically involves hitting buttons in a sequence, such as "1", "+", "2", "<code>=</code>" to compute 3 from adding 1 + 2. In <code>Julia</code>, the process is not so different. Instead of pressing buttons, the various values are typed in. So, we would have:</p><pre class="sourceCode julia">1 + 2</pre>
<pre class="output">
3</pre>
<p>Sending an expression to <code>Julia</code>'s interpreter – the equivalent of pressing the "<code>=</code>" key on a calculator – is done at the command line by pressing the <code>Enter</code> or <code>Return</code> key, and in <code>IJulia</code> using the "play" icon, or the keyboard shortcut <code>Shift-Enter</code>. If the current expression is complete, then <code>Julia</code> evaluates it and shows any output. If the expression is not complete, <code>Julia</code>'s response depends on how it is being called. Within <code>IJulia</code>, a message about "premature" end of input is given. If the expression raises an error, this will be noted.</p><p>The basic arithmetic operations on a calculator are "+", "-", "×", "÷", and "$xʸ$". These have parallels in <code>Julia</code> through the <em>binary</em> operators: <code>+</code>, <code>-</code>, <code>*</code>, <code>/</code>, and <code>^</code>:</p><pre class="sourceCode julia">1 + 2, 2 - 3, 3 * 4, 4 / 5, 5 ^ 6</pre>
<pre class="output">
(3,-1,12,0.8,15625)</pre>
<p>On some calculators, there is a distinction between minus signs – the binary minus sign and the unary minus sign to create values such as $-1$.</p><p>In <code>Julia</code>, the same "<code>-</code>" value is used for each:</p><pre class="sourceCode julia">-1 - 2</pre>
<pre class="output">
-3</pre>
<p>An expression like $6 - -3$ must be handled with some care. With the Google calculator, the expression must be entered with accompanying parentheses: $6 -(-3)$. In <code>Julia</code>, parentheses are not needed, but a space is between the two minus signs:</p><pre class="sourceCode julia">6 - -3</pre>
<pre class="output">
9</pre>
<p>(If no space is included, the value "<code>--</code>" is parsed like a different, undefined, operation.)</p><div class="alert alert-warning" role="alert"><div class="markdown"><p><code>Julia</code> only uses one symbol for minus, but web pages may not! Copying and pasting an expression with a minus sign can lead to hard to understand errors such as: <code>invalid character "−"</code>. There are several Unicode symbols that look similar to the ASCII minus sign, but are different. These pages use a different character for the minus sign for the typeset math (e.g., $1 - \pi$) than for the code within cells (e.g. <code>1 - 2</code>). Thus, copying and pasting the typeset math may not work as expected.</p>
</div></div>
<h3>Examples</h3><ul>
<li>For everyday temperatures, the conversion from Celsius to Fahrenheit ($9/5 C + 32$) is well approximated by simply doubling and adding 30. Compare these values for C=18.</li>
</ul><pre class="sourceCode julia">9/5*18 + 32</pre>
<pre class="output">
64.4</pre>
<p>The approximate one is:</p><pre class="sourceCode julia">2 * 18 + 30</pre>
<pre class="output">
66</pre>
<h5>Example</h5><p>Add the numbers $1 + 2 + 3 + 4 + 5$.</p><pre class="sourceCode julia">1 + 2 + 3 + 4 + 5</pre>
<pre class="output">
15</pre>
<h5>Example</h5><p>How small is $1/2/3/4/5/6$? It is about $14/10000$, as this will show:</p><pre class="sourceCode julia">1/2/3/4/5/6</pre>
<pre class="output">
0.001388888888888889</pre>
<h5>Example</h5><p>Which is bigger $4^3$ or $3^4$? We can check by computing their difference:</p><pre class="sourceCode julia">4^3 - 3^4</pre>
<pre class="output">
-17</pre>
<p>So $3^4$ is bigger.</p><h5>Example</h5><p>A right triangle has sides $a=11$ and $b=12$. Find the length of the hypotenuse squared. As $c^2 = a^2 + b^2$ we have:</p><pre class="sourceCode julia">11^2 + 12^2</pre>
<pre class="output">
265</pre>
<h2>Order of operations</h2><p>The calculator must use some rules to define how it will evaluate its instructions when two or more operations are involved. We know mathematically, that when $1 + 2 \cdot 3$ is to be evaluated the multiplication is done first then the addition.</p><p>With the Google Calculator, typing <code>1 + 2 x 3 =</code> will give the value $7$, but <em>if</em> we evaluate the <code>+</code> sign first, via <code>1 + 2 = x 3 =</code> the answer will be 9, as that will force the addition of <code>1+2</code> before multiplying. The more traditional way of performing that calculation is to use <em>parentheses</em> to force an evaluation. That is, <code>(1 + 2) * 3 =</code> will produce <code>9</code> (though one must type it in, and not use a mouse to enter). Except for the most primitive of calculators, there are dedicated buttons for parentheses to group expressions.</p><p>In <code>Julia</code>, the entire expression is typed in before being evaluated, so the usual conventions of mathematics related to the order of operations may be used. These are colloquially summarized by the acronym <a href="http://en.wikipedia.org/wiki/Order_of_operations">PEMDAS</a>.</p><blockquote>
<p><strong>PEMDAS</strong>. This acronym stands for Parentheses, Exponents, Multiplication, Division, Addition, Subtraction. The order indicates which operation has higher precedence, or should happen first. This isn't exactly the case, as "M" and "D" have the same precedence, as do "A" and "S". In the case of two operations with equal precedence, <em>associativity</em> is used to decide which to do. For the operations <code>+</code>, <code>-</code>, <code>*</code>, <code>/</code> the associativity is left to right, as in the left one is done first, then the right. However, <code>^</code> has right associativity, so <code>4^3^2</code> is <code>4^(3^2)</code> and not <code>(4^3)^2</code>. (Be warned that some calculators – and spread sheets, such as Excel – will treat this expression with left associativity.)</p>
</blockquote><p>With rules of precedence, an expression like the following has a clear interpretation to <code>Julia</code> without the need for parentheses:</p><pre class="sourceCode julia">1 + 2 - 3 * 4 / 5 ^ 6</pre>
<pre class="output">
2.999232</pre>
<p>Working through PEMDAS we see that <code>^</code> is first, then <code>*</code> and then <code>/</code> (this due to associativity and <code>*</code> being the leftmost expression of the two) and finally <code>+</code> and then <code>-</code>, again by associativity rules. So we should have the same value with:</p><pre class="sourceCode julia">(1 + 2) - ((3 * 4) / (5 ^ 6))</pre>
<pre class="output">
2.999232</pre>
<h3>Examples</h3><p>The percentage error in $x$ if $y$ is the correct value is $(x-y)/y \cdot 100$. Compute this if $x=100$ and $y=98.6$.</p><pre class="sourceCode julia">(100 - 98.6) / 98.6 * 100</pre>
<pre class="output">
1.4198782961460505</pre>
<h5>Example</h5><p>The marginal cost of producing one unit can be computed by finding the cost for $n+1$ units and subtracting the cost for $n$ units. If, in general, the cost of $n$ units is $n^2 + 10$, find the marginal cost when $n=100$.</p><pre class="sourceCode julia">(101^2 + 10) - (100^2 + 10)</pre>
<pre class="output">
201</pre>
<h5>Example</h5><p>The average cost per unit is the total cost divided by the number of units. Again, if, in general, the cost of $n$ units is $n^2 + 10$, find the average cost for $n=100$ units.</p><pre class="sourceCode julia">(100^2 + 10) / 100</pre>
<pre class="output">
100.1</pre>
<h5>Example</h5><p>The slope of the line through two points is $m=(y_1 - y_0) / (x_1 - x_0)$. For the two points $(1,2)$ and $(3,4)$ find the slope of the line through them.</p><pre class="sourceCode julia">(4 - 2) / (3 - 1)</pre>
<pre class="output">
1.0</pre>
<h3>Two ways to write division – and they are not the same</h3><p>One place where parentheses are required is when a mathematical expression is written with a horizontal division sign (a <a href="http://en.wikipedia.org/wiki/Vinculum_%28symbol%29">vinicula</a>) and has a complex denominator. For example:</p>$$~
\frac{1 + 2}{3 + 4}
~$$<p>This is because unlike <code>/</code>, the implied order of operation in the mathematical notation with the horizontal division symbol is to compute the top and the bottom and then divide. That is, the vinicula is a grouping notation like parentheses, only implicitly so. Thus the above expression really represents the more verbose:</p>$$~
\frac{(1 + 2)}{(3 + 4)}.
~$$<p>This lends itself readily to the translation:</p><pre class="sourceCode julia">(1 + 2) / (3 + 4)</pre>
<pre class="output">
0.42857142857142855</pre>
<p>To emphasize, this is not the same as the value without the parentheses:</p><pre class="sourceCode julia">1 + 2 / 3 + 4</pre>
<pre class="output">
5.666666666666666</pre>
<div class="alert alert-success" role="alert"><div class="markdown"><p>The viniculum also indicates grouping when used with the square root (the top bar), and complex conjugation. That usage is often clear enough, but the usage of the viniculum in division often leads to confusion. The example above is one where the parentheses are often, erroneously, omitted. However, more confusion can arise when there is more than one vinicula. An expression such as $a/b/c$ written inline has no confusion, it is: $(a/b) / c$ as left association is used; but when written with a pair of vinicula there is often the typographical convention of a slightly longer vinicula to indicate which is to be considered first. In the absence of that, then top to bottom association is often implied.</p>
</div></div>
<h3>Infix notation</h3><p>The factorial button on the Google Button creates an expression like <code>14!</code> that is then evaluated. The operator, <code>!</code>, appears after the value, <code>14</code>, that it is applied to. This is called <em>postfix notation</em>. When a unary minus sign is used, as in <code>-14</code>, the minus sign occurs before the value it operates on. This uses <em>prefix notation</em>. These concepts can be extended to binary operations, where a third possibility is provided: <em>infix notation</em>, where the operator is between the two values. The infix notation is common for our familiar mathematical operations. We write <code>14 + 2</code> and not <code>+ 14 2</code> or <code>14 2 +</code>. (Though if we had an old reverse-Polish notation calculator, we would enter <code>14 2 +</code>!) In <code>Julia</code>, there are several infix operators, such as <code>+</code>, <code>-</code>, ... and others that we may be unfamiliar with. These mirror the familiar notation from most math texts. However, prefix notation is more common, though with a set of parentheses to separate the operator and the values. For example:</p><pre class="sourceCode julia">+(14, 2)</pre>
<pre class="output">
16</pre>
<h2>Constants</h2><p>The Google calculator has two built in constants, <code>e</code> and <code>π</code>. Julia provides these as well:</p><pre class="sourceCode julia">e, pi</pre>
<pre class="output">
(e = 2.7182818284590...,π = 3.1415926535897...)</pre>
<p>Mathematically these are irrational values with decimal expansions that do not repeat. <code>Julia</code> represents them internally with additional accuracy beyond that which is displayed. Math constants can be used as though they were numbers, such is done with this expression:</p><pre class="sourceCode julia">e^(1/(2*pi))</pre>
<pre class="output">
1.17251960642002</pre>
<div class="alert alert-success" role="alert"><div class="markdown"><p>In most cases. There are occasional spots where using <code>pi</code> by itself causes an eror where <code>1pi</code> will not. The reason is <code>1pi</code> will create a floating point value from the irrational object, <code>pi</code>.</p>
</div></div>
<h2>Functions</h2><p>On the Google calculator, the square root button has a single purpose: for the current value find a square root if possible, and if not signal an error (such as what happens if the value is negative). For more general powers, the $x^y$ key can be used. </p><p>In <code>Julia</code>, functions are used to perform the actions that a specialized button may do on the calculator. <code>Julia</code> provides many standard mathematical functions – more than there could be buttons on a calculator – and allows the user to easily define their own functions. For example, julia provides the same set of functions on the calculator, though with different names. For logarithms, $\ln$ becomes <code>log</code> and $\log$ is <code>log10</code> (computer programs almost exclusively reserve <code>log</code> for the natural log); for factorials, $x!$, there is <code>factorial</code>; for powers $\sqrt{}$ becomes <code>sqrt</code>, $EXP$ becomes <code>exp</code>, and $x^y$ is given by <code>^</code>. For the trigonometric functions, the basic names are similar: <code>sin</code>, <code>cos</code>, <code>tan</code>. These expect radians. For angles in degrees, the convenience functions <code>sind</code>, <code>cosd</code>, and <code>tand</code> are provided. On the calculator, inverse functions like $\sin^{-1}(x)$ are done by combining $Inv$ with $\sin$. With <code>Julia</code>, the function name is <code>asin</code>, an abbreviation for "arcsine." (Which is a good thing, as the notation using a power of $-1$ is confusing and is not supported by <code>Julia</code>.) Similarly, there are <code>asind</code>, <code>acos</code>, <code>acosd</code>, <code>atan</code>, and <code>atand</code> functions available to the <code>Julia</code> user.</p><p>Using a function is very straightforward. A function is called using parentheses, in a manner visually similar to how a function is called mathematically. So if we consider the <code>sqrt</code> function, we have:</p><pre class="sourceCode julia">sqrt(4), sqrt(5)</pre>
<pre class="output">
(2.0,2.23606797749979)</pre>
<p>The function is referred to by name (<code>sqrt</code>) and called with parentheses. Any arguments are passed into the function using commas to separate values, should there be more than one. When there are numerous values for a function, the arguments may need to be given in a specific order or may possibly be specified with <em>keywords</em>.</p><div class="alert alert-info" role="alert"><div class="markdown"><p>Parentheses have many roles. We've just seen that parentheses may be used for grouping, and now we see they are used to indicate a function is being called. These are familiar from their parallel usage in traditional math notation. In <code>Julia</code>, a third usage is common, the making of a "tuple," or a container of different objects, for example <code>(1,e, pi)</code>.</p>
</div></div>
<p><code>Julia</code>'s design embraces <em>polymorphism</em>, a term to indicate that the same function may have different implementations and the one ultimately called depends on the number and types of the arguments. Polymorphism is also commonly referred to as <em>multiple dispatch</em>. This is a great convenience for the user who only needs to remember one function name for related uses, that may differ only in technicalities. For example, there are over 100 methods implemented for the generic function <code>+</code>. This may be expected from mathematical analogy: the details of the operation of addition are different for integers, than rational numbers, than polynomials, though all can be added.</p><p>The power operator, <code>^</code>, provides a concrete example. For integer bases there is a different implementation than there is for real bases. When the base is an integer, only those powers that will produce an integer are allowed. This is why <code>2^(-1)</code> gives a domain error</p><pre class="sourceCode julia">2^(-1)</pre>
<pre class="output">
DomainError()
</pre>
<p>However, the similar looking value:</p><pre class="sourceCode julia">2.0^(-1)</pre>
<pre class="output">
0.5</pre>
<p>produces an answer, as <code>2.0</code> is a floating point value, and floating point values can be used to represent rational values.</p><p>For the logarithm, we mentioned that <code>log</code> is the natural log and <code>log10</code> implements the logarithm base 10. As well there is <code>log2</code>. However, in general there is no <code>logb</code> for any base <code>b</code>. Instead, the basic <code>log</code> function can take two arguments. When it does, the first is the base, and the second the value to take the logarithm of. This avoids forcing the user to remember that $\log_b(x) = \log(x)/\log(b)$.</p><p>So we have these uses to find logarithms:</p><pre class="sourceCode julia">log(e), log(2, e), log(10, e), log(e, 2)</pre>
<pre class="output">
(1,1.4426950408889634,0.43429448190325176,0.6931471805599453)</pre>
<p>The generic function <code>log</code> not only has different implementations for different types of arguments (real or complex), but also has a different implementation depending on the number of arguments.</p><h3>Examples</h3><p>A right triangle has sides $a=11$ and $b=12$. Find the length of the hypotenuse. As $c^2 = a^2 + b^2$ we have:</p><pre class="sourceCode julia">sqrt(11^2 + 12^2)</pre>
<pre class="output">
16.278820596099706</pre>
<h5>Example</h5><p>A formula from statistics to compute the variance for $p$, when $n=10$ is $\sqrt{p (1-p)/10}$. Compute this value for $p=1/4$.</p><pre class="sourceCode julia">sqrt((1/4 * (1 - 1/4)) / 10)</pre>
<pre class="output">
0.13693063937629152</pre>
<h5>Example</h5><p>Find the distance between the points $(-3, -4)$ and $(5,6)$. Using the distance formula $\sqrt{(x_1-x_0)^2+(y_1-y_0)^2}$, we have:</p><pre class="sourceCode julia">sqrt((5 - -3)^2 + (6 - -4)^2)</pre>
<pre class="output">
12.806248474865697</pre>
<h5>Example</h5><p>The formula to compute the resistance of two resistors in parallel is given by: $1/(1/r_1 + 1/r_2)$. Suppose the resistance is $10$ in one resistor and $20$ in the other. What is the resistance in parallel?</p><pre class="sourceCode julia">1 / (1/10 + 1/20)</pre>
<pre class="output">
6.666666666666666</pre>
<h2>Errors</h2><p>Not all computations on a calculator are valid. For example, the Google calculator will display <code>Error</code> as the output of $0/0$ or $\sqrt{-1}$. These are also errors mathematically, though the second is not if the complex numbers are considered.</p><p>In <code>Julia</code>, there is a richer set of error types. The value <code>0/0</code> will in fact not be an error, but rather a value <code>NaN</code>. This is a special floating point value indicating "not a number" and is the result for various operations. The output of $\sqrt{-1}$ (computed via <code>sqrt(-1)</code>) will indicate a domain error:</p><pre class="sourceCode julia">sqrt(-1)</pre>
<pre class="output">
DomainError()
</pre>
<p>For integer or real-valued inputs, the <code>sqrt</code> function expects non-negative values, so that the output will always be a real number.</p><p>Surprisingly at first, the expression <code>2^-1</code> will also yield a domain error:</p><pre class="sourceCode julia">2^-1</pre>
<pre class="output">
DomainError()
</pre>
<p>Unlike the calculator, <code>Julia</code> makes a distinction between integer and non-integer values. Julia expects that for integer exponents with integer bases, the answer will be an integer and the answer in this expression, $1/2$, is not. The actual error message gives some indication of how to workaround this.</p><p>There are other types of errors. Overflow is a common one on most calculators. The value of $1000!$ is actually <em>very</em> large (over 2500 digits large). On the Google calculator it returns <code>Infinity</code>, a slight stretch. <code>Julia</code> gives <code>factorial(1000)</code> an <code>OverflowError</code>. This means that the answer is too large to be represented as a regular integer.</p><pre class="sourceCode julia">factorial(1000)</pre>
<pre class="output">
OverflowError()
</pre>
<p>How <code>Julia</code> handles overflow is a study in tradeoffs. For integer operations that demand high performance, <code>Julia</code> does not check for overflow. So, for example, if we are not careful strange answers can be had. Consider the difference here between powers of 2:</p><pre class="sourceCode julia">2^62, 2^63</pre>
<pre class="output">
(4611686018427387904,-9223372036854775808)</pre>
<p>On a machine with 64-bit integers, the first of these two values is correct, the second, clearly wrong, as the answer given is negative. This is due to overflow. The cost of checking is considered too high, so no error is thrown. The user is expected to have a sense that they need to be careful when their values are quite large. (Or use floating point numbers, which though not exact, can represent much bigger values.)</p><div class="alert alert-success" role="alert"><div class="markdown"><p>In a turnaround from a classic blues song, we can think of <code>Julia</code> as built for speed, not for comfort. All of these errors above could be worked around so that the end user doesn't see them. However, this would require slowing things down, either through checking of operations or allowing different types of outputs for similar type of inputs. These are tradeoffs that are not made for performance reasons. For the most part, the tradeoffs don't get in the way, but learning where to be careful takes some time. The error message can often give advice.</p>
</div></div>
<h2>Questions</h2><h6>Question</h6><p>Compute $22/7$ with <code>Julia</code>.</p><form name='WeaveQuestion' data-id='M5grdvMj' data-controltype='numeric'>
<div class='form-group '>
<div class='controls'>
<div class="input-group">
<input id="M5grdvMj" type="number" class="form-control">
</div>
<div id='M5grdvMj_message'></div>
</div>
</div>
</form>
<script text='text/javascript'>
$('#M5grdvMj').on('change', function() {
correct = Math.abs(this.value - 3.142857142857143) <= 0.001;
if(correct) {
$('#M5grdvMj_message').html('<div class="alert alert-success"><span class="glyphicon glyphicon-thumbs-up"> Correct</span></div>');
} else {
$('#M5grdvMj_message').html('<div class="alert alert-danger"><span class="glyphicon glyphicon-thumbs-down"> Incorrect</span></div>');
}
});
</script>
<h6>Question</h6><p>Compute $\sqrt{220}$ with <code>Julia</code>.</p><form name='WeaveQuestion' data-id='nKWBLYu4' data-controltype='numeric'>
<div class='form-group '>
<div class='controls'>
<div class="input-group">
<input id="nKWBLYu4" type="number" class="form-control">
</div>
<div id='nKWBLYu4_message'></div>
</div>
</div>
</form>
<script text='text/javascript'>
$('#nKWBLYu4').on('change', function() {
correct = Math.abs(this.value - 14.832396974191326) <= 0.001;
if(correct) {
$('#nKWBLYu4_message').html('<div class="alert alert-success"><span class="glyphicon glyphicon-thumbs-up"> Correct</span></div>');
} else {
$('#nKWBLYu4_message').html('<div class="alert alert-danger"><span class="glyphicon glyphicon-thumbs-down"> Incorrect</span></div>');
}
});
</script>
<h6>Question</h6><p>Compute $2^8$ with <code>Julia</code>.</p><form name='WeaveQuestion' data-id='ztoPnnKA' data-controltype='numeric'>
<div class='form-group '>
<div class='controls'>
<div class="input-group">
<input id="ztoPnnKA" type="number" class="form-control">
</div>
<div id='ztoPnnKA_message'></div>
</div>
</div>
</form>
<script text='text/javascript'>
$('#ztoPnnKA').on('change', function() {
correct = Math.abs(this.value - 256) <= 0;
if(correct) {
$('#ztoPnnKA_message').html('<div class="alert alert-success"><span class="glyphicon glyphicon-thumbs-up"> Correct</span></div>');
} else {
$('#ztoPnnKA_message').html('<div class="alert alert-danger"><span class="glyphicon glyphicon-thumbs-down"> Incorrect</span></div>');
}
});
</script>
<h6>Question</h6><p>Compute the value of </p>$$~
\frac{9 - 5 \cdot (3-4)}{6 - 2}.
~$$<form name='WeaveQuestion' data-id='UX6tZF5T' data-controltype='numeric'>
<div class='form-group '>
<div class='controls'>
<div class="input-group">
<input id="UX6tZF5T" type="number" class="form-control">
</div>
<div id='UX6tZF5T_message'></div>
</div>
</div>
</form>
<script text='text/javascript'>
$('#UX6tZF5T').on('change', function() {
correct = Math.abs(this.value - 3.5) <= 0.001;
if(correct) {
$('#UX6tZF5T_message').html('<div class="alert alert-success"><span class="glyphicon glyphicon-thumbs-up"> Correct</span></div>');
} else {
$('#UX6tZF5T_message').html('<div class="alert alert-danger"><span class="glyphicon glyphicon-thumbs-down"> Incorrect</span></div>');
}
});
</script>
<h6>Question</h6><p>Compute the following using <code>Julia</code>:</p>$$~
\frac{(.25 - .2)^2}{(1/4)^2 + (1/3)^2}
~$$<form name='WeaveQuestion' data-id='ya8S1gqR' data-controltype='numeric'>
<div class='form-group '>
<div class='controls'>
<div class="input-group">
<input id="ya8S1gqR" type="number" class="form-control">
</div>
<div id='ya8S1gqR_message'></div>
</div>
</div>
</form>
<script text='text/javascript'>
$('#ya8S1gqR').on('change', function() {
correct = Math.abs(this.value - 0.014399999999999993) <= 0.001;
if(correct) {
$('#ya8S1gqR_message').html('<div class="alert alert-success"><span class="glyphicon glyphicon-thumbs-up"> Correct</span></div>');
} else {
$('#ya8S1gqR_message').html('<div class="alert alert-danger"><span class="glyphicon glyphicon-thumbs-down"> Incorrect</span></div>');
}
});
</script>
<h6>Question</h6><p>Compute the decimal representation of the following using <code>Julia</code>:</p>$$~
1 + \frac{1}{2} + \frac{1}{2^2} + \frac{1}{2^3} + \frac{1}{2^4}
~$$<form name='WeaveQuestion' data-id='dsYBDCIh' data-controltype='numeric'>
<div class='form-group '>
<div class='controls'>
<div class="input-group">
<input id="dsYBDCIh" type="number" class="form-control">
</div>
<div id='dsYBDCIh_message'></div>
</div>
</div>
</form>
<script text='text/javascript'>
$('#dsYBDCIh').on('change', function() {
correct = Math.abs(this.value - 1.9375) <= 0.001;
if(correct) {
$('#dsYBDCIh_message').html('<div class="alert alert-success"><span class="glyphicon glyphicon-thumbs-up"> Correct</span></div>');
} else {
$('#dsYBDCIh_message').html('<div class="alert alert-danger"><span class="glyphicon glyphicon-thumbs-down"> Incorrect</span></div>');
}
});
</script>
<h6>Question</h6><p>Compute the following using <code>Julia</code>:</p>$$~
\frac{3 - 2^2}{4 - 2\cdot3}
~$$<form name='WeaveQuestion' data-id='wpZkLcwM' data-controltype='numeric'>
<div class='form-group '>
<div class='controls'>
<div class="input-group">
<input id="wpZkLcwM" type="number" class="form-control">
</div>
<div id='wpZkLcwM_message'></div>
</div>
</div>
</form>
<script text='text/javascript'>
$('#wpZkLcwM').on('change', function() {
correct = Math.abs(this.value - 0.5) <= 0.001;
if(correct) {
$('#wpZkLcwM_message').html('<div class="alert alert-success"><span class="glyphicon glyphicon-thumbs-up"> Correct</span></div>');
} else {
$('#wpZkLcwM_message').html('<div class="alert alert-danger"><span class="glyphicon glyphicon-thumbs-down"> Incorrect</span></div>');
}
});
</script>
<h6>Question</h6><p>Compute the following using <code>Julia</code>:</p>$$~
(1/2) \cdot 32 \cdot 3^2 + 100 \cdot 3 - 20
~$$<form name='WeaveQuestion' data-id='V5uNgClv' data-controltype='numeric'>
<div class='form-group '>
<div class='controls'>
<div class="input-group">
<input id="V5uNgClv" type="number" class="form-control">
</div>
<div id='V5uNgClv_message'></div>
</div>
</div>
</form>
<script text='text/javascript'>
$('#V5uNgClv').on('change', function() {
correct = Math.abs(this.value - 424.0) <= 0.001;
if(correct) {
$('#V5uNgClv_message').html('<div class="alert alert-success"><span class="glyphicon glyphicon-thumbs-up"> Correct</span></div>');
} else {
$('#V5uNgClv_message').html('<div class="alert alert-danger"><span class="glyphicon glyphicon-thumbs-down"> Incorrect</span></div>');
}
});
</script>
<h6>Question</h6><p>Wich of the following is a valid <code>Julia</code> expression for </p>$$~
\frac{3 - 2}{4 - 1}
~$$<p>that uses the least number of parentheses?</p><form name="WeaveQuestion" data-id="2pymw25a" data-controltype="radio">
<div class="form-group ">
<div class="radio">
<label>
<input type="radio" name="radio_2pymw25a" value="1"><div class="markdown"><p><code>(3 - 2) / (4 - 1)</code></p>
</div>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="radio_2pymw25a" value="2"><div class="markdown"><p><code>3 - 2 / (4 - 1)</code></p>
</div>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="radio_2pymw25a" value="3"><div class="markdown"><p><code>(3 - 2)/ 4 - 1</code></p>
</div>
</label>
</div>
<div id="2pymw25a_message"></div>
</div>
</form>
<script text="text/javascript">
$("input:radio[name='radio_2pymw25a']").on("change", function() {
correct = this.value == 1;
if(correct) {
$("#2pymw25a_message").html("<div class='alert alert-success'><span class='glyphicon glyphicon-thumbs-up'> Correct</span></div>");
} else {
$("#2pymw25a_message").html("<div class='alert alert-warning'><span class='glyphicon glyphicon-thumbs-down'> Incorrect</span></div>");
}
});
</script>
<h6>Question</h6><p>Wich of the following is a valid <code>Julia</code> expression for </p>$$~
\frac{3\cdot2}{4}
~$$<p>that uses the least number of parentheses?</p><form name="WeaveQuestion" data-id="ZPiS1IGn" data-controltype="radio">
<div class="form-group ">
<div class="radio">
<label>
<input type="radio" name="radio_ZPiS1IGn" value="1"><div class="markdown"><p><code>3 * 2 / 4</code></p>
</div>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="radio_ZPiS1IGn" value="2"><div class="markdown"><p><code>(3 * 2) / 4</code></p>
</div>
</label>
</div>
<div id="ZPiS1IGn_message"></div>
</div>
</form>
<script text="text/javascript">
$("input:radio[name='radio_ZPiS1IGn']").on("change", function() {
correct = this.value == 1;
if(correct) {
$("#ZPiS1IGn_message").html("<div class='alert alert-success'><span class='glyphicon glyphicon-thumbs-up'> Correct</span></div>");
} else {
$("#ZPiS1IGn_message").html("<div class='alert alert-warning'><span class='glyphicon glyphicon-thumbs-down'> Incorrect</span></div>");
}
});
</script>
<h6>Question</h6><p>Which of the following is a valid <code>Julia</code> expression for </p>$$~
2^{4 - 2}
~$$<p>that uses the least number of parentheses?</p><form name="WeaveQuestion" data-id="zKiIwhHM" data-controltype="radio">
<div class="form-group ">
<div class="radio">
<label>
<input type="radio" name="radio_zKiIwhHM" value="1"><div class="markdown"><p><code>2 ^ 4 - 2</code></p>
</div>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="radio_zKiIwhHM" value="2"><div class="markdown"><p><code>(2 ^ 4) - 2</code></p>
</div>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="radio_zKiIwhHM" value="3"><div class="markdown"><p><code>2 ^ (4 - 2)</code></p>
</div>
</label>
</div>
<div id="zKiIwhHM_message"></div>
</div>
</form>
<script text="text/javascript">
$("input:radio[name='radio_zKiIwhHM']").on("change", function() {
correct = this.value == 3;
if(correct) {
$("#zKiIwhHM_message").html("<div class='alert alert-success'><span class='glyphicon glyphicon-thumbs-up'> Correct</span></div>");
} else {
$("#zKiIwhHM_message").html("<div class='alert alert-warning'><span class='glyphicon glyphicon-thumbs-down'> Incorrect</span></div>");
}
});
</script>
<h6>Question</h6><p>One of these three expressions will produce a different answer, select that one:</p><form name="WeaveQuestion" data-id="bCLltqvc" data-controltype="radio">
<div class="form-group ">
<div class="radio">
<label>
<input type="radio" name="radio_bCLltqvc" value="1"><div class="markdown"><p><code>2 - (3 - 4)</code></p>
</div>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="radio_bCLltqvc" value="2"><div class="markdown"><p><code>(2 - 3) - 4</code></p>
</div>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="radio_bCLltqvc" value="3"><div class="markdown"><p><code>2 - 3 - 4</code></p>
</div>
</label>
</div>
<div id="bCLltqvc_message"></div>
</div>
</form>
<script text="text/javascript">
$("input:radio[name='radio_bCLltqvc']").on("change", function() {
correct = this.value == 1;
if(correct) {
$("#bCLltqvc_message").html("<div class='alert alert-success'><span class='glyphicon glyphicon-thumbs-up'> Correct</span></div>");
} else {
$("#bCLltqvc_message").html("<div class='alert alert-warning'><span class='glyphicon glyphicon-thumbs-down'> Incorrect</span></div>");
}
});
</script>
<h6>Question</h6><p>One of these three expressions will produce a different answer, select that one:</p><form name="WeaveQuestion" data-id="mHvk8vqq" data-controltype="radio">
<div class="form-group ">
<div class="radio">
<label>
<input type="radio" name="radio_mHvk8vqq" value="1"><div class="markdown"><p><code>(2 - 3) * 4</code></p>
</div>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="radio_mHvk8vqq" value="2"><div class="markdown"><p><code>2 - 3 * 4</code></p>
</div>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="radio_mHvk8vqq" value="3"><div class="markdown"><p><code>2 - (3 * 4)</code></p>
</div>
</label>
</div>
<div id="mHvk8vqq_message"></div>
</div>
</form>
<script text="text/javascript">
$("input:radio[name='radio_mHvk8vqq']").on("change", function() {
correct = this.value == 1;
if(correct) {
$("#mHvk8vqq_message").html("<div class='alert alert-success'><span class='glyphicon glyphicon-thumbs-up'> Correct</span></div>");
} else {
$("#mHvk8vqq_message").html("<div class='alert alert-warning'><span class='glyphicon glyphicon-thumbs-down'> Incorrect</span></div>");
}
});
</script>
<h6>Question</h6><p>One of these three expressions will produce a different answer, select that one:</p><form name="WeaveQuestion" data-id="aTJsgokb" data-controltype="radio">
<div class="form-group ">
<div class="radio">
<label>
<input type="radio" name="radio_aTJsgokb" value="1"><div class="markdown"><p><code>-1^2</code></p>
</div>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="radio_aTJsgokb" value="2"><div class="markdown"><p><code>(-1)^2</code></p>
</div>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="radio_aTJsgokb" value="3"><div class="markdown"><p><code>-(1^2)</code></p>
</div>
</label>
</div>
<div id="aTJsgokb_message"></div>
</div>
</form>
<script text="text/javascript">
$("input:radio[name='radio_aTJsgokb']").on("change", function() {
correct = this.value == 2;
if(correct) {
$("#aTJsgokb_message").html("<div class='alert alert-success'><span class='glyphicon glyphicon-thumbs-up'> Correct</span></div>");
} else {
$("#aTJsgokb_message").html("<div class='alert alert-warning'><span class='glyphicon glyphicon-thumbs-down'> Incorrect</span></div>");
}
});
</script>
<h6>Question</h6><p>What is the value of $\sin(\pi/10)$?</p><form name='WeaveQuestion' data-id='bDABykYf' data-controltype='numeric'>
<div class='form-group '>
<div class='controls'>
<div class="input-group">
<input id="bDABykYf" type="number" class="form-control">
</div>
<div id='bDABykYf_message'></div>
</div>
</div>
</form>
<script text='text/javascript'>
$('#bDABykYf').on('change', function() {
correct = Math.abs(this.value - 0.3090169943749474) <= 0.001;
if(correct) {
$('#bDABykYf_message').html('<div class="alert alert-success"><span class="glyphicon glyphicon-thumbs-up"> Correct</span></div>');
} else {
$('#bDABykYf_message').html('<div class="alert alert-danger"><span class="glyphicon glyphicon-thumbs-down"> Incorrect</span></div>');
}
});
</script>
<h6>Question</h6><p>What is the value of $\sin(52^\circ)$?</p><form name='WeaveQuestion' data-id='JNxX81n5' data-controltype='numeric'>
<div class='form-group '>
<div class='controls'>
<div class="input-group">
<input id="JNxX81n5" type="number" class="form-control">
</div>
<div id='JNxX81n5_message'></div>
</div>
</div>
</form>
<script text='text/javascript'>
$('#JNxX81n5').on('change', function() {
correct = Math.abs(this.value - 0.788010753606722) <= 0.001;
if(correct) {
$('#JNxX81n5_message').html('<div class="alert alert-success"><span class="glyphicon glyphicon-thumbs-up"> Correct</span></div>');
} else {
$('#JNxX81n5_message').html('<div class="alert alert-danger"><span class="glyphicon glyphicon-thumbs-down"> Incorrect</span></div>');
}
});
</script>
<h6>Question</h6><p>Is $\sin^{-1}(\sin(3\pi/2))$ equal to $3\pi/2$? (The "arc" functions do no use power notation, but instead a prefix of <code>a</code>.)</p><form name="WeaveQuestion" data-id="s8pADNpo" data-controltype="radio">
<div class="form-group ">
<div class="radio">
<label>
<input type="radio" name="radio_s8pADNpo" value="1"><div class="markdown"><p>Yes</p>
</div>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="radio_s8pADNpo" value="2"><div class="markdown"><p>No</p>
</div>
</label>
</div>
<div id="s8pADNpo_message"></div>
</div>
</form>
<script text="text/javascript">
$("input:radio[name='radio_s8pADNpo']").on("change", function() {
correct = this.value == 2;
if(correct) {
$("#s8pADNpo_message").html("<div class='alert alert-success'><span class='glyphicon glyphicon-thumbs-up'> Correct</span></div>");
} else {
$("#s8pADNpo_message").html("<div class='alert alert-warning'><span class='glyphicon glyphicon-thumbs-down'> Incorrect</span></div>");
}
});
</script>
<h6>Question</h6><p>What is the value of <code>round(3.5000)</code></p><form name='WeaveQuestion' data-id='Y7Q17CJv' data-controltype='numeric'>
<div class='form-group '>
<div class='controls'>
<div class="input-group">
<input id="Y7Q17CJv" type="number" class="form-control">
</div>
<div id='Y7Q17CJv_message'></div>
</div>
</div>
</form>
<script text='text/javascript'>
$('#Y7Q17CJv').on('change', function() {
correct = Math.abs(this.value - 4.0) <= 0.001;
if(correct) {
$('#Y7Q17CJv_message').html('<div class="alert alert-success"><span class="glyphicon glyphicon-thumbs-up"> Correct</span></div>');
} else {
$('#Y7Q17CJv_message').html('<div class="alert alert-danger"><span class="glyphicon glyphicon-thumbs-down"> Incorrect</span></div>');
}
});
</script>
<h6>Question</h6><p>What is the value of <code>sqrt(32 - 12)</code></p><form name='WeaveQuestion' data-id='ERIappkb' data-controltype='numeric'>
<div class='form-group '>
<div class='controls'>
<div class="input-group">
<input id="ERIappkb" type="number" class="form-control">
</div>
<div id='ERIappkb_message'></div>
</div>
</div>
</form>
<script text='text/javascript'>
$('#ERIappkb').on('change', function() {
correct = Math.abs(this.value - 4.47213595499958) <= 0.001;
if(correct) {
$('#ERIappkb_message').html('<div class="alert alert-success"><span class="glyphicon glyphicon-thumbs-up"> Correct</span></div>');
} else {
$('#ERIappkb_message').html('<div class="alert alert-danger"><span class="glyphicon glyphicon-thumbs-down"> Incorrect</span></div>');
}
});
</script>
<h6>Question</h6><p>Which is greater $e^\pi$ or $\pi^e$?</p><form name="WeaveQuestion" data-id="meLjWjmS" data-controltype="radio">
<div class="form-group ">
<div class="radio">
<label>
<input type="radio" name="radio_meLjWjmS" value="1"><div class="markdown"><p><code>pi^e</code></p>
</div>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="radio_meLjWjmS" value="2"><div class="markdown"><p><code>e^pi</code></p>
</div>
</label>
</div>
<div id="meLjWjmS_message"></div>
</div>
</form>
<script text="text/javascript">
$("input:radio[name='radio_meLjWjmS']").on("change", function() {
correct = this.value == 2;
if(correct) {
$("#meLjWjmS_message").html("<div class='alert alert-success'><span class='glyphicon glyphicon-thumbs-up'> Correct</span></div>");
} else {
$("#meLjWjmS_message").html("<div class='alert alert-warning'><span class='glyphicon glyphicon-thumbs-down'> Incorrect</span></div>");
}
});
</script>
<h6>Question</h6><p>What is the value of $\pi - (x - \sin(x)/\cos(x))$ when $x=3$?</p><form name='WeaveQuestion' data-id='kOTmBpcx' data-controltype='numeric'>
<div class='form-group '>
<div class='controls'>
<div class="input-group">
<input id="kOTmBpcx" type="number" class="form-control">
</div>
<div id='kOTmBpcx_message'></div>
</div>
</div>
</form>
<script text='text/javascript'>
$('#kOTmBpcx').on('change', function() {
correct = Math.abs(this.value - -0.0009538894844847157) <= 0.001;
if(correct) {
$('#kOTmBpcx_message').html('<div class="alert alert-success"><span class="glyphicon glyphicon-thumbs-up"> Correct</span></div>');
} else {
$('#kOTmBpcx_message').html('<div class="alert alert-danger"><span class="glyphicon glyphicon-thumbs-down"> Incorrect</span></div>');
}
});
</script>
<h6>Question</h6><p>Search the page mathematical <a href="http://docs.julialang.org/en/latest/stdlib/base/#mathematical-functions">functions</a> for a function which finds the factorial of <code>n</code>. The proper <code>Julia</code> command to find $10!$ would be:</p><form name="WeaveQuestion" data-id="qPIgytbG" data-controltype="radio">
<div class="form-group ">
<div class="radio">
<label>
<input type="radio" name="radio_qPIgytbG" value="1"><div class="markdown"><p><code>factorial(10)</code></p>
</div>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="radio_qPIgytbG" value="2"><div class="markdown"><p><code>10!</code></p>
</div>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="radio_qPIgytbG" value="3"><div class="markdown"><p><code>fact(10)</code></p>
</div>
</label>
</div>
<div id="qPIgytbG_message"></div>
</div>
</form>
<script text="text/javascript">
$("input:radio[name='radio_qPIgytbG']").on("change", function() {
correct = this.value == 1;
if(correct) {
$("#qPIgytbG_message").html("<div class='alert alert-success'><span class='glyphicon glyphicon-thumbs-up'> Correct</span></div>");
} else {
$("#qPIgytbG_message").html("<div class='alert alert-warning'><span class='glyphicon glyphicon-thumbs-down'> Incorrect</span></div>");
}
});
</script>
<h6>Question</h6><p>Will <code>-2^2</code> produce <code>4</code> (unary <code>-</code> evaluated before <code>^</code>) or <code>-4</code> (unary <code>-</code> evaluated after <code>^</code>)?</p><form name="WeaveQuestion" data-id="YbSBTZ04" data-controltype="radio">
<div class="form-group ">
<div class="radio">
<label>
<input type="radio" name="radio_YbSBTZ04" value="1"><div class="markdown"><p><code>4</code></p>
</div>
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="radio_YbSBTZ04" value="2"><div class="markdown"><p><code>-4</code></p>
</div>
</label>
</div>
<div id="YbSBTZ04_message"></div>
</div>
</form>
<script text="text/javascript">
$("input:radio[name='radio_YbSBTZ04']").on("change", function() {
correct = this.value == 2;
if(correct) {
$("#YbSBTZ04_message").html("<div class='alert alert-success'><span class='glyphicon glyphicon-thumbs-up'> Correct</span></div>");
} else {
$("#YbSBTZ04_message").html("<div class='alert alert-warning'><span class='glyphicon glyphicon-thumbs-down'> Incorrect</span></div>");
}
});