-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathEIWL2-03-first-look-at-lists-exercises.nb
6023 lines (5832 loc) · 254 KB
/
EIWL2-03-first-look-at-lists-exercises.nb
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
(* Content-type: application/vnd.wolfram.mathematica *)
(*** Wolfram Notebook File ***)
(* http://www.wolfram.com/nb *)
(* CreatedBy='Mathematica 12.2' *)
(*CacheID: 234*)
(* Internal cache information:
NotebookFileLineBreakTest
NotebookFileLineBreakTest
NotebookDataPosition[ 158, 7]
NotebookDataLength[ 259765, 6013]
NotebookOptionsPosition[ 186300, 4571]
NotebookOutlinePosition[ 246454, 5794]
CellTagsIndexPosition[ 246375, 5789]
WindowTitle->\:521D\:8BC6\:5217\:8868 - Wolfram \
\:8BED\:8A00\:5165\:95E8\:4ECB\:7ECD \:7FFB\:8BD1 By \:90D1\:660C\:76DB
WindowFrame->Normal*)
(* Beginning of Notebook Content *)
Notebook[{
Cell[TextData[{
"\:4f7f\:7528 ",
StyleBox["Range",
FontFamily->"Source Sans Pro"],
" \:6765\:521b\:5efa\:5217\:8868 ",
Cell[BoxData[
RowBox[{"{",
RowBox[{"1", ",", "2", ",", "3", ",", "4"}], "}"}]], "InlineCode",
ExpressionUUID->"3c3c840b-5719-45ed-8bf4-45d2137805f4"],
"\:3002"
}], "Exercise",
Editable->False,
Selectable->False,
Deletable->False,
CellDingbat->Cell[
"3.1", "ExerciseNumber", FontColor ->
RGBColor[0.9019607843137255, 0.4117647058823529, 0.027450980392156862`]],
ShowCellBracket->False,
Copyable->False,
CellChangeTimes->{{3.8361117241025543`*^9, 3.8361117337410994`*^9}},
CounterAssignments->{{"SectionNumber", 3}, {"ExerciseNumber", 1}, {
"WebOnly", 0}},ExpressionUUID->"9debdb06-72b5-410e-aa00-c0546a790a40"],
Cell[CellGroupData[{
Cell[BoxData[
TagBox[
ButtonBox[
StyleBox[
RowBox[{"\:671f\:671b\:8f93\:51fa", " ", "\[RightGuillemet]"}],
FontFamily->"Source Sans Pro",
FontSize->12,
FontColor->GrayLevel[0.6]],
Appearance->None,
ButtonFunction:>(SelectionMove[
ButtonNotebook[], All, ButtonCell, AutoScroll -> False]; FrontEndExecute[
FrontEndToken[
ButtonNotebook[], "OpenCloseGroup"]]),
Evaluator->Automatic,
Method->"Preemptive"],
MouseAppearanceTag["LinkHand"]]], "ExerciseExpectedResult",
Editable->False,
Selectable->False,
Deletable->False,
ShowCellBracket->False,
Copyable->False,ExpressionUUID->"5eac4d41-db0e-49ca-9ce2-18acb4fc7de9"],
Cell[BoxData[
FrameBox[
TagBox[GridBox[{
{
PaneBox[
InterpretationBox[Cell[BoxData[
GraphicsBox[
TagBox[RasterBox[CompressedData["
1:eJztVSGPnjAYbjYzuWS/YH8AucxWTpHcMoe5y47LzI3cLVmwuMq6OhQKhUJh
UDU1NTUIDAaBwFQgbn3bj33cfcB9S7Zk4t4EQuHp26fP+7zl/dX3i/AVQuj+
jbldXP7Ed3eX8ee3ZvDl9v7bze3110+3P65vru8+Xr02L9+Z64O54PnhJV7i
f4mhJKHnRVK74dhI2Y7T3oyx42WR5wVX/R5M97wq8qLkqjuHhhKiHQyJMQsx
DhLeHziMkpmWCUnRTQ9NHiMbhA+biWTuWYy7R7lahU1d5S9gPql39/zAKcA9
ws1UVabB4dkyFBQh6vRrqyyJAMnEJsMmM7OJFcVsFnazquPUldhLGkurIhgh
zMdNerrJnTI+E+6NSn3kUUdCS2C4mK0MRbrN0BAbZg8MnOwvfYDVyS6sI0Zo
HAQewvTAUDKMPOZmgCYzW8tY4GcYHkNQg012TDb2nazzAGyUbRGUUFJUtl0G
ss0aWlZmytBUkaE/V/yPGE5tYVde96EjaJRwsZXQJYlL2GWKEWaHbJOtOykU
sV6ulrPPZDhw2HmwqcyRg+5LCtiiPe2VMbXtFBFKaeI7J1at48Fsj02DSsxD
Ui0ySvCh3F2559AimO6fNXqRE6+fD7rOGGWMQhAfKPlpDQy1Ss0g5aBtAzZx
PtTmJJQ1fIqzWknZaWj92Bg4KX8vp7sqsIVjlZBCcM6bYTqFlcY9Xlypbujb
goA8WaNPYYuYbJWlG9juYA527GUtfPQoqBjNZ+DjHZtdsicoK84JTHciCbwZ
4tGycYs9gS0CTOuncl7l2Mv2PCQ7RQWRZ/BOrMImPQ7Do//TmdkUA0EdzFUc
h2zFyOaogmqhTD7TOH8VpnkaW5uL45uMhGGiVs0xdk239uEfwnRJoihJm2eF
fonz4hfcoF+V
"], {{0, 19}, {54, 0}}, {0, 255},
ColorFunction->RGBColor],
BoxForm`ImageTag["Byte", ColorSpace -> "RGB", Interleaving -> True],
Selectable->False],
DefaultBaseStyle->"ImageGraphics",
ImageSize->Magnification[1],
ImageSizeRaw->{54, 19},
PlotRange->{{0, 54}, {0, 19}}]], "ExerciseOutput",
ImageSize->{58, 19},
ImageMargins->{{0, 0}, {0, 0}},
ImageRegion->{{0, 1}, {0, 1}},
Magnification->1,ExpressionUUID->
"3616927f-872f-4442-8839-e4c2a9c7e0f5"],
Apply[TextCell,
Cell[
BoxData[
GraphicsBox[
TagBox[
RasterBox[CompressedData["
1:eJztVSGPnjAYbjYzuWS/YH8AucxWTpHcMoe5y47LzI3cLVmwuMq6OhQKhUJh
UDU1NTUIDAaBwFQgbn3bj33cfcB9S7Zk4t4EQuHp26fP+7zl/dX3i/AVQuj+
jbldXP7Ed3eX8ee3ZvDl9v7bze3110+3P65vru8+Xr02L9+Z64O54PnhJV7i
f4mhJKHnRVK74dhI2Y7T3oyx42WR5wVX/R5M97wq8qLkqjuHhhKiHQyJMQsx
DhLeHziMkpmWCUnRTQ9NHiMbhA+biWTuWYy7R7lahU1d5S9gPql39/zAKcA9
ws1UVabB4dkyFBQh6vRrqyyJAMnEJsMmM7OJFcVsFnazquPUldhLGkurIhgh
zMdNerrJnTI+E+6NSn3kUUdCS2C4mK0MRbrN0BAbZg8MnOwvfYDVyS6sI0Zo
HAQewvTAUDKMPOZmgCYzW8tY4GcYHkNQg012TDb2nazzAGyUbRGUUFJUtl0G
ss0aWlZmytBUkaE/V/yPGE5tYVde96EjaJRwsZXQJYlL2GWKEWaHbJOtOykU
sV6ulrPPZDhw2HmwqcyRg+5LCtiiPe2VMbXtFBFKaeI7J1at48Fsj02DSsxD
Ui0ySvCh3F2559AimO6fNXqRE6+fD7rOGGWMQhAfKPlpDQy1Ss0g5aBtAzZx
PtTmJJQ1fIqzWknZaWj92Bg4KX8vp7sqsIVjlZBCcM6bYTqFlcY9Xlypbujb
goA8WaNPYYuYbJWlG9juYA527GUtfPQoqBjNZ+DjHZtdsicoK84JTHciCbwZ
4tGycYs9gS0CTOuncl7l2Mv2PCQ7RQWRZ/BOrMImPQ7Do//TmdkUA0EdzFUc
h2zFyOaogmqhTD7TOH8VpnkaW5uL45uMhGGiVs0xdk239uEfwnRJoihJm2eF
fonz4hfcoF+V
"], {{0, 19}, {54, 0}}, {0, 255}, ColorFunction ->
RGBColor],
BoxForm`ImageTag[
"Byte", ColorSpace -> "RGB", Interleaving -> True], Selectable ->
False], DefaultBaseStyle -> "ImageGraphics", ImageSize ->
Magnification[1], ImageSizeRaw -> {54, 19},
PlotRange -> {{0, 54}, {0, 19}}]], "ExerciseOutput",
Magnification -> 1, CellFrameColor -> GrayLevel[0], Selectable ->
False, Copyable -> False, Editable -> False, ShowCellBracket ->
False, CellLabel -> "Out[]=", CellFrame -> False]]],
FrameMargins->{{10, 0}, {10, 12}},
ImageMargins->0,
ImageSize->Full],
ButtonBox[
PaneBox[
StyleBox["\[Times]",
FontFamily->"MathematicaMono",
FontSize->18,
FontWeight->"Bold",
FontColor->GrayLevel[0.75]],
Alignment->Right,
FrameMargins->{{0, 6}, {0, 0}},
ImageMargins->0],
Appearance->None,
ButtonFunction:>(SelectionMove[
ButtonNotebook[], All, ButtonCell, AutoScroll -> False];
NotebookFind[
EvaluationNotebook[], "ExerciseExpectedResult", Previous, CellStyle,
WrapAround -> False, AutoScroll -> False]; FrontEndExecute[
FrontEndToken[
ButtonNotebook[], "OpenCloseGroup"]])]}
},
GridBoxAlignment->{"Columns" -> {Left, Right}, "Rows" -> {Top}},
GridBoxItemSize->{"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}],
"Grid"],
FrameMargins->0,
FrameStyle->GrayLevel[0.7],
StripOnInput->False]], "ExerciseOutput",
Editable->False,
Selectable->False,
Deletable->False,
CellFrame->{{1, 1}, {1, 1}},
ShowCellBracket->False,
Copyable->False,
CellFrameMargins->{{0, 0}, {0, 0}},
CellFrameColor->GrayLevel[1],
LineBreakWithin->
Automatic,ExpressionUUID->"97753574-7ad6-4bb0-abcf-a21f6852e8b9"]
}, Closed]],
Cell[CellGroupData[{
Cell[BoxData[
StyleBox[
DynamicBox[ToBoxes[
$CellContext`SolutionResponseText["3.1"], StandardForm],
ImageSizeCache->{3.6, {1., 10.}}], "SolutionResponseText"]], "Subsection",
Editable->False,
Selectable->False,
Deletable->False,
ShowCellBracket->False,
CellMargins->{{24, 25}, {3, 0}},
Copyable->False,
CellFrameMargins->{{8, 0}, {0, 0}},
TextAlignment->Right,
ShowStringCharacters->False,
FontFamily->"Source Sans Pro",
FontSize->12,
FontWeight->"Plain",
FontSlant->"Plain",
Background->GrayLevel[
1],ExpressionUUID->"18ec879d-7c4c-4bda-8765-ef7cfb4455d6"],
Cell[BoxData[
ButtonBox[
PaneBox[
StyleBox[
RowBox[{"[", " ",
RowBox[{"Click", " ", "to", " ", "enter", " ", "code"}], " ", "]"}],
Selectable->False,
StripOnInput->False,
FontFamily->"Source Sans Pro",
FontSize->14,
FontWeight->Plain,
FontColor->GrayLevel[0.6]],
ImageSize->Full],
Appearance->None,
ButtonFunction:>(SelectionMove[
InputNotebook[], All, ButtonCell]; NotebookWrite[
InputNotebook[],
Cell[
BoxData[""], "Input"]]; SelectionMove[
InputNotebook[], Before, CellContents]; Null),
Evaluator->Automatic,
Method->"Preemptive"]], "Input",
Editable->False,
Selectable->False,
Deletable->False,
Copyable->False,
CellFrameLabels->{{None, None}, {None, None}},
ShowSyntaxStyles->False,
ShowStringCharacters->False,
CellTags->
"FirstInputCell",ExpressionUUID->"b191c6a2-b070-4b7a-b117-c63d3e7622e5"]
}, Open ]],
Cell[CellGroupData[{
Cell[BoxData[
PaneBox["\[ThickSpace]",
ImageSize->Full]], "CodeSectionDividerCloud",
Editable->False,
Selectable->False,
Deletable->False,
CellMargins->{{0, 0}, {0, 35}},
CellBracketOptions->{"OverlapContent"->True},
Copyable->False,ExpressionUUID->"9c08239e-fba9-465d-bb31-cd8a23924859"],
Cell["\:521b\:5efa 100 \
\:4ee5\:5185\:7684\:6570\:5b57\:7684\:5217\:8868\:3002", "Exercise",
Editable->False,
Selectable->False,
Deletable->False,
CellDingbat->Cell[
"3.2", "ExerciseNumber", FontColor ->
RGBColor[0.9019607843137255, 0.4117647058823529, 0.027450980392156862`]],
ShowCellBracket->False,
Copyable->False,
CellChangeTimes->{{3.8361117587516174`*^9, 3.8361117749053936`*^9}, {
3.8361123785527363`*^9, 3.836112380859996*^9}},
CounterAssignments->{{"SectionNumber", 3}, {"ExerciseNumber", 2}, {
"WebOnly", 0}},ExpressionUUID->"aafdf490-8e2b-408c-aca4-8c2ad2d07bde"],
Cell[CellGroupData[{
Cell[BoxData[
TagBox[
ButtonBox[
StyleBox[
RowBox[{"\:671f\:671b\:8f93\:51fa", " ", "\[RightGuillemet]"}],
FontFamily->"Source Sans Pro",
FontSize->12,
FontColor->GrayLevel[0.6]],
Appearance->None,
ButtonFunction:>(SelectionMove[
ButtonNotebook[], All, ButtonCell, AutoScroll -> False]; FrontEndExecute[
FrontEndToken[
ButtonNotebook[], "OpenCloseGroup"]]),
Evaluator->Automatic,
Method->"Preemptive"],
MouseAppearanceTag["LinkHand"]]], "ExerciseExpectedResult",
Editable->False,
Selectable->False,
Deletable->False,
ShowCellBracket->False,
Copyable->False,ExpressionUUID->"c0daa25b-6a44-4010-bea9-7241493c2956"],
Cell[BoxData[
FrameBox[
TagBox[GridBox[{
{
PaneBox[
InterpretationBox[Cell[BoxData[
GraphicsBox[
TagBox[RasterBox[CompressedData["
1:eJztnbGrM8t5xpWkSZl/IX9AVKeMyjQROCTVaWximTSOsANBrcBcBGmUIqgw
qJIbgR0Fg5qICxsM4hJBsk7YFMtFuSAXG5BBt9hiC2VnZqWz0jzvzLPnO/dL
vvh9wOYenf3pnZ15ZnZ2pe88v/+dv/rW6Ld7vd4Pf7f+v299+28GP/jBtyd/
+nv1D3/2/R/+5fe+/92/+OPv//V3v/fdH/zhd36nfvHP6/9dfqvXM/99ValU
KpVKpVKpVCqVSqVSqVQqlUrVTeftbNTvj9PS/XjJ0/R4qULE5bTfbtbrzT4r
QoeVxX63WW+2++zENCM7HI7nUvhtdcrSV2VH6Thz6PmYbE3drMBHlcUxfdRR
OLLWKd3Xp1qfQ6Bi3SOHnTmqPoHQUfbI5+6timS7Xq036SlYAbL2ZNM0v8RI
n6257boew93xHBxrxF5Oqe3gJJf7LdBm0+wiPxyysMs81vz4aoFT+KRB3SI7
bM0ZH2Jn/MAW+ZNZws32x/d8SEzZN3ijOuduAsXOFc1H0lfCXKZ8hVjWV4hl
fSWvP3FfAZb2lVCX8pXHdvAVHt+Qry7potfrjWabU3XN15Oe1WwvOvCcrvv2
GPf/43UGD6tOu2HrsOEsCc+k/dwc3p/tpRObuzdqNDgIfX/JVu3jVmgxTueD
3qP68wN6s3I3M0cOhvb48QZbrTrao3p928LJ9iidI+rehnWt2OSimRFbbsYO
7u+D089nD8vRa4t7g91JHByPrQ7LcWtge8tUtIpsp+M01mzAloeHYROtguvu
Fy8teJILZ+yxT8YzzU6EZqM2Z/alvnPQdNfBG2XmJlozgZICt1iYj5SvBJby
FWRJXyGW9VVw/Yn4CrOcr6S6jK8Qy/pKaHPEV5fDvNebu1E/7lbTsVldFwd5
qq7qs5jZzfdlZcZwBvfr1Wk76E/dOdq1cRBwSJmv3YkNF3B1NbUWg95wmdZv
bCW909ku2BPr4vN6thB22FVVNu+SLuvzHeJrxGU/MD1mzvW8n0tuOe1MB6/N
qVabSd33Y2nq+t3bYo/mv0Yb6czQ0JS75Wwy6ovtF9lyObh19XlfD+cAX9Rw
3Ww5Gs6t86vctHmy41mnQzMRQs322eq0qVtqFrcq7AFU97Tt3bYW1SmZLcQ9
BmCre73TrO7s0Vq69PqsnVwDt06boe7PpXnlj9FqaHY5xnyXtJ5n/WkCQTgf
SV8Jc5nyFWJZX8G6pK8C60/UV5AlfYXrcr7CLOcryEZ9VaZmVW91Q1a7aS6v
6vVbnm+3Cuf9LLxcN4cl0+Bh9qQGLy/9wPJS1JUWWeTO2Q5QfbElHkg0QFZ3
2csK327UfVev6pPEdkWVDoRV/VBfSO69akd5mQUa0O7ealNvTwYLd3Rmhm8U
fNADhqbKloE7F4mtLvdHXZd5cFWX6jq2HpS6+4J3y89sZa/gw8mkXgBiA/XA
WicP0+jjIsTm63o+vMTsI7bZ6Wwa0NtGnib6bZ66Zacw009c1T3WbGPut5DZ
svbGVKjsz0feV+JcJnwFWNpX4TUk7CvMcr4CLO0rwNK+Cp1vzFdSm0O+MteC
9lJv70eCq/qrzIImms02qDilydpcQUcrqadT49je9niqNyfCkxAzPewDmpfx
aDSdrzLhbtQNUJJl2+VyudpmseenRzMoI+lmvO4w07T+aJcd9+bWcnJER9pO
mDX9dU4ivffQvZdF60JWmkdhwUskGhr7AI1Y1cVhPU3FB1AyW12KY75b2i3V
Ju/CFuYK3p8Xl3QY3Q88su5RYW2B8XiyWMcuCA9stR3Xe93dMdstF4v1NtZb
uK/MMhu4MYGsuWOth2e8yk9pfcM6mOH9NmLPtTfu43LahfdFjW7zsaOvHthG
rK8Q65oc95XP8r56Zrv46pHt5qsHtqOvntvsxPnqkQ376pzvzFW9/SiJXtWr
48au1sJG995gK+kN3ZtM7IWqvn0bLIR3q/LpoD+aLbfblbk1rC/H6P3cAJlW
TaYv5rDBLvRxrrk5tU915CM24/tjr+EK26zMV9YV08Vi6p59LQLD+7SqD15n
X3wefQOrur2k9rfyc3XI2qun0zj8KfITa8u5rVR97zOIbJAe2TJf19uw+Xqz
sbM+8CTEYy+LYTOGk6kd0OEy5G/UV24ruIbX9RB7Wbaebwfd+MwebKPHs8V8
6h4svIRHuTUfO/oKzWV+VYfrAOUrj+3gq0e2m68e2W6+eurnTr5CfcX66pkN
+WrmXmw3hVzV7XOz+i4pOuxVWWzn5tgNaPllabtlPJvP51P7n8OF/InSrXTS
Fz7Pdav6utl85+Pwom2flqzkDyhLcxPaW6VFdclXk6FwCrZFeTKfTibTRbLf
mI37J7JXP+1m1KYIW6K6nA7mMna704+yzpb1mMwX85mdBaPJbBf4NpNsRXu1
5fvK7i5emhl3eVM/B5+BiGxSd1B/lpdVkW3HZjMZfIfnumW6XdW2qvcyBzNS
w0NguXmYjx19heYy6yvEsr7Cawjnqxbb2Vfy2hX31VM/d/IVqsv66pEN+6o6
Z6YDp639f5Wah3tpcDiLvXlsP5iHv9f42q3moTRch8tktZgvFnOj2dBuwpcJ
XNVbH2LYDzHhymkN3E9ut+zte1hfx219aX5J5cHPzCVneuuI8yz+/Lmel2az
sQlsUR6619zB9QZL14TcfBYyCj2jQ0NTZnb2Rb9g6LFHO/VGwVsVyFatgS1M
Hwad3GKr4lCP9MIN96yZfUlg9j3Xfe2aIvpE4pE1t66DhatUHdedWCu7/Zhs
iR1Vmz3P+6+3eFU67163kXl0evMJ0PN87OIrYS5TvkIs6yuP7eCrR7abr0Bd
2lce28FXuJ85Xz2zcV/l5rG3e65emm9QJmaDOlklWWq/6Fplk/q6P93e+6g8
7dwN4WJ3SA+H/X6fnyv/MOOr/mSXnc7FcTMbNrti77CWKvsExprBO8xeQqf7
/FQcD3bjb2/uwLuZp3m9l0VWFAf7VTHzwaVQ1H7K2doPeIfZh5m92Sa9lGWe
mLuA2b7wD6uKZPwyTbJjfljbe2b7fQNQFHSvu7mYbtIiN73afM+BY+s9TZpm
ycp09DI5pNmJr5tvpu4+N0ndGKbmIwiG/dp8vjycrfPifMqTycB8T6Og67ZG
29wpHyrc81Ldl/n2WBT5fjWw1/8LXdc9JRuv9udzbr98N87J8739I472Mw16
jErzuU1vtMuLsr5jNbPA7iK4utl6Oppt8tMxWRknz5IC1oXzkfQVZElfQZb0
FWCLX5K+wusP5yupLuMrWJf0ldzmuK8Q+3XYV9f2d2DKw7D3oHl9A1amdhF9
/ZJMung6ym7CvcPK+jbq5f6NzP58a68s3mEt3b+7CA67HJPJa9nBcl9I71bd
OsFOkEOgqDmR9l0eOKxKFqN71ZH72pJ3WFVfSW8n2h8tmoc0/rvB7r1/xdfY
ad6JbT2EbPr4zLJfLQaPL7lrPVf3mLQe6Q3GiVv46PO9/3Zw32BQ7DnbtVo9
nKYdWPPLrFlwDLxxX1Lq0GbzEczD7CPZMp+9vjpcu+9gc2y2md1/bJyMWDwf
OV9BlvQVYr8kfQXrkr6SzpfxFWIL0ldSXcZXcpvjvhLW25Cvrs0nFLPAfaHZ
zPeDz7jkw6rycj4//JOpD323C/NulanaurH6kKLNOZSRw+pjHg6ii9YqLfyG
XoL6OOzFDMUbz/cD6lambvlww9qhrvHFw79e/jh99eZZUJPPzlBffSN1/1/5
6nr7THBw32Q+6mSepPRW8r8f1MM+5DBllVVW2W+ALfer2Wg0hV8lqi6nPP73
SfSwNx6mrLLKKvu/zqpUKpVKpVKpVCqVSqVSqVQqlUqlUqlUKpVKpVKpVCqV
SqVSqVQqlUqlUqlUKhUQCrlmA9DLYu+Oy1p/A5gMQIfslQtARywbgI5YNgBd
aLNpdjQAHbB0ALpQlwpA99gOAeh4fEMB6GGW9VWjc3aoi9xGhPQVZElfIZb1
FWJZXwltvjK+AiztK6Eu5SuP7eArWJf0FWI5X1WnrN2629/zpXwlsJSvMNvR
Vx0EQ67JAPTqtBu2WBfbSgagCywVgA5ZMgAdsWwAutBmp0gAOma5AHSpLhOA
jlg2AF1ocyQAPcCSvrprP7fJh023UL4SWMpXkCV9hVjWV0KbnSK+wiznK6ku
4yvEsr4S2kz5CrK0r55a6HJDSF9BlvQVYLv6qpNgmDgZgG7y9fpTN+g70zXm
j2SSAeiQvXIB6IhlA9BhXTIAXWizUTQAHbJkADquywWgY5YLQIdsNABdZllf
OZU2Hcycox1W0leQJX2FWNZXsC7pK6HNRlFfQZb0Fa7L+QqznK8gS/oKsbyv
7n8P/LVbaF8BlvaVz3bzVXf5Idd8APqrzsm0YwC6zzY/EgHogKUD0MW6jg0G
oGOWC0AHLB2ADlg6AB23uXklEoAutTkUgC6znXxll4XBy0uT5tbJV09sI85X
z2wXX+G6jo35CrC0r57ZLr56Zrv4SjxfwlewzaSvnljeV0U9CouHc+N95bO3
t4j7CrBvWK/eplvIdbcA9EtxShMTudQbrS4dQxUf2duLXKgiZF2TowHogKUD
0D22QwD6E9spAP2R7RaALvQVFYD+xIYD0INsB1/ZAOLe9niqt2F9N3NpX3ns
rTGEryTWNTnsK8xyvkIs6yuf5X3lsR18JfdV3Fc+y/vKY2lfXWx8Sd0vo9F0
vsrMgxraV4C9/SbqK5l1TY6uV29WO+S6SwD65Z41YpN2OwWgP7FXjgqxVyoA
HbB0APoz2yUA/ZntEoDu9XOHAHTcV1wAus+GAtDDLOkrZ8WJ3erZYMSM9xVi
r1Eqyl5jvpJYxleQJX0FWdJXuJ85XwX6KuorgaV8BVl2vary6aA/mi2325UN
OBvuz/R6BdhrnIqxV2q9equeA7K7BKCb2I5iawNHN8dfdwtAf2Cb82ID0BHL
BqAj9koGoLfYn/7iZ24KsAHouK5RPAD9qZ87BaCjumwA+iMbDkCP1WV8ZTN8
zSSdz+dT+5/Dxe4/OF9BtvncLbrHCLAxX4XYmK8A+/c/+THnq3BdI9lXQj9T
vgrVjfkKs5yvpLrd1iujc9I3HyN/1XW9arG3DSG9Xvksv151lhBE7hQMQG8F
h5ugWBMUSAeg+2xzpkQAOma5AHTA0gHoz+xn28/pAHRYlwxABywdgC71MxOA
7rNfRgPQY3Ubyb4qk9Vi7rp0Phvavc0yyTlfQbZZbWK+ElnCV5jlfAXYH//j
zzlfSXUZX2GW81Wgn6O+guy/cb4Kja9TcL1qfW582RtPHvj1ymf59Qqz3Hr1
FsGAbDIA3XRIf7LLTufiuLH5qau8JAPQIUsGoEOWDEAH7H/+KxmADuu+dmUw
AF2qywSgw7pkALrc5ngAOmJ/HQ5AD9clfdVSZe+yje1JX0GW9BVkSV8BtspI
X8G6rddCvpLqMr6CdUlfyW2O+wqxJekrWJf0lb1rme7zU1Ffu2y08/ZUkb6C
LOkryHb3VQfBkGsyAL2s7ytf7l/E7M+3zaWWCUCHLBmAjtgzGYAO65IB6NL5
3n4dCkBHbEUGoEt1mQB0uc3xAHTMBgPQwyzpq5buXwkzYnwFWdJXiGV9BeuS
vpLO99Y/IV8hlvWVVJfxldzmuK8wy/kKsqSvLsdk8lpisNw3DycYX0GW9BVi
3+Cr9xAdgO5nYV/pAHTI+vo4LBmA/t512QB0XJcLQH/3vpIC0OMs7Sso0lek
Pg5L+uq967K+kmjGV6R4lvQVJDusV5cPWK881te7s9+c/m+EayurrLLKKvs+
+hTDtZVVVlllfxNYlUqlUqlUKpVKpVKpVCqVSqVSqVQqlUqlUqlUKpVKpVKp
VCqVSqVSqVQqlUql6iKcf81lo4u52+Z3kWx0yJLZ6GJdIhsdsHQ2upRRzmSj
Y5bLRndHHhM7JNl9RKhsdIG9MtnomOWz0X2W85XY5mvcV5AlfSXWJXwFWNpX
Ql3KV5hlfFUWx6f2HR1O+EpkCV9JLOMriWV8FWjzNeYrgaV8FahL+qq7/Pxr
Phsd5m47RbPREctmo+O6XDa6z/LZ6LDNZDY6YOls9OslW7XhlYnVIbPRIUtm
owOWz0b32K9pX8E2O0V9hVjWV7gu5yuf/W/aV7DNpK8AS/oqnT//3UCbs0b5
SmApX0GW9BVivyB9JbTZKeIrzHK+kuqSvnqTQHY2nY0Oc7eNiGx0wNLZ6Kgu
m42OWDYbHbB0NjrIGaez0c/WFxM7w87r2aKe9HQ2OmDpbHSf5bPRQV3aV7DN
RoSvAEv7CtVlfYVY1leApX0Fxoj2VVWVTXekJuvC9CrtK8DSvvJZ3legLu0r
2GYjwleApX2F6rK+epvE7GyrcDY6ZrlsdMDS2eiApbPRQ+cby0aX2sxko/ss
m41uzVNvBNpdyWajI/b2q1g2OmTJbPRAXccGfCWxjK8gS/oKsqSvwucb9pXc
5rivEMv6qvUuNmjDZBazvkLs/YWIryBL+ipQ17HB9Qqz3HoFWHq9Aiy9Xr1J
Uv41k42OWS4bHbFsNjpg6Wz0UN53LBsdsWw2OmDZbHRnniTLtsvlcrXNzh2y
0RF7+1UsbzHAuiYHstFFlvCVwFK+gizpK8Syvgr2VcRXkCV9hVjWV3cdzQoz
sk8AWF8h9tYkOsfTZ12TA74SWWa9wiy3XiGWXa8AS69Xb5OQf81ko0OWzEaH
LJmNjrPCuWz0QN53NBtdYKlsdMiS2ejOPKY/Ji5faLAr2Gx0xF6jVJS9xrLR
JZbxFWRJX0GW9BXuZ85Xgb6K+kpgKV9BlvTVTeZJyy3MiPUVYttNYlZ1wF5j
vpJYar1CLLteIZZdrwBLr1cfrsf862skGx2wn/3DT1xTY9no4bpGcjY6ZL/i
stFDdal7VY/lstGlulQ2upu562ZvkY+NBfbsXh2waetX8VUdstFs9AAb9ZXP
/snf/h3pq2Bdo4CvcD9zvgrUjfoKsqSvhLqUrxrZB7yvabad9uoPbLtJxKqO
2KivAiy7XrXY6rjptl7hukbx9eqpn9+wXnUQyL/mstEB+9k/fc5lo0t1X1+T
s9Exy2WjY9b9EMtGh+yXXDZ6oG6jQDa6nVz9pDn8Yu+vvyCz0RF7m7OxbHSJ
ZbLRIUv6ymf/4Ecr0ldCXcpXkCV9Jfdz3FeI/Zz0VWB8nQK+cjqagbDRz7YU
6SvE3poU85XEMr6CLL1ePbNVcaDXK1iXXK8AS69XbxHIv/6vX5LZ6DA7+/Wt
g9noUl0mGx3WJbPR5TbHs9ER+zWZjQ7rktno7klj72WRFcVhbY5cZhcyGx2y
ZDY6ZOlsdI/9938hfQXrkr6S6jK+gnVJX8ltjvsKsQXpK1iX9pWRWV5aQZm0
rwBL+wqwtK881n4EyfkK1G2NS9hXuC7nK1CX9tVbBLOzyWx0KbP71u5QNjpi
2Wx0qS6TjS63OZ6NjlkuGx2yZDb61Xx2tnvxjmSy0SFLZqMjtkM2ul+X9JV0
vrf+CfkKsayvpLqMr+Q2x32FWc5XkOV9VStdDJ8eWZC+8lneVx7bwVd+Xd5X
8Hxv/RPxlcd28BWsS/rqzYL512Q2+nvnbrPZ6Lgul43+7lnhZDY6YOlsdHdu
Tz1DZqND1tfHYUlfvXdd1le4Luerd+8r0leA7eArINpXlD4OS/vqfevyvsI0
56tvSp9i7rayyiqr7G8C+zZ9irnbyiqrrLK/CaxKpVKpVCqVSqVSqVQqlUql
UqlUKpVKpVKpVCqVSqVSqVQqlUqlUqlUKpVKpVLxgvnXZDa6nFEez0aXWCYb
3emU7jfr9Xbf+hv5RDa6yF7j2egSy2SjSyyTjR5os2l2MBtdYKls9EBdMhv9
iSV9JdYlfCWxtK8uh51BH0qwvkIs6yvA0r4CLO0r3OYr5Suf5X2F63K+ema7
+AqOL+krwPLrleucY7tl0FfPL15Wo8HgZbqXo+p9ofzrfyaz0YXcbSobHbJk
NroJvbU56ANXY7yx509lowsslY0OWTIbHbEVmY0utNkpko2OWS4bXarLZaP7
7IX0ldBmyleQZX1VNRZygznZuhKcrzDL+QqxrK8AS/sKt9kp5ivIkr4S6lK+
AiztK9xmzleIpdera27/SHLvIRsI+sp/scq2Nh1KnKS4uSD/ms1GByydjQ5y
xtlsdJs6Md2ZA8/7ufMem42OWDYbHbB0Njqqy2aj4zYbxbPREctmo8O6ZDY6
ZElfIZb1FRoj0lctC1WbSd2+8fHK+gqypK8Qy/oK1iV9JbTZKOoryJK+wnU5
X2GW8xVkSV/BMWLXKxMIspqOzR9WXtyycqCvJLNl9QopLqRBoczucDY6ZMls
dMTS2egXsyWYuAAY87fu65lLZ6MD9t6QWDY6YtlsdLmu+3UoG11gqWx0xLLZ
6Ihls9GD5xvxldhmwleAZX1lcw1ub2sXmWV2Jn2F2Hu6QsRXkCV9Fajr2ICv
JJbxFWRJX0GW9FX4fMO+ktsc9xVif8WuV42yelmfN6s6XK/ERSxdCEkfMaG8
70g2OmTJbHTE8tnohb0nGe2y497cqE6OFZ+36LO3s43nLYqsa3IwG11gqWx0
yJLZ6ICls9F9ls9GD/RV1FeApX3ls6yvzMztzZqZe04GZg5+RfoKsbfYuZiv
AqxrcsBXIkv4SmApX0GW9BViC9JXwb6K+AqypK8Q+yW9XlnZx1O31sL1SlzE
zAr/ligNkPcdzUYXWCobHbJ8NrrNfm1k4x07ZKN77JWhwuyVyEaHLJmN7rN8
NrrP8tnooJ/pbHSprxhfIZb1lc+SvnKhY/2X6WIxdY9KF4dfkb5C7CVKRdlr
zFcSy/gKsqSvIEv6Cvcz56tAX0V9JbCUryDLr1f2LR5XdeArcRFzpzbbxG+R
H4Sys4l7CsCS2ehCXSobvTS3tL1VWlSXfGVz4zbHX5N7KsQ2XRWffTIbzUYP
sNdYNrrP/vQXP3NTIJqNHqxrFMhGx/3MZaMH6kZ9BVnSV0Jdyle1znkyr4+b
LpL9xiaGs3t1xLJ79QAb9VWAjfrKZz/7+U9IXwXrGgV8hdivSF8F6jLrlc/y
6xWqy/rK6AP26vVPC3stEb5dgIWywuPZ6Ig9k9noct1GgWx089lBb3pPPJyZ
p45fkNnoiL11YywbXWKZbHTIktnoPvtHP1qR2ehCXSobHbJkNrrcz3FfIfZz
0leB8XUK+Kqt0u51N6eS9BVim+OivpJYxleQJX3lsz9NvyB9JdSlfAVZ0leQ
tT+x69UjW3Rar1DdRnFfVal5rt6Em1bIV/BFW9HuVZb7+Ba7LZS7zWSj+2xJ
Z6ODumQ2un2EVd+PpJeyzBPzKG+2L8hsdMiS2eiQJbPRAfuLX5DZ6LBua1xC
2ehSXSYbHdYls9HlNsd9hdivSF/BuqSvqiIZv0yT7Jgf1vbW2nwDgfQVZElf
QZb0FWDt1w8YX8G6pK+kuoyvYF3SV3Kb475CLLtewbqkr8zJpWmamJV5skqy
1HwVHfoKm82s8CbMtGtIEsrdprLRAUtno/ssnY1eJYvR/cjR7UtQXDY6YOls
dJ/ls9FBXTobHZ/vrX/C2eg+y2ej47pcNrrUZsZXiGV9BVjSV1WxH92++dwf
Le5PqhhfQZb0FWJZX8G6pK+k8731T8hXiGV9JdVlfCW3Oe4rzHK+giy7XpWH
1wpWc/s8DvhKePHN34FhxOdf09nogGSz0V2NxwsYm42OWF8fh2Wz0d+5Lp2N
DuuS2ejv3Vesr3yW9pV10HOLSV9B1tfHYUlfvXdd1le4Luerd+8r0leA5dcr
JN9X8MXM3Id8I6v6p5i7rayyyir7qbBI5d5+oUj8hzAfpk8xd1tZZZVV9lNh
kcrtbDyeLuN/oEqlUqlUKpVKpVKpVCqVSvVO+h/ZRno0
"], {{0, 86}, {498,
0}}, {0, 255},
ColorFunction->RGBColor],
BoxForm`ImageTag["Byte", ColorSpace -> "RGB", Interleaving -> True],
Selectable->False],
DefaultBaseStyle->"ImageGraphics",
ImageSize->Magnification[1],
ImageSizeRaw->{498, 86},
PlotRange->{{0, 498}, {0, 86}}]], "ExerciseOutput",
ImageSize->{502, 86},
ImageMargins->{{0, 0}, {0, 0}},
ImageRegion->{{0, 1}, {0, 1}},
Magnification->1,ExpressionUUID->
"03f7d7b5-9dc1-49ef-a9e9-d1b797d3f1de"],
Apply[TextCell,
Cell[
BoxData[
GraphicsBox[
TagBox[
RasterBox[CompressedData["
1:eJztnbGrM8t5xpWkSZl/IX9AVKeMyjQROCTVaWximTSOsANBrcBcBGmUIqgw
qJIbgR0Fg5qICxsM4hJBsk7YFMtFuSAXG5BBt9hiC2VnZqWz0jzvzLPnO/dL
vvh9wOYenf3pnZ15ZnZ2pe88v/+dv/rW6Ld7vd4Pf7f+v299+28GP/jBtyd/
+nv1D3/2/R/+5fe+/92/+OPv//V3v/fdH/zhd36nfvHP6/9dfqvXM/99ValU
KpVKpVKpVCqVSqVSqVQqlUrVTeftbNTvj9PS/XjJ0/R4qULE5bTfbtbrzT4r
QoeVxX63WW+2++zENCM7HI7nUvhtdcrSV2VH6Thz6PmYbE3drMBHlcUxfdRR
OLLWKd3Xp1qfQ6Bi3SOHnTmqPoHQUfbI5+6timS7Xq036SlYAbL2ZNM0v8RI
n6257boew93xHBxrxF5Oqe3gJJf7LdBm0+wiPxyysMs81vz4aoFT+KRB3SI7
bM0ZH2Jn/MAW+ZNZws32x/d8SEzZN3ijOuduAsXOFc1H0lfCXKZ8hVjWV4hl
fSWvP3FfAZb2lVCX8pXHdvAVHt+Qry7potfrjWabU3XN15Oe1WwvOvCcrvv2
GPf/43UGD6tOu2HrsOEsCc+k/dwc3p/tpRObuzdqNDgIfX/JVu3jVmgxTueD
3qP68wN6s3I3M0cOhvb48QZbrTrao3p928LJ9iidI+rehnWt2OSimRFbbsYO
7u+D089nD8vRa4t7g91JHByPrQ7LcWtge8tUtIpsp+M01mzAloeHYROtguvu
Fy8teJILZ+yxT8YzzU6EZqM2Z/alvnPQdNfBG2XmJlozgZICt1iYj5SvBJby
FWRJXyGW9VVw/Yn4CrOcr6S6jK8Qy/pKaHPEV5fDvNebu1E/7lbTsVldFwd5
qq7qs5jZzfdlZcZwBvfr1Wk76E/dOdq1cRBwSJmv3YkNF3B1NbUWg95wmdZv
bCW909ku2BPr4vN6thB22FVVNu+SLuvzHeJrxGU/MD1mzvW8n0tuOe1MB6/N
qVabSd33Y2nq+t3bYo/mv0Yb6czQ0JS75Wwy6ovtF9lyObh19XlfD+cAX9Rw
3Ww5Gs6t86vctHmy41mnQzMRQs322eq0qVtqFrcq7AFU97Tt3bYW1SmZLcQ9
BmCre73TrO7s0Vq69PqsnVwDt06boe7PpXnlj9FqaHY5xnyXtJ5n/WkCQTgf
SV8Jc5nyFWJZX8G6pK8C60/UV5AlfYXrcr7CLOcryEZ9VaZmVW91Q1a7aS6v
6vVbnm+3Cuf9LLxcN4cl0+Bh9qQGLy/9wPJS1JUWWeTO2Q5QfbElHkg0QFZ3
2csK327UfVev6pPEdkWVDoRV/VBfSO69akd5mQUa0O7ealNvTwYLd3Rmhm8U
fNADhqbKloE7F4mtLvdHXZd5cFWX6jq2HpS6+4J3y89sZa/gw8mkXgBiA/XA
WicP0+jjIsTm63o+vMTsI7bZ6Wwa0NtGnib6bZ66Zacw009c1T3WbGPut5DZ
svbGVKjsz0feV+JcJnwFWNpX4TUk7CvMcr4CLO0rwNK+Cp1vzFdSm0O+MteC
9lJv70eCq/qrzIImms02qDilydpcQUcrqadT49je9niqNyfCkxAzPewDmpfx
aDSdrzLhbtQNUJJl2+VyudpmseenRzMoI+lmvO4w07T+aJcd9+bWcnJER9pO
mDX9dU4ivffQvZdF60JWmkdhwUskGhr7AI1Y1cVhPU3FB1AyW12KY75b2i3V
Ju/CFuYK3p8Xl3QY3Q88su5RYW2B8XiyWMcuCA9stR3Xe93dMdstF4v1NtZb
uK/MMhu4MYGsuWOth2e8yk9pfcM6mOH9NmLPtTfu43LahfdFjW7zsaOvHthG
rK8Q65oc95XP8r56Zrv46pHt5qsHtqOvntvsxPnqkQ376pzvzFW9/SiJXtWr
48au1sJG995gK+kN3ZtM7IWqvn0bLIR3q/LpoD+aLbfblbk1rC/H6P3cAJlW
TaYv5rDBLvRxrrk5tU915CM24/tjr+EK26zMV9YV08Vi6p59LQLD+7SqD15n
X3wefQOrur2k9rfyc3XI2qun0zj8KfITa8u5rVR97zOIbJAe2TJf19uw+Xqz
sbM+8CTEYy+LYTOGk6kd0OEy5G/UV24ruIbX9RB7Wbaebwfd+MwebKPHs8V8
6h4svIRHuTUfO/oKzWV+VYfrAOUrj+3gq0e2m68e2W6+eurnTr5CfcX66pkN
+WrmXmw3hVzV7XOz+i4pOuxVWWzn5tgNaPllabtlPJvP51P7n8OF/InSrXTS
Fz7Pdav6utl85+Pwom2flqzkDyhLcxPaW6VFdclXk6FwCrZFeTKfTibTRbLf
mI37J7JXP+1m1KYIW6K6nA7mMna704+yzpb1mMwX85mdBaPJbBf4NpNsRXu1
5fvK7i5emhl3eVM/B5+BiGxSd1B/lpdVkW3HZjMZfIfnumW6XdW2qvcyBzNS
w0NguXmYjx19heYy6yvEsr7Cawjnqxbb2Vfy2hX31VM/d/IVqsv66pEN+6o6
Z6YDp639f5Wah3tpcDiLvXlsP5iHv9f42q3moTRch8tktZgvFnOj2dBuwpcJ
XNVbH2LYDzHhymkN3E9ut+zte1hfx219aX5J5cHPzCVneuuI8yz+/Lmel2az
sQlsUR6619zB9QZL14TcfBYyCj2jQ0NTZnb2Rb9g6LFHO/VGwVsVyFatgS1M
Hwad3GKr4lCP9MIN96yZfUlg9j3Xfe2aIvpE4pE1t66DhatUHdedWCu7/Zhs
iR1Vmz3P+6+3eFU67163kXl0evMJ0PN87OIrYS5TvkIs6yuP7eCrR7abr0Bd
2lce28FXuJ85Xz2zcV/l5rG3e65emm9QJmaDOlklWWq/6Fplk/q6P93e+6g8
7dwN4WJ3SA+H/X6fnyv/MOOr/mSXnc7FcTMbNrti77CWKvsExprBO8xeQqf7
/FQcD3bjb2/uwLuZp3m9l0VWFAf7VTHzwaVQ1H7K2doPeIfZh5m92Sa9lGWe
mLuA2b7wD6uKZPwyTbJjfljbe2b7fQNQFHSvu7mYbtIiN73afM+BY+s9TZpm
ycp09DI5pNmJr5tvpu4+N0ndGKbmIwiG/dp8vjycrfPifMqTycB8T6Og67ZG
29wpHyrc81Ldl/n2WBT5fjWw1/8LXdc9JRuv9udzbr98N87J8739I472Mw16
jErzuU1vtMuLsr5jNbPA7iK4utl6Oppt8tMxWRknz5IC1oXzkfQVZElfQZb0
FWCLX5K+wusP5yupLuMrWJf0ldzmuK8Q+3XYV9f2d2DKw7D3oHl9A1amdhF9
/ZJMung6ym7CvcPK+jbq5f6NzP58a68s3mEt3b+7CA67HJPJa9nBcl9I71bd
OsFOkEOgqDmR9l0eOKxKFqN71ZH72pJ3WFVfSW8n2h8tmoc0/rvB7r1/xdfY
ad6JbT2EbPr4zLJfLQaPL7lrPVf3mLQe6Q3GiVv46PO9/3Zw32BQ7DnbtVo9
nKYdWPPLrFlwDLxxX1Lq0GbzEczD7CPZMp+9vjpcu+9gc2y2md1/bJyMWDwf
OV9BlvQVYr8kfQXrkr6SzpfxFWIL0ldSXcZXcpvjvhLW25Cvrs0nFLPAfaHZ
zPeDz7jkw6rycj4//JOpD323C/NulanaurH6kKLNOZSRw+pjHg6ii9YqLfyG
XoL6OOzFDMUbz/cD6lambvlww9qhrvHFw79e/jh99eZZUJPPzlBffSN1/1/5
6nr7THBw32Q+6mSepPRW8r8f1MM+5DBllVVW2W+ALfer2Wg0hV8lqi6nPP73
SfSwNx6mrLLKKvu/zqpUKpVKpVKpVCqVSqVSqVQqlUqlUqlUKpVKpVKpVCqV
SqVSqVQqlUqlUqlUKhUQCrlmA9DLYu+Oy1p/A5gMQIfslQtARywbgI5YNgBd
aLNpdjQAHbB0ALpQlwpA99gOAeh4fEMB6GGW9VWjc3aoi9xGhPQVZElfIZb1
FWJZXwltvjK+AiztK6Eu5SuP7eArWJf0FWI5X1WnrN2629/zpXwlsJSvMNvR
Vx0EQ67JAPTqtBu2WBfbSgagCywVgA5ZMgAdsWwAutBmp0gAOma5AHSpLhOA
jlg2AF1ocyQAPcCSvrprP7fJh023UL4SWMpXkCV9hVjWV0KbnSK+wiznK6ku
4yvEsr4S2kz5CrK0r55a6HJDSF9BlvQVYLv6qpNgmDgZgG7y9fpTN+g70zXm
j2SSAeiQvXIB6IhlA9BhXTIAXWizUTQAHbJkADquywWgY5YLQIdsNABdZllf
OZU2Hcycox1W0leQJX2FWNZXsC7pK6HNRlFfQZb0Fa7L+QqznK8gS/oKsbyv
7n8P/LVbaF8BlvaVz3bzVXf5Idd8APqrzsm0YwC6zzY/EgHogKUD0MW6jg0G
oGOWC0AHLB2ADlg6AB23uXklEoAutTkUgC6znXxll4XBy0uT5tbJV09sI85X
z2wXX+G6jo35CrC0r57ZLr56Zrv4SjxfwlewzaSvnljeV0U9CouHc+N95bO3
t4j7CrBvWK/eplvIdbcA9EtxShMTudQbrS4dQxUf2duLXKgiZF2TowHogKUD
0D22QwD6E9spAP2R7RaALvQVFYD+xIYD0INsB1/ZAOLe9niqt2F9N3NpX3ns
rTGEryTWNTnsK8xyvkIs6yuf5X3lsR18JfdV3Fc+y/vKY2lfXWx8Sd0vo9F0
vsrMgxraV4C9/SbqK5l1TY6uV29WO+S6SwD65Z41YpN2OwWgP7FXjgqxVyoA
HbB0APoz2yUA/ZntEoDu9XOHAHTcV1wAus+GAtDDLOkrZ8WJ3erZYMSM9xVi
r1Eqyl5jvpJYxleQJX0FWdJXuJ85XwX6KuorgaV8BVl2vary6aA/mi2325UN
OBvuz/R6BdhrnIqxV2q9equeA7K7BKCb2I5iawNHN8dfdwtAf2Cb82ID0BHL
BqAj9koGoLfYn/7iZ24KsAHouK5RPAD9qZ87BaCjumwA+iMbDkCP1WV8ZTN8
zSSdz+dT+5/Dxe4/OF9BtvncLbrHCLAxX4XYmK8A+/c/+THnq3BdI9lXQj9T
vgrVjfkKs5yvpLrd1iujc9I3HyN/1XW9arG3DSG9Xvksv151lhBE7hQMQG8F
h5ugWBMUSAeg+2xzpkQAOma5AHTA0gHoz+xn28/pAHRYlwxABywdgC71MxOA
7rNfRgPQY3Ubyb4qk9Vi7rp0Phvavc0yyTlfQbZZbWK+ElnCV5jlfAXYH//j
zzlfSXUZX2GW81Wgn6O+guy/cb4Kja9TcL1qfW582RtPHvj1ymf59Qqz3Hr1
FsGAbDIA3XRIf7LLTufiuLH5qau8JAPQIUsGoEOWDEAH7H/+KxmADuu+dmUw
AF2qywSgw7pkALrc5ngAOmJ/HQ5AD9clfdVSZe+yje1JX0GW9BVkSV8BtspI
X8G6rddCvpLqMr6CdUlfyW2O+wqxJekrWJf0lb1rme7zU1Ffu2y08/ZUkb6C
LOkryHb3VQfBkGsyAL2s7ytf7l/E7M+3zaWWCUCHLBmAjtgzGYAO65IB6NL5
3n4dCkBHbEUGoEt1mQB0uc3xAHTMBgPQwyzpq5buXwkzYnwFWdJXiGV9BeuS
vpLO99Y/IV8hlvWVVJfxldzmuK8wy/kKsqSvLsdk8lpisNw3DycYX0GW9BVi
3+Cr9xAdgO5nYV/pAHTI+vo4LBmA/t512QB0XJcLQH/3vpIC0OMs7Sso0lek
Pg5L+uq967K+kmjGV6R4lvQVJDusV5cPWK881te7s9+c/m+EayurrLLKKvs+
+hTDtZVVVlllfxNYlUqlUqlUKpVKpVKpVCqVSqVSqVQqlUqlUqlUKpVKpVKp
VCqVSqVSqVQqlUql6iKcf81lo4u52+Z3kWx0yJLZ6GJdIhsdsHQ2upRRzmSj
Y5bLRndHHhM7JNl9RKhsdIG9MtnomOWz0X2W85XY5mvcV5AlfSXWJXwFWNpX
Ql3KV5hlfFUWx6f2HR1O+EpkCV9JLOMriWV8FWjzNeYrgaV8FahL+qq7/Pxr
Phsd5m47RbPREctmo+O6XDa6z/LZ6LDNZDY6YOls9OslW7XhlYnVIbPRIUtm
owOWz0b32K9pX8E2O0V9hVjWV7gu5yuf/W/aV7DNpK8AS/oqnT//3UCbs0b5
SmApX0GW9BVivyB9JbTZKeIrzHK+kuqSvnqTQHY2nY0Oc7eNiGx0wNLZ6Kgu
m42OWDYbHbB0NjrIGaez0c/WFxM7w87r2aKe9HQ2OmDpbHSf5bPRQV3aV7DN
RoSvAEv7CtVlfYVY1leApX0Fxoj2VVWVTXekJuvC9CrtK8DSvvJZ3legLu0r
2GYjwleApX2F6rK+epvE7GyrcDY6ZrlsdMDS2eiApbPRQ+cby0aX2sxko/ss
m41uzVNvBNpdyWajI/b2q1g2OmTJbPRAXccGfCWxjK8gS/oKsqSvwucb9pXc
5rivEMv6qvUuNmjDZBazvkLs/YWIryBL+ipQ17HB9Qqz3HoFWHq9Aiy9Xr1J
Uv41k42OWS4bHbFsNjpg6Wz0UN53LBsdsWw2OmDZbHRnniTLtsvlcrXNzh2y
0RF7+1UsbzHAuiYHstFFlvCVwFK+gizpK8Syvgr2VcRXkCV9hVjWV3cdzQoz
sk8AWF8h9tYkOsfTZ12TA74SWWa9wiy3XiGWXa8AS69Xb5OQf81ko0OWzEaH
LJmNjrPCuWz0QN53NBtdYKlsdMiS2ejOPKY/Ji5faLAr2Gx0xF6jVJS9xrLR
JZbxFWRJX0GW9BXuZ85Xgb6K+kpgKV9BlvTVTeZJyy3MiPUVYttNYlZ1wF5j
vpJYar1CLLteIZZdrwBLr1cfrsf862skGx2wn/3DT1xTY9no4bpGcjY6ZL/i
stFDdal7VY/lstGlulQ2upu562ZvkY+NBfbsXh2waetX8VUdstFs9AAb9ZXP
/snf/h3pq2Bdo4CvcD9zvgrUjfoKsqSvhLqUrxrZB7yvabad9uoPbLtJxKqO
2KivAiy7XrXY6rjptl7hukbx9eqpn9+wXnUQyL/mstEB+9k/fc5lo0t1X1+T
s9Exy2WjY9b9EMtGh+yXXDZ6oG6jQDa6nVz9pDn8Yu+vvyCz0RF7m7OxbHSJ
ZbLRIUv6ymf/4Ecr0ldCXcpXkCV9Jfdz3FeI/Zz0VWB8nQK+cjqagbDRz7YU
6SvE3poU85XEMr6CLL1ePbNVcaDXK1iXXK8AS69XbxHIv/6vX5LZ6DA7+/Wt
g9noUl0mGx3WJbPR5TbHs9ER+zWZjQ7rktno7klj72WRFcVhbY5cZhcyGx2y
ZDY6ZOlsdI/9938hfQXrkr6S6jK+gnVJX8ltjvsKsQXpK1iX9pWRWV5aQZm0
rwBL+wqwtK881n4EyfkK1G2NS9hXuC7nK1CX9tVbBLOzyWx0KbP71u5QNjpi
2Wx0qS6TjS63OZ6NjlkuGx2yZDb61Xx2tnvxjmSy0SFLZqMjtkM2ul+X9JV0
vrf+CfkKsayvpLqMr+Q2x32FWc5XkOV9VStdDJ8eWZC+8lneVx7bwVd+Xd5X
8Hxv/RPxlcd28BWsS/rqzYL512Q2+nvnbrPZ6Lgul43+7lnhZDY6YOlsdHdu
Tz1DZqND1tfHYUlfvXdd1le4Luerd+8r0leA7eArINpXlD4OS/vqfevyvsI0
56tvSp9i7rayyiqr7G8C+zZ9irnbyiqrrLK/CaxKpVKpVCqVSqVSqVQqlUql
UqlUKpVKpVKpVCqVSqVSqVQqlUqlUqlUKpVKpVLxgvnXZDa6nFEez0aXWCYb
3emU7jfr9Xbf+hv5RDa6yF7j2egSy2SjSyyTjR5os2l2MBtdYKls9EBdMhv9
iSV9JdYlfCWxtK8uh51BH0qwvkIs6yvA0r4CLO0r3OYr5Suf5X2F63K+ema7
+AqOL+krwPLrleucY7tl0FfPL15Wo8HgZbqXo+p9ofzrfyaz0YXcbSobHbJk
NroJvbU56ANXY7yx509lowsslY0OWTIbHbEVmY0utNkpko2OWS4bXarLZaP7
7IX0ldBmyleQZX1VNRZygznZuhKcrzDL+QqxrK8AS/sKt9kp5ivIkr4S6lK+
AiztK9xmzleIpdera27/SHLvIRsI+sp/scq2Nh1KnKS4uSD/ms1GByydjQ5y
xtlsdJs6Md2ZA8/7ufMem42OWDYbHbB0Njqqy2aj4zYbxbPREctmo8O6ZDY6
ZElfIZb1FRoj0lctC1WbSd2+8fHK+gqypK8Qy/oK1iV9JbTZKOoryJK+wnU5
X2GW8xVkSV/BMWLXKxMIspqOzR9WXtyycqCvJLNl9QopLqRBoczucDY6ZMls
dMTS2egXsyWYuAAY87fu65lLZ6MD9t6QWDY6YtlsdLmu+3UoG11gqWx0xLLZ
6Ihls9GD5xvxldhmwleAZX1lcw1ub2sXmWV2Jn2F2Hu6QsRXkCV9Fajr2ICv
JJbxFWRJX0GW9FX4fMO+ktsc9xVif8WuV42yelmfN6s6XK/ERSxdCEkfMaG8
70g2OmTJbHTE8tnohb0nGe2y497cqE6OFZ+36LO3s43nLYqsa3IwG11gqWx0
yJLZ6ICls9F9ls9GD/RV1FeApX3ls6yvzMztzZqZe04GZg5+RfoKsbfYuZiv
AqxrcsBXIkv4SmApX0GW9BViC9JXwb6K+AqypK8Q+yW9XlnZx1O31sL1SlzE
zAr/ligNkPcdzUYXWCobHbJ8NrrNfm1k4x07ZKN77JWhwuyVyEaHLJmN7rN8
NrrP8tnooJ/pbHSprxhfIZb1lc+SvnKhY/2X6WIxdY9KF4dfkb5C7CVKRdlr
zFcSy/gKsqSvIEv6Cvcz56tAX0V9JbCUryDLr1f2LR5XdeArcRFzpzbbxG+R
H4Sys4l7CsCS2ehCXSobvTS3tL1VWlSXfGVz4zbHX5N7KsQ2XRWffTIbzUYP
sNdYNrrP/vQXP3NTIJqNHqxrFMhGx/3MZaMH6kZ9BVnSV0Jdyle1znkyr4+b
LpL9xiaGs3t1xLJ79QAb9VWAjfrKZz/7+U9IXwXrGgV8hdivSF8F6jLrlc/y
6xWqy/rK6AP26vVPC3stEb5dgIWywuPZ6Ig9k9noct1GgWx089lBb3pPPJyZ
p45fkNnoiL11YywbXWKZbHTIktnoPvtHP1qR2ehCXSobHbJkNrrcz3FfIfZz
0leB8XUK+Kqt0u51N6eS9BVim+OivpJYxleQJX3lsz9NvyB9JdSlfAVZ0leQ
tT+x69UjW3Rar1DdRnFfVal5rt6Em1bIV/BFW9HuVZb7+Ba7LZS7zWSj+2xJ
Z6ODumQ2un2EVd+PpJeyzBPzKG+2L8hsdMiS2eiQJbPRAfuLX5DZ6LBua1xC
2ehSXSYbHdYls9HlNsd9hdivSF/BuqSvqiIZv0yT7Jgf1vbW2nwDgfQVZElf
QZb0FWDt1w8YX8G6pK+kuoyvYF3SV3Kb475CLLtewbqkr8zJpWmamJV5skqy
1HwVHfoKm82s8CbMtGtIEsrdprLRAUtno/ssnY1eJYvR/cjR7UtQXDY6YOls
dJ/ls9FBXTobHZ/vrX/C2eg+y2ej47pcNrrUZsZXiGV9BVjSV1WxH92++dwf
Le5PqhhfQZb0FWJZX8G6pK+k8731T8hXiGV9JdVlfCW3Oe4rzHK+giy7XpWH
1wpWc/s8DvhKePHN34FhxOdf09nogGSz0V2NxwsYm42OWF8fh2Wz0d+5Lp2N
DuuS2ejv3Vesr3yW9pV10HOLSV9B1tfHYUlfvXdd1le4Luerd+8r0leA5dcr
JN9X8MXM3Id8I6v6p5i7rayyyir7qbBI5d5+oUj8hzAfpk8xd1tZZZVV9lNh
kcrtbDyeLuN/oEqlUqlUKpVKpVKpVCqVSvVO+h/ZRno0
"], {{0, 86}, {498,
0}}, {0, 255}, ColorFunction -> RGBColor],
BoxForm`ImageTag[
"Byte", ColorSpace -> "RGB", Interleaving -> True], Selectable ->
False], DefaultBaseStyle -> "ImageGraphics", ImageSize ->
Magnification[1], ImageSizeRaw -> {498, 86},
PlotRange -> {{0, 498}, {0, 86}}]], "ExerciseOutput",
Magnification -> 1, CellFrameColor -> GrayLevel[0], Selectable ->
False, Copyable -> False, Editable -> False, ShowCellBracket ->
False, CellLabel -> "Out[]=", CellFrame -> False]]],
FrameMargins->{{10, 0}, {10, 12}},
ImageMargins->0,
ImageSize->Full],
ButtonBox[
PaneBox[
StyleBox["\[Times]",
FontFamily->"MathematicaMono",
FontSize->18,
FontWeight->"Bold",
FontColor->GrayLevel[0.75]],
Alignment->Right,
FrameMargins->{{0, 6}, {0, 0}},
ImageMargins->0],
Appearance->None,
ButtonFunction:>(SelectionMove[
ButtonNotebook[], All, ButtonCell, AutoScroll -> False];
NotebookFind[
EvaluationNotebook[], "ExerciseExpectedResult", Previous, CellStyle,
WrapAround -> False, AutoScroll -> False]; FrontEndExecute[
FrontEndToken[
ButtonNotebook[], "OpenCloseGroup"]])]}
},
GridBoxAlignment->{"Columns" -> {Left, Right}, "Rows" -> {Top}},
GridBoxItemSize->{"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}],
"Grid"],
FrameMargins->0,
FrameStyle->GrayLevel[0.7],
StripOnInput->False]], "ExerciseOutput",
Editable->False,
Selectable->False,
Deletable->False,
CellFrame->{{1, 1}, {1, 1}},
ShowCellBracket->False,
Copyable->False,
CellFrameMargins->{{0, 0}, {0, 0}},
CellFrameColor->GrayLevel[1],
LineBreakWithin->
Automatic,ExpressionUUID->"a5f90c4e-a21c-49d5-a88f-cc7dfbf29826"]
}, Closed]],
Cell[CellGroupData[{
Cell[BoxData[
StyleBox[
DynamicBox[ToBoxes[
$CellContext`SolutionResponseText["3.2"], StandardForm],
ImageSizeCache->{3.6, {1., 10.}}], "SolutionResponseText"]], "Subsection",
Editable->False,
Selectable->False,
Deletable->False,
ShowCellBracket->False,
CellMargins->{{24, 25}, {3, 0}},
Copyable->False,
CellFrameMargins->{{8, 0}, {0, 0}},
TextAlignment->Right,
ShowStringCharacters->False,
FontFamily->"Source Sans Pro",
FontSize->12,
FontWeight->"Plain",
FontSlant->"Plain",
Background->GrayLevel[
1],ExpressionUUID->"3e9575a9-d25e-4526-8dd7-6b3b3e20855d"],
Cell[BoxData[
ButtonBox[
PaneBox[
StyleBox[
RowBox[{"[", " ",
RowBox[{"Click", " ", "to", " ", "enter", " ", "code"}], " ", "]"}],
Selectable->False,
StripOnInput->False,
FontFamily->"Source Sans Pro",
FontSize->14,
FontWeight->Plain,
FontColor->GrayLevel[0.6]],
ImageSize->Full],
Appearance->None,
ButtonFunction:>(SelectionMove[
InputNotebook[], All, ButtonCell]; NotebookWrite[
InputNotebook[],
Cell[
BoxData[""], "Input"]]; SelectionMove[
InputNotebook[], Before, CellContents]; Null),
Evaluator->Automatic,
Method->"Preemptive"]], "Input",
Editable->False,
Selectable->False,
Deletable->False,
Copyable->False,
CellFrameLabels->{{None, None}, {None, None}},
ShowSyntaxStyles->False,
ShowStringCharacters->False,
CellTags->
"FirstInputCell",ExpressionUUID->"7e2c42b2-c55c-4ebc-a64c-3c0d8f8b9d2e"]
}, Open ]]
}, Open ]],
Cell[CellGroupData[{
Cell[BoxData[
PaneBox["\[ThickSpace]",
ImageSize->Full]], "CodeSectionDividerCloud",
Editable->False,
Selectable->False,
Deletable->False,
CellMargins->{{0, 0}, {0, 35}},
CellBracketOptions->{"OverlapContent"->True},
Copyable->False,ExpressionUUID->"c9980acc-7674-4765-911b-987ece2e7864"],
Cell[TextData[{
"\:4f7f\:7528 ",
StyleBox["Range",
FontFamily->"Source Sans Pro"],
" \:548c ",
StyleBox["Reverse",
FontFamily->"Source Sans Pro"],
" \:6765\:521b\:5efa",
Cell[BoxData[
RowBox[{"{",
RowBox[{"4", ",", "3", ",", "2", ",", "1"}], "}"}]], "InlineCode",
ExpressionUUID->"79f5d369-dde1-41bc-9213-9f9f7824e0e0"],
"\:3002"
}], "Exercise",
Editable->False,
Selectable->False,
Deletable->False,
CellDingbat->Cell[
"3.3", "ExerciseNumber", FontColor ->
RGBColor[0.9019607843137255, 0.4117647058823529, 0.027450980392156862`]],
ShowCellBracket->False,
Copyable->False,
CellChangeTimes->{{3.8361117824361944`*^9, 3.836111800021069*^9}},
CounterAssignments->{{"SectionNumber", 3}, {"ExerciseNumber", 3}, {
"WebOnly", 0}},ExpressionUUID->"e7210382-bc91-4d70-b027-a5c52c4fe74a"],
Cell[CellGroupData[{
Cell[BoxData[
TagBox[
ButtonBox[
StyleBox[
RowBox[{"\:671f\:671b\:8f93\:51fa", " ", "\[RightGuillemet]"}],
FontFamily->"Source Sans Pro",
FontSize->12,
FontColor->GrayLevel[0.6]],
Appearance->None,
ButtonFunction:>(SelectionMove[
ButtonNotebook[], All, ButtonCell, AutoScroll -> False]; FrontEndExecute[
FrontEndToken[
ButtonNotebook[], "OpenCloseGroup"]]),
Evaluator->Automatic,
Method->"Preemptive"],
MouseAppearanceTag["LinkHand"]]], "ExerciseExpectedResult",
Editable->False,
Selectable->False,
Deletable->False,
ShowCellBracket->False,
Copyable->False,ExpressionUUID->"540c4467-7bd9-40d7-b640-4b84fa7e4f20"],
Cell[BoxData[
FrameBox[
TagBox[GridBox[{
{
PaneBox[
InterpretationBox[Cell[BoxData[
GraphicsBox[
TagBox[RasterBox[CompressedData["
1:eJztVa+PnEAUnrSmskn/gv4DyKZ2ZBXJNecwd+lxqbmSuyYNFjdy3DgUCoVC
YVBjMGPGIDBjECMwIxDbN8PestsF9kSbVNyXQODNx3vfvB/Dx9sfV+EbhNDT
O7hd3fzCj4838df38HL98PT9/uHu25eHn3f3d4+fb9+C8QNcn+Cyz7tXvOJ/
gS5J6HmRMLNFNk2nzeoXpudVkRcll2rL8aB4WeR5wWV/ScPQCtEN4/SchRgH
Ce/H/ZpgMDIhKdTesOPUB4tH+KKvUVV2GQju7pN6XKJpkXtHtCiXa+LaPHYU
RLieIsgyDY4EDA1FiB7yZdp84vusWVFYYi9pnayKYIQwH5biZhCEqH1ObPy1
PHZVlkR206zRB6NMfeTR6d0Iq/A5iCKwZxwEHsJ0WeExdJ2sKQRhel+1neZk
nbZXBBLpkULBMPLYcNjss1phs4vKTmV2B1sKh16JOrfsMNuK7NBQSHWy1bKm
wacKpVMFnnVbRbA9V/GxKyBgXFpPKUaYrXYOCIQtTjh2u4jJbZhteFtQOLpm
I4UkrpcruzKkbgAiQilN/KkTq24rtOlLarNYdIuz4qC5ZQSX8nymEEzMzdio
ZQIPSQWWOmOUMWpBfLvqp/WiQjMfQ6PA8wyeoed2RDC9eNaAH9uHYt6HkSl8
mnJb0NZ2Ez2NMboqC/coY5iapDyoKqEtvLiSSvddQWyys9ac04yqAtcGrGpE
03DOWz2e0+zhIYSorZ44q6UQyq256WAT7XSWJ9g281MxLdtA3kwwqkkCb9+F
sFC2izTBfHQKm+ozGtT3Dx5tht3pLLvzkGz0iU3yM3nOshn04TRZp73Q2zkk
s1WcaFPFccgW+13ZoqJMXBjYv0ozPI1d/zazJSNhmMil//A4qFat/6D/Cc2U
JIqStL2Y6Fe8DL8BWERflQ==
"], {{0, 19}, {54, 0}}, {0, 255},
ColorFunction->RGBColor],
BoxForm`ImageTag["Byte", ColorSpace -> "RGB", Interleaving -> True],
Selectable->False],
DefaultBaseStyle->"ImageGraphics",
ImageSize->Magnification[1],
ImageSizeRaw->{54, 19},
PlotRange->{{0, 54}, {0, 19}}]], "ExerciseOutput",
ImageSize->{58, 19},
ImageMargins->{{0, 0}, {0, 0}},
ImageRegion->{{0, 1}, {0, 1}},
Magnification->1,ExpressionUUID->
"1f6a4110-a5e5-4294-9c34-61916c617b17"],
Apply[TextCell,
Cell[
BoxData[
GraphicsBox[
TagBox[
RasterBox[CompressedData["
1:eJztVa+PnEAUnrSmskn/gv4DyKZ2ZBXJNecwd+lxqbmSuyYNFjdy3DgUCoVC
YVBjMGPGIDBjECMwIxDbN8PestsF9kSbVNyXQODNx3vfvB/Dx9sfV+EbhNDT
O7hd3fzCj4838df38HL98PT9/uHu25eHn3f3d4+fb9+C8QNcn+Cyz7tXvOJ/
gS5J6HmRMLNFNk2nzeoXpudVkRcll2rL8aB4WeR5wWV/ScPQCtEN4/SchRgH
Ce/H/ZpgMDIhKdTesOPUB4tH+KKvUVV2GQju7pN6XKJpkXtHtCiXa+LaPHYU
RLieIsgyDY4EDA1FiB7yZdp84vusWVFYYi9pnayKYIQwH5biZhCEqH1ObPy1
PHZVlkR206zRB6NMfeTR6d0Iq/A5iCKwZxwEHsJ0WeExdJ2sKQRhel+1neZk
nbZXBBLpkULBMPLYcNjss1phs4vKTmV2B1sKh16JOrfsMNuK7NBQSHWy1bKm
wacKpVMFnnVbRbA9V/GxKyBgXFpPKUaYrXYOCIQtTjh2u4jJbZhteFtQOLpm
I4UkrpcruzKkbgAiQilN/KkTq24rtOlLarNYdIuz4qC5ZQSX8nymEEzMzdio
ZQIPSQWWOmOUMWpBfLvqp/WiQjMfQ6PA8wyeoed2RDC9eNaAH9uHYt6HkSl8
mnJb0NZ2Ez2NMboqC/coY5iapDyoKqEtvLiSSvddQWyys9ac04yqAtcGrGpE
03DOWz2e0+zhIYSorZ44q6UQyq256WAT7XSWJ9g281MxLdtA3kwwqkkCb9+F
sFC2izTBfHQKm+ozGtT3Dx5tht3pLLvzkGz0iU3yM3nOshn04TRZp73Q2zkk
s1WcaFPFccgW+13ZoqJMXBjYv0ozPI1d/zazJSNhmMil//A4qFat/6D/Cc2U
JIqStL2Y6Fe8DL8BWERflQ==
"], {{0, 19}, {54, 0}}, {0, 255},
ColorFunction -> RGBColor],
BoxForm`ImageTag[
"Byte", ColorSpace -> "RGB", Interleaving -> True], Selectable ->
False], DefaultBaseStyle -> "ImageGraphics", ImageSize ->
Magnification[1], ImageSizeRaw -> {54, 19},
PlotRange -> {{0, 54}, {0, 19}}]], "ExerciseOutput",
Magnification -> 1, CellFrameColor -> GrayLevel[0], Selectable ->
False, Copyable -> False, Editable -> False, ShowCellBracket ->
False, CellLabel -> "Out[]=", CellFrame -> False]]],
FrameMargins->{{10, 0}, {10, 12}},
ImageMargins->0,
ImageSize->Full],
ButtonBox[
PaneBox[
StyleBox["\[Times]",
FontFamily->"MathematicaMono",
FontSize->18,
FontWeight->"Bold",
FontColor->GrayLevel[0.75]],
Alignment->Right,
FrameMargins->{{0, 6}, {0, 0}},
ImageMargins->0],
Appearance->None,
ButtonFunction:>(SelectionMove[
ButtonNotebook[], All, ButtonCell, AutoScroll -> False];
NotebookFind[
EvaluationNotebook[], "ExerciseExpectedResult", Previous, CellStyle,
WrapAround -> False, AutoScroll -> False]; FrontEndExecute[
FrontEndToken[
ButtonNotebook[], "OpenCloseGroup"]])]}
},
GridBoxAlignment->{"Columns" -> {Left, Right}, "Rows" -> {Top}},
GridBoxItemSize->{"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}],
"Grid"],
FrameMargins->0,
FrameStyle->GrayLevel[0.7],
StripOnInput->False]], "ExerciseOutput",
Editable->False,
Selectable->False,
Deletable->False,
CellFrame->{{1, 1}, {1, 1}},
ShowCellBracket->False,
Copyable->False,
CellFrameMargins->{{0, 0}, {0, 0}},
CellFrameColor->GrayLevel[1],
LineBreakWithin->
Automatic,ExpressionUUID->"720e6900-fd66-4804-a59f-3487249d0511"]
}, Closed]],
Cell[CellGroupData[{
Cell[BoxData[
StyleBox[
DynamicBox[ToBoxes[
$CellContext`SolutionResponseText["3.3"], StandardForm],
ImageSizeCache->{4.8, {1., 12.}}], "SolutionResponseText"]], "Subsection",
Editable->False,
Selectable->False,
Deletable->False,
ShowCellBracket->False,
CellMargins->{{24, 25}, {3, 0}},
Copyable->False,
CellFrameMargins->{{8, 0}, {0, 0}},
TextAlignment->Right,
ShowStringCharacters->False,
FontFamily->"Source Sans Pro",
FontSize->12,
FontWeight->"Plain",
FontSlant->"Plain",
Background->GrayLevel[
1],ExpressionUUID->"48292a57-d5ff-4e77-88fe-c059f423c809"],
Cell[BoxData[
ButtonBox[
PaneBox[
StyleBox[
RowBox[{"[", " ",
RowBox[{"Click", " ", "to", " ", "enter", " ", "code"}], " ", "]"}],
Selectable->False,
StripOnInput->False,
FontFamily->"Source Sans Pro",
FontSize->14,
FontWeight->Plain,
FontColor->GrayLevel[0.6]],
ImageSize->Full],
Appearance->None,
ButtonFunction:>(SelectionMove[
InputNotebook[], All, ButtonCell]; NotebookWrite[
InputNotebook[],
Cell[
BoxData[""], "Input"]]; SelectionMove[
InputNotebook[], Before, CellContents]; Null),
Evaluator->Automatic,
Method->"Preemptive"]], "Input",
Editable->False,
Selectable->False,
Deletable->False,
Copyable->False,
CellFrameLabels->{{None, None}, {None, None}},
ShowSyntaxStyles->False,
ShowStringCharacters->False,
CellTags->
"FirstInputCell",ExpressionUUID->"048e8843-84a6-4b38-a792-077e45afd214"]
}, Open ]]
}, Open ]],
Cell[CellGroupData[{
Cell[BoxData[
PaneBox["\[ThickSpace]",
ImageSize->Full]], "CodeSectionDividerCloud",
Editable->False,
Selectable->False,
Deletable->False,
CellMargins->{{0, 0}, {0, 35}},
CellBracketOptions->{"OverlapContent"->True},
Copyable->False,ExpressionUUID->"d37acd2e-d0e5-4f29-8452-2ebf3469b1d3"],
Cell["\:521b\:5efa 1 \:5230 50 \:7684\:6570\:5b57\:7684\:5012\:5e8f\:5217\
\:8868\:3002", "Exercise",
Editable->False,
Selectable->False,
Deletable->False,
CellDingbat->Cell[
"3.4", "ExerciseNumber", FontColor ->
RGBColor[0.9019607843137255, 0.4117647058823529, 0.027450980392156862`]],
ShowCellBracket->False,
Copyable->False,
CellChangeTimes->{{3.836111810829285*^9, 3.836111827356826*^9}},
CounterAssignments->{{"SectionNumber", 3}, {"ExerciseNumber", 4}, {