From 128600a1b31b439eb96f65f84377c248bf970374 Mon Sep 17 00:00:00 2001 From: RedGuy Date: Sun, 10 Mar 2024 20:32:51 +0300 Subject: [PATCH] lock --- !MainFeatures/01_First/Amp.pas | 11 + !MainFeatures/01_First/Amp2.pas | 29 + !MainFeatures/01_First/AssignExt.pas | 18 + !MainFeatures/01_First/AutoVars.pas | 10 + !MainFeatures/01_First/BlockVar.pas | 11 + !MainFeatures/01_First/Foreach.pas | 24 + !MainFeatures/01_First/Print.pas | 4 + !MainFeatures/01_First/RandomDiap.pas | 5 + !MainFeatures/01_First/RealExtNums.pas | 5 + !MainFeatures/01_First/SimpleNewFeatures.pas | 27 + !MainFeatures/01_First/StandardTypes.pas | 33 + !MainFeatures/01_First/WriteAll.pas | 16 + !MainFeatures/01_First/WriteFormat.pas | 11 + !MainFeatures/02_Types/CharFunc.pas | 19 + !MainFeatures/02_Types/Dynarray.pas | 24 + !MainFeatures/02_Types/Enum.pas | 25 + !MainFeatures/02_Types/InitRecords.pas | 15 + !MainFeatures/02_Types/PointerToRef.pas | 10 + .../02_Types/PointersVsRef/Pointers.pas | 43 + .../02_Types/PointersVsRef/References.pas | 35 + !MainFeatures/02_Types/Sets.pas | 15 + !MainFeatures/02_Types/StringInteger.pas | 16 + !MainFeatures/02_Types/StringMethods.pas | 18 + !MainFeatures/02_Types/StringTypes.pas | 17 + !MainFeatures/02_Types/StructTypeEquiv.pas | 23 + !MainFeatures/02_Types/UntypedFile.pas | 19 + !MainFeatures/03_Subroutines/FuncParams.pas | 12 + !MainFeatures/03_Subroutines/Overload.pas | 21 + !MainFeatures/03_Subroutines/ProcVars.pas | 39 + !MainFeatures/03_Subroutines/SwapT.pas | 23 + !MainFeatures/04_Units/CallC#/CallCS.pas | 9 + .../04_Units/CallC#/ClassLibrary1.dll | Bin 0 -> 16384 bytes !MainFeatures/04_Units/DllTest/MyDll.dll | Bin 0 -> 16384 bytes !MainFeatures/04_Units/DllTest/MyDll.pas | 16 + !MainFeatures/04_Units/DllTest/main.pas | 10 + .../04_Units/NativeDll/CallNative.pas | 7 + .../04_Units/NativeDll/NativeDll.dll | Bin 0 -> 14336 bytes .../04_Units/NativeDll/NativeDll.dpr | 13 + .../04_Units/SimpleUnit/MainProgram.pas | 7 + !MainFeatures/04_Units/SimpleUnit/MyUnit.pas | 14 + !MainFeatures/04_Units/SystemUnitTest.pas | 12 + !MainFeatures/05_Graph/ABC.pas | 41 + !MainFeatures/05_Graph/GraphABCTest.pas | 19 + !MainFeatures/05_Graph/MouseEvents.pas | 19 + !MainFeatures/06_Classes/AllFromObject.pas | 14 + !MainFeatures/06_Classes/Boxing.pas | 22 + !MainFeatures/06_Classes/ClassConstructor.pas | 36 + .../06_Classes/GarbageCollection.pas | 11 + !MainFeatures/06_Classes/Interf.pas | 42 + .../06_Classes/OperatorOverloading.pas | 82 + !MainFeatures/06_Classes/PersonInternal.pas | 30 + !MainFeatures/06_Classes/Records.pas | 26 + !MainFeatures/06_Classes/Stack.pas | 56 + !MainFeatures/06_Classes/Where.pas | 21 + !MainFeatures/06_Classes/WriteRecord.pas | 26 + !MainFeatures/07_NetLibs/DateTime.pas | 31 + !MainFeatures/07_NetLibs/FormWebBrowser.pas | 17 + !MainFeatures/07_NetLibs/LinkedList.pas | 27 + !MainFeatures/07_NetLibs/Reflection.pas | 11 + .../07_NetLibs/WinFormWithButton.pas | 29 + !NewExecutors/p1.pas | 5 + !NewExecutors/p4.pas | 15 + ...фическиеИсполнители.pas | 106 + !NewExecutors/Исполнители.pas | 661 + !NewExecutors/Множество1.pas | 12 + !NewExecutors/Окна.pas | 107 + .../Последовательности1.pas | 14 + .../Последовательности2.pas | 15 + !NewExecutors/Пример1.pas | 15 + !NewExecutors/Пример2.pas | 11 + !NewExecutors/Прогрессии1.pas | 14 + !NewExecutors/Прогрессии2.pas | 13 + !NewExecutors/Страны.csv | 196 + !NewExecutors/Страны1.pas | 11 + !NewExecutors/Страны2.pas | 17 + !NewExecutors/Страны2a.pas | 13 + !NewExecutors/Страны2b.pas | 7 + !NewExecutors/Страны2c.pas | 13 + !NewExecutors/Страны3.pas | 10 + !NewExecutors/Страны4.pas | 10 + !NewExecutors/СтраныGUI.pas | 20 + !NewExecutors/Файлы1.pas | 18 + !NewExecutors/Файлы2.pas | 14 + !Tutorial/01_First/Assign1.pas | 10 + !Tutorial/01_First/Assign2.pas | 12 + !Tutorial/01_First/AssignExt.pas | 18 + !Tutorial/01_First/Boolean1.pas | 16 + !Tutorial/01_First/Calculations1.pas | 10 + !Tutorial/01_First/Calculations2.pas | 13 + !Tutorial/01_First/Calculations3.pas | 10 + !Tutorial/01_First/DivMod1.pas | 10 + !Tutorial/01_First/DivMod2.pas | 13 + !Tutorial/01_First/Eof.pas | 9 + !Tutorial/01_First/Eoln.pas | 8 + !Tutorial/01_First/HelloWorld.pas | 5 + !Tutorial/01_First/Random1.pas | 10 + !Tutorial/01_First/Random2.pas | 7 + !Tutorial/01_First/ReadString.pas | 6 + !Tutorial/01_First/Shl.pas | 8 + !Tutorial/01_First/StandFun.pas | 14 + !Tutorial/01_First/StandardTypes.pas | 33 + !Tutorial/01_First/StringPlus.pas | 8 + !Tutorial/01_First/WriteFormat.pas | 11 + !Tutorial/02_Errors/CompilerError1.pas | 8 + !Tutorial/02_Errors/CompilerError2.pas | 5 + !Tutorial/02_Errors/CompilerError3.pas | 8 + !Tutorial/02_Errors/CompilerError4.pas | 6 + !Tutorial/02_Errors/RuntimeError1.pas | 7 + !Tutorial/02_Errors/RuntimeError2.pas | 6 + !Tutorial/02_Errors/RuntimeError3.pas | 6 + !Tutorial/02_Errors/RuntimeError4.pas | 4 + !Tutorial/03_Robot_Drawman/DMa1.pas | 14 + !Tutorial/03_Robot_Drawman/RBa1.pas | 16 + !Tutorial/04_Graphics/Gr1.pas | 8 + !Tutorial/04_Graphics/Gr2.pas | 8 + !Tutorial/04_Graphics/Gr3.pas | 14 + !Tutorial/04_Graphics/Gr4.pas | 22 + !Tutorial/04_Graphics/Gr5.pas | 20 + !Tutorial/04_Graphics/Gr6.pas | 19 + !Tutorial/04_Graphics/Gr7.pas | 24 + !Tutorial/04_Graphics/Gr8.pas | 18 + !Tutorial/04_Graphics/GrAnim1.pas | 14 + !Tutorial/04_Graphics/GrAnim2.pas | 18 + !Tutorial/04_Graphics/GrCoord1.pas | 19 + !Tutorial/04_Graphics/GrCoord2.pas | 15 + !Tutorial/04_Graphics/GrCoord3.pas | 17 + !Tutorial/04_Graphics/GrFont1.pas | 23 + !Tutorial/04_Graphics/GrFont2.pas | 16 + !Tutorial/04_Graphics/GrPoly.pas | 18 + !Tutorial/04a_ABCObjects/ABC1.pas | 40 + !Tutorial/05_IfCaseBoolean/Case1.pas | 15 + !Tutorial/05_IfCaseBoolean/Case2.pas | 12 + !Tutorial/05_IfCaseBoolean/Case3.pas | 12 + !Tutorial/05_IfCaseBoolean/Case4.pas | 14 + !Tutorial/05_IfCaseBoolean/If1.pas | 10 + !Tutorial/05_IfCaseBoolean/If2.pas | 9 + !Tutorial/05_IfCaseBoolean/If3.pas | 14 + !Tutorial/05_IfCaseBoolean/If4.pas | 18 + !Tutorial/05_IfCaseBoolean/If5.pas | 19 + !Tutorial/06_ForWhileRepeat/For1.pas | 22 + !Tutorial/06_ForWhileRepeat/For1a.pas | 38 + !Tutorial/06_ForWhileRepeat/For2.pas | 15 + !Tutorial/06_ForWhileRepeat/For3.pas | 11 + !Tutorial/06_ForWhileRepeat/For4.pas | 8 + !Tutorial/06_ForWhileRepeat/For5.pas | 13 + !Tutorial/06_ForWhileRepeat/For6.pas | 15 + !Tutorial/06_ForWhileRepeat/For7.pas | 17 + !Tutorial/06_ForWhileRepeat/For8.pas | 17 + !Tutorial/06_ForWhileRepeat/For9.pas | 26 + !Tutorial/06_ForWhileRepeat/ForFor1.pas | 12 + !Tutorial/06_ForWhileRepeat/ForFor2.pas | 20 + !Tutorial/06_ForWhileRepeat/ForGra1.pas | 16 + !Tutorial/06_ForWhileRepeat/algo1.pas | 21 + !Tutorial/06_ForWhileRepeat/algo2.pas | 21 + !Tutorial/06_ForWhileRepeat/repeat1.pas | 12 + !Tutorial/06_ForWhileRepeat/repeat2.pas | 13 + !Tutorial/06_ForWhileRepeat/while1.pas | 12 + !Tutorial/06_ForWhileRepeat/while2.pas | 12 + !Tutorial/06_ForWhileRepeat/while3.pas | 18 + !Tutorial/07_CharString/Char1.pas | 13 + !Tutorial/07_CharString/Char2.pas | 13 + !Tutorial/07_CharString/Char3.pas | 9 + !Tutorial/07_CharString/CharTable.pas | 8 + !Tutorial/07_CharString/String1.pas | 12 + !Tutorial/07_CharString/String2.pas | 14 + !Tutorial/07_CharString/String3.pas | 12 + !Tutorial/07_CharString/String4.pas | 12 + !Tutorial/07_CharString/String5.pas | 18 + !Tutorial/07_CharString/String6.pas | 18 + !Tutorial/07_CharString/StringInteger1.pas | 16 + !Tutorial/07_CharString/StringInteger2.pas | 18 + !Tutorial/07_CharString/StringInteger3.pas | 16 + !Tutorial/07_CharString/StringReal1.pas | 16 + !Tutorial/07_CharString/UpLowCase.pas | 22 + !Tutorial/08_ProcFunc/Fun1.pas | 22 + !Tutorial/08_ProcFunc/Fun2.pas | 17 + !Tutorial/08_ProcFunc/Proc1.pas | 17 + !Tutorial/08_ProcFunc/Proc2.pas | 22 + !Tutorial/08_ProcFunc/Proc3.pas | 26 + !Tutorial/09_Arrays/DynArr1.pas | 14 + !Tutorial/09_Arrays/DynArr2.pas | 17 + !Tutorial/09_Arrays/DynArr3.pas | 13 + !Tutorial/09_Arrays/DynArr4.pas | 23 + !Tutorial/09_Arrays/DynArrErr1.pas | 6 + !Tutorial/09_Arrays/DynArrErr2.pas | 7 + !Tutorial/09_Arrays/SortByChoice.pas | 42 + !Tutorial/09_Arrays/StaticArr1.pas | 12 + !Tutorial/09_Arrays/StaticArr2.pas | 24 + !Tutorial/09_Arrays/StaticArr3.pas | 41 + .../09_Units/UnitInitFin/MainInitFinDemo.pas | 7 + !Tutorial/09_Units/UnitInitFin/MyUnit.pas | 7 + .../09_Units/UnitNames/MainSameNames.pas | 7 + !Tutorial/09_Units/UnitNames/MyA.pas | 10 + !Tutorial/09_Units/UnitNames/MyB.pas | 10 + .../09_Units/UnitStructure/MainProgram.pas | 13 + !Tutorial/09_Units/UnitStructure/MyUnit.pas | 35 + !Tutorial/10_Matrices/Matr1.pas | 40 + !Tutorial/10_Matrices/Matr2.pas | 37 + !Tutorial/11_Enums/Enum1.pas | 25 + !Tutorial/11_Enums/Enum2.pas | 22 + !Tutorial/12_Files/File1.pas | 35 + !Tutorial/12_Files/Text1.pas | 15 + !Tutorial/12_Files/Text2.pas | 13 + !Tutorial/12_Files/Text3.pas | 19 + !Tutorial/12_Files/Untyped1.pas | 52 + !Tutorial/13_Pointers/Pointer1.pas | 16 + !Tutorial/13_Pointers/Pointer2.pas | 22 + !Tutorial/13_Pointers/Pointer3.pas | 11 + !Tutorial/13_Pointers/Pointer4.pas | 43 + !Tutorial/13_Pointers/ProcPointer1.pas | 21 + !Tutorial/13_Pointers/ProcPointer2.pas | 27 + !Tutorial/13_Pointers/Reference.pas | 34 + !Tutorial/14_Records/Rec1.pas | 35 + !Tutorial/14_Records/Rec2.pas | 26 + !Tutorial/15_Classes/Inheritance1.pas | 66 + !Tutorial/15_Classes/PersonExternal.pas | 30 + !Tutorial/15_Classes/PersonInternal.pas | 30 + !Tutorial/15_Classes/Properties.pas | 35 + !Tutorial/16_Exceptions/Try1.pas | 14 + !Tutorial/16_Exceptions/Try2.pas | 15 + !Tutorial/16_Exceptions/Try3.pas | 15 + !Tutorial/16_Exceptions/Try4.pas | 11 + !Tutorial/17_Interfaces/Interf1.pas | 61 + !Tutorial/17_Interfaces/Interf2.pas | 43 + !Tutorial/18_Dll/Main.pas | 12 + !Tutorial/18_Dll/MyLib.pas | 26 + 1.pas | 13 + 2.pas | 14 + Algorithms/Combinatorics/NextPerm.pas | 6 + Algorithms/Eratosthenes.pas | 24 + Algorithms/FloodFillTuple.pas | 70 + Algorithms/MazeGen.pas | 106 + Algorithms/PrimeNumbers.pas | 22 + Algorithms/Recursion/ESquares.pas | 27 + Algorithms/Recursion/Hanoi.pas | 121 + Algorithms/Recursion/Knapsack.pas | 57 + Algorithms/Recursion/Permutations.pas | 19 + Algorithms/Recursion/TreeDraw.pas | 26 + Algorithms/SortArrays/QuickSort.pas | 44 + Algorithms/SortArrays/QuickSortFunctional.pas | 14 + Algorithms/SortArrays/SelectionSort.pas | 22 + Algorithms/Sqrt2.pas | 4 + Algorithms/field.txt | 9 + .../GraphApplications/FuncTransform.pas | 50 + .../GraphApplications/Paporotnik/Main.pas | 22 + .../Paporotnik/Paporotnik.pas | 51 + .../Paporotnik/PaporotnikData.pas | 41 + Applications/TextEditor/Open.png | Bin 0 -> 575 bytes Applications/TextEditor/Save.png | Bin 0 -> 535 bytes Applications/TextEditor/TextEditor.pas | 91 + BlockFileOfT/FileDatabase/FileArray.pas | 174 + .../База данных на файле.pas | 201 + BlockFileOfT/Дополнительно.pas | 79 + BlockFileOfT/Основы.pas | 67 + BlockFileOfT/Справка.html | 22 + .../СправкаData/RefTSaving.html | 134 + .../СправкаData/WhyOffset.html | 110 + BlockFileOfT/СправкаData/main.html | 265 + .../Сравнение скорости.pas | 289 + CheckedTasks/DrawMan/DMpp17.pas | 27 + .../DrawMan/DrawManMakeTask/DMMy1.pas | 5 + .../DrawMan/DrawManMakeTask/DMTasks.pas | 60 + CheckedTasks/DrawMan/random_DM.pas | 16 + CheckedTasks/PT4/Dynamic2.pas | 18 + CheckedTasks/PT4/File48.pas | 24 + CheckedTasks/PT4/PT4TaskMaker/Demo1.pas | 4 + CheckedTasks/PT4/PT4TaskMaker/PT4Demo.pas | 291 + CheckedTasks/PT4/PT4TaskMaker/PT4DemoTest.pas | 7 + CheckedTasks/PT4/String9.pas | 15 + CheckedTasks/Robot/RBcc17.pas | 23 + CheckedTasks/Robot/RobotMakeTask/RBMy1.pas | 5 + CheckedTasks/Robot/RobotMakeTask/RobTasks.pas | 44 + CheckedTasks/Robot/random_Robot.pas | 17 + Games/15.pas | 178 + Games/Animals/Animals.pas | 98 + Games/Animals/Animals1.pas | 66 + Games/Animals/animals.dat | Bin 0 -> 2971 bytes Games/Animals/animals_data.txt | 147 + Games/Battle.pas | 318 + Games/BookWorm/BookWormABCNET.pas | 228 + Games/BookWorm/words.txt | 14842 ++++++++++++++++ Games/DeleteByMouse.pas | 56 + Games/KillThem.pas | 238 + Games/Life.pas | 318 + Games/Matches.pas | 45 + Games/NewLife.pas | 350 + Games/PifTableExam.pas | 61 + Games/PifTableExam1.pas | 63 + Graph3D/All3DPrimitives.pas | 51 + Graph3D/Chess3D/bishop.obj | 3110 ++++ Graph3D/Chess3D/board.obj | 164 + Graph3D/Chess3D/game2.pas | 182 + Graph3D/Chess3D/horse.obj | 2557 +++ Graph3D/Chess3D/king.obj | 1463 ++ Graph3D/Chess3D/pawn.obj | 2406 +++ Graph3D/Chess3D/queen.obj | 2214 +++ Graph3D/Chess3D/rook.obj | 1542 ++ Graph3D/Earth.jpg | Bin 0 -> 447092 bytes Graph3D/EarthImageMaterial.pas | 25 + Graph3D/Platonic.pas | 24 + Graph3D/ReGroup1.pas | 14 + Graph3D/SunSystem/PlanetsRotateAlgAnim.pas | 23 + Graph3D/SunSystem/PlanetsRotateFrBased.pas | 27 + Graph3D/SunSystem/earthmap.jpg | Bin 0 -> 27294 bytes Graph3D/SunSystem/moonmap.jpg | Bin 0 -> 34237 bytes Graph3D/SunSystem/skymap.jpg | Bin 0 -> 327479 bytes Graph3D/SunSystem/sunmap.jpg | Bin 0 -> 47642 bytes Graph3D/animOperationsPlusMult.pas | 13 + Graph3D/pr3.pas | 16 + Graph3D/pr4_Planes.pas | 22 + Graph3D/pr5_cam.pas | 27 + .../AnimMoveTrajectory2.pas | 10 + .../AnimMoveTrajectoryPoints.pas | 10 + .../AnimAccelerationRatio1.pas | 10 + .../AnimAccelerationRatio2.pas | 11 + .../AnimDecorators1.pas | 7 + .../AnimDecorators2.pas | 7 + .../AnimDecorators3.pas | 8 + .../GroupAnimForever.pas | 8 + .../ProbaGroup3.pas | 7 + .../GroupAnimationAdd.pas | 30 + .../ProbaGroup2.pas | 9 + .../animSequence.pas | 10 + .../AnimJump.pas | 9 + .../PlanetsRotate.pas | 20 + .../Platonic.pas | 27 + .../ThenAnimMove.pas | 9 + .../animSequencePlus.pas | 13 + .../animWhenCompleted.pas | 8 + Graph3D/Группировка/Child.pas | 7 + Graph3D/Группировка/GroupGroup.pas | 13 + Graph3D/Группировка/ReGroup2.pas | 16 + .../Клонирование/CloneAnim.pas | 9 + .../CloneWithChildren.pas | 15 + .../DuplicateByTrajectory.pas | 26 + Graph3D/Клонирование/MovRot.pas | 9 + Graph3D/Кривые/3DCirve1.pas | 15 + Graph3D/Кубик Рубика/Rubic3D.pas | 250 + Graph3D/Материалы/Cells1.png | Bin 0 -> 178 bytes Graph3D/Материалы/Cells2.png | Bin 0 -> 169 bytes Graph3D/Материалы/Dog.jpg | Bin 0 -> 24636 bytes Graph3D/Материалы/Material1.pas | 9 + Graph3D/Материалы/Material2.pas | 17 + Graph3D/Материалы/TextureCell.pas | 7 + Graph3D/Освещение/PointLight.pas | 12 + Graph3D/Освещение/трава.jpg | Bin 0 -> 910578 bytes .../WireFramePrism.pas | 18 + .../Cubes.pas | 12 + .../Spheres.pas | 23 + .../Key1.pas | 16 + .../KeyFrameBasedTime.pas | 46 + Graph3D/События мыши/cc3.pas | 29 + Graph3D/События мыши/cc4.pas | 28 + Graph3D/События мыши/cc5.pas | 41 + .../СлучайныйЦвет.pas | 13 + Graph3D/Фигуры/Lego1.pas | 8 + Graph3D/Фигуры/Pyramid.pas | 6 + Graph3D/Фигуры/Замок.pas | 32 + Graph3D/Фигуры/Замок.xaml | 1 + Graph3D/Часы.pas | 23 + .../Sprites/SpriteFrames/multi1.bmp | Bin 0 -> 30054 bytes .../Sprites/SpriteFrames/multi2.bmp | Bin 0 -> 30054 bytes .../Sprites/SpriteFrames/multi3.bmp | Bin 0 -> 30054 bytes .../Sprites/SpriteFrames/multi4.bmp | Bin 0 -> 30054 bytes .../Sprites/SpriteFrames/multi5.bmp | Bin 0 -> 30054 bytes .../ABCObjects/Sprites/gr_SpriteCreation.pas | 29 + .../ABCObjects/Sprites/gr_SpriteUsing.pas | 27 + Graphics/ABCObjects/Sprites/spr.png | Bin 0 -> 3689 bytes Graphics/ABCObjects/Sprites/spr.spinf | 7 + Graphics/ABCObjects/demo.bmp | Bin 0 -> 11754 bytes Graphics/ABCObjects/gr_All_Brown.pas | 43 + Graphics/ABCObjects/gr_Clone_Recur.pas | 31 + Graphics/ABCObjects/gr_DragPicture.pas | 40 + Graphics/ABCObjects/gr_Intersect.pas | 28 + Graphics/ABCObjects/gr_Move_Param.pas | 70 + Graphics/ABCObjects/gr_MovingObjects.pas | 51 + Graphics/ABCObjects/gr_PictureScale.pas | 38 + Graphics/ABCObjects/gr_RealNumber.pas | 21 + Graphics/ABCObjects/gr_StandardColors.pas | 144 + Graphics/ABCObjects/gr_Star_Rotate.pas | 18 + Graphics/ABCObjects/gr_Text.pas | 17 + Graphics/Controls/cc10_ComboBox.pas | 27 + Graphics/Controls/cc11_ComboBox2.pas | 22 + Graphics/Controls/cc12_Wrapping.pas | 18 + Graphics/Controls/cc13_Заголовки.pas | 32 + Graphics/Controls/cc14_Canvas.pas | 17 + Graphics/Controls/cc15_ListView.pas | 23 + Graphics/Controls/cc16_Countries.pas | 19 + Graphics/Controls/cc16a_CountyCapital.pas | 20 + Graphics/Controls/cc17_CalcIdea.pas | 14 + Graphics/Controls/cc18_SimpleCalc.pas | 44 + Graphics/Controls/cc19_StatusBar.pas | 17 + Graphics/Controls/cc1_All.pas | 33 + Graphics/Controls/cc20_Menu.pas | 17 + Graphics/Controls/cc20_Menu2.pas | 10 + Graphics/Controls/cc21_FileDialogs.pas | 39 + Graphics/Controls/cc22_MsgBox.pas | 19 + Graphics/Controls/cc23_Random3DSpheres.pas | 13 + Graphics/Controls/cc24_RGB.pas | 24 + Graphics/Controls/cc25_Gr3DProperties.pas | 28 + Graphics/Controls/cc2_All2.pas | 57 + Graphics/Controls/cc3_All3.pas | 33 + Graphics/Controls/cc4_ButtonClick.pas | 19 + Graphics/Controls/cc5_CheckBoxes.pas | 20 + Graphics/Controls/cc6_CheckBoxes2.pas | 33 + Graphics/Controls/cc7_RadioButtons.pas | 26 + Graphics/Controls/cc8_MoveObject.pas | 28 + Graphics/Controls/cc8a_MoveObject.pas | 27 + Graphics/Controls/cc9_ListBox.pas | 28 + Graphics/GraphABC/DigitalClock.pas | 14 + Graphics/GraphABC/Flame.pas | 67 + Graphics/GraphABC/Fractals/Dragon.pas | 70 + Graphics/GraphABC/Fractals/Mandelbrot.pas | 40 + .../GraphABC/Fractals/Paporotnik/Main.pas | 22 + .../Fractals/Paporotnik/Paporotnik.pas | 51 + .../Fractals/Paporotnik/PaporotnikData.pas | 41 + Graphics/GraphABC/Fractals/Paporotnik1.pas | 42 + Graphics/GraphABC/Graphics/DrawFunc.pas | 9 + Graphics/GraphABC/Graphics/DrawFunc2.pas | 27 + Graphics/GraphABC/Hypno.pas | 11 + Graphics/GraphABC/Mosaic.pas | 51 + Graphics/GraphABC/MouseDownEvent.pas | 5 + Graphics/GraphABC/MouseDraw.pas | 7 + Graphics/GraphABC/SetPixel.pas | 7 + Graphics/GraphABC/Stamps/Stamp1.pas | 24 + Graphics/GraphABC/Stamps/Stamp2.pas | 37 + Graphics/GraphABC/Stamps/Stamp3.pas | 28 + Graphics/GraphABC/Stamps/Stamp4.pas | 39 + Graphics/GraphABC/Stamps/Stamp5.pas | 36 + Graphics/GraphABC/Stamps/StampCompound.pas | 77 + Graphics/GraphABC/Stamps/StampCross.pas | 51 + Graphics/GraphABC/Stamps/StampFunc.pas | 79 + Graphics/GraphABC/Stamps/StampPoly.pas | 49 + Graphics/GraphABC/Stamps/StampText.pas | 25 + Graphics/GraphABC/Star.pas | 17 + Graphics/GraphABC/Tentacles.pas | 82 + Graphics/GraphABC/ThroughTheUniverse.pas | 85 + Graphics/GraphABC/graph3d.pas | 64 + Graphics/GraphABC/graphic.pas | 68 + Graphics/GraphABC/rain.pas | 27 + Graphics/GraphWPF/4.pdf | Bin 0 -> 148760 bytes Graphics/GraphWPF/ArcSector.pas | 15 + Graphics/GraphWPF/Clock.pas | 10 + Graphics/GraphWPF/CurjaMurja.pas | 36 + Graphics/GraphWPF/DrawCircleByMouse.pas | 16 + Graphics/GraphWPF/DrawGraphic.pas | 11 + Graphics/GraphWPF/DrawPixels.pas | 9 + Graphics/GraphWPF/EllRectInWindow.pas | 7 + Graphics/GraphWPF/Ellipses.pas | 14 + Graphics/GraphWPF/IsFixedSize.pas | 8 + Graphics/GraphWPF/MandelbrotWPF.pas | 44 + Graphics/GraphWPF/OnDrawFrame1.pas | 11 + Graphics/GraphWPF/SetPixel.pas | 9 + Graphics/GraphWPF/SetPixels.pas | 7 + Graphics/GraphWPF/TextOutFontWith.pas | 9 + Graphics/GraphWPF/anim1.pas | 16 + Graphics/GraphWPF/anim2.pas | 25 + Graphics/GraphWPF/anim4.pas | 45 + Graphics/GraphWPF/anim5.pas | 44 + Graphics/GraphWPF/mouse1.pas | 6 + Graphics/GraphWPF/mouse2.pas | 10 + ...ТочкиМногоугольника.pas | 12 + .../ВыравниваниеТекста1.pas | 30 + .../ВыравниваниеТекста2.pas | 34 + .../GraphWPF/Многоугольник.pas | 20 + .../GraphWPF/Многоугольник1.pas | 9 + Graphics/GraphWPF/Светофор.pas | 19 + .../Система координат.pas | 18 + .../ТаблицаУмножения.pas | 16 + Graphics/WPFObjects/MovingFrameBasedTime.pas | 22 + Graphics/WPFObjects/Shooter.pas | 105 + Graphics/WPFObjects/ShooterWithInterface.pas | 197 + Graphics/WPFObjects/StartStopMoveRotation.pas | 32 + Graphics/WPFObjects/gr_All_Brown_WPF.pas | 39 + Graphics/WPFObjects/gr_IntersectWPF.pas | 24 + Graphics/WPFObjects/gr_Move_Param_WPF.pas | 70 + Graphics/WPFObjects/gr_MovingObjectsWPF.pas | 58 + Graphics/WPFObjects/gr_ObjectsAsSeq.pas | 25 + Graphics/WPFObjects/gr_RealNumber_WPF.pas | 20 + Graphics/WPFObjects/gr_StandardColors_WPF.pas | 144 + Graphics/WPFObjects/gr_Star_Rotate1_WPF.pas | 12 + Graphics/WPFObjects/gr_Star_Rotate_WPF.pas | 16 + LINQ/Consonants.pas | 7 + LINQ/Delimiters.pas | 4 + LINQ/First3Min.pas | 4 + LINQ/FunTable.pas | 6 + LINQ/Linq1.pas | 6 + LINQ/Linq2.pas | 13 + LINQ/Linq3.pas | 18 + LINQ/MonteCarlo.pas | 7 + LINQ/Palindroms.pas | 6 + LINQ/QuickSortLinq.pas | 19 + LINQ/Seq.pas | 3 + LINQ/SumInv.pas | 13 + LINQ/TextFileCount.pas | 7 + LINQ/TextFileCount1.pas | 8 + LINQ/Zip.pas | 5 + LINQ/Zip2.pas | 4 + LanguageFeatures/AutoClassPoint.pas | 13 + LanguageFeatures/Boxing.pas | 22 + LanguageFeatures/ClassConstructor.pas | 36 + .../DiapasonOperation/diapAll.pas | 12 + LanguageFeatures/DllTest/MyDll.dll | Bin 0 -> 16384 bytes LanguageFeatures/DllTest/MyDll.pas | 16 + LanguageFeatures/DllTest/main.pas | 10 + .../ExtensionMethods/SwapHalfArrays.pas | 6 + LanguageFeatures/ForeachExamples.pas | 43 + LanguageFeatures/ForeachForSet.pas | 5 + LanguageFeatures/ForeachIEnumerable.pas | 46 + LanguageFeatures/FracOperatorOverload.pas | 34 + .../Generics/GenericClasses/Stack.pas | 56 + .../Generics/GenericProcFun/FindT.pas | 21 + .../Generics/GenericProcFun/SwapT.pas | 17 + LanguageFeatures/IfThenElseExpr.pas | 6 + LanguageFeatures/IfThenElseExpr2.pas | 14 + LanguageFeatures/IndexProperties.pas | 74 + LanguageFeatures/Lambdas/IntIntInt.pas | 6 + LanguageFeatures/ParamsConcat.pas | 13 + LanguageFeatures/ParamsWriteln.pas | 17 + .../Pattern Matching/ArithmEval.pas | 38 + .../Pattern Matching/ArithmSimplify.pas | 76 + .../Pattern Matching/MatchDelegate.pas | 12 + .../Pattern Matching/MatchWithTupleWhen.pas | 8 + LanguageFeatures/Pattern Matching/Squares.pas | 22 + .../UserDefinedDeconstruct.pas | 27 + .../UserDefinedDeconstructAsExtension.pas | 20 + LanguageFeatures/ProcParam.pas | 20 + LanguageFeatures/ProcVars.pas | 36 + LanguageFeatures/QuestionColonTypes.pas | 176 + .../ShortTypesInTemplateParams.pas | 19 + LanguageFeatures/Students.pas | 22 + LanguageFeatures/Tuples/MySqrt.pas | 14 + LanguageFeatures/WriteCycledLinkedList.pas | 19 + LanguageFeatures/WriteRecord.pas | 26 + LanguageFeatures/Yields/InfixTraverseTree.pas | 20 + NETLibraries/NET4.0/BigIntegerExample.pas | 12 + NETLibraries/NET4.0/ComplexExample.pas | 17 + NETLibraries/NET4.0/StopWatch.pas | 11 + NETLibraries/NET4.0/TupleCreate.pas | 10 + NETLibraries/System.Array/SystemArray1.pas | 37 + NETLibraries/System.DateTime/DateTime1.pas | 32 + NETLibraries/System.DateTime/DateTime2.pas | 34 + .../System.DateTime/DateTimeInterval.pas | 16 + NETLibraries/System.Net/DownloadFile.pas | 12 + NETLibraries/System.Net/MailSend.pas | 17 + NETLibraries/System.Net/Ping.pas | 16 + NETLibraries/System.Net/WebClient.pas | 10 + NETLibraries/System.Parallel/Parallel1.pas | 8 + NETLibraries/System.Parallel/Parallel2.pas | 46 + NETLibraries/System.Parallel/Parallel3.pas | 57 + NETLibraries/System.String/StringConvert.pas | 25 + NETLibraries/System.String/StringMethods1.pas | 30 + NETLibraries/System.String/StringMethods2.pas | 37 + NETLibraries/System.String/StringSplit.pas | 26 + .../System.Timers.Timer/SystemTimer.pas | 31 + .../System.Windows.Forms/FormWebBrowser.pas | 17 + .../System.Windows.Forms/MouseDraw.pas | 52 + .../WinFormWithButton.pas | 29 + NumLibABC/ApproxCheb1.pas | 14 + NumLibABC/Decomp1.pas | 11 + NumLibABC/DiffEqu1.pas | 29 + NumLibABC/Economi1.pas | 12 + NumLibABC/FMinN_1.pas | 13 + NumLibABC/FMinN_2.pas | 14 + NumLibABC/FMinN_3.pas | 14 + NumLibABC/FMinN_4.pas | 23 + NumLibABC/FMinN_5.pas | 13 + NumLibABC/FMinN_6.pas | 27 + NumLibABC/FMin_1.pas | 9 + NumLibABC/Factors1.pas | 10 + NumLibABC/Fraction1.pas | 8 + NumLibABC/Matrix1.pas | 11 + NumLibABC/NumLibABCTest.pas | 981 + NumLibABC/PolRT1.pas | 10 + NumLibABC/Polynom1.pas | 11 + NumLibABC/Polynom2.pas | 16 + NumLibABC/Quanc8_1.pas | 9 + NumLibABC/RootsIsolation1.pas | 10 + NumLibABC/SLAU1.pas | 11 + NumLibABC/Spline1.pas | 12 + NumLibABC/Vector1.pas | 20 + NumLibABC/Zeroin1.pas | 9 + OMPSamples/Hanoi.pas | 35 + OMPSamples/MultMatrix.pas | 37 + OMPSamples/Mutual Lock.pas | 33 + OMPSamples/QuickSort.pas | 96 + OMPSamples/SqrSinArrays.pas | 47 + OMPSamples/SumOfPrime.pas | 44 + OMPSamples/Write Critical.pas | 27 + OpenGL и OpenCL/OpenCL/MatrMlt.cl | 28 + OpenGL и OpenCL/OpenCL/MatrMlt.pas | 119 + OpenGL и OpenCL/OpenCL/SimpleAddition.cl | 12 + OpenGL и OpenCL/OpenCL/SimpleAddition.pas | 67 + .../MatrMlt.cl | 28 + .../MatrMlt.pas | 100 + .../SimpleAddition.cl | 12 + .../SimpleAddition.pas | 27 + .../OpenCLABC/Wait очереди/1.pas | 32 + .../OpenCLABC/Wait очереди/2.pas | 31 + .../Wait очереди/NamedQData.pas | 13 + .../0.cl | 11 + .../Использовать.pas | 24 + .../Прекомпилировать.pas | 8 + .../OpenGL/Rot Triangle 1.vertex.glsl | 18 + ... 1 (простейший пример).pas | 238 + ...ользованию OpenGL и OpenCL.html | 1921 ++ .../Справка OpenCLABC.html | 2086 +++ .../Справка OpenGLABC.html | 886 + Other/SpeedTests/ArraySlice.pas | 9 + Other/SpeedTests/ArraySliceAssignment.pas | 9 + .../CalculationsGlobalLocal/BlockVars.pas | 13 + .../CalculationsGlobalLocal/GlobalVars.pas | 15 + Other/SpeedTests/ListSlice.pas | 10 + Other/SpeedTests/ListSliceAssignment.pas | 9 + Other/SpeedTests/Milli.pas | 14 + Other/SpeedTests/Substring_vs_Slice.pas | 12 + Other/UnmanagedGraphics/MessageBox.pas | 6 + PascalABCNET.ini | 46 + StandardUnits/CRT/Bill.pas | 145 + StandardUnits/CRT/CPaint.pas | 70 + StandardUnits/CRT/CRTColors.pas | 20 + StandardUnits/CRT/SimpleTextEditor.pas | 17 + StandardUnits/FormsABC/CalcIntegral.pas | 64 + StandardUnits/FormsABC/PaintBoxDraw.pas | 76 + StandardUnits/FormsABC/f0.pas | 24 + StandardUnits/FormsABC/f0_MV.pas | 40 + StandardUnits/FormsABC/f0_class.pas | 30 + .../PABCSystem/SerializationGraph.pas | 19 + .../PABCSystem/SerializationMany.pas | 28 + StandardUnits/PABCSystem/SerializationOne.pas | 18 + StandardUnits/PABCSystem/a.dat | Bin 0 -> 455 bytes StandardUnits/Timers/Timer1.pas | 21 + StandardUnits/Timers/Timer2.pas | 59 + StandardUnits/Turtle/Turtle1.pas | 53 + Городок/data/Thumbs.db | Bin 4608 -> 0 bytes Карта_Пирата/data/Thumbs.db | Bin 13312 -> 0 bytes 636 files changed, 53276 insertions(+) create mode 100644 !MainFeatures/01_First/Amp.pas create mode 100644 !MainFeatures/01_First/Amp2.pas create mode 100644 !MainFeatures/01_First/AssignExt.pas create mode 100644 !MainFeatures/01_First/AutoVars.pas create mode 100644 !MainFeatures/01_First/BlockVar.pas create mode 100644 !MainFeatures/01_First/Foreach.pas create mode 100644 !MainFeatures/01_First/Print.pas create mode 100644 !MainFeatures/01_First/RandomDiap.pas create mode 100644 !MainFeatures/01_First/RealExtNums.pas create mode 100644 !MainFeatures/01_First/SimpleNewFeatures.pas create mode 100644 !MainFeatures/01_First/StandardTypes.pas create mode 100644 !MainFeatures/01_First/WriteAll.pas create mode 100644 !MainFeatures/01_First/WriteFormat.pas create mode 100644 !MainFeatures/02_Types/CharFunc.pas create mode 100644 !MainFeatures/02_Types/Dynarray.pas create mode 100644 !MainFeatures/02_Types/Enum.pas create mode 100644 !MainFeatures/02_Types/InitRecords.pas create mode 100644 !MainFeatures/02_Types/PointerToRef.pas create mode 100644 !MainFeatures/02_Types/PointersVsRef/Pointers.pas create mode 100644 !MainFeatures/02_Types/PointersVsRef/References.pas create mode 100644 !MainFeatures/02_Types/Sets.pas create mode 100644 !MainFeatures/02_Types/StringInteger.pas create mode 100644 !MainFeatures/02_Types/StringMethods.pas create mode 100644 !MainFeatures/02_Types/StringTypes.pas create mode 100644 !MainFeatures/02_Types/StructTypeEquiv.pas create mode 100644 !MainFeatures/02_Types/UntypedFile.pas create mode 100644 !MainFeatures/03_Subroutines/FuncParams.pas create mode 100644 !MainFeatures/03_Subroutines/Overload.pas create mode 100644 !MainFeatures/03_Subroutines/ProcVars.pas create mode 100644 !MainFeatures/03_Subroutines/SwapT.pas create mode 100644 !MainFeatures/04_Units/CallC#/CallCS.pas create mode 100644 !MainFeatures/04_Units/CallC#/ClassLibrary1.dll create mode 100644 !MainFeatures/04_Units/DllTest/MyDll.dll create mode 100644 !MainFeatures/04_Units/DllTest/MyDll.pas create mode 100644 !MainFeatures/04_Units/DllTest/main.pas create mode 100644 !MainFeatures/04_Units/NativeDll/CallNative.pas create mode 100644 !MainFeatures/04_Units/NativeDll/NativeDll.dll create mode 100644 !MainFeatures/04_Units/NativeDll/NativeDll.dpr create mode 100644 !MainFeatures/04_Units/SimpleUnit/MainProgram.pas create mode 100644 !MainFeatures/04_Units/SimpleUnit/MyUnit.pas create mode 100644 !MainFeatures/04_Units/SystemUnitTest.pas create mode 100644 !MainFeatures/05_Graph/ABC.pas create mode 100644 !MainFeatures/05_Graph/GraphABCTest.pas create mode 100644 !MainFeatures/05_Graph/MouseEvents.pas create mode 100644 !MainFeatures/06_Classes/AllFromObject.pas create mode 100644 !MainFeatures/06_Classes/Boxing.pas create mode 100644 !MainFeatures/06_Classes/ClassConstructor.pas create mode 100644 !MainFeatures/06_Classes/GarbageCollection.pas create mode 100644 !MainFeatures/06_Classes/Interf.pas create mode 100644 !MainFeatures/06_Classes/OperatorOverloading.pas create mode 100644 !MainFeatures/06_Classes/PersonInternal.pas create mode 100644 !MainFeatures/06_Classes/Records.pas create mode 100644 !MainFeatures/06_Classes/Stack.pas create mode 100644 !MainFeatures/06_Classes/Where.pas create mode 100644 !MainFeatures/06_Classes/WriteRecord.pas create mode 100644 !MainFeatures/07_NetLibs/DateTime.pas create mode 100644 !MainFeatures/07_NetLibs/FormWebBrowser.pas create mode 100644 !MainFeatures/07_NetLibs/LinkedList.pas create mode 100644 !MainFeatures/07_NetLibs/Reflection.pas create mode 100644 !MainFeatures/07_NetLibs/WinFormWithButton.pas create mode 100644 !NewExecutors/p1.pas create mode 100644 !NewExecutors/p4.pas create mode 100644 !NewExecutors/ГрафическиеИсполнители.pas create mode 100644 !NewExecutors/Исполнители.pas create mode 100644 !NewExecutors/Множество1.pas create mode 100644 !NewExecutors/Окна.pas create mode 100644 !NewExecutors/Последовательности1.pas create mode 100644 !NewExecutors/Последовательности2.pas create mode 100644 !NewExecutors/Пример1.pas create mode 100644 !NewExecutors/Пример2.pas create mode 100644 !NewExecutors/Прогрессии1.pas create mode 100644 !NewExecutors/Прогрессии2.pas create mode 100644 !NewExecutors/Страны.csv create mode 100644 !NewExecutors/Страны1.pas create mode 100644 !NewExecutors/Страны2.pas create mode 100644 !NewExecutors/Страны2a.pas create mode 100644 !NewExecutors/Страны2b.pas create mode 100644 !NewExecutors/Страны2c.pas create mode 100644 !NewExecutors/Страны3.pas create mode 100644 !NewExecutors/Страны4.pas create mode 100644 !NewExecutors/СтраныGUI.pas create mode 100644 !NewExecutors/Файлы1.pas create mode 100644 !NewExecutors/Файлы2.pas create mode 100644 !Tutorial/01_First/Assign1.pas create mode 100644 !Tutorial/01_First/Assign2.pas create mode 100644 !Tutorial/01_First/AssignExt.pas create mode 100644 !Tutorial/01_First/Boolean1.pas create mode 100644 !Tutorial/01_First/Calculations1.pas create mode 100644 !Tutorial/01_First/Calculations2.pas create mode 100644 !Tutorial/01_First/Calculations3.pas create mode 100644 !Tutorial/01_First/DivMod1.pas create mode 100644 !Tutorial/01_First/DivMod2.pas create mode 100644 !Tutorial/01_First/Eof.pas create mode 100644 !Tutorial/01_First/Eoln.pas create mode 100644 !Tutorial/01_First/HelloWorld.pas create mode 100644 !Tutorial/01_First/Random1.pas create mode 100644 !Tutorial/01_First/Random2.pas create mode 100644 !Tutorial/01_First/ReadString.pas create mode 100644 !Tutorial/01_First/Shl.pas create mode 100644 !Tutorial/01_First/StandFun.pas create mode 100644 !Tutorial/01_First/StandardTypes.pas create mode 100644 !Tutorial/01_First/StringPlus.pas create mode 100644 !Tutorial/01_First/WriteFormat.pas create mode 100644 !Tutorial/02_Errors/CompilerError1.pas create mode 100644 !Tutorial/02_Errors/CompilerError2.pas create mode 100644 !Tutorial/02_Errors/CompilerError3.pas create mode 100644 !Tutorial/02_Errors/CompilerError4.pas create mode 100644 !Tutorial/02_Errors/RuntimeError1.pas create mode 100644 !Tutorial/02_Errors/RuntimeError2.pas create mode 100644 !Tutorial/02_Errors/RuntimeError3.pas create mode 100644 !Tutorial/02_Errors/RuntimeError4.pas create mode 100644 !Tutorial/03_Robot_Drawman/DMa1.pas create mode 100644 !Tutorial/03_Robot_Drawman/RBa1.pas create mode 100644 !Tutorial/04_Graphics/Gr1.pas create mode 100644 !Tutorial/04_Graphics/Gr2.pas create mode 100644 !Tutorial/04_Graphics/Gr3.pas create mode 100644 !Tutorial/04_Graphics/Gr4.pas create mode 100644 !Tutorial/04_Graphics/Gr5.pas create mode 100644 !Tutorial/04_Graphics/Gr6.pas create mode 100644 !Tutorial/04_Graphics/Gr7.pas create mode 100644 !Tutorial/04_Graphics/Gr8.pas create mode 100644 !Tutorial/04_Graphics/GrAnim1.pas create mode 100644 !Tutorial/04_Graphics/GrAnim2.pas create mode 100644 !Tutorial/04_Graphics/GrCoord1.pas create mode 100644 !Tutorial/04_Graphics/GrCoord2.pas create mode 100644 !Tutorial/04_Graphics/GrCoord3.pas create mode 100644 !Tutorial/04_Graphics/GrFont1.pas create mode 100644 !Tutorial/04_Graphics/GrFont2.pas create mode 100644 !Tutorial/04_Graphics/GrPoly.pas create mode 100644 !Tutorial/04a_ABCObjects/ABC1.pas create mode 100644 !Tutorial/05_IfCaseBoolean/Case1.pas create mode 100644 !Tutorial/05_IfCaseBoolean/Case2.pas create mode 100644 !Tutorial/05_IfCaseBoolean/Case3.pas create mode 100644 !Tutorial/05_IfCaseBoolean/Case4.pas create mode 100644 !Tutorial/05_IfCaseBoolean/If1.pas create mode 100644 !Tutorial/05_IfCaseBoolean/If2.pas create mode 100644 !Tutorial/05_IfCaseBoolean/If3.pas create mode 100644 !Tutorial/05_IfCaseBoolean/If4.pas create mode 100644 !Tutorial/05_IfCaseBoolean/If5.pas create mode 100644 !Tutorial/06_ForWhileRepeat/For1.pas create mode 100644 !Tutorial/06_ForWhileRepeat/For1a.pas create mode 100644 !Tutorial/06_ForWhileRepeat/For2.pas create mode 100644 !Tutorial/06_ForWhileRepeat/For3.pas create mode 100644 !Tutorial/06_ForWhileRepeat/For4.pas create mode 100644 !Tutorial/06_ForWhileRepeat/For5.pas create mode 100644 !Tutorial/06_ForWhileRepeat/For6.pas create mode 100644 !Tutorial/06_ForWhileRepeat/For7.pas create mode 100644 !Tutorial/06_ForWhileRepeat/For8.pas create mode 100644 !Tutorial/06_ForWhileRepeat/For9.pas create mode 100644 !Tutorial/06_ForWhileRepeat/ForFor1.pas create mode 100644 !Tutorial/06_ForWhileRepeat/ForFor2.pas create mode 100644 !Tutorial/06_ForWhileRepeat/ForGra1.pas create mode 100644 !Tutorial/06_ForWhileRepeat/algo1.pas create mode 100644 !Tutorial/06_ForWhileRepeat/algo2.pas create mode 100644 !Tutorial/06_ForWhileRepeat/repeat1.pas create mode 100644 !Tutorial/06_ForWhileRepeat/repeat2.pas create mode 100644 !Tutorial/06_ForWhileRepeat/while1.pas create mode 100644 !Tutorial/06_ForWhileRepeat/while2.pas create mode 100644 !Tutorial/06_ForWhileRepeat/while3.pas create mode 100644 !Tutorial/07_CharString/Char1.pas create mode 100644 !Tutorial/07_CharString/Char2.pas create mode 100644 !Tutorial/07_CharString/Char3.pas create mode 100644 !Tutorial/07_CharString/CharTable.pas create mode 100644 !Tutorial/07_CharString/String1.pas create mode 100644 !Tutorial/07_CharString/String2.pas create mode 100644 !Tutorial/07_CharString/String3.pas create mode 100644 !Tutorial/07_CharString/String4.pas create mode 100644 !Tutorial/07_CharString/String5.pas create mode 100644 !Tutorial/07_CharString/String6.pas create mode 100644 !Tutorial/07_CharString/StringInteger1.pas create mode 100644 !Tutorial/07_CharString/StringInteger2.pas create mode 100644 !Tutorial/07_CharString/StringInteger3.pas create mode 100644 !Tutorial/07_CharString/StringReal1.pas create mode 100644 !Tutorial/07_CharString/UpLowCase.pas create mode 100644 !Tutorial/08_ProcFunc/Fun1.pas create mode 100644 !Tutorial/08_ProcFunc/Fun2.pas create mode 100644 !Tutorial/08_ProcFunc/Proc1.pas create mode 100644 !Tutorial/08_ProcFunc/Proc2.pas create mode 100644 !Tutorial/08_ProcFunc/Proc3.pas create mode 100644 !Tutorial/09_Arrays/DynArr1.pas create mode 100644 !Tutorial/09_Arrays/DynArr2.pas create mode 100644 !Tutorial/09_Arrays/DynArr3.pas create mode 100644 !Tutorial/09_Arrays/DynArr4.pas create mode 100644 !Tutorial/09_Arrays/DynArrErr1.pas create mode 100644 !Tutorial/09_Arrays/DynArrErr2.pas create mode 100644 !Tutorial/09_Arrays/SortByChoice.pas create mode 100644 !Tutorial/09_Arrays/StaticArr1.pas create mode 100644 !Tutorial/09_Arrays/StaticArr2.pas create mode 100644 !Tutorial/09_Arrays/StaticArr3.pas create mode 100644 !Tutorial/09_Units/UnitInitFin/MainInitFinDemo.pas create mode 100644 !Tutorial/09_Units/UnitInitFin/MyUnit.pas create mode 100644 !Tutorial/09_Units/UnitNames/MainSameNames.pas create mode 100644 !Tutorial/09_Units/UnitNames/MyA.pas create mode 100644 !Tutorial/09_Units/UnitNames/MyB.pas create mode 100644 !Tutorial/09_Units/UnitStructure/MainProgram.pas create mode 100644 !Tutorial/09_Units/UnitStructure/MyUnit.pas create mode 100644 !Tutorial/10_Matrices/Matr1.pas create mode 100644 !Tutorial/10_Matrices/Matr2.pas create mode 100644 !Tutorial/11_Enums/Enum1.pas create mode 100644 !Tutorial/11_Enums/Enum2.pas create mode 100644 !Tutorial/12_Files/File1.pas create mode 100644 !Tutorial/12_Files/Text1.pas create mode 100644 !Tutorial/12_Files/Text2.pas create mode 100644 !Tutorial/12_Files/Text3.pas create mode 100644 !Tutorial/12_Files/Untyped1.pas create mode 100644 !Tutorial/13_Pointers/Pointer1.pas create mode 100644 !Tutorial/13_Pointers/Pointer2.pas create mode 100644 !Tutorial/13_Pointers/Pointer3.pas create mode 100644 !Tutorial/13_Pointers/Pointer4.pas create mode 100644 !Tutorial/13_Pointers/ProcPointer1.pas create mode 100644 !Tutorial/13_Pointers/ProcPointer2.pas create mode 100644 !Tutorial/13_Pointers/Reference.pas create mode 100644 !Tutorial/14_Records/Rec1.pas create mode 100644 !Tutorial/14_Records/Rec2.pas create mode 100644 !Tutorial/15_Classes/Inheritance1.pas create mode 100644 !Tutorial/15_Classes/PersonExternal.pas create mode 100644 !Tutorial/15_Classes/PersonInternal.pas create mode 100644 !Tutorial/15_Classes/Properties.pas create mode 100644 !Tutorial/16_Exceptions/Try1.pas create mode 100644 !Tutorial/16_Exceptions/Try2.pas create mode 100644 !Tutorial/16_Exceptions/Try3.pas create mode 100644 !Tutorial/16_Exceptions/Try4.pas create mode 100644 !Tutorial/17_Interfaces/Interf1.pas create mode 100644 !Tutorial/17_Interfaces/Interf2.pas create mode 100644 !Tutorial/18_Dll/Main.pas create mode 100644 !Tutorial/18_Dll/MyLib.pas create mode 100644 1.pas create mode 100644 2.pas create mode 100644 Algorithms/Combinatorics/NextPerm.pas create mode 100644 Algorithms/Eratosthenes.pas create mode 100644 Algorithms/FloodFillTuple.pas create mode 100644 Algorithms/MazeGen.pas create mode 100644 Algorithms/PrimeNumbers.pas create mode 100644 Algorithms/Recursion/ESquares.pas create mode 100644 Algorithms/Recursion/Hanoi.pas create mode 100644 Algorithms/Recursion/Knapsack.pas create mode 100644 Algorithms/Recursion/Permutations.pas create mode 100644 Algorithms/Recursion/TreeDraw.pas create mode 100644 Algorithms/SortArrays/QuickSort.pas create mode 100644 Algorithms/SortArrays/QuickSortFunctional.pas create mode 100644 Algorithms/SortArrays/SelectionSort.pas create mode 100644 Algorithms/Sqrt2.pas create mode 100644 Algorithms/field.txt create mode 100644 Applications/GraphApplications/FuncTransform.pas create mode 100644 Applications/GraphApplications/Paporotnik/Main.pas create mode 100644 Applications/GraphApplications/Paporotnik/Paporotnik.pas create mode 100644 Applications/GraphApplications/Paporotnik/PaporotnikData.pas create mode 100644 Applications/TextEditor/Open.png create mode 100644 Applications/TextEditor/Save.png create mode 100644 Applications/TextEditor/TextEditor.pas create mode 100644 BlockFileOfT/FileDatabase/FileArray.pas create mode 100644 BlockFileOfT/FileDatabase/База данных на файле.pas create mode 100644 BlockFileOfT/Дополнительно.pas create mode 100644 BlockFileOfT/Основы.pas create mode 100644 BlockFileOfT/Справка.html create mode 100644 BlockFileOfT/СправкаData/RefTSaving.html create mode 100644 BlockFileOfT/СправкаData/WhyOffset.html create mode 100644 BlockFileOfT/СправкаData/main.html create mode 100644 BlockFileOfT/Сравнение скорости.pas create mode 100644 CheckedTasks/DrawMan/DMpp17.pas create mode 100644 CheckedTasks/DrawMan/DrawManMakeTask/DMMy1.pas create mode 100644 CheckedTasks/DrawMan/DrawManMakeTask/DMTasks.pas create mode 100644 CheckedTasks/DrawMan/random_DM.pas create mode 100644 CheckedTasks/PT4/Dynamic2.pas create mode 100644 CheckedTasks/PT4/File48.pas create mode 100644 CheckedTasks/PT4/PT4TaskMaker/Demo1.pas create mode 100644 CheckedTasks/PT4/PT4TaskMaker/PT4Demo.pas create mode 100644 CheckedTasks/PT4/PT4TaskMaker/PT4DemoTest.pas create mode 100644 CheckedTasks/PT4/String9.pas create mode 100644 CheckedTasks/Robot/RBcc17.pas create mode 100644 CheckedTasks/Robot/RobotMakeTask/RBMy1.pas create mode 100644 CheckedTasks/Robot/RobotMakeTask/RobTasks.pas create mode 100644 CheckedTasks/Robot/random_Robot.pas create mode 100644 Games/15.pas create mode 100644 Games/Animals/Animals.pas create mode 100644 Games/Animals/Animals1.pas create mode 100644 Games/Animals/animals.dat create mode 100644 Games/Animals/animals_data.txt create mode 100644 Games/Battle.pas create mode 100644 Games/BookWorm/BookWormABCNET.pas create mode 100644 Games/BookWorm/words.txt create mode 100644 Games/DeleteByMouse.pas create mode 100644 Games/KillThem.pas create mode 100644 Games/Life.pas create mode 100644 Games/Matches.pas create mode 100644 Games/NewLife.pas create mode 100644 Games/PifTableExam.pas create mode 100644 Games/PifTableExam1.pas create mode 100644 Graph3D/All3DPrimitives.pas create mode 100644 Graph3D/Chess3D/bishop.obj create mode 100644 Graph3D/Chess3D/board.obj create mode 100644 Graph3D/Chess3D/game2.pas create mode 100644 Graph3D/Chess3D/horse.obj create mode 100644 Graph3D/Chess3D/king.obj create mode 100644 Graph3D/Chess3D/pawn.obj create mode 100644 Graph3D/Chess3D/queen.obj create mode 100644 Graph3D/Chess3D/rook.obj create mode 100644 Graph3D/Earth.jpg create mode 100644 Graph3D/EarthImageMaterial.pas create mode 100644 Graph3D/Platonic.pas create mode 100644 Graph3D/ReGroup1.pas create mode 100644 Graph3D/SunSystem/PlanetsRotateAlgAnim.pas create mode 100644 Graph3D/SunSystem/PlanetsRotateFrBased.pas create mode 100644 Graph3D/SunSystem/earthmap.jpg create mode 100644 Graph3D/SunSystem/moonmap.jpg create mode 100644 Graph3D/SunSystem/skymap.jpg create mode 100644 Graph3D/SunSystem/sunmap.jpg create mode 100644 Graph3D/animOperationsPlusMult.pas create mode 100644 Graph3D/pr3.pas create mode 100644 Graph3D/pr4_Planes.pas create mode 100644 Graph3D/pr5_cam.pas create mode 100644 Graph3D/Анимация/Анимация по траектории/AnimMoveTrajectory2.pas create mode 100644 Graph3D/Анимация/Анимация по траектории/AnimMoveTrajectoryPoints.pas create mode 100644 Graph3D/Анимация/Декораторы Анимаций/AnimAccelerationRatio1.pas create mode 100644 Graph3D/Анимация/Декораторы Анимаций/AnimAccelerationRatio2.pas create mode 100644 Graph3D/Анимация/Декораторы Анимаций/AnimDecorators1.pas create mode 100644 Graph3D/Анимация/Декораторы Анимаций/AnimDecorators2.pas create mode 100644 Graph3D/Анимация/Декораторы Анимаций/AnimDecorators3.pas create mode 100644 Graph3D/Анимация/Декораторы Анимаций/GroupAnimForever.pas create mode 100644 Graph3D/Анимация/Декораторы Анимаций/ProbaGroup3.pas create mode 100644 Graph3D/Анимация/Простая Анимация/GroupAnimationAdd.pas create mode 100644 Graph3D/Анимация/Простая Анимация/ProbaGroup2.pas create mode 100644 Graph3D/Анимация/Простая Анимация/animSequence.pas create mode 100644 Graph3D/Анимация/Составные Анимации/AnimJump.pas create mode 100644 Graph3D/Анимация/Составные Анимации/PlanetsRotate.pas create mode 100644 Graph3D/Анимация/Составные Анимации/Platonic.pas create mode 100644 Graph3D/Анимация/Составные Анимации/ThenAnimMove.pas create mode 100644 Graph3D/Анимация/Составные Анимации/animSequencePlus.pas create mode 100644 Graph3D/Анимация/Составные Анимации/animWhenCompleted.pas create mode 100644 Graph3D/Группировка/Child.pas create mode 100644 Graph3D/Группировка/GroupGroup.pas create mode 100644 Graph3D/Группировка/ReGroup2.pas create mode 100644 Graph3D/Клонирование/CloneAnim.pas create mode 100644 Graph3D/Клонирование/CloneWithChildren.pas create mode 100644 Graph3D/Клонирование/DuplicateByTrajectory.pas create mode 100644 Graph3D/Клонирование/MovRot.pas create mode 100644 Graph3D/Кривые/3DCirve1.pas create mode 100644 Graph3D/Кубик Рубика/Rubic3D.pas create mode 100644 Graph3D/Материалы/Cells1.png create mode 100644 Graph3D/Материалы/Cells2.png create mode 100644 Graph3D/Материалы/Dog.jpg create mode 100644 Graph3D/Материалы/Material1.pas create mode 100644 Graph3D/Материалы/Material2.pas create mode 100644 Graph3D/Материалы/TextureCell.pas create mode 100644 Graph3D/Освещение/PointLight.pas create mode 100644 Graph3D/Освещение/трава.jpg create mode 100644 Graph3D/Проволочные Модели/WireFramePrism.pas create mode 100644 Graph3D/Производительность/Cubes.pas create mode 100644 Graph3D/Производительность/Spheres.pas create mode 100644 Graph3D/События клавиатуры/Key1.pas create mode 100644 Graph3D/События клавиатуры/KeyFrameBasedTime.pas create mode 100644 Graph3D/События мыши/cc3.pas create mode 100644 Graph3D/События мыши/cc4.pas create mode 100644 Graph3D/События мыши/cc5.pas create mode 100644 Graph3D/События мыши/СлучайныйЦвет.pas create mode 100644 Graph3D/Фигуры/Lego1.pas create mode 100644 Graph3D/Фигуры/Pyramid.pas create mode 100644 Graph3D/Фигуры/Замок.pas create mode 100644 Graph3D/Фигуры/Замок.xaml create mode 100644 Graph3D/Часы.pas create mode 100644 Graphics/ABCObjects/Sprites/SpriteFrames/multi1.bmp create mode 100644 Graphics/ABCObjects/Sprites/SpriteFrames/multi2.bmp create mode 100644 Graphics/ABCObjects/Sprites/SpriteFrames/multi3.bmp create mode 100644 Graphics/ABCObjects/Sprites/SpriteFrames/multi4.bmp create mode 100644 Graphics/ABCObjects/Sprites/SpriteFrames/multi5.bmp create mode 100644 Graphics/ABCObjects/Sprites/gr_SpriteCreation.pas create mode 100644 Graphics/ABCObjects/Sprites/gr_SpriteUsing.pas create mode 100644 Graphics/ABCObjects/Sprites/spr.png create mode 100644 Graphics/ABCObjects/Sprites/spr.spinf create mode 100644 Graphics/ABCObjects/demo.bmp create mode 100644 Graphics/ABCObjects/gr_All_Brown.pas create mode 100644 Graphics/ABCObjects/gr_Clone_Recur.pas create mode 100644 Graphics/ABCObjects/gr_DragPicture.pas create mode 100644 Graphics/ABCObjects/gr_Intersect.pas create mode 100644 Graphics/ABCObjects/gr_Move_Param.pas create mode 100644 Graphics/ABCObjects/gr_MovingObjects.pas create mode 100644 Graphics/ABCObjects/gr_PictureScale.pas create mode 100644 Graphics/ABCObjects/gr_RealNumber.pas create mode 100644 Graphics/ABCObjects/gr_StandardColors.pas create mode 100644 Graphics/ABCObjects/gr_Star_Rotate.pas create mode 100644 Graphics/ABCObjects/gr_Text.pas create mode 100644 Graphics/Controls/cc10_ComboBox.pas create mode 100644 Graphics/Controls/cc11_ComboBox2.pas create mode 100644 Graphics/Controls/cc12_Wrapping.pas create mode 100644 Graphics/Controls/cc13_Заголовки.pas create mode 100644 Graphics/Controls/cc14_Canvas.pas create mode 100644 Graphics/Controls/cc15_ListView.pas create mode 100644 Graphics/Controls/cc16_Countries.pas create mode 100644 Graphics/Controls/cc16a_CountyCapital.pas create mode 100644 Graphics/Controls/cc17_CalcIdea.pas create mode 100644 Graphics/Controls/cc18_SimpleCalc.pas create mode 100644 Graphics/Controls/cc19_StatusBar.pas create mode 100644 Graphics/Controls/cc1_All.pas create mode 100644 Graphics/Controls/cc20_Menu.pas create mode 100644 Graphics/Controls/cc20_Menu2.pas create mode 100644 Graphics/Controls/cc21_FileDialogs.pas create mode 100644 Graphics/Controls/cc22_MsgBox.pas create mode 100644 Graphics/Controls/cc23_Random3DSpheres.pas create mode 100644 Graphics/Controls/cc24_RGB.pas create mode 100644 Graphics/Controls/cc25_Gr3DProperties.pas create mode 100644 Graphics/Controls/cc2_All2.pas create mode 100644 Graphics/Controls/cc3_All3.pas create mode 100644 Graphics/Controls/cc4_ButtonClick.pas create mode 100644 Graphics/Controls/cc5_CheckBoxes.pas create mode 100644 Graphics/Controls/cc6_CheckBoxes2.pas create mode 100644 Graphics/Controls/cc7_RadioButtons.pas create mode 100644 Graphics/Controls/cc8_MoveObject.pas create mode 100644 Graphics/Controls/cc8a_MoveObject.pas create mode 100644 Graphics/Controls/cc9_ListBox.pas create mode 100644 Graphics/GraphABC/DigitalClock.pas create mode 100644 Graphics/GraphABC/Flame.pas create mode 100644 Graphics/GraphABC/Fractals/Dragon.pas create mode 100644 Graphics/GraphABC/Fractals/Mandelbrot.pas create mode 100644 Graphics/GraphABC/Fractals/Paporotnik/Main.pas create mode 100644 Graphics/GraphABC/Fractals/Paporotnik/Paporotnik.pas create mode 100644 Graphics/GraphABC/Fractals/Paporotnik/PaporotnikData.pas create mode 100644 Graphics/GraphABC/Fractals/Paporotnik1.pas create mode 100644 Graphics/GraphABC/Graphics/DrawFunc.pas create mode 100644 Graphics/GraphABC/Graphics/DrawFunc2.pas create mode 100644 Graphics/GraphABC/Hypno.pas create mode 100644 Graphics/GraphABC/Mosaic.pas create mode 100644 Graphics/GraphABC/MouseDownEvent.pas create mode 100644 Graphics/GraphABC/MouseDraw.pas create mode 100644 Graphics/GraphABC/SetPixel.pas create mode 100644 Graphics/GraphABC/Stamps/Stamp1.pas create mode 100644 Graphics/GraphABC/Stamps/Stamp2.pas create mode 100644 Graphics/GraphABC/Stamps/Stamp3.pas create mode 100644 Graphics/GraphABC/Stamps/Stamp4.pas create mode 100644 Graphics/GraphABC/Stamps/Stamp5.pas create mode 100644 Graphics/GraphABC/Stamps/StampCompound.pas create mode 100644 Graphics/GraphABC/Stamps/StampCross.pas create mode 100644 Graphics/GraphABC/Stamps/StampFunc.pas create mode 100644 Graphics/GraphABC/Stamps/StampPoly.pas create mode 100644 Graphics/GraphABC/Stamps/StampText.pas create mode 100644 Graphics/GraphABC/Star.pas create mode 100644 Graphics/GraphABC/Tentacles.pas create mode 100644 Graphics/GraphABC/ThroughTheUniverse.pas create mode 100644 Graphics/GraphABC/graph3d.pas create mode 100644 Graphics/GraphABC/graphic.pas create mode 100644 Graphics/GraphABC/rain.pas create mode 100644 Graphics/GraphWPF/4.pdf create mode 100644 Graphics/GraphWPF/ArcSector.pas create mode 100644 Graphics/GraphWPF/Clock.pas create mode 100644 Graphics/GraphWPF/CurjaMurja.pas create mode 100644 Graphics/GraphWPF/DrawCircleByMouse.pas create mode 100644 Graphics/GraphWPF/DrawGraphic.pas create mode 100644 Graphics/GraphWPF/DrawPixels.pas create mode 100644 Graphics/GraphWPF/EllRectInWindow.pas create mode 100644 Graphics/GraphWPF/Ellipses.pas create mode 100644 Graphics/GraphWPF/IsFixedSize.pas create mode 100644 Graphics/GraphWPF/MandelbrotWPF.pas create mode 100644 Graphics/GraphWPF/OnDrawFrame1.pas create mode 100644 Graphics/GraphWPF/SetPixel.pas create mode 100644 Graphics/GraphWPF/SetPixels.pas create mode 100644 Graphics/GraphWPF/TextOutFontWith.pas create mode 100644 Graphics/GraphWPF/anim1.pas create mode 100644 Graphics/GraphWPF/anim2.pas create mode 100644 Graphics/GraphWPF/anim4.pas create mode 100644 Graphics/GraphWPF/anim5.pas create mode 100644 Graphics/GraphWPF/mouse1.pas create mode 100644 Graphics/GraphWPF/mouse2.pas create mode 100644 Graphics/GraphWPF/ВсеТочкиМногоугольника.pas create mode 100644 Graphics/GraphWPF/ВыравниваниеТекста1.pas create mode 100644 Graphics/GraphWPF/ВыравниваниеТекста2.pas create mode 100644 Graphics/GraphWPF/Многоугольник.pas create mode 100644 Graphics/GraphWPF/Многоугольник1.pas create mode 100644 Graphics/GraphWPF/Светофор.pas create mode 100644 Graphics/GraphWPF/Система координат.pas create mode 100644 Graphics/GraphWPF/ТаблицаУмножения.pas create mode 100644 Graphics/WPFObjects/MovingFrameBasedTime.pas create mode 100644 Graphics/WPFObjects/Shooter.pas create mode 100644 Graphics/WPFObjects/ShooterWithInterface.pas create mode 100644 Graphics/WPFObjects/StartStopMoveRotation.pas create mode 100644 Graphics/WPFObjects/gr_All_Brown_WPF.pas create mode 100644 Graphics/WPFObjects/gr_IntersectWPF.pas create mode 100644 Graphics/WPFObjects/gr_Move_Param_WPF.pas create mode 100644 Graphics/WPFObjects/gr_MovingObjectsWPF.pas create mode 100644 Graphics/WPFObjects/gr_ObjectsAsSeq.pas create mode 100644 Graphics/WPFObjects/gr_RealNumber_WPF.pas create mode 100644 Graphics/WPFObjects/gr_StandardColors_WPF.pas create mode 100644 Graphics/WPFObjects/gr_Star_Rotate1_WPF.pas create mode 100644 Graphics/WPFObjects/gr_Star_Rotate_WPF.pas create mode 100644 LINQ/Consonants.pas create mode 100644 LINQ/Delimiters.pas create mode 100644 LINQ/First3Min.pas create mode 100644 LINQ/FunTable.pas create mode 100644 LINQ/Linq1.pas create mode 100644 LINQ/Linq2.pas create mode 100644 LINQ/Linq3.pas create mode 100644 LINQ/MonteCarlo.pas create mode 100644 LINQ/Palindroms.pas create mode 100644 LINQ/QuickSortLinq.pas create mode 100644 LINQ/Seq.pas create mode 100644 LINQ/SumInv.pas create mode 100644 LINQ/TextFileCount.pas create mode 100644 LINQ/TextFileCount1.pas create mode 100644 LINQ/Zip.pas create mode 100644 LINQ/Zip2.pas create mode 100644 LanguageFeatures/AutoClassPoint.pas create mode 100644 LanguageFeatures/Boxing.pas create mode 100644 LanguageFeatures/ClassConstructor.pas create mode 100644 LanguageFeatures/DiapasonOperation/diapAll.pas create mode 100644 LanguageFeatures/DllTest/MyDll.dll create mode 100644 LanguageFeatures/DllTest/MyDll.pas create mode 100644 LanguageFeatures/DllTest/main.pas create mode 100644 LanguageFeatures/ExtensionMethods/SwapHalfArrays.pas create mode 100644 LanguageFeatures/ForeachExamples.pas create mode 100644 LanguageFeatures/ForeachForSet.pas create mode 100644 LanguageFeatures/ForeachIEnumerable.pas create mode 100644 LanguageFeatures/FracOperatorOverload.pas create mode 100644 LanguageFeatures/Generics/GenericClasses/Stack.pas create mode 100644 LanguageFeatures/Generics/GenericProcFun/FindT.pas create mode 100644 LanguageFeatures/Generics/GenericProcFun/SwapT.pas create mode 100644 LanguageFeatures/IfThenElseExpr.pas create mode 100644 LanguageFeatures/IfThenElseExpr2.pas create mode 100644 LanguageFeatures/IndexProperties.pas create mode 100644 LanguageFeatures/Lambdas/IntIntInt.pas create mode 100644 LanguageFeatures/ParamsConcat.pas create mode 100644 LanguageFeatures/ParamsWriteln.pas create mode 100644 LanguageFeatures/Pattern Matching/ArithmEval.pas create mode 100644 LanguageFeatures/Pattern Matching/ArithmSimplify.pas create mode 100644 LanguageFeatures/Pattern Matching/MatchDelegate.pas create mode 100644 LanguageFeatures/Pattern Matching/MatchWithTupleWhen.pas create mode 100644 LanguageFeatures/Pattern Matching/Squares.pas create mode 100644 LanguageFeatures/Pattern Matching/UserDefinedDeconstruct.pas create mode 100644 LanguageFeatures/Pattern Matching/UserDefinedDeconstructAsExtension.pas create mode 100644 LanguageFeatures/ProcParam.pas create mode 100644 LanguageFeatures/ProcVars.pas create mode 100644 LanguageFeatures/QuestionColonTypes.pas create mode 100644 LanguageFeatures/ShortTypesInTemplateParams.pas create mode 100644 LanguageFeatures/Students.pas create mode 100644 LanguageFeatures/Tuples/MySqrt.pas create mode 100644 LanguageFeatures/WriteCycledLinkedList.pas create mode 100644 LanguageFeatures/WriteRecord.pas create mode 100644 LanguageFeatures/Yields/InfixTraverseTree.pas create mode 100644 NETLibraries/NET4.0/BigIntegerExample.pas create mode 100644 NETLibraries/NET4.0/ComplexExample.pas create mode 100644 NETLibraries/NET4.0/StopWatch.pas create mode 100644 NETLibraries/NET4.0/TupleCreate.pas create mode 100644 NETLibraries/System.Array/SystemArray1.pas create mode 100644 NETLibraries/System.DateTime/DateTime1.pas create mode 100644 NETLibraries/System.DateTime/DateTime2.pas create mode 100644 NETLibraries/System.DateTime/DateTimeInterval.pas create mode 100644 NETLibraries/System.Net/DownloadFile.pas create mode 100644 NETLibraries/System.Net/MailSend.pas create mode 100644 NETLibraries/System.Net/Ping.pas create mode 100644 NETLibraries/System.Net/WebClient.pas create mode 100644 NETLibraries/System.Parallel/Parallel1.pas create mode 100644 NETLibraries/System.Parallel/Parallel2.pas create mode 100644 NETLibraries/System.Parallel/Parallel3.pas create mode 100644 NETLibraries/System.String/StringConvert.pas create mode 100644 NETLibraries/System.String/StringMethods1.pas create mode 100644 NETLibraries/System.String/StringMethods2.pas create mode 100644 NETLibraries/System.String/StringSplit.pas create mode 100644 NETLibraries/System.Timers.Timer/SystemTimer.pas create mode 100644 NETLibraries/System.Windows.Forms/FormWebBrowser.pas create mode 100644 NETLibraries/System.Windows.Forms/MouseDraw.pas create mode 100644 NETLibraries/System.Windows.Forms/WinFormWithButton.pas create mode 100644 NumLibABC/ApproxCheb1.pas create mode 100644 NumLibABC/Decomp1.pas create mode 100644 NumLibABC/DiffEqu1.pas create mode 100644 NumLibABC/Economi1.pas create mode 100644 NumLibABC/FMinN_1.pas create mode 100644 NumLibABC/FMinN_2.pas create mode 100644 NumLibABC/FMinN_3.pas create mode 100644 NumLibABC/FMinN_4.pas create mode 100644 NumLibABC/FMinN_5.pas create mode 100644 NumLibABC/FMinN_6.pas create mode 100644 NumLibABC/FMin_1.pas create mode 100644 NumLibABC/Factors1.pas create mode 100644 NumLibABC/Fraction1.pas create mode 100644 NumLibABC/Matrix1.pas create mode 100644 NumLibABC/NumLibABCTest.pas create mode 100644 NumLibABC/PolRT1.pas create mode 100644 NumLibABC/Polynom1.pas create mode 100644 NumLibABC/Polynom2.pas create mode 100644 NumLibABC/Quanc8_1.pas create mode 100644 NumLibABC/RootsIsolation1.pas create mode 100644 NumLibABC/SLAU1.pas create mode 100644 NumLibABC/Spline1.pas create mode 100644 NumLibABC/Vector1.pas create mode 100644 NumLibABC/Zeroin1.pas create mode 100644 OMPSamples/Hanoi.pas create mode 100644 OMPSamples/MultMatrix.pas create mode 100644 OMPSamples/Mutual Lock.pas create mode 100644 OMPSamples/QuickSort.pas create mode 100644 OMPSamples/SqrSinArrays.pas create mode 100644 OMPSamples/SumOfPrime.pas create mode 100644 OMPSamples/Write Critical.pas create mode 100644 OpenGL и OpenCL/OpenCL/MatrMlt.cl create mode 100644 OpenGL и OpenCL/OpenCL/MatrMlt.pas create mode 100644 OpenGL и OpenCL/OpenCL/SimpleAddition.cl create mode 100644 OpenGL и OpenCL/OpenCL/SimpleAddition.pas create mode 100644 OpenGL и OpenCL/OpenCLABC/0Простейшие примеры/MatrMlt.cl create mode 100644 OpenGL и OpenCL/OpenCLABC/0Простейшие примеры/MatrMlt.pas create mode 100644 OpenGL и OpenCL/OpenCLABC/0Простейшие примеры/SimpleAddition.cl create mode 100644 OpenGL и OpenCL/OpenCLABC/0Простейшие примеры/SimpleAddition.pas create mode 100644 OpenGL и OpenCL/OpenCLABC/Wait очереди/1.pas create mode 100644 OpenGL и OpenCL/OpenCLABC/Wait очереди/2.pas create mode 100644 OpenGL и OpenCL/OpenCLABC/Wait очереди/NamedQData.pas create mode 100644 OpenGL и OpenCL/OpenCLABC/Прекомпиляция ProgramCode/0.cl create mode 100644 OpenGL и OpenCL/OpenCLABC/Прекомпиляция ProgramCode/Использовать.pas create mode 100644 OpenGL и OpenCL/OpenCLABC/Прекомпиляция ProgramCode/Прекомпилировать.pas create mode 100644 OpenGL и OpenCL/OpenGL/Rot Triangle 1.vertex.glsl create mode 100644 OpenGL и OpenCL/OpenGL/Крутящийся треугольник 1 (простейший пример).pas create mode 100644 OpenGL и OpenCL/Гайд по использованию OpenGL и OpenCL.html create mode 100644 OpenGL и OpenCL/Справка OpenCLABC.html create mode 100644 OpenGL и OpenCL/Справка OpenGLABC.html create mode 100644 Other/SpeedTests/ArraySlice.pas create mode 100644 Other/SpeedTests/ArraySliceAssignment.pas create mode 100644 Other/SpeedTests/CalculationsGlobalLocal/BlockVars.pas create mode 100644 Other/SpeedTests/CalculationsGlobalLocal/GlobalVars.pas create mode 100644 Other/SpeedTests/ListSlice.pas create mode 100644 Other/SpeedTests/ListSliceAssignment.pas create mode 100644 Other/SpeedTests/Milli.pas create mode 100644 Other/SpeedTests/Substring_vs_Slice.pas create mode 100644 Other/UnmanagedGraphics/MessageBox.pas create mode 100644 PascalABCNET.ini create mode 100644 StandardUnits/CRT/Bill.pas create mode 100644 StandardUnits/CRT/CPaint.pas create mode 100644 StandardUnits/CRT/CRTColors.pas create mode 100644 StandardUnits/CRT/SimpleTextEditor.pas create mode 100644 StandardUnits/FormsABC/CalcIntegral.pas create mode 100644 StandardUnits/FormsABC/PaintBoxDraw.pas create mode 100644 StandardUnits/FormsABC/f0.pas create mode 100644 StandardUnits/FormsABC/f0_MV.pas create mode 100644 StandardUnits/FormsABC/f0_class.pas create mode 100644 StandardUnits/PABCSystem/SerializationGraph.pas create mode 100644 StandardUnits/PABCSystem/SerializationMany.pas create mode 100644 StandardUnits/PABCSystem/SerializationOne.pas create mode 100644 StandardUnits/PABCSystem/a.dat create mode 100644 StandardUnits/Timers/Timer1.pas create mode 100644 StandardUnits/Timers/Timer2.pas create mode 100644 StandardUnits/Turtle/Turtle1.pas delete mode 100644 Городок/data/Thumbs.db delete mode 100644 Карта_Пирата/data/Thumbs.db diff --git a/!MainFeatures/01_First/Amp.pas b/!MainFeatures/01_First/Amp.pas new file mode 100644 index 0000000..5cec0dd --- /dev/null +++ b/!MainFeatures/01_First/Amp.pas @@ -0,0 +1,11 @@ +// Пример иллюстрирует использование знака "&" для снятия атрибута ключевого слова + +var + &begin,&end: integer; + +begin + &begin := 1; + &end := 2; + var t: System.Type := &begin.GetType; // в System.Type использовать & не надо + write(&begin,' ',&end,' ',t); +end. \ No newline at end of file diff --git a/!MainFeatures/01_First/Amp2.pas b/!MainFeatures/01_First/Amp2.pas new file mode 100644 index 0000000..7f63a7d --- /dev/null +++ b/!MainFeatures/01_First/Amp2.pas @@ -0,0 +1,29 @@ +// Пример иллюстрирует использование знака "&" для явного указания шаблонного типа подпрограммы + +function GetDefault: T := +default(T); + +type + GenericType = class + constructor := exit; + static procedure p1 := writeln(typeof(T)); + end; + +begin + +// var o := GetDefault; //Ошибка: Встречено ';', а ожидалось выражение + // компилятор не отличает знак сравнения < от открытия угловой скобки + // и поэтому видит эту строчку как "(GetDefault < byte) > ;" + // ";" там оказывается неожиданно, потому что компилятор ожидал ещё какое то выражение для сравнения + + // но, знаком "&" можно экранировать "<" + // то есть переключить значение "<" со знака сравнения на открывающуюся скобочку: + var o := GetDefault&; + + // в случае с шаблонными типами - обычно "&" не нужен + var a := new GenericType; + + // однако для вызова статичного метода - его так же надо поставить + GenericType&.p1; + +end. \ No newline at end of file diff --git a/!MainFeatures/01_First/AssignExt.pas b/!MainFeatures/01_First/AssignExt.pas new file mode 100644 index 0000000..3ba2187 --- /dev/null +++ b/!MainFeatures/01_First/AssignExt.pas @@ -0,0 +1,18 @@ +// Присваивания += -= *= /= +var + i: integer; + r: real; + +begin + i := 1; + writeln('i := 1; i = ',i); + i += 2; // Увеличение на 2 + writeln('i += 2; i = ',i); + i *= 3; // Умножение на 3 + writeln('i *= 3; i = ',i); + writeln; + r := 6; + writeln('r := 6; r = ',r); + r /= 2; + writeln('r /= 2; r = ',r); +end. \ No newline at end of file diff --git a/!MainFeatures/01_First/AutoVars.pas b/!MainFeatures/01_First/AutoVars.pas new file mode 100644 index 0000000..25797a7 --- /dev/null +++ b/!MainFeatures/01_First/AutoVars.pas @@ -0,0 +1,10 @@ +// Автоопределение типа переменной +// Описание переменной в заголовке цикла for +begin + var x := 2; + for var i:=1 to 10 do + begin + write(x,' '); + x += 2; + end; +end. \ No newline at end of file diff --git a/!MainFeatures/01_First/BlockVar.pas b/!MainFeatures/01_First/BlockVar.pas new file mode 100644 index 0000000..d1257db --- /dev/null +++ b/!MainFeatures/01_First/BlockVar.pas @@ -0,0 +1,11 @@ +// Перемена местами значений двух переменных с использованием третьей +var x,y: real; + +begin + write('Введите x,y: '); + readln(x,y); + var v: real := x; // вспомогательная переменная + x := y; + y := v; + writeln('Новые значения x,y: ',x,' ',y); +end. \ No newline at end of file diff --git a/!MainFeatures/01_First/Foreach.pas b/!MainFeatures/01_First/Foreach.pas new file mode 100644 index 0000000..2f2f811 --- /dev/null +++ b/!MainFeatures/01_First/Foreach.pas @@ -0,0 +1,24 @@ +// Пример иллюстрирует возможности оператора foreach +var + a: array [1..5] of integer := (1,3,5,7,9); + s: set of integer; + l: List; + +begin + write('foreach по обычному массиву: ':35); + foreach x: integer in a do + Print(x); + writeln; + + s := [2..5,10..14]; + write('foreach по множеству: ':35); + foreach var x in s do + Print(x); + writeln; + + l := new List; + l.Add(7); l.Add(2); l.Add(5); + write('foreach по динамическому массиву: ':35); + foreach var x in l do + Print(x); +end. \ No newline at end of file diff --git a/!MainFeatures/01_First/Print.pas b/!MainFeatures/01_First/Print.pas new file mode 100644 index 0000000..3d61f65 --- /dev/null +++ b/!MainFeatures/01_First/Print.pas @@ -0,0 +1,4 @@ +/// Вывод с помощью Print +begin + Print(1,2,3) +end. \ No newline at end of file diff --git a/!MainFeatures/01_First/RandomDiap.pas b/!MainFeatures/01_First/RandomDiap.pas new file mode 100644 index 0000000..7bea343 --- /dev/null +++ b/!MainFeatures/01_First/RandomDiap.pas @@ -0,0 +1,5 @@ +// Генерация случайного числа в заданном диапазоне +begin + var i := Random(2,5); + writeln('Случайное целое в диапазоне 2..5: ',i); +end. \ No newline at end of file diff --git a/!MainFeatures/01_First/RealExtNums.pas b/!MainFeatures/01_First/RealExtNums.pas new file mode 100644 index 0000000..5e099f6 --- /dev/null +++ b/!MainFeatures/01_First/RealExtNums.pas @@ -0,0 +1,5 @@ +// При работе с вещественными числами невозможно получить ошибку выполнения +begin + writeln(1/0); + writeln(sqrt(-1)); +end. \ No newline at end of file diff --git a/!MainFeatures/01_First/SimpleNewFeatures.pas b/!MainFeatures/01_First/SimpleNewFeatures.pas new file mode 100644 index 0000000..60cef0d --- /dev/null +++ b/!MainFeatures/01_First/SimpleNewFeatures.pas @@ -0,0 +1,27 @@ +// Простейшие новые возможности языка PascalABC.NET + +// Инициализация переменной при описании +var i: integer := 1; + +// Автоопределение типа переменной при инициализации +var r := 2.5; + +begin + // Внутриблочные описания переменных + var s: real := 1.0; + + // Описание переменной в заголовке цикла (время жизни переменной - до конца тела цикла) + for j: integer := 1 to 10 do + s += j; // Операция += для чисел + + var p := 1; + + // Описание переменной в заголовке цикла с автоопределением типа + for var j := 1 to 10 do + p *= j; // Операция *= + + var str := ''; + for c: char := 'a' to 'z' do + str += c; // Операция += для строк + +end. \ No newline at end of file diff --git a/!MainFeatures/01_First/StandardTypes.pas b/!MainFeatures/01_First/StandardTypes.pas new file mode 100644 index 0000000..6eb0c2b --- /dev/null +++ b/!MainFeatures/01_First/StandardTypes.pas @@ -0,0 +1,33 @@ +/// Стандартные размерные типы данных и их размер +var + i: integer; + j: shortint; + k: smallint; + l: longint; // синоним integer + i64: int64; + b: byte; + w: word; + lw: longword; + car: cardinal; // синоним longword + ui64: uint64; + r: real; + d: double; // синоним real + sn: single; + c: char; + +begin + writeln('sizeof(integer) = ':20, sizeof(integer)); + writeln('sizeof(shortint) = ':20,sizeof(shortint)); + writeln('sizeof(smallint) = ':20,sizeof(smallint)); + writeln('sizeof(longint) = ':20, sizeof(longint)); + writeln('sizeof(int64) = ':20, sizeof(int64)); + writeln('sizeof(byte) = ':20, sizeof(byte)); + writeln('sizeof(word) = ':20, sizeof(word)); + writeln('sizeof(longword) = ':20,sizeof(longword)); + writeln('sizeof(cardinal) = ':20,sizeof(cardinal)); + writeln('sizeof(uint64) = ':20, sizeof(uint64)); + writeln('sizeof(real) = ':20, sizeof(real)); + writeln('sizeof(double) = ':20, sizeof(double)); + writeln('sizeof(single) = ':20, sizeof(single)); + writeln('sizeof(char) = ':20, sizeof(char)); +end. \ No newline at end of file diff --git a/!MainFeatures/01_First/WriteAll.pas b/!MainFeatures/01_First/WriteAll.pas new file mode 100644 index 0000000..c0a6160 --- /dev/null +++ b/!MainFeatures/01_First/WriteAll.pas @@ -0,0 +1,16 @@ +/// Вывод различных типов процедурой write +begin + // Вывод, целого, строки, вещественного + Writeln(1,' ',2.5); + // Вывод множества + Writeln([1..10]); + // Вывод логического + Writeln(True); + var a: array [1..10] of integer; + // Вывод статического массива + Writeln(a); + // Вывод динамического массива + Writeln(Arr(2,3,5)); + // Вывод кортежа + Writeln(('Иванов',16)); +end. \ No newline at end of file diff --git a/!MainFeatures/01_First/WriteFormat.pas b/!MainFeatures/01_First/WriteFormat.pas new file mode 100644 index 0000000..a6ea0c1 --- /dev/null +++ b/!MainFeatures/01_First/WriteFormat.pas @@ -0,0 +1,11 @@ +/// Использование процедуры WritelnFormat +begin + // Вывод в обратном порядке + WritelnFormat('{2},{1},{0}',1,2,3); + // Вывод фигурных скобочек + WritelnFormat('{{}}{0}','Вывод фигурных скобочек в форматной строке'); + // Задание ширины поля вывода + WritelnFormat('{0,10:f}',3.1415); + // Задание количества знаков после запятой для вещественного числа + WritelnFormat('{0:f3}',3.1415); +end. \ No newline at end of file diff --git a/!MainFeatures/02_Types/CharFunc.pas b/!MainFeatures/02_Types/CharFunc.pas new file mode 100644 index 0000000..2c214d8 --- /dev/null +++ b/!MainFeatures/02_Types/CharFunc.pas @@ -0,0 +1,19 @@ +// Стандартные функции Ord, Chr, OrdAnsi, ChrAnsi +var + c: char; + i: integer; + +begin + writeln('sizeof(char) = ',sizeof(char)); + writeln; + c := 'Ж'; + i := Ord(c); + writelnFormat('Код символа {0} в кодировке Unicode равен {1}',c,i); + c := Chr(i); + writelnFormat('Символ с кодом {0} в кодировке Unicode - это {1}',i,c); + writeln; + i := OrdAnsi(c); + writelnFormat('Код символа {0} в кодировке Windows равен {1}',c,i); + c := ChrAnsi(i); + writelnFormat('Символ с кодом {0} в кодировке Windows - это {1}',i,c); +end. \ No newline at end of file diff --git a/!MainFeatures/02_Types/Dynarray.pas b/!MainFeatures/02_Types/Dynarray.pas new file mode 100644 index 0000000..3514a6c --- /dev/null +++ b/!MainFeatures/02_Types/Dynarray.pas @@ -0,0 +1,24 @@ +// Процедуры и методы работы с динамическим массивом + +begin + var a := ArrRandom(10); + + // Вывод всех элементов массива + a.Println; + + // Сортировка массива + a.Sort; + a.Println; + + // Обращение массива + a.Reverse; + a.Println; + + // Изменение размерамассиав с сохранением элементов. То же делает SetLength + a.Resize(a.Length+2); + a.Println; + + // Поиск вхождения элемента в массив + var i := a.IndexOf(50); + Writeln(i); +end. \ No newline at end of file diff --git a/!MainFeatures/02_Types/Enum.pas b/!MainFeatures/02_Types/Enum.pas new file mode 100644 index 0000000..db92312 --- /dev/null +++ b/!MainFeatures/02_Types/Enum.pas @@ -0,0 +1,25 @@ +// Перечислимый тип +type Months = (January,February,March,April,May,June,July,August,September,October,November,December); + +var m: Months; + +begin + m := February; + writeln(m); + // Использование констант перечислимого типа после имени типа удобно: после точки intellisense показывает список констант + m := Months.April; + writeln('Следующий месяц: ',m); + Inc(m); + writeln('Следующий месяц: ',m); + m := Succ(m); + writeln('Следующий месяц: ',m); + m := Pred(m); + writeln('Предыдующий месяц: ',m); + Dec(m); + writeln('Предыдующий месяц: ',m); + writeln('Его порядковый номер (нумерация - с нуля): ',Ord(m)); + // Ошибки нет + writeln('Месяц перед январем - выход за границы: ',pred(Months.January)); + // Ошибки нет + writeln('Месяц после декабря - выход за границы: ',succ(Months.December)); +end. \ No newline at end of file diff --git a/!MainFeatures/02_Types/InitRecords.pas b/!MainFeatures/02_Types/InitRecords.pas new file mode 100644 index 0000000..5befeb8 --- /dev/null +++ b/!MainFeatures/02_Types/InitRecords.pas @@ -0,0 +1,15 @@ +// Инициализаторы полей записи +type + Frac = record + num: integer := 0; + denom := 1; // автоопределеине типа - denom: integer + end; + +var + f: Frac; + f1: Frac := (num: 2; denom: 3); + +begin + writeln(f.num,'/',f.denom); + writeln(f1.num,'/',f1.denom); +end. \ No newline at end of file diff --git a/!MainFeatures/02_Types/PointerToRef.pas b/!MainFeatures/02_Types/PointerToRef.pas new file mode 100644 index 0000000..8a07a43 --- /dev/null +++ b/!MainFeatures/02_Types/PointerToRef.pas @@ -0,0 +1,10 @@ +// Указатели на ссылочные типы запрещены. Исключение: указатели на строки и динамические массивы +type + A = class + i: integer; + end; + +var p: ^record field: A; end; + +begin +end. \ No newline at end of file diff --git a/!MainFeatures/02_Types/PointersVsRef/Pointers.pas b/!MainFeatures/02_Types/PointersVsRef/Pointers.pas new file mode 100644 index 0000000..42aa2fc --- /dev/null +++ b/!MainFeatures/02_Types/PointersVsRef/Pointers.pas @@ -0,0 +1,43 @@ +// Выделение динамической памяти +// Использование указателей для создания односвязного списка +type + PNode = ^TNode; + TNode = record + data: integer; + next: PNode; + end; + +function NewNode(d: integer; n: PNode): PNode; +begin + New(Result); + Result^.data := d; + Result^.next := n; +end; + +var first: PNode; + +begin + first := nil; + // Добавляем в начало односвязного списка + first := NewNode(3,first); + first := NewNode(7,first); + first := NewNode(5,first); + + // Вывод односвязного списка + writeln('Содержимое односвязного списка: '); + var p := first; + while p<>nil do + begin + write(p^.data,' '); + p := p^.next; + end; + + // Разрушение односвязного списка + p := first; + while p<>nil do + begin + var p1 := p; + p := p^.next; + Dispose(p1); // Память обязательно возвращать + end; +end. \ No newline at end of file diff --git a/!MainFeatures/02_Types/PointersVsRef/References.pas b/!MainFeatures/02_Types/PointersVsRef/References.pas new file mode 100644 index 0000000..fabbe9d --- /dev/null +++ b/!MainFeatures/02_Types/PointersVsRef/References.pas @@ -0,0 +1,35 @@ +// Использование ссылок вместо указателей для создания односвязного списка +// Мы рекомендуем именно этот способ +type + Node = class + data: integer; + next: Node; + constructor (d: integer; n: Node); + begin + data := d; + next := n; + end; + end; + +// Переменная типа "класс" представляет собой ссылку на объект, выделяемый конструктором +var first: Node; + +begin + first := nil; + // Добавляем в начало односвязного списка + first := new Node(3,first); + first := new Node(7,first); + first := new Node(5,first); + + // Вывод односвязного списка. ^ отсутствуют + writeln('Содержимое односвязного списка (использование ссылок вместо указателей): '); + var p := first; + while p<>nil do + begin + write(p.data,' '); + p := p.next; + end; + + // Разрушение односвязного списка + first := nil; // Сборщик мусора соберет память, на которую никто больше не указывает +end. \ No newline at end of file diff --git a/!MainFeatures/02_Types/Sets.pas b/!MainFeatures/02_Types/Sets.pas new file mode 100644 index 0000000..a404ba7 --- /dev/null +++ b/!MainFeatures/02_Types/Sets.pas @@ -0,0 +1,15 @@ +// Работа с множествами +// Базовый тип для множества может быть произвольным +var + s1: set of string := ['Иванов','Попов','Сидорова','Петров']; + s2: set of string := ['Козлов','Петров','Иванов']; +begin + writeln('Множество s1: ',s1); + writeln('Множество s2: ',s2); + writeln('Объединение множеств s1 и s2: ',s1+s2); + writeln('Пересечение множеств s1 и s2: ',s1*s2); + writeln('Разность множеств s1 и s2: ',s1-s2); + Include(s1,'Умнов'); + Exclude(s1,'Иванов'); + writeln('Множество s1: ',s1); +end. \ No newline at end of file diff --git a/!MainFeatures/02_Types/StringInteger.pas b/!MainFeatures/02_Types/StringInteger.pas new file mode 100644 index 0000000..ce86a50 --- /dev/null +++ b/!MainFeatures/02_Types/StringInteger.pas @@ -0,0 +1,16 @@ +// Преобразование целое <-> строка в новом стиле +var + s: string; + i: integer; + +begin + // Преобразование целого в строку + i := 234; + s := i.ToString; + writelnFormat('Целое: {0}. После преобразования к строке: ''{1}''',i,s); + + // Преобразование строки в целое + s := '567'; + if integer.TryParse(s,i) then + writelnFormat('Строка: ''{0}''. После преобразования к целому: {1}',s,i); +end. \ No newline at end of file diff --git a/!MainFeatures/02_Types/StringMethods.pas b/!MainFeatures/02_Types/StringMethods.pas new file mode 100644 index 0000000..609eb82 --- /dev/null +++ b/!MainFeatures/02_Types/StringMethods.pas @@ -0,0 +1,18 @@ +// Строки. Методы класса string +var + s: string := ' Pascal__NET '; + s1: string := 'NET'; + +begin + writeln('Исходная строка: ''',s,''''); + s := s.Trim; + writeln('После вызова s.Trim: ''',s,''''); + var p := s.IndexOf(s1); // Индексация - с нуля + writelnFormat('Позиция подстроки ''{0}'' в строке ''{1}'' равна {2}',s1,s,p); + s := s.Remove(6,2); + writeln('После удаления символов __: ',s); + s := s.Insert(6,'ABC.'); + writeln('После вставки подстроки ''ABC.'': ',s); + writeln('Первая часть строки: ',s.Substring(0,9)); + writeln('Последняя часть строки: ',s.Substring(10,3)); +end. \ No newline at end of file diff --git a/!MainFeatures/02_Types/StringTypes.pas b/!MainFeatures/02_Types/StringTypes.pas new file mode 100644 index 0000000..7e89b95 --- /dev/null +++ b/!MainFeatures/02_Types/StringTypes.pas @@ -0,0 +1,17 @@ +// Строки string, string[n], shortstring +var + s: string; // память, занимаемая s, зависит от ее длины + s10: string[10]; // память под ss фиксирована + ss: shortstring := s; + f: file of string[10]; + // f: file of string; - ошибка + +begin + s := '12345678901234567890'; + s10 := s; // обрезание + writeln(s10); + s += s; s += s; + s += s; s += s; + writeln(s); + writeln('Длина строки = ',s.Length); +end. \ No newline at end of file diff --git a/!MainFeatures/02_Types/StructTypeEquiv.pas b/!MainFeatures/02_Types/StructTypeEquiv.pas new file mode 100644 index 0000000..8648f73 --- /dev/null +++ b/!MainFeatures/02_Types/StructTypeEquiv.pas @@ -0,0 +1,23 @@ +// Иллюстрация структурной эквивалентности для некоторых типов. В Delphi - именная эквивалентность +var + a: array of integer; + a1: array of integer; + s: set of real; + s1: set of real; + p: procedure (i: integer); + p1: procedure (i: integer); + r: ^integer; + r1: ^integer; + +procedure proc(aa: array of integer; ss: set of real; pp: procedure (i: integer); rr: ^integer); +begin + +end; + +begin + a := a1; + s := s1; + p := p1; + r := r1; // В Delphi ни одно из этих присваиваний не сработает + proc(a,s,p,r); // Этот вызов - тоже +end. \ No newline at end of file diff --git a/!MainFeatures/02_Types/UntypedFile.pas b/!MainFeatures/02_Types/UntypedFile.pas new file mode 100644 index 0000000..24bb11d --- /dev/null +++ b/!MainFeatures/02_Types/UntypedFile.pas @@ -0,0 +1,19 @@ +// Бестиповые файлы +var + f: file; + i: integer; + r: real; + s: string; + +begin + assign(f,'a.dat'); + rewrite(f); + // Записываем в файл данные любых типов + write(f,1,2.5,'Hello'); + close(f); + reset(f); + // Считываем эти данные из файла + read(f,i,r,s); + write(i,' ',r,' ',s); + close(f); +end. \ No newline at end of file diff --git a/!MainFeatures/03_Subroutines/FuncParams.pas b/!MainFeatures/03_Subroutines/FuncParams.pas new file mode 100644 index 0000000..ceb59ba --- /dev/null +++ b/!MainFeatures/03_Subroutines/FuncParams.pas @@ -0,0 +1,12 @@ +// Переменное число параметров +function Sum(params arg: array of integer): integer; +begin + Result := 0; + foreach var x in arg do + Result += x; +end; + +begin + writeln(Sum(1,2,3)); + writeln(Sum(4,5,6,7)); +end. \ No newline at end of file diff --git a/!MainFeatures/03_Subroutines/Overload.pas b/!MainFeatures/03_Subroutines/Overload.pas new file mode 100644 index 0000000..f3b5eae --- /dev/null +++ b/!MainFeatures/03_Subroutines/Overload.pas @@ -0,0 +1,21 @@ +// Перегрузка имен подпрограмм +procedure proc(i: integer); +begin + writeln('integer'); +end; + +procedure proc(c: char); +begin + writeln('char'); +end; + +procedure proc(r: real); +begin + writeln('real'); +end; + +begin + proc(1); + proc(2.5); + proc('d'); +end. \ No newline at end of file diff --git a/!MainFeatures/03_Subroutines/ProcVars.pas b/!MainFeatures/03_Subroutines/ProcVars.pas new file mode 100644 index 0000000..073617a --- /dev/null +++ b/!MainFeatures/03_Subroutines/ProcVars.pas @@ -0,0 +1,39 @@ +// Все возможные способы инициализации поцедурной переменной +// Процедурный тип реализован через делегаты .NET, для него доступны операции +=, -= + +procedure pp; +begin + writeln('Вызов обычной процедуры'); +end; + +type + A = class + private + x: integer; + public + constructor Create(xx: integer); + begin + x := xx; + end; + procedure pp; + begin + writeln('Вызов метода класса, значение поля равно ',x); + end; + class procedure ppstatic; + begin + writeln('Вызов классового метода класса'); + end; + end; + +var p: procedure; + +begin + p := pp; + var a1: A := new A(5); + p += a1.pp; + p += A.ppstatic; + p; + writeln; + p -= pp; + p; +end. \ No newline at end of file diff --git a/!MainFeatures/03_Subroutines/SwapT.pas b/!MainFeatures/03_Subroutines/SwapT.pas new file mode 100644 index 0000000..645e791 --- /dev/null +++ b/!MainFeatures/03_Subroutines/SwapT.pas @@ -0,0 +1,23 @@ +// Обобщенные функции +// Выведение типа T по типам параметров + +procedure Swap(var a,b: T); +begin + var v := a; + a := b; + b := v; +end; + +begin + var a := 2; + var b := 3; + writelnFormat('До Swap a={0}, b={1}',a,b); + Swap(a,b); + writelnFormat('После Swap a={0}, b={1}',a,b); + var c := 2.5; + var d := 3.3; + writeln; + writelnFormat('До Swap c={0}, d={1}',c,d); + Swap(c,d); + writelnFormat('После Swap c={0}, d={1}',c,d); +end. \ No newline at end of file diff --git a/!MainFeatures/04_Units/CallC#/CallCS.pas b/!MainFeatures/04_Units/CallC#/CallCS.pas new file mode 100644 index 0000000..d118c77 --- /dev/null +++ b/!MainFeatures/04_Units/CallC#/CallCS.pas @@ -0,0 +1,9 @@ +// Вызов статического метода add класса Class1, помещенного в пространство имен ClassLibrary1 +// Класс Class1 помещен в библиотеку ClassLibrary1.dll, откомпилированную на C# + +{$reference ClassLibrary1.dll} +uses ClassLibrary1; + +begin + writeln(Class1.add(2,3)); +end. \ No newline at end of file diff --git a/!MainFeatures/04_Units/CallC#/ClassLibrary1.dll b/!MainFeatures/04_Units/CallC#/ClassLibrary1.dll new file mode 100644 index 0000000000000000000000000000000000000000..efed75e8e7dbab0443d001897f390ac7f515cc2c GIT binary patch literal 16384 zcmeHNU2GIp6h5>4VfksLC5di*JFc38KsWS-uP~~vf4FjZe6QH ziPl4-2HNuvgzcp015}(~7jX-zoM|2%F%MEl$p-Fl9}w!p6OS2&->hgQiFODgmdY`r zbSHn2b8~2OY{_t(igT4D z5q-=xEC&NctaJ>A@D;~VB}t-zs;+EG1|$QL0m*=5Kr$d1kPJu$BmwNLx)Dv zIDdftH=;jaIXcclFkKni7{o+3lrGv77>&p5*P z1mly88l%bhEN~k#%}_g?0j|fc3XIWO>HyvcK4OS25A0&xOUKbp(Tl*xS(9aanlZ=v z6Lc0gOvtBMp`|pxBj)D2P3jeFvO;*)krXl%;uI#?)QSolC^>mKA6c zwFWABImfk3ow9SDZxm@%KW^lF((;Hp=R0nwkBuAC77V6iQ@`gKMcta)Z(7Er;d;>Z z`}q3lW#3pZE;9uFW8-DpH;YDW#P$u>DP;}!q?t238Y-LlMK39*IB9yOZW)WZ%Cf1l z<(J(R3=^)FH;S5jVud+QY0fnZGyZbZml9j*z`Y9}qMZu0_jPv}x#`~Nj?Tn%Z%21$ zUuTD|Pv<&%y5c>%6Goydk?X-7j<522721%hY@2%df~t1L<9$RM6l$vZZsTT$b$AXM z;>Jg`P23MABAX7oTIrx;56SLw6V3bPX-x1M%L$p=VS}v8p zH;a~|DaTD))&b45gA3L$_=*-IZfz$uxj0m|Bm`>S>RElBKm~7TV%P?S~1k$ z7CvI1gpUly7kG9GjFb?MV4y%V@GSf+)v0s=5A!N@G7BhD;6eBq4d)5=L@X6PMDL%+ zw2!$QgD(ehmcgT6mDTO?BI;%iYv(Ryaw(5}Jg1+TG7zVZ$mfvV-_1kXQX~VC0m*=5 zKr$d1kPJu$BmfExVI_(!|%>@;Nbk^#wpWI!??8ITM}1|$QL0m*=5Kr$d1 KkPQ4a1AhXODig{8 literal 0 HcmV?d00001 diff --git a/!MainFeatures/04_Units/DllTest/MyDll.dll b/!MainFeatures/04_Units/DllTest/MyDll.dll new file mode 100644 index 0000000000000000000000000000000000000000..9a9c8f82715d6198e732ca50e3316357d55290ce GIT binary patch literal 16384 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 literal 0 HcmV?d00001 diff --git a/!MainFeatures/04_Units/NativeDll/NativeDll.dpr b/!MainFeatures/04_Units/NativeDll/NativeDll.dpr new file mode 100644 index 0000000..b050bdd --- /dev/null +++ b/!MainFeatures/04_Units/NativeDll/NativeDll.dpr @@ -0,0 +1,13 @@ +// Delphi +library NativeDll; + +function add(a,b: integer): integer; stdcall; +begin + Result := a+b; +end; + +exports + add; +begin +end. + \ No newline at end of file diff --git a/!MainFeatures/04_Units/SimpleUnit/MainProgram.pas b/!MainFeatures/04_Units/SimpleUnit/MainProgram.pas new file mode 100644 index 0000000..98617cd --- /dev/null +++ b/!MainFeatures/04_Units/SimpleUnit/MainProgram.pas @@ -0,0 +1,7 @@ +uses MyUnit; // подключили модуль + +var a: array of integer := (1,5,3,7,3,6,4,5,1,8,3,5,6); + +begin + writeln('Максимальный элемент в массиве = ',Max(a)); +end. diff --git a/!MainFeatures/04_Units/SimpleUnit/MyUnit.pas b/!MainFeatures/04_Units/SimpleUnit/MyUnit.pas new file mode 100644 index 0000000..70fb761 --- /dev/null +++ b/!MainFeatures/04_Units/SimpleUnit/MyUnit.pas @@ -0,0 +1,14 @@ +/// Модуль упрощенной структуры +unit MyUnit; // имя модуля должно совпадать с именем файла + +// Документирующие комментарии отображаются при наведении на имя курсора мыши +/// Возвращает максимальный элемент в массиве +function Max(a: array of integer): integer; +begin + Result := integer.MinValue; + foreach x: integer in a do + if x>Result then + Result := x; +end; + +end. diff --git a/!MainFeatures/04_Units/SystemUnitTest.pas b/!MainFeatures/04_Units/SystemUnitTest.pas new file mode 100644 index 0000000..262e7f0 --- /dev/null +++ b/!MainFeatures/04_Units/SystemUnitTest.pas @@ -0,0 +1,12 @@ +// Иллюстрация поиска имен вначале справа налево в секции uses, а затем в системном модуле PABCSystem +uses System; + +begin + // Имя Random, определенное в пространстве имен System, перекрывает имя Random + // в модуле PABCSystem, который неявно подключается первым + var r: Random := new Random(); + writeln(r.Next(10)); + // Именно поэтому перед данным Random необходимо явно указывать имя модуля, в котором он находится + var i: integer := PABCSystem.Random(10); + writeln(i); +end. \ No newline at end of file diff --git a/!MainFeatures/05_Graph/ABC.pas b/!MainFeatures/05_Graph/ABC.pas new file mode 100644 index 0000000..de94d7a --- /dev/null +++ b/!MainFeatures/05_Graph/ABC.pas @@ -0,0 +1,41 @@ +// Модуль ABCObjects. Изменение свойств объекта +uses ABCObjects,GraphABC; + +const delay = 300; + +procedure Pause; +begin + Sleep(delay); +end; + +var + r: RectangleABC; + z: StarABC; + +begin + z := new StarABC(Window.Center.X,Window.Center.Y,70,30,6,Color.Green); + r := new RectangleABC(100,100,200,100,Color.Gold); + Pause; + r.Center := Window.Center; + Pause; + r.Height := 70; + Pause; + r.Width := 220; + Pause; + z.Radius := 150; + Pause; + z.Color := Color.LightCoral; + Pause; + z.Count := 5; + Pause; + + r.Text := 'PascalABC.NET'; + r.Color := Color.Gainsboro; + Pause; + r.BorderWidth := 3; + r.BorderColor := Color.Blue; + Pause; + r.Center := Window.Center; + Pause; +// r.Bordered := False; +end. diff --git a/!MainFeatures/05_Graph/GraphABCTest.pas b/!MainFeatures/05_Graph/GraphABCTest.pas new file mode 100644 index 0000000..cd8f125 --- /dev/null +++ b/!MainFeatures/05_Graph/GraphABCTest.pas @@ -0,0 +1,19 @@ +// Иллюстрация простейших возможностей GraphABC +uses GraphABC; + +begin + Coordinate.Origin := Window.Center; + Coordinate.SetMathematic; + Brush.Color := Color.LightSkyBlue; + while True do + begin + LockDrawing; + ClearWindow; + Ellipse(-120,-70,120,70); + Line(0,0,200,0); + Line(0,0,0,200); + Redraw; + Coordinate.Angle := Coordinate.Angle + 1; + Sleep(100); + end; +end. diff --git a/!MainFeatures/05_Graph/MouseEvents.pas b/!MainFeatures/05_Graph/MouseEvents.pas new file mode 100644 index 0000000..f48183e --- /dev/null +++ b/!MainFeatures/05_Graph/MouseEvents.pas @@ -0,0 +1,19 @@ +// Иллюстрация обработки событий мыши +uses GraphABC; + +procedure MouseDown(x,y,mb: integer); +begin + MoveTo(x,y); +end; + +procedure MouseMove(x,y,mb: integer); +begin + if mb=1 then LineTo(x,y); +end; + +begin + // Привязка обработчиков к событиям + OnMouseDown := MouseDown; + OnMouseMove := MouseMove +end. + diff --git a/!MainFeatures/06_Classes/AllFromObject.pas b/!MainFeatures/06_Classes/AllFromObject.pas new file mode 100644 index 0000000..ffa81bc --- /dev/null +++ b/!MainFeatures/06_Classes/AllFromObject.pas @@ -0,0 +1,14 @@ +// Все типы кроме указателей - производные от Object +var + i: integer; + r: real; + o: object; + +begin + o := i; + writeln(o.GetType); + o := r; + writeln(o.GetType); + if o.GetType=typeof(real) then + writeln('В переменной o - вещественный тип'); +end. \ No newline at end of file diff --git a/!MainFeatures/06_Classes/Boxing.pas b/!MainFeatures/06_Classes/Boxing.pas new file mode 100644 index 0000000..8f7eec8 --- /dev/null +++ b/!MainFeatures/06_Classes/Boxing.pas @@ -0,0 +1,22 @@ +// Упаковка-распаковка размерных типов +var + i: integer := 2; + r: real := 3.14; + o: object; + +begin + o := i; // Упаковка: объект размерного типа integer упаковывается в объект ссылочного типа, + // котрый и присваивается переменной o + // Преобразование типов при упаковке - неявное + writeln(integer(o)); // Распаковка: из упакованного объекта извлекается значение + // Преобразование типов при распаковке - явное + o := r; + writeln(real(o)); + + try // При неверном преобразовании типов генерируется исключение InvalidCastException + writeln(shortint(o)); + except + on e: Exception do + writeln(e.GetType); + end; +end. \ No newline at end of file diff --git a/!MainFeatures/06_Classes/ClassConstructor.pas b/!MainFeatures/06_Classes/ClassConstructor.pas new file mode 100644 index 0000000..11679be --- /dev/null +++ b/!MainFeatures/06_Classes/ClassConstructor.pas @@ -0,0 +1,36 @@ +// Пример использования классового (статического) конструктора +type + Person = class + private + class arr: array of Person; // Классовое поле. Связано не с переменной класса, а с классом. + name: string; + age: integer; + public + class constructor; // Конструктор класса. Вызывается до создания первого объекта класса и до вызова любого классового метода + begin + writeln(' Вызван классовый конструктор'); + SetLength(arr,3); + arr[0] := new Person('Иванов',20); + arr[1] := new Person('Петрова',19); + arr[2] := new Person('Попов',35); + end; + constructor (n: string; a: integer); + begin + name := n; + age := a; + end; + function ToString: string; override; + begin + Result := Format('Имя: {0} Возраст: {1}',name,age); + end; + class function RandomPerson: Person; // Классовый метод. Может обращаться только к классовым полям + begin + Result := arr[Random(3)]; + end; + end; + +begin + writeln('Случайные персоны'); + for var i:=1 to 5 do + writeln(Person.RandomPerson); // Вызов классового метода +end. \ No newline at end of file diff --git a/!MainFeatures/06_Classes/GarbageCollection.pas b/!MainFeatures/06_Classes/GarbageCollection.pas new file mode 100644 index 0000000..1295460 --- /dev/null +++ b/!MainFeatures/06_Classes/GarbageCollection.pas @@ -0,0 +1,11 @@ +// Сборка мусора: для освобождения объекта присвойте переменной nil +var l := new List; + +begin + l.Add(3); + l.Add(5); + l.Add(2); + foreach var x in l do + Print(x); + l := nil; // после этого память, занимаемая динамическим массивом, будет собрана сборщиком мусора +end. \ No newline at end of file diff --git a/!MainFeatures/06_Classes/Interf.pas b/!MainFeatures/06_Classes/Interf.pas new file mode 100644 index 0000000..0652513 --- /dev/null +++ b/!MainFeatures/06_Classes/Interf.pas @@ -0,0 +1,42 @@ +// Иллюстрация использования интерфейсов +type + IShape = interface + procedure Draw; + property X: integer read; + property Y: integer read; + end; + + ICloneable = interface + function Clone: Object; + end; + + Point = class(IShape,ICloneable) + private + xx,yy: integer; + public + constructor Create(x,y: integer); + begin + xx := x; yy := y; + end; + procedure Draw; begin end; + property X: integer read xx; + property Y: integer read yy; + function Clone: Object; + begin + Result := new Point(xx,yy); + end; + end; + +var + p: Point := new Point(2,3); + ish: IShape := p; + icl: ICloneable := p; + +begin + Println(ish.X,ish.Y); + var p1: Point := Point(icl.Clone); + p := nil; + Println(p1.X,p1.Y); + Println(ish is Point); + Println(ish is ICloneable); // Cross cast! +end. \ No newline at end of file diff --git a/!MainFeatures/06_Classes/OperatorOverloading.pas b/!MainFeatures/06_Classes/OperatorOverloading.pas new file mode 100644 index 0000000..0fe1ee6 --- /dev/null +++ b/!MainFeatures/06_Classes/OperatorOverloading.pas @@ -0,0 +1,82 @@ +// Перегрузка операций +type + Frac = record + private + num,denom: integer; + public + constructor (n,d: integer); + begin + num := n; + denom := d; + end; + class function operator+(a,b: Frac): Frac; + begin + Result := new Frac(a.num*b.denom+b.num*a.denom,a.denom*b.denom); + end; + class function operator-(a,b: Frac): Frac; + begin + Result := new Frac(a.num*b.denom-b.num*a.denom,a.denom*b.denom); + end; + class function operator*(a,b: Frac): Frac; + begin + Result := new Frac(a.num*b.num,a.denom*b.denom); + end; + class function operator/(a,b: Frac): Frac; + begin + Result := new Frac(a.num*b.denom,a.denom*b.num); + end; + class function operator=(a,b: Frac): boolean; + begin + Result := (a.num = b.num) and (a.denom = b.denom); + end; + class function operator<>(a,b: Frac): boolean; + begin + Result := not (a=b); + end; + class function operator<(a,b: Frac): boolean; + begin + Result := a.num/real(a.denom)(a,b: Frac): boolean; + begin + Result := a.num/real(a.denom)>b.num/real(b.denom); + end; + class function operator>=(a,b: Frac): boolean; + begin + Result := a.num/real(a.denom)>=b.num/real(b.denom); + end; + class procedure operator+=(var a: Frac; b: Frac); + begin + a := a + b; + end; + class function operator-(a: Frac): Frac; + begin + Result := new Frac(-a.num,a.denom); + end; + class function operator+(a: Frac): Frac; + begin + Result := a; + end; + function ToString: string; override; + begin + Result := Format('{0}/{1}',num,denom); + end; + end; + +var + f := new Frac(1,2); + f1 := new Frac(3,5); + +begin + writelnFormat('{0} + {1} = {2}',f,f1,f+f1); + writelnFormat('{0} - {1} = {2}',f,f1,f-f1); + writelnFormat('{0} * {1} = {2}',f,f1,f*f1); + writelnFormat('{0} / {1} = {2}',f,f1,f/f1); + writeln(f1=f); + f += f1; + writeln(-f); +end. \ No newline at end of file diff --git a/!MainFeatures/06_Classes/PersonInternal.pas b/!MainFeatures/06_Classes/PersonInternal.pas new file mode 100644 index 0000000..e146f93 --- /dev/null +++ b/!MainFeatures/06_Classes/PersonInternal.pas @@ -0,0 +1,30 @@ +// Описание методов внутри интерфейса класса +// Удобство: методы можно реализовывать сразу после объявления +// Неудобство: для больших классов интерфейс трудно читается +type + Person = class + private + // Поля класса, как правило, приватны. Доступ к ним - через методы и свойства + name: string; + age: integer; + public + // Конструктор неявно имеет имя Create + constructor (n: string; a: integer); + begin + name := n; age := a; + end; + procedure Print; + begin + writeln('Имя: ',name,' Возраст: ',age); + end; + end; + +var p,p1: Person; + +begin + p := new Person('Иванов',20); // Новый синтаксис вызова конструктора (рекомендуется) + p.Print; + p1 := Person.Create('Попов',19); // Старый синтаксис вызова конструктора (не рекомендуется) + p1.Print; + // Деструкторы отсутствуют, вместо них - автоматическая сборка мусора +end. \ No newline at end of file diff --git a/!MainFeatures/06_Classes/Records.pas b/!MainFeatures/06_Classes/Records.pas new file mode 100644 index 0000000..e95d97a --- /dev/null +++ b/!MainFeatures/06_Classes/Records.pas @@ -0,0 +1,26 @@ +// Иллюстрация конструкторов и методов в записях +// Если переопределен метод ToString, то он вызывается при выводе объекта этого типа процедурой writeln +type + SexType = (Male, Female); + Person = record + Name: string; + Age, Weight: integer; + Sex: SexType; + constructor (Name: string; Age, Weight: integer; Sex: SexType); + begin + Self.Name := Name; + Self.Age := Age; + Self.Sex := Sex; + Self.Weight := Weight; + end; + function ToString: string; override; + begin + Result := Format('Имя: {0} Пол: {1} Возраст: {2} Вес: {3}', Name, Sex, Age, Weight); + end; + end; + +var p: Person := new Person('Иванов',20,70,SexType.Male); + +begin + writeln(p); +end. diff --git a/!MainFeatures/06_Classes/Stack.pas b/!MainFeatures/06_Classes/Stack.pas new file mode 100644 index 0000000..d818e96 --- /dev/null +++ b/!MainFeatures/06_Classes/Stack.pas @@ -0,0 +1,56 @@ +// Демонстрация создания простого класса стека на базе массива +type + Stack = class + private + a: array of T; + last: integer; + public + constructor Create(sz: integer); + begin + SetLength(a,sz); + last := 0; + end; + constructor Create; + begin + Create(100); + end; + procedure push(i: T); + begin + a[last] := i; + Inc(last); + end; + function pop: T; + begin + Dec(last); + pop := a[last]; + end; + function top: T; + begin + top := a[last-1]; + end; + function empty: boolean; + begin + Result := (last=0); + end; + function ToString: string; override; + begin + Result := ''; + for var i:=0 to last-1 do + Result += a[i]+' '; + end; + end; + +var s: Stack; + +begin + s := new Stack; + s.push(7); + s.push(2); + s.push(5); + s.push(4); + writeln(s); + while not s.empty do + write(s.pop,' '); +end. + + diff --git a/!MainFeatures/06_Classes/Where.pas b/!MainFeatures/06_Classes/Where.pas new file mode 100644 index 0000000..4b932d3 --- /dev/null +++ b/!MainFeatures/06_Classes/Where.pas @@ -0,0 +1,21 @@ +// Секция Where - ограничение на типы параметров +uses System,System.Collections.Generic; + +type + MyClass = class + where T: System.Array,ICloneable; + where T1: constructor; + procedure p(obj1: T; var obj2: T1); + begin + obj1.Clone(); + obj2 := new T1; + end; + end; + IntArr = array of integer; + +var + m: MyClass; + //m1: MyClass; // ошибка + +begin +end. \ No newline at end of file diff --git a/!MainFeatures/06_Classes/WriteRecord.pas b/!MainFeatures/06_Classes/WriteRecord.pas new file mode 100644 index 0000000..d35db74 --- /dev/null +++ b/!MainFeatures/06_Classes/WriteRecord.pas @@ -0,0 +1,26 @@ +// Иллюстрация конструкторов и методов в записях +// Если переопределен метод ToString, то он вызывается при выводе объекта этого типа процедурой writeln +type + SexType = (Male, Female); + Person = record + Name: string; + Age, Weight: integer; + Sex: SexType; + constructor (Name: string; Age, Weight: integer; Sex: SexType); + begin + Self.Name := Name; + Self.Age := Age; + Self.Sex := Sex; + Self.Weight := Weight; + end; + function ToString: string; override; + begin + Result := string.Format('Имя: {0} Возраст: {1} Вес: {2} Пол: {3}', Name, Age, Weight, Sex); + end; + end; + +var p: Person := new Person('Иванов',20,70,SexType.Male); + +begin + writeln(p); +end. diff --git a/!MainFeatures/07_NetLibs/DateTime.pas b/!MainFeatures/07_NetLibs/DateTime.pas new file mode 100644 index 0000000..01e72e3 --- /dev/null +++ b/!MainFeatures/07_NetLibs/DateTime.pas @@ -0,0 +1,31 @@ +Uses System; + +var d1, d2, d3: DateTime; // Объекты для хранения даты и времени + ts: TimeSpan; // Объект для хранения промежутков времени + +begin + // Получение текущей даты - вызов статического метода + d1 := DateTime.Now; + Writeln(d1); + + // Дата и время через один месяц + d2 := d1.AddMonths(1); + Writeln(d2); + + // Дата и время на 12 часов раньше + d2 := d1.AddHours(-12); + Writeln(d2); + + // Формирование даты - вызов конструктора объекта (год, месяц,число) + d3 := new DateTime(2001, 1, 1); + Writeln(d3); + + // Определение времени, прошедшего с начала тысячелетия (разность дат) + ts := d1.Subtract(d3); + + // Промежуток времени в днях (результат - вещественное число) + Writeln(ts.TotalDays); + + // Промежуток времени в днях, часах, минутах и секундах + Writeln(ts.Days, ' ', ts.Hours, ':', ts.Minutes, ':', ts.Seconds); +end. \ No newline at end of file diff --git a/!MainFeatures/07_NetLibs/FormWebBrowser.pas b/!MainFeatures/07_NetLibs/FormWebBrowser.pas new file mode 100644 index 0000000..c69b9e7 --- /dev/null +++ b/!MainFeatures/07_NetLibs/FormWebBrowser.pas @@ -0,0 +1,17 @@ +// Иллюстрация использования компонента WebBrowser +{$apptype windows} +{$reference System.Windows.Forms.dll} + +uses + System.Windows.Forms, + System.Net; + +begin + var myForm := new Form; + var w := new WebBrowser; + w.Url := new System.Uri('http://pascalabc.net'); + w.Dock := Dockstyle.Fill; + myForm.Controls.Add(w); + myForm.WindowState := FormWindowState.Maximized; + Application.Run(myForm); +end. diff --git a/!MainFeatures/07_NetLibs/LinkedList.pas b/!MainFeatures/07_NetLibs/LinkedList.pas new file mode 100644 index 0000000..dd1474e --- /dev/null +++ b/!MainFeatures/07_NetLibs/LinkedList.pas @@ -0,0 +1,27 @@ +// Использование LinkedList - двусвязного списка стандартной библиотеки - и его итератора +uses System.Collections,System.Collections.Generic; + +procedure print(l: ICollection); +begin + foreach x: integer in l do + write(x,' '); + writeln; +end; + +var l: LinkedList := new LinkedList; + +begin + l.AddLast(3); + l.AddLast(5); + l.AddLast(7); + l.AddFirst(2); + print(l); + + var a := new integer[10]; + l.CopyTo(a,0); + print(a); + + var lit: LinkedListNode := l.Find(5); + l.AddBefore(lit,777); + print(l); +end. \ No newline at end of file diff --git a/!MainFeatures/07_NetLibs/Reflection.pas b/!MainFeatures/07_NetLibs/Reflection.pas new file mode 100644 index 0000000..99deddb --- /dev/null +++ b/!MainFeatures/07_NetLibs/Reflection.pas @@ -0,0 +1,11 @@ +// Отражение типов. Выводятся все члены типа DateTime +uses System,System.Reflection; + +begin + var bf := BindingFlags.Public or BindingFlags.NonPublic or BindingFlags.Instance or BindingFlags.Static; + var t: &Type := typeof(DateTime); + var mi := t.GetMembers(bf); + foreach m: MemberInfo in mi do + writeln(m); +end. + diff --git a/!MainFeatures/07_NetLibs/WinFormWithButton.pas b/!MainFeatures/07_NetLibs/WinFormWithButton.pas new file mode 100644 index 0000000..a0f0c2c --- /dev/null +++ b/!MainFeatures/07_NetLibs/WinFormWithButton.pas @@ -0,0 +1,29 @@ +// Создание оконного приложения +{$apptype windows} +{$reference System.Windows.Forms.dll} + +uses + System, + System.Windows.Forms; + +var + myForm: Form; + myButton: Button; + +procedure MyButtonClick(sender: Object; e: EventArgs); +begin + myForm.Close; +end; + +begin + myForm := new Form; + myForm.Text := 'Оконное приложение'; + myButton := new Button; + myButton.Text := ' Закрыть окно '; + myButton.AutoSize := True; + myButton.Left := 90; + myButton.Top := 110; + myForm.Controls.Add(myButton); + myButton.Click += MyButtonClick; + Application.Run(myForm); +end. diff --git a/!NewExecutors/p1.pas b/!NewExecutors/p1.pas new file mode 100644 index 0000000..15e5757 --- /dev/null +++ b/!NewExecutors/p1.pas @@ -0,0 +1,5 @@ +uses ; + +begin + . +end. \ No newline at end of file diff --git a/!NewExecutors/p4.pas b/!NewExecutors/p4.pas new file mode 100644 index 0000000..42db1dd --- /dev/null +++ b/!NewExecutors/p4.pas @@ -0,0 +1,15 @@ +uses ; + +begin + var := (10); + .; + + .( -> >4).; + + var := 0; + foreach var in do + if >4 then + += 1; + . + +end. \ No newline at end of file diff --git a/!NewExecutors/ГрафическиеИсполнители.pas b/!NewExecutors/ГрафическиеИсполнители.pas new file mode 100644 index 0000000..cad4c33 --- /dev/null +++ b/!NewExecutors/ГрафическиеИсполнители.pas @@ -0,0 +1,106 @@ +unit ГрафическиеИсполнители; + +uses FormsABC; + +type + WebBrowser2 = class(WebBrowser) + public + procedure Отобразить(адрес: string) := Navigate(адрес); + function ОтобразитьСайт(адрес: string): () -> () := + () -> Self.Отобразить(адрес); + end; + + Button2 = class(Button) + private + procedure ppp(sender: Object; e: System.EventArgs); + public + event ПриНажатии: procedure; + constructor Create(text: string); + begin + inherited Create(text); + b.Click += ppp; + end; + property Текст: string read GetText write SetText; + end; + + ListBox2 = class(ListBox) + private + procedure ppp(sender: Object; e: System.EventArgs); + function GetHeight := lb.Height; + procedure SetHeight(h: integer) := lb.Height := h; + public + event ПриНажатии: procedure; + constructor Create; + begin + inherited Create; + lb.Click += ppp; + {lb.AutoSize := False; + lb.Width := 160;} + lb.Width := 190; + end; + procedure Добавить(name: string) := Items.Add(name); + procedure Очистить := Items.Clear; + procedure ДобавитьМного(m: sequence of string); + begin + foreach var x in m do + Items.Add(x); + end; + function ТекущаяСтрока := Items[Selectedindex] as string; + property Высота: integer read GetHeight write SetHeight; + end; + TextLabel2 = class(TextLabel) + public + property Текст: string read GetT write SetT; + + end; + + +procedure Button2.ppp(sender: Object; e: System.EventArgs); +begin + if ПриНажатии<>nil then + ПриНажатии +end; + +procedure ListBox2.ppp(sender: Object; e: System.EventArgs); +begin + if ПриНажатии<>nil then + ПриНажатии +end; + +procedure Init(); +begin + MainForm.SetSize(1024,768); +end; + +function СоздатьКнопку(Заголовок: string): Button2; +begin + ParentControl := MainPanel; + Result := new Button2(Заголовок); +end; + +function СоздатьСписок: ListBox2; +begin + ParentControl := MainPanel; + Result := new ListBox2; +end; + +function СоздатьТекст(txt: string := ''): TextLabel2; +begin + ParentControl := MainPanel; + Result := new TextLabel2(txt); +end; + +function СоздатьБраузер: WebBrowser2; +begin + MainPanel.Dock := Dockstyle.Left; + MainPanel.Width := 200; + ParentControl := MainForm; + Result := new WebBrowser2; + Result.Dock := DockStyle.Fill; +end; + +procedure НоваяСтрока := LineBreak; + +begin + Init(); +end. \ No newline at end of file diff --git a/!NewExecutors/Исполнители.pas b/!NewExecutors/Исполнители.pas new file mode 100644 index 0000000..416b555 --- /dev/null +++ b/!NewExecutors/Исполнители.pas @@ -0,0 +1,661 @@ +///- +/// , +unit ; + +type + ///!# + = integer; + = real; + = boolean; + = string; + +///- () +/// +procedure (params args: array of object) := Println(args); +/// +procedure := Println; + +///- . +/// +procedure (Self: ); extensionmethod := Println(Self); +///- . +/// +procedure (Self: real); extensionmethod := Println(Self); +///- . +/// +procedure (Self: string); extensionmethod := Println(Self); + +type + ///!# + Seq = interface(IEnumerable) + + end; + + ///!# + = class + public + ///- .() + /// , + procedure (params args: array of object) := Println(args); + ///- . + /// + procedure := Println; + end; + + = class + + end; + +// + +function DeleteEnd(Self: string; s: string): string; extensionmethod; +begin + if Self.EndsWith(s) then + begin + var i := Self.LastIndexOf(s); + if (i>=0) and (is.ToString.Replace('Void ','') + .Replace('Int32','') + .Replace('Boolean','') + .Replace('System.String','') + .Replace('Double','')) + .Select(s->' '+s.DeleteEnd('()')) + .Where(s->not s.ToString.Contains('$Init$')) + .Println(NewLine); +end; + +// +type + ///!# + = class + private + s := new SortedSet; + public + constructor; + begin end; + ///- .(: ) + /// . , + procedure (params a: array of integer); + begin + a.ForEach(x->begin s.Add(x) end); + //s.Add(); + end; + ///- .(: ) + /// . , + procedure (: ); + begin + s.Remove(); + end; + ///- . + /// + procedure ; + begin + s.Println; + end; + ///- .(: ): + /// , + function (: ): ; + begin + Result := s.Contains() + end; + ///- . + /// + procedure ; + begin + if Random(2)=1 then + PrintAllMethods(Self) + else + begin + WritelnFormat(' {0}:',Self.GetType.Name.DeleteEnd('')); + Writeln(' (: )'); + Writeln(' (: )'); + Writeln(' '); + Writeln(' (: ): '); + Writeln(' '); + end; + end; + ///- . + /// + procedure ; + begin + s.Clear + end; + ///- . + /// + function (params a: array of integer): ; + begin + Result := new (); + Result.(a) + end; + ///- .(1) + /// + function (s1: ): ; + begin + Result := new (); + var ss := SSet(s.AsEnumerable&); + ss.IntersectWith(s1.s); + Result.s := ss; + end; + end; + +type + ///!# + = class + private + s := new SortedSet; + public + constructor; + begin end; + ///- .(: ) + /// . , + procedure (: string); + begin + s.Add(); + end; + ///- .(: ) + /// . , + procedure (: string); + begin + s.Remove(); + end; + ///- . + /// + procedure ; + begin + s.Println; + end; + ///- .(: ): + /// , + function (: string): ; + begin + Result := s.Contains() + end; + ///- . + /// + procedure ; + begin + if Random(2)=1 then + PrintAllMethods(Self) + else + begin + WritelnFormat(' {0}:',Self.GetType.Name.DeleteEnd('')); + Writeln(' (: )'); + Writeln(' (: )'); + Writeln(' '); + Writeln(' (: ): '); + Writeln(' '); + end; + end; + ///- . + /// + procedure ; + begin + s.Clear + end; + ///- . + /// + function := new ; + ///- .(1) + /// + function (1: ): ; + begin + var ss: SortedSet; + ss := (1 as ).s; + + var m := new ; + m.s := s.ZipTuple(ss).Select(x -> x.ToString()).ToSortedSet; + Result := m + end; + end; + +type +///!# + = class + public + ///- .(a,b,c: ) + /// + procedure (a,b,c: real); + begin + writelnFormat(' : {0}*x*x+{1}*x+{2}=0',a,b,c); + var D := b*b-4*a*c; + if D<0 then + writeln(' ') + else + begin + var x1 := (-b-sqrt(D))/2/a; + var x2 := (-b+sqrt(D))/2/a; + writelnFormat(': x1={0} x2={1}',x1,x2) + end; + end; + ///- .(a0,d: ) + /// + procedure (a0,d: integer); + begin + writelnFormat(' : a0={0} d={1}',a0,d); + SeqGen(10,a0,x->x+d).Println; // ! + end; + procedure ; + begin + PrintAllMethods(Self); + end; + end; + + FileState = (Closed,OpenedForRead,OpenedForWrite); + ///!# + = class + private + f: Text; + State := FileState.Closed; + public + constructor ; + begin + end; + ///- .() + /// + procedure (: ); + begin + if State<>FileState.Closed then + f.Close; + f := OpenRead(); + State := FileState.OpenedForRead + end; + ///- .() + /// + procedure (: ); + begin + if State<>FileState.Closed then + f.Close; + f := OpenWrite(); + State := FileState.OpenedForWrite + end; + ///- . + /// + procedure ; + begin + if State=FileState.Closed then + Println(': ') + else f.Close; + State := FileState.Closed; + end; + ///- .() + /// + procedure (: ); + begin + if State=FileState.Closed then + Println(': ') + else f.Writeln() + end; + ///- . + /// , + function : ; + begin + if State=FileState.Closed then + begin + Println(': '); + Result := ''; + end + else + begin + Result := f.ReadlnString; + Println(Result); + end; + end; + ///- . + /// , + function : ; + begin + if State=FileState.Closed then + begin + Println(': '); + Result := 0; + end + else + begin + Result := f.ReadInteger; + Print(Result); + end; + end; + ///- . + /// , + function : ; + begin + if State=FileState.Closed then + begin + Println(': '); + Result := 0; + end + else + begin + Result := f.ReadReal; + Print(Result); + end; + end; + ///- . + /// , + function : ; + begin + Result := f.Eof; + end; + ///- . + /// + function : ; + begin + if State=FileState.Closed then + begin + Println(': , '); + Result := ''; + end + else + begin + Println(' : ',f.Name); + Result := f.Name; + end + end; + ///- . + /// + procedure (: ); + begin + if (State<>FileState.Closed) and (f.Name.ToLower=.ToLower) then + Println(': ') + else + begin + WritelnFormat(' {0}:',); + try + ReadLines().Println(NewLine); + except + WritelnFormat(' {0}: ',); + end; + end; + + end; + ///- . + /// + procedure ; + begin + PrintAllMethods(Self); + end; + ///- . + /// + function := new ; + ///- . + /// + function (: ): sequence of ; + begin + if (State<>FileState.Closed) and (f.Name.ToLower=.ToLower) then + begin + Println(': '); + Result := nil; + exit; + end; + Result := ReadLines().ToArray; + end; + end; + +const dbname = 'countries.db'; + +var coun: array of string := nil; + +function : sequence of string; +begin + if coun = nil then + coun := ReadLines(dbname).ToArray(); + Result := coun; +end; + +///- . +/// , +function (Self: sequence of T): sequence of T; extensionmethod; +begin + Self.Println; + Result := Self; +end; + +///- . +/// - +function (Self: sequence of T): sequence of T; extensionmethod; +begin + Self.Println(NewLine); + Result := Self; +end; + +///- .() +/// , +function (Self: sequence of T; cond: T -> boolean): sequence of T; extensionmethod; +begin + Result := Self.Where(cond); +end; + +///- .(n) +/// n +function (Self: sequence of T; n: integer): sequence of T; extensionmethod; +begin + Result := Self.Take(n); +end; + +///- .() +/// , +function (Self: sequence of T; cond: T -> boolean := nil): ; extensionmethod; +begin + if cond = nil then + Result := Self.Count() + else Result := Self.Count(cond) +end; + +///- . +/// +function (Self: sequence of integer): integer; extensionmethod; +begin + Result := Self.Sum(); +end; + +///- . +/// +function (Self: sequence of integer): real; extensionmethod; +begin + Result := Self.Average; +end; + +///- . +/// +function (Self: sequence of integer): integer; extensionmethod; +begin + Result := Self.Min; +end; + +///- . +/// +function (Self: sequence of integer): integer; extensionmethod; +begin + Result := Self.Max; +end; + +///- .( ) +/// +function (Self: sequence of T; conv: T -> Key): sequence of Key; extensionmethod; +begin + Result := Self.Select(conv); +end; + +///- .( ) +/// +function (Self: sequence of T; cond: T -> Key): sequence of T; extensionmethod; +begin + Result := Self.OrderBy(cond); +end; + +///- .( ) +/// +function (Self: sequence of T): sequence of T; extensionmethod; +begin + Result := Self.OrderBy(x->x); +end; + +///- .( ) +/// +function (Self: sequence of T; cond: T -> Key): sequence of T; extensionmethod; +begin + Result := Self.OrderByDescending(cond); +end; + +///- .() +/// +procedure (Self: sequence of T; act: T -> ()); extensionmethod; +begin + Self.Foreach(act); +end; + +function (c: char): string -> boolean; +begin + Result := -> [1] = c; +end; + +function (s: string): string -> boolean; +begin + Result := -> [1] = s[1]; +end; + +function (Self: string; s: string): boolean; extensionmethod; +begin + Result := Self.StartsWith(s); +end; + +///- () +/// , +function (x: integer): boolean; +begin + Result := x mod 2 = 0; +end; + +///- () +/// , +function (x: integer): boolean; +begin + Result := x mod 2 <> 0; +end; + +type +///!# + = class +public + ///- + /// + : ; + ///- + /// + : ; + ///- + /// + : ; + ///- + /// + : ; + ///- + /// + : ; + ///- + /// + procedure ; + begin + Println(''); + Println(''); + Println(''); + Println(''); + Println(''); + end; +end; + +type + ///!# + Country = auto class + nm,cap: string; + inh: integer; + cont: string; + public + property : string read nm; + property : string read cap; + property : integer read inh; + property : string read cont; + end; + +var : sequence of Country; + +procedure InitCountries(); +begin + := ReadLines('.csv') + .Select(s->s.ToWords(';')) + .Select(w->new Country(w[0],w[1],w[2].ToInteger,w[3])).ToArray; +end; + +// + +///- (,,) +/// , +function (a,d: integer; n: integer := 20): sequence of integer; +begin + Result := SeqGen(n,a,a->a+d) +end; + +///- (,,) +/// , +function (a,d: real; n: integer := 20): sequence of real; +begin + Result := SeqGen(n,a,a->a+d) +end; + +///- (,,) +/// , +function (a,d: integer; n: integer := 10): sequence of integer; +begin + Result := SeqGen(n,a,a->a*d) +end; + +///- (,,) +/// , +function (a,d: real; n: integer := 10): sequence of real; +begin + Result := SeqGen(n,a,a->a*d) +end; + +///- (,,) +/// [, ] +function (n: integer := 10; a: integer := 0; b: integer := 10): sequence of integer; +begin + Result := ArrRandom(n,a,b) +end; + +function := new ; + +var + ///- . + := new ; + ///- . + := new ; + ///- . + := new ; + ///- . + := new ; + ///- . + := new ; + ///- . + := new ; +begin + . := ; + . := ; + . := ; + . := ; + . := ; + InitCountries; +end. + \ No newline at end of file diff --git a/!NewExecutors/Множество1.pas b/!NewExecutors/Множество1.pas new file mode 100644 index 0000000..7c14c68 --- /dev/null +++ b/!NewExecutors/Множество1.pas @@ -0,0 +1,12 @@ +uses ; + +begin + var 1 := .(3,5,4,5); + 1.; + + var 2 := .(7,5,3,9); + 2.; + + 1.(2).; +end. + \ No newline at end of file diff --git a/!NewExecutors/Окна.pas b/!NewExecutors/Окна.pas new file mode 100644 index 0000000..132c352 --- /dev/null +++ b/!NewExecutors/Окна.pas @@ -0,0 +1,107 @@ +unit ; + +{$reference 'PresentationFramework.dll'} +{$reference 'WindowsBase.dll'} +{$reference 'PresentationCore.dll'} + +{$apptype windows} + +uses System.Windows.Controls; +uses System.Windows; +uses System.Windows.Data; +uses System.Reflection; +uses System.Collections.ObjectModel; + + +var app := new Application(); +var MainWindow := new Window; + +procedure InitWPF; +begin + MainWindow.Title := 'WPF'; + MainWindow.WindowStartupLocation := WindowStartupLocation.CenterScreen; + MainWindow.Width := 800; + MainWindow.Height := 600; + MainWindow.Show; +end; + +function GetFields(t1: T): sequence of string; +begin + Result := t1.GetType.GetProperties.Select(f->f.Name); +end; + +procedure (Self: ListView; data: sequence of T); extensionmethod; +begin + var gv := Self.View as GridView; + var fields := GetFields(data.First); + gv.Columns.Clear; + foreach var fld in fields do + begin + var col := new GridViewColumn; + col.Header := fld; + col.Width := 150; + col.DisplayMemberBinding := new Binding(fld); + gv.Columns.Add(col); + end; + Self.ItemsSource := data.Skip(1); +end; + +var + LeftPanel: StackPanel; + RightPanel: DockPanel; + +procedure Init(); +begin + var dp := new DockPanel; + MainWindow.Content := dp; + + LeftPanel := new StackPanel(); + LeftPanel.Width := 150; + dp.Children.Add(LeftPanel); + + RightPanel := new DockPanel(); + dp.Children.Add(RightPanel); +end; + +function CreateListView(): ListView; +begin + var list := new ListView; + var gv := new GridView; + list.View := gv; + RightPanel.Children.Add(list); + Result := list; +end; + +function : ListView; +begin + Result := CreateListView; +end; + + +function CreateButton(Content: string; p: procedure): Button; +begin + var btn := new Button; + LeftPanel.Children.Add(btn); + btn.HorizontalAlignment := HorizontalAlignment.Stretch; + btn.Margin := new Thickness(5); + btn.Content := Content; + btn.Click += procedure (sender: object; args: RoutedEventArgs) -> + begin + p; + end; + Result := btn; +end; + +function (Content: string; p: procedure): Button; +begin + Result := CreateButton(Content,p); +end; + + + +initialization + InitWPF; + Init; +finalization + app.Run(); +end. \ No newline at end of file diff --git a/!NewExecutors/Последовательности1.pas b/!NewExecutors/Последовательности1.pas new file mode 100644 index 0000000..44e9d79 --- /dev/null +++ b/!NewExecutors/Последовательности1.pas @@ -0,0 +1,14 @@ +uses ; + +begin + var := (10); + .; + + ..; + + var := 0; + foreach var in do + += ; + . +end. + \ No newline at end of file diff --git a/!NewExecutors/Последовательности2.pas b/!NewExecutors/Последовательности2.pas new file mode 100644 index 0000000..0e2bcf6 --- /dev/null +++ b/!NewExecutors/Последовательности2.pas @@ -0,0 +1,15 @@ +uses ; + +begin + var := (10); + .; + + .( -> ()).; + + var := 0; + foreach var in do + if () then + += 1; + . +end. + \ No newline at end of file diff --git a/!NewExecutors/Пример1.pas b/!NewExecutors/Пример1.pas new file mode 100644 index 0000000..172b342 --- /dev/null +++ b/!NewExecutors/Пример1.pas @@ -0,0 +1,15 @@ +uses ; + +begin + .(5); + .(3); + .(5); + .(4); + .; + .(3); + .; + (.(3)); + .; + .; +end. + \ No newline at end of file diff --git a/!NewExecutors/Пример2.pas b/!NewExecutors/Пример2.pas new file mode 100644 index 0000000..eae612b --- /dev/null +++ b/!NewExecutors/Пример2.pas @@ -0,0 +1,11 @@ +uses ; + +begin + .(1,3,2); + .; + .(1,2,2); + .; + .(1,2); + .; + .; +end. \ No newline at end of file diff --git a/!NewExecutors/Прогрессии1.pas b/!NewExecutors/Прогрессии1.pas new file mode 100644 index 0000000..ebf4558 --- /dev/null +++ b/!NewExecutors/Прогрессии1.pas @@ -0,0 +1,14 @@ +uses ; + +begin + var := (1,2,20); + .; + ..; + var := (1,2,10); + .; + ..; + var := (10,1,100); + .; + (.,.); +end. + \ No newline at end of file diff --git a/!NewExecutors/Прогрессии2.pas b/!NewExecutors/Прогрессии2.pas new file mode 100644 index 0000000..1165637 --- /dev/null +++ b/!NewExecutors/Прогрессии2.pas @@ -0,0 +1,13 @@ +uses ; + + +begin + var 1 := (1,2,20); + 1.; + 1..; + var 2 := 1.(x->x*x); + 2.; + var 3 := 2.(x -> x mod 10 = 5); + 3.; +end. + \ No newline at end of file diff --git a/!NewExecutors/Страны.csv b/!NewExecutors/Страны.csv new file mode 100644 index 0000000..8df7ee8 --- /dev/null +++ b/!NewExecutors/Страны.csv @@ -0,0 +1,196 @@ +;;240705; +;;25028000; +;;8579747; +;;9730500; +;;2886026; +;;40375954; +;;25830958; +;--;76098; + ;-;92738; +;-;43131966; +;;2998600; +;;33369945; + ;;392718; +;;160991563; +;;285006; +;;1316500; +;;9498400; +;;360838; +;;11250659; +;-;10315244; +;;7202198; +;;11410651; + ;;3791622; +;;2303820; +;;205738331; +;--;428874; + ;;18450494; +;;11552561; +;;784103; +;-;270470; +;;842; +;;65341183; +;;9823000; +;;31109000; + p;;1212107; +;;92700000; +;;1763142; +;--;10911819; +;;801623; +;;2054986; +;;28033375; +;;16176133; +;;12947122; +-;;1888429; +;;82162000; +;;8725111; +;-;107327; +;;10846979; +;;3720400; +;;5668743; + ;;79722624; +;;899598; +;;73016; + ;-;10648613; +;;91545000; +;;16717332; +;;15966810; +;;8522000; +;-;1294186000; +;;260581100; +;;6879300; +;;37547686; +;;79003827; +;;4635400; +;;332529; +;;46423064; +;;60665551; +;;27477600; +-;;526993; +;;17753200; +;;15827241; +;;23924407; +;;34988000; +;;2269672; +;;47251449; +;;848319; +;;6008600; +; ;114405; +;;1379022000; +;---;48803000; + ;;806153; +-;-;4773130; +-;;23254184; +;;11392889; +;-;4007146; +;;6693300; +;;1959900; +;;2160309; +;;4503438; +;;5988153; +;;6330159; +;;2869690; +;;37622; +;;576249; +;-;1261208; +;;3631775; +;;24915822; +;;2069172; +;;16310431; +;-;31700000; +;;18134835; +;;341256; +;;434403; +;;33996000; + ;;53069; +;;122273473; +;;28751362; +;;3553100; +;;37863; +;-;2966294; +;;54363426; +;;2513981; +;;28850717; +;;20715285; +;;186987563; +;;16985621; +;;6198154; + ;;4602900; +;;5275100; +;-;9266971; +;;4088690; +;;194521264; +;;21501; +;;3764166; +- ;-;7776115; +;;7003404; +;;31488625; +;;38437239; +;;10374822; + ;;4740992; +;;146544710; +;;11262564; +;;19759968; +;-;6146419; +;;194523; +-;-;31950; +- ;-;194390; + ;-;32248200; +;;1304063; + ;;25281327; + ;;55389; +;;97026; +;;15589485; +- ;;109644; +- ;;56183; +-;;186383; +;;7114393; +;;5469724; +;;18563595; +;;5421349; +;;2086300; + ;;324085000; + ;;594934; +;;11079013; +;;41175541; +;;547610; +-;;6592102; +;;8593600; +;;65323000; +;;55155473; +;;7496833; +;;106915; + ;--;1364973; +;;9943; +;;10982754; +;;5438670; +;;78741053; +;;40322768; +;;31807000; +;;42504274; +;;3415866; + ;;104966; +;;897537; +;;102921200; +;;5471753; +;;64513242; +;;4190669; + ;;4998493; +;;14496739; +;;622218; +;;10546120; +;;18006407; +;;8236600; +;;9838480; +-;;20810816; +;;15427000; + ;;845060; +;;5351680; +;;1315944; +;-;92206005; + ;;51431100; + ;;53532; +- ;;54956900; + ;;12733427; +;;2930050; +;;126960000; diff --git a/!NewExecutors/Страны1.pas b/!NewExecutors/Страны1.pas new file mode 100644 index 0000000..58bf4e3 --- /dev/null +++ b/!NewExecutors/Страны1.pas @@ -0,0 +1,11 @@ +uses ; + +begin + .; + + foreach var in do + (); + + .( -> .). +end. + \ No newline at end of file diff --git a/!NewExecutors/Страны2.pas b/!NewExecutors/Страны2.pas new file mode 100644 index 0000000..971484e --- /dev/null +++ b/!NewExecutors/Страны2.pas @@ -0,0 +1,17 @@ +uses ; + +begin + var := 0; + foreach var in do + if ..('') then + begin + (); + += 1; + end; + .; + + var := .( -> ..('')); + .; + ..; +end. + \ No newline at end of file diff --git a/!NewExecutors/Страны2a.pas b/!NewExecutors/Страны2a.pas new file mode 100644 index 0000000..fb4c4f7 --- /dev/null +++ b/!NewExecutors/Страны2a.pas @@ -0,0 +1,13 @@ +uses ; + +begin + var := 0; + foreach var in do + if .[1] = '' then + begin + (); + += 1; + end; + . +end. + \ No newline at end of file diff --git a/!NewExecutors/Страны2b.pas b/!NewExecutors/Страны2b.pas new file mode 100644 index 0000000..5591347 --- /dev/null +++ b/!NewExecutors/Страны2b.pas @@ -0,0 +1,7 @@ +uses ; + +begin + var := .( -> ..('')); + Println() +end. + \ No newline at end of file diff --git a/!NewExecutors/Страны2c.pas b/!NewExecutors/Страны2c.pas new file mode 100644 index 0000000..e281a02 --- /dev/null +++ b/!NewExecutors/Страны2c.pas @@ -0,0 +1,13 @@ +uses ; + +begin + var := .( -> ..('')); + var := 0; + foreach var in do + begin + (); + += 1; + end; + . +end. + \ No newline at end of file diff --git a/!NewExecutors/Страны3.pas b/!NewExecutors/Страны3.pas new file mode 100644 index 0000000..c2284b2 --- /dev/null +++ b/!NewExecutors/Страны3.pas @@ -0,0 +1,10 @@ +uses ; + +begin + var 0 := .( -> . = ''); + var 1 := 0.( -> .); + var 2 := 1.(10); + var 3 := 2.( -> (.,.)); + 3. +end. + \ No newline at end of file diff --git a/!NewExecutors/Страны4.pas b/!NewExecutors/Страны4.pas new file mode 100644 index 0000000..b3ea82a --- /dev/null +++ b/!NewExecutors/Страны4.pas @@ -0,0 +1,10 @@ +uses ; + +begin + .( -> . = '') + .( -> .) + .(10) + .( -> (.,.)) + . +end. + \ No newline at end of file diff --git a/!NewExecutors/СтраныGUI.pas b/!NewExecutors/СтраныGUI.pas new file mode 100644 index 0000000..43551ff --- /dev/null +++ b/!NewExecutors/СтраныGUI.pas @@ -0,0 +1,20 @@ +uses ,; + +begin + + // + var := .( -> ..('')); + + var := .( -> . = ''); + + var := .( -> . < 100000); + + // + var := ; + .(); + + CreateButton('', () -> .()); + CreateButton(' ', () -> .()); + CreateButton(' ', () -> .()); + CreateButton(' ', () -> .()); +end. \ No newline at end of file diff --git a/!NewExecutors/Файлы1.pas b/!NewExecutors/Файлы1.pas new file mode 100644 index 0000000..e45e020 --- /dev/null +++ b/!NewExecutors/Файлы1.pas @@ -0,0 +1,18 @@ +uses ; + +begin + var 1 := .; + var 2 := .; + 1.('.txt'); + 2.('2.txt'); + while not 1. do + begin + var := 1.; + 2.(); + end; + 1.; + 2.; + + 2.; +end. + \ No newline at end of file diff --git a/!NewExecutors/Файлы2.pas b/!NewExecutors/Файлы2.pas new file mode 100644 index 0000000..1c670e9 --- /dev/null +++ b/!NewExecutors/Файлы2.pas @@ -0,0 +1,14 @@ +uses ; + +begin + .('.txt'); + .(''); + .(''); + .(''); + .(''); + .(''); + .(''); + .; + .('.txt'); +end. + \ No newline at end of file diff --git a/!Tutorial/01_First/Assign1.pas b/!Tutorial/01_First/Assign1.pas new file mode 100644 index 0000000..282c2e6 --- /dev/null +++ b/!Tutorial/01_First/Assign1.pas @@ -0,0 +1,10 @@ +// Использование вспомогательных переменных + +begin + var r := ReadlnReal('Введите r: '); + var r2,r4,r8: real; // вспомогательные переменные + r2 := r * r; + r4 := r2 * r2; + r8 := r4 * r4; + Println(r,'в степени 8 =',r8); +end. \ No newline at end of file diff --git a/!Tutorial/01_First/Assign2.pas b/!Tutorial/01_First/Assign2.pas new file mode 100644 index 0000000..21e8e0b --- /dev/null +++ b/!Tutorial/01_First/Assign2.pas @@ -0,0 +1,12 @@ +// Перемена местами значений двух переменных с использованием третьей +var x,y: real; + +begin + Write('Введите x,y: '); + Readln(x,y); + var v: real; // вспомогательная переменная + v := x; + x := y; + y := v; + Writeln('Новые значения x,y: ',x,' ',y); +end. \ No newline at end of file diff --git a/!Tutorial/01_First/AssignExt.pas b/!Tutorial/01_First/AssignExt.pas new file mode 100644 index 0000000..5373b73 --- /dev/null +++ b/!Tutorial/01_First/AssignExt.pas @@ -0,0 +1,18 @@ +// Присваивания += -= *= /= +var + i: integer; + r: real; + +begin + i := 1; + Writeln('i := 1; i = ',i); + i += 2; // Увеличение на 2 + Writeln('i += 2; i = ',i); + i *= 3; // Увеличение в 3 раза + Writeln('i *= 3; i = ',i); + Writeln; + r := 6; + Writeln('r := 6; r = ',r); + r /= 2; + Writeln('r /= 2; r = ',r); +end. \ No newline at end of file diff --git a/!Tutorial/01_First/Boolean1.pas b/!Tutorial/01_First/Boolean1.pas new file mode 100644 index 0000000..98dec6a --- /dev/null +++ b/!Tutorial/01_First/Boolean1.pas @@ -0,0 +1,16 @@ +// Логический тип. Логические выражения с and, or и not +var + b: boolean; + x: integer; +begin + Write('Введите x (от 1 до 9): '); + Readln(x); + b := x=5; + Writeln('x=5? ',b); + b := (x>=3) and (x<=5); + Writeln('x=3,4 или 5? ',b); + b := (x=3) or (x=4) or (x=5); + Writeln('x=3,4 или 5? ',b); + b := not Odd(x); + Writeln('x - четное? ',b); +end. \ No newline at end of file diff --git a/!Tutorial/01_First/Calculations1.pas b/!Tutorial/01_First/Calculations1.pas new file mode 100644 index 0000000..91e984a --- /dev/null +++ b/!Tutorial/01_First/Calculations1.pas @@ -0,0 +1,10 @@ +// Вывод результатов вычислений +begin + Writeln('Вычисления:'); +// Вывод пустой строки + Writeln; + Writeln('121 + 363 = ',121+363); + Writeln('121 - 363 = ',121-363); + Writeln('121 * 363 = ',121*363); + Writeln('121 / 363 = ',121/363); +end. \ No newline at end of file diff --git a/!Tutorial/01_First/Calculations2.pas b/!Tutorial/01_First/Calculations2.pas new file mode 100644 index 0000000..0889633 --- /dev/null +++ b/!Tutorial/01_First/Calculations2.pas @@ -0,0 +1,13 @@ +// Вывод результатов вычислений. Используются именованные константы +const + a = 121; + b = 363; + +begin + Writeln('Вычисления:'); + Writeln; + Writeln(a,' + ',b,' = ',a+b); + Writeln(a,' - ',b,' = ',a-b); + Writeln(a,' * ',b,' = ',a*b); + Writeln(a,' / ',b,' = ',a/b); +end. \ No newline at end of file diff --git a/!Tutorial/01_First/Calculations3.pas b/!Tutorial/01_First/Calculations3.pas new file mode 100644 index 0000000..ce72b12 --- /dev/null +++ b/!Tutorial/01_First/Calculations3.pas @@ -0,0 +1,10 @@ +// Вывод результатов вычислений. Используются переменные и процедура ввода + +begin + var (a,b) := ReadlnInteger2('Введите a и b:'); + Writeln; + Writeln(a,' + ',b,' = ',a+b); + Writeln(a,' - ',b,' = ',a-b); + Writeln(a,' * ',b,' = ',a*b); + Writeln(a,' / ',b,' = ',a/b); +end. \ No newline at end of file diff --git a/!Tutorial/01_First/DivMod1.pas b/!Tutorial/01_First/DivMod1.pas new file mode 100644 index 0000000..6f47206 --- /dev/null +++ b/!Tutorial/01_First/DivMod1.pas @@ -0,0 +1,10 @@ +// Операции div и mod +var a: integer; + +begin + Write('Введите a: '); + Readln(a); + Writeln('Последняя цифра числа: ',a mod 10); + Writeln('Число без последней цифры: ',a div 10); + Writeln('Если число a четно, то 0: ',a mod 2); +end. \ No newline at end of file diff --git a/!Tutorial/01_First/DivMod2.pas b/!Tutorial/01_First/DivMod2.pas new file mode 100644 index 0000000..7f3169d --- /dev/null +++ b/!Tutorial/01_First/DivMod2.pas @@ -0,0 +1,13 @@ +// Операции div и mod +var a: integer := 247; + +begin + Write('Цифры числа в обратном порядке: '); + // Выводим последнюю цифру + Print(a mod 10); + // Отбрасываем последнюю цифру + a := a div 10; + Print(a mod 10); + a := a div 10; + Print(a mod 10); +end. \ No newline at end of file diff --git a/!Tutorial/01_First/Eof.pas b/!Tutorial/01_First/Eof.pas new file mode 100644 index 0000000..a651a63 --- /dev/null +++ b/!Tutorial/01_First/Eof.pas @@ -0,0 +1,9 @@ +// Демонстрация работы функции eof. Запускать по Shift-F9, завершать по Ctrl-Z +begin + var s: char; + while not Eof do + begin + Read(s); + Println('-',Ord(s),' -'); + end; +end. diff --git a/!Tutorial/01_First/Eoln.pas b/!Tutorial/01_First/Eoln.pas new file mode 100644 index 0000000..55e6aa4 --- /dev/null +++ b/!Tutorial/01_First/Eoln.pas @@ -0,0 +1,8 @@ +// Демонстрация работы функции Eoln +begin + while not Eoln do + begin + var c := ReadChar; + Print(c); + end; +end. \ No newline at end of file diff --git a/!Tutorial/01_First/HelloWorld.pas b/!Tutorial/01_First/HelloWorld.pas new file mode 100644 index 0000000..90fe341 --- /dev/null +++ b/!Tutorial/01_First/HelloWorld.pas @@ -0,0 +1,5 @@ +// Первая программа +program HelloWorld; +begin + Writeln('Привет, мир!'); +end. \ No newline at end of file diff --git a/!Tutorial/01_First/Random1.pas b/!Tutorial/01_First/Random1.pas new file mode 100644 index 0000000..c7763a6 --- /dev/null +++ b/!Tutorial/01_First/Random1.pas @@ -0,0 +1,10 @@ +// Генерация случайного числа + +begin + var i := Random(100); + Writeln('Случайное целое в диапазоне 0..99: ',i); + i := Random(2,5); + Writeln('Случайное целое в диапазоне 2..5: ',i); + var r: real := Random; + Writeln('Случайное вещественное в диапазоне [0,1): ',r); +end. \ No newline at end of file diff --git a/!Tutorial/01_First/Random2.pas b/!Tutorial/01_First/Random2.pas new file mode 100644 index 0000000..2559b81 --- /dev/null +++ b/!Tutorial/01_First/Random2.pas @@ -0,0 +1,7 @@ +// Бросание кубиков + +begin + var (k1,k2) := Random2(1,6); + Writeln($'Очки на кубиках: {k1} {k2}'); + Writeln($'Сумма очков: {k1+k2}'); +end. \ No newline at end of file diff --git a/!Tutorial/01_First/ReadString.pas b/!Tutorial/01_First/ReadString.pas new file mode 100644 index 0000000..297db1c --- /dev/null +++ b/!Tutorial/01_First/ReadString.pas @@ -0,0 +1,6 @@ +// Ввод строки + +begin + var имя := ReadString('Введите Ваше имя:'); + Writeln($'Здравствуйте, {имя}!'); +end. \ No newline at end of file diff --git a/!Tutorial/01_First/Shl.pas b/!Tutorial/01_First/Shl.pas new file mode 100644 index 0000000..022eded --- /dev/null +++ b/!Tutorial/01_First/Shl.pas @@ -0,0 +1,8 @@ +// Демонстрация операции shl +begin + Writeln('Степени двойки'); + Writeln(' n 2^n'); + for var i:=0 to 30 do + Writeln(i:2,(1 shl i):12); +end. + diff --git a/!Tutorial/01_First/StandFun.pas b/!Tutorial/01_First/StandFun.pas new file mode 100644 index 0000000..73c3791 --- /dev/null +++ b/!Tutorial/01_First/StandFun.pas @@ -0,0 +1,14 @@ +// Стандартные функции +var x: real; + +begin + write('Введите x: '); + Readln(x); + Writeln('Квадрат ',x,' равен ',Sqr(x)); + Writeln(x,' в степени 5 равно ',Power(x,5)); + Writeln('Квадратный корень из ',x,' равен ',Sqrt(x)); + Writeln('Модуль ',x,' равен ',Abs(x)); + Writeln('Натуральный логарифм ',x,' равен ',Ln(x)); + Writeln('Синус ',x,' равен ',Sin(x)); + Writeln('Косинус ',x,' равен ',Cos(x)); +end. \ No newline at end of file diff --git a/!Tutorial/01_First/StandardTypes.pas b/!Tutorial/01_First/StandardTypes.pas new file mode 100644 index 0000000..67b01ef --- /dev/null +++ b/!Tutorial/01_First/StandardTypes.pas @@ -0,0 +1,33 @@ +/// Стандартные размерные типы данных и их размер +var + i: integer; + j: shortint; + k: smallint; + l: longint; // синоним integer + i64: int64; + b: byte; + w: word; + lw: longword; + car: cardinal; // синоним longword + ui64: uint64; + r: real; + d: double; // синоним real + sn: single; + c: char; + +begin + Writeln('sizeof(integer) = ':20, sizeof(integer)); + Writeln('sizeof(shortint) = ':20,sizeof(shortint)); + Writeln('sizeof(smallint) = ':20,sizeof(smallint)); + Writeln('sizeof(longint) = ':20, sizeof(longint)); + Writeln('sizeof(int64) = ':20, sizeof(int64)); + Writeln('sizeof(byte) = ':20, sizeof(byte)); + Writeln('sizeof(word) = ':20, sizeof(word)); + Writeln('sizeof(longword) = ':20,sizeof(longword)); + Writeln('sizeof(cardinal) = ':20,sizeof(cardinal)); + Writeln('sizeof(uint64) = ':20, sizeof(uint64)); + Writeln('sizeof(real) = ':20, sizeof(real)); + Writeln('sizeof(double) = ':20, sizeof(double)); + Writeln('sizeof(single) = ':20, sizeof(single)); + Writeln('sizeof(char) = ':20, sizeof(char)); +end. \ No newline at end of file diff --git a/!Tutorial/01_First/StringPlus.pas b/!Tutorial/01_First/StringPlus.pas new file mode 100644 index 0000000..aa5fa0d --- /dev/null +++ b/!Tutorial/01_First/StringPlus.pas @@ -0,0 +1,8 @@ +// Сложение строк +var s1: string := 'Pascal'; +var s2: string := 'NET'; + +begin + Writeln(s2+'-'+s1); + Writeln(s1+'.'+s2); +end. \ No newline at end of file diff --git a/!Tutorial/01_First/WriteFormat.pas b/!Tutorial/01_First/WriteFormat.pas new file mode 100644 index 0000000..81b23cc --- /dev/null +++ b/!Tutorial/01_First/WriteFormat.pas @@ -0,0 +1,11 @@ +/// Использование процедуры WritelnFormat +begin + // Вывод в обратном порядке + WritelnFormat('{2},{1},{0}',1,2,3); + // Вывод фигурных скобочек + WritelnFormat('{{}}{0}','Вывод фигурных скобочек в форматной строке'); + // Задание количества знаков после запятой для вещественного числа + WritelnFormat('{0:f3}',3.1415); + // Задание ширины поля вывода + WritelnFormat('{0,10:f}',3.1415); +end. \ No newline at end of file diff --git a/!Tutorial/02_Errors/CompilerError1.pas b/!Tutorial/02_Errors/CompilerError1.pas new file mode 100644 index 0000000..fcba518 --- /dev/null +++ b/!Tutorial/02_Errors/CompilerError1.pas @@ -0,0 +1,8 @@ +// Исправьте ошибку компиляции. +// Обратите внимание, что курсор позиционируется в конце слова, вызвавшего ошибку +var i: integer + +begin + i := 2; + Writeln(i); +end. \ No newline at end of file diff --git a/!Tutorial/02_Errors/CompilerError2.pas b/!Tutorial/02_Errors/CompilerError2.pas new file mode 100644 index 0000000..6c173ae --- /dev/null +++ b/!Tutorial/02_Errors/CompilerError2.pas @@ -0,0 +1,5 @@ +// Исправьте ошибки компиляции. Опишите переменную r +begin + r := 2.5; + Witeln(r); +end. \ No newline at end of file diff --git a/!Tutorial/02_Errors/CompilerError3.pas b/!Tutorial/02_Errors/CompilerError3.pas new file mode 100644 index 0000000..7576e94 --- /dev/null +++ b/!Tutorial/02_Errors/CompilerError3.pas @@ -0,0 +1,8 @@ +// Исправьте ошибку компиляции. Не всегда надо "верить" тексту ошибки + +var k: real; + +begin + k := 2,5; + Writeln(r); +end. \ No newline at end of file diff --git a/!Tutorial/02_Errors/CompilerError4.pas b/!Tutorial/02_Errors/CompilerError4.pas new file mode 100644 index 0000000..f4ad2ff --- /dev/null +++ b/!Tutorial/02_Errors/CompilerError4.pas @@ -0,0 +1,6 @@ +// Исправьте ошибки компиляции, изменив тип переменной x +var x: integer; + +begin + x := 3/5; +end. \ No newline at end of file diff --git a/!Tutorial/02_Errors/RuntimeError1.pas b/!Tutorial/02_Errors/RuntimeError1.pas new file mode 100644 index 0000000..43a0e5e --- /dev/null +++ b/!Tutorial/02_Errors/RuntimeError1.pas @@ -0,0 +1,7 @@ +// Введите не число +// Посмотрите, как выглядит ошибка при выполнении программы +var i: integer; + +begin + Read(i); +end. \ No newline at end of file diff --git a/!Tutorial/02_Errors/RuntimeError2.pas b/!Tutorial/02_Errors/RuntimeError2.pas new file mode 100644 index 0000000..8c54da2 --- /dev/null +++ b/!Tutorial/02_Errors/RuntimeError2.pas @@ -0,0 +1,6 @@ +// Посмотрите, как выглядит ошибка выполнения при целочисленном делении на 0 +var i: integer := 0; + +begin + Write(2 div i); +end. \ No newline at end of file diff --git a/!Tutorial/02_Errors/RuntimeError3.pas b/!Tutorial/02_Errors/RuntimeError3.pas new file mode 100644 index 0000000..e4b336b --- /dev/null +++ b/!Tutorial/02_Errors/RuntimeError3.pas @@ -0,0 +1,6 @@ +// При вещественном делении на 0 ошибки не возникает +var r: real := 0; + +begin + Write(1/r); +end. \ No newline at end of file diff --git a/!Tutorial/02_Errors/RuntimeError4.pas b/!Tutorial/02_Errors/RuntimeError4.pas new file mode 100644 index 0000000..b11155c --- /dev/null +++ b/!Tutorial/02_Errors/RuntimeError4.pas @@ -0,0 +1,4 @@ +// При работе с вещественными числами невозможно получить ошибку выполнения +begin + Writeln(Sqrt(-1)); +end. \ No newline at end of file diff --git a/!Tutorial/03_Robot_Drawman/DMa1.pas b/!Tutorial/03_Robot_Drawman/DMa1.pas new file mode 100644 index 0000000..fde4bef --- /dev/null +++ b/!Tutorial/03_Robot_Drawman/DMa1.pas @@ -0,0 +1,14 @@ +// Исполнитель Чертежник - отличное средство для начального обучения программированию +// школьников младших и средних классов +// Для генерации шаблона задания нажмите Ctrl-L и наберите DM и имя задания +uses Drawman; + +begin + Task('a1'); + ToPoint(2,3); + PenDown; + OnVector(1,2); + PenUp; + ToPoint(0,0); +end. + diff --git a/!Tutorial/03_Robot_Drawman/RBa1.pas b/!Tutorial/03_Robot_Drawman/RBa1.pas new file mode 100644 index 0000000..e7c5926 --- /dev/null +++ b/!Tutorial/03_Robot_Drawman/RBa1.pas @@ -0,0 +1,16 @@ +// Исполнитель Робот - отличное средство для начального обучения программированию +// школьников младших и средних классов +// Для генерации шаблона задания нажмите Ctrl-L и наберите RB и имя задания +uses Robot; + +begin + Task('a1'); + Right; Right; Right; Right; + Up; + Left; Paint; + Left; Paint; + Left; Paint; + Left; Paint; + Left; +end. + diff --git a/!Tutorial/04_Graphics/Gr1.pas b/!Tutorial/04_Graphics/Gr1.pas new file mode 100644 index 0000000..1b3eb12 --- /dev/null +++ b/!Tutorial/04_Graphics/Gr1.pas @@ -0,0 +1,8 @@ +// Графика. Линии. Размеры окна. Заголовок окна +uses GraphABC; + +begin + Window.Title := 'Первая графическая программа'; + Line(0,0,Window.Width-1,Window.Height-1); + Line(0,Window.Height-1,Window.Width-1,0); +end. \ No newline at end of file diff --git a/!Tutorial/04_Graphics/Gr2.pas b/!Tutorial/04_Graphics/Gr2.pas new file mode 100644 index 0000000..0471c2a --- /dev/null +++ b/!Tutorial/04_Graphics/Gr2.pas @@ -0,0 +1,8 @@ +// Графика. Точка. Случайный цвет. Скорость работы +uses GraphABC,Utils; + +begin + for var i:=1 to 100000 do + SetPixel(Random(Window.Width),Random(Window.Height),clRandom); + writeln('Время работы: ',Milliseconds/1000,' секунд'); +end. \ No newline at end of file diff --git a/!Tutorial/04_Graphics/Gr3.pas b/!Tutorial/04_Graphics/Gr3.pas new file mode 100644 index 0000000..de0d7ae --- /dev/null +++ b/!Tutorial/04_Graphics/Gr3.pas @@ -0,0 +1,14 @@ +// Графика. Свойства кисти и пера +uses GraphABC; + +begin + Window.Title := 'Свойства кисти и пера'; + Pen.Color := Color.Red; + Pen.Width := 3; + Pen.Style := psDashDot; + Brush.Style := bsHatch; + Brush.Color := Color.Green; + Brush.Hatch := bhDiagonalBrick; + Brush.HatchBackgroundColor := Color.Bisque; + Rectangle(20, 20, Window.Width - 20, Window.Height - 20); +end. \ No newline at end of file diff --git a/!Tutorial/04_Graphics/Gr4.pas b/!Tutorial/04_Graphics/Gr4.pas new file mode 100644 index 0000000..7c060dd --- /dev/null +++ b/!Tutorial/04_Graphics/Gr4.pas @@ -0,0 +1,22 @@ +// Графика. Draw и Fill - процедуры +uses GraphABC; + +begin + Window.Title := 'Draw и Fill - процедуры'; + for var i := 1 to 100 do + begin + Pen.Color := clRandom; + var x := Random(Window.Width-100); + var y := Random(Window.Height-100); + DrawRectangle(x,y,x+Random(100),y+Random(100)); + Sleep(30); + end; + for var i := 1 to 100 do + begin + Brush.Color := clRandom; + var x := Random(Window.Width-100); + var y := Random(Window.Height-100); + FillRectangle(x,y,x+Random(100),y+Random(100)); + Sleep(30); + end; +end. \ No newline at end of file diff --git a/!Tutorial/04_Graphics/Gr5.pas b/!Tutorial/04_Graphics/Gr5.pas new file mode 100644 index 0000000..979566e --- /dev/null +++ b/!Tutorial/04_Graphics/Gr5.pas @@ -0,0 +1,20 @@ +// Графика. Pie +uses GraphABC; + +const r = 200; + +begin + Window.Title := 'Круговая гистограмма'; + var x := Window.Center.X; + var y := Window.Center.Y; + Brush.Color := clRandom; + Pie(x,y,r,0,30); + Brush.Color := clRandom; + Pie(x,y,r,30,110); + Brush.Color := clRandom; + Pie(x,y,r,110,160); + Brush.Color := clRandom; + Pie(x,y,r,160,280); + Brush.Color := clRandom; + Pie(x,y,r,280,360); +end. \ No newline at end of file diff --git a/!Tutorial/04_Graphics/Gr6.pas b/!Tutorial/04_Graphics/Gr6.pas new file mode 100644 index 0000000..6430311 --- /dev/null +++ b/!Tutorial/04_Graphics/Gr6.pas @@ -0,0 +1,19 @@ +// Графика. Прозрачность +uses GraphABC; + +begin + Window.Title := 'Демонстрация прозрачности'; + + Brush.Color := clRed; + FillRectangle(50,50,100,Window.Height - 50); + Brush.Color := clGreen; + FillRectangle(150,50,200,Window.Height - 50); + Brush.Color := clBlue; + FillRectangle(250,50,300,Window.Height - 50); + Brush.Color := ARGB(127,255,0,0); + FillRectangle(20,100,420,150); + Brush.Color := ARGB(63,0,127,0); + FillRectangle(20,200,420,250); + Brush.Color := ARGB(31,0,0,255); + FillRectangle(20,300,420,350); +end. \ No newline at end of file diff --git a/!Tutorial/04_Graphics/Gr7.pas b/!Tutorial/04_Graphics/Gr7.pas new file mode 100644 index 0000000..3eacff0 --- /dev/null +++ b/!Tutorial/04_Graphics/Gr7.pas @@ -0,0 +1,24 @@ +// Графика. Сохраниение изображения графического окна в файл и загрузка из файла +uses GraphABC; + +const + delay = 500; + filename = 'GraphWindow.bmp'; + +begin + Window.Title := 'Window.Save и Window.Load'; + SetWindowSize(320,240); + + for var x:=0 to Window.Width - 1 do + for var y:=0 to Window.Height - 1 do + SetPixel(x,y,RGB(x-2*y,y+x,y-2*x)); + + Window.Save(filename); + for var i := 1 to 5 do + begin + Window.Clear; + Sleep(delay); + Window.Load(filename); + Sleep(delay); + end; +end. \ No newline at end of file diff --git a/!Tutorial/04_Graphics/Gr8.pas b/!Tutorial/04_Graphics/Gr8.pas new file mode 100644 index 0000000..678a0a3 --- /dev/null +++ b/!Tutorial/04_Graphics/Gr8.pas @@ -0,0 +1,18 @@ +// Графика. Сглаживание +uses GraphABC; + +begin + Window.Title := 'Демонстрация сглаживания'; + TextOut(40,20,'Со сглаживанием'); + Pen.Width := 2; + + Ellipse(40,60,300,200); + Line(340,60,600,130); + Line(600,130,340,200); + + SetSmoothingOff; + TextOut(40,240,'Без сглаживания'); + Ellipse(40,280,300,420); + Line(340,280,600,350); + Line(600,350,340,420); +end. \ No newline at end of file diff --git a/!Tutorial/04_Graphics/GrAnim1.pas b/!Tutorial/04_Graphics/GrAnim1.pas new file mode 100644 index 0000000..67e0b2d --- /dev/null +++ b/!Tutorial/04_Graphics/GrAnim1.pas @@ -0,0 +1,14 @@ +// Графика. Пример "наивной" анимации. Эффект мерцания +uses GraphABC; + +begin + Window.Title := 'Демонстрация простой анимации'; + var y := 200; + Brush.Color := clGreen; + for var x := 70 to 500 do + begin + Window.Clear(clWhite); + Circle(x,y,50); + Sleep(3); + end; +end. \ No newline at end of file diff --git a/!Tutorial/04_Graphics/GrAnim2.pas b/!Tutorial/04_Graphics/GrAnim2.pas new file mode 100644 index 0000000..b88e170 --- /dev/null +++ b/!Tutorial/04_Graphics/GrAnim2.pas @@ -0,0 +1,18 @@ +// Графика. Использование LockDrawing-Redraw. Мерцание отсутствует +uses GraphABC; + +begin + Window.Title := 'Анимация без мерцания'; + var y := 200; + Brush.Color := clGreen; + // Отключаем рисование в окне + LockDrawing; + for var x := 70 to 500 do + begin + Window.Clear(clWhite); + Circle(x,y,50); + // Перерисовываем окно из внеэранного буфера + Redraw; + Sleep(3); + end; +end. \ No newline at end of file diff --git a/!Tutorial/04_Graphics/GrCoord1.pas b/!Tutorial/04_Graphics/GrCoord1.pas new file mode 100644 index 0000000..8da8ac8 --- /dev/null +++ b/!Tutorial/04_Graphics/GrCoord1.pas @@ -0,0 +1,19 @@ +// Демонстрация преобразований системы координат +uses GraphABC; + +begin + Window.Title := 'Преобразования системы координат'; + Window.IsFixedSize := True; + + // Поворот + Coordinate.Angle := 30; + // Масштаб + Coordinate.Scale := 3; + // Начало координат - в центре окна + Coordinate.Origin := Window.Center; + + Brush.Color := clMoneyGreen; + Ellipse(-50,-20,50,20); + Line(-70,0,70,0); + Line(0,-40,0,40); +end. diff --git a/!Tutorial/04_Graphics/GrCoord2.pas b/!Tutorial/04_Graphics/GrCoord2.pas new file mode 100644 index 0000000..e81b9b6 --- /dev/null +++ b/!Tutorial/04_Graphics/GrCoord2.pas @@ -0,0 +1,15 @@ +// Демонстрация преобразований системы координат +uses GraphABC; + +begin + Window.Title := 'Преобразования системы координат'; + Window.IsFixedSize := True; + + Coordinate.Origin := Window.Center; + Circle(0,0,200); + for var i := 1 to 12 do + begin + Circle(0,180,10); + Coordinate.Angle := Coordinate.Angle + 30; + end; +end. diff --git a/!Tutorial/04_Graphics/GrCoord3.pas b/!Tutorial/04_Graphics/GrCoord3.pas new file mode 100644 index 0000000..515de5f --- /dev/null +++ b/!Tutorial/04_Graphics/GrCoord3.pas @@ -0,0 +1,17 @@ +uses GraphABC; + +begin + Coordinate.Origin := Window.Center; + Coordinate.SetMathematic; + while True do + begin + LockDrawing; + ClearWindow; + Ellipse(-120,-70,120,70); + Line(0,0,200,0); + Line(0,0,0,200); + Redraw; + Coordinate.Angle := Coordinate.Angle + 1; + Sleep(100); + end; +end. diff --git a/!Tutorial/04_Graphics/GrFont1.pas b/!Tutorial/04_Graphics/GrFont1.pas new file mode 100644 index 0000000..4044696 --- /dev/null +++ b/!Tutorial/04_Graphics/GrFont1.pas @@ -0,0 +1,23 @@ +// Демонстрация работы со шрифтами +uses GraphABC; + +begin + Window.Title := 'Шрифты'; + SetWindowSize(760,460); + Font.Name := 'Arial'; + Font.Style := fsBoldItalic; + for var i:=4 to 14 do + begin + Font.Size := 2*i; + Font.Color := clRandom; + TextOut(30,2*i*i-15,'PascalABC.NET'); + end; + Font.Name := 'Times New Roman'; + Font.Style := fsBoldUnderline; + for var i:=4 to 14 do + begin + Font.Size := 2*i; + Font.Color := clRandom; + TextOut(400,2*i*i-15,'PascalABC.NET'); + end; +end. diff --git a/!Tutorial/04_Graphics/GrFont2.pas b/!Tutorial/04_Graphics/GrFont2.pas new file mode 100644 index 0000000..17947a8 --- /dev/null +++ b/!Tutorial/04_Graphics/GrFont2.pas @@ -0,0 +1,16 @@ +// Демонстрация использования TextWidth и TextHeight +uses GraphABC; + +const s = 'Width & Height'; + +begin + Window.Title := 'Текст по центру'; + Window.IsFixedSize := True; + SetWindowSize(700,300); + Window.Center; + Font.Name := 'Times'; + Font.Size := 50; + var tw := TextWidth(s); + var th := TextHeight(s); + TextOut((Window.Width-tw) div 2,(Window.Height-th) div 2,s); +end. diff --git a/!Tutorial/04_Graphics/GrPoly.pas b/!Tutorial/04_Graphics/GrPoly.pas new file mode 100644 index 0000000..68f8031 --- /dev/null +++ b/!Tutorial/04_Graphics/GrPoly.pas @@ -0,0 +1,18 @@ +// Процедуры Polyline, Polygon, Curve, ClosedCurve +// Перенос начала системы координат +uses GraphABC; + +var a: array of Point := (new Point(0,0), new Point(50,170), new Point(100,100), new Point(150,170), new Point(200,0)); + +begin + Window.Title := 'Рисование по массиву точек'; + Brush.Color := Color.Beige; + Coordinate.SetOrigin(60,30); + Polyline(a); + Coordinate.OriginX := 360; + Polygon(a); + Coordinate.Origin := new Point(60,250); + Curve(a); + Coordinate.OriginX := 360; + ClosedCurve(a); +end. diff --git a/!Tutorial/04a_ABCObjects/ABC1.pas b/!Tutorial/04a_ABCObjects/ABC1.pas new file mode 100644 index 0000000..0fe49e8 --- /dev/null +++ b/!Tutorial/04a_ABCObjects/ABC1.pas @@ -0,0 +1,40 @@ +// Модуль ABCObjects. Изменение свойств объекта +uses ABCObjects,GraphABC; + +const delay = 300; + +procedure Pause; +begin + Sleep(delay); +end; + +var + r: RectangleABC; + z: StarABC; + +begin + Window.Title := 'ABCObjects: свойства графических объектов'; + z := new StarABC(Window.Center.X,Window.Center.Y,70,30,6,Color.Green); + r := new RectangleABC(100,100,200,100,Color.Gold); + Pause; + r.Center := Window.Center; + Pause; + r.Height := 70; + Pause; + r.Width := 220; + Pause; + z.Radius := 150; + Pause; + z.Color := Color.LightCoral; + Pause; + z.Count := 5; + Pause; + + r.Text := 'PascalABC.NET'; + r.Color := Color.Gainsboro; + Pause; + r.BorderWidth := 3; + r.BorderColor := Color.Blue; + Pause; + r.Center := Window.Center; +end. diff --git a/!Tutorial/05_IfCaseBoolean/Case1.pas b/!Tutorial/05_IfCaseBoolean/Case1.pas new file mode 100644 index 0000000..9f2c5a2 --- /dev/null +++ b/!Tutorial/05_IfCaseBoolean/Case1.pas @@ -0,0 +1,15 @@ +// Оператор выбора +var x: integer; + +begin + writeln('Введите оценку (1..5): '); + readln(x); + case x of + 1: writeln('Единица'); + 2: writeln('Двойка'); + 3: writeln('Тройка'); + 4: writeln('Четверка'); + 5: writeln('Пятерка'); + else writeln('Такой оценки нет'); + end; +end. \ No newline at end of file diff --git a/!Tutorial/05_IfCaseBoolean/Case2.pas b/!Tutorial/05_IfCaseBoolean/Case2.pas new file mode 100644 index 0000000..a6b257b --- /dev/null +++ b/!Tutorial/05_IfCaseBoolean/Case2.pas @@ -0,0 +1,12 @@ +// Оператор выбора +var day: integer; + +begin + writeln('Введите номер дня недели (1..7): '); + readln(day); + case day of + 1..5: writeln('Будний'); + 6,7: writeln('Выходной'); + else writeln('Неверный день недели'); + end; +end. \ No newline at end of file diff --git a/!Tutorial/05_IfCaseBoolean/Case3.pas b/!Tutorial/05_IfCaseBoolean/Case3.pas new file mode 100644 index 0000000..bd061c0 --- /dev/null +++ b/!Tutorial/05_IfCaseBoolean/Case3.pas @@ -0,0 +1,12 @@ +// Оператор выбора +var c: char; + +begin + writeln('Введите символ: '); + readln(c); + case c of + '0'..'9': writeln('Это цифра'); + 'a'..'z','A'..'Z': writeln('Это английская буква'); + 'а'..'я','А'..'Я': writeln('Это русская буква'); + end; +end. \ No newline at end of file diff --git a/!Tutorial/05_IfCaseBoolean/Case4.pas b/!Tutorial/05_IfCaseBoolean/Case4.pas new file mode 100644 index 0000000..ce699c1 --- /dev/null +++ b/!Tutorial/05_IfCaseBoolean/Case4.pas @@ -0,0 +1,14 @@ +// Оператор выбора. Случайная фигура +uses GraphABC; + +begin + SetWindowSize(400,300); + var t := Random(1,5); + case t of + 1: Circle(200,150,100); + 2: Rectangle(100,100,300,200); + 3: Ellipse(100,100,300,200); + 4: RoundRect(100,100,300,200,20,20); + 5: Line(100,100,300,200); + end; +end. \ No newline at end of file diff --git a/!Tutorial/05_IfCaseBoolean/If1.pas b/!Tutorial/05_IfCaseBoolean/If1.pas new file mode 100644 index 0000000..a76e753 --- /dev/null +++ b/!Tutorial/05_IfCaseBoolean/If1.pas @@ -0,0 +1,10 @@ +// Условный оператор. Полная форма +var + x: integer := 5; + y: integer := 3; + +begin + if x=1) and (x<=9) then + writeln('Однозначное число'); + // Odd - функция, возвращающая True только если x - нечетно + if Odd(x) and (x>=10) and (x<=99) then + writeln('Нечетное двузначное число'); + if (x=3) or (x=9) or (x=27) or (x=81) then + writeln('Степень тройки'); +end. \ No newline at end of file diff --git a/!Tutorial/05_IfCaseBoolean/If4.pas b/!Tutorial/05_IfCaseBoolean/If4.pas new file mode 100644 index 0000000..41008a9 --- /dev/null +++ b/!Tutorial/05_IfCaseBoolean/If4.pas @@ -0,0 +1,18 @@ +// Вложенные условные операторы +var x: integer; + +begin + writeln('Введите оценку (1..5): '); + readln(x); + if (x=1) then + writeln('Единица') + else if (x=2) then + writeln('Двойка') + else if (x=3) then + writeln('Тройка') + else if (x=4) then + writeln('Четверка') + else if (x=5) then + writeln('Пятерка') + else writeln('Такой оценки нет') +end. \ No newline at end of file diff --git a/!Tutorial/05_IfCaseBoolean/If5.pas b/!Tutorial/05_IfCaseBoolean/If5.pas new file mode 100644 index 0000000..074bf78 --- /dev/null +++ b/!Tutorial/05_IfCaseBoolean/If5.pas @@ -0,0 +1,19 @@ +// Вложенные условные операторы. Антонимы +var s: string; + +begin + writeln('Введите слово из списка (черный,высокий,свет,радость,умный): '); + readln(s); + write('Антоним: '); + if (s='черный') then + writeln('белый') + else if (s='высокий') then + writeln('низкий') + else if (s='свет') then + writeln('тьма') + else if (s='радость') then + writeln('горе') + else if (s='умный') then + writeln('глупый') + else writeln('Такого слова в списке нет') +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/For1.pas b/!Tutorial/06_ForWhileRepeat/For1.pas new file mode 100644 index 0000000..5545f14 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/For1.pas @@ -0,0 +1,22 @@ +// Цикл for + +const n = 20; + +var i: integer; + +begin + writeln('Числа от 1 до ',n,':'); + for i:=1 to n do + write(i,' '); + writeln; + writeln; + writeln('Числа от ',n,' до 1:'); + for i:=n downto 1 do + write(i,' '); + writeln; + writeln; + writeln('Маленькие английские буквы:'); + for c: char := 'a' to 'z' do + write(c,' '); + writeln; +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/For1a.pas b/!Tutorial/06_ForWhileRepeat/For1a.pas new file mode 100644 index 0000000..600a4a7 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/For1a.pas @@ -0,0 +1,38 @@ +// Цикл for. Шаг цикла 2 +const n = 25; + +var i: integer; + +begin + writeln('Четные числа от 1 до ',2*n); + for i:=1 to n do + write(2*i,' '); + writeln; + writeln; + + writeln('Четные числа от 1 до ',2*n); + var x := 2; + for i:=1 to n do + begin + write(x,' '); + x += 2; + end; + writeln; + writeln; + + writeln('Нечетные числа от 1 до ',2*n); + for i:=1 to n do + write(2*i-1,' '); + writeln; + writeln; + + writeln('Нечетные числа от 1 до ',2*n); + x := 1; + for i:=1 to n do + begin + write(x,' '); + x += 2; + end; + writeln; + writeln; +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/For2.pas b/!Tutorial/06_ForWhileRepeat/For2.pas new file mode 100644 index 0000000..f94af54 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/For2.pas @@ -0,0 +1,15 @@ +// Цикл for. Последовательность случайных чисел + +const n = 20; + +var i: integer; + +begin + write('Случайные оценки: '); + for i:=1 to n do + write(Random(2,5),' '); + writeln; + write('Случайные целые от 1 до 99: '); + for i:=n downto 1 do + write(Random(1,99),' '); +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/For3.pas b/!Tutorial/06_ForWhileRepeat/For3.pas new file mode 100644 index 0000000..2693461 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/For3.pas @@ -0,0 +1,11 @@ +// Цикл for. Последовательность случайных чисел +const n = 20; + +begin + for var i:=1 to n do + write(Random(2,5),' '); + writeln; + write('Случайные целые от 1 до 99: '); + for var i:=n downto 1 do + write(Random(1,99),' '); +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/For4.pas b/!Tutorial/06_ForWhileRepeat/For4.pas new file mode 100644 index 0000000..56a72f0 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/For4.pas @@ -0,0 +1,8 @@ +// Цикл for. Сумма всех двузначных чисел + +begin + var s := 0; + for var i:=10 to 99 do + s += i; + Println('Сумма всех двузначных чисел =',s); +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/For5.pas b/!Tutorial/06_ForWhileRepeat/For5.pas new file mode 100644 index 0000000..13de718 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/For5.pas @@ -0,0 +1,13 @@ +// Цикл for. Вычисление a в степени n + +begin + var a := ReadlnReal('Введите a:'); + var n := ReadlnInteger('Введите n:'); + + var p := 1.0; + for var i:=1 to n do + p *= a; + Println($'{a} в степени {n} = {p}'); + + Println($'Стандартная операция {a} ** {n} = {a ** n}'); +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/For6.pas b/!Tutorial/06_ForWhileRepeat/For6.pas new file mode 100644 index 0000000..3290467 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/For6.pas @@ -0,0 +1,15 @@ +// Цикл for. Таблица функции +var + a: real := 0; + b: real := 4; + n: integer := 16; + +begin + var h := (b-a)/n; + var x := a; + for var i:=0 to n do + begin + WritelnFormat('{0:f2} {1:f4}',x,sqrt(x)); + x += h; + end; +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/For7.pas b/!Tutorial/06_ForWhileRepeat/For7.pas new file mode 100644 index 0000000..fdee8f3 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/For7.pas @@ -0,0 +1,17 @@ +// for. +const n = 25; + +begin + var a := 1; + var b := 1; + writeln(' :'); + write(a,' ',b,' '); + + for var i:=3 to n do + begin + var c := a + b; + write(c,' '); + a := b; + b := c; + end; +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/For8.pas b/!Tutorial/06_ForWhileRepeat/For8.pas new file mode 100644 index 0000000..5167640 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/For8.pas @@ -0,0 +1,17 @@ +// Цикл for. Максимум из введенных чисел +const n = 10; + +var max: real; + +begin + writelnFormat('Введите {0} чисел',n); + max := integer.MinValue; // самое маленькое целое число + for var i:=1 to n do + begin + var x: real; + read(x); + if x>max then + max := x; + end; + writeln('Максимальное равно ',max); +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/For9.pas b/!Tutorial/06_ForWhileRepeat/For9.pas new file mode 100644 index 0000000..7ca1357 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/For9.pas @@ -0,0 +1,26 @@ +// Цикл for. Поиск значения. Оператор break +const n = 10; + +var + k: integer; + found: boolean; + +begin + writeln('Введите число для поиска: '); + readln(k); + writelnFormat('Введите {0} чисел',n); + found := False; + for var i:=1 to n do + begin + var x: integer; + read(x); + if x=k then + begin + found := True; + break; + end; + end; + if found then + writeln('Найдено') + else writeln('Не найдено'); +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/ForFor1.pas b/!Tutorial/06_ForWhileRepeat/ForFor1.pas new file mode 100644 index 0000000..c6f2b13 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/ForFor1.pas @@ -0,0 +1,12 @@ +// Вложенные циклы for. Таблица умножения +const n = 9; + +begin + writeln('Таблица умножения'); + for var i:=1 to n do + begin + for var j:=1 to n do + write(i*j:4); + writeln; + end; +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/ForFor2.pas b/!Tutorial/06_ForWhileRepeat/ForFor2.pas new file mode 100644 index 0000000..002e2d5 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/ForFor2.pas @@ -0,0 +1,20 @@ +// Вложенные циклы for +const n = 6; + +begin + for var i:=1 to n do + begin + for var j:=1 to i do + write('*'); + writeln; + end; + writeln; + for var i:=1 to n do + begin + for var j:=1 to 3*n do + if Odd(i+j) then + write('*') + else write(' '); + writeln; + end; +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/ForGra1.pas b/!Tutorial/06_ForWhileRepeat/ForGra1.pas new file mode 100644 index 0000000..a702817 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/ForGra1.pas @@ -0,0 +1,16 @@ +// Вложенные циклы for. Сетка из квадртов +uses GraphABC; + +const + sz = 35; + zz = 5; + +begin + var h := sz+zz; + for var nx:=0 to Window.Width div h do + for var ny:=0 to Window.Height div h do + begin + Brush.Color := clRandom; + Rectangle(zz+nx*h,zz+ny*h,zz+nx*h+sz,zz+ny*h+sz); + end; +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/algo1.pas b/!Tutorial/06_ForWhileRepeat/algo1.pas new file mode 100644 index 0000000..804e656 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/algo1.pas @@ -0,0 +1,21 @@ +// Алгоритм определения простоты числа +var + N: integer; + IsPrime: boolean; + +begin + writeln('Введите число: '); + readln(N); + + IsPrime := True; + for var i:=2 to round(sqrt(N)) do // если число составное, то один из его сомножителей <= (sqrt(N)) + if N mod i = 0 then + begin + IsPrime := False; + break; + end; + + if IsPrime then + writeln('Число ',N,' простое') + else writeln('Число ',N,' составное'); +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/algo2.pas b/!Tutorial/06_ForWhileRepeat/algo2.pas new file mode 100644 index 0000000..1d02bcd --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/algo2.pas @@ -0,0 +1,21 @@ +// Алгоритм вычисления значения многочлена в точке x по схеме Горнера +const n=5; + +var + x,a: real; + +begin + writeln('Введите значение x: '); + readln(x); + + writeln('Введите коэффициенты многочлена (',n+1,' штук): '); + read(a); + var s := a; + for var i:=1 to n do + begin + read(a); + s := s*x + a; + end; + + writeln('Значение многочлена в точке ',x,' равно ',s); +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/repeat1.pas b/!Tutorial/06_ForWhileRepeat/repeat1.pas new file mode 100644 index 0000000..6621f57 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/repeat1.pas @@ -0,0 +1,12 @@ +// Цикл repeat. Контроль ввода +var mark: integer; + +begin + repeat + writeln('Введите оценку (2..5): '); + readln(mark); + if (mark<2) or (mark>5) then + writeln('Оценка неверная. Повторите ввод'); + until (mark>=2) and (mark<=5); + writeln('Вы ввели оценку ',mark); +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/repeat2.pas b/!Tutorial/06_ForWhileRepeat/repeat2.pas new file mode 100644 index 0000000..da416f8 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/repeat2.pas @@ -0,0 +1,13 @@ +// Цикл repeat. Алгоритм Евклида нахождения наибольшего общего делителя +var A,B: integer; + +begin + write('Введите два целых числа: '); + readln(A,B); + repeat + var C := A mod B; + A := B; + B := C; + until B=0; + write('Наибольший общий делитель = ',A); +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/while1.pas b/!Tutorial/06_ForWhileRepeat/while1.pas new file mode 100644 index 0000000..bf8f623 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/while1.pas @@ -0,0 +1,12 @@ +// Цикл while. Вывод чисел с шагом 3 +const n = 60; + +begin + writeln('Числа от 1 до ',n,', кратные 3'); + var x := 3; + while x<=n do + begin + write(x,' '); + x += 3; + end; +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/while2.pas b/!Tutorial/06_ForWhileRepeat/while2.pas new file mode 100644 index 0000000..ff99964 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/while2.pas @@ -0,0 +1,12 @@ +// Цикл while. Степени 2 +begin + writeln('Степени 2'); + var i := 1; + var p := 1; + while i<32 do + begin + writeln(i:2,p:12); + i += 1; + p *= 2; + end; +end. \ No newline at end of file diff --git a/!Tutorial/06_ForWhileRepeat/while3.pas b/!Tutorial/06_ForWhileRepeat/while3.pas new file mode 100644 index 0000000..6840652 --- /dev/null +++ b/!Tutorial/06_ForWhileRepeat/while3.pas @@ -0,0 +1,18 @@ +// Цикл while. Сумма цифр положительного числа + +begin + var m := ReadlnInteger('Введите положительное число: '); + + Print('Цифры числа в обратном порядке:'); + var s := 0; + while m>0 do + begin + var digit := m mod 10; + Print(digit); + s += digit; + m := m div 10; + end; + + Println; + Println('Сумма цифр =',s); +end. \ No newline at end of file diff --git a/!Tutorial/07_CharString/Char1.pas b/!Tutorial/07_CharString/Char1.pas new file mode 100644 index 0000000..0093f51 --- /dev/null +++ b/!Tutorial/07_CharString/Char1.pas @@ -0,0 +1,13 @@ +// Стандартные функции Ord Chr +var + i: integer; + c: char; + +begin + c := 'z'; + i := Ord(c); + writelnFormat('Код символа {0} в кодировке Windows равен {1}',c,i); + i := 193; + c := Chr(i); + writelnFormat('Символ с кодом {0} в кодировке Windows - это {1}',i,c); +end. \ No newline at end of file diff --git a/!Tutorial/07_CharString/Char2.pas b/!Tutorial/07_CharString/Char2.pas new file mode 100644 index 0000000..d89fd87 --- /dev/null +++ b/!Tutorial/07_CharString/Char2.pas @@ -0,0 +1,13 @@ +// Стандартные функции OrdUnicode ChrUnicode +var + i: integer; + c: char; + +begin + c := 'Д'; + i := OrdUnicode(c); + writelnFormat('Код символа {0} в кодировке Unicode равен {1}',c,i); + i := 1046; + c := ChrUnicode(i); + writelnFormat('Символ с кодом {0} в кодировке Unicode - это {1}',i,c); +end. \ No newline at end of file diff --git a/!Tutorial/07_CharString/Char3.pas b/!Tutorial/07_CharString/Char3.pas new file mode 100644 index 0000000..25dd827 --- /dev/null +++ b/!Tutorial/07_CharString/Char3.pas @@ -0,0 +1,9 @@ +// Стандартные функции UpperCase LowerCase +var c: char; + +begin + c := 'д'; + writelnFormat('Символ {0} в верхнем регистре: {1}',c,UpperCase(c)); + c := 'F'; + writelnFormat('Символ {0} в нижнем регистре: {1}',c,LowerCase(c)); +end. \ No newline at end of file diff --git a/!Tutorial/07_CharString/CharTable.pas b/!Tutorial/07_CharString/CharTable.pas new file mode 100644 index 0000000..220cb62 --- /dev/null +++ b/!Tutorial/07_CharString/CharTable.pas @@ -0,0 +1,8 @@ +// Таблица символов и их кодов +begin + for var i:=32 to 255 do + begin + write(i:4,chr(i):2,' '); + if i mod 8 = 7 then writeln; + end; +end. diff --git a/!Tutorial/07_CharString/String1.pas b/!Tutorial/07_CharString/String1.pas new file mode 100644 index 0000000..d678534 --- /dev/null +++ b/!Tutorial/07_CharString/String1.pas @@ -0,0 +1,12 @@ +// Строки. Операция + и оператор +=. Доступ по индексу + +var s: string := 'Pascal'; + +begin + writeln(s); + s := s + '.'; + writeln(s); + s += 'NET'; + writeln(s); + writeln(s[1],' ',s[2],' ',s[3],' ',s[4],' ',s[5],' ',s[6]); +end. \ No newline at end of file diff --git a/!Tutorial/07_CharString/String2.pas b/!Tutorial/07_CharString/String2.pas new file mode 100644 index 0000000..a2a26c7 --- /dev/null +++ b/!Tutorial/07_CharString/String2.pas @@ -0,0 +1,14 @@ +// Строки. Процедура SetLength, функция Length и свойство Length + +var s: string; + +begin + writeln('Length(s) = ',Length(s)); + SetLength(s,3); + s[1] := 'N'; + s[2] := 'E'; + s[3] := 'T'; + writeln(s,' Length(s) = ',Length(s)); + for var i:= 1 to s.Length do + write(s[i],' '); +end. \ No newline at end of file diff --git a/!Tutorial/07_CharString/String3.pas b/!Tutorial/07_CharString/String3.pas new file mode 100644 index 0000000..5a2a97b --- /dev/null +++ b/!Tutorial/07_CharString/String3.pas @@ -0,0 +1,12 @@ +// Строки. Строка может иметь произвольную длину +var s: string; + +begin + s := 'abcdefghijklmnopqrstuvwxyz'; + s := s + Uppercase(s); + s += s; + s += s; + s += s; + writeln('Длина строки = ',s.Length); + writeln('Cтрока: ',s); +end. \ No newline at end of file diff --git a/!Tutorial/07_CharString/String4.pas b/!Tutorial/07_CharString/String4.pas new file mode 100644 index 0000000..7c765fc --- /dev/null +++ b/!Tutorial/07_CharString/String4.pas @@ -0,0 +1,12 @@ +// Строки фиксированной длины. Длина не может быть больше 255 +var + s: string[9]; + s1: shortstring; // shortstring = string[255] + slong: string; + +begin + slong := 'PascalABC.NET'; + writeln('Cтрока произвольной длины: ',slong); + s := slong; + writeln('Cтрока фиксированной длины обрезается: ',s); +end. \ No newline at end of file diff --git a/!Tutorial/07_CharString/String5.pas b/!Tutorial/07_CharString/String5.pas new file mode 100644 index 0000000..e4e6675 --- /dev/null +++ b/!Tutorial/07_CharString/String5.pas @@ -0,0 +1,18 @@ +// Строки. Стандартные подпрограммы работы со строками +var + s: string := ' Pascal__NET '; + s1: string := 'NET'; + +begin + writeln('Исходная строка: ''',s,''''); + s := Trim(s); + writeln('После вызова функции Trim: ''',s,''''); + var p := Pos(s1,s); + writelnFormat('Позиция подстроки ''{0}'' в строке ''{1}'' равна {2}',s1,s,p); + Delete(s,7,2); + writeln('После удаления символов __: ',s); + Insert('ABC.',s,7); + writeln('После вставки подстроки ''ABC.'': ',s); + writeln('Первая часть строки: ',Copy(s,1,9)); + writeln('Последняя часть строки: ',Copy(s,11,3)); +end. \ No newline at end of file diff --git a/!Tutorial/07_CharString/String6.pas b/!Tutorial/07_CharString/String6.pas new file mode 100644 index 0000000..609eb82 --- /dev/null +++ b/!Tutorial/07_CharString/String6.pas @@ -0,0 +1,18 @@ +// Строки. Методы класса string +var + s: string := ' Pascal__NET '; + s1: string := 'NET'; + +begin + writeln('Исходная строка: ''',s,''''); + s := s.Trim; + writeln('После вызова s.Trim: ''',s,''''); + var p := s.IndexOf(s1); // Индексация - с нуля + writelnFormat('Позиция подстроки ''{0}'' в строке ''{1}'' равна {2}',s1,s,p); + s := s.Remove(6,2); + writeln('После удаления символов __: ',s); + s := s.Insert(6,'ABC.'); + writeln('После вставки подстроки ''ABC.'': ',s); + writeln('Первая часть строки: ',s.Substring(0,9)); + writeln('Последняя часть строки: ',s.Substring(10,3)); +end. \ No newline at end of file diff --git a/!Tutorial/07_CharString/StringInteger1.pas b/!Tutorial/07_CharString/StringInteger1.pas new file mode 100644 index 0000000..484f912 --- /dev/null +++ b/!Tutorial/07_CharString/StringInteger1.pas @@ -0,0 +1,16 @@ +// Преобразование целое <-> строка +var + s: string; + i: integer; + +begin + // Преобразование целого в строку + i := 234; + s := IntToStr(i); + writelnFormat('Целое: {0}. После преобразования к строке: ''{1}''',i,s); + + // Преобразование строки в целое (может произойти исключение) + s := '567'; + i := StrToInt(s); + writelnFormat('Строка: ''{0}''. После преобразования к целому: {1}',s,i); +end. \ No newline at end of file diff --git a/!Tutorial/07_CharString/StringInteger2.pas b/!Tutorial/07_CharString/StringInteger2.pas new file mode 100644 index 0000000..5dfe155 --- /dev/null +++ b/!Tutorial/07_CharString/StringInteger2.pas @@ -0,0 +1,18 @@ +// Преобразование целое <-> строка в старом стиле (Val и Str) +var + s: string; + i: integer; + +begin + // Преобразование целого в строку + i := 234; + Str(i,s); + writelnFormat('Целое: {0}. После преобразования к строке: ''{1}''',i,s); + + // Преобразование строки в целое + s := '567'; + var err: integer; + Val(s,i,err); + if err=0 then + writelnFormat('Строка: ''{0}''. После преобразования к целому: {1}',s,i); +end. \ No newline at end of file diff --git a/!Tutorial/07_CharString/StringInteger3.pas b/!Tutorial/07_CharString/StringInteger3.pas new file mode 100644 index 0000000..ce86a50 --- /dev/null +++ b/!Tutorial/07_CharString/StringInteger3.pas @@ -0,0 +1,16 @@ +// Преобразование целое <-> строка в новом стиле +var + s: string; + i: integer; + +begin + // Преобразование целого в строку + i := 234; + s := i.ToString; + writelnFormat('Целое: {0}. После преобразования к строке: ''{1}''',i,s); + + // Преобразование строки в целое + s := '567'; + if integer.TryParse(s,i) then + writelnFormat('Строка: ''{0}''. После преобразования к целому: {1}',s,i); +end. \ No newline at end of file diff --git a/!Tutorial/07_CharString/StringReal1.pas b/!Tutorial/07_CharString/StringReal1.pas new file mode 100644 index 0000000..4b1037b --- /dev/null +++ b/!Tutorial/07_CharString/StringReal1.pas @@ -0,0 +1,16 @@ +// Преобразование вещественное <-> строка +var + s: string; + r: real; + +begin + // Преобразование целого в строку + r := 3.1415; + s := FloatToStr(r); + writelnFormat('Целое: {0}. После преобразования к строке: ''{1}''',r,s); + + // Преобразование строки в целое (может произойти исключение) + s := '3.1415'; + r := StrToFloat(s); + writelnFormat('Строка: ''{0}''. После преобразования к целому: {1}',s,r); +end. \ No newline at end of file diff --git a/!Tutorial/07_CharString/UpLowCase.pas b/!Tutorial/07_CharString/UpLowCase.pas new file mode 100644 index 0000000..2c73035 --- /dev/null +++ b/!Tutorial/07_CharString/UpLowCase.pas @@ -0,0 +1,22 @@ +// Использование стандартных функций UpperCase, LowerCase +var c: char; + +begin + for c:='a' to 'z' do + write(UpperCase(c)); + writeln; + for c:='A' to 'Z' do + write(LowerCase(c)); + writeln; + for c:='А' to 'Я' do + write(UpperCase(c)); + writeln; + for c:='а' to 'я' do + write(LowerCase(c)); + writeln; + var s := 'Папа у Васи силён в математике'; + s := UpperCase(s); + writeln(s); + s := LowerCase(s); + writeln(s); +end. diff --git a/!Tutorial/08_ProcFunc/Fun1.pas b/!Tutorial/08_ProcFunc/Fun1.pas new file mode 100644 index 0000000..9aeffb0 --- /dev/null +++ b/!Tutorial/08_ProcFunc/Fun1.pas @@ -0,0 +1,22 @@ +// Определение функции. Вывод таблицы ее значений + +function MyFun(x: real): real; +begin + Result := x*sin(x); +end; + +const + a = 0.0; + b = 2*Pi; + n = 10; + +begin + var h := (b-a)/n; + var x := a; + writeln('Таблица значений функции MyFun:'); + for var i := 0 to n do + begin + writeln(x:5:2,MyFun(x):10:4); + x += h; + end; +end. \ No newline at end of file diff --git a/!Tutorial/08_ProcFunc/Fun2.pas b/!Tutorial/08_ProcFunc/Fun2.pas new file mode 100644 index 0000000..4994822 --- /dev/null +++ b/!Tutorial/08_ProcFunc/Fun2.pas @@ -0,0 +1,17 @@ +// Функция Power + +function Power(x: real; n: integer): real; +begin + Result := 1; + for var i:=1 to n do + Result *= x; +end; + +var + x: real; + n: integer; + +begin + x := 2; n := 5; + writelnFormat('{0} в степени {1} = {2}',x,n,Power(x,n)); +end. \ No newline at end of file diff --git a/!Tutorial/08_ProcFunc/Proc1.pas b/!Tutorial/08_ProcFunc/Proc1.pas new file mode 100644 index 0000000..95f40b8 --- /dev/null +++ b/!Tutorial/08_ProcFunc/Proc1.pas @@ -0,0 +1,17 @@ +// Параметры процедур + +procedure Operations(a,b: integer); +begin + writeln(a,' + ',b,' = ',a+b); + writeln(a,' - ',b,' = ',a-b); + writeln(a,' * ',b,' = ',a*b); + writeln(a,' / ',b,' = ',a/b); + writeln(a,' div ',b,' = ',a div b); + writeln(a,' mod ',b,' = ',a mod b); +end; + +begin + Operations(5,3); + writeln; + Operations(7,4); +end. \ No newline at end of file diff --git a/!Tutorial/08_ProcFunc/Proc2.pas b/!Tutorial/08_ProcFunc/Proc2.pas new file mode 100644 index 0000000..c629366 --- /dev/null +++ b/!Tutorial/08_ProcFunc/Proc2.pas @@ -0,0 +1,22 @@ +// Параметры-переменные + +procedure DivMod(a,b: integer; var d,m: integer); +begin + d := a div b; + m := a mod b; +end; + +var + a,b: integer; + d,m: integer; + +begin + a := 7; + b := 3; + DivMod(a,b,d,m); + writelnFormat('{0} div {1} = {2}; {0} mod {1} = {3}',a,b,d,m); + a := 23; + b := 5; + DivMod(a,b,d,m); + writelnFormat('{0} div {1} = {2}; {0} mod {1} = {3}',a,b,d,m); +end. \ No newline at end of file diff --git a/!Tutorial/08_ProcFunc/Proc3.pas b/!Tutorial/08_ProcFunc/Proc3.pas new file mode 100644 index 0000000..ccbdb03 --- /dev/null +++ b/!Tutorial/08_ProcFunc/Proc3.pas @@ -0,0 +1,26 @@ +// Упаковка параметров в запись +uses GraphABC; + +type + Point = record + x,y: integer; + constructor (xx,yy: integer); + begin + x := xx; + y := yy; + end; + end; + +procedure Line(p1,p2: Point); +begin + GraphABC.Line(p1.x,p1.y,p2.x,p2.y); +end; + +begin + var p1 := new Point(10,10); + var p2 := new Point(10,210); + var p3 := new Point(210,10); + Line(p1,p2); + Line(p2,p3); + Line(p3,p1); +end. \ No newline at end of file diff --git a/!Tutorial/09_Arrays/DynArr1.pas b/!Tutorial/09_Arrays/DynArr1.pas new file mode 100644 index 0000000..3fc2eaf --- /dev/null +++ b/!Tutorial/09_Arrays/DynArr1.pas @@ -0,0 +1,14 @@ +// Использование динамического массива. +// Процедура SetLength выделения памяти под динамический массив +// Оператор foreach (массив доступен только на чтение) +var a: array of integer; + +begin + var n := 20; + SetLength(a,n); + for var i:=0 to a.Length-1 do + a[i] := Random(1,99); + writeln('Содержимое случайного динамического массива целых: '); + foreach var x in a do + Print(x); +end. \ No newline at end of file diff --git a/!Tutorial/09_Arrays/DynArr2.pas b/!Tutorial/09_Arrays/DynArr2.pas new file mode 100644 index 0000000..b5e877d --- /dev/null +++ b/!Tutorial/09_Arrays/DynArr2.pas @@ -0,0 +1,17 @@ +// Использование динамического массива. +var a: array of integer; + +begin + writeln('При присваивании динамических массивов две переменные начинают указывать на одну память:'); + var n := 20; + a := new integer[n]; // Другой способ выделения памяти + for var i:=0 to a.Length-1 do + a[i] := i; + + writeln('До присваивания b[5]: a[5]=',a[5]); + + var b: array of integer; + b := a; + b[5] := 666; + writeln('После присваивания b[5]: a[5]=',a[5]); +end. \ No newline at end of file diff --git a/!Tutorial/09_Arrays/DynArr3.pas b/!Tutorial/09_Arrays/DynArr3.pas new file mode 100644 index 0000000..8c7e97b --- /dev/null +++ b/!Tutorial/09_Arrays/DynArr3.pas @@ -0,0 +1,13 @@ +// Использование динамического массива. +var a: array of integer; + +begin + writeln('SetLength при повторном вызове не портит старые элементы:'); + SetLength(a,5); + for var i:=0 to a.Length-1 do + a[i] := i+1; + a.Println; + + SetLength(a,10); + a.Println; +end. \ No newline at end of file diff --git a/!Tutorial/09_Arrays/DynArr4.pas b/!Tutorial/09_Arrays/DynArr4.pas new file mode 100644 index 0000000..47fb8c9 --- /dev/null +++ b/!Tutorial/09_Arrays/DynArr4.pas @@ -0,0 +1,23 @@ +// Передача динамического массива в качестве параметра + +procedure WriteArr(a: array of integer); // var указывать не нужно, т.к. динамический массив является ссылкой на реальный объект +begin + foreach x: integer in a do + write(x,' '); + writeln; +end; + +procedure CreateRandomArr(var a: array of integer; n: integer); // var указывать нужно, т.к. в процедуре создается новый динамический массив +begin + a := new integer[n]; + for var i:=0 to a.Length-1 do + a[i] := Random(10); +end; + +var a: array of integer; + +begin + writeln('Случайный целый массив: '); + CreateRandomArr(a,30); + WriteArr(a); +end. \ No newline at end of file diff --git a/!Tutorial/09_Arrays/DynArrErr1.pas b/!Tutorial/09_Arrays/DynArrErr1.pas new file mode 100644 index 0000000..f8e2d51 --- /dev/null +++ b/!Tutorial/09_Arrays/DynArrErr1.pas @@ -0,0 +1,6 @@ +// Ошибка невыделения памяти для динамического массива +var a: array of integer; + +begin + a[0] := 666; +end. \ No newline at end of file diff --git a/!Tutorial/09_Arrays/DynArrErr2.pas b/!Tutorial/09_Arrays/DynArrErr2.pas new file mode 100644 index 0000000..cd1da4b --- /dev/null +++ b/!Tutorial/09_Arrays/DynArrErr2.pas @@ -0,0 +1,7 @@ +// Ошибка выхода за границы диапазона для динамического массива +var a: array of integer; + +begin + SetLength(a,10); + a[10] := 666; +end. \ No newline at end of file diff --git a/!Tutorial/09_Arrays/SortByChoice.pas b/!Tutorial/09_Arrays/SortByChoice.pas new file mode 100644 index 0000000..a0f618c --- /dev/null +++ b/!Tutorial/09_Arrays/SortByChoice.pas @@ -0,0 +1,42 @@ +// Сортировка выбором +procedure SortByChoice(a: array of real); +begin + for var i:=0 to a.Length-2 do + begin + var min := a[i]; + var ind := i; + for var j:=i+1 to a.Length-1 do + if a[j]0 then + writeln('Индекс первого элемента 7 равен ', ind) + else writeln('Элемент 7 отсутствует'); +end. \ No newline at end of file diff --git a/!Tutorial/09_Units/UnitInitFin/MainInitFinDemo.pas b/!Tutorial/09_Units/UnitInitFin/MainInitFinDemo.pas new file mode 100644 index 0000000..fb2a6d4 --- /dev/null +++ b/!Tutorial/09_Units/UnitInitFin/MainInitFinDemo.pas @@ -0,0 +1,7 @@ +// Демонстрация секций инициализации и финализации модулей +// Откройте модуль MyUnit, нажав на имени модуля правой мышью и выбрав пункт "Перейти к определению" +uses MyUnit; + +begin + writeln('Основная программа') +end. diff --git a/!Tutorial/09_Units/UnitInitFin/MyUnit.pas b/!Tutorial/09_Units/UnitInitFin/MyUnit.pas new file mode 100644 index 0000000..1887dbc --- /dev/null +++ b/!Tutorial/09_Units/UnitInitFin/MyUnit.pas @@ -0,0 +1,7 @@ +unit MyUnit; + +initialization + writeln('Секция инициализации. Выполняется до начала основной программы') +finalization + writeln('Секция финализации. Выполняется после окончания основной программы') +end. diff --git a/!Tutorial/09_Units/UnitNames/MainSameNames.pas b/!Tutorial/09_Units/UnitNames/MainSameNames.pas new file mode 100644 index 0000000..4f881ad --- /dev/null +++ b/!Tutorial/09_Units/UnitNames/MainSameNames.pas @@ -0,0 +1,7 @@ +// Алгоритм поиска имен в модулях +uses MyA,MyB; // Имена вначале ищутся в основной программе, а затем в модулях в порядке справа налево + +begin + p; // Вызывается MyB.p + MyA.p; // Если надо вызвать MyA.p, следует использовать имя p, уточненное именем модуля +end. diff --git a/!Tutorial/09_Units/UnitNames/MyA.pas b/!Tutorial/09_Units/UnitNames/MyA.pas new file mode 100644 index 0000000..7c8a67a --- /dev/null +++ b/!Tutorial/09_Units/UnitNames/MyA.pas @@ -0,0 +1,10 @@ +unit MyA; + +procedure p; +begin + writeln('MyA.p'); +end; + +begin + +end. diff --git a/!Tutorial/09_Units/UnitNames/MyB.pas b/!Tutorial/09_Units/UnitNames/MyB.pas new file mode 100644 index 0000000..a33cebb --- /dev/null +++ b/!Tutorial/09_Units/UnitNames/MyB.pas @@ -0,0 +1,10 @@ +unit MyB; + +procedure p; +begin + writeln('MyB.p'); +end; + +begin + +end. diff --git a/!Tutorial/09_Units/UnitStructure/MainProgram.pas b/!Tutorial/09_Units/UnitStructure/MainProgram.pas new file mode 100644 index 0000000..09db6bf --- /dev/null +++ b/!Tutorial/09_Units/UnitStructure/MainProgram.pas @@ -0,0 +1,13 @@ +uses MyUnit; // подключили модуль + +const Sz = 10; + +var a: IntArr; + +begin + Assert(sz<=Size,'Размер массива должен быть <='+Size.ToString); + FillArr(a,Sz); + writeln('Содержимое массива: '); + WriteArr(a,Sz); + writeln('Минимальный элемент: ',Min(a,Sz)); +end. diff --git a/!Tutorial/09_Units/UnitStructure/MyUnit.pas b/!Tutorial/09_Units/UnitStructure/MyUnit.pas new file mode 100644 index 0000000..87c1433 --- /dev/null +++ b/!Tutorial/09_Units/UnitStructure/MyUnit.pas @@ -0,0 +1,35 @@ +/// Модуль упрощенной структуры +unit MyUnit; // имя модуля должно совпадать с именем файла + +const Size = 100; + +type IntArr = array [1..Size] of integer; + +var Delimiter: string := ' '; + +// Документирующие комментарии отображаются при наведении на имя курсора мыши +/// Заполняет массив случайными числами +procedure FillArr(var a: IntArr; n: integer); +begin + for var i:=1 to n do + a[i] := Random(100); +end; + +/// Выводит массив +procedure WriteArr(const a: IntArr; n: integer); +begin + for var i:=1 to n do + write(a[i],Delimiter); + writeln; +end; + +/// Возвращает минимальный элемент в массиве +function Min(const a: IntArr; n: integer): integer; +begin + Result := a[1]; + for var i:=1 to n do + if Result>a[i] then + Result := a[i]; +end; + +end. diff --git a/!Tutorial/10_Matrices/Matr1.pas b/!Tutorial/10_Matrices/Matr1.pas new file mode 100644 index 0000000..9033bd4 --- /dev/null +++ b/!Tutorial/10_Matrices/Matr1.pas @@ -0,0 +1,40 @@ +// Поиск значения в случайной матрице. Использование оператора goto +const + sz = 10; + m = 4; + n = 5; + +type Matrix = array [1..sz,1..sz] of integer; + +label 1; + +var matr: Matrix; + +begin + // Заполнение матрицы m x n случайными числами + for var i := 1 to m do + for var j := 1 to n do + matr[i,j] := Random(100); + + // Вывод матрицы + for var i := 1 to m do + begin + for var j := 1 to n do + write(matr[i,j]:3); + writeln; + end; + + // Есть ли в матрице элемент 5? + var found5 := False; + for var i := 1 to m do + for var j := 1 to n do + if matr[i,j]=5 then + begin + found5 := True; + goto 1; // Ай как нехорошо! Но это лучший способ выхода из двух вложенных циклов сразу + end; +1: + if found5 then + writeln('Элемент 5 найден') + else writeln('Элемент 5 не найден') +end. \ No newline at end of file diff --git a/!Tutorial/10_Matrices/Matr2.pas b/!Tutorial/10_Matrices/Matr2.pas new file mode 100644 index 0000000..42df846 --- /dev/null +++ b/!Tutorial/10_Matrices/Matr2.pas @@ -0,0 +1,37 @@ +// Матрица как динамический массив массивов +type Matrix = array of array of integer; + +function CreateMatrix(m,n: integer): Matrix; +begin + SetLength(Result,m); + for var i:=0 to m-1 do + SetLength(Result[i],n); +end; + +procedure FillMatrByRandom(matr: Matrix); +begin + for var i:=0 to matr.Length-1 do + for var j:=0 to matr[0].Length-1 do + matr[i][j] := Random(100); +end; + +procedure WriteMatrix(matr: Matrix); +begin + for var i := 0 to matr.Length-1 do + begin + for var j := 0 to matr[0].Length-1 do + write(matr[i,j]:3); + writeln; + end; +end; + +var matr: Matrix; + +begin + var m := 5; + var n := 7; + matr := CreateMatrix(m,n); + + FillMatrByRandom(matr); + WriteMatrix(matr); +end. \ No newline at end of file diff --git a/!Tutorial/11_Enums/Enum1.pas b/!Tutorial/11_Enums/Enum1.pas new file mode 100644 index 0000000..db92312 --- /dev/null +++ b/!Tutorial/11_Enums/Enum1.pas @@ -0,0 +1,25 @@ +// Перечислимый тип +type Months = (January,February,March,April,May,June,July,August,September,October,November,December); + +var m: Months; + +begin + m := February; + writeln(m); + // Использование констант перечислимого типа после имени типа удобно: после точки intellisense показывает список констант + m := Months.April; + writeln('Следующий месяц: ',m); + Inc(m); + writeln('Следующий месяц: ',m); + m := Succ(m); + writeln('Следующий месяц: ',m); + m := Pred(m); + writeln('Предыдующий месяц: ',m); + Dec(m); + writeln('Предыдующий месяц: ',m); + writeln('Его порядковый номер (нумерация - с нуля): ',Ord(m)); + // Ошибки нет + writeln('Месяц перед январем - выход за границы: ',pred(Months.January)); + // Ошибки нет + writeln('Месяц после декабря - выход за границы: ',succ(Months.December)); +end. \ No newline at end of file diff --git a/!Tutorial/11_Enums/Enum2.pas b/!Tutorial/11_Enums/Enum2.pas new file mode 100644 index 0000000..77eef43 --- /dev/null +++ b/!Tutorial/11_Enums/Enum2.pas @@ -0,0 +1,22 @@ +// ѕеречислимый тип +uses System; + +type Months = (January,February,March,April,May,June,July,August,September,October,November,December); + +begin + var t: &Type := typeof(Months); + var names: array of string := Enum.GetNames(t); + writeln('÷икл по именам перечислимого типа'); + foreach name: string in names do + write(name,' '); + writeln; writeln; + + var v: &Array := Enum.GetValues(t); + var mm: array of Months := new Months[v.Length]; + writeln('÷икл по массиву всех значений перечислимого типа'); + for var i:=0 to v.Length-1 do + mm[i] := Months(v.GetValue(i)); + + for var i:=0 to mm.Length-1 do + write(mm[i],' '); +end. \ No newline at end of file diff --git a/!Tutorial/12_Files/File1.pas b/!Tutorial/12_Files/File1.pas new file mode 100644 index 0000000..8eb6269 --- /dev/null +++ b/!Tutorial/12_Files/File1.pas @@ -0,0 +1,35 @@ +// Типизированные файлы +// Запись в файл 10 чисел, при следующем запуске - чтение этих чисел и удаление файла +const filename = 'a.dat'; + +var f: file of integer; + +begin + if not FileExists(filename) then + begin + assign(f,filename); + rewrite(f); + writeln('Запись в файл ',filename); + for var i:=1 to 10 do + begin + var x := random(100); + write(x,' '); + write(f,x); + end; + close(f); + end + else + begin + assign(f,filename); + reset(f); + writeln('Чтение из файла ',filename); + for var i:=1 to 10 do + begin + var x: integer; + read(f,x); + write(x,' '); + end; + close(f); + erase(f); + end; +end. \ No newline at end of file diff --git a/!Tutorial/12_Files/Text1.pas b/!Tutorial/12_Files/Text1.pas new file mode 100644 index 0000000..72b9418 --- /dev/null +++ b/!Tutorial/12_Files/Text1.pas @@ -0,0 +1,15 @@ +// Программа, выводящая текст из своего файла +var + f: Text; + +begin + assign(f,'Text1.pas'); + reset(f); + while not eof(f) do + begin + var s: string; + readln(f,s); + writeln(s); + end; + close(f); +end. \ No newline at end of file diff --git a/!Tutorial/12_Files/Text2.pas b/!Tutorial/12_Files/Text2.pas new file mode 100644 index 0000000..cd46adb --- /dev/null +++ b/!Tutorial/12_Files/Text2.pas @@ -0,0 +1,13 @@ +// Программа, выводящая текст в файл a.txt +var + f: Text; + a: array of string := ('Каждый','охотник','желает','знать','где','сидит','фазан'); + +begin + assign(f,'a.txt'); + rewrite(f); + for var i:=0 to a.Length-1 do + writeln(f,a[i]); + close(f); + writeln('Текст записан в файл a.txt'); +end. \ No newline at end of file diff --git a/!Tutorial/12_Files/Text3.pas b/!Tutorial/12_Files/Text3.pas new file mode 100644 index 0000000..31daacb --- /dev/null +++ b/!Tutorial/12_Files/Text3.pas @@ -0,0 +1,19 @@ +// Программа, выводящая текст в файл a.txt +const + n = 30; + filename = 'pifagor.txt'; + +var f: Text; + +begin + assign(f,filename); + rewrite(f); + for var i:=1 to n do + begin + for var j:=1 to n do + write(f,i*j:4); + writeln(f); + end; + close(f); + writeln('Таблица умножения записана в файл '+filename); +end. \ No newline at end of file diff --git a/!Tutorial/12_Files/Untyped1.pas b/!Tutorial/12_Files/Untyped1.pas new file mode 100644 index 0000000..7c932dd --- /dev/null +++ b/!Tutorial/12_Files/Untyped1.pas @@ -0,0 +1,52 @@ +// Нетипизированные файлы +// Запись в файл 10 чисел, при следующем запуске - чтение этих чисел и удаление файла +const filename = 'u.dat'; + +var + f: file; + r: real; + s: string[10]; + k: integer; + c: char; + +begin + if not FileExists(filename) then + begin + assign(f,filename); + rewrite(f); + writeln('Запись в файл ',filename); + + r := random*10; + for var i:=0 to 10 do + s := s + Chr(Ord('A')+Random(26)); + c := Chr(Ord('A')+Random(26)); + k := Random(100); + + writeln(r); +// writeln(s); + writeln(c); + writeln(k); + // Запись в файл данных разных типов + write(f,r); +// writeln(f,s); + write(f,c); + write(f,k); + close(f); + end + else + begin + assign(f,filename); + reset(f); + writeln('Чтение из файла ',filename); + + // Чтение из файла данных разных типов + read(f,r,{s,}c,k); + writeln(r); +// writeln(s); + writeln(c); + writeln(k); + + close(f); + erase(f); + end; +end. \ No newline at end of file diff --git a/!Tutorial/13_Pointers/Pointer1.pas b/!Tutorial/13_Pointers/Pointer1.pas new file mode 100644 index 0000000..3d041c7 --- /dev/null +++ b/!Tutorial/13_Pointers/Pointer1.pas @@ -0,0 +1,16 @@ +// Типизированные указатели +var + i: integer := 5; + j: integer := 3; + p: ^integer; + +begin + writeln('Исходные значения переменных i и j: ',i,' ',j); + p := @i; // в p записывается адрес i, p указывает на i + writeln('По адресу ',p,' находится значение ',p^); // p^ - то, на что указывает p + p^ := 2; + p := @j; + writeln('По адресу ',p,' находится значение ',p^); + p^ += 1; + writeln('Новые значения переменных i и j: ',i,' ',j); +end. \ No newline at end of file diff --git a/!Tutorial/13_Pointers/Pointer2.pas b/!Tutorial/13_Pointers/Pointer2.pas new file mode 100644 index 0000000..f300676 --- /dev/null +++ b/!Tutorial/13_Pointers/Pointer2.pas @@ -0,0 +1,22 @@ +// Бестиповые указатели +// Им можно присваивать любой адрес, но для использования необходимо +// явное приведение к типизированному указателю +var + i: integer := 5; + r: real := 3.14; + p: pointer; + +type + pinteger = ^integer; + preal = ^real; + +begin + writeln('Исходные значения переменных i и r: '); + writeln(i,' ',r); + p := @i; + pinteger(p)^ := 8; + p := @r; + preal(p)^ += 1; + writeln('Новые значения переменных i и r: '); + writeln(i,' ',r); +end. \ No newline at end of file diff --git a/!Tutorial/13_Pointers/Pointer3.pas b/!Tutorial/13_Pointers/Pointer3.pas new file mode 100644 index 0000000..c710089 --- /dev/null +++ b/!Tutorial/13_Pointers/Pointer3.pas @@ -0,0 +1,11 @@ +// Выделение динамической памяти +var p: ^real; + +begin + // Выделили динамическую память и в p записали ее адрес + New(p); + p^ := 3; + writeln('Значение в динамичесской памяти = ',p^); + // Возврат динамической памяти, на оторую указывает p + Dispose(p); +end. \ No newline at end of file diff --git a/!Tutorial/13_Pointers/Pointer4.pas b/!Tutorial/13_Pointers/Pointer4.pas new file mode 100644 index 0000000..0faeeb6 --- /dev/null +++ b/!Tutorial/13_Pointers/Pointer4.pas @@ -0,0 +1,43 @@ +// Выделение динамической памяти +// Использование указателей для создания односвязного списка +type + PNode = ^TNode; + TNode = record + data: integer; + next: PNode; + end; + +function NewNode(d: integer; n: PNode): PNode; +begin + New(Result); + Result^.data := d; + Result^.next := n; +end; + +var first: PNode; + +begin + first := nil; + // Добавляем в начало односвязного списка + first := NewNode(3,first); + first := NewNode(7,first); + first := NewNode(5,first); + + // Вывод односвязного списка + writeln('Содержимое односвязного списка: '); + var p := first; + while p<>nil do + begin + write(p^.data,' '); + p := p^.next; + end; + + // Разрушение односвязного списка + p := first; + while p<>nil do + begin + var p1 := p; + p := p^.next; + Dispose(p1); + end; +end. \ No newline at end of file diff --git a/!Tutorial/13_Pointers/ProcPointer1.pas b/!Tutorial/13_Pointers/ProcPointer1.pas new file mode 100644 index 0000000..2d54f9f --- /dev/null +++ b/!Tutorial/13_Pointers/ProcPointer1.pas @@ -0,0 +1,21 @@ +// Процедурные переменные + +function add(a,b: integer): integer; +begin + Result := a + b; +end; + +function mult(a,b: integer): integer; +begin + Result := a * b; +end; + +var p: function (a,b: integer): integer; + + +begin + p := add; + writeln('Сумма 2 и 3 равна ',p(2,3)); + p := mult; + writeln('Произведение 2 и 3 равно ',p(2,3)); +end. \ No newline at end of file diff --git a/!Tutorial/13_Pointers/ProcPointer2.pas b/!Tutorial/13_Pointers/ProcPointer2.pas new file mode 100644 index 0000000..2ba3554 --- /dev/null +++ b/!Tutorial/13_Pointers/ProcPointer2.pas @@ -0,0 +1,27 @@ +// Процедурная переменная как параметр +procedure for_each(a: array of real; p: procedure(var r: real)); +begin + for var i := 0 to a.Length-1 do + p(a[i]); +end; + +procedure mult2(var r: real); +begin + r := 2*r +end; + +procedure print(var r: real); +begin + write(r,' '); +end; + +var a: array of real := (1,2,3,6,7); + +begin + writeln('Содержимое массива: '); + for_each(a,print); + writeln; + for_each(a,mult2); + writeln('Содержимое массива после умножения его элеметов на 2: '); + for_each(a,print); +end. \ No newline at end of file diff --git a/!Tutorial/13_Pointers/Reference.pas b/!Tutorial/13_Pointers/Reference.pas new file mode 100644 index 0000000..5dd358c --- /dev/null +++ b/!Tutorial/13_Pointers/Reference.pas @@ -0,0 +1,34 @@ +// Использование ссылок вместо указателей для создания односвязного списка +type + Node = class + data: integer; + next: Node; + constructor (d: integer; n: Node); + begin + data := d; + next := n; + end; + end; + +// Переменная типа "класс" представляет собой ссылку на объект, выделяемый конструктором +var first: Node; + +begin + first := nil; + // Добавляем в начало односвязного списка + first := new Node(3,first); + first := new Node(7,first); + first := new Node(5,first); + + // Вывод односвязного списка. ^ отсутствуют + writeln('Содержимое односвязного списка (использование ссылок вместо указателей): '); + var p := first; + while p<>nil do + begin + write(p.data,' '); + p := p.next; + end; + + // Разрушение односвязного списка + first := nil; // Сборщик мусора соберет память, на которую никто больше не указывает +end. \ No newline at end of file diff --git a/!Tutorial/14_Records/Rec1.pas b/!Tutorial/14_Records/Rec1.pas new file mode 100644 index 0000000..5b6b049 --- /dev/null +++ b/!Tutorial/14_Records/Rec1.pas @@ -0,0 +1,35 @@ +type + SexType = (Male, Female); + Person = record + Name: string; + Age, Weight: integer; + Sex: SexType; + end; + +procedure WritePerson(const p: Person); +begin + writelnFormat('Фамилия: {0} Пол: {1} Возраст: {2} Вес: {3}',p.Name,p.Sex,p.Age,p.Weight); +end; + +var + p: Person := (Name: 'Иванов'; Age: 20; Weight: 64; Sex: Male); + p1: Person; +begin + p1 := p; // Присваивание записей + var p2: Person; + p2.Name := 'Петрова'; + p2.Age := 18; + p2.Weight := 50; + p2.Sex := Female; + WritePerson(p2); + + var p3: Person; + with p3 do + begin + Name := 'Сидоров'; + Age := 24; + Weight := 80; + Sex := Male; + end; + WritePerson(p3); +end. \ No newline at end of file diff --git a/!Tutorial/14_Records/Rec2.pas b/!Tutorial/14_Records/Rec2.pas new file mode 100644 index 0000000..e95d97a --- /dev/null +++ b/!Tutorial/14_Records/Rec2.pas @@ -0,0 +1,26 @@ +// Иллюстрация конструкторов и методов в записях +// Если переопределен метод ToString, то он вызывается при выводе объекта этого типа процедурой writeln +type + SexType = (Male, Female); + Person = record + Name: string; + Age, Weight: integer; + Sex: SexType; + constructor (Name: string; Age, Weight: integer; Sex: SexType); + begin + Self.Name := Name; + Self.Age := Age; + Self.Sex := Sex; + Self.Weight := Weight; + end; + function ToString: string; override; + begin + Result := Format('Имя: {0} Пол: {1} Возраст: {2} Вес: {3}', Name, Sex, Age, Weight); + end; + end; + +var p: Person := new Person('Иванов',20,70,SexType.Male); + +begin + writeln(p); +end. diff --git a/!Tutorial/15_Classes/Inheritance1.pas b/!Tutorial/15_Classes/Inheritance1.pas new file mode 100644 index 0000000..94c4e7c --- /dev/null +++ b/!Tutorial/15_Classes/Inheritance1.pas @@ -0,0 +1,66 @@ +// Наследование. Полиморфизм и виртуальные функции +type + Person = class + private + name: string; + age: integer; + public + constructor (n: string; a: integer); + begin + name := n; age := a; + end; + procedure Print; virtual; // Виртуальная функция. Переопределяется в классах-потомках + begin + var s := GetType.ToString; + write('Тип: ',Copy(s,pos('.',s)+1,Length(s)):7,' Имя: ',name,' Возраст: ',age); + end; + procedure Println; + begin + Print; + writeln; + end; + end; + + Pupil = class(Person) // Pupil - наследник Person + private + clas: integer; + public + constructor (n: string; a,c: integer); + begin + inherited Create(n,a); // Вызов унаследованного конструктора + clas := c; + end; + procedure Print; override; + begin + inherited Print; + write(' Класс: ',clas); + end; + end; + + Teacher = class(Person) + private + predm: string; + public + constructor (n: string; a: integer; p: string); + begin + inherited Create(n,a); // Вызов унаследованного конструктора + predm := p; + end; + procedure Print; override; + begin + inherited Print; + write(' Предмет: ',predm); + end; + end; + +var a: array of Person := new Person[4]; // Полиморфный контейнер - контейнер объектов базового класса. Может содержать объекты производных классов + +begin + a[0] := new Pupil('Вова',11,5); + a[1] := new Teacher('Марья Ивановна',30,'Информатика'); + a[2] := new Person('Иванов',65); + a[3] := new Pupil('Вася',12,6); + + for var i:=0 to a.Length-1 do + a[i].Println; +end. \ No newline at end of file diff --git a/!Tutorial/15_Classes/PersonExternal.pas b/!Tutorial/15_Classes/PersonExternal.pas new file mode 100644 index 0000000..5d205a7 --- /dev/null +++ b/!Tutorial/15_Classes/PersonExternal.pas @@ -0,0 +1,30 @@ +// Описание методов вне интерфейса класса +// Удобство: интерфейс лучше виден +// Если класс описан в модуле, то реализация методов помещается в секцию реализации модуля +type + Person = class + private + name: string; + age: integer; + public + constructor (n: string; a: integer); + procedure Print; + end; + +//----------------- Person ------------------- +constructor Person.Create(n: string; a: integer); +begin + name := n; age := a; +end; + +procedure Person.Print; +begin + writeln('Имя: ',name,' Возраст: ',age); +end; + +var p: Person; + +begin + p := new Person('Иванов',20); + p.Print; +end. \ No newline at end of file diff --git a/!Tutorial/15_Classes/PersonInternal.pas b/!Tutorial/15_Classes/PersonInternal.pas new file mode 100644 index 0000000..e146f93 --- /dev/null +++ b/!Tutorial/15_Classes/PersonInternal.pas @@ -0,0 +1,30 @@ +// Описание методов внутри интерфейса класса +// Удобство: методы можно реализовывать сразу после объявления +// Неудобство: для больших классов интерфейс трудно читается +type + Person = class + private + // Поля класса, как правило, приватны. Доступ к ним - через методы и свойства + name: string; + age: integer; + public + // Конструктор неявно имеет имя Create + constructor (n: string; a: integer); + begin + name := n; age := a; + end; + procedure Print; + begin + writeln('Имя: ',name,' Возраст: ',age); + end; + end; + +var p,p1: Person; + +begin + p := new Person('Иванов',20); // Новый синтаксис вызова конструктора (рекомендуется) + p.Print; + p1 := Person.Create('Попов',19); // Старый синтаксис вызова конструктора (не рекомендуется) + p1.Print; + // Деструкторы отсутствуют, вместо них - автоматическая сборка мусора +end. \ No newline at end of file diff --git a/!Tutorial/15_Classes/Properties.pas b/!Tutorial/15_Classes/Properties.pas new file mode 100644 index 0000000..aa6958b --- /dev/null +++ b/!Tutorial/15_Classes/Properties.pas @@ -0,0 +1,35 @@ +// Свойства (properties) +type + /// Класс персоны + Person = class + private + nm: string; + ag: integer; + procedure SetAge(a: integer); // Процедура доступа к свойству располагается обычно в приватной секции + begin + if a<0 then // Перед установкой значения свойства мы можем сделать дополнительные проверки + a := 0; // и скорректировать значение свойства, либо сгенерировать исключение + ag := a; + end; + public + constructor (n: string; a: integer); + begin + nm := n; ag := a; + end; + /// Имя персоны + property Name: string read nm; // Свойство Name доступно только на чтение и возвращает значение поля nm + /// Возраст персоны + property Age: integer read ag write SetAge; + procedure Print; + begin + writeln('Имя: ',nm,' Возраст: ',ag); + end; + end; + +var p: Person := new Person('Иванов', 20); + +begin + writeln('Имя: ',p.Name); // Менять Name нельзя, доступ - только на чтение + p.Age := -1; // Попытка изменения возраста на отрицательное значение приводит к корректировке: возраст становится = 0 + writeln('Возраст: ',p.Age); +end. \ No newline at end of file diff --git a/!Tutorial/16_Exceptions/Try1.pas b/!Tutorial/16_Exceptions/Try1.pas new file mode 100644 index 0000000..c879e8a --- /dev/null +++ b/!Tutorial/16_Exceptions/Try1.pas @@ -0,0 +1,14 @@ +// Простейшая обработка исключений. Ввод с ошибкой +var a: integer; + +begin + try + writeln('Введите число: '); + // При вводе попробуйте совершить ошибку :) + readln(a); + writeln('Число введено верно '); + except + writeln('Ошибка ввода'); + end; + writeln('Выполнение программы продолжено'); +end. diff --git a/!Tutorial/16_Exceptions/Try2.pas b/!Tutorial/16_Exceptions/Try2.pas new file mode 100644 index 0000000..4145b1f --- /dev/null +++ b/!Tutorial/16_Exceptions/Try2.pas @@ -0,0 +1,15 @@ +// Обработка нескольких исключений +var x: integer; + +begin + try + writeln('Введите число (1 - ошибка деления на 0): '); + readln(x); + x := 10 div (x-1); + except + on System.FormatException do + writeln('Ошибка ввода'); + on System.DivideByZeroException do + writeln('Деление на 0'); + end; +end. diff --git a/!Tutorial/16_Exceptions/Try3.pas b/!Tutorial/16_Exceptions/Try3.pas new file mode 100644 index 0000000..4fcc481 --- /dev/null +++ b/!Tutorial/16_Exceptions/Try3.pas @@ -0,0 +1,15 @@ +// Иллюстрация finally +// Секция finally выполняется независимо от того, произошло исключение или нет +var x: integer := 0; + +begin + try + if Random(2)=0 then + x := 10 div x; + writeln('Выполнение продолжается'); + finally + writeln('Сработала секция finally'); + end; + // Если возникает исключение, то этот оператор не выполняется + writeln('После секции finally'); +end. diff --git a/!Tutorial/16_Exceptions/Try4.pas b/!Tutorial/16_Exceptions/Try4.pas new file mode 100644 index 0000000..2f61a1b --- /dev/null +++ b/!Tutorial/16_Exceptions/Try4.pas @@ -0,0 +1,11 @@ +// Исключения. Генерация исключения +function f(x: integer): integer; +begin + if x=0 then + raise new System.Exception('Аргумент функции f не может быть равен 0'); + Result := 10 mod x; +end; + +begin + writeln(f(0)); +end. diff --git a/!Tutorial/17_Interfaces/Interf1.pas b/!Tutorial/17_Interfaces/Interf1.pas new file mode 100644 index 0000000..fdb7216 --- /dev/null +++ b/!Tutorial/17_Interfaces/Interf1.pas @@ -0,0 +1,61 @@ +// Интерфейсы. Интерфейс IComparer +uses System,System.Collections.Generic; + +type + Student = class + private + name: string; + age,course,group: integer; + public + constructor (n: string; a,c,g: integer); + begin + name := n; + age := a; + course := c; + group := g; + end; + function ToString: string; override; + begin + Result := Format('Имя: {0,9} Возраст: {1} Курс: {2} Группа: {3}',name,age,course,group); + end; + end; + + SortByName = class(IComparer) + public + function Compare(s1,s2: Student): integer; + begin + Result := string.Compare(s1.name,s2.name); + end; + end; + + SortByAge = class(IComparer) + public + function Compare(s1,s2: Student): integer; + begin + Result := s1.age - s2.age; + end; + end; + +procedure WriteArray(prompt: string; a: array of T); +begin + writeln(prompt); + foreach x: T in a do + writeln(x); + writeln; +end; + +var a: array of Student; + +begin + SetLength(a,5); + a[0] := new Student('Иванова',18,2,3); + a[1] := new Student('Козлов',19,3,10); + a[2] := new Student('Сидорова',22,5,1); + a[3] := new Student('Крикунов',17,1,2); + a[4] := new Student('Лихачев',25,4,8); + WriteArray('Исходный массив:',a); + &Array.Sort(a,new SortByName); + WriteArray('Сортировка по имени: ',a); + &Array.Sort(a,new SortByAge); + WriteArray('Сортировка по возрасту: ',a); +end. diff --git a/!Tutorial/17_Interfaces/Interf2.pas b/!Tutorial/17_Interfaces/Interf2.pas new file mode 100644 index 0000000..2993568 --- /dev/null +++ b/!Tutorial/17_Interfaces/Interf2.pas @@ -0,0 +1,43 @@ +// Интерфейсы. Интерфейс IComparer +uses System,System.Collections.Generic; + +type + Student = class + private + name: string; + age,course,group: integer; + public + constructor (n: string; a,c,g: integer); + begin + name := n; + age := a; + course := c; + group := g; + end; + function ToString: string; override; + begin + Result := Format('Имя: {0,9} Возраст: {1} Курс: {2} Группа: {3}',name,age,course,group); + end; + end; + +procedure WriteArray(prompt: string; a: array of T); +begin + writeln(prompt); + foreach x: T in a do + writeln(x); + writeln; +end; + +var a: array of Student; + +begin + SetLength(a,5); + a[0] := new Student('Иванова',18,2,3); + a[1] := new Student('Козлов',19,3,10); + a[2] := new Student('Сидорова',22,5,1); + a[3] := new Student('Крикунов',17,1,2); + a[4] := new Student('Лихачев',25,4,8); + WriteArray('Исходный массив:',a); + + writeln('Индекс Козлова = ',&Array.FindIndex(a,(s: Student)-> s.name = 'Козлов')); +end. diff --git a/!Tutorial/18_Dll/Main.pas b/!Tutorial/18_Dll/Main.pas new file mode 100644 index 0000000..368b2e0 --- /dev/null +++ b/!Tutorial/18_Dll/Main.pas @@ -0,0 +1,12 @@ +// Основная программа, использующая библиотеку MyLib.dll +// MyLib.pas должен быть предварительно откомпилирован +{$reference 'MyLib.dll'} + +var f: Frac; + +begin + writeln('Сумма чисел 2 и 3 равна ',add(2,3)); + writeln('MyPi = ',MyPi); + f := new Frac(2,3); + f.Print; +end. \ No newline at end of file diff --git a/!Tutorial/18_Dll/MyLib.pas b/!Tutorial/18_Dll/MyLib.pas new file mode 100644 index 0000000..89708ec --- /dev/null +++ b/!Tutorial/18_Dll/MyLib.pas @@ -0,0 +1,26 @@ +// Откомпилируйте библиотеку, нажав Ctrl-F9. В папке должен появиться файл MyLib.dll + +library MyLib; + +const MyPi = 3.14; + +function add(a,b: integer): integer; +begin + Result := a + b; +end; + +type + Frac = record + num,denom: integer; + constructor (n,d: integer); + begin + num := n; + denom := d; + end; + procedure Print; + begin + writeln(num,'/',denom); + end; + end; + +end. \ No newline at end of file diff --git a/1.pas b/1.pas new file mode 100644 index 0000000..725f6ba --- /dev/null +++ b/1.pas @@ -0,0 +1,13 @@ +program aaa; +begin + var input:real; + readln(input); + writeln('1 - байты'); + writeln('2 - килобайты'); + write('выбирай: '); + var sel:byte; + readln(sel); + input /= 8; + if(sel = 2) then input /= 1024; + writeln(input); +end. \ No newline at end of file diff --git a/2.pas b/2.pas new file mode 100644 index 0000000..a4f64fd --- /dev/null +++ b/2.pas @@ -0,0 +1,14 @@ +program bbb; + +function f(x:int64):int64; begin + if(x > 0) then Result:= 2*x-10; + if(x = 0) then Result:= 0; + if(x < 0) then Result:= 2*Abs(x)-1; + end; + +begin + var input:int64; + + readln(input); + writeln(f(input)); +end. \ No newline at end of file diff --git a/Algorithms/Combinatorics/NextPerm.pas b/Algorithms/Combinatorics/NextPerm.pas new file mode 100644 index 0000000..f41e421 --- /dev/null +++ b/Algorithms/Combinatorics/NextPerm.pas @@ -0,0 +1,6 @@ +begin + var a := Arr(1..4); + repeat + a.Println; + until not NextPermutation(a); +end. \ No newline at end of file diff --git a/Algorithms/Eratosthenes.pas b/Algorithms/Eratosthenes.pas new file mode 100644 index 0000000..f7c8e1c --- /dev/null +++ b/Algorithms/Eratosthenes.pas @@ -0,0 +1,24 @@ +// "Решето Эратосфена" - вычисление простых чисел +const n = 100000; + +begin + var primes := HSet(2..n); + + for var i:=2 to Round(Sqrt(n)) do + begin + if not (i in primes) then + continue; + var x := i*i; + while x<=n do + begin + primes -= x; + x += i; + end; + end; + + Writeln('Простые числа < ',n,':'); + Writeln(primes); + Writeln; + Writeln('Время вычисления: ',Milliseconds/1000); +end. + diff --git a/Algorithms/FloodFillTuple.pas b/Algorithms/FloodFillTuple.pas new file mode 100644 index 0000000..3a584bf --- /dev/null +++ b/Algorithms/FloodFillTuple.pas @@ -0,0 +1,70 @@ +uses GraphABC; + +procedure DrawCell(a: array [,] of integer; x,y: integer); +var sz := 30; +begin + case a[y,x] of +0: Brush.Color := Color.White; +1: Brush.Color := Color.Black; +2: Brush.Color := Color.Chocolate; + end; + Rectangle(x*sz,y*sz,x*sz+sz-1,y*sz+sz-1) +end; + +procedure AddToQueue(a: array [,] of integer; x,y: integer; q: Queue<(integer,integer)>); +begin + if a[y,x] = 0 then + begin + q.Enqueue(new Point(x,y)); + a[y,x] := 2; + Sleep(200); + DrawCell(a,x,y); + end; +end; + +procedure FloodFill(a: array [,] of integer; x,y: integer); +begin + var q := new Queue<(integer,integer)>; + AddToQueue(a,x,y,q); + while not (q.Count=0) do + begin + (x,y) := q.Dequeue(); + AddToQueue(a,x+1,y,q); + AddToQueue(a,x-1,y,q); + AddToQueue(a,x,y+1,q); + AddToQueue(a,x,y-1,q); + end; +end; + +procedure ReadFromFile(fname: string; var a: array [,] of integer); +begin + var f := OpenRead(fname); + var dimx,dimy: integer; + Readln(f,dimy,dimx); + SetLength(a,dimy,dimx); + for var y := 0 to dimy-1 do + begin + for var x := 0 to dimx-1 do + begin + var c := f.ReadChar; + a[y,x]:= if c='*' then 1 else 0; + end; + f.Readln + end; + f.Close; +end; + +procedure Draw(a: array [,] of integer); +begin + for var y := 0 to a.RowCount-1 do + for var x := 0 to a.ColCount-1 do + DrawCell(a,x,y); +end; + +begin + Window.Title := 'Иллюстрация алгоритма FloodFill'; + var a: array [,] of integer; + ReadFromFile('field.txt',a); + Draw(a); + FloodFill(a,4,4); +end. \ No newline at end of file diff --git a/Algorithms/MazeGen.pas b/Algorithms/MazeGen.pas new file mode 100644 index 0000000..de545d1 --- /dev/null +++ b/Algorithms/MazeGen.pas @@ -0,0 +1,106 @@ +// Программа генерации случайных лабиринтов +uses GraphABC; + +const + szw = 70; // размер лабиринта + szh = 50; + cellsz = 10; // размер ячейки + +type + point = record + x,y: integer; + end; + +var + maze: array [0..szw-1] of array [0..szh-1] of integer; + todo: array [0..szw*szh-1] of point; + todonum: integer; + +const + dx: array [0..3] of integer = (0, 0, -1, 1); + dy: array [0..3] of integer = (-1, 1, 0, 0); + +procedure Init; +begin + for var x:=0 to szw-1 do + for var y:=0 to szh-1 do + if (x=0) or (x=szw-1) or (y=0) or (y=szh-1) then + maze[x][y]:=32 + else maze[x][y]:=63; + + var x := Random(szw-2)+1; + var y := Random(szh-2)+1; + +// Пометить клетку как принадлежащую лабиринту + maze[x][y]:= maze[x][y] and not 48; + +// Занести в список todo все ближайшие необработанные клетки + for var d:=0 to 3 do + if (maze[x + dx[d]][y + dy[d]] and 16) <> 0 then + begin + todo[todonum].x := x + dx[d]; + todo[todonum].y := y + dy[d]; + Inc(todonum); + maze[x + dx[d]][y + dy[d]] := maze[x + dx[d]][y + dy[d]] and not 16; + end; + + // Пока не обработаны все клетки + while todonum > 0 do + begin + // Выбрать из списка todo произвольную клетку + var n := Random(todonum); + x := todo[n].x; + y := todo[n].y; + + // Удалить из списка обработанную клетку + Dec(todonum); + todo[n]:= todo[todonum]; + + // Выбрать направление, которое ведет к лабиринту + var dd: integer; + repeat + dd:=Random (4); + until not ((maze[x + dx[dd]][y + dy[dd]] and 32) <> 0); + + // Присоединить выбранную клетку к лабиринту + maze[x][y] := maze[x][y] and not ((1 shl dd) or 32); + maze[x + dx[dd]][y + dy[dd]] := maze[x + dx[dd]][y + dy[dd]] and not (1 shl (dd xor 1)); + + // Занести в список todo все ближайшие необработанные клетки + for var d:=0 to 3 do + if (maze[x + dx[d]][y + dy[d]] and 16) <> 0 then + begin + todo[todonum].x := x + dx[d]; + todo[todonum].y := y + dy[d]; + Inc(todonum); + maze[x + dx[d]][y + dy[d]] := maze[x + dx[d]][y + dy[d]] and not 16; + end; + end; + + maze[1][1] := maze[1][1] and not 1; // начало лабиринта - в левом верхнем углу + maze[szw-2][szh-2] := maze[szw-2][szh-2] and not 2; // конец лабиринта - в правом нижнем углу +end; + +procedure Draw; +begin + for var x:=1 to szw-2 do + for var y:=1 to szh-2 do + begin + if ((maze[x][y] and 1) <> 0) then // верхняя стена + Line(x * cellsz, y * cellsz, x * cellsz + cellsz , y * cellsz); + if ((maze[x][y] and 2) <> 0) then // нижняя стена + Line(x * cellsz, y * cellsz + cellsz, x * cellsz + cellsz , y * cellsz + cellsz); + if ((maze[x][y] and 4) <> 0) then // левая стена + Line(x * cellsz, y * cellsz, x * cellsz, y * cellsz + cellsz ); + if ((maze[x][y] and 8) <> 0) then // правая стена + Line(x * cellsz + cellsz, y * cellsz, x * cellsz + cellsz, y * cellsz + cellsz); + end; +end; + +begin + Window.Title := 'Генерация лабиринта'; + SetWindowSize(szw*cellsz,szh*cellsz); + Init; + Draw; +end. + diff --git a/Algorithms/PrimeNumbers.pas b/Algorithms/PrimeNumbers.pas new file mode 100644 index 0000000..3e3b051 --- /dev/null +++ b/Algorithms/PrimeNumbers.pas @@ -0,0 +1,22 @@ +// Генерация больших простых чисел +begin + Println('Большие простые числа: '); + var count := 0; + var beg := Random(1000000000)+2; + for var i:=beg to beg+5000 do + begin + var f := True; + var j := 2; + var r := Round(Sqrt(i)); + while f and (j<=r) do + if i mod j = 0 then f := False + else j += 1; + if f then + begin + Print(i); + count += 1; + if count mod 8 = 0 then + Println; + end; + end; +end. diff --git a/Algorithms/Recursion/ESquares.pas b/Algorithms/Recursion/ESquares.pas new file mode 100644 index 0000000..ceb9752 --- /dev/null +++ b/Algorithms/Recursion/ESquares.pas @@ -0,0 +1,27 @@ +// E-квадраты. Демонстрация рекурсии +uses GraphABC; + +const mw = 2.9; + +procedure ESquares(n,x,y,w: integer); +begin + var w1 := round(w/mw); + var h := (w-2*w1) div 3; + Brush.Color := clRandom; + Rectangle(x,y,x+w,y+w); + if n>0 then + begin + Sleep(1); + ESquares(n-1,x+h,y+h,w1); + ESquares(n-1,x+w-h-w1,y+h,w1); + ESquares(n-1,x+h,y+w-h-w1,w1); + ESquares(n-1,x+w-h-w1,y+w-h-w1,w1); + end; +end; + +begin + Window.Title := 'Рекурсия: E-квадраты'; + SetWindowSize(750,530); + Pen.Color := clWhite; + ESquares(4,125,18,490); +end. diff --git a/Algorithms/Recursion/Hanoi.pas b/Algorithms/Recursion/Hanoi.pas new file mode 100644 index 0000000..fc4b231 --- /dev/null +++ b/Algorithms/Recursion/Hanoi.pas @@ -0,0 +1,121 @@ +// Ханойские башни +uses GraphABC; + +type + /// Тип диска + DiskType = record + /// Диаметр диска + Sz: integer; + /// Цвет диска + Color: GraphABC.Color; + end; + /// Тип массива дисков на стержне + DiskArr = array of DiskType; + +const + /// Количество дисков + CountDisks = 8; + /// Высота диска + DiskHeight = 12; + /// Приращение ширины диска + DiskWidthDelta = 12; + h = CountDisks * DiskWidthDelta * 2 + 20; + /// y-координата основания пирамид дисков + y0 = DiskHeight * CountDisks + 80; + hh = 30; + /// x-координата первого стержня + x1 = h div 2 + hh; + /// x-координата второго стержня + x2 = x1 + h; + /// x-координата третьего стержня + x3 = x2 + h; + /// Пауза, мс + delay = 50; + +var + /// Массив пирамид дисков + Tower: array [1..3] of DiskArr; + /// Массив количеств дисков в пирамидах + DisksInTower: array [1..3] of integer; + /// Номер хода + MoveNumber: integer; + +/// Рисование пирамиды +procedure DrawTower(a: DiskArr; n: integer; x0,y0: integer); +begin + Brush.Color := clBlack; + Rectangle(x0-5,y0,x0+5,y0-DiskHeight*CountDisks-10); + for var i:=0 to n-1 do + begin + Brush.Color := a[i].Color; + Rectangle(x0-a[i].sz*DiskWidthDelta,y0-DiskHeight*(i-1),x0+a[i].sz*DiskWidthDelta,y0-DiskHeight*i+1) + end; +end; + +/// Рисование всех пирамид и информационной строки +procedure DrawAll; +begin + DrawTower(Tower[1],DisksInTower[1],x1,y0); + DrawTower(Tower[2],DisksInTower[2],x2,y0); + DrawTower(Tower[3],DisksInTower[3],x3,y0); + Brush.Color := clWhite; + TextOut(20,20,'Число перемещений дисков = '+MoveNumber); + Redraw; +end; + +/// Перемещение диска со стержня FromN на стержень ToN +procedure MoveDisk(FromN, ToN: integer); +begin + Inc(MoveNumber); + Inc(DisksInTower[ToN]); + Tower[ToN][DisksInTower[ToN]-1] := Tower[FromN][DisksInTower[FromN]-1]; + Dec(DisksInTower[FromN]); + Sleep(delay); + ClearWindow; + DrawAll; +end; + +/// Основная екурсивная процедура алгоритма "Ханойские башни" +procedure MoveTower(n: integer; FromN, ToN, WorkN: integer); +begin + if n=0 then exit; + MoveTower(n-1, FromN, WorkN, ToN); + MoveDisk(FromN, ToN); + MoveTower(n-1, WorkN, ToN, FromN); +end; + +/// Инициализация массивов +procedure InitTowers; +begin + SetLength(Tower[1],CountDisks); + SetLength(Tower[2],CountDisks); + SetLength(Tower[3],CountDisks); + DisksInTower[1] := CountDisks; + DisksInTower[2] := 0; + DisksInTower[3] := 0; + for var i:=0 to DisksInTower[1]-1 do + begin + Tower[1][i].Sz := DisksInTower[1]-i+1; + Tower[1][i].Color := clRandom; + end; +end; + +/// Инициализация окна +procedure InitWindow; +begin + SetWindowSize(x3+x1,y0+50); + CenterWindow; + Window.Title := 'Ханойские башни'; + Font.Size := 14; + Font.Name := 'Arial'; +end; + +begin + InitWindow; + InitTowers; + LockDrawing; + DrawAll; + MoveTower(CountDisks,1,3,2); +end. + + diff --git a/Algorithms/Recursion/Knapsack.pas b/Algorithms/Recursion/Knapsack.pas new file mode 100644 index 0000000..ae037ad --- /dev/null +++ b/Algorithms/Recursion/Knapsack.pas @@ -0,0 +1,57 @@ +// Задача о ранце. В массиве B заданы веса предметов. +// Выдать все варианты полной комплектации ранца частью этих предметов +const Sz=100; + +type IntArr = array [1..Sz] of integer; + +procedure PrintArr(const A: IntArr; n: integer); +begin + for var i:=1 to n do + Print(A[i]); + Println; +end; + +procedure TrySolve(n: integer; const B: IntArr; nb: integer); +var + Subset: IntArr; + space: integer; + ns: integer; + + procedure TrySolve0(i: integer); + begin + if space=0 then + PrintArr(Subset,ns) + else if (space<0) or (i>nb) then + exit // отсечение + else // продолжение перебора всех подмножеств множества B + begin + TrySolve0(i+1); // попробовать не взять i-тый элемент + + ns += 1; + Subset[ns] := B[i]; + space := space - B[i]; + TrySolve0(i+1); // попробовать взять i-тый элемент + space := space + B[i]; + ns -= 1; + end; + end; + +begin + space:=n; + TrySolve0(1); +end; + +procedure FillArr(var B: IntArr; var n: integer); +begin + n:=5; // количество предметов + B[1]:=8; B[2]:=5; B[3]:=13; B[4]:=3; B[5]:=15; // веса предметов +end; + +var + B: IntArr; + nb: integer; + +begin + FillArr(B,nb); + TrySolve(23,B,5); +end. diff --git a/Algorithms/Recursion/Permutations.pas b/Algorithms/Recursion/Permutations.pas new file mode 100644 index 0000000..b1b560f --- /dev/null +++ b/Algorithms/Recursion/Permutations.pas @@ -0,0 +1,19 @@ +// Все перестановки +const n = 4; + +procedure Perm(a: array of integer; m: integer); +begin + if m=1 then + a.Println; + for var i:=0 to m-1 do + begin + Swap(a[i],a[m-1]); // ставим каждый на место последнего + Perm(a,m-1); + Swap(a[i],a[m-1]); + end; +end; + +begin + var a := Range(1,n).ToArray; // заполнение массива a числами от 1 до n + Perm(a,n); +end. \ No newline at end of file diff --git a/Algorithms/Recursion/TreeDraw.pas b/Algorithms/Recursion/TreeDraw.pas new file mode 100644 index 0000000..512a37f --- /dev/null +++ b/Algorithms/Recursion/TreeDraw.pas @@ -0,0 +1,26 @@ +// Рекурсивное рисование двоичного дерева +uses GraphWPF; + +const + LevelHeight = 50; + Levels = 8; + delay = 10; + +procedure DrawTree(x,y,dx: real; level: integer); +// обход: левое поддерево, корень, правое +begin + if level>0 then + begin + DrawTree(x-dx,y+LevelHeight,dx / 2,level-1); + Line(x,y,x-dx,y+LevelHeight); + Line(x,y,x+dx,y+LevelHeight); + Sleep(delay); + DrawTree(x+dx,y+LevelHeight,dx / 2,level-1); + end; +end; + +begin + Window.Title := 'Рекурсивное рисование бинарного дерева'; + Window.SetSize(800,30+Levels*LevelHeight); + DrawTree(Window.Width / 2,10,Window.Width / 5,Levels); +end. diff --git a/Algorithms/SortArrays/QuickSort.pas b/Algorithms/SortArrays/QuickSort.pas new file mode 100644 index 0000000..4d68e91 --- /dev/null +++ b/Algorithms/SortArrays/QuickSort.pas @@ -0,0 +1,44 @@ +// Быстрая сортировка Ч. Хоара +/// Разделение a[l]..a[r] на части a[l]..a[q] <= a[q+1]..a[r] +function Partition(a: array of integer; l,r: integer): integer; +begin + var i := l - 1; + var j := r + 1; + var x := a[l]; + while True do + begin + repeat + i += 1; + until a[i]>=x; + repeat + j -= 1; + until a[j]<=x; + if i=r then exit; + var j := Partition(a,l,r); + QuickSort(a,l,j); + QuickSort(a,j+1,r); +end; + +const n = 20; + +begin + var a := ArrRandom(n); + Println('До сортировки: '); + Writeln(a); + QuickSort(a,0,a.Length-1); + Println('После сортировки: '); + Println(a); +end. diff --git a/Algorithms/SortArrays/QuickSortFunctional.pas b/Algorithms/SortArrays/QuickSortFunctional.pas new file mode 100644 index 0000000..d9e929a --- /dev/null +++ b/Algorithms/SortArrays/QuickSortFunctional.pas @@ -0,0 +1,14 @@ +// Быстрая сортировка Ч. Хоара +// Неэффективный код, иллюстрирующий суть алгоритма +function QS(a: array of integer): array of integer := + if a.Length < 2 then + a + else + QS(a[1:].FindAll(y->y<=a[0])) + a[:1] + QS(a[1:].FindAll(y->y>a[0])); + +begin + var a := ArrRandom(20); + a.Println; + var b := QS(a); + b.Println; +end. diff --git a/Algorithms/SortArrays/SelectionSort.pas b/Algorithms/SortArrays/SelectionSort.pas new file mode 100644 index 0000000..cfea28f --- /dev/null +++ b/Algorithms/SortArrays/SelectionSort.pas @@ -0,0 +1,22 @@ +// Сортировка выбором +procedure SelectionSort(a: array of real); +begin + for var i:=0 to a.Length-2 do + begin + var (min,ind) := (a[i],i); + for var j:=i+1 to a.Length-1 do + if a[j]r.Round(2)).ToArray; + Println('Содержимое массива: '); + a.Println; + SelectionSort(a); + Println('После сортировки выбором: '); + a.Println; +end. \ No newline at end of file diff --git a/Algorithms/Sqrt2.pas b/Algorithms/Sqrt2.pas new file mode 100644 index 0000000..dde6bdf --- /dev/null +++ b/Algorithms/Sqrt2.pas @@ -0,0 +1,4 @@ +## +var x := 2.0; +SeqGen(6,x,a → (a + x/a) / 2).Last.Println; +x.Sqrt.Print; \ No newline at end of file diff --git a/Algorithms/field.txt b/Algorithms/field.txt new file mode 100644 index 0000000..a095a94 --- /dev/null +++ b/Algorithms/field.txt @@ -0,0 +1,9 @@ +7 8 +******** +* *** * +** * * +* ** +** * +* ** *** +******** + diff --git a/Applications/GraphApplications/FuncTransform.pas b/Applications/GraphApplications/FuncTransform.pas new file mode 100644 index 0000000..a628fa0 --- /dev/null +++ b/Applications/GraphApplications/FuncTransform.pas @@ -0,0 +1,50 @@ +uses + GraphWPF; + +var + h := 0.01; + mx := 2.0; + my := 0.35; + dy := 0.0; + dx := 0.0; + f: real -> real := x -> x * sin(x); + +const + boundx = 5; + boundy = 3; + +function Transform(f: real -> real): real -> real; +begin + Result := x -> my * f(mx * (x + dx)) + dy; +end; + +procedure DrawGraphic(f: real -> real); +begin + Window.Clear; + DrawGraph(f, -boundx, boundx, -boundy, boundy); + Window.Title := Format('mx={0:f2} my={1:f2} dx={2:f2} dy={3:f2}', mx, my, dx, dy); +end; + +var ArrowKeys := HSet(Key.Left, Key.Right, Key.Up, Key.Down, Key.Home, Key.&End, Key.PageUp, Key.PageDown); + +procedure KeyDown(k: Key); +begin + var g := Transform(f); + case k of + Key.Left: my -= h; + Key.Right: my += h; + Key.Up: mx -= h; + Key.Down: mx += h; + Key.Home: dx += h; + Key.PageUp: dx -= h; + Key.PageDown: dy += h; + Key.End: dy -= h; + end; + if k in ArrowKeys then + DrawGraphic(g); +end; + +begin + DrawGraphic(Transform(f)); + OnKeyDown := KeyDown; +end. \ No newline at end of file diff --git a/Applications/GraphApplications/Paporotnik/Main.pas b/Applications/GraphApplications/Paporotnik/Main.pas new file mode 100644 index 0000000..3946450 --- /dev/null +++ b/Applications/GraphApplications/Paporotnik/Main.pas @@ -0,0 +1,22 @@ +//(c) DarkStar 2008 +uses GraphABC, Paporotnik, PaporotnikData; + +const + Iterations = 300000; + Height = 600; + Fast = false; + Width = Height div 2; + WindowWidth= Width * 3; + Brightness = 170; + +var + Paprotnik := new PaporotnikFractal(PaprotnikData); + SimplePaprotnik := new PaporotnikFractal(SimplePaprotnikData); + Elka := new PaporotnikFractal(ElkaData); + +begin + InitWindow(200, 50, WindowWidth , Height, clBlack); + Paprotnik.Draw(0, 0, Iterations, Height, Brightness, fast); + SimplePaprotnik.Draw(Width, 0, Iterations, Height, Brightness, fast); + Elka.Draw(Width*2, 0, Iterations, Height, Brightness, fast); +end. \ No newline at end of file diff --git a/Applications/GraphApplications/Paporotnik/Paporotnik.pas b/Applications/GraphApplications/Paporotnik/Paporotnik.pas new file mode 100644 index 0000000..3d689e7 --- /dev/null +++ b/Applications/GraphApplications/Paporotnik/Paporotnik.pas @@ -0,0 +1,51 @@ +///Модуль для рисования фракталов семейства "Лист папоротника" +unit Paporotnik; + +uses GraphABC; + +type + + ///Настройки фрактала + PaporotnikFractalInitalData = record + data: array of array of real; + P0,P1,P2,P3:real; + end; + + ///Фрактал "Лист папоротника" + PaporotnikFractal = class + private + data: array of array of real; + P0,P1,P2,P3:real; + public + constructor(initdata: PaporotnikFractalInitalData); + begin + data := initdata.data; + P0 := initdata.P0; + P1 := initdata.P1; + P2 := initdata.P2; + P3 := initdata.P3; + end; + procedure Draw(x0,y0,Iterations,Height,Brightness: integer; fast: boolean); + begin + var plotx, ploty, x, y : real; + var Size := Height/11; + var Width := Height div 2; + var dx := Width div 2; + var dc := Iterations div Brightness; + if fast then + LockDrawing; + for var i:=1 to Iterations do begin + var P := Random(100); + var rnd := PJ%=P)Px#1ZP1_K>z@;j|==^1poj5AY({UO#lFTCIA3{ga82g0001h=l}q9FaQARU;qF* zm;eA5aGbhPJOBUy7j#8fbW?9;ba!ELWdKlNX>N2bPDNB8b~7$8%`aC*0004+Nklv~Kd7hyhs4tq1&Kux!!<+FVvaa%q7_O{_bEOxY23|Evt#E&P_N~b~ z91Q57Bd86t0pc`B11w4TxB6nhDc+!#DHT}FUbLif>K1hq z-=-hhL|o5R${SP@I!rr3MGbxujmG2IL5Aaly_Nx)Fl>fo;19J%uyk)TV3NTNQ&c*^ zZf64zcOx>OI*w*uNVm0t2T2T?)Wfb!AiDxb`#XM_!N7*<*3{`O5GJHD=mrUFKSsVT zFq>Wn173zTt=a3uCbb4DEnrpb(>vQ+AFncRk{_ilX)!8lWa!>dS}B8cPe2vIrw>j~ z77dilA$z1ELy>35H&bNmDblqBNg|L40kIk*j$;T?`_=x_$MoCR`UZwPyEDh!r5^wQ N002ovPDHLkV1iw7<#qr7 literal 0 HcmV?d00001 diff --git a/Applications/TextEditor/Save.png b/Applications/TextEditor/Save.png new file mode 100644 index 0000000000000000000000000000000000000000..8262de3ae8ebd479949957dcb6c377ebeeb9bba0 GIT binary patch literal 535 zcmV+y0_gpTP)Px#1ZP1_K>z@;j|==^1poj5AY({UO#lFTCIA3{ga82g0001h=l}q9FaQARU;qF* zm;eA5aGbhPJOBUy7j#8fbW?9;ba!ELWdKlNX>N2bPDNB8b~7$8%`aC*0004UNkl_f>5N!XTpTH-aL`EVbk&(zqWF#^Y8HtQUMj}sEMpj1FZD;m?3s*4hzBljQ zyJTi}X7es0Z~rO^k#w!k0LIC!oc*2jMqPYrySc>2>|GlpEEn>Gt z+%_wI3mn=@Hp#6uF}BDsI0$tD2_tg?j`*x@2g~Zo<0k|* zS^Yl>AS@M_g1Og{T*fLZlf>;70!*3$Jh;^}a=BFbSVO=Su^UZ%+Cs#N%2}{Vh&ZV8 z0@BvN;F)8y^PSAIUV!0cgi0i26JwKrjZAy5YRzLh?F_Po=%WB0Mn27CyY;x(!FkvV z9T@^9%og~v`pzWddCOpoF!`}Iar=O->`Zc62w=o?#5=f-O#zbqK1v0d`}ZN@ABk!D zuKNk#PkqDlih&IVffhw6qm&ERW|gSGCd}H;7PtwwV?bFS$Q?+UVJYC5T_<3|r2s|# Zf*-~>!i>FQ^x6Ob002ovPDHLkV1m|L*`ELa literal 0 HcmV?d00001 diff --git a/Applications/TextEditor/TextEditor.pas b/Applications/TextEditor/TextEditor.pas new file mode 100644 index 0000000..52aa99e --- /dev/null +++ b/Applications/TextEditor/TextEditor.pas @@ -0,0 +1,91 @@ +{$apptype windows} +{$reference 'System.Windows.Forms.dll'} +{$reference 'System.Drawing.dll'} +{$resource 'Open.png'} +{$resource 'Save.png'} + +uses System.Windows.Forms; + +const + TextFileExt = 'txt'; + TextFileFilter = 'Текстовые файлы (*.'+TextFileExt+')|*.'+TextFileExt; + +var + myForm: Form; + TextBox1: TextBox; + +procedure SaveFile(FileName: string); +begin + //Создаем файловый поток с кодировкой Windows 1251, необходимо для корректного сохранения русских букв + var f := new System.IO.StreamWriter(FileName, false, System.Text.Encoding.Default); + f.Write(TextBox1.Text); + f.Close; +end; + +procedure OpenFile(FileName: string); +begin + //Создаем файловый поток с кодировкой Windows 1251, необходимо для корректного чтения русских букв + var f := new System.IO.StreamReader(FileName, System.Text.Encoding.Default); + TextBox1.Text := f.ReadToEnd; + f.Close; +end; + +procedure FormClose(sender: object; args: System.EventArgs); +begin + myForm.Close; +end; + +procedure MenuSaveClick(sender:object; args:System.EventArgs); +begin + //Диалог для выбора файла + var sd := new SaveFileDialog; + //Расширение поумолчанию + sd.DefaultExt := TextFileExt; + //Фильтр для диалга + sd.Filter := TextFileFilter; + if sd.ShowDialog=DialogResult.OK then + //если результат выполнения sd.ShowDialog это нажатие кнопки подтверждения то + SaveFile(sd.FileName); +end; + +procedure MenuOpenClick(sender:object; args:System.EventArgs); +begin + var sd := new OpenFileDialog; + sd.DefaultExt := TextFileExt; + sd.Filter := TextFileFilter; + if sd.ShowDialog = DialogResult.OK then + OpenFile(sd.FileName); +end; + +begin + myForm := new Form; + myForm.Text := 'Простой текстовый редактор'; + + TextBox1 := new TextBox; + TextBox1.Multiline := True; + TextBox1.Height := 100; + TextBox1.Dock := DockStyle.Fill; + //Полосы прокрутки + TextBox1.ScrollBars := ScrollBars.Both; + //Устанавливаем шрифт + TextBox1.Font := new System.Drawing.Font('Courier New',10); + + myForm.Controls.Add(TextBox1); + + //Создаем меню + var toolStrip1 := new ToolStrip; + toolStrip1.GripStyle := System.Windows.Forms.ToolStripGripStyle.Hidden; + var miFile := new ToolStripMenuItem('Файл'); + miFile.DropDownItems.Add(new ToolStripMenuItem('Открыть', new System.Drawing.Bitmap(GetResourceStream('Open.png')),MenuOpenClick)); + miFile.DropDownItems.Add(new ToolStripMenuItem('Сохранить как...',new System.Drawing.Bitmap(GetResourceStream('Save.png')),MenuSaveClick)); + miFile.DropDownItems.Add(new ToolStripMenuItem('Выход',nil,FormClose)); + toolStrip1.Items.Add(miFile); + myForm.Controls.Add(toolStrip1); + + //Посмотрим в аргументы командной строки + //Если их количество = 1, то открываем + if CommandLineArgs.Length = 1 then + OpenFile(CommandLineArgs[0]); + + Application.Run(myForm); +end. \ No newline at end of file diff --git a/BlockFileOfT/FileDatabase/FileArray.pas b/BlockFileOfT/FileDatabase/FileArray.pas new file mode 100644 index 0000000..5a84ce4 --- /dev/null +++ b/BlockFileOfT/FileDatabase/FileArray.pas @@ -0,0 +1,174 @@ +///Модуль с массивом, хранящим данные в файле +unit FileArray; + +interface + +uses BlockFileOfT; + +type + /// Массив, хранящий данные в файле + /// Намного медленнее обычного массива, однако может хранить бОльший объём данных + /// T может быть только записью, не содержащей ссылочные поля (указатели, классы и т.п.) + FileArr = sealed class + where T: record; + + private f: BlockFileOf; + ///Автоматически очищает кэш после каждого чтения и записи + public AutoFlush := true; + ///Указывает, удалять ли файл, когда сборщик мусора удалит данный объект + public DeleteOnExit: boolean; + + + private function GetItem32(i: integer): T; + private function GetItem64(i: int64): T; + private function GetSection32(from, c: integer): array of T; + private function GetSection64(from, c: int64): array of T; + private function GetSectionLazy32(from, c: integer): sequence of T; + private function GetSectionLazy64(from, c: int64): sequence of T; + + private procedure SetItem32(i: integer; o: T); + private procedure SetItem64(i: int64; o: T); + private procedure SetSection32(from, c: integer; o: array of T); + private procedure SetSection64(from, c: int64; o: array of T); + private procedure SetSectionLazy32(from, c: integer; o: sequence of T); + private procedure SetSectionLazy64(from, c: int64; o: sequence of T); + + + + public property InnerFile: BlockFileOf read f; + + ///Возвращает количество элементов. В отличии от array of T - длину можно устанавливать + public property Length: int64 read f.Size write f.Size := value; + + ///Возвращает или задаёт элемент с индексом i + public property Item[i: integer]: T read GetItem32 write SetItem32; + ///Возвращает или задаёт элемент с индексом i + public property Item64[i: int64]: T read GetItem64 write SetItem64; default; + + ///Срез начиная с элемента from и длиной count + public property Section[from, count: integer]: array of T read GetSection32 write SetSection32; + ///Срез начиная с элемента from и длиной count + public property Section64[from, count: int64]: array of T read GetSection64 write SetSection64; + + ///Возвращает ленивую последовательность начиная с элемента from и длиной count + ///Устанавливает значение элементов начиная с элемента from и длиной count + public property SectionLazy[from, count: integer]: sequence of T read GetSectionLazy32 write SetSectionLazy32; + ///Возвращает ленивую последовательность начиная с элемента from и длиной count + ///Устанавливает значение элементов начиная с элемента from и длиной count + public property SectionLazy64[from, count: int64]: sequence of T read GetSectionLazy64 write SetSectionLazy64; + + + + ///Очищает кэш чтения/записи + public procedure Flush := f.BaseStream.Flush; + + + ///Создаёт новый массив, хранящий данные в файле fname. Если его нет - создаёт новый + public constructor(fname: string) := + Create(fname, System.IO.FileMode.OpenOrCreate); + + ///Создаёт новый массив хранящий данные в файле fname. + ///mode указывает каким образом открывать/создавать файл и имеет тип System.IO.FileMode + public constructor(fname: string; mode: System.IO.FileMode); + begin + f := new BlockFileOf(fname); + f.Open(mode); + end; + + ///Использует заданный файл как основу для массива + ///Если файл не открыт - его откроет в режиме System.IO.FileMode.OpenOrCreate + public constructor(&file: BlockFileOf); + begin + f := &file; + if not f.Opened then + f.Open(System.IO.FileMode.OpenOrCreate); + end; + + ///Открывает заданный файл в режиме mode и использует его как основу для массива + public constructor(&file: BlockFileOf; mode: System.IO.FileMode); + begin + f := &file; + f.Open(mode); + end; + + /// Создаёт новый массив хранящий данные в новом временном файл (в системной папке) + /// Созданный файл будет удалён в произвольное время после окончания использования переменной или при вызове Finalize + public constructor; + begin + Create(System.IO.Path.GetTempFileName, System.IO.FileMode.CreateNew); + DeleteOnExit := true; + end; + + ///Выполняет необходимую очистку при завершении работы с переменной + ///Этот метод выполнится автоматически в произвольное время (после окончания использования переменной) + ///Если попытаться использовать переменную после вызова этого метода - поведение будет неопределённым + public procedure Finalize; override; + begin + f.Close; + if DeleteOnExit then f.Delete; + end; + + end; + +implementation + +{$region index property's} + +function FileArr.GetItem32(i: integer) := GetItem64(i); + +function FileArr.GetSection32(from, c: integer) := GetSection64(from, c); + +function FileArr.GetSectionLazy32(from, c: integer) := GetSectionLazy64(from, c); + +procedure FileArr.SetItem32(i: integer; o: T) := SetItem64(i, o); + +procedure FileArr.SetSection32(from, c: integer; o: array of T) := SetSection64(from, c, o); + +procedure FileArr.SetSectionLazy32(from, c: integer; o: sequence of T) := SetSectionLazy64(from, c, o); + +function FileArr.GetItem64(i: int64): T; +begin + f.Seek(i); + Result := f.Read; + if AutoFlush then f.BaseStream.Flush; +end; + +function FileArr.GetSection64(from, c: int64): array of T; +begin + f.Seek(from); + Result := f.Read(c); + if AutoFlush then f.BaseStream.Flush; +end; + +function FileArr.GetSectionLazy64(from, c: int64): sequence of T; +begin + f.Seek(from); + Result := f.ReadLazy(c); + if AutoFlush then f.BaseStream.Flush; +end; + +procedure FileArr.SetItem64(i: int64; o: T); +begin + f.Seek(i); + f.Write(o); + if AutoFlush then f.BaseStream.Flush; +end; + +procedure FileArr.SetSection64(from, c: int64; o: array of T); +begin + f.Seek(from); + if c > o.Length then raise new System.IndexOutOfRangeException('count должно быть <= длинны переданного массива'); + f.Write(o, 0, c); + if AutoFlush then f.BaseStream.Flush; +end; + +procedure FileArr.SetSectionLazy64(from, c: int64; o: sequence of T); +begin + f.Seek(from); + f.Write(o, 0, c); + if AutoFlush then f.BaseStream.Flush; +end; + +{$endregion index property's} + +end. \ No newline at end of file diff --git a/BlockFileOfT/FileDatabase/База данных на файле.pas b/BlockFileOfT/FileDatabase/База данных на файле.pas new file mode 100644 index 0000000..fd4af02 --- /dev/null +++ b/BlockFileOfT/FileDatabase/База данных на файле.pas @@ -0,0 +1,201 @@ +uses BlockFileOfT; +uses System.Runtime.InteropServices;//нужно чтоб не писать System.Runtime.InteropServices.StructLayout и т.п. +uses FileArray; + +type + DataType1 = record + b: byte; + + constructor(b:byte) := + self.b := b; + + end; + DataType2 = record + i: integer; + + constructor(i:integer) := + self.i := i; + + end; + DataType3 = record + ch: char; + + constructor(ch:char) := + self.ch := ch; + + end; + DataType4 = record + r: real; + + constructor(r:real) := + self.r := r; + + end; + + DataType = ( + ByteData = 1, + IntData = 2, + CharData = 3, + RealData = 4 + ); + + [StructLayout(LayoutKind.&Explicit)] // Позволяет явно указывать позицию каждого поля + DataUnit = record + [FieldOffset(0)] DataT: byte; + [FieldOffset(8)] DataT1: DataType1; // У этих 4 полей одинаковая позиция + [FieldOffset(8)] DataT2: DataType2; // Значит, у них будет общая память + [FieldOffset(8)] DataT3: DataType3; // Но это так же значит что если записать данные 1 типа - + [FieldOffset(8)] DataT4: DataType4; // данные другого типа считать не выйдет (выведет мусор) + + constructor(data: DataType1); + begin + DataT := 1; + DataT1 := data; + end; + + constructor(data: DataType2); + begin + DataT := 2; + DataT2 := data; + end; + + constructor(data: DataType3); + begin + DataT := 3; + DataT3 := data; + end; + + constructor(data: DataType4); + begin + DataT := 4; + DataT4 := data; + end; + + function ToString:string; override; + begin + var sb := new StringBuilder; + + sb.AppendFormat( + 'DataUnit({0,8}, ', + System.Enum.GetName(typeof(DataType), DataT) + ); + + case DataType(DataT) of + ByteData: sb.AppendFormat('{0})',DataT1.b); + IntData : sb.AppendFormat('{0})',DataT2.i); + CharData: sb.AppendFormat('{0})',DataT3.ch); + RealData: sb.AppendFormat('{0})',DataT4.r); + else raise new System.FormatException($'Не правильный тип данных: {DataT}'); + end; + + Result := sb.ToString; + end; + + end; + + Database = class(System.IDisposable) + private const HeaderSize = 1 + 4*2; // 1 байт на версию + 4 символа (по 2 байта) на DatabaseType + + public version: byte; + public DatabaseType: string; + public BlockFile: BlockFileOf; + public Data: FileArr; + + public constructor := exit; + + public constructor(fname: string; version: byte; DatabaseType: string); + begin + self.version := version; + self.DatabaseType := DatabaseType; + + self.BlockFile := new BlockFileOf(fname); + self.BlockFile.Offset := HeaderSize; + self.BlockFile.Open(System.IO.FileMode.Create); + + self.Data := new FileArr(self.BlockFile); + end; + + public class function Load(fname: string): Database; + begin + Result := new Database; + + Result.BlockFile := new BlockFileOf(fname, HeaderSize); + Result.BlockFile.Reset; + + begin // заголовок + var br := new System.IO.BinaryReader(Result.BlockFile.BaseStream); + + Result.version := br.ReadByte; + Result.DatabaseType := string.Create(ArrGen(4,i->char(br.ReadUInt16))).TrimEnd('_'); + + end; + + Result.Data := new FileArr(Result.BlockFile); + + Result.Data.AutoFlush := false; + Result.Data.DeleteOnExit := false; + + end; + + public procedure Save; + begin + + begin // заголовок + self.BlockFile.PosByte := 0; + var bw := new System.IO.BinaryWriter(self.BlockFile.BaseStream); + + bw.Write(self.version); + + foreach var ch in self.DatabaseType.PadRight(4,'_') do + bw.Write(word(ch)); + + end; + + self.Data.Flush; + end; + + public function ToString:string; override; + begin + var sb := new StringBuilder; + sb += $'version: {version}{#10}'; + sb += $'Database Type: {DatabaseType}{#10}'; + sb += $'Data:[{#10}'; + + BlockFile.Pos := 0; + foreach var du in BlockFile.Read(BlockFile.Size) do + sb += $'{#9}{du}{#10}'; + + sb += $']'; + Result := sb.ToString; + end; + + public procedure Dispose; + begin + Data.Finalize; + end; + + end; + +begin + var db1 := new Database('temp.bin',1,'JSBD'); // JSBD = Just Some Basic Data + + db1.version := 5; // Была 1, изменили на 5 + db1.Data[0] := new DataUnit(new DataType1(123)); + db1.Data[1] := new DataUnit(new DataType2(456)); + db1.Data[2] := new DataUnit(new DataType3('A')); + db1.Data[3] := new DataUnit(new DataType4(123.456)); + + db1.Save; + db1.Dispose; + + + + db1 := Database.Load('temp.bin'); + writeln(db1); + + writeln; + // Пытаемся прочитать переменную типа integer там - где записана переменная типа real + // Это, конечно, выводит мусор + writeln('int from real: ', db1.Data[3].DataT2.i); + +end. \ No newline at end of file diff --git a/BlockFileOfT/Дополнительно.pas b/BlockFileOfT/Дополнительно.pas new file mode 100644 index 0000000..ad9eb09 --- /dev/null +++ b/BlockFileOfT/Дополнительно.pas @@ -0,0 +1,79 @@ +uses BlockFileOfT; + +uses System.Runtime.InteropServices; // для StructLayout у r3 + +type + r1 = record + b1, b2: byte; + + constructor(b1, b2: byte); + begin + self.b1 := b1; + self.b2 := b2; + end; + + ///Переопределение того - как объекты типа r1 будет выписывать writeln + function ToString: string; override := + $'r1({b1}, {b2})'; + + end; + + r2 = record + b: byte; + i: int64; + end; + + [StructLayout(LayoutKind.&Explicit, Size=9)] + r3 = record + [FieldOffset(0)] b: byte; + // Явно указываем что i будет хранится на следующем байте после b + // Так можно даже накладывать поля друг на друга + // Но поэтому также нужно относиться с осторожностью к такой возможности + // И помнить у какого типа какой размер, чтобы наложение полей не получилось там, где оно не требуется + [FieldOffset(1)] i: int64; + end; + +begin + var f := new BlockFileOf('temp.bin'); + f.Rewrite; + + f.Write(new r1(1, 2)); + f.Write(new r1(3, 4)); + f.Write(new r1(5, 6)); + + f.Pos := 1; + var str := f.BaseStream; + var br := new System.IO.BinaryReader(str); + Writeln(br.ReadByte); // 3 - потому что прочитало 1 байт, когда файловый курсор стоял в начале элемента #1 + + // А вот так делать не следует. Сейчас курсор находится в середине второго элемента + // Обычно это вызовет неопределённое поведение и заполнит поля полученной записи мусором + // Но этот случай простой, поэтому точно известно что прочитает половину второй и половину третьей записи и выведет (4,5) + Writeln(f.Read); + // Если вы НЕ пытаетесь специально читать мимо элементов - стоит устанавливать позицию в файле (f.Pos := ...) после прямой работы с BaseStream + + f.Pos := 0; + f.PosByte += 1; // сдвигаем курсор на один байт (вся запись f.TSize байт, что, в данном случае, 2) + // br и f всё ещё работают над тем же потоком, потому что мы не закрывали файл + // А файловый курсор хранится как раз в потоке + // Поэтому br можно всё ещё использовать и он будет синхронизирован с f.PosByte + Writeln(br.ReadByte); // 2, потому что второй байт первой записи + + f.Close; + + + + + var f2 := new BlockFileOf; + // f2.TSize это то же самое, что sizeof(r2) + // У меня 16, хотя sizeof(byte)=1 + sizeof(int64)=8, то есть должно быть 9? + // Это потому, что на многих процессорах добавляет отступы (так легче читать/записывать значения) в некоторые записи, так что будьте осторожны + // Это также хорошая причина не пользоваться бездумно BaseStream - потому что на разных компьютерах один и тот же код может работать по-разному + Writeln(f2.TSize); + + var f3 := new BlockFileOf; + // А вот теперь размер 9, потому что мы явно указали что отступ нам не нужен + // Конечно, теперь чтение/запись i может быть медленнее на некоторых процессорах, отступ всё же не для красоты был + Writeln(f3.TSize); + +end. \ No newline at end of file diff --git a/BlockFileOfT/Основы.pas b/BlockFileOfT/Основы.pas new file mode 100644 index 0000000..31586f8 --- /dev/null +++ b/BlockFileOfT/Основы.pas @@ -0,0 +1,67 @@ +uses BlockFileOfT; + +type + r1=record + i:integer; + r:real; + + constructor(i:integer; r:real); + begin + self.i := i; + self.r := r; + end; + ///Переопределение того - как объекты типа r1 будет выписывать writeln + function ToString:string; override := + $'r1({i}, {r})'; + end; + +begin +// var f: BlockFileOf; +// f := new BlockFileOf; // В отличии от file of T - BlockFileOf всегда надо инициализировать перед тем как использовать +// f.Assign('temp.bin'); + var f := new BlockFileOf('temp.bin'); // эта строчка работает как предыдущие 3 + + f.Rewrite; // Если навести мышку на метод (в данном случае .Rewrite) - показывает описание + f.Write(new r1(123,123.456)); + f.Write(new r1(456,456.789)); + +// f.Flush; // не обязательно - .Close вызывает .Flush перед тем как закрыть файл + // После работы с файлом - надо его закрыть. Иначе: + // 1. Часть данных может не сохраниться + // 2. Изменять файл вне переменной f будет нельзя, пока f держит его открытым + f.Close; + +// f.Assign('temp.bin'); // Не обязательно, файл остаётся привязан после закрытия + + f.Reset; + writeln($'Read#1: {f.Read}'); // r1(123,123.456) + writeln($'Pos#1: {f.Pos}'); // 1, потому что мы открыли файл через ".Reset" (курсор в начале файла) и затем прочитали 1 элемент + + // В отличии от file of T, у BlockFileOf нету режима чтения и режима записи + // Они объеденены, поэтому не надо закрывать файл чтобы записать что-то после чтения + f.Write(new r1(0,0)); + + writeln($'Size#1: {f.Size}'); // 2, потому что r1(0,0) НЕ втиснуло между первыми 2 элементами, а записало поверх второго + + writeln($'EOF: {f.EOF}'); // True, потому что у нас всего было 2 элемента и курсор сейчас стоит на позиции 2 (1 чтение + 1 запись) + +// f.Seek(1); + f.Pos := 1; // То же самое, что и .Seek(1), но лучше + + writeln($'Read#2: {f.Read}'); // r1(0,0), то, что мы только что записали + + f.Pos := 5; // Можно ставить за границей файла +// f.Read; // Ошибка: Нельзя читать за пределами файла. Можно только записывать + f.Write(new r1); + writeln($'Size#2: {f.Size}'); // 6, потому что мы записали +1 элемент после позиции 5 + + // Но вообще, размер правильно менять так: + f.Size := 10; + writeln($'Size#3: {f.Size}'); // 10 + writeln($'Pos#2: {f.Pos}'); // 6, как и была после того, как мы последний раз вызвали .Write + + // Программа сейчас завершится, поэтому файл закроется сам + // Но если не вызвать хотя бы Flush, то изменения могут не сохранится + f.Flush; + +end. \ No newline at end of file diff --git a/BlockFileOfT/Справка.html b/BlockFileOfT/Справка.html new file mode 100644 index 0000000..345a868 --- /dev/null +++ b/BlockFileOfT/Справка.html @@ -0,0 +1,22 @@ + + + + + + + + + + + Выберете раздел: + +
+ Если найдёте что-то неправильное или ошибку (в том числе и грамматическую) в справке - пишите сюда. + + + \ No newline at end of file diff --git a/BlockFileOfT/СправкаData/RefTSaving.html b/BlockFileOfT/СправкаData/RefTSaving.html new file mode 100644 index 0000000..8348a1f --- /dev/null +++ b/BlockFileOfT/СправкаData/RefTSaving.html @@ -0,0 +1,134 @@ + + + + + + + + + + + + + + <=
+
+ Сохранение ссылочных типов в блочный файл.
+
+ + + +

В чём проблема ссылочных типов

+ + + + +

Размерные массивы и строки

+ + + + + + + \ No newline at end of file diff --git a/BlockFileOfT/СправкаData/WhyOffset.html b/BlockFileOfT/СправкаData/WhyOffset.html new file mode 100644 index 0000000..02d9f37 --- /dev/null +++ b/BlockFileOfT/СправкаData/WhyOffset.html @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + <=
+
+
+ + +

Что такое "Offset"

+ + + + +

Заголовки

+ + + + + + \ No newline at end of file diff --git a/BlockFileOfT/СправкаData/main.html b/BlockFileOfT/СправкаData/main.html new file mode 100644 index 0000000..c7a7fdd --- /dev/null +++ b/BlockFileOfT/СправкаData/main.html @@ -0,0 +1,265 @@ + + + + + + + + + + + + + + <=
+
+ Основной упор данной страницы - сравнение "file of T" и "BlockFileOf<T>".
+ Но она также подходит и для обучения основам "BlockFileOf<T>". +
+ + +

Объявление

+ + + + +

Основы записи/чтения

+ + + + +

Перечисление всех элементов в файле

+ + + + +

Основное преимущество: сохранение записей (record)

+ + + + + + \ No newline at end of file diff --git a/BlockFileOfT/Сравнение скорости.pas b/BlockFileOfT/Сравнение скорости.pas new file mode 100644 index 0000000..6e4a06f --- /dev/null +++ b/BlockFileOfT/Сравнение скорости.pas @@ -0,0 +1,289 @@ +uses BlockFileOfT; + +// Эта процедура позволяет копировать память между содержимым массива и другим массивом/стеком +// При этом не волнуясь о блокировках массивов в памяти +// Если элемент массива передан как var-параметр, то сборщик мусора не трогает этот массив +procedure CopyMem(var o1: T1; var o2: T2; count: integer) := +System.Buffer.MemoryCopy( + @o1, @o2, + count, count +); + +type + StructLayout = System.Runtime.InteropServices.StructLayoutAttribute; + LayoutKind = System.Runtime.InteropServices.LayoutKind; + FieldOffset = System.Runtime.InteropServices.FieldOffsetAttribute; + + + + // Size контролирует размер записи. Его можно не указывать, тогда его выберет автоматически + // В нашем случае нужен один байт для поля length + // А затем место под 255 символов (масимум, который может хранить эта строка) + // При этом каждый символ занимает два байта в памяти + [StructLayout(LayoutKind.&Explicit, Size= 1 + 255*2 )] + ValueString255 = record + public [FieldOffset(0)] length: byte; + public [FieldOffset(1)] body: char; + + public const MaxLength = 255; + + // operator explicit, принимающий array of char и возвращающий ValueString255 выглядит в коде как: + // var s := ValueString255(a); + // Где тип у "a" — array of char + public static function operator explicit(a: array of char): ValueString255; + begin + Result.length := Min(MaxLength, a.Length); // если a.Length>MaxLength, то length надо обрезать до MaxLength + if Result.length=0 then exit; // иначе упадёт a[0] + CopyMem(a[0], Result.body, Result.length*2); // char занимает два байта, поэтому копируем length*2 + end; + + public static function operator explicit(s: string): ValueString255; + begin + Result.length := Min(MaxLength, s.Length); + if Result.length=0 then exit; + CopyMem(s[1], Result.body, Result.length*2); + end; + + public static function operator explicit(s: ValueString255): array of char; + begin + Result := new char[s.length]; + if s.length=0 then exit; + CopyMem(s.body, Result[0], s.length*2); + end; + + // объявлять тип CharArr может быть неудобно + public function ToCharArray: array of char; + type CharArr = array of char; + begin + Result := CharArr(self); + end; + + public static function operator explicit(s: ValueString255): string := + new string(@s.body, 0, s.length); + + public function ToString: string; override := + string(self); + + end; + + ///Это будет сохранять в file of T + AR = record + s: string[255]; + + //dt: DateTime; // Не даёт ¯\_(ツ)_/¯ + dt: int64; // Ну и ладно, в System.DateTime всё хранится в одном поле типа int64 + + i: integer; + ch: char; + b: byte; + end; + ///Это будет сохранять в BlockFileOf + BR = record + s: ValueString255; + dt: DateTime; // А BlockFileOf принимает любые размерные типы без ограничений + i: integer; + ch: char; + b: byte; + end; + + ///Это тип для ввода/вывода + ///В нём хранятся входные данные, общие и для file of T, и для BlockFileOf + ///Тут же описаны и преобразования всех особых типов + ///Заметьте, преобразование string[255] к string и назад ничего не копирует и не преобразовывает, если изначальная строка уже была <= 255 символов + ///Поэтому преобразования между ValueString255 и string работают медленнее + ///И даже при этом BlockFileOf всё равно быстрее + IOR = record + s: string; + dt: System.DateTime; + i: integer; + ch: char; + b: byte; + + static function operator explicit(a: IOR): AR; + begin + Result.s := a.s; + Result.dt := a.dt.Ticks; // Ticks возвращает никак не преобразованное значение единственного внутреннего поля DateTime + Result.i := a.i; + Result.ch := a.ch; + Result.b := a.b; + end; + + static function operator explicit(a: IOR): BR; + begin + Result.s := ValueString255(a.s); // вызываем наш operator explicit + Result.dt := a.dt; + Result.i := a.i; + Result.ch := a.ch; + Result.b := a.b; + end; + + static function operator explicit(a: AR): IOR; + begin + Result.s := a.s; + Result.dt := new DateTime(a.dt); // Единственный конструктор DateTime принимающий 1 параметр - принимает кол-во тиков. И напрямую присваивает это значение внутреннему полю + Result.i := a.i; + Result.ch := a.ch; + Result.b := a.b; + end; + + static function operator explicit(a: BR): IOR; + begin + Result.s := string(a.s); + Result.dt := a.dt; + Result.i := a.i; + Result.ch := a.ch; + Result.b := a.b; + end; + + static function GetRandom: IOR; + begin + Result.s := new string(ArrGen(Random(256), i -> ChrAnsi(Random(byte.MaxValue)))); + Result.dt := System.DateTime.Now.AddTicks(System.Convert.ToInt64(((Random * 2 - 1) * 1024 * 1024 * 1024 * 1024))); + Result.i := (Random(word.MaxValue) shl 16) + Random(word.MaxValue); + Result.ch := ChrAnsi(Random(byte.MaxValue)); + Result.b := Random(256); + end; + + public function ToString: string; override := + $'IOR( s.Length={s.Length}, dt={dt}, i={i}, ch="{ch}", b={b} )'; + + end; + +procedure TestIntegrity1(c: integer); +begin + + var f: file of AR; + var test_arr := ArrGen(c, i -> IOR.GetRandom); + + Rewrite(f, 'temp.bin'); + foreach var a in test_arr.Select(a -> AR(a)) do + f.Write(a); + + f.Close; + + Reset(f); + var n_test_arr := f.ReadElements.Select(a -> IOR(a)).ToArray; + f.Close; + + if not test_arr.SequenceEqual(n_test_arr) then + begin + writeln('тест 1 (file of T) не пройден'); + if test_arr.Length <> n_test_arr.Length then + writeln($'len: {test_arr.Length} <> {n_test_arr.Length}') else + for var i := 0 to test_arr.Length - 1 do + if test_arr[i] <> n_test_arr[i] then + begin + writeln($'el:{#10}{test_arr[i]}{#10}{n_test_arr[i]}{#10}'); + end; + readln; + exit; + end; + +end; + +procedure TestIntegrity2(c: integer); +begin + + var f := new BlockFileOf
('temp.bin'); + var test_arr := ArrGen(c, i -> IOR.GetRandom); + + f.Rewrite; + f.Write(test_arr.ConvertAll(a -> BR(a))); + f.Close; + + f.Reset; + var n_test_arr := f.Read(f.Size).ConvertAll(a -> IOR(a)); + f.Close; + + if not test_arr.SequenceEqual(n_test_arr) then + begin + writeln('тест 2 (BlockFileOf) не пройден'); + if test_arr.Length <> n_test_arr.Length then + writeln($'len: {test_arr.Length} <> {n_test_arr.Length}') else + for var i := 0 to test_arr.Length - 1 do + if test_arr[i] <> n_test_arr[i] then + begin + writeln($'el:{#10}{test_arr[i]}{#10}{n_test_arr[i]}{#10}'); + end; + + readln; + exit; + end; + +end; + +procedure TestIntegrity; +begin + TestIntegrity1(10000); + writeln('тест 1 ok'); + TestIntegrity2(10000); + writeln('тест 2 ok'); + writeln('тесты ok'); +end; + +procedure TestSpeed; +begin + + var sw := new System.Diagnostics.Stopwatch; // Точнее, чем этим, замерить невозможно + var lc := 10; + var ec := 10000;//Чем больше элементов, тем больше преимущество BlockFileOf, потому что он сохраняет их всех сразу. + //Но он быстрее даже если сохранять по одному элементу + var t1, t2: int64; + + var f1: file of AR; + Assign(f1, 'temp.bin'); + var f2 := new BlockFileOf
('temp.bin'); + + while true do + begin + + var test_arr := ArrGen(ec, i -> IOR.GetRandom); + + sw.Restart; + loop lc do + begin + Rewrite(f1); + var AR_arr := test_arr.ConvertAll(a -> AR(a)); + foreach var a in AR_arr do f1.Write(a); + f1.Close; + + Reset(f1); + ArrGen(ec, i -> IOR(f1.Read)); + f1.Close; + end; + sw.Stop; + t1 += sw.ElapsedTicks; + + sw.Restart; + loop lc do + begin + f2.Rewrite; + f2.Write(test_arr.ConvertAll(a -> BR(a))); + f2.Close; + + f2.Reset; + f2.Read(ec).ConvertAll(a -> IOR(a)); + f2.Close; + end; + sw.Stop; + t2 += sw.ElapsedTicks; + + System.GC.Collect; + System.Console.Clear; + writeln($'file of T: {t1}'); + writeln($'BlockFile: {t2}'); + end; + +end; + +begin + // Уберите флажок "Debug версия" в "Сервис>>Настройки>>Опции компиляции" и запускайте по Shift+F9, иначе отладка может неравномерно влиять на результаты + + // Тест на отсутствие ошибок. Можно убрать + TestIntegrity; + + // Тест скорости + // Он бесконечный, чем дольше тестируется - тем более усреднённые, а значит и более точные результаты + TestSpeed; + +end. \ No newline at end of file diff --git a/CheckedTasks/DrawMan/DMpp17.pas b/CheckedTasks/DrawMan/DMpp17.pas new file mode 100644 index 0000000..3c2c23b --- /dev/null +++ b/CheckedTasks/DrawMan/DMpp17.pas @@ -0,0 +1,27 @@ +// Выполнение задания pp17 для Чертежника +uses Drawman; + +procedure Spir(n: integer); +begin + PenDown; + var i := n; + while i>=1 do + begin + OnVector(0,i); + OnVector(i,0); + i -= 1; + OnVector(0,-i); + OnVector(-i,0); + i -= 1; + end; + PenUp; +end; + +begin + Task('pp17'); + ToPoint(2,2); + Spir(10); + ToPoint(16,2); + Spir(8); + ToPoint(0,0); +end. diff --git a/CheckedTasks/DrawMan/DrawManMakeTask/DMMy1.pas b/CheckedTasks/DrawMan/DrawManMakeTask/DMMy1.pas new file mode 100644 index 0000000..bae8386 --- /dev/null +++ b/CheckedTasks/DrawMan/DrawManMakeTask/DMMy1.pas @@ -0,0 +1,5 @@ +uses DrawMan,DMTasks; + +begin + Task('mydm1'); +end. diff --git a/CheckedTasks/DrawMan/DrawManMakeTask/DMTasks.pas b/CheckedTasks/DrawMan/DrawManMakeTask/DMTasks.pas new file mode 100644 index 0000000..ff4c76f --- /dev/null +++ b/CheckedTasks/DrawMan/DrawManMakeTask/DMTasks.pas @@ -0,0 +1,60 @@ +unit DMTasks; + +interface + +uses DMTaskMaker; + +implementation + +procedure FirstDM; +var i,a: integer; +begin + TaskText('Задание mydm1. Начертите, используя цикл'); + Field(14,8); + DoToPoint(7,7); + a:=6; + for i:=1 to 6 do + begin + DoPenDown; + DoOnVector(a,-a); + DoOnVector(-a,a); + DoOnVector(-a,-a); + DoOnVector(a,a); + Dec(a); + DoPenUp; + DoOnVector(0,-1); + end; +end; + +procedure DoCross; +begin + DoPenDown; + DoOnVector(1,0); DoOnVector(0,-1); + DoOnVector(1,0); DoOnVector(0,-1); + DoOnVector(-1,0); DoOnVector(0,-1); + DoOnVector(-1,0); DoOnVector(0,1); + DoOnVector(-1,0); DoOnVector(0,1); + DoOnVector(1,0); DoOnVector(0,1); + DoPenUp; +end; + +procedure SecondDM; +begin + TaskText('Задание mydm2. Начертите, используя процедуру Cross'); + Field(18,12); + DoToPoint(3,8); + DoCross; + DoToPoint(8,4); + DoCross; + DoToPoint(12,11); + DoCross; + DoToPoint(15,6); + DoCross; +end; + +begin + RegisterGroup('mydm','Мои задания для Чертежника','DMTasks',2); + RegisterTask('mydm1',FirstDM); + RegisterTask('mydm2',SecondDM); +end. + diff --git a/CheckedTasks/DrawMan/random_DM.pas b/CheckedTasks/DrawMan/random_DM.pas new file mode 100644 index 0000000..c9f2904 --- /dev/null +++ b/CheckedTasks/DrawMan/random_DM.pas @@ -0,0 +1,16 @@ +// Демонстрация использования случайных чисел для Чертежника. Лучи +uses DrawMan; + +begin + Field(30,22); + ToPoint(15,11); + PenDown; + for var i:=1 to 100 do + begin + var dx := Random(-10,10); + var dy := Random(-10,10); + OnVector(dx,dy); + OnVector(-dx,-dy); + end; + PenUp; +end. diff --git a/CheckedTasks/PT4/Dynamic2.pas b/CheckedTasks/PT4/Dynamic2.pas new file mode 100644 index 0000000..4888d19 --- /dev/null +++ b/CheckedTasks/PT4/Dynamic2.pas @@ -0,0 +1,18 @@ +// Пример решения задачи Dynamic2 из электронного задачника Programming Taskbook +uses PT4; + +var p1,p2: PNode; + +begin + Task('Dynamic2'); + read(p1); + var n := 0; + while p1 <> nil do + begin + write(p1^.Data); + n += 1; + p2 := p1; { сохраняем адрес текущего элемента } + p1 := p1^.Next; { и переходим к следующему элементу } + end; + write(n, p2); +end. \ No newline at end of file diff --git a/CheckedTasks/PT4/File48.pas b/CheckedTasks/PT4/File48.pas new file mode 100644 index 0000000..d73fec2 --- /dev/null +++ b/CheckedTasks/PT4/File48.pas @@ -0,0 +1,24 @@ +// Пример решения задачи File48 из электронного задачника Programming Taskbook +uses PT4; +var + f: array [1..4] of file of integer; +begin + Task('File48'); + for var i:=1 to 4 do + begin + var s: string; + read(s); + Assign(f[i], s); + if i < 4 then Reset(f[i]) + else Rewrite(f[i]); + end; + while not Eof(f[1]) do + for var i:=1 to 3 do + begin + var a: integer; + read(f[i],a); + write(f[4],a); + end; + for var i := 1 to 4 do + Close(f[i]); +end. diff --git a/CheckedTasks/PT4/PT4TaskMaker/Demo1.pas b/CheckedTasks/PT4/PT4TaskMaker/Demo1.pas new file mode 100644 index 0000000..7bee82d --- /dev/null +++ b/CheckedTasks/PT4/PT4TaskMaker/Demo1.pas @@ -0,0 +1,4 @@ +uses PT4, PT4Demo; +begin + Task('Demo1?'); +end. \ No newline at end of file diff --git a/CheckedTasks/PT4/PT4TaskMaker/PT4Demo.pas b/CheckedTasks/PT4/PT4TaskMaker/PT4Demo.pas new file mode 100644 index 0000000..2fed7f4 --- /dev/null +++ b/CheckedTasks/PT4/PT4TaskMaker/PT4Demo.pas @@ -0,0 +1,291 @@ +unit PT4Demo; + +interface + +implementation + +uses PT4TaskMaker; + +procedure Demo3; +var + a, b: real; +begin + CreateTask('Ввод и вывод данных, оператор присваивания'); + TaskText('Даны стороны прямоугольника~{a} и~{b}.', 0, 2); + TaskText('Найти его площадь {S}~=~{a}\*{b} и периметр ' + + '{P}~=~2\*({a}\;+\;{b}).', 0, 4); + a := (1 + Random(100)) / 10; + b := (1 + Random(100)) / 10; + DataR('a = ', a, xLeft, 3, 4); + DataR('b = ', b, xRight, 3, 4); + ResultR('S = ', a * b, 0, 2, 4); + ResultR('P = ', 2 * (a + b), 0, 4, 4); + SetTestCount(3); +end; + +procedure Demo4; +var + m, n, i, j, k: integer; + a: array [1..5, 1..8] of real; +begin + CreateTask('Двумерные массивы (матрицы): вывод элементов'); + TaskText('Дана матрица размера~{M}\;\x\;{N} ' + + 'и целое число~{K} (1~\l~{K}~\l~{M}).', 0, 2); + TaskText('Вывести элементы {K}-й строки данной матрицы.', 0, 4); + m := 2 + Random(4); + n := 4 + Random(5); + k := 1; + if m = 5 then k := 0; + DataN('M = ', m, 3, 1, 1); + DataN('N = ', n, 10, 1, 1); + for i := 1 to M do + for j := 1 to N do + begin + a[i, j] := 9.98 * Random; + DataR('', a[i,j], Center(j, n, 4, 2), i + k, 4); + end; + k := 1 + Random(m); + dataN('K = ', k, 68, 5, 1); + for j := 1 to n do + ResultR('', a[k, j], Center(j, n, 4, 2), 3, 4); +end; + +procedure Demo5; +var s: string; +begin + CreateTask('Символы и строки: основные операции'); + TaskText('Дана строка~{S}.', 0, 2); + TaskText('Вывести ее первый и последний символ.', 0, 4); + s := WordSample(Random(WordCount)); + DataS('S = ', s, 0, 3); + ResultC('Первый символ: ', s[1], xLeft, 3); + ResultC('Последний символ: ', s[length(s)], xRight, 3); + SetTestCount(4); +end; + +function FileName(Len: integer): string; +const + c = '0123456789abcdefghijklmnopqrstuvwxyz'; +var + i: integer; +begin + result := ''; + for i := 1 to Len do + result := result + c[Random(Length(c))+1]; +end; + +procedure Demo6; +var + k, i, j, jmax: integer; + s1, s2, s3: string; + fs1: file of ShortString; + fs2: file of ShortString; + fc3: file of char; + s: ShortString; + c: char; +begin + CreateTask('Символьные и строковые файлы'); + TaskText('Дано целое число~{K} (>\,0) и строковый файл.', 0, 1); + TaskText('Создать два новых файла: строковый, содержащий ' + + 'первые {K}~символов', 0, 2); + TaskText('каждой строки исходного файла, и символьный, ' + + 'содержащий {K}-й символ', 0, 3); + TaskText('каждой строки (если длина строки меньше~{K}, ' + + 'то в строковый файл', 0, 4); + TaskText('записывается вся строка, а в символьный файл ' + + 'записывается пробел).', 0, 5); + s1 := '1' + FileName(5) + '.tst'; + s2 := '2' + FileName(5) + '.tst'; + s3 := '3' + FileName(5) + '.tst'; + Assign(fs1, s1); + Rewrite(fs1); + Assign(fs2, s2); + Rewrite(fs2); + Assign(fc3, s3); + Rewrite(fc3); + k := 2 + Random(10); + jmax := 0; + for i := 1 to 10 + Random(20) do + begin + j := 2 + Random(15); + if jmax < j then + jmax := j; + s := FileName(j); + write(fs1, s); + if j >= k then + c := s[k] + else + c := ' '; + write(fc3, c); + s := copy(s, 1, k); + write(fs2,s); + end; + Close(fs1); + Close(fs2); + Close(fc3); + DataN('K =', k, 0, 1, 2); + DataS('Имя исходного файла: ', s1, 3, 2); + DataS('Имя результирующего строкового файла: ', s2, 3, 4); + DataS('Имя результирующего символьного файла: ', s3, 3, 5); + DataComment('Содержимое исходного файла:', xRight, 2); + DataFileS(s1, 3, jmax + 3); + ResultComment('Содержимое результирующего строкового файла:', 0, 2); + ResultComment('Содержимое результирующего символьного файла:', 0, 4); + ResultFileS(s2, 3, k + 3); + ResultFileC(s3, 5, 4); +end; + +procedure Demo7; +var + p: integer; + s, s1, s2: string; + t1, t2: text; +begin + CreateTask('Текстовые файлы: основные операции'); + TaskText('Дан текстовый файл.', 0, 2); + TaskText('Удалить из него все пустые строки.', 0, 4); + s1 := FileName(6) + '.tst'; + s2 := '#' + FileName(6) + '.tst'; + s := TextSample(Random(TextCount)); + Assign(t2, s2); + Rewrite(t2); + Assign(t1, s1); + Rewrite(t1); + writeln(t2, s); + Close(t2); + p := Pos(#13#10#13#10, s); + while p <> 0 do + begin + Delete(s, p, 2); + p := Pos(#13#10#13#10, s); + end; + writeln(t1, s); + Close(t1); + ResultFileT(s1, 1, 5); + Rename(t2, s1); + DataFileT(s1, 2, 5); + DataS('Имя файла: ', s1, 0, 1); + SetTestCount(3); +end; + +var WrongNode: TNode; + +procedure Demo8Data; +var + i, n: integer; + p, p1, p2: PNode; +begin + if Random(4) = 0 then + n := 1 + else + n := 2 + Random(8); + new(p1); + p1^.Data := Random(90) + 10; + p1^.Prev := nil; + p2 := p1; + for i := 2 to n do + begin + new(p); + p^.Data := Random(90) + 10; + p^.Prev := p2; + p2^.Next := p; + p2 := p; + end; + p2^.Next := nil; + SetPointer(1, p1); + SetPointer(2, p2); + ResultP('Последний элемент: ', 2, 0, 2); + ResultList(1, 0, 3); + ShowPointer(2); + DataP('', 1, 0, 2); + p := p1; + for i := 1 to n do + begin + p^.prev := @WrongNode; + p := p^.Next; + end; + DataList(1, 0, 3); + ShowPointer(1); +end; + +procedure Demo8; +begin + CreateTask('Динамические структуры данных: двусвязный список'); + TaskText('Дан указатель~{P}_1 на начало непустой цепочки ' + + 'элементов-записей типа TNode,', 0, 1); + TaskText('связанных между собой с помощью поля Next. Используя ' + + 'поле Prev записи TNode,', 0, 2); + TaskText('преобразовать исходную (\Iодносвязную\i) цепочку ' + + 'в \Iдвусвязную\i, в которой каждый', 0, 3); + TaskText('элемент связан не только с последующим элементом ' + + '(с помощью поля Next),', 0, 4); + TaskText('но и с предыдущим (с помощью поля Prev). Поле Prev ' + + 'первого элемента положить', 0, 5); + TaskText('равным \N. Вывести указатель на последний элемент ' + + 'преобразованной цепочки.', 0, 0); + Demo8Data; +end; + +procedure Demo8Net; +begin + CreateTask('Динамические структуры данных: двусвязный список'); + TaskText('Дана ссылка~{A}_1 на начало непустой цепочки ' + + 'элементов-объектов типа Node,', 0, 1); + TaskText('связанных между собой с помощью своих свойств Next. ' + + 'Используя свойства Prev', 0, 2); + TaskText('данных объектов, преобразовать исходную ' + + '(\Iодносвязную\i) цепочку в \Iдвусвязную\i,', 0, 3); + TaskText('в которой каждый элемент связан не только ' + + 'с последующим элементом (с помощью', 0, 4); + TaskText('свойства Next), но и с предыдущим (с помощью ' + + 'свойства Prev). Свойство Prev', 0, 5); + TaskText('первого элемента положить равным \O. Вывести ' + + 'ссылку~{A}_2 на последний', 0, 0); + TaskText('элемент преобразованной цепочки.', 0, 0); + SetObjectStyle; + Demo8Data; +end; + +procedure InitTask(num: integer); +begin + case num of + 1..2: UseTask('Begin', num); + 3: Demo3; + 4: Demo4; + 5: Demo5; + 6: Demo6; + 7: Demo7; + 8: Demo8; + 9: Demo8Net; + end; +end; + +begin + CreateGroup('Demo', 'Примеры различных задач', 'М. Э. Абрамян, 2009', + 'df6yui13dffdsttd', 9, InitTask); + CommentText('Данная группа демонстрирует различные возможности'); + CommentText('\Iконструктора учебных заданий\i \MPT4TaskMaker\m.'); + + Subgroup('Ввод и вывод данных, оператор присваивания'); + CommentText('В этой подгруппе содержатся задания, импортированные'); + CommentText('из группы Begin.\PПриводимый ниже абзац преамбулы'); + CommentText('также импортирован из данной группы.\P'); + UseComment('Begin'); + + Subgroup('Двумерные массивы (матрицы): вывод элементов'); + CommentText('Данное задание дублирует задание Matrix7.'); + + Subgroup('Символьные и строковые файлы'); + CommentText('Данное задание дублирует задание File63. Оно демонстрирует'); + CommentText('особенности, связанные с двоичными \Iстроковыми\i файлами.'); + + Subgroup('Текстовые файлы: основные операции'); + CommentText('Данное задание дублирует задание Text16.'); + + Subgroup('Динамические структуры данных: двусвязный список'); + CommentText('Первое задание дублирует задание Dynamic30.'); + CommentText('Второе задание дублирует задание ObjDyn30 и представляет'); + CommentText('собой \<объектный\> вариант первого задания.'); + + RegisterGroup('PT4Demo'); +end. \ No newline at end of file diff --git a/CheckedTasks/PT4/PT4TaskMaker/PT4DemoTest.pas b/CheckedTasks/PT4/PT4TaskMaker/PT4DemoTest.pas new file mode 100644 index 0000000..9736d7a --- /dev/null +++ b/CheckedTasks/PT4/PT4TaskMaker/PT4DemoTest.pas @@ -0,0 +1,7 @@ +uses PT4, PT4Demo; +begin +// для отображения окна задачника +// надо закомментировать вызов процедуры MakeText + MakeText('Demo'); + Task('Demo7?'); +end. \ No newline at end of file diff --git a/CheckedTasks/PT4/String9.pas b/CheckedTasks/PT4/String9.pas new file mode 100644 index 0000000..44715e3 --- /dev/null +++ b/CheckedTasks/PT4/String9.pas @@ -0,0 +1,15 @@ +// Пример решения задачи String9 из электронного задачника Programming Taskbook +uses PT4; +var + n: integer; + c1,c2: char; + s: string; +begin + Task('String9'); + read(n,c1,c2); + s := ''; + for var i := 1 to n div 2 do + s := s + c1 + c2; + write(s); +end. + diff --git a/CheckedTasks/Robot/RBcc17.pas b/CheckedTasks/Robot/RBcc17.pas new file mode 100644 index 0000000..59285e1 --- /dev/null +++ b/CheckedTasks/Robot/RBcc17.pas @@ -0,0 +1,23 @@ +// Выполнение задания cc17 для Робота +uses Robot; + +begin + Task('cc17'); + for var i:=6 downto 1 do + begin + for var j:=1 to i do + begin + for var k:=1 to j do + begin + Paint; + Up; + end; + for var k:=1 to j do + Down; + Right; + end; + Right; + end; + Left; +end. + diff --git a/CheckedTasks/Robot/RobotMakeTask/RBMy1.pas b/CheckedTasks/Robot/RobotMakeTask/RBMy1.pas new file mode 100644 index 0000000..62fbc7a --- /dev/null +++ b/CheckedTasks/Robot/RobotMakeTask/RBMy1.pas @@ -0,0 +1,5 @@ +uses Robot,RobTasks; + +begin + Task('myrob1'); +end. diff --git a/CheckedTasks/Robot/RobotMakeTask/RobTasks.pas b/CheckedTasks/Robot/RobotMakeTask/RobTasks.pas new file mode 100644 index 0000000..d1ae196 --- /dev/null +++ b/CheckedTasks/Robot/RobotMakeTask/RobTasks.pas @@ -0,0 +1,44 @@ +unit RobTasks; + +interface + +uses RobotTaskMaker; + +implementation + +procedure FirstRob; +begin + TaskText('Задание myrob1. Закрасить помеченные клетки'); + Field(10,6); + HorizontalWall(0,3,4); + VerticalWall(4,3,2); + RobotBegin(1,4); + VerticalWall(5,1,5); + HorizontalWall(5,1,4); + RobotEnd(6,2); + Tag(6,2); +end; + +procedure SecondRob; +var n,i: integer; +begin + TaskText('Задание myrob2. Закрасить клетки под закрашенными'); + n:=Random(4)+7; + Field(n,4); + RobotBeginEnd(1,3,n,3); + MarkPainted(n,2); + Tag(n,3); + for i:=2 to n-1 do + if Random(3)=1 then + begin + MarkPainted(i,2); + Tag(i,3); + end; +end; + +begin + RegisterTask('myrob1',FirstRob); + RegisterTask('myrob2',SecondRob); + RegisterGroup('myrob', 'Мои задания для Робота', 'RobTasks', 2); +end. + diff --git a/CheckedTasks/Robot/random_Robot.pas b/CheckedTasks/Robot/random_Robot.pas new file mode 100644 index 0000000..4ab24f2 --- /dev/null +++ b/CheckedTasks/Robot/random_Robot.pas @@ -0,0 +1,17 @@ + // Демонстрация использования случайных чисел для Робота. Случайное блуждание +uses Robot; + +begin + Field(50,40); + while True do + begin + var r := Random(4); + case r of + 0: if FreeFromUp then Up; + 1: if FreeFromDown then Down; + 2: if FreeFromLeft then Left; + 3: if FreeFromRight then Right; + end; + Paint; + end; +end. diff --git a/Games/15.pas b/Games/15.pas new file mode 100644 index 0000000..ccf1f38 --- /dev/null +++ b/Games/15.pas @@ -0,0 +1,178 @@ +// Игра в 15 +uses GraphABC,ABCObjects,ABCButtons; + +const +/// размер поля + n = 4; +/// размер фишки + sz = 100; +/// зазор между фишками + zz = 10; +/// отступ от левого и правого краев + x0 = 20; +/// отступ от верхнего и нижнего краев + y0 = 20; + +var + p: array [1..n,1..n] of SquareABC; + digits: array [1..n*n-1] of integer; + + MeshButton: ButtonABC; + StatusRect: RectangleABC; + + EmptyCellX,EmptyCellY: integer; + MovesCount: integer; + EndOfGame: boolean; // True если все фишки стоят на своих местах + +// Поменять местами две фишки +procedure Swap(var p,p1: SquareABC); +begin + PABCSystem.Swap(p,p1); + var i := p.Left; + p.Left := p1.Left; + p1.Left := i; + i := p.Top; + p.Top := p1.Top; + p1.Top := i; +end; + +// Определить, являются ли клетки соседями +function Neighbours(x1,y1,x2,y2: integer): boolean; +begin + Result := (Abs(x1-x2)=1) and (y1=y2) or (Abs(y1-y2)=1) and (x1=x2) +end; + +// Заполнить вспомогательный массив цифр +procedure FillDigitsArr; +begin + for var i:=1 to n*n-1 do + digits[i] := i; +end; + +// Перемешать вспомогательный массив цифр. Количество обменов должно быть четным +procedure MixDigitsArr; +var x: integer; +begin + for var i:=1 to n*n-1 do + begin + repeat + x := Random(15)+1; + until x<>i; + Swap(digits[i],digits[x]); + end; + if n mod 2=0 then + Swap(digits[1],digits[2]); // количество обменов должно быть четным +end; + +// Заполнить двумерный массив фишек. Вместо пустой ячейки - белая фишка с числом 0 +procedure Fill15ByDigitsArr; +begin + Swap(p[EmptyCellY,EmptyCellX],p[n,n]); // Переместить пустую фишку в правый нижний угол + EmptyCellX := n; + EmptyCellY := n; + var i := 1; + for var y:=1 to n do + for var x:=1 to n do + begin + if x*y=n*n then exit; + p[y,x].Number := digits[i]; + i += 1; + end; +end; + +// Перемешать массив фишек +procedure Mix15; +begin + MixDigitsArr; + Fill15ByDigitsArr; + MovesCount := 0; + EndOfGame := False; + StatusRect.Text := 'Количество ходов: '+IntToStr(MovesCount); + StatusRect.Color := RGB(200,200,255); +end; + +// Создать массив фишек +procedure Create15; +begin + EmptyCellX := n; + EmptyCellY := n; + for var x:=1 to n do + for var y:=1 to n do + begin + p[y,x] := new SquareABC(x0+(x-1)*(sz+zz),y0+(y-1)*(sz+zz),sz,clMoneyGreen); + p[y,x].BorderColor := clGreen; + p[y,x].BorderWidth := 2; + p[y,x].TextScale := 0.7; + end; + p[EmptyCellY,EmptyCellX].Color := clWhite; + p[EmptyCellY,EmptyCellX].BorderColor := clWhite; + FillDigitsArr; + MixDigitsArr; + Fill15ByDigitsArr; +end; + +// Проверить, все ли фишки стоят на своих местах +function IsSolution: boolean; +begin + Result:=True; + var i:=1; + for var y:=1 to n do + for var x:=1 to n do + begin + if p[y,x].Number<>i then + begin + Result:=False; + break; + end; + i += 1; + if i=n*n then i:=0; + end; +end; + +procedure MouseDown(x,y,mb: integer); +begin + if EndOfGame then // Если все фишки на своих местах, то не реагировать на мышь и ждать нажатия кнопки "Перемешать" + exit; + if ObjectUnderPoint(x,y)=nil then // Eсли мы щелкнули не на объекте, то не реагировать на мышь + exit; + var fx := (x-x0) div (sz+zz) + 1; // Вычислить координаты на доске для ячейки, на которой мы щелкнули мышью + var fy := (y-y0) div (sz+zz) + 1; + if (fx>n) or (fy>n) then + exit; + if Neighbours(fx,fy,EmptyCellX,EmptyCellY) then // Если ячейка соседствует с пустой, то поменять их местами + begin + Swap(p[EmptyCellY,EmptyCellX],p[fy,fx]); + EmptyCellX := fx; + EmptyCellY := fy; + Inc(MovesCount); + StatusRect.Text := 'Количество ходов: ' + MovesCount; + if IsSolution then + begin + StatusRect.Text := 'Победа! Сделано ходов: ' + MovesCount; + StatusRect.Color := RGB(255,200,200); + EndOfGame := True; + end + end; +end; + +begin + SetSmoothingOff; + Window.Title := 'Игра в 15'; + Window.IsFixedSize := True; + SetWindowSize(2*x0+(sz+zz)*n-zz,2*y0+(sz+zz)*n-zz+90); + + EndOfGame := False; + Create15; + + MeshButton := ButtonABC.Create((WindowWidth-200) div 2,2*y0+(sz+zz)*n-zz,200,'Перемешать',clLightGray); + MeshButton.OnClick := Mix15; + StatusRect := new RectangleABC(0,WindowHeight-40,WindowWidth,40,RGB(200,200,255)); + StatusRect.TextVisible := True; + StatusRect.Text := 'Количество ходов: '+IntToStr(MovesCount); + StatusRect.BorderWidth := 2; + StatusRect.BorderColor := RGB(80,80,255); + + MovesCount := 0; + + OnMouseDown := MouseDown; +end. diff --git a/Games/Animals/Animals.pas b/Games/Animals/Animals.pas new file mode 100644 index 0000000..2851efb --- /dev/null +++ b/Games/Animals/Animals.pas @@ -0,0 +1,98 @@ +// Самообучающаяся игра "Угадай животное". +// Старайтесь на вопрос "Чем отличается" вводить самый общий ответ +// Например: "Чем отличается чиж от ежа" - "Умеет летать" +type + TNode = class + s: string; + left,right: TNode; + constructor(s: string); + begin + Self.s := s; + left := nil; + right := nil; + end; + end; + +var f: text; + +/// Сохранить дерево в файл +procedure SaveToFile(p: TNode); +begin + if p=nil then + begin + writeln(f,''); + exit + end; + writeln(f,p.s); + SaveToFile(p.left); + SaveToFile(p.right); +end; + +/// Загрузить дерево из файла +function LoadFromFile: TNode; +var + s: string; +begin + readln(f,s); + if s='' then + begin + Result := nil; + exit + end; + var p := new TNode(s); + p.left := LoadFromFile; + p.right := LoadFromFile; + Result := p; +end; + +var + p,p1,p2,root: TNode; + x: integer; + s,q: string; + +begin + writeln('Загадайте животное'); + assign(f, 'animals_data.txt'); + if not FileExists('animals_data.txt') then + root := new TNode('Собака') + else + begin + reset(f); + root := loadfromfile; + close(f); + end; + + p := root; + while p.left<>nil do + begin + Print(p.s+'? (0 - Нет, 1 - Да):'); + readln(x); + if x=1 then + p := p.left + else + p := p.right + end; + + write('Это '+p.s+'? (0 - Нет, 1 - Да): '); + readln(x); + if x=1 then + writeln('Я угадала!') + else + begin + write('Я проиграла. Что это за животное? '); + readln(s); + write('Введите вопрос, отличающий это животное от '+p.s+': '); + readln(q); + p1 := new TNode(s); + p2 := new TNode(p.s); + p.s := q; + p.left := p1; + p.right := p2; + end; + + + + Rewrite(f); + SaveToFile(root); + Close(f); +end. diff --git a/Games/Animals/Animals1.pas b/Games/Animals/Animals1.pas new file mode 100644 index 0000000..6da87fb --- /dev/null +++ b/Games/Animals/Animals1.pas @@ -0,0 +1,66 @@ +// Самообучающаяся игра "Угадай животное". +// Старайтесь на вопрос "Чем отличается" вводить самый общий ответ +// Например: "Чем отличается чиж от ежа" - "Умеет летать" + +uses System.Runtime.Serialization.Formatters.Binary; +uses System.IO; +uses System; + +type + [Serializable] + Node = class + public + s: string; + left,right: Node; + constructor(s: string); + begin + Self.s := s; + left := nil; + right := nil; + end; + end; + +const FileName = 'animals.dat'; + +begin + var formatter := new BinaryFormatter; + var root: Node; + + Println('Загадайте животное'); + if not FileExists(FileName) then + root := new Node('Собака') + else + begin + var fs := new FileStream(FileName, FileMode.OpenOrCreate); + root := Node(formatter.Deserialize(fs)); + fs.Close; + end; + + var p := root; + while p.left<>nil do + begin + var x := ReadlnInteger(p.s+'? (0 - Нет, 1 - Да):'); + if x=1 then + p := p.left + else + p := p.right + end; + + var x := ReadlnInteger('Это '+p.s+'? (0 - Нет, 1 - Да): '); + if x=1 then + Println('Я угадала!') + else + begin + var s := ReadlnString('Я проиграла. Что это за животное?'); + var q := ReadlnString('Введите вопрос, отличающий это животное от '+p.s+':'); + var p1 := new Node(s); + var p2 := new Node(p.s); + p.s := q; + p.left := p1; + p.right := p2; + end; + + var fs := new FileStream(FileName, FileMode.OpenOrCreate); + formatter.Serialize(fs, root); + fs.Close; +end. diff --git a/Games/Animals/animals.dat b/Games/Animals/animals.dat new file mode 100644 index 0000000000000000000000000000000000000000..d812b7ee509127e3c5a40e4b509d2d5b74d80c9e GIT binary patch literal 2971 zcmZ{mX?Ijb5QcL#wCN!XL<~_t7!?6EBDil65O)+&5%+~Th#qQ+KYbyCd7umhJB9*pX|_Z0+8eYu&XudvII({%l)I zTX!xuN73e0f~?unzB_w8CsAi@F1x2|PDktBeO*y)?bRN-_`fGQbpkhpzv8}7%7jb& zD8`3E-q&*M=O7|!y3;vCL-;KeGGRIt@XSm48#wlLax!;$dPHM58)id36K3MExIavl zy;Jg@D{tW}ZavD9a59v_OvuMWVHUtxbuROSNz2`?L2>gDtHas&a46tE!Y#xnEB&Io zt`4w30U8uQ*W0BxqNKv9P~t-TQ>n<3;?ylftgJ9{p0uXp5xhz&{O?c<c9giB&u@|?RS#L|SrA~_etAf@u7hr|nE+~16czXcH~Ym2xT zWpVh~t~USi3^^xnFhvqe1X(I?s}aTBibzvlo+K*NFO%DHxhZRloI#miE|m<1!+D_sI{a?F6EFt`I;=b_ zZWW?FoQwNNGf$LWjH<@4tIOCDZP_0tc;JhetxjR@GBYn|shk(vm{p{q??$N)$9bzB zTkyS*j|U-f z^fKZ1%liR&iy4diAWB{MMGYDsA|qpqGxrc;nPoH`E+n&}zF;P&;AN2e3;tnz{3D1+ z8C$$ZQPSa@kx+u)f^lTEU~!KjQsE?*^c6|!~O}5{gZOCGErO$ zA{CA*5vUfAD$IgBh0pAutHR$}-#* zl%_ImN#RgCQ!f5hjDD+JjR6$*8loZmMDi?)X*z6@j4t}u<@ts@MSw-#hN8xXoiN3f zMha){O+-^T2GvETtylXI=56^E{dSE0Ekq=0EYRC185UKZCd_l6?fMKUveB<(@Q#4* z3S)Glxc3m+JmWwro9BJGeIPd#XYoIjo2~E5jX=6qHWv4h%;AJhZ;@U}`c4HK`eT&F z@TbG;!wkBGPoER%}wLR+|_x+&;sxf5=@gVJr#PYKGIiL$3{!$T7qxDCuxI z9t#uXRrxF#ZNlwGtkUYxD^O_$at8UQFZMMrn)f-J{Q*QIJ}i72iVLTKj+2ftq?2|; zQx!Q}tdCK`$EO(mXNXA5SeOo!<<J|TJpyLQxn zF5njessg+4OO)ydu&Ow72N5Y+TAzKb@vr#Ze~pNgwqd_PSzVPZUlOgtS&snEK9rQUlzJ#0z+|-x*^g*s^^^w>D1}-QegKmnL_{jt0v$rJ|IRQA$)YzRICX~+ z3#&LtlH@x-gux#{L@M0E{D7j*HOmZ|G*VjkMhO--jHsjKi*#rY1|?#+5tMpcC}M!o z$7l%(^&?^-tMHN xmax then x:= xmax; + if x < xmin then x:= xmin; + if y > ymax then y:= ymax; + if y < ymin then y:= ymin; + show + end; + + procedure MakeDeti(var mama, StartAkula, KonAkula, StartKilka, KonKilka : fish); + //произвести потомство + var d: fish; + begin + razm:= 0; + food:= 0; + d:= fish.create(x, y, r, tip, mama, next); + next.prev:= d; + next:= d; + if mama = KonAkula then KonAkula:= d; + if mama = KonKilka then KonKilka:= d; + opisanie[tip].kol:= opisanie[tip].kol + 1; + opisanie[tip].ShowKol(tip*40 + 20); + end; + + procedure step(var ribka, StartAkula, KonAkula, StartKilka, KonKilka : fish); + //Здесь алгоритмы для рыб + var + dx, dy, d, dx2, dy2, dmin: real; + t, trup, found: fish; + FoundOhot: boolean; + begin + status:= 1; //Нормальное состояние + dx:= 0; dy:= 0; + if tip > 0 then + begin //Начало алгоритма для жертв + t:= StartAkula; + if t<>nil then + repeat //Ищем всех хищников в поле видимости + d:= sqrt((x - t.x)*(x - t.x) + (y - t.y)*(y - t.y)); + if d < opisanie[tip].See then + begin + if d < eps then d:= eps; + dx2:= (x - t.x)/(d*d); + dy2:= (y - t.y)/(d*d); + dx:= dx + dx2; + dy:= dy + dy2; + status:= 2; //Возбуждённое состояние + end; + t:= t.next + until t = KonAkula.next; + //И обратим внимание на края: + if x - xmin < opisanie[tip].See then dx:= dx + 1/((x - xmin + eps)*strahkraj); + if xmax - x < opisanie[tip].See then dx:= dx + 1/((x - xmax - eps)*strahkraj); + if y - ymin < opisanie[tip].See then dy:= dy + 1/((y - ymin + eps)*strahkraj); + if ymax - y < opisanie[tip].See then dy:= dy + 1/((y - ymax - eps)*strahkraj); + d:= sqrt(dx*dx + dy*dy); + if d < eps then + begin + dx:= 2*status*random()*opisanie[tip].Speed - status*opisanie[tip].Speed; + dy:= 2*status*random()*opisanie[tip].Speed - status*opisanie[tip].Speed + end + else + begin + dx:= status*opisanie[tip].Speed*dx/d; + dy:= status*opisanie[tip].Speed*dy/d + end + end + else {tip = 0} + begin //Начало алгоритма для хищников + dmin:= 11000; + t:= StartAkula; + while t<>ribka do //Проверяем всех выше по иерархии + begin + + d:= sqrt((x - t.x)*(x - t.x) + (y - t.y)*(y - t.y)); + if (d < dmin) and (abs(dx0 - t.dx0) < epsustupi) and + (abs(dy0 - t.dy0) < epsustupi) then dmin:= d; + + t:= t.next + end; + FoundOhot:= dmin < ustupi; + dmin:= 11000; + found:= nil; + t:= StartKilka; + if (t<>nil) and (life > 100) and not FoundOhot then + repeat + + d:= sqrt((x - t.x)*(x - t.x) + (y - t.y)*(y - t.y)); + if d < dmin then + begin + dmin:= d; + found:= t //found - ближайшая жертва + end; + t:= t.next + until t = KonKilka.next; + if (found <> nil) and (dmin < opisanie[tip].See) then + begin + status:= 2; //Возбуждённое состояние + dx:= found.x - x; + dy:= found.y - y; + if dmin < CanEat + status*opisanie[tip].Speed then + begin //Поедание + found.next.prev:= found.prev; + found.prev.next:= found.next; + if (found = StartKilka) and (found = KonKilka) then + begin + //StartKilka:= nil; + //KonKilka:= nil + end; + if found = StartKilka then + StartKilka:= StartKilka.next; + if found = KonKilka then + KonKilka:= KonKilka.prev; + found.destroy; + found := nil; + food:= food + 1 + end + end + else + if (x <= xmin) or (x >= xmax) or (y <= ymin) or (y >= ymax) then + begin + dx:= 2*status*random()*opisanie[tip].Speed - status*opisanie[tip].Speed; + dy:= 2*status*random()*opisanie[tip].Speed - status*opisanie[tip].Speed + end + else + begin + dx:= dx0; dy:= dy0 //Повтор предыдущего шага - патрулирование + end; + d:= sqrt(dx*dx + dy*dy); + if d > eps then + begin + dx:= status*opisanie[tip].Speed*dx/d; + dy:= status*opisanie[tip].Speed*dy/d; + end + end; + //Начало алгоритма для всех рыб + moveto(dx, dy); + dx0:= dx; dy0:= dy; + life:= life + 1; razm:= razm + 1; + if opisanie[tip].Kol >= opisanie[tip].MaxKol then Razm:= 0; + if (razm > opisanie[tip].CanRazm) and (food >= opisanie[tip].minfood) then + MakeDeti(ribka, StartAkula, KonAkula, StartKilka, KonKilka); + if life > opisanie[tip].MaxLife then //Смерть от старости + begin + trup:= ribka; ribka:= ribka.prev; + trup.next.prev:= trup.prev; + trup.prev.next:= trup.next; + if trup = StartKilka then + StartKilka:= StartKilka.next; + if trup = KonKilka then + KonKilka:= KonKilka.prev; + if trup = StartAkula then + StartAkula:= StartAkula.next; + if trup = KonAkula then + KonAkula:= KonAkula.prev; + if trup = trup.next then ribka:= nil; + if trup <> nil then + trup.destroy; + trup := nil; + end + end; + + end; + +function getAllCount:integer; +var i,c:integer; +begin + c:=0; + for i:=0 to types do + c:=c+opisanie[i].Kol; + getAllCount:=c; +end; + +var i: integer; + p, q, StartAkula, StartKilka, KonAkula, KonKilka, tek: fish; + +begin + SetSmoothing(False); + SetWindowSize(Width, Height); + SetWindowLeft(200); + SetWindowTop(50); + SetWindowCaption('Битва за жизнь'); + SetFontSize(7); + SetFontName('Arial'); + SetBrushColor(BkColor); + FillRectangle(0, 0, Width, Height); + SetFontColor(clWhite); + TextOut(10, ymax + 20, 'Автор программы - Иванов С.О. e-mail: ssyy@yandex.ru'); + TextOut(10, ymax + 20+1*18, 'Программа моделирует поведение нескольких стай рыб. Справа - количества рыб в текущий'); + TextOut(10, ymax + 20+2*18, 'момент времени. Изменяя параметры в коде программы, можно влиять на ход битвы.'); + TextOut(10, ymax + 20+3*18, 'По умолчанию: красные - хищники, поедают любых рыб из других стай, не плодятся,'); + TextOut(10, ymax + 20+4*18, 'пока не поели; синие - жертвы, самые медленные, но быстрее всех плодятся; зелёные - жертвы,'); + TextOut(10, ymax + 20+5*18, 'быстрее синих, но плодятся медленнее; желтые - самые быстрые среди жертв, но желтых мало.'); + SetFontSize(12); + StartAkula:= nil; + StartKilka:= nil; + KonAkula:= nil; + KonKilka:= nil; + + //c - цвет. + //CanRazm - минимальное количество ходов отдельно взятой рыбы между двумя + // её последовательными размножениями. + //MaxKol - максимально допустимое количество рыб данного вида. + //Kol - количество рыб данного вида в текущий момент времени. + //MaxLife - максимальная продолжительность жизни. + // После того, как рыба сделает больше шагов, чем это число, она умирает. + //MinFood - минимальное количество съеденных жертв, необходимое для размножения + // (только для хищников; для жертв это количество принято за -1). + //Speed - нормальная скорость. Максимальная скорость рыбы в 2 раза больше этого числа. + //See - радиус обзора - как далеко видит рыба. + + //c, CanRazm, MaxKol, MaxLife, MinFood, Speed, See + opisanie[3]:= fishtype.create(clYellow, 300, 15, 1500, -1, 0.99, 50); + opisanie[2]:= fishtype.create(clGreen, 150, 50, 1500, -1, 0.9, 50); + opisanie[1]:= fishtype.create(clBlue, 30, 50, 500, -1, 0.7, 35); + opisanie[0]:= fishtype.create(clRed, 1000, 40, 5000, 1, 1, 500); + SetPenColor(clWhite); + rectangle(round(xmin - rmax - 1), round(ymin - rmax - 1), + round(xmax + rmax + 1), round(ymax + rmax + 1)); + //Теперь нужно построить первоначальный список + q:= fish.create(xmin + 10, ymax - 10, rmax, 0, nil, nil); + p:= fish.create(xmin + 10, ymin + 10, rmax, 1, q, q); + q.next:= p; q.prev:= p; + StartAkula:= q; KonAkula:= q; + StartKilka:= p; KonKilka:= p; + p:= fish.create(xmax - 10, ymin + 10, rmax, 2, KonKilka, StartAkula); + StartAkula.prev:= p; + KonKilka.next:= p; KonKilka:= p; + p:= fish.create(xmax - 10, ymax - 10, rmax, 3, KonKilka, StartAkula); + StartAkula.prev:= p; + KonKilka.next:= p; KonKilka:= p; + for i:= 0 to types do opisanie[i].ShowKol(i*40 + 20); + //И все ходят по очереди, пока хоть кто-то жив. + tek:= StartKilka; + //i:=0;c:=getallcount;LockDrawing; + repeat + tek:= tek.next; + tek.step(tek, StartAkula, KonAkula, StartKilka, KonKilka); + {i:=i+1; + if i>=c then begin + i:=0;c:=getallcount; + Redraw; + end;} + until (tek = nil); + +end. diff --git a/Games/BookWorm/BookWormABCNET.pas b/Games/BookWorm/BookWormABCNET.pas new file mode 100644 index 0000000..287a368 --- /dev/null +++ b/Games/BookWorm/BookWormABCNET.pas @@ -0,0 +1,228 @@ +uses GraphABC,ABCObjects,ABCButtons; + +const +/// Примерная частота повторяемости букв + freqcharstr='аааааааааааааааааааааааааабббббввввввввггггдддддддееееееееееееееееееееежжззззииииииииииииииииииийккккккккккккккклллллллллллммммммнннннннннннннннннооооооооооооооооооооооооппппппппрррррррррррррррррссссссссссссстттттттттттттттууууууффххцццчччшшщыыьььььэюяяяя'; + +const + MaxWordLen = 12; + scorehits: array [1..MaxWordLen] of integer = (0,1,2,4,7,11,16,22,29,37,46,56); + +type + MySquareABC = class(SquareABC) end; + +var +/// Доска с буквами + MainBoard: ObjectBoardABC; +/// Доска высоты 1 для размещения слова + WordBoard: ObjectBoardABC; +/// Номер первого незанятого символа на доске WordBoard + cur: integer; +/// Количество ходов + moves: integer; +/// Очки + score: integer; +/// Прямоугольник для отображения информации + Status: RectangleABC; + +/// Существует ли такое слово (все слова хранятся в файле words.txt) +function WordExists(s: string): boolean; +var + f: text; + str: string; +begin + s := LowerCase(s); + Result := False; + assign(f,'words.txt'); + reset(f); + while not eof(f) do + begin + readln(f,str); + if s=str then + begin + Result := True; + break; + end; + end; + close(f); +end; + +procedure MyMouseDown(x,y,mb: integer); +begin +// Нажата левая мышь + if mb=1 then + begin + if cur>WordBoard.DimX then + exit; + var ob := ObjectUnderPoint(x,y); + if (ob is MySquareABC) and ob.Visible then + begin + var ob1 := WordBoard[cur,1]; + ob1.Visible := True; + ob1.Text := ob.Text; + Inc(cur); + ob.Visible := False; + var s := ''; + for var i:=1 to cur-1 do + s := s + WordBoard[i,1].Text; + if WordExists(s) then + WordBoard.Color := clYellow + else WordBoard.Color := clSkyBlue + end; + end + else +// Нажата правая мышь + begin + for var xx:=1 to cur-1 do + WordBoard[xx,1].Visible := False; + for var xx:=1 to MainBoard.DimX do + for var yy:=1 to MainBoard.DimY do + MainBoard[xx,yy].Visible:=True; + cur := 1; + WordBoard.Color := clSkyBlue + end; +end; + +/// Обработчик кнопки "Новая игра" +procedure BtNewClick; +begin + score := 0; + moves := 0; + Status.Text := 'Ходов: '+IntToStr(moves)+' Очков: '+IntToStr(score); + MyMouseDown(1,1,2); + for var xx:=1 to MainBoard.DimX do + for var yy:=1 to MainBoard.DimY do + MainBoard[xx,yy].Text := UpCase(freqcharstr[Random(255)+1]); +end; + +/// Обработчик кнопки "Сказать слово" +procedure BtWordClick; +begin + if WordBoard.Color<>clYellow then + exit; + Inc(score,scorehits[cur-1]); + Inc(moves); + for var xx:=1 to cur-1 do + WordBoard[xx,1].Visible:=False; + for var xx:=1 to MainBoard.DimX do + for var yy:=1 to MainBoard.DimY do + if not MainBoard[xx,yy].Visible then + begin + MainBoard[xx,yy].Visible:=True; + MainBoard[xx,yy].Text:=UpCase(freqcharstr[Random(255)+1]); + end; + cur := 1; + WordBoard.Color := clSkyBlue; + Status.Text := 'Ходов: '+IntToStr(moves)+' Очков: '+IntToStr(score); +end; + +/// Обработчик кнопки "Подсказка" +procedure BtPleaseClick; +var + f: text; + str,maxstr: string; + arr,work: array ['а'..'я'] of integer; + maxlen: integer; + + function CanConstructWord(s: string): boolean; + begin + work := arr; + Result := True; + for var i:=1 to Length(s) do + begin + Dec(work[s[i]]); + if work[s[i]]<0 then + begin + Result := False; + break; + end; + end; + end; + +begin // BtPleaseClick + maxlen := 0; + maxstr := ''; + for var c:='а' to 'я' do + arr[c]:=0; + + for var xx:=1 to MainBoard.DimX do + for var yy:=1 to MainBoard.DimY do + Inc(arr[LowCase(MainBoard[xx,yy].Text[1])]); + + assign(f,'words.txt'); + reset(f); + while not eof(f) do + begin + readln(f,str); + if CanConstructWord(str) and (Length(str)>maxlen) and (Length(str)<=MaxWordLen) then + begin + maxlen := Length(str); + maxstr := str; + end; + end; + close(f); + + writeln(maxstr); +end; + +procedure InitWindow; +begin + SetWindowSize(640,480); + Window.IsFixedSize := True; + Window.Title := 'Знай русские слова!'; + Brush.Color := clMoneyGreen; + FillRect(0,0,WindowWidth,WindowHeight); +end; + +procedure InitGameVars; +begin + cur := 1; + moves := 0; + score := 0; +end; + +procedure InitButtons; +begin + var btword := new ButtonABC(70,410,180,30,'Сказать слово',clGray); + var btnew := new ButtonABC(280,410,100,30,'Заново',clLightGray); + var btplease := new ButtonABC(410,410,160,30,'Подсказка',clGray); + +// Привязка обработчиков к кнопкам + btword.OnClick := BtWordClick; + btnew.OnClick := BtNewClick; + btplease.OnClick := BtPleaseClick; +end; + + +procedure InitInterface; +begin + Status := new RectangleABC(70,350,500,30,clSkyBlue); + Status.Text := 'Ходов: 0 Очков: 0'; + WordBoard := new ObjectBoardABC(20,40,MaxWordLen,1,50,50,clSkyBlue); + MainBoard := new ObjectBoardABC(220,120,4,4,50,50,clMoneyGreen); + MainBoard.BorderColor := clGreen; + //MainBoard.Bordered := False; + + for var x:=1 to WordBoard.DimX do + begin + WordBoard[x,1] := new SquareABC(0,0,WordBoard.CellSizeX-6,clWhite); + WordBoard[x,1].Visible := False; + end; + for var x:=1 to MainBoard.DimX do + for var y:=1 to MainBoard.DimY do + begin + MainBoard[x,y] := new MySquareABC(0,0,MainBoard.CellSizeX-6,clWhite); + MainBoard[x,y].Text := UpCase(freqcharstr[Random(freqcharstr.Length)+1]); + end; +end; + +begin + SetConsoleIO; + + InitWindow; + InitGameVars; + InitInterface; + InitButtons; + + OnMouseDown := MyMouseDown; +end. \ No newline at end of file diff --git a/Games/BookWorm/words.txt b/Games/BookWorm/words.txt new file mode 100644 index 0000000..1f8de26 --- /dev/null +++ b/Games/BookWorm/words.txt @@ -0,0 +1,14842 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Games/DeleteByMouse.pas b/Games/DeleteByMouse.pas new file mode 100644 index 0000000..bcbf463 --- /dev/null +++ b/Games/DeleteByMouse.pas @@ -0,0 +1,56 @@ +uses WPFObjects; + +const CountSquares = 20; + +var + /// Текущая цифра + CurrentDigit: integer; + /// Количество ошибок + Mistakes: integer; + /// Строка информации + StatusRect: RectangleWPF; + +/// Вывод информационной строки +procedure DrawStatusText; +begin + if CurrentDigit<=CountSquares then + StatusRect.Text := $'Удалено квадратов: {CurrentDigit-1} Ошибок: {Mistakes}' + else StatusRect.Text := $'Игра окончена. Время: {Milliseconds div 1000} с. Ошибок: {Mistakes}'; +end; + +/// Обработчик события мыши +procedure MyMouseDown(x,y: real; mb: integer); +begin + var ob := ObjectUnderPoint(x,y); + if (ob<>nil) and (ob is RectangleWPF) and (ob<>StatusRect) then + if ob.Number=CurrentDigit then + begin + ob.Destroy; + Inc(CurrentDigit); + DrawStatusText; + end + else + begin + ob.Color := Colors.Red; + Inc(Mistakes); + DrawStatusText; + end; +end; + +begin + Window.Title := 'Игра: удали все квадраты по порядку'; + for var i:=1 to CountSquares do + begin + var x := Random(Window.Width-50); + var y := Random(Window.Height-100); + var ob := RectangleWPF.Create(x,y,50,50,Colors.LightGreen,1); + ob.FontSize := 25; + ob.Number := i; + end; + StatusRect := RectangleWPF.Create(0,Window.Height-40,Window.Width,40,Colors.LightBlue); + CurrentDigit := 1; + Mistakes := 0; + DrawStatusText; + // Установка обработчиков + OnMouseDown := MyMouseDown; +end. \ No newline at end of file diff --git a/Games/KillThem.pas b/Games/KillThem.pas new file mode 100644 index 0000000..29ce53a --- /dev/null +++ b/Games/KillThem.pas @@ -0,0 +1,238 @@ +uses ABCObjects,GraphABC,Timers; + +const + clPlayer = Color.BurlyWood; + +var + kLeftKey,kRightKey: boolean; + kSpaceKey: integer; + /// Игрок + Player: RectangleABC; + /// Таймер движения врагов + t: Timer; + /// Флаг конца игры + EndOfGame: boolean; + /// Количество неигровых объектов + StaticObjectsCount: integer; + /// Счетчик выигрышей + Wins: integer; + /// Счетчик проигрышей + Falls: integer; + /// Информационная строка + InfoString: RectangleABC; + /// Сообщение в начале игры + NewGame: RoundRectABC; + +type + KeysType = (kLeft,kRight); + + /// Класс пули + Pulya = class(CircleABC) + public + constructor Create(x,y: integer); + procedure Move; override; + end; + + /// Класс врага + Enemy = class(RectangleABC) + public + constructor Create(x,y,w: integer); + procedure Move; override; + end; + +constructor Pulya.Create(x,y: integer); +begin + inherited Create(x,y,5,clRed); + dx := 0; + dy := -5; +end; + +procedure Pulya.Move; +begin + inherited Move; + if Top<0 then + Visible := False; + for var j:=StaticObjectsCount to Objects.Count-1 do + // При столкновении пуля и объект становятся невидимыми + if (Objects[j]<>Self) and Intersect(Objects[j]) then + begin + Objects[j].Visible := False; + Visible := False; + end; +end; + +constructor Enemy.Create(x,y,w: integer); +begin + inherited Create(x,y,w,20,clRandom); + if Random(2)=0 then + dx := 5 + else dx := -5; + dy := 0; +end; + +procedure Enemy.Move; +begin + if Random(2)<>0 then + Exit; + if Random(10)=0 then + dy := 5; + if (Left<0) or (Left+Width>Window.Width) or (Random(30)=0) then + dx := -dx; + inherited Move; + if dy<>0 then + dy := 0; + if Top>Window.Height-50 then + EndOfGame := True; +end; + +/// Количество врагов +function NumberOfEnemies: integer; +begin + Result := 0; + for var i:=0 to Objects.Count-1 do + if Objects[i] is Enemy then + Result += 1; +end; + +/// Создание игрока и врагов +procedure CreateObjects; +begin + Player := new RectangleABC(280,WindowHeight-30,100,20,clPlayer); + for var i:=1 to 100 do + begin + var r1 := new Enemy(Random(WindowWidth-50),40+Random(10),50); + r1.TextVisible := True; + r1.Number := i; + end; +end; + +/// Разрушение игрока и врагов +procedure DestroyObjects; +begin + for var i:=Objects.Count-1 downto StaticObjectsCount do + Objects[i].Destroy; +end; + +/// Перемещение врагов +procedure MoveObjects; +begin + for var i:=StaticObjectsCount+1 to Objects.Count-1 do + Objects[i].Move; +end; + +/// Удаление уничтоженных объектов +procedure DestroyKilledObjects; +begin + for var i:=ObjectsCount-1 downto StaticObjectsCount+1 do + if not Objects[i].Visible then + Objects[i].Destroy; +end; + +/// Обработчик нажатия клавиши +procedure KeyDown(Key: integer); +begin + case Key of +vk_Left: kLeftKey := True; +vk_Right: kRightKey := True; +vk_Space: if kSpaceKey=2 then kSpaceKey := 1; + end; +end; + +/// Обработчик отжатия клавиши +procedure KeyUp(Key: integer); +begin + case Key of +vk_Left: kLeftKey := False; +vk_Right: kRightKey := False; +vk_Space: kSpaceKey := 2; + end; +end; + +/// Изменение информационной строки +procedure ChangeInfoString; +begin + InfoString.Text := 'Врагов: '+IntToStr(NumberOfEnemies)+' Побед: '+IntToStr(Wins)+' Поражений: '+IntToStr(Falls); +end; + +/// Обработчик нажатия символьной клавиши +procedure KeyPress(Key: char); +begin + if (Key in ['G','П','g','п']) and EndOfGame then + begin + NewGame.Visible := False; + EndOfGame := False; + t.Start; + CreateObjects; + kSpaceKey := 2; + kLeftKey := False; + kRightKey := False; + end; +end; + +/// Обработчик отжатия мыши +procedure MouseUp(x,y,mb: integer); +begin + if NewGame.PTInside(x,y) then + KeyPress('G'); +end; + +/// Обработчик таймера +procedure TimerProc; +begin + if kLeftKey and (Player.Left>0) then + Player.MoveOn(-10,0); + if kRightKey and (Player.Left+Player.Width0 then + Falls += 1 + else Wins += 1; + NewGame.Visible := True; + DestroyObjects; + ChangeInfoString; + RedrawObjects; + end; +end; + +begin + Window.Title := 'Стрелялка'; + Window.IsFixedSize := True; + ClearWindow(clBlack); + LockDrawingObjects; + EndOfGame := True; + InfoString := new RectangleABC(0,0,Window.Width,38,Color.DarkBlue); + InfoString.Bordered := False; + InfoString.FontColor := clWhite; + InfoString.TextScale := 0.9; + + var zz := 100; + NewGame := new RoundRectABC(zz,200,400,200,30,Color.Violet); + NewGame.Center := Window.Center; + NewGame.Text := 'G - Новая игра'; + StaticObjectsCount := Objects.Count; + ChangeInfoString; + RedrawObjects; + + OnKeyDown := KeyDown; + OnKeyPress := KeyPress; + OnKeyUp := KeyUp; + OnMouseUp := MouseUp; + + t := new Timer(1,TimerProc); +end. diff --git a/Games/Life.pas b/Games/Life.pas new file mode 100644 index 0000000..8c0af51 --- /dev/null +++ b/Games/Life.pas @@ -0,0 +1,318 @@ +// Игра "Жизнь" на торе +// Оптимизация хешированием по равномерной сетке +uses GraphABC; + +const +/// Ширина клетки + w = 4; +/// Количество клеток по ширине + m = 300; +/// Количество клеток по высоте + n = 220; +/// Отступ поля от левой границы окна + x0 = 1; +/// Отступ поля от верхней границы окна + y0 = 21; + mm = m + 1; + nn = n + 1; +/// Количество клеток сетки по горизонтали + mk = 15; +/// Количество клеток сетки по вертикали + nk = 10; + +var + a,b,sosedia,sosedib: array [0..nn,0..mm] of byte; + obnovA,obnovB: array [1..nk,1..mk] of boolean; + CountCells: integer; + obn: boolean; + gen: integer; + hn,hm: integer; + +/// Нарисовать ячейку +procedure DrawCell(i,j: integer); +begin + DrawInBuffer := False; + SetBrushColor(clBlack); + FillRectangle(x0+(j-1)*w,y0+(i-1)*w,x0+j*w-1,y0+i*w-1); + DrawInBuffer := True; +end; + +/// Стереть ячейку +procedure ClearCell(i,j: integer); +begin + DrawInBuffer := False; + SetBrushColor(clWhite); + FillRectangle(x0+(j-1)*w,y0+(i-1)*w,x0+j*w-1,y0+i*w-1); + DrawInBuffer := True; +end; + +/// Нарисовать все изменившиеся ячейки +procedure DrawConfiguration; +begin + for var i:=1 to n do + for var j:=1 to m do + begin + var bb := b[i,j]; + if a[i,j]<>bb then + if bb=1 then DrawCell(i,j) + else ClearCell(i,j); + end; +end; + +/// Нарисовать все ячейки +procedure DrawConfigurationFull; +begin + for var i:=1 to n do + for var j:=1 to m do + if b[i,j]=1 then DrawCell(i,j) + else ClearCell(i,j); +end; + +/// Нарисовать поле +procedure DrawField; +begin + Pen.Color := clLightGray; + for var i:=0 to m do + begin + if i mod hm = 0 then + Pen.Color := clGray + else Pen.Color := clLightGray; + Line(x0+i*w-1,y0,x0+i*w-1,y0+n*w); + end; + for var i:=0 to n do + begin + if i mod hn = 0 then + Pen.Color := clGray + else Pen.Color := clLightGray; + Line(x0,y0+i*w-1,x0+m*w,y0+i*w-1); + end; +end; + +/// Увеличить массив соседей для данной клетки +procedure IncSosedi(i,j: integer); +var i1,i2,j1,j2: integer; +begin + if i=1 then i1:=n else i1:=i-1; + if i=n then i2:=1 else i2:=i+1; + if j=1 then j1:=m else j1:=j-1; + if j=m then j2:=1 else j2:=j+1; + SosediB[i1,j1] += 1; + SosediB[i1,j] += 1; + SosediB[i1,j2] += 1; + SosediB[i,j1] += 1; + SosediB[i,j2] += 1; + SosediB[i2,j1] += 1; + SosediB[i2,j] += 1; + SosediB[i2,j2] += 1; +end; + +/// Уменьшить массив соседей для данной клетки +procedure DecSosedi(i,j: integer); +var i1,i2,j1,j2: integer; +begin + if i=1 then i1:=n else i1:=i-1; + if i=n then i2:=1 else i2:=i+1; + if j=1 then j1:=m else j1:=j-1; + if j=m then j2:=1 else j2:=j+1; + SosediB[i1,j1] -= 1; + SosediB[i1,j] -= 1; + SosediB[i1,j2] -= 1; + SosediB[i,j1] -= 1; + SosediB[i,j2] -= 1; + SosediB[i2,j1] -= 1; + SosediB[i2,j] -= 1; + SosediB[i2,j2] -= 1; +end; + +/// Поставить ячейку в клетку (i,j) +procedure SetCell(i,j: integer); +begin + if b[i,j]=0 then + begin + b[i,j] := 1; + obn := True; + IncSosedi(i,j); + end; + CountCells += 1; +end; + +/// Убрать ячейку из клетки (i,j) +procedure UnSetCell(i,j: integer); +begin + if b[i,j]=1 then + begin + b[i,j] := 0; + obn := True; + DecSosedi(i,j); + end; + CountCells -= 1; +end; + +/// Инициализировать массивы и конфигурацию поля +procedure Init; +var + xc := n div 2; + yc := m div 2; +begin + for var i:=0 to n+1 do + for var j:=0 to m+1 do + b[i,j] := 0; + a := b; + SosediB := b; + SosediA := SosediB; + for var ik:=1 to nk do + for var jk:=1 to mk do + obnovB[ik,jk] := True; + obnovA := obnovB; + CountCells := 0; + + SetCell(xc,yc); + SetCell(xc,yc+1); + SetCell(xc,yc+2); + SetCell(xc-1,yc+2); + SetCell(xc+1,yc+1); +end; + +/// Обработать ячейку +procedure ProcessCell(i,j: integer); +begin + case SosediA[i,j] of +0..1,4..9: + if b[i,j]=1 then + begin + b[i,j] := 0; + obn := True; + DecSosedi(i,j); + ClearCell(i,j); + Dec(CountCells); + end; +3: if b[i,j]=0 then + begin + b[i,j] := 1; + obn := True; + IncSosedi(i,j); + DrawCell(i,j); + Inc(CountCells); + end; + end; {case} +end; + +/// Перейти к следующему поколению +procedure NextGen; +begin + for var ik:=1 to nk do + begin + for var jk:=1 to mk do + begin + obn := False; + var ifirst := (ik-1)*hn+1; + var ilast := (ik-1)*hn+hn; + var jfirst := (jk-1)*hm+1; + var jlast := (jk-1)*hm+hm; + if obnovA[ik,jk] then + begin + for var i:=ifirst to ilast do + for var j:=jfirst to jlast do + ProcessCell(i,j); + end + else + begin + var ik1,jk1,ik2,jk2: integer; + if ik=1 then ik1:=nk else ik1:=ik-1; + if ik=nk then ik2:=1 else ik2:=ik+1; + if jk=1 then jk1:=mk else jk1:=jk-1; + if jk=mk then jk2:=1 else jk2:=jk+1; + var l := obnovA[ik,jk1]; + var r := obnovA[ik,jk2]; + var u := obnovA[ik1,jk]; + var d := obnovA[ik2,jk]; + var lu := obnovA[ik1,jk1]; + var ld := obnovA[ik2,jk1]; + var ru := obnovA[ik1,jk2]; + var rd := obnovA[ik2,jk2]; + if u then + for var j:=jfirst+1 to jlast-1 do + ProcessCell(ifirst,j); + if d then + for var j:=jfirst+1 to jlast-1 do + ProcessCell(ilast,j); + if l then + for var i:=ifirst+1 to ilast-1 do + ProcessCell(i,jfirst); + if r then + for var i:=ifirst+1 to ilast-1 do + ProcessCell(i,jlast); + if u or l or lu then + ProcessCell(ifirst,jfirst); + if u or r or ru then + ProcessCell(ifirst,jlast); + if d or l or ld then + ProcessCell(ilast,jfirst); + if d or r or rd then + ProcessCell(ilast,jlast); + end; + obnovB[ik,jk] := obn; + end; + end; +end; + +/// Перерисовка содержимого окна +procedure LifeRedrawProc; +begin + Redraw; + DrawConfigurationFull; +end; + +/// Вывод номера поколения и количества ячеек +procedure DrawInfo; +begin + Brush.Color := clWhite; + TextOut(25,0,'Поколение '+IntToStr(gen)); + TextOut(WindowWidth - 130,0,'Жителей: '+IntToStr(CountCells)+' '); +end; + +begin + SetConsoleIO; + if (m mod mk<>0) or (n mod nk<>0) then + begin + writeln('Размер кластера не согласован с размером поля. Программа завершена'); + exit + end; + hm := m div mk; + hn := n div nk; + SetWindowSize(x0+m*w,y0+n*w); + CenterWindow; + Window.Title := 'Игра "Жизнь"'; + Window.IsFixedSize := True; + Font.Name := 'Arial'; + Font.Size := 10; + Init; + + LockDrawing; + DrawInfo; + DrawField; + DrawConfiguration; + UnLockDrawing; + + var mil := Milliseconds; + gen := 0; + RedrawProc := LifeRedrawProc; + while True do + begin + gen += 1; + + if gen mod 11 = 0 then + DrawInfo; + + SosediA := SosediB; + obnovA := obnovB; + NextGen; + + if gen mod 1000 = 0 then + begin + var mil1 := Milliseconds; + writeln(gen,' ',(mil1-mil)/1000); + mil := mil1; + end; + end; +end. diff --git a/Games/Matches.pas b/Games/Matches.pas new file mode 100644 index 0000000..3ad8100 --- /dev/null +++ b/Games/Matches.pas @@ -0,0 +1,45 @@ +// Игра "Спички" +const InitialCount=15; + +var + /// Текущее количество спичек + Count: integer; + /// Количество спичек, которое берет игрок + Num: integer; + /// Номер текущего игрока + Player: integer; + +begin + Player := 1; + Count := InitialCount; + + repeat + if Player=1 then + begin + var Correct: boolean; + repeat + Write('Ваш ход. На столе ',Count,' спичек. '); + Write('Сколько спичек Вы берете? '); + Readln(Num); + Correct := (Num>=1) and (Num<=3) and (Num<=Count); + if not Correct then + writeln('Неверно! Повторите ввод!'); + until Correct; + end + else + begin + Num := Random(1,3); + if Num>Count then + Num := Count; + Writeln('Мой ход. Я взял ',Num,' спичек'); + end; + Count -= Num; + if Player=1 then + Player := 2 + else Player := 1; + until Count=0; + + if Player=1 then + Writeln('Вы победили!') + else Writeln('Вы проиграли!'); +end. diff --git a/Games/NewLife.pas b/Games/NewLife.pas new file mode 100644 index 0000000..e580795 --- /dev/null +++ b/Games/NewLife.pas @@ -0,0 +1,350 @@ +// Игра Жизнь на торе +// Оптимизация хешированием по равномерной сетке + +uses GraphABC; + +const + w =3; + w1=1; + k=20; + m=300; + n=220; + graphW=0; + mk=m div k;//15; + nk=n div k;//10; + mm=m+1; + nn=n+1; + x0=1; + y0=21; + ClearColor=clBlack; + FillColor=clLimeGreen; + +var + FiledColor := RGB(0,40,0); + FiledColor2 := RGB(0,70,0); + + {ClearColor=clWhite; + FillColor=clBlack; + FiledColor=clLightGray; + FiledColor2=clGray;{} + + +var + //a,b,sosedia,sosedib: array [0..nn,0..mm] of byte; + a,b,sosedia,sosedib:array of array of byte; + //obnovA,obnovB: array [1..nk,1..mk] of boolean; + obnovA,obnovB: array of array of boolean; + count: integer; + obn: boolean; + mil,mil1: integer; + hn,hm: integer; + +procedure AssignArray(var arr:array of array of boolean; n,m:integer); +begin + SetLength(arr,n); + for var i:=0 to n-1 do + SetLength(arr[i],m); +end; +procedure AssignArray(var arr:array of array of byte; n,m:integer); +begin + SetLength(arr,n); + for var i:=0 to n-1 do + SetLength(arr[i],m); +end; +procedure CopyArray(arr1,arr2:array of array of byte); +begin + for var i:=0 to arr1.Length-1 do + arr1[i].CopyTo(arr2[i],0); +end; +procedure CopyArray(arr1,arr2:array of array of boolean); +begin + for var i:=0 to arr1.Length-1 do + arr1[i].CopyTo(arr2[i],0); +end; + +procedure DrawCell(i,j: integer); +begin + if BrushColor<>FillColor then begin + SetBrushColor(FillColor); + SetPenColor(FillColor); + end; + FillRect(x0+(j-1)*w,y0+(i-1)*w,x0+j*w-w1,y0+i*w-w1); +end; + + +procedure ClearCell(i,j: integer); +begin + if BrushColor<>clearColor then begin + SetBrushColor(clearColor); + SetPenColor(clearColor); + end; + FillRect(x0+(j-1)*w,y0+(i-1)*w,x0+j*w-w1,y0+i*w-w1); +end; + +procedure DrawConfiguration; +begin + for var i:=1 to n do + for var j:=1 to m do + if a[i,j]=1 then + DrawCell(i,j) +end; + +procedure DrawField; +begin + SetBrushColor(ClearColor); + FillRectangle(x0,y0,x0+m*w,y0+n*w); + SetPenColor(FiledColor); + for var i:=0 to m do + Line(x0+i*w-1,y0,x0+i*w-1,y0+n*w); + for var i:=0 to n do + Line(x0,y0+i*w-1,x0+m*w,y0+i*w-1); + SetPenColor(FiledColor2); + for var i:=0 to m div hm do + Line(x0+i*w*hm-1,y0,x0+i*w*hm-1,y0+n*w); + for var i:=0 to n div hn do + Line(x0,y0+i*w*hn-1,x0+m*w,y0+i*w*hn-1); +end; + +procedure IncSosedi(i,j: integer); +begin + var i1 := i=1 ? n : i-1; + var i2 := i=n ? 1 : i+1; + var j1 := j=1 ? m : j-1; + var j2 := j=m ? 1 : j+1; + SosediB[i1,j1] += 1; + SosediB[i1,j] += 1; + SosediB[i1,j2] += 1; + SosediB[i,j1] += 1; + SosediB[i,j2] += 1; + SosediB[i2,j1] += 1; + SosediB[i2,j] += 1; + SosediB[i2,j2] += 1; +end; + +procedure DecSosedi(i,j: integer); +begin + var i1 := i=1 ? n : i-1; + var i2 := i=n ? 1 : i+1; + var j1 := j=1 ? m : j-1; + var j2 := j=m ? 1 : j+1; + SosediB[i1,j1] -= 1; + SosediB[i1,j] -= 1; + SosediB[i1,j2] -= 1; + SosediB[i,j1] -= 1; + SosediB[i,j2] -= 1; + SosediB[i2,j1] -= 1; + SosediB[i2,j] -= 1; + SosediB[i2,j2] -= 1; +end; + +procedure SetCell(i,j: integer); +begin + if b[i,j]=0 then + begin + b[i,j]:=1; + obn:=true; + IncSosedi(i,j); + end; + count += 1; +end; + +procedure UnSetCell(i,j: integer); +begin + if b[i,j]=1 then + begin + b[i,j]:=0; + obn:=true; + DecSosedi(i,j); + end; + count -= 1; +end; + +type + ColonyType = (Big, LD, RD, LU, RU); +procedure AddColonyType(xc,yc:integer; ctype:ColonyType); +begin + case ctype of + ColonyType.Big:begin + SetCell(xc,yc); + SetCell(xc,yc+1); + SetCell(xc,yc+2); + SetCell(xc-1,yc+2); + SetCell(xc+1,yc+1); + end; + ColonyType.LD:begin + SetCell(xc,yc-1); + SetCell(xc,yc); + SetCell(xc,yc+1); + SetCell(xc-1,yc-1); + SetCell(xc-2,yc); + end; + end; + //SosediA:=SosediB; + CopyArray(sosedib,sosedia); + for var ik:=1 to nk do + for var jk:=1 to mk do + obnovB[ik,jk]:=true; + //obnovA:=obnovB; + CopyArray(obnovB,obnovA); +end; + +procedure Init; +begin + Count:=0; + AddColonyType(n div 2,m div 2, ColonyType.Big); +end; + +procedure OnlyCase(i,j: integer); +begin + case SosediA[i,j] of +0..1,4..9: + if b[i,j]=1 then + begin + b[i,j]:=0; + obn:=true; + DecSosedi(i,j); + ClearCell(i,j); + count -= 1; + end; +3: if b[i,j]=0 then + begin + b[i,j]:=1; + obn:=true; + IncSosedi(i,j); + DrawCell(i,j); + count += 1; + end; + end; +end; + +procedure NextGen; +var + i,j,ik1,jk1,ik2,jk2,ifirst,jfirst,ilast,jlast: integer; + l,r,u,d,lu,ld,ru,rd: boolean; +begin + for var ik:=1 to nk do + begin + for var jk:=1 to mk do + begin + obn := false; + ifirst := (ik-1)*hn+1; + ilast := ik*hn; + jfirst := (jk-1)*hm+1; + jlast := jk*hm; + if obnovA[ik,jk] then + begin + for i:=ifirst to ilast do + for j:=jfirst to jlast do + OnlyCase(i,j); + end + else + begin + ik1 := ik=1 ? nk : ik-1; + ik2 := ik=nk ? 1 : ik+1; + jk1 := jk=1 ? mk : jk-1; + jk2 := jk=mk ? 1 : jk+1; + l:=obnovA[ik,jk1]; + r:=obnovA[ik,jk2]; + u:=obnovA[ik1,jk]; + d:=obnovA[ik2,jk]; + lu:=obnovA[ik1,jk1]; + ld:=obnovA[ik2,jk1]; + ru:=obnovA[ik1,jk2]; + rd:=obnovA[ik2,jk2]; + if u then + begin + i:=ifirst; + for j:=jfirst+1 to jlast-1 do + OnlyCase(i,j); + end; + if d then + begin + i:=ilast; + for j:=jfirst+1 to jlast-1 do + OnlyCase(i,j); + end; + if l then + begin + j:=jfirst; + for i:=ifirst+1 to ilast-1 do + OnlyCase(i,j); + end; + if r then + begin + j:=jlast; + for i:=ifirst+1 to ilast-1 do + OnlyCase(i,j); + end; + if u or l or lu then + OnlyCase(ifirst,jfirst); + if u or r or ru then + OnlyCase(ifirst,jlast); + if d or l or ld then + OnlyCase(ilast,jfirst); + if d or r or rd then + OnlyCase(ilast,jlast); + end; + obnovB[ik,jk]:=obn; + end; + end; +end; + +procedure MouseDown(x,y,b:integer); +begin + case b of + 1:AddColonyType((y-y0)div w,(x-x0)div w, ColonyType.LD); + + end; +end; + +begin + SetConsoleIO; + AssignArray(obnovA,nk+1,mk+1); + AssignArray(obnovB,nk+1,mk+1); + AssignArray(a,nn+1,mm+1); + AssignArray(b,nn+1,mm+1); + AssignArray(sosedia,nn+1,mm+1); + AssignArray(sosedib,nn+1,mm+1); + SetWindowCaption('Игра "Жизнь"'); + if (m mod mk<>0) or (n mod nk<>0) then + begin + writeln('Размер кластера не согласован с размером поля. Программа завершена'); + exit + end; + hm:=m div mk; + hn:=n div nk; + SetBrushColor(ClearColor); + SetWindowSize(x0+m*w,y0+n*w+graphW); + CenterWindow; + ClearWindow(ClearColor); + SetFontName('Courier New'); + SetFontSize(10); + Init; + DrawField; + DrawConfiguration; + OnMouseDown:=MouseDown; + mil:=Milliseconds; + var gen:=0; + DrawInBuffer := false; + while true do begin + gen+=1; + //SosediA:=SosediB; + //obnovA:=obnovB; + CopyArray(sosedib,sosedia); + CopyArray(obnovB,obnovA); + NextGen; + if gen mod 10 = 0 then begin + DrawInBuffer := True; + SetBrushColor(ClearColor); + SetFontColor(FillColor); + TextOut(25, 0,'Поколение: '+IntToStr(gen)); + TextOut(765,0,'Жителей: '+IntToStr(count)+' '); + if gen mod 1000 = 0 then begin + mil1:=Milliseconds; + writeln(gen,' ',(mil1-mil)/1000); + mil:=mil1; + end; + DrawInBuffer := false; + end; + end; +end. diff --git a/Games/PifTableExam.pas b/Games/PifTableExam.pas new file mode 100644 index 0000000..0ca2d64 --- /dev/null +++ b/Games/PifTableExam.pas @@ -0,0 +1,61 @@ +uses GraphWPF,Controls,Sounds; + +var x, y: integer; + +procedure NextQuestion; +begin + Window.Clear; + (x, y) := Random2(2, 9); + DrawText(GraphWindow.ClientRect,$'{x} × {y} = ?'); +end; + +function Оценка(ВерныхОтветов: integer): integer; +begin + case ВерныхОтветов of + 10, 9: Оценка := 5; + 8, 7: Оценка := 4; + 4..6: Оценка := 3; + else Оценка := 2; + end; +end; + +begin + Window.Title := 'Проверка таблицы умножения'; + Font.Size := 40; + var l := LeftPanel(200); + l.FontSize := 16; + var sb := StatusBar; + NextQuestion; + + var Результат := IntegerBox('Введите ответ:',0,100); + var b := Button('Ответить'); + var КоличествоОтветов := IntegerBlock('Ответов:'); + var ВерныхОтветов := IntegerBlock('Верных ответов:'); + + b.Click := procedure → begin + if x * y = Результат then + begin + sb.Text := 'Верно!'; + ВерныхОтветов += 1; + end + else + begin + sb.Text := 'Неверно :('; + end; + КоличествоОтветов += 1; + Результат := 0; + if КоличествоОтветов = 10 then // Конец опроса + begin + MessageBox.Show('Тест окончен.'#10#10'Верных ответов: ' + + ВерныхОтветов.Value + #10#10 + 'Оценка: ' + Оценка(ВерныхОтветов)); + // Переход к следующему тесту + ВерныхОтветов := 0; + КоличествоОтветов := 0; + end; + NextQuestion; + end; + OnResize := procedure → begin + Window.Clear; + DrawText(GraphWindow.ClientRect,$'{x} × {y} = ?'); + end; +end. \ No newline at end of file diff --git a/Games/PifTableExam1.pas b/Games/PifTableExam1.pas new file mode 100644 index 0000000..9227926 --- /dev/null +++ b/Games/PifTableExam1.pas @@ -0,0 +1,63 @@ +uses GraphWPF,Controls,Sounds; + +function Оценка(ВерныхОтветов: integer): integer; +begin + case ВерныхОтветов of + 10, 9: Оценка := 5; + 8, 7: Оценка := 4; + 4..6: Оценка := 3; + else Оценка := 2; + end; +end; + +begin + Window.Title := 'Проверка таблицы умножения'; + Font.Size := 60; + var l := LeftPanel(200); + l.FontSize := 16; + var sb := StatusBar; + + var Результат := IntegerBox('Введите ответ:',0,100); + var b := Button('Ответить'); + var КоличествоОтветов := IntegerBlock('Ответов:'); + var ВерныхОтветов := IntegerBlock('Верных ответов:'); + + var ТестОкончен := procedure → begin + MessageBox.Show('Тест окончен.'+#10#10+'Верных ответов: ' + + ВерныхОтветов.Value + #10#10 + 'Оценка: ' + Оценка(ВерныхОтветов)); + // Переход к следующему тесту + ВерныхОтветов := 0; + КоличествоОтветов := 0; + end; + + var x, y: integer; // сомножители + + var НарисоватьТест := procedure → begin + Window.Clear; + DrawText(GraphWindow.ClientRect,$'{x} × {y} = ?'); + end; + + var СледующийВопрос := procedure → begin + (x, y) := Random2(2, 9); + НарисоватьТест; + end; + СледующийВопрос; + + b.Click := procedure → begin + if x * y = Результат then + begin + sb.Text := 'Верно!'; + ВерныхОтветов += 1; + end + else + begin + sb.Text := 'Неверно :('; + end; + КоличествоОтветов += 1; + Результат := 0; + if КоличествоОтветов = 10 then // Конец опроса + ТестОкончен; + СледующийВопрос; + end; + OnResize := НарисоватьТест; +end. \ No newline at end of file diff --git a/Graph3D/All3DPrimitives.pas b/Graph3D/All3DPrimitives.pas new file mode 100644 index 0000000..dbb3d13 --- /dev/null +++ b/Graph3D/All3DPrimitives.pas @@ -0,0 +1,51 @@ +uses Graph3D; + +begin + Window.Title := '3D-'; + + var rr := Rectangle3D(-3.5,-2,0,3,2,Colors.MediumPurple); + rr.Rotate(v3d(0,1,0),30); + + var := CoordinateSystem(2); + + var Ar := Arrow(3,0,0,0,0,2,Colors.Tan); + + var p := P3D(5,-5,0); + var t := TruncatedCone(p,2,0.9,0.7,False,Colors.Red); + p := p.MoveX(-2); + TruncatedCone(p,2,0.9,0.7,Colors.BlueViolet); + p := p.MoveX(-2); + Cylinder(p,2,0.9,False,Colors.Crimson); + p := p.MoveX(-2); + var cc := Cylinder(p,2,0.9,Colors.Chocolate); + p := p.MoveX(-2); + var := Cone(p,2.5,0.9,Colors.DarkGreen); + p := p.MoveX(-2); + var c := Sphere(p.MoveZ(0.7),1,Colors.Crimson); + Text3D(p.MoveZ(2.3),'',0.7); + + p := P3D(5,-2,0); + var := Teapot(p.MoveZ(0.9),Colors.ForestGreen); + //.Rotate(V3D(0,1,0),45); + var bb := BillboardText(p.Move(2,0,0.7),'Billboard'+NewLine + '""',12); + p := p.MoveX(-2.75); + var cb := Cube(p.MoveZ(0.75),1.5,Colors.DodgerBlue); + cb.Scale(1.2); + cb.Rotate(V3D(0,0,1),45); + p := p.MoveX(-2.75); + var b := Box(p,Sz3D(2,1,1),Colors.PaleGreen); + b.Rotate(V3D(0,1,0),-30); + p := P3D(5,1,0); + var := Ellipsoid(p.MoveZ(0.6),1.3,0.8,0.6,Colors.Violet); + p := p.MoveX(-7); + var pp := Tube(p,2,0.7,0.5,Colors.DodgerBlue); + //View3D.Save('a2.jpg'); + + {while True do + begin + .Rotate(V3D(0,0,1),10.8); + .Rotate(V3D(0,0,1),-5.8); + .Rotate(V3D(0,0,1),1); + Sleep(50); + end;} +end. \ No newline at end of file diff --git a/Graph3D/Chess3D/bishop.obj b/Graph3D/Chess3D/bishop.obj new file mode 100644 index 0000000..d3f8be6 --- /dev/null +++ b/Graph3D/Chess3D/bishop.obj @@ -0,0 +1,3110 @@ +# Blender3D v245 OBJ File: chess2.blend +# www.blender3d.org +v 3.600000 -6.400000 0.000000 +v 3.705525 -6.528583 0.000000 +v 3.783938 -6.675282 0.000000 +v 3.832224 -6.834460 0.000000 +v 3.848528 -7.000000 0.000000 +v 3.832224 -7.165540 0.000000 +v 3.783938 -7.324718 0.000000 +v 3.705525 -7.471417 0.000000 +v 3.600000 -7.600000 0.000000 +v 3.471417 -7.705525 0.000000 +v 3.324718 -7.783938 0.000000 +v 3.165540 -7.832224 0.000000 +v 3.000000 -7.848528 0.000000 +v 2.834460 -7.832224 0.000000 +v 2.675282 -7.783937 0.000000 +v 2.528583 -7.705525 0.000000 +v 2.400000 -7.599999 0.000000 +v 2.294474 -7.471416 0.000000 +v 2.216062 -7.324717 0.000000 +v 2.167776 -7.165539 0.000000 +v 2.151472 -6.999999 0.000000 +v 2.167776 -6.834459 0.000000 +v 2.216063 -6.675282 0.000000 +v 2.294475 -6.528582 0.000000 +v 2.400001 -6.399999 0.000000 +v 2.528584 -6.294474 0.000000 +v 2.675283 -6.216062 0.000000 +v 2.834462 -6.167776 0.000000 +v 3.000001 -6.151472 0.000000 +v 3.165541 -6.167777 0.000000 +v 3.324719 -6.216063 0.000000 +v 3.471418 -6.294476 0.000000 +v 3.471418 -6.294476 0.100000 +v 3.324719 -6.216063 0.100000 +v 3.165541 -6.167777 0.100000 +v 3.000001 -6.151472 0.100000 +v 2.834462 -6.167776 0.100000 +v 2.675283 -6.216062 0.100000 +v 2.528584 -6.294474 0.100000 +v 2.400001 -6.399999 0.100000 +v 2.294475 -6.528582 0.100000 +v 2.216063 -6.675282 0.100000 +v 2.167776 -6.834459 0.100000 +v 2.151472 -6.999999 0.100000 +v 2.167776 -7.165539 0.100000 +v 2.216062 -7.324717 0.100000 +v 2.294474 -7.471416 0.100000 +v 2.400000 -7.599999 0.100000 +v 2.528583 -7.705525 0.100000 +v 2.675282 -7.783937 0.100000 +v 2.834460 -7.832224 0.100000 +v 3.000000 -7.848528 0.100000 +v 3.165540 -7.832224 0.100000 +v 3.324718 -7.783938 0.100000 +v 3.471417 -7.705525 0.100000 +v 3.600000 -7.600000 0.100000 +v 3.705525 -7.471417 0.100000 +v 3.783938 -7.324718 0.100000 +v 3.832224 -7.165540 0.100000 +v 3.848528 -7.000000 0.100000 +v 3.832224 -6.834460 0.100000 +v 3.783938 -6.675282 0.100000 +v 3.705525 -6.528583 0.100000 +v 3.600000 -6.400000 0.100000 +v 3.420000 -6.580000 0.200000 +v 3.493868 -6.670008 0.200000 +v 3.548756 -6.772697 0.200000 +v 3.582557 -6.884122 0.200000 +v 3.593970 -7.000000 0.200000 +v 3.582557 -7.115878 0.200000 +v 3.548757 -7.227302 0.200000 +v 3.493868 -7.329992 0.200000 +v 3.420000 -7.420000 0.200000 +v 3.329992 -7.493868 0.200000 +v 3.227302 -7.548757 0.200000 +v 3.115878 -7.582557 0.200000 +v 3.000000 -7.593970 0.200000 +v 2.884122 -7.582557 0.200000 +v 2.772697 -7.548757 0.200000 +v 2.670008 -7.493867 0.200000 +v 2.580000 -7.420000 0.200000 +v 2.506132 -7.329991 0.200000 +v 2.451243 -7.227302 0.200000 +v 2.417443 -7.115877 0.200000 +v 2.406030 -7.000000 0.200000 +v 2.417443 -6.884122 0.200000 +v 2.451244 -6.772697 0.200000 +v 2.506133 -6.670008 0.200000 +v 2.580000 -6.579999 0.200000 +v 2.670009 -6.506132 0.200000 +v 2.772698 -6.451243 0.200000 +v 2.884123 -6.417443 0.200000 +v 3.000001 -6.406030 0.200000 +v 3.115879 -6.417443 0.200000 +v 3.227303 -6.451244 0.200000 +v 3.329993 -6.506133 0.200000 +v 3.362992 -6.456746 0.300000 +v 3.250034 -6.396369 0.300000 +v 3.127467 -6.359188 0.300000 +v 3.000001 -6.346633 0.300000 +v 2.872535 -6.359187 0.300000 +v 2.749968 -6.396368 0.300000 +v 2.637010 -6.456745 0.300000 +v 2.538001 -6.537999 0.300000 +v 2.456746 -6.637008 0.300000 +v 2.396368 -6.749967 0.300000 +v 2.359188 -6.872534 0.300000 +v 2.346633 -7.000000 0.300000 +v 2.359188 -7.127465 0.300000 +v 2.396368 -7.250032 0.300000 +v 2.456745 -7.362991 0.300000 +v 2.538000 -7.462000 0.300000 +v 2.637009 -7.543254 0.300000 +v 2.749967 -7.603632 0.300000 +v 2.872534 -7.640812 0.300000 +v 3.000000 -7.653367 0.300000 +v 3.127465 -7.640812 0.300000 +v 3.250032 -7.603632 0.300000 +v 3.362991 -7.543254 0.300000 +v 3.462000 -7.462000 0.300000 +v 3.543255 -7.362991 0.300000 +v 3.603632 -7.250032 0.300000 +v 3.640812 -7.127465 0.300000 +v 3.653367 -7.000000 0.300000 +v 3.640812 -6.872534 0.300000 +v 3.603632 -6.749968 0.300000 +v 3.543255 -6.637009 0.300000 +v 3.462000 -6.538000 0.300000 +v 3.323400 -6.676600 0.400000 +v 3.380278 -6.745906 0.400000 +v 3.422543 -6.824977 0.400000 +v 3.448569 -6.910774 0.400000 +v 3.457357 -7.000000 0.400000 +v 3.448569 -7.089226 0.400000 +v 3.422543 -7.175023 0.400000 +v 3.380278 -7.254094 0.400000 +v 3.323400 -7.323400 0.400000 +v 3.254094 -7.380278 0.400000 +v 3.175023 -7.422543 0.400000 +v 3.089226 -7.448569 0.400000 +v 3.000000 -7.457356 0.400000 +v 2.910774 -7.448569 0.400000 +v 2.824977 -7.422543 0.400000 +v 2.745906 -7.380278 0.400000 +v 2.676600 -7.323400 0.400000 +v 2.619722 -7.254094 0.400000 +v 2.577457 -7.175023 0.400000 +v 2.551431 -7.089225 0.400000 +v 2.542643 -7.000000 0.400000 +v 2.551431 -6.910774 0.400000 +v 2.577458 -6.824977 0.400000 +v 2.619722 -6.745906 0.400000 +v 2.676600 -6.676600 0.400000 +v 2.745907 -6.619721 0.400000 +v 2.824978 -6.577457 0.400000 +v 2.910775 -6.551431 0.400000 +v 3.000001 -6.542644 0.400000 +v 3.089227 -6.551432 0.400000 +v 3.175024 -6.577458 0.400000 +v 3.254094 -6.619722 0.400000 +v 3.177866 -6.733806 1.400000 +v 3.122516 -6.704220 1.400000 +v 3.062459 -6.686002 1.400000 +v 3.000000 -6.679851 1.400000 +v 2.937542 -6.686002 1.400000 +v 2.877485 -6.704220 1.400000 +v 2.822135 -6.733805 1.400000 +v 2.773620 -6.773620 1.400000 +v 2.733805 -6.822134 1.400000 +v 2.704221 -6.877484 1.400000 +v 2.686002 -6.937541 1.400000 +v 2.679850 -7.000000 1.400000 +v 2.686002 -7.062458 1.400000 +v 2.704220 -7.122516 1.400000 +v 2.733805 -7.177866 1.400000 +v 2.773620 -7.226380 1.400000 +v 2.822134 -7.266195 1.400000 +v 2.877484 -7.295780 1.400000 +v 2.937542 -7.313998 1.400000 +v 3.000000 -7.320149 1.400000 +v 3.062458 -7.313998 1.400000 +v 3.122516 -7.295780 1.400000 +v 3.177866 -7.266195 1.400000 +v 3.226380 -7.226380 1.400000 +v 3.266195 -7.177866 1.400000 +v 3.295780 -7.122516 1.400000 +v 3.313998 -7.062458 1.400000 +v 3.320150 -7.000000 1.400000 +v 3.313998 -6.937542 1.400000 +v 3.295780 -6.877484 1.400000 +v 3.266195 -6.822134 1.400000 +v 3.226380 -6.773620 1.400000 +v 3.407484 -6.592516 1.400000 +v 3.479151 -6.679842 1.400000 +v 3.532403 -6.779471 1.400000 +v 3.565197 -6.887576 1.400000 +v 3.576269 -7.000000 1.400000 +v 3.565197 -7.112424 1.400000 +v 3.532403 -7.220529 1.400000 +v 3.479151 -7.320158 1.400000 +v 3.407484 -7.407484 1.400000 +v 3.320158 -7.479150 1.400000 +v 3.220529 -7.532403 1.400000 +v 3.112424 -7.565197 1.400000 +v 3.000000 -7.576269 1.400000 +v 2.887575 -7.565197 1.400000 +v 2.779471 -7.532403 1.400000 +v 2.679842 -7.479150 1.400000 +v 2.592516 -7.407484 1.400000 +v 2.520849 -7.320158 1.400000 +v 2.467596 -7.220528 1.400000 +v 2.434803 -7.112424 1.400000 +v 2.423731 -7.000000 1.400000 +v 2.434803 -6.887575 1.400000 +v 2.467597 -6.779470 1.400000 +v 2.520850 -6.679841 1.400000 +v 2.592516 -6.592515 1.400000 +v 2.679842 -6.520849 1.400000 +v 2.779472 -6.467596 1.400000 +v 2.887576 -6.434803 1.400000 +v 3.000001 -6.423731 1.400000 +v 3.112426 -6.434803 1.400000 +v 3.220530 -6.467597 1.400000 +v 3.320159 -6.520850 1.400000 +v 3.064032 -6.904170 2.300000 +v 3.044106 -6.893519 2.300000 +v 3.022485 -6.886961 2.300000 +v 3.000000 -6.884746 2.300000 +v 2.977515 -6.886961 2.300000 +v 2.955894 -6.893519 2.300000 +v 2.935968 -6.904170 2.300000 +v 2.918503 -6.918503 2.300000 +v 2.904170 -6.935968 2.300000 +v 2.893519 -6.955894 2.300000 +v 3.044106 -7.106481 2.300000 +v 3.064032 -7.095830 2.300000 +v 3.081497 -7.081497 2.300000 +v 3.095830 -7.064032 2.300000 +v 3.106481 -7.044106 2.300000 +v 3.113039 -7.022485 2.300000 +v 3.115254 -7.000000 2.300000 +v 3.113039 -6.977515 2.300000 +v 3.106481 -6.955894 2.300000 +v 3.095830 -6.935968 2.300000 +v 3.081497 -6.918503 2.300000 +v 3.000000 -7.000000 0.000000 +v 3.037939 -7.000000 2.486669 +v 3.050014 -7.000000 2.482349 +v 3.118423 -6.976445 2.311595 +v 3.122661 -6.975602 2.323670 +v 3.125717 -6.974994 2.336112 +v 3.127563 -6.974627 2.348798 +v 3.128180 -6.974504 2.361608 +v 3.127563 -6.974627 2.374417 +v 3.125717 -6.974994 2.387104 +v 3.122661 -6.975602 2.399545 +v 3.118423 -6.976445 2.411620 +v 3.113045 -6.977515 2.423214 +v 3.106578 -6.978801 2.434215 +v 3.099085 -6.980292 2.444516 +v 3.090637 -6.981972 2.454019 +v 3.081317 -6.983826 2.462632 +v 3.071214 -6.985836 2.470272 +v 3.060425 -6.987982 2.476866 +v 3.049053 -6.990243 2.482349 +v 3.037210 -6.992599 2.486669 +v 3.025008 -6.995027 2.489786 +v 3.012565 -6.997501 2.491668 +v 3.011836 -6.995099 2.491668 +v 3.023557 -6.990243 2.489786 +v 3.035051 -6.985483 2.486669 +v 3.046207 -6.980862 2.482349 +v 3.056919 -6.976425 2.476866 +v 3.067082 -6.972215 2.470272 +v 3.076599 -6.968273 2.462632 +v 3.085379 -6.964636 2.454019 +v 3.093336 -6.961340 2.444516 +v 3.100394 -6.958416 2.434215 +v 3.106486 -6.955894 2.423214 +v 3.111552 -6.953795 2.411620 +v 3.115544 -6.952141 2.399545 +v 3.118423 -6.950949 2.387104 +v 3.120162 -6.950229 2.374417 +v 3.120743 -6.949988 2.361608 +v 3.120162 -6.950229 2.348798 +v 3.118423 -6.950949 2.336112 +v 3.115544 -6.952141 2.323670 +v 3.111552 -6.953795 2.311595 +v 3.100394 -6.932920 2.311595 +v 3.103987 -6.930520 2.323670 +v 3.106578 -6.928789 2.336112 +v 3.108143 -6.927743 2.348798 +v 3.108666 -6.927393 2.361608 +v 3.108143 -6.927743 2.374417 +v 3.106578 -6.928789 2.387104 +v 3.103987 -6.930520 2.399545 +v 3.100394 -6.932920 2.411620 +v 3.095835 -6.935967 2.423214 +v 3.090353 -6.939630 2.434215 +v 3.084000 -6.943874 2.444516 +v 3.076839 -6.948659 2.454019 +v 3.068938 -6.953939 2.462632 +v 3.060372 -6.959662 2.470272 +v 3.051226 -6.965774 2.476866 +v 3.041586 -6.972215 2.482349 +v 3.031545 -6.978924 2.486669 +v 3.021201 -6.985836 2.489786 +v 3.010653 -6.992884 2.491668 +v 3.009059 -6.990943 2.491668 +v 3.018030 -6.981972 2.489786 +v 3.026827 -6.973175 2.486669 +v 3.035366 -6.964636 2.482349 +v 3.043564 -6.956438 2.476866 +v 3.051343 -6.948659 2.470272 +v 3.058627 -6.941375 2.462632 +v 3.065346 -6.934656 2.454019 +v 3.071437 -6.928566 2.444516 +v 3.076839 -6.923163 2.434215 +v 3.081501 -6.918501 2.423214 +v 3.085379 -6.914624 2.411620 +v 3.088434 -6.911569 2.399545 +v 3.090637 -6.909365 2.387104 +v 3.091968 -6.908034 2.374417 +v 3.092413 -6.907589 2.361608 +v 3.091968 -6.908034 2.348798 +v 3.090637 -6.909365 2.336112 +v 3.088434 -6.911569 2.323670 +v 3.085379 -6.914624 2.311595 +v 3.067082 -6.899608 2.311595 +v 3.069482 -6.896015 2.323670 +v 3.071214 -6.893424 2.336112 +v 3.072259 -6.891860 2.348798 +v 3.072609 -6.891336 2.361608 +v 3.072259 -6.891860 2.374417 +v 3.071214 -6.893424 2.387104 +v 3.069482 -6.896015 2.399545 +v 3.067082 -6.899608 2.411620 +v 3.064035 -6.904167 2.423214 +v 3.060372 -6.909649 2.434215 +v 3.056128 -6.916002 2.444516 +v 3.051343 -6.923163 2.454019 +v 3.046063 -6.931065 2.462632 +v 3.040340 -6.939630 2.470272 +v 3.034228 -6.948777 2.476866 +v 3.027787 -6.958416 2.482349 +v 3.021078 -6.968457 2.486669 +v 3.014167 -6.978801 2.489786 +v 3.007118 -6.989350 2.491668 +v 3.004904 -6.988166 2.491668 +v 3.009759 -6.976445 2.489786 +v 3.014519 -6.964951 2.486669 +v 3.019141 -6.953795 2.482349 +v 3.023577 -6.943084 2.476866 +v 3.027787 -6.932920 2.470272 +v 3.031729 -6.923403 2.462632 +v 3.035366 -6.914624 2.454019 +v 3.038662 -6.906666 2.444516 +v 3.041586 -6.899608 2.434215 +v 3.044109 -6.893516 2.423214 +v 3.046207 -6.888450 2.411620 +v 3.047861 -6.884459 2.399545 +v 3.049053 -6.881579 2.387104 +v 3.049773 -6.879841 2.374417 +v 3.050014 -6.879259 2.361608 +v 3.049773 -6.879841 2.348798 +v 3.049053 -6.881579 2.336112 +v 3.047861 -6.884459 2.323670 +v 3.046207 -6.888450 2.311595 +v 3.023557 -6.881579 2.311595 +v 3.024400 -6.877342 2.323670 +v 3.025008 -6.874285 2.336112 +v 3.025375 -6.872439 2.348798 +v 3.025498 -6.871822 2.361608 +v 3.025375 -6.872439 2.374417 +v 3.025008 -6.874285 2.387104 +v 3.024400 -6.877342 2.399545 +v 3.023557 -6.881579 2.411620 +v 3.022487 -6.886958 2.423214 +v 3.021201 -6.893424 2.434215 +v 3.019711 -6.900918 2.444516 +v 3.018030 -6.909365 2.454019 +v 3.016176 -6.918685 2.462632 +v 3.014167 -6.928789 2.470272 +v 3.012021 -6.939578 2.476866 +v 3.009759 -6.950949 2.482349 +v 3.007403 -6.962792 2.486669 +v 3.004976 -6.974994 2.489786 +v 3.002501 -6.987437 2.491668 +v 3.000002 -6.987191 2.491668 +v 3.000002 -6.974504 2.489786 +v 3.000002 -6.962063 2.486669 +v 3.000002 -6.949988 2.482349 +v 3.000002 -6.938394 2.476866 +v 3.000002 -6.927393 2.470272 +v 3.000002 -6.917092 2.462632 +v 3.000002 -6.907589 2.454019 +v 3.000002 -6.898976 2.444516 +v 3.000002 -6.891336 2.434215 +v 3.000002 -6.884743 2.423214 +v 3.000002 -6.879259 2.411620 +v 3.000002 -6.874938 2.399545 +v 3.000002 -6.871822 2.387104 +v 3.000002 -6.869940 2.374417 +v 3.000002 -6.869311 2.361608 +v 3.000002 -6.869940 2.348798 +v 3.000002 -6.871822 2.336112 +v 3.000002 -6.874938 2.323670 +v 3.000002 -6.879259 2.311595 +v 2.976446 -6.881579 2.311595 +v 2.975603 -6.877342 2.323670 +v 2.974995 -6.874285 2.336112 +v 2.974628 -6.872439 2.348798 +v 2.974505 -6.871822 2.361608 +v 2.974628 -6.872439 2.374417 +v 2.974995 -6.874285 2.387104 +v 2.975603 -6.877342 2.399545 +v 2.976446 -6.881579 2.411620 +v 2.977516 -6.886958 2.423214 +v 2.978802 -6.893424 2.434215 +v 2.980293 -6.900918 2.444516 +v 2.981973 -6.909365 2.454019 +v 2.983827 -6.918685 2.462632 +v 2.985837 -6.928789 2.470272 +v 2.987983 -6.939578 2.476866 +v 2.990245 -6.950949 2.482349 +v 2.992600 -6.962792 2.486669 +v 2.995028 -6.974994 2.489786 +v 2.997503 -6.987437 2.491668 +v 2.995100 -6.988166 2.491668 +v 2.990245 -6.976445 2.489786 +v 2.985484 -6.964952 2.486669 +v 2.980863 -6.953795 2.482349 +v 2.976426 -6.943084 2.476866 +v 2.972216 -6.932920 2.470272 +v 2.968274 -6.923403 2.462632 +v 2.964637 -6.914624 2.454019 +v 2.961341 -6.906666 2.444516 +v 2.958418 -6.899608 2.434215 +v 2.955894 -6.893516 2.423214 +v 2.953796 -6.888450 2.411620 +v 2.952142 -6.884459 2.399545 +v 2.950950 -6.881579 2.387104 +v 2.950230 -6.879841 2.374417 +v 2.949989 -6.879259 2.361608 +v 2.950230 -6.879841 2.348798 +v 2.950950 -6.881579 2.336112 +v 2.952142 -6.884459 2.323670 +v 2.953796 -6.888450 2.311595 +v 2.932921 -6.899608 2.311595 +v 2.930521 -6.896015 2.323670 +v 2.928790 -6.893425 2.336112 +v 2.927744 -6.891860 2.348798 +v 2.927394 -6.891336 2.361608 +v 2.927744 -6.891860 2.374417 +v 2.928790 -6.893425 2.387104 +v 2.930521 -6.896015 2.399545 +v 2.932921 -6.899608 2.411620 +v 2.935968 -6.904167 2.423214 +v 2.939631 -6.909649 2.434215 +v 2.943876 -6.916002 2.444516 +v 2.948661 -6.923163 2.454019 +v 2.953940 -6.931065 2.462632 +v 2.959663 -6.939630 2.470272 +v 2.965775 -6.948777 2.476866 +v 2.972216 -6.958416 2.482349 +v 2.978925 -6.968457 2.486669 +v 2.985837 -6.978801 2.489786 +v 2.992885 -6.989350 2.491668 +v 2.990944 -6.990943 2.491668 +v 2.981973 -6.981972 2.489786 +v 2.973176 -6.973175 2.486669 +v 2.964637 -6.964636 2.482349 +v 2.956439 -6.956438 2.476866 +v 2.948661 -6.948659 2.470272 +v 2.941376 -6.941375 2.462632 +v 2.934657 -6.934656 2.454019 +v 2.928567 -6.928566 2.444516 +v 2.923164 -6.923163 2.434215 +v 2.918502 -6.918501 2.423214 +v 2.914625 -6.914624 2.411620 +v 2.911569 -6.911569 2.399545 +v 2.909366 -6.909365 2.387104 +v 2.908035 -6.908034 2.374417 +v 2.907590 -6.907589 2.361608 +v 2.908035 -6.908034 2.348798 +v 2.909366 -6.909365 2.336112 +v 2.911569 -6.911569 2.323670 +v 2.914625 -6.914624 2.311595 +v 2.899609 -6.932920 2.311595 +v 2.896016 -6.930520 2.323670 +v 2.893425 -6.928789 2.336112 +v 2.891860 -6.927743 2.348798 +v 2.891337 -6.927393 2.361608 +v 2.891860 -6.927743 2.374417 +v 2.893425 -6.928789 2.387104 +v 2.896016 -6.930520 2.399545 +v 2.899609 -6.932920 2.411620 +v 2.904168 -6.935967 2.423214 +v 2.909651 -6.939630 2.434215 +v 2.916003 -6.943874 2.444516 +v 2.923164 -6.948659 2.454019 +v 2.931066 -6.953939 2.462632 +v 2.939631 -6.959662 2.470272 +v 2.948778 -6.965774 2.476866 +v 2.958418 -6.972215 2.482349 +v 2.968458 -6.978924 2.486669 +v 2.978802 -6.985836 2.489786 +v 2.989351 -6.992884 2.491668 +v 2.988167 -6.995099 2.491668 +v 2.976446 -6.990243 2.489786 +v 2.964952 -6.985483 2.486669 +v 2.953796 -6.980862 2.482349 +v 2.943084 -6.976425 2.476866 +v 2.932921 -6.972215 2.470272 +v 2.923404 -6.968273 2.462632 +v 2.914625 -6.964636 2.454019 +v 2.906667 -6.961340 2.444516 +v 2.899609 -6.958416 2.434215 +v 2.893517 -6.955894 2.423214 +v 2.888451 -6.953795 2.411620 +v 2.884459 -6.952141 2.399545 +v 2.881580 -6.950949 2.387104 +v 2.879842 -6.950229 2.374417 +v 2.879260 -6.949988 2.361608 +v 2.879842 -6.950229 2.348798 +v 2.881580 -6.950949 2.336112 +v 2.884459 -6.952141 2.323670 +v 2.888451 -6.953795 2.311595 +v 2.886958 -6.977515 2.300001 +v 2.881580 -6.976445 2.311595 +v 2.877343 -6.975602 2.323670 +v 2.874286 -6.974994 2.336112 +v 2.872441 -6.974627 2.348798 +v 2.871823 -6.974504 2.361608 +v 2.872441 -6.974627 2.374417 +v 2.874286 -6.974994 2.387104 +v 2.877343 -6.975602 2.399545 +v 2.881580 -6.976445 2.411620 +v 2.886958 -6.977515 2.423214 +v 2.893425 -6.978801 2.434215 +v 2.900918 -6.980292 2.444516 +v 2.909366 -6.981972 2.454019 +v 2.918686 -6.983826 2.462632 +v 2.928790 -6.985836 2.470272 +v 2.939579 -6.987982 2.476866 +v 2.950950 -6.990243 2.482349 +v 2.962793 -6.992599 2.486669 +v 2.974995 -6.995027 2.489786 +v 2.987438 -6.997501 2.491668 +v 2.987192 -7.000000 2.491668 +v 2.974505 -7.000000 2.489786 +v 2.962065 -7.000000 2.486669 +v 2.949989 -7.000000 2.482349 +v 2.938395 -7.000000 2.476866 +v 2.927394 -7.000000 2.470272 +v 2.917093 -7.000000 2.462632 +v 2.907590 -7.000000 2.454019 +v 2.898977 -7.000000 2.444516 +v 2.891337 -7.000000 2.434215 +v 2.884744 -7.000000 2.423214 +v 2.879260 -7.000000 2.411620 +v 2.874940 -7.000000 2.399545 +v 2.871823 -7.000000 2.387104 +v 2.869941 -7.000000 2.374417 +v 2.869312 -7.000000 2.361608 +v 2.869941 -7.000000 2.348798 +v 2.871823 -7.000000 2.336112 +v 2.874940 -7.000000 2.323670 +v 2.879260 -7.000000 2.311595 +v 2.884744 -7.000000 2.300001 +v 2.886959 -7.022486 2.300001 +v 2.881580 -7.023556 2.311595 +v 2.877343 -7.024399 2.323670 +v 2.874286 -7.025007 2.336112 +v 2.872441 -7.025374 2.348798 +v 2.871823 -7.025497 2.361608 +v 2.872441 -7.025374 2.374417 +v 2.874286 -7.025007 2.387104 +v 2.877343 -7.024399 2.399545 +v 2.881580 -7.023556 2.411620 +v 2.886958 -7.022486 2.423214 +v 2.893425 -7.021200 2.434215 +v 2.900918 -7.019710 2.444516 +v 2.909366 -7.018029 2.454019 +v 2.918686 -7.016175 2.462632 +v 2.928790 -7.014165 2.470272 +v 2.939579 -7.012020 2.476866 +v 2.950950 -7.009758 2.482349 +v 2.962793 -7.007402 2.486669 +v 2.974995 -7.004975 2.489786 +v 2.987438 -7.002500 2.491668 +v 3.000002 -7.000000 2.492297 +v 2.988167 -7.004903 2.491668 +v 2.976446 -7.009758 2.489786 +v 2.964952 -7.014519 2.486669 +v 2.953796 -7.019140 2.482349 +v 2.943084 -7.023576 2.476866 +v 2.932921 -7.027786 2.470272 +v 2.923404 -7.031728 2.462632 +v 2.914625 -7.035365 2.454019 +v 2.906667 -7.038661 2.444516 +v 2.899609 -7.041584 2.434215 +v 2.893517 -7.044108 2.423214 +v 2.888451 -7.046206 2.411620 +v 2.884459 -7.047860 2.399545 +v 2.881580 -7.049052 2.387104 +v 2.879842 -7.049772 2.374417 +v 2.879260 -7.050014 2.361608 +v 2.879842 -7.049772 2.348798 +v 2.881580 -7.049052 2.336112 +v 2.884459 -7.047860 2.323670 +v 2.888451 -7.046206 2.311595 +v 2.893517 -7.044108 2.300001 +v 2.904168 -7.064034 2.300001 +v 2.899609 -7.067081 2.311595 +v 2.896016 -7.069481 2.323670 +v 2.893425 -7.071213 2.336112 +v 2.891861 -7.072258 2.348798 +v 2.891337 -7.072608 2.361608 +v 2.891861 -7.072258 2.374417 +v 2.893425 -7.071213 2.387104 +v 2.896016 -7.069481 2.399545 +v 2.899609 -7.067081 2.411620 +v 2.904168 -7.064034 2.423214 +v 2.909651 -7.060371 2.434215 +v 2.916003 -7.056127 2.444516 +v 2.923164 -7.051342 2.454019 +v 2.931066 -7.046062 2.462632 +v 2.939631 -7.040339 2.470272 +v 2.948778 -7.034227 2.476866 +v 2.958418 -7.027786 2.482349 +v 2.968458 -7.021077 2.486669 +v 2.978802 -7.014165 2.489786 +v 2.989351 -7.007117 2.491668 +v 2.990944 -7.009058 2.491668 +v 2.981973 -7.018029 2.489786 +v 2.973176 -7.026826 2.486669 +v 2.964637 -7.035365 2.482349 +v 2.956439 -7.043563 2.476866 +v 2.948661 -7.051342 2.470272 +v 2.941376 -7.058626 2.462632 +v 2.934657 -7.065345 2.454019 +v 2.928567 -7.071435 2.444516 +v 2.923164 -7.076838 2.434215 +v 2.918502 -7.081500 2.423214 +v 2.914625 -7.085378 2.411620 +v 2.911569 -7.088433 2.399545 +v 2.909366 -7.090636 2.387104 +v 2.908035 -7.091967 2.374417 +v 2.907590 -7.092412 2.361608 +v 2.908035 -7.091967 2.348798 +v 2.909366 -7.090636 2.336112 +v 2.911569 -7.088433 2.323670 +v 2.914625 -7.085378 2.311595 +v 2.918502 -7.081500 2.300001 +v 2.935968 -7.095834 2.300001 +v 2.932921 -7.100393 2.311595 +v 2.930521 -7.103986 2.323670 +v 2.928790 -7.106577 2.336112 +v 2.927744 -7.108142 2.348798 +v 2.927394 -7.108665 2.361608 +v 2.927744 -7.108142 2.374417 +v 2.928790 -7.106577 2.387104 +v 2.930521 -7.103986 2.399545 +v 2.932921 -7.100393 2.411620 +v 2.935968 -7.095834 2.423214 +v 2.939631 -7.090352 2.434215 +v 2.943876 -7.083999 2.444516 +v 2.948661 -7.076838 2.454019 +v 2.953940 -7.068936 2.462632 +v 2.959663 -7.060371 2.470272 +v 2.965775 -7.051225 2.476866 +v 2.972216 -7.041584 2.482349 +v 2.978925 -7.031544 2.486669 +v 2.985837 -7.021200 2.489786 +v 2.992885 -7.010652 2.491668 +v 2.995100 -7.011836 2.491668 +v 2.990245 -7.023556 2.489786 +v 2.985484 -7.035050 2.486669 +v 2.980863 -7.046206 2.482349 +v 2.976426 -7.056918 2.476866 +v 2.972216 -7.067081 2.470272 +v 2.968274 -7.076598 2.462632 +v 2.964637 -7.085378 2.454019 +v 2.961341 -7.093335 2.444516 +v 2.958418 -7.100393 2.434215 +v 2.955894 -7.106485 2.423214 +v 2.953796 -7.111551 2.411620 +v 2.952142 -7.115543 2.399545 +v 2.950950 -7.118422 2.387104 +v 2.950230 -7.120161 2.374417 +v 2.949989 -7.120742 2.361608 +v 2.950230 -7.120161 2.348798 +v 2.950950 -7.118422 2.336112 +v 2.952142 -7.115543 2.323670 +v 2.953796 -7.111551 2.311595 +v 2.955894 -7.106485 2.300001 +v 2.977516 -7.113044 2.300001 +v 2.976446 -7.118422 2.311595 +v 2.975603 -7.122660 2.323670 +v 2.974995 -7.125716 2.336112 +v 2.974628 -7.127562 2.348798 +v 2.974505 -7.128179 2.361608 +v 2.974628 -7.127562 2.374417 +v 2.974995 -7.125716 2.387104 +v 2.975603 -7.122660 2.399545 +v 2.976446 -7.118422 2.411620 +v 2.977516 -7.113044 2.423214 +v 2.978802 -7.106577 2.434215 +v 2.980293 -7.099084 2.444516 +v 2.981973 -7.090636 2.454019 +v 2.983827 -7.081316 2.462632 +v 2.985837 -7.071213 2.470272 +v 2.987983 -7.060423 2.476866 +v 2.990245 -7.049052 2.482349 +v 2.992600 -7.037209 2.486669 +v 2.995028 -7.025007 2.489786 +v 2.997503 -7.012564 2.491668 +v 3.000002 -7.012810 2.491668 +v 3.000002 -7.025497 2.489786 +v 3.000002 -7.037938 2.486669 +v 3.000002 -7.050014 2.482349 +v 3.000002 -7.061607 2.476866 +v 3.000002 -7.072608 2.470272 +v 3.000002 -7.082909 2.462632 +v 3.000002 -7.092412 2.454019 +v 3.000002 -7.101025 2.444516 +v 3.000002 -7.108665 2.434215 +v 3.000002 -7.115258 2.423214 +v 3.000002 -7.120742 2.411620 +v 3.000002 -7.125062 2.399545 +v 3.000002 -7.128179 2.387104 +v 3.000002 -7.130061 2.374417 +v 3.000002 -7.130690 2.361608 +v 3.000002 -7.130061 2.348798 +v 3.000002 -7.128179 2.336112 +v 3.000002 -7.125062 2.323670 +v 3.000002 -7.120742 2.311595 +v 3.000002 -7.115258 2.300001 +v 3.022487 -7.113044 2.300001 +v 3.023557 -7.118422 2.311595 +v 3.024400 -7.122660 2.323670 +v 3.025008 -7.125716 2.336112 +v 3.025375 -7.127562 2.348798 +v 3.025498 -7.128179 2.361608 +v 3.025375 -7.127562 2.374417 +v 3.025008 -7.125716 2.387104 +v 3.024400 -7.122660 2.399545 +v 3.023557 -7.118422 2.411620 +v 3.022487 -7.113044 2.423214 +v 3.021201 -7.106577 2.434215 +v 3.019711 -7.099084 2.444516 +v 3.018030 -7.090636 2.454019 +v 3.016176 -7.081316 2.462632 +v 3.014167 -7.071213 2.470272 +v 3.012021 -7.060423 2.476866 +v 3.009759 -7.049052 2.482349 +v 3.007403 -7.037209 2.486669 +v 3.004976 -7.025007 2.489786 +v 3.002501 -7.012564 2.491668 +v 3.004904 -7.011836 2.491668 +v 3.009759 -7.023556 2.489786 +v 3.014519 -7.035050 2.486669 +v 3.019141 -7.046206 2.482349 +v 3.023577 -7.056918 2.476866 +v 3.027787 -7.067081 2.470272 +v 3.031729 -7.076598 2.462632 +v 3.035366 -7.085378 2.454019 +v 3.038662 -7.093335 2.444516 +v 3.041586 -7.100393 2.434215 +v 3.044109 -7.106485 2.423214 +v 3.046207 -7.111551 2.411620 +v 3.047861 -7.115543 2.399545 +v 3.049053 -7.118422 2.387104 +v 3.049773 -7.120161 2.374417 +v 3.050014 -7.120742 2.361608 +v 3.049773 -7.120161 2.348798 +v 3.049053 -7.118422 2.336112 +v 3.047861 -7.115543 2.323670 +v 3.046207 -7.111551 2.311595 +v 3.067082 -7.100393 2.311595 +v 3.069482 -7.103986 2.323670 +v 3.071214 -7.106577 2.336112 +v 3.072259 -7.108141 2.348798 +v 3.072609 -7.108665 2.361608 +v 3.072259 -7.108141 2.374417 +v 3.071214 -7.106577 2.387104 +v 3.069482 -7.103986 2.399545 +v 3.067082 -7.100393 2.411620 +v 3.064035 -7.095834 2.423214 +v 3.060372 -7.090352 2.434215 +v 3.056128 -7.083999 2.444516 +v 3.051343 -7.076838 2.454019 +v 3.046063 -7.068936 2.462632 +v 3.040340 -7.060371 2.470272 +v 3.034228 -7.051225 2.476866 +v 3.027787 -7.041584 2.482349 +v 3.021078 -7.031544 2.486669 +v 3.014167 -7.021200 2.489786 +v 3.007118 -7.010652 2.491668 +v 3.009059 -7.009058 2.491668 +v 3.018030 -7.018029 2.489786 +v 3.026827 -7.026826 2.486669 +v 3.035366 -7.035365 2.482349 +v 3.043564 -7.043563 2.476866 +v 3.051343 -7.051342 2.470272 +v 3.058627 -7.058626 2.462632 +v 3.065346 -7.065345 2.454019 +v 3.071437 -7.071435 2.444516 +v 3.076839 -7.076838 2.434215 +v 3.081501 -7.081500 2.423214 +v 3.085379 -7.085378 2.411620 +v 3.088434 -7.088433 2.399545 +v 3.090637 -7.090636 2.387104 +v 3.091968 -7.091967 2.374417 +v 3.092413 -7.092412 2.361608 +v 3.091968 -7.091967 2.348798 +v 3.090637 -7.090636 2.336112 +v 3.088434 -7.088433 2.323670 +v 3.085379 -7.085378 2.311595 +v 3.100394 -7.067081 2.311595 +v 3.103987 -7.069481 2.323670 +v 3.106578 -7.071213 2.336112 +v 3.108143 -7.072258 2.348798 +v 3.108666 -7.072608 2.361608 +v 3.108143 -7.072258 2.374417 +v 3.106578 -7.071213 2.387104 +v 3.103987 -7.069481 2.399545 +v 3.100394 -7.067081 2.411620 +v 3.095835 -7.064034 2.423214 +v 3.090353 -7.060371 2.434215 +v 3.084000 -7.056127 2.444516 +v 3.076839 -7.051342 2.454019 +v 3.068938 -7.046062 2.462632 +v 3.060372 -7.040339 2.470272 +v 3.051226 -7.034227 2.476866 +v 3.041586 -7.027786 2.482349 +v 3.031545 -7.021077 2.486669 +v 3.021201 -7.014165 2.489786 +v 3.010653 -7.007117 2.491668 +v 3.011836 -7.004903 2.491668 +v 3.023557 -7.009758 2.489786 +v 3.035051 -7.014519 2.486669 +v 3.046207 -7.019140 2.482349 +v 3.056919 -7.023576 2.476866 +v 3.067082 -7.027786 2.470272 +v 3.076599 -7.031728 2.462632 +v 3.085379 -7.035365 2.454019 +v 3.093336 -7.038661 2.444516 +v 3.100394 -7.041584 2.434215 +v 3.106486 -7.044108 2.423214 +v 3.111552 -7.046206 2.411620 +v 3.115544 -7.047860 2.399545 +v 3.118423 -7.049052 2.387104 +v 3.120162 -7.049772 2.374417 +v 3.120743 -7.050013 2.361608 +v 3.120162 -7.049772 2.348798 +v 3.118423 -7.049052 2.336112 +v 3.115544 -7.047860 2.323670 +v 3.111552 -7.046206 2.311595 +v 3.118423 -7.023556 2.311595 +v 3.122661 -7.024399 2.323670 +v 3.125717 -7.025007 2.336112 +v 3.127563 -7.025374 2.348798 +v 3.128180 -7.025497 2.361608 +v 3.127563 -7.025374 2.374417 +v 3.125717 -7.025007 2.387104 +v 3.122660 -7.024399 2.399545 +v 3.118423 -7.023556 2.411620 +v 3.113045 -7.022486 2.423214 +v 3.106578 -7.021200 2.434215 +v 3.099085 -7.019710 2.444516 +v 3.090637 -7.018029 2.454019 +v 3.081317 -7.016175 2.462632 +v 3.071214 -7.014165 2.470272 +v 3.060424 -7.012020 2.476866 +v 3.049053 -7.009758 2.482349 +v 3.037210 -7.007402 2.486669 +v 3.025008 -7.004975 2.489786 +v 3.012565 -7.002500 2.491668 +v 3.012811 -7.000000 2.491668 +v 3.025498 -7.000000 2.489786 +v 3.061608 -7.000000 2.476866 +v 3.072609 -7.000000 2.470272 +v 3.082910 -7.000000 2.462632 +v 3.092413 -7.000000 2.454019 +v 3.101026 -7.000000 2.444516 +v 3.108666 -7.000000 2.434215 +v 3.115259 -7.000000 2.423214 +v 3.120743 -7.000000 2.411620 +v 3.125063 -7.000000 2.399545 +v 3.128180 -7.000000 2.387104 +v 3.130062 -7.000000 2.374417 +v 3.130691 -7.000000 2.361608 +v 3.130062 -7.000000 2.348798 +v 3.128180 -7.000000 2.336112 +v 3.125063 -7.000000 2.323670 +v 3.120743 -7.000000 2.311595 +v 3.209384 -6.686636 1.980807 +v 3.266495 -6.733505 1.980807 +v 3.144227 -6.651808 1.980807 +v 3.073526 -6.630362 1.980807 +v 3.000001 -6.623120 1.980807 +v 2.926475 -6.630361 1.980807 +v 2.855775 -6.651808 1.980807 +v 2.790617 -6.686635 1.980807 +v 2.733506 -6.733505 1.980807 +v 2.686636 -6.790616 1.980807 +v 2.651808 -6.855774 1.980807 +v 2.630360 -6.926474 1.980808 +v 2.623119 -7.000000 1.980808 +v 2.630360 -7.073526 1.980808 +v 2.651807 -7.144227 1.980808 +v 2.686635 -7.209384 1.980808 +v 2.733505 -7.266496 1.980808 +v 2.790616 -7.313366 1.980808 +v 2.855774 -7.348194 1.980808 +v 2.926475 -7.369641 1.980808 +v 3.000001 -7.376883 1.980808 +v 3.073527 -7.369641 1.980808 +v 3.144226 -7.348192 1.980807 +v 3.209383 -7.313365 1.980807 +v 3.266495 -7.266494 1.980807 +v 3.262367 -7.209383 1.980807 +v 3.348192 -7.144226 1.980807 +v 3.369639 -7.073525 1.980807 +v 3.376880 -7.000000 1.980807 +v 3.369639 -6.926474 1.980807 +v 3.348192 -6.855774 1.980807 +v 3.262367 -6.790617 1.980807 +v 3.278045 -6.721955 1.714060 +v 3.326947 -6.781541 1.714060 +v 3.363284 -6.849523 1.714060 +v 3.385660 -6.923287 1.714060 +v 3.393216 -7.000000 1.714060 +v 3.385660 -7.076713 1.714060 +v 3.363284 -7.150477 1.714060 +v 3.326947 -7.218459 1.714060 +v 3.278045 -7.278046 1.714060 +v 3.218459 -7.326947 1.714060 +v 3.150477 -7.363284 1.714060 +v 3.076713 -7.385661 1.714061 +v 3.000000 -7.393217 1.714061 +v 2.923287 -7.385661 1.714061 +v 2.849523 -7.363285 1.714061 +v 2.781541 -7.326948 1.714061 +v 2.721954 -7.278046 1.714061 +v 2.673053 -7.218460 1.714061 +v 2.636715 -7.150477 1.714061 +v 2.614339 -7.076713 1.714061 +v 2.606784 -7.000000 1.714061 +v 2.614339 -6.923287 1.714061 +v 2.636716 -6.849523 1.714060 +v 2.673053 -6.781541 1.714060 +v 2.721955 -6.721954 1.714060 +v 2.781542 -6.673053 1.714060 +v 2.849523 -6.636716 1.714060 +v 2.923288 -6.614340 1.714060 +v 3.000000 -6.606784 1.714060 +v 3.076713 -6.614340 1.714060 +v 3.150478 -6.636716 1.714060 +v 3.218459 -6.673054 1.714060 +v 3.205112 -6.794888 2.169626 +v 3.241186 -6.838845 2.169626 +v 3.267991 -6.888994 2.169626 +v 3.284498 -6.943409 2.169626 +v 3.290071 -7.000000 2.169626 +v 3.284498 -7.056590 2.169626 +v 3.267991 -7.111005 2.169626 +v 3.241186 -7.161154 2.169626 +v 3.205112 -7.205111 2.169626 +v 3.161155 -7.241185 2.169626 +v 3.111006 -7.267991 2.169626 +v 3.056592 -7.284501 2.169627 +v 3.000002 -7.290075 2.169627 +v 2.943411 -7.284501 2.169627 +v 2.888995 -7.267994 2.169627 +v 2.838845 -7.241189 2.169627 +v 2.794888 -7.205114 2.169627 +v 2.758813 -7.161157 2.169627 +v 2.732008 -7.111007 2.169627 +v 2.715501 -7.056591 2.169627 +v 2.709927 -7.000000 2.169627 +v 2.715501 -6.943409 2.169627 +v 2.732010 -6.888994 2.169626 +v 2.758815 -6.838844 2.169626 +v 2.794889 -6.794888 2.169626 +v 2.838846 -6.758814 2.169626 +v 2.888995 -6.732008 2.169626 +v 2.943411 -6.715502 2.169626 +v 3.000001 -6.709929 2.169626 +v 3.056591 -6.715502 2.169626 +v 3.111006 -6.732009 2.169626 +v 3.161155 -6.758814 2.169626 +v 3.124862 -6.813131 2.254295 +v 3.158919 -6.841081 2.254295 +v 3.086007 -6.792362 2.254295 +v 3.043846 -6.779573 2.254295 +v 3.000001 -6.775254 2.254295 +v 2.956155 -6.779572 2.254295 +v 2.913994 -6.792362 2.254295 +v 2.875139 -6.813130 2.254295 +v 2.841082 -6.841081 2.254295 +v 2.813132 -6.875137 2.254295 +v 2.792363 -6.913993 2.254295 +v 2.779571 -6.956153 2.254296 +v 2.775253 -7.000000 2.254296 +v 2.779571 -7.043847 2.254296 +v 2.792361 -7.086008 2.254296 +v 2.813130 -7.124864 2.254296 +v 2.841080 -7.158922 2.254296 +v 2.875138 -7.186872 2.254296 +v 2.913994 -7.207642 2.254296 +v 2.956156 -7.220431 2.254296 +v 3.000002 -7.224750 2.254296 +v 3.043849 -7.220431 2.254296 +v 3.086006 -7.207637 2.254295 +v 3.124862 -7.186868 2.254295 +v 3.158919 -7.158918 2.254295 +v 3.186869 -7.124861 2.254295 +v 3.207638 -7.086006 2.254295 +v 3.220427 -7.043845 2.254295 +v 3.224745 -7.000000 2.254295 +v 3.220427 -6.956154 2.254295 +v 3.207638 -6.913993 2.254295 +v 3.186869 -6.875138 2.254295 +v 3.600000 -6.400000 0.016596 +v 3.471418 -6.294476 0.016596 +v 3.324719 -6.216063 0.016596 +v 3.165541 -6.167777 0.016596 +v 3.000001 -6.151472 0.016596 +v 2.834462 -6.167776 0.016596 +v 2.675283 -6.216062 0.016596 +v 2.528584 -6.294474 0.016596 +v 2.400001 -6.399999 0.016596 +v 2.294475 -6.528582 0.016596 +v 2.216063 -6.675282 0.016596 +v 2.167776 -6.834459 0.016596 +v 2.151472 -6.999999 0.016596 +v 2.167776 -7.165539 0.016596 +v 2.216062 -7.324717 0.016596 +v 2.294474 -7.471416 0.016596 +v 2.400000 -7.599999 0.016596 +v 2.528583 -7.705525 0.016596 +v 2.675282 -7.783937 0.016596 +v 2.834460 -7.832224 0.016596 +v 3.000000 -7.848528 0.016596 +v 3.165540 -7.832224 0.016596 +v 3.324718 -7.783938 0.016596 +v 3.471417 -7.705525 0.016596 +v 3.600000 -7.600000 0.016596 +v 3.705525 -7.471417 0.016596 +v 3.783938 -7.324718 0.016596 +v 3.832224 -7.165540 0.016596 +v 3.848528 -7.000000 0.016596 +v 3.832224 -6.834460 0.016596 +v 3.783938 -6.675282 0.016596 +v 3.705525 -6.528583 0.016596 +v 3.600000 -6.400000 0.088361 +v 3.705525 -6.528583 0.088361 +v 3.783938 -6.675282 0.088361 +v 3.832224 -6.834460 0.088361 +v 3.848528 -7.000000 0.088361 +v 3.832224 -7.165540 0.088361 +v 3.783938 -7.324718 0.088361 +v 3.705525 -7.471417 0.088361 +v 3.600000 -7.600000 0.088361 +v 3.471417 -7.705525 0.088361 +v 3.324718 -7.783938 0.088361 +v 3.165540 -7.832224 0.088361 +v 3.000000 -7.848528 0.088361 +v 2.834460 -7.832224 0.088361 +v 2.675282 -7.783937 0.088361 +v 2.528583 -7.705525 0.088361 +v 2.400000 -7.599999 0.088361 +v 2.294474 -7.471416 0.088361 +v 2.216062 -7.324717 0.088361 +v 2.167776 -7.165539 0.088361 +v 2.151472 -6.999999 0.088361 +v 2.167776 -6.834459 0.088361 +v 2.216063 -6.675282 0.088361 +v 2.294475 -6.528582 0.088361 +v 2.400001 -6.399999 0.088361 +v 2.528584 -6.294474 0.088361 +v 2.675283 -6.216062 0.088361 +v 2.834462 -6.167776 0.088361 +v 3.000001 -6.151472 0.088361 +v 3.165541 -6.167777 0.088361 +v 3.324719 -6.216063 0.088361 +v 3.471418 -6.294476 0.088361 +v 3.231044 -6.768956 2.098873 +v 3.271678 -6.818470 2.098873 +v 3.301873 -6.874960 2.098873 +v 3.320467 -6.936255 2.098873 +v 3.326745 -7.000000 2.098873 +v 3.320467 -7.063745 2.098873 +v 3.301873 -7.125040 2.098873 +v 3.271678 -7.181530 2.098873 +v 3.231044 -7.231043 2.098873 +v 3.181530 -7.271678 2.098873 +v 3.125040 -7.301873 2.098873 +v 3.063746 -7.320469 2.098874 +v 3.000001 -7.326748 2.098874 +v 2.936256 -7.320469 2.098874 +v 2.874960 -7.301876 2.098874 +v 2.818470 -7.271681 2.098874 +v 2.768956 -7.231046 2.098874 +v 2.728321 -7.181531 2.098874 +v 2.698126 -7.125041 2.098874 +v 2.679532 -7.063745 2.098874 +v 2.673254 -7.000000 2.098874 +v 2.679532 -6.936255 2.098874 +v 2.698128 -6.874959 2.098873 +v 2.728322 -6.818470 2.098873 +v 2.768957 -6.768956 2.098873 +v 2.818471 -6.728321 2.098873 +v 2.874961 -6.698127 2.098873 +v 2.936256 -6.679533 2.098873 +v 3.000001 -6.673255 2.098873 +v 3.063745 -6.679533 2.098873 +v 3.125041 -6.698127 2.098873 +v 3.181530 -6.728322 2.098873 +v 3.285447 -6.714553 1.837693 +v 3.335650 -6.775726 1.837693 +v 3.372955 -6.845517 1.837693 +v 3.344929 -6.921245 1.837693 +v 3.403683 -7.000000 1.837693 +v 3.344929 -7.078754 1.837693 +v 3.372955 -7.154483 1.837693 +v 3.335650 -7.224274 1.837693 +v 3.285447 -7.285447 1.837693 +v 3.224274 -7.335650 1.837693 +v 3.154483 -7.372954 1.837693 +v 3.078755 -7.395928 1.837693 +v 3.000000 -7.403685 1.837693 +v 2.921246 -7.395928 1.837693 +v 2.845517 -7.372956 1.837693 +v 2.775725 -7.335651 1.837693 +v 2.714552 -7.285448 1.837693 +v 2.664349 -7.224275 1.837693 +v 2.627045 -7.154483 1.837693 +v 2.604073 -7.078755 1.837693 +v 2.596316 -7.000000 1.837693 +v 2.604073 -6.921245 1.837693 +v 2.627046 -6.845517 1.837693 +v 2.664350 -6.775725 1.837693 +v 2.714553 -6.714552 1.837693 +v 2.775726 -6.664350 1.837693 +v 2.845518 -6.627045 1.837693 +v 2.921246 -6.604074 1.837693 +v 3.000001 -6.596317 1.837693 +v 3.078755 -6.604074 1.837693 +v 3.154484 -6.627046 1.837693 +v 3.224275 -6.664350 1.837693 +v 3.223631 -6.665314 1.893943 +v 3.284628 -6.715373 1.893943 +v 3.154040 -6.628116 1.893943 +v 3.078529 -6.605210 1.893943 +v 3.000001 -6.597476 1.893943 +v 2.921472 -6.605210 1.893943 +v 2.845961 -6.628116 1.893943 +v 2.776370 -6.665313 1.893943 +v 2.715373 -6.715372 1.893943 +v 2.665314 -6.776369 1.893943 +v 2.628116 -6.845960 1.893943 +v 2.605209 -6.921471 1.893943 +v 2.597475 -7.000000 1.893943 +v 2.605209 -7.078529 1.893943 +v 2.628115 -7.154040 1.893943 +v 2.665313 -7.223631 1.893943 +v 2.715372 -7.284629 1.893943 +v 2.776369 -7.334688 1.893943 +v 2.845961 -7.371886 1.893943 +v 2.921472 -7.394792 1.893943 +v 3.000001 -7.402526 1.893943 +v 3.078530 -7.394792 1.893943 +v 3.154039 -7.371884 1.893943 +v 3.223630 -7.334686 1.893943 +v 3.284628 -7.284627 1.893943 +v 3.334687 -7.223630 1.893943 +v 3.320886 -7.154039 1.893943 +v 3.394790 -7.078528 1.893943 +v 3.402524 -7.000000 1.893943 +v 3.394790 -6.921471 1.893943 +v 3.320886 -6.845961 1.893943 +v 3.334687 -6.776370 1.893943 +v 3.195457 -6.707479 2.056539 +v 3.248769 -6.751231 2.056539 +v 3.134634 -6.674968 2.056539 +v 3.068636 -6.654947 2.056539 +v 3.000001 -6.648187 2.056539 +v 2.931365 -6.654947 2.056539 +v 2.865368 -6.674967 2.056539 +v 2.804544 -6.707478 2.056539 +v 2.751231 -6.751231 2.056539 +v 2.707479 -6.804543 2.056539 +v 2.674968 -6.865366 2.056539 +v 2.654946 -6.931364 2.056540 +v 2.648186 -7.000000 2.056540 +v 2.654946 -7.068636 2.056540 +v 2.674966 -7.134634 2.056540 +v 2.707478 -7.195458 2.056540 +v 2.751230 -7.248771 2.056540 +v 2.804543 -7.292523 2.056540 +v 2.865367 -7.325035 2.056540 +v 2.931365 -7.345055 2.056540 +v 3.000001 -7.351815 2.056540 +v 3.068637 -7.345055 2.056540 +v 3.134633 -7.325032 2.056539 +v 3.195457 -7.292521 2.056539 +v 3.248769 -7.248769 2.056539 +v 3.292521 -7.195457 2.056539 +v 3.325032 -7.134633 2.056539 +v 3.345053 -7.068635 2.056539 +v 3.351813 -7.000000 2.056539 +v 3.345053 -6.931365 2.056539 +v 3.325032 -6.865367 2.056539 +v 3.292521 -6.804543 2.056539 +v 3.166701 -6.750515 1.512500 +v 3.212169 -6.787831 1.512500 +v 3.114826 -6.722788 1.512500 +v 3.058538 -6.705713 1.512500 +v 3.000000 -6.699947 1.512500 +v 2.941463 -6.705713 1.512500 +v 2.885175 -6.722787 1.512500 +v 2.833300 -6.750515 1.512500 +v 2.787831 -6.787830 1.512500 +v 2.750515 -6.833300 1.512500 +v 2.722787 -6.885175 1.512500 +v 2.705713 -6.941463 1.512500 +v 2.699947 -7.000000 1.512500 +v 2.705712 -7.058537 1.512500 +v 2.722787 -7.114825 1.512500 +v 2.750515 -7.166700 1.512500 +v 2.787830 -7.212170 1.512500 +v 2.833299 -7.249485 1.512500 +v 2.885175 -7.277213 1.512500 +v 2.941463 -7.294288 1.512500 +v 3.000000 -7.300053 1.512500 +v 3.058537 -7.294288 1.512500 +v 3.114825 -7.277213 1.512500 +v 3.166700 -7.249485 1.512500 +v 3.212169 -7.212170 1.512500 +v 3.249485 -7.166700 1.512500 +v 3.277213 -7.114825 1.512500 +v 3.294287 -7.058537 1.512500 +v 3.300053 -7.000000 1.512500 +v 3.294287 -6.941463 1.512500 +v 3.277213 -6.885175 1.512500 +v 3.249485 -6.833300 1.512500 +v 3.288443 -6.711557 1.775877 +v 3.339173 -6.773372 1.775877 +v 3.376869 -6.843896 1.775877 +v 3.400082 -6.920419 1.775877 +v 3.356922 -7.000000 1.775877 +v 3.400082 -7.079581 1.775877 +v 3.376869 -7.156105 1.775877 +v 3.339173 -7.226628 1.775877 +v 3.288443 -7.288443 1.775877 +v 3.226628 -7.339173 1.775877 +v 3.156104 -7.376869 1.775877 +v 3.079582 -7.400084 1.775877 +v 3.000000 -7.407922 1.775877 +v 2.920419 -7.400084 1.775877 +v 2.843895 -7.376871 1.775877 +v 2.773371 -7.339174 1.775877 +v 2.711556 -7.288444 1.775877 +v 2.660826 -7.226629 1.775877 +v 2.623130 -7.156105 1.775877 +v 2.599917 -7.079581 1.775877 +v 2.592079 -7.000000 1.775877 +v 2.599917 -6.920418 1.775877 +v 2.623131 -6.843895 1.775877 +v 2.660827 -6.773371 1.775877 +v 2.711557 -6.711556 1.775877 +v 2.773372 -6.660826 1.775877 +v 2.843896 -6.623130 1.775877 +v 2.920419 -6.599917 1.775877 +v 3.000001 -6.592080 1.775877 +v 3.079582 -6.599918 1.775877 +v 3.156105 -6.623131 1.775877 +v 3.226629 -6.660827 1.775877 +v 3.250918 -6.749082 1.613280 +v 3.295049 -6.802855 1.613280 +v 3.327841 -6.864204 1.613280 +v 3.348034 -6.930772 1.613280 +v 3.354852 -7.000000 1.613280 +v 3.348034 -7.069228 1.613280 +v 3.327841 -7.135796 1.613280 +v 3.295049 -7.197145 1.613280 +v 3.250918 -7.250919 1.613280 +v 3.197145 -7.295049 1.613280 +v 3.135796 -7.327841 1.613280 +v 3.069228 -7.348035 1.613280 +v 3.000000 -7.354853 1.613280 +v 2.930772 -7.348035 1.613280 +v 2.864204 -7.327842 1.613280 +v 2.802854 -7.295050 1.613280 +v 2.749081 -7.250919 1.613280 +v 2.704951 -7.197146 1.613280 +v 2.672159 -7.135796 1.613280 +v 2.651966 -7.069228 1.613280 +v 2.645147 -7.000000 1.613280 +v 2.651966 -6.930771 1.613280 +v 2.672159 -6.864203 1.613280 +v 2.704951 -6.802855 1.613280 +v 2.749082 -6.749081 1.613280 +v 2.802855 -6.704951 1.613280 +v 2.864204 -6.672159 1.613280 +v 2.930772 -6.651966 1.613280 +v 3.000000 -6.645148 1.613280 +v 3.069229 -6.651966 1.613280 +v 3.135797 -6.672160 1.613280 +v 3.197146 -6.704951 1.613280 +v 3.209958 -6.685777 1.663670 +v 3.267225 -6.732775 1.663670 +v 3.144622 -6.650854 1.663670 +v 3.073728 -6.629348 1.663670 +v 3.000000 -6.622087 1.663670 +v 2.926273 -6.629348 1.663670 +v 2.855379 -6.650853 1.663670 +v 2.790043 -6.685776 1.663670 +v 2.732775 -6.732775 1.663670 +v 2.685777 -6.790042 1.663670 +v 2.650854 -6.855379 1.663670 +v 2.629348 -6.926272 1.663670 +v 2.622086 -7.000000 1.663670 +v 2.629348 -7.073727 1.663670 +v 2.650853 -7.144621 1.663670 +v 2.685776 -7.209958 1.663670 +v 2.732774 -7.267226 1.663670 +v 2.790042 -7.314224 1.663670 +v 2.855379 -7.349147 1.663670 +v 2.926273 -7.370653 1.663670 +v 3.000000 -7.377914 1.663670 +v 3.073728 -7.370653 1.663670 +v 3.144621 -7.349147 1.663670 +v 3.209957 -7.314224 1.663670 +v 3.267225 -7.267225 1.663670 +v 3.314224 -7.209958 1.663670 +v 3.349146 -7.144621 1.663670 +v 3.370652 -7.073727 1.663670 +v 3.377913 -7.000000 1.663670 +v 3.370652 -6.926273 1.663670 +v 3.349146 -6.855379 1.663670 +v 3.314224 -6.790043 1.663670 +v 3.180250 -6.730238 1.562890 +v 3.229414 -6.770586 1.562890 +v 3.124158 -6.700257 1.562890 +v 3.063296 -6.681794 1.562890 +v 3.000000 -6.675560 1.562890 +v 2.936705 -6.681794 1.562890 +v 2.875843 -6.700256 1.562890 +v 2.819751 -6.730238 1.562890 +v 2.770586 -6.770586 1.562890 +v 2.730238 -6.819751 1.562890 +v 2.700257 -6.875842 1.562890 +v 2.681794 -6.936705 1.562890 +v 2.675560 -7.000000 1.562890 +v 2.681794 -7.063295 1.562890 +v 2.700256 -7.124158 1.562890 +v 2.730238 -7.180249 1.562890 +v 2.770586 -7.229414 1.562890 +v 2.819751 -7.269763 1.562890 +v 2.875842 -7.299744 1.562890 +v 2.936705 -7.318206 1.562890 +v 3.000000 -7.324440 1.562890 +v 3.063295 -7.318206 1.562890 +v 3.124158 -7.299744 1.562890 +v 3.180249 -7.269762 1.562890 +v 3.229414 -7.229414 1.562890 +v 3.269762 -7.180249 1.562890 +v 3.299743 -7.124158 1.562890 +v 3.318206 -7.063295 1.562890 +v 3.324440 -7.000000 1.562890 +v 3.318206 -6.936705 1.562890 +v 3.299743 -6.875842 1.562890 +v 3.269762 -6.819751 1.562890 +v 3.408971 -6.591029 1.456250 +v 3.480899 -6.678673 1.456250 +v 3.534347 -6.778666 1.456250 +v 3.567259 -6.887165 1.456250 +v 3.578373 -7.000000 1.456250 +v 3.567259 -7.112835 1.456250 +v 3.534347 -7.221334 1.456250 +v 3.480899 -7.321327 1.456250 +v 3.408971 -7.408971 1.456250 +v 3.321327 -7.480899 1.456250 +v 3.221334 -7.534347 1.456250 +v 3.112835 -7.567260 1.456250 +v 3.000000 -7.578373 1.456250 +v 2.887165 -7.567260 1.456250 +v 2.778666 -7.534347 1.456250 +v 2.678673 -7.480899 1.456250 +v 2.591028 -7.408971 1.456250 +v 2.519100 -7.321326 1.456250 +v 2.465653 -7.221334 1.456250 +v 2.432740 -7.112834 1.456250 +v 2.421627 -7.000000 1.456250 +v 2.432741 -6.887165 1.456250 +v 2.465654 -6.778666 1.456250 +v 2.519101 -6.678673 1.456250 +v 2.591029 -6.591028 1.456250 +v 2.678674 -6.519100 1.456250 +v 2.778667 -6.465653 1.456250 +v 2.887166 -6.432741 1.456250 +v 3.000001 -6.421628 1.456250 +v 3.112836 -6.432741 1.456250 +v 3.221334 -6.465654 1.456250 +v 3.321327 -6.519101 1.456250 +v 3.408228 -6.591773 1.428125 +v 3.480025 -6.679258 1.428125 +v 3.533375 -6.779069 1.428125 +v 3.566228 -6.887370 1.428125 +v 3.577321 -7.000000 1.428125 +v 3.566228 -7.112630 1.428125 +v 3.533375 -7.220931 1.428125 +v 3.480025 -7.320743 1.428125 +v 3.408228 -7.408227 1.428125 +v 3.320742 -7.480025 1.428125 +v 3.220931 -7.533375 1.428125 +v 3.112630 -7.566228 1.428125 +v 3.000000 -7.577321 1.428125 +v 2.887370 -7.566228 1.428125 +v 2.779068 -7.533375 1.428125 +v 2.679257 -7.480025 1.428125 +v 2.591772 -7.408227 1.428125 +v 2.519975 -7.320742 1.428125 +v 2.466625 -7.220931 1.428125 +v 2.433772 -7.112629 1.428125 +v 2.422679 -7.000000 1.428125 +v 2.433772 -6.887370 1.428125 +v 2.466625 -6.779068 1.428125 +v 2.519975 -6.679257 1.428125 +v 2.591773 -6.591772 1.428125 +v 2.679258 -6.519975 1.428125 +v 2.779069 -6.466624 1.428125 +v 2.887371 -6.433772 1.428125 +v 3.000001 -6.422679 1.428125 +v 3.112631 -6.433772 1.428125 +v 3.220932 -6.466625 1.428125 +v 3.320743 -6.519976 1.428125 +v 3.215980 -6.676764 0.900000 +v 3.274890 -6.725110 0.900000 +v 3.148770 -6.640839 0.900000 +v 3.075843 -6.618717 0.900000 +v 3.000001 -6.611247 0.900000 +v 2.924159 -6.618716 0.900000 +v 2.851231 -6.640839 0.900000 +v 2.784021 -6.676763 0.900000 +v 2.725110 -6.725110 0.900000 +v 2.676764 -6.784020 0.900000 +v 2.640839 -6.851230 0.900000 +v 2.618717 -6.924158 0.900000 +v 2.611247 -7.000000 0.900000 +v 2.618716 -7.075841 0.900000 +v 2.640839 -7.148769 0.900000 +v 2.676764 -7.215980 0.900000 +v 2.725110 -7.274890 0.900000 +v 2.784020 -7.323236 0.900000 +v 2.851230 -7.359161 0.900000 +v 2.924158 -7.381283 0.900000 +v 3.000000 -7.388753 0.900000 +v 3.075842 -7.381283 0.900000 +v 3.148769 -7.359161 0.900000 +v 3.215980 -7.323236 0.900000 +v 3.274890 -7.274890 0.900000 +v 3.323236 -7.215980 0.900000 +v 3.359161 -7.148769 0.900000 +v 3.381283 -7.075842 0.900000 +v 3.388753 -7.000000 0.900000 +v 3.381283 -6.924158 0.900000 +v 3.359161 -6.851231 0.900000 +v 3.323236 -6.784020 0.900000 +v 3.250635 -6.749365 1.150000 +v 3.294716 -6.803077 1.150000 +v 3.327470 -6.864357 1.150000 +v 3.347641 -6.930850 1.150000 +v 3.354451 -7.000000 1.150000 +v 3.347641 -7.069150 1.150000 +v 3.327471 -7.135643 1.150000 +v 3.294716 -7.196923 1.150000 +v 3.250635 -7.250635 1.150000 +v 3.196923 -7.294715 1.150000 +v 3.135643 -7.327470 1.150000 +v 3.069150 -7.347641 1.150000 +v 3.000000 -7.354451 1.150000 +v 2.930850 -7.347641 1.150000 +v 2.864357 -7.327470 1.150000 +v 2.803077 -7.294715 1.150000 +v 2.749365 -7.250635 1.150000 +v 2.705284 -7.196922 1.150000 +v 2.672529 -7.135643 1.150000 +v 2.652359 -7.069150 1.150000 +v 2.645549 -7.000000 1.150000 +v 2.652359 -6.930850 1.150000 +v 2.672530 -6.864357 1.150000 +v 2.705285 -6.803077 1.150000 +v 2.749365 -6.749365 1.150000 +v 2.803078 -6.705284 1.150000 +v 2.864358 -6.672529 1.150000 +v 2.930851 -6.652359 1.150000 +v 3.000000 -6.645549 1.150000 +v 3.069151 -6.652359 1.150000 +v 3.135643 -6.672530 1.150000 +v 3.196923 -6.705285 1.150000 +v 3.187395 -6.719545 1.275000 +v 3.238508 -6.761493 1.275000 +v 3.129080 -6.688375 1.275000 +v 3.065805 -6.669181 1.275000 +v 3.000000 -6.662700 1.275000 +v 2.934196 -6.669180 1.275000 +v 2.870921 -6.688375 1.275000 +v 2.812606 -6.719544 1.275000 +v 2.761493 -6.761492 1.275000 +v 2.719545 -6.812605 1.275000 +v 2.688375 -6.870920 1.275000 +v 2.669181 -6.934196 1.275000 +v 2.662699 -7.000000 1.275000 +v 2.669180 -7.065804 1.275000 +v 2.688375 -7.129079 1.275000 +v 2.719545 -7.187394 1.275000 +v 2.761492 -7.238507 1.275000 +v 2.812606 -7.280455 1.275000 +v 2.870921 -7.311625 1.275000 +v 2.934196 -7.330819 1.275000 +v 3.000000 -7.337300 1.275000 +v 3.065804 -7.330820 1.275000 +v 3.129079 -7.311625 1.275000 +v 3.187394 -7.280455 1.275000 +v 3.238508 -7.238507 1.275000 +v 3.280455 -7.187394 1.275000 +v 3.311625 -7.129079 1.275000 +v 3.330819 -7.065804 1.275000 +v 3.337301 -7.000000 1.275000 +v 3.330819 -6.934196 1.275000 +v 3.311625 -6.870921 1.275000 +v 3.280455 -6.812606 1.275000 +usemtl Material +s 1 +f 64 1059 1090 33 +f 31 1029 1028 32 +f 30 1030 1029 31 +f 30 29 1031 1030 +f 28 1032 1031 29 +f 27 1033 1032 28 +f 26 1034 1033 27 +f 26 25 1035 1034 +f 24 1036 1035 25 +f 24 23 1037 1036 +f 22 1038 1037 23 +f 21 1039 1038 22 +f 20 1040 1039 21 +f 20 19 1041 1040 +f 18 1042 1041 19 +f 18 17 1043 1042 +f 16 1044 1043 17 +f 16 15 1045 1044 +f 14 1046 1045 15 +f 14 13 1047 1046 +f 12 1048 1047 13 +f 11 1049 1048 12 +f 10 1050 1049 11 +f 10 9 1051 1050 +f 9 8 1052 1051 +f 7 1053 1052 8 +f 7 6 1054 1053 +f 5 1055 1054 6 +f 5 4 1056 1055 +f 3 1057 1056 4 +f 3 2 1058 1057 +f 2 1 1027 1058 +f 63 64 65 66 +f 62 63 66 67 +f 62 67 68 61 +f 60 61 68 69 +f 60 69 70 59 +f 58 59 70 71 +f 58 71 72 57 +f 56 57 72 73 +f 55 56 73 74 +f 55 74 75 54 +f 54 75 76 53 +f 53 76 77 52 +f 51 52 77 78 +f 51 78 79 50 +f 49 50 79 80 +f 49 80 81 48 +f 47 48 81 82 +f 47 82 83 46 +f 45 46 83 84 +f 45 84 85 44 +f 44 85 86 43 +f 43 86 87 42 +f 41 42 87 88 +f 41 88 89 40 +f 39 40 89 90 +f 39 90 91 38 +f 38 91 92 37 +f 37 92 93 36 +f 35 36 93 94 +f 35 94 95 34 +f 34 95 96 33 +f 33 96 65 64 +f 96 97 128 65 +f 95 98 97 96 +f 94 99 98 95 +f 94 93 100 99 +f 92 101 100 93 +f 91 102 101 92 +f 90 103 102 91 +f 90 89 104 103 +f 88 105 104 89 +f 88 87 106 105 +f 86 107 106 87 +f 85 108 107 86 +f 84 109 108 85 +f 84 83 110 109 +f 82 111 110 83 +f 82 81 112 111 +f 80 113 112 81 +f 80 79 114 113 +f 78 115 114 79 +f 78 77 116 115 +f 76 117 116 77 +f 75 118 117 76 +f 74 119 118 75 +f 74 73 120 119 +f 73 72 121 120 +f 71 122 121 72 +f 71 70 123 122 +f 69 124 123 70 +f 69 68 125 124 +f 67 126 125 68 +f 67 66 127 126 +f 66 65 128 127 +f 127 128 129 130 +f 126 127 130 131 +f 126 131 132 125 +f 124 125 132 133 +f 124 133 134 123 +f 122 123 134 135 +f 122 135 136 121 +f 120 121 136 137 +f 119 120 137 138 +f 119 138 139 118 +f 118 139 140 117 +f 117 140 141 116 +f 115 116 141 142 +f 115 142 143 114 +f 113 114 143 144 +f 113 144 145 112 +f 111 112 145 146 +f 111 146 147 110 +f 109 110 147 148 +f 109 148 149 108 +f 108 149 150 107 +f 107 150 151 106 +f 105 106 151 152 +f 105 152 153 104 +f 103 104 153 154 +f 103 154 155 102 +f 102 155 156 101 +f 101 156 157 100 +f 99 100 157 158 +f 99 158 159 98 +f 98 159 160 97 +f 97 160 129 128 +f 160 1443 1444 129 +f 159 1445 1443 160 +f 158 1446 1445 159 +f 158 157 1447 1446 +f 156 1448 1447 157 +f 155 1449 1448 156 +f 154 1450 1449 155 +f 154 153 1451 1450 +f 152 1452 1451 153 +f 152 151 1453 1452 +f 150 1454 1453 151 +f 149 1455 1454 150 +f 148 1456 1455 149 +f 148 147 1457 1456 +f 146 1458 1457 147 +f 146 145 1459 1458 +f 144 1460 1459 145 +f 144 143 1461 1460 +f 142 1462 1461 143 +f 142 141 1463 1462 +f 140 1464 1463 141 +f 139 1465 1464 140 +f 138 1466 1465 139 +f 138 137 1467 1466 +f 137 136 1468 1467 +f 135 1469 1468 136 +f 135 134 1470 1469 +f 133 1471 1470 134 +f 133 132 1472 1471 +f 131 1473 1472 132 +f 131 130 1474 1473 +f 130 129 1444 1474 +f 191 192 193 194 +f 190 191 194 195 +f 190 195 196 189 +f 188 189 196 197 +f 188 197 198 187 +f 186 187 198 199 +f 186 199 200 185 +f 184 185 200 201 +f 183 184 201 202 +f 183 202 203 182 +f 182 203 204 181 +f 181 204 205 180 +f 179 180 205 206 +f 179 206 207 178 +f 177 178 207 208 +f 177 208 209 176 +f 175 176 209 210 +f 175 210 211 174 +f 173 174 211 212 +f 173 212 213 172 +f 172 213 214 171 +f 171 214 215 170 +f 169 170 215 216 +f 169 216 217 168 +f 167 168 217 218 +f 167 218 219 166 +f 166 219 220 165 +f 165 220 221 164 +f 163 164 221 222 +f 163 222 223 162 +f 162 223 224 161 +f 161 224 193 192 +f 224 1442 1411 193 +f 223 1441 1442 224 +f 222 1440 1441 223 +f 222 221 1439 1440 +f 220 1438 1439 221 +f 219 1437 1438 220 +f 218 1436 1437 219 +f 218 217 1435 1436 +f 216 1434 1435 217 +f 216 215 1433 1434 +f 214 1432 1433 215 +f 213 1431 1432 214 +f 212 1430 1431 213 +f 212 211 1429 1430 +f 210 1428 1429 211 +f 210 209 1427 1428 +f 208 1426 1427 209 +f 208 207 1425 1426 +f 206 1424 1425 207 +f 206 205 1423 1424 +f 204 1422 1423 205 +f 203 1421 1422 204 +f 202 1420 1421 203 +f 202 201 1419 1420 +f 201 200 1418 1419 +f 199 1417 1418 200 +f 199 198 1416 1417 +f 197 1415 1416 198 +f 197 196 1414 1415 +f 195 1413 1414 196 +f 195 194 1412 1413 +f 194 193 1411 1412 +f 1 2 246 +f 2 3 246 +f 4 246 3 +f 4 5 246 +f 6 246 5 +f 6 7 246 +f 8 246 7 +f 8 9 246 +f 9 10 246 +f 11 246 10 +f 12 246 11 +f 13 246 12 +f 13 14 246 +f 15 246 14 +f 15 16 246 +f 17 246 16 +f 17 18 246 +f 19 246 18 +f 19 20 246 +f 21 246 20 +f 22 246 21 +f 23 246 22 +f 23 24 246 +f 25 246 24 +f 25 26 246 +f 27 246 26 +f 28 246 27 +f 29 246 28 +f 29 30 246 +f 31 246 30 +f 32 246 31 +f 1 246 32 +f 241 242 249 898 +f 898 249 250 897 +f 897 250 251 896 +f 896 251 252 895 +f 895 252 253 894 +f 894 253 254 893 +f 893 254 255 892 +f 892 255 256 891 +f 891 256 257 890 +f 890 257 258 889 +f 889 258 259 888 +f 888 259 260 887 +f 887 260 261 886 +f 886 261 262 885 +f 885 262 263 884 +f 884 263 264 883 +f 883 264 265 248 +f 248 265 266 247 +f 247 266 267 882 +f 882 267 268 881 +f 881 268 592 +f 268 269 592 +f 267 270 269 268 +f 266 271 270 267 +f 265 272 271 266 +f 264 273 272 265 +f 263 274 273 264 +f 262 275 274 263 +f 261 276 275 262 +f 260 277 276 261 +f 259 278 277 260 +f 258 279 278 259 +f 257 280 279 258 +f 256 281 280 257 +f 255 282 281 256 +f 254 283 282 255 +f 253 284 283 254 +f 252 285 284 253 +f 251 286 285 252 +f 250 287 286 251 +f 249 288 287 250 +f 242 243 288 249 +f 243 244 289 288 +f 288 289 290 287 +f 287 290 291 286 +f 286 291 292 285 +f 285 292 293 284 +f 284 293 294 283 +f 283 294 295 282 +f 282 295 296 281 +f 281 296 297 280 +f 280 297 298 279 +f 279 298 299 278 +f 278 299 300 277 +f 277 300 301 276 +f 276 301 302 275 +f 275 302 303 274 +f 274 303 304 273 +f 273 304 305 272 +f 272 305 306 271 +f 271 306 307 270 +f 270 307 308 269 +f 269 308 592 +f 308 309 592 +f 307 310 309 308 +f 306 311 310 307 +f 305 312 311 306 +f 304 313 312 305 +f 303 314 313 304 +f 302 315 314 303 +f 301 316 315 302 +f 300 317 316 301 +f 299 318 317 300 +f 298 319 318 299 +f 297 320 319 298 +f 296 321 320 297 +f 295 322 321 296 +f 294 323 322 295 +f 293 324 323 294 +f 292 325 324 293 +f 291 326 325 292 +f 290 327 326 291 +f 289 328 327 290 +f 244 245 328 289 +f 245 225 329 328 +f 328 329 330 327 +f 327 330 331 326 +f 326 331 332 325 +f 325 332 333 324 +f 324 333 334 323 +f 323 334 335 322 +f 322 335 336 321 +f 321 336 337 320 +f 320 337 338 319 +f 319 338 339 318 +f 318 339 340 317 +f 317 340 341 316 +f 316 341 342 315 +f 315 342 343 314 +f 314 343 344 313 +f 313 344 345 312 +f 312 345 346 311 +f 311 346 347 310 +f 310 347 348 309 +f 309 348 592 +f 348 349 592 +f 347 350 349 348 +f 346 351 350 347 +f 345 352 351 346 +f 344 353 352 345 +f 343 354 353 344 +f 342 355 354 343 +f 341 356 355 342 +f 340 357 356 341 +f 339 358 357 340 +f 338 359 358 339 +f 337 360 359 338 +f 336 361 360 337 +f 335 362 361 336 +f 334 363 362 335 +f 333 364 363 334 +f 332 365 364 333 +f 331 366 365 332 +f 330 367 366 331 +f 329 368 367 330 +f 225 226 368 329 +f 226 227 369 368 +f 368 369 370 367 +f 367 370 371 366 +f 366 371 372 365 +f 365 372 373 364 +f 364 373 374 363 +f 363 374 375 362 +f 362 375 376 361 +f 361 376 377 360 +f 360 377 378 359 +f 359 378 379 358 +f 358 379 380 357 +f 357 380 381 356 +f 356 381 382 355 +f 355 382 383 354 +f 354 383 384 353 +f 353 384 385 352 +f 352 385 386 351 +f 351 386 387 350 +f 350 387 388 349 +f 349 388 592 +f 388 389 592 +f 387 390 389 388 +f 386 391 390 387 +f 385 392 391 386 +f 384 393 392 385 +f 383 394 393 384 +f 382 395 394 383 +f 381 396 395 382 +f 380 397 396 381 +f 379 398 397 380 +f 378 399 398 379 +f 377 400 399 378 +f 376 401 400 377 +f 375 402 401 376 +f 374 403 402 375 +f 373 404 403 374 +f 372 405 404 373 +f 371 406 405 372 +f 370 407 406 371 +f 369 408 407 370 +f 227 228 408 369 +f 228 229 409 408 +f 408 409 410 407 +f 407 410 411 406 +f 406 411 412 405 +f 405 412 413 404 +f 404 413 414 403 +f 403 414 415 402 +f 402 415 416 401 +f 401 416 417 400 +f 400 417 418 399 +f 399 418 419 398 +f 398 419 420 397 +f 397 420 421 396 +f 396 421 422 395 +f 395 422 423 394 +f 394 423 424 393 +f 393 424 425 392 +f 392 425 426 391 +f 391 426 427 390 +f 390 427 428 389 +f 389 428 592 +f 428 429 592 +f 427 430 429 428 +f 426 431 430 427 +f 425 432 431 426 +f 424 433 432 425 +f 423 434 433 424 +f 422 435 434 423 +f 421 436 435 422 +f 420 437 436 421 +f 419 438 437 420 +f 418 439 438 419 +f 417 440 439 418 +f 416 441 440 417 +f 415 442 441 416 +f 414 443 442 415 +f 413 444 443 414 +f 412 445 444 413 +f 411 446 445 412 +f 410 447 446 411 +f 409 448 447 410 +f 229 230 448 409 +f 230 231 449 448 +f 448 449 450 447 +f 447 450 451 446 +f 446 451 452 445 +f 445 452 453 444 +f 444 453 454 443 +f 443 454 455 442 +f 442 455 456 441 +f 441 456 457 440 +f 440 457 458 439 +f 439 458 459 438 +f 438 459 460 437 +f 437 460 461 436 +f 436 461 462 435 +f 435 462 463 434 +f 434 463 464 433 +f 433 464 465 432 +f 432 465 466 431 +f 431 466 467 430 +f 430 467 468 429 +f 429 468 592 +f 468 469 592 +f 467 470 469 468 +f 466 471 470 467 +f 465 472 471 466 +f 464 473 472 465 +f 463 474 473 464 +f 462 475 474 463 +f 461 476 475 462 +f 460 477 476 461 +f 459 478 477 460 +f 458 479 478 459 +f 457 480 479 458 +f 456 481 480 457 +f 455 482 481 456 +f 454 483 482 455 +f 453 484 483 454 +f 452 485 484 453 +f 451 486 485 452 +f 450 487 486 451 +f 449 488 487 450 +f 231 232 488 449 +f 232 233 489 488 +f 488 489 490 487 +f 487 490 491 486 +f 486 491 492 485 +f 485 492 493 484 +f 484 493 494 483 +f 483 494 495 482 +f 482 495 496 481 +f 481 496 497 480 +f 480 497 498 479 +f 479 498 499 478 +f 478 499 500 477 +f 477 500 501 476 +f 476 501 502 475 +f 475 502 503 474 +f 474 503 504 473 +f 473 504 505 472 +f 472 505 506 471 +f 471 506 507 470 +f 470 507 508 469 +f 469 508 592 +f 508 509 592 +f 507 510 509 508 +f 506 511 510 507 +f 505 512 511 506 +f 504 513 512 505 +f 503 514 513 504 +f 502 515 514 503 +f 501 516 515 502 +f 500 517 516 501 +f 499 518 517 500 +f 498 519 518 499 +f 497 520 519 498 +f 496 521 520 497 +f 495 522 521 496 +f 494 523 522 495 +f 493 524 523 494 +f 492 525 524 493 +f 491 526 525 492 +f 490 527 526 491 +f 489 528 527 490 +f 233 234 528 489 +f 234 529 530 528 +f 528 530 531 527 +f 527 531 532 526 +f 526 532 533 525 +f 525 533 534 524 +f 524 534 535 523 +f 523 535 536 522 +f 522 536 537 521 +f 521 537 538 520 +f 520 538 539 519 +f 519 539 540 518 +f 518 540 541 517 +f 517 541 542 516 +f 516 542 543 515 +f 515 543 544 514 +f 514 544 545 513 +f 513 545 546 512 +f 512 546 547 511 +f 511 547 548 510 +f 510 548 549 509 +f 509 549 592 +f 549 550 592 +f 548 551 550 549 +f 547 552 551 548 +f 546 553 552 547 +f 545 554 553 546 +f 544 555 554 545 +f 543 556 555 544 +f 542 557 556 543 +f 541 558 557 542 +f 540 559 558 541 +f 539 560 559 540 +f 538 561 560 539 +f 537 562 561 538 +f 536 563 562 537 +f 535 564 563 536 +f 534 565 564 535 +f 533 566 565 534 +f 532 567 566 533 +f 531 568 567 532 +f 530 569 568 531 +f 529 570 569 530 +f 570 571 572 569 +f 569 572 573 568 +f 568 573 574 567 +f 567 574 575 566 +f 566 575 576 565 +f 565 576 577 564 +f 564 577 578 563 +f 563 578 579 562 +f 562 579 580 561 +f 561 580 581 560 +f 560 581 582 559 +f 559 582 583 558 +f 558 583 584 557 +f 557 584 585 556 +f 556 585 586 555 +f 555 586 587 554 +f 554 587 588 553 +f 553 588 589 552 +f 552 589 590 551 +f 551 590 591 550 +f 550 591 592 +f 591 593 592 +f 590 594 593 591 +f 589 595 594 590 +f 588 596 595 589 +f 587 597 596 588 +f 586 598 597 587 +f 585 599 598 586 +f 584 600 599 585 +f 583 601 600 584 +f 582 602 601 583 +f 581 603 602 582 +f 580 604 603 581 +f 579 605 604 580 +f 578 606 605 579 +f 577 607 606 578 +f 576 608 607 577 +f 575 609 608 576 +f 574 610 609 575 +f 573 611 610 574 +f 572 612 611 573 +f 571 613 612 572 +f 613 614 615 612 +f 612 615 616 611 +f 611 616 617 610 +f 610 617 618 609 +f 609 618 619 608 +f 608 619 620 607 +f 607 620 621 606 +f 606 621 622 605 +f 605 622 623 604 +f 604 623 624 603 +f 603 624 625 602 +f 602 625 626 601 +f 601 626 627 600 +f 600 627 628 599 +f 599 628 629 598 +f 598 629 630 597 +f 597 630 631 596 +f 596 631 632 595 +f 595 632 633 594 +f 594 633 634 593 +f 593 634 592 +f 634 635 592 +f 633 636 635 634 +f 632 637 636 633 +f 631 638 637 632 +f 630 639 638 631 +f 629 640 639 630 +f 628 641 640 629 +f 627 642 641 628 +f 626 643 642 627 +f 625 644 643 626 +f 624 645 644 625 +f 623 646 645 624 +f 622 647 646 623 +f 621 648 647 622 +f 620 649 648 621 +f 619 650 649 620 +f 618 651 650 619 +f 617 652 651 618 +f 616 653 652 617 +f 615 654 653 616 +f 614 655 654 615 +f 655 656 657 654 +f 654 657 658 653 +f 653 658 659 652 +f 652 659 660 651 +f 651 660 661 650 +f 650 661 662 649 +f 649 662 663 648 +f 648 663 664 647 +f 647 664 665 646 +f 646 665 666 645 +f 645 666 667 644 +f 644 667 668 643 +f 643 668 669 642 +f 642 669 670 641 +f 641 670 671 640 +f 640 671 672 639 +f 639 672 673 638 +f 638 673 674 637 +f 637 674 675 636 +f 636 675 676 635 +f 635 676 592 +f 676 677 592 +f 675 678 677 676 +f 674 679 678 675 +f 673 680 679 674 +f 672 681 680 673 +f 671 682 681 672 +f 670 683 682 671 +f 669 684 683 670 +f 668 685 684 669 +f 667 686 685 668 +f 666 687 686 667 +f 665 688 687 666 +f 664 689 688 665 +f 663 690 689 664 +f 662 691 690 663 +f 661 692 691 662 +f 660 693 692 661 +f 659 694 693 660 +f 658 695 694 659 +f 657 696 695 658 +f 656 697 696 657 +f 697 698 699 696 +f 696 699 700 695 +f 695 700 701 694 +f 694 701 702 693 +f 693 702 703 692 +f 692 703 704 691 +f 691 704 705 690 +f 690 705 706 689 +f 689 706 707 688 +f 688 707 708 687 +f 687 708 709 686 +f 686 709 710 685 +f 685 710 711 684 +f 684 711 712 683 +f 683 712 713 682 +f 682 713 714 681 +f 681 714 715 680 +f 680 715 716 679 +f 679 716 717 678 +f 678 717 718 677 +f 677 718 592 +f 718 719 592 +f 717 720 719 718 +f 716 721 720 717 +f 715 722 721 716 +f 714 723 722 715 +f 713 724 723 714 +f 712 725 724 713 +f 711 726 725 712 +f 710 727 726 711 +f 709 728 727 710 +f 708 729 728 709 +f 707 730 729 708 +f 706 731 730 707 +f 705 732 731 706 +f 704 733 732 705 +f 703 734 733 704 +f 702 735 734 703 +f 701 736 735 702 +f 700 737 736 701 +f 699 738 737 700 +f 698 739 738 699 +f 739 740 741 738 +f 738 741 742 737 +f 737 742 743 736 +f 736 743 744 735 +f 735 744 745 734 +f 734 745 746 733 +f 733 746 747 732 +f 732 747 748 731 +f 731 748 749 730 +f 730 749 750 729 +f 729 750 751 728 +f 728 751 752 727 +f 727 752 753 726 +f 726 753 754 725 +f 725 754 755 724 +f 724 755 756 723 +f 723 756 757 722 +f 722 757 758 721 +f 721 758 759 720 +f 720 759 760 719 +f 719 760 592 +f 760 761 592 +f 759 762 761 760 +f 758 763 762 759 +f 757 764 763 758 +f 756 765 764 757 +f 755 766 765 756 +f 754 767 766 755 +f 753 768 767 754 +f 752 769 768 753 +f 751 770 769 752 +f 750 771 770 751 +f 749 772 771 750 +f 748 773 772 749 +f 747 774 773 748 +f 746 775 774 747 +f 745 776 775 746 +f 744 777 776 745 +f 743 778 777 744 +f 742 779 778 743 +f 741 780 779 742 +f 740 235 780 741 +f 235 236 781 780 +f 780 781 782 779 +f 779 782 783 778 +f 778 783 784 777 +f 777 784 785 776 +f 776 785 786 775 +f 775 786 787 774 +f 774 787 788 773 +f 773 788 789 772 +f 772 789 790 771 +f 771 790 791 770 +f 770 791 792 769 +f 769 792 793 768 +f 768 793 794 767 +f 767 794 795 766 +f 766 795 796 765 +f 765 796 797 764 +f 764 797 798 763 +f 763 798 799 762 +f 762 799 800 761 +f 761 800 592 +f 800 801 592 +f 799 802 801 800 +f 798 803 802 799 +f 797 804 803 798 +f 796 805 804 797 +f 795 806 805 796 +f 794 807 806 795 +f 793 808 807 794 +f 792 809 808 793 +f 791 810 809 792 +f 790 811 810 791 +f 789 812 811 790 +f 788 813 812 789 +f 787 814 813 788 +f 786 815 814 787 +f 785 816 815 786 +f 784 817 816 785 +f 783 818 817 784 +f 782 819 818 783 +f 781 820 819 782 +f 236 237 820 781 +f 237 238 821 820 +f 820 821 822 819 +f 819 822 823 818 +f 818 823 824 817 +f 817 824 825 816 +f 816 825 826 815 +f 815 826 827 814 +f 814 827 828 813 +f 813 828 829 812 +f 812 829 830 811 +f 811 830 831 810 +f 810 831 832 809 +f 809 832 833 808 +f 808 833 834 807 +f 807 834 835 806 +f 806 835 836 805 +f 805 836 837 804 +f 804 837 838 803 +f 803 838 839 802 +f 802 839 840 801 +f 801 840 592 +f 840 841 592 +f 839 842 841 840 +f 838 843 842 839 +f 837 844 843 838 +f 836 845 844 837 +f 835 846 845 836 +f 834 847 846 835 +f 833 848 847 834 +f 832 849 848 833 +f 831 850 849 832 +f 830 851 850 831 +f 829 852 851 830 +f 828 853 852 829 +f 827 854 853 828 +f 826 855 854 827 +f 825 856 855 826 +f 824 857 856 825 +f 823 858 857 824 +f 822 859 858 823 +f 821 860 859 822 +f 238 239 860 821 +f 239 240 861 860 +f 860 861 862 859 +f 859 862 863 858 +f 858 863 864 857 +f 857 864 865 856 +f 856 865 866 855 +f 855 866 867 854 +f 854 867 868 853 +f 853 868 869 852 +f 852 869 870 851 +f 851 870 871 850 +f 850 871 872 849 +f 849 872 873 848 +f 848 873 874 847 +f 847 874 875 846 +f 846 875 876 845 +f 845 876 877 844 +f 844 877 878 843 +f 843 878 879 842 +f 842 879 880 841 +f 841 880 592 +f 880 881 592 +f 879 882 881 880 +f 878 247 882 879 +f 877 248 247 878 +f 876 883 248 877 +f 875 884 883 876 +f 874 885 884 875 +f 873 886 885 874 +f 872 887 886 873 +f 871 888 887 872 +f 870 889 888 871 +f 869 890 889 870 +f 868 891 890 869 +f 867 892 891 868 +f 866 893 892 867 +f 865 894 893 866 +f 864 895 894 865 +f 863 896 895 864 +f 862 897 896 863 +f 861 898 897 862 +f 240 241 898 861 +f 900 1188 1218 930 +f 930 1218 1217 929 +f 929 1217 1216 928 +f 928 1216 1215 927 +f 927 1215 1214 926 +f 926 1214 1213 925 +f 925 1213 1212 924 +f 924 1212 1211 923 +f 923 1211 1210 922 +f 922 1210 1209 921 +f 921 1209 1208 920 +f 920 1208 1207 919 +f 919 1207 1206 918 +f 918 1206 1205 917 +f 917 1205 1204 916 +f 916 1204 1203 915 +f 915 1203 1202 914 +f 914 1202 1201 913 +f 913 1201 1200 912 +f 912 1200 1199 911 +f 911 1199 1198 910 +f 910 1198 1197 909 +f 909 1197 1196 908 +f 908 1196 1195 907 +f 907 1195 1194 906 +f 906 1194 1193 905 +f 905 1193 1192 904 +f 904 1192 1191 903 +f 903 1191 1190 902 +f 902 1190 1189 901 +f 901 1189 1187 899 +f 899 1187 1188 900 +f 931 1251 1252 932 +f 932 1252 1253 933 +f 933 1253 1254 934 +f 934 1254 1255 935 +f 935 1255 1256 936 +f 936 1256 1257 937 +f 937 1257 1258 938 +f 938 1258 1259 939 +f 939 1259 1260 940 +f 940 1260 1261 941 +f 941 1261 1262 942 +f 942 1262 1263 943 +f 943 1263 1264 944 +f 944 1264 1265 945 +f 945 1265 1266 946 +f 946 1266 1267 947 +f 947 1267 1268 948 +f 948 1268 1269 949 +f 949 1269 1270 950 +f 950 1270 1271 951 +f 951 1271 1272 952 +f 952 1272 1273 953 +f 953 1273 1274 954 +f 954 1274 1275 955 +f 955 1275 1276 956 +f 956 1276 1277 957 +f 957 1277 1278 958 +f 958 1278 1279 959 +f 959 1279 1280 960 +f 960 1280 1281 961 +f 961 1281 1282 962 +f 962 1282 1251 931 +f 994 995 996 963 +f 993 997 995 994 +f 992 998 997 993 +f 991 999 998 992 +f 990 1000 999 991 +f 989 1001 1000 990 +f 988 1002 1001 989 +f 987 1003 1002 988 +f 986 1004 1003 987 +f 985 1005 1004 986 +f 984 1006 1005 985 +f 983 1007 1006 984 +f 982 1008 1007 983 +f 981 1009 1008 982 +f 980 1010 1009 981 +f 979 1011 1010 980 +f 978 1012 1011 979 +f 977 1013 1012 978 +f 976 1014 1013 977 +f 975 1015 1014 976 +f 974 1016 1015 975 +f 973 1017 1016 974 +f 972 1018 1017 973 +f 971 1019 1018 972 +f 970 1020 1019 971 +f 969 1021 1020 970 +f 968 1022 1021 969 +f 967 1023 1022 968 +f 966 1024 1023 967 +f 965 1025 1024 966 +f 964 1026 1025 965 +f 963 996 1026 964 +f 996 245 244 1026 +f 1026 244 243 1025 +f 1025 243 242 1024 +f 1024 242 241 1023 +f 1023 241 240 1022 +f 1022 240 239 1021 +f 1021 239 238 1020 +f 1020 238 237 1019 +f 1019 237 236 1018 +f 1018 236 235 1017 +f 1017 235 740 1016 +f 1016 740 739 1015 +f 1015 739 698 1014 +f 1014 698 697 1013 +f 1013 697 656 1012 +f 1012 656 655 1011 +f 1011 655 614 1010 +f 1010 614 613 1009 +f 1009 613 571 1008 +f 1008 571 570 1007 +f 1007 570 529 1006 +f 1006 529 234 1005 +f 1005 234 233 1004 +f 1004 233 232 1003 +f 1003 232 231 1002 +f 1002 231 230 1001 +f 1001 230 229 1000 +f 1000 229 228 999 +f 999 228 227 998 +f 998 227 226 997 +f 997 226 225 995 +f 995 225 245 996 +f 1027 1059 1060 1058 +f 1058 1060 1061 1057 +f 1057 1061 1062 1056 +f 1056 1062 1063 1055 +f 1055 1063 1064 1054 +f 1054 1064 1065 1053 +f 1053 1065 1066 1052 +f 1052 1066 1067 1051 +f 1051 1067 1068 1050 +f 1050 1068 1069 1049 +f 1049 1069 1070 1048 +f 1048 1070 1071 1047 +f 1047 1071 1072 1046 +f 1046 1072 1073 1045 +f 1045 1073 1074 1044 +f 1044 1074 1075 1043 +f 1043 1075 1076 1042 +f 1042 1076 1077 1041 +f 1041 1077 1078 1040 +f 1040 1078 1079 1039 +f 1039 1079 1080 1038 +f 1038 1080 1081 1037 +f 1037 1081 1082 1036 +f 1036 1082 1083 1035 +f 1035 1083 1084 1034 +f 1034 1084 1085 1033 +f 1033 1085 1086 1032 +f 1032 1086 1087 1031 +f 1031 1087 1088 1030 +f 1030 1088 1089 1029 +f 1029 1089 1090 1028 +f 1027 1 32 1028 +f 1089 34 33 1090 +f 1088 35 34 1089 +f 1087 36 35 1088 +f 1086 37 36 1087 +f 1085 38 37 1086 +f 1084 39 38 1085 +f 1083 40 39 1084 +f 1082 41 40 1083 +f 1081 42 41 1082 +f 1080 43 42 1081 +f 1079 44 43 1080 +f 1078 45 44 1079 +f 1077 46 45 1078 +f 1076 47 46 1077 +f 1075 48 47 1076 +f 1074 49 48 1075 +f 1073 50 49 1074 +f 1072 51 50 1073 +f 1071 52 51 1072 +f 1070 53 52 1071 +f 1069 54 53 1070 +f 1068 55 54 1069 +f 1067 56 55 1068 +f 1066 57 56 1067 +f 1065 58 57 1066 +f 1064 59 58 1065 +f 1063 60 59 1064 +f 1062 61 60 1063 +f 1061 62 61 1062 +f 1060 63 62 1061 +f 1059 64 63 1060 +f 1059 1027 1028 1090 +f 1154 1155 1156 1123 +f 1153 1157 1155 1154 +f 1152 1158 1157 1153 +f 1151 1159 1158 1152 +f 1150 1160 1159 1151 +f 1149 1161 1160 1150 +f 1148 1162 1161 1149 +f 1147 1163 1162 1148 +f 1146 1164 1163 1147 +f 1145 1165 1164 1146 +f 1144 1166 1165 1145 +f 1143 1167 1166 1144 +f 1142 1168 1167 1143 +f 1141 1169 1168 1142 +f 1140 1170 1169 1141 +f 1139 1171 1170 1140 +f 1138 1172 1171 1139 +f 1137 1173 1172 1138 +f 1136 1174 1173 1137 +f 1135 1175 1174 1136 +f 1134 1176 1175 1135 +f 1133 1177 1176 1134 +f 1132 1178 1177 1133 +f 1131 1179 1178 1132 +f 1130 1180 1179 1131 +f 1129 1181 1180 1130 +f 1128 1182 1181 1129 +f 1127 1183 1182 1128 +f 1126 1184 1183 1127 +f 1125 1185 1184 1126 +f 1124 1186 1185 1125 +f 1123 1156 1186 1124 +f 1122 994 963 1091 +f 1121 993 994 1122 +f 1120 992 993 1121 +f 1119 991 992 1120 +f 1118 990 991 1119 +f 1117 989 990 1118 +f 1116 988 989 1117 +f 1115 987 988 1116 +f 1114 986 987 1115 +f 1113 985 986 1114 +f 1112 984 985 1113 +f 1111 983 984 1112 +f 1110 982 983 1111 +f 1109 981 982 1110 +f 1108 980 981 1109 +f 1107 979 980 1108 +f 1106 978 979 1107 +f 1105 977 978 1106 +f 1104 976 977 1105 +f 1103 975 976 1104 +f 1102 974 975 1103 +f 1101 973 974 1102 +f 1100 972 973 1101 +f 1099 971 972 1100 +f 1098 970 971 1099 +f 1097 969 970 1098 +f 1096 968 969 1097 +f 1095 967 968 1096 +f 1094 966 967 1095 +f 1093 965 966 1094 +f 1092 964 965 1093 +f 1091 963 964 1092 +f 1156 900 930 1186 +f 1186 930 929 1185 +f 1185 929 928 1184 +f 1184 928 927 1183 +f 1183 927 926 1182 +f 1182 926 925 1181 +f 1181 925 924 1180 +f 1180 924 923 1179 +f 1179 923 922 1178 +f 1178 922 921 1177 +f 1177 921 920 1176 +f 1176 920 919 1175 +f 1175 919 918 1174 +f 1174 918 917 1173 +f 1173 917 916 1172 +f 1172 916 915 1171 +f 1171 915 914 1170 +f 1170 914 913 1169 +f 1169 913 912 1168 +f 1168 912 911 1167 +f 1167 911 910 1166 +f 1166 910 909 1165 +f 1165 909 908 1164 +f 1164 908 907 1163 +f 1163 907 906 1162 +f 1162 906 905 1161 +f 1161 905 904 1160 +f 1160 904 903 1159 +f 1159 903 902 1158 +f 1158 902 901 1157 +f 1157 901 899 1155 +f 1155 899 900 1156 +f 1187 1122 1091 1188 +f 1189 1121 1122 1187 +f 1190 1120 1121 1189 +f 1191 1119 1120 1190 +f 1192 1118 1119 1191 +f 1193 1117 1118 1192 +f 1194 1116 1117 1193 +f 1195 1115 1116 1194 +f 1196 1114 1115 1195 +f 1197 1113 1114 1196 +f 1198 1112 1113 1197 +f 1199 1111 1112 1198 +f 1200 1110 1111 1199 +f 1201 1109 1110 1200 +f 1202 1108 1109 1201 +f 1203 1107 1108 1202 +f 1204 1106 1107 1203 +f 1205 1105 1106 1204 +f 1206 1104 1105 1205 +f 1207 1103 1104 1206 +f 1208 1102 1103 1207 +f 1209 1101 1102 1208 +f 1210 1100 1101 1209 +f 1211 1099 1100 1210 +f 1212 1098 1099 1211 +f 1213 1097 1098 1212 +f 1214 1096 1097 1213 +f 1215 1095 1096 1214 +f 1216 1094 1095 1215 +f 1217 1093 1094 1216 +f 1218 1092 1093 1217 +f 1188 1091 1092 1218 +f 1220 1348 1378 1250 +f 1250 1378 1377 1249 +f 1249 1377 1376 1248 +f 1248 1376 1375 1247 +f 1247 1375 1374 1246 +f 1246 1374 1373 1245 +f 1245 1373 1372 1244 +f 1244 1372 1371 1243 +f 1243 1371 1370 1242 +f 1242 1370 1369 1241 +f 1241 1369 1368 1240 +f 1240 1368 1367 1239 +f 1239 1367 1366 1238 +f 1238 1366 1365 1237 +f 1237 1365 1364 1236 +f 1236 1364 1363 1235 +f 1235 1363 1362 1234 +f 1234 1362 1361 1233 +f 1233 1361 1360 1232 +f 1232 1360 1359 1231 +f 1231 1359 1358 1230 +f 1230 1358 1357 1229 +f 1229 1357 1356 1228 +f 1228 1356 1355 1227 +f 1227 1355 1354 1226 +f 1226 1354 1353 1225 +f 1225 1353 1352 1224 +f 1224 1352 1351 1223 +f 1223 1351 1350 1222 +f 1222 1350 1349 1221 +f 1221 1349 1347 1219 +f 1219 1347 1348 1220 +f 1282 1154 1123 1251 +f 1281 1153 1154 1282 +f 1280 1152 1153 1281 +f 1279 1151 1152 1280 +f 1278 1150 1151 1279 +f 1277 1149 1150 1278 +f 1276 1148 1149 1277 +f 1275 1147 1148 1276 +f 1274 1146 1147 1275 +f 1273 1145 1146 1274 +f 1272 1144 1145 1273 +f 1271 1143 1144 1272 +f 1270 1142 1143 1271 +f 1269 1141 1142 1270 +f 1268 1140 1141 1269 +f 1267 1139 1140 1268 +f 1266 1138 1139 1267 +f 1265 1137 1138 1266 +f 1264 1136 1137 1265 +f 1263 1135 1136 1264 +f 1262 1134 1135 1263 +f 1261 1133 1134 1262 +f 1260 1132 1133 1261 +f 1259 1131 1132 1260 +f 1258 1130 1131 1259 +f 1257 1129 1130 1258 +f 1256 1128 1129 1257 +f 1255 1127 1128 1256 +f 1254 1126 1127 1255 +f 1253 1125 1126 1254 +f 1252 1124 1125 1253 +f 1251 1123 1124 1252 +f 1314 1315 1316 1283 +f 1313 1317 1315 1314 +f 1312 1318 1317 1313 +f 1311 1319 1318 1312 +f 1310 1320 1319 1311 +f 1309 1321 1320 1310 +f 1308 1322 1321 1309 +f 1307 1323 1322 1308 +f 1306 1324 1323 1307 +f 1305 1325 1324 1306 +f 1304 1326 1325 1305 +f 1303 1327 1326 1304 +f 1302 1328 1327 1303 +f 1301 1329 1328 1302 +f 1300 1330 1329 1301 +f 1299 1331 1330 1300 +f 1298 1332 1331 1299 +f 1297 1333 1332 1298 +f 1296 1334 1333 1297 +f 1295 1335 1334 1296 +f 1294 1336 1335 1295 +f 1293 1337 1336 1294 +f 1292 1338 1337 1293 +f 1291 1339 1338 1292 +f 1290 1340 1339 1291 +f 1289 1341 1340 1290 +f 1288 1342 1341 1289 +f 1287 1343 1342 1288 +f 1286 1344 1343 1287 +f 1285 1345 1344 1286 +f 1284 1346 1345 1285 +f 1283 1316 1346 1284 +f 1316 931 932 1346 +f 1346 932 933 1345 +f 1345 933 934 1344 +f 1344 934 935 1343 +f 1343 935 936 1342 +f 1342 936 937 1341 +f 1341 937 938 1340 +f 1340 938 939 1339 +f 1339 939 940 1338 +f 1338 940 941 1337 +f 1337 941 942 1336 +f 1336 942 943 1335 +f 1335 943 944 1334 +f 1334 944 945 1333 +f 1333 945 946 1332 +f 1332 946 947 1331 +f 1331 947 948 1330 +f 1330 948 949 1329 +f 1329 949 950 1328 +f 1328 950 951 1327 +f 1327 951 952 1326 +f 1326 952 953 1325 +f 1325 953 954 1324 +f 1324 954 955 1323 +f 1323 955 956 1322 +f 1322 956 957 1321 +f 1321 957 958 1320 +f 1320 958 959 1319 +f 1319 959 960 1318 +f 1318 960 961 1317 +f 1317 961 962 1315 +f 1315 962 931 1316 +f 1347 1314 1283 1348 +f 1349 1313 1314 1347 +f 1350 1312 1313 1349 +f 1351 1311 1312 1350 +f 1352 1310 1311 1351 +f 1353 1309 1310 1352 +f 1354 1308 1309 1353 +f 1355 1307 1308 1354 +f 1356 1306 1307 1355 +f 1357 1305 1306 1356 +f 1358 1304 1305 1357 +f 1359 1303 1304 1358 +f 1360 1302 1303 1359 +f 1361 1301 1302 1360 +f 1362 1300 1301 1361 +f 1363 1299 1300 1362 +f 1364 1298 1299 1363 +f 1365 1297 1298 1364 +f 1366 1296 1297 1365 +f 1367 1295 1296 1366 +f 1368 1294 1295 1367 +f 1369 1293 1294 1368 +f 1370 1292 1293 1369 +f 1371 1291 1292 1370 +f 1372 1290 1291 1371 +f 1373 1289 1290 1372 +f 1374 1288 1289 1373 +f 1375 1287 1288 1374 +f 1376 1286 1287 1375 +f 1377 1285 1286 1376 +f 1378 1284 1285 1377 +f 1348 1283 1284 1378 +f 1379 1220 1250 1380 +f 1380 1250 1249 1381 +f 1381 1249 1248 1382 +f 1382 1248 1247 1383 +f 1383 1247 1246 1384 +f 1384 1246 1245 1385 +f 1385 1245 1244 1386 +f 1386 1244 1243 1387 +f 1387 1243 1242 1388 +f 1388 1242 1241 1389 +f 1389 1241 1240 1390 +f 1390 1240 1239 1391 +f 1391 1239 1238 1392 +f 1392 1238 1237 1393 +f 1393 1237 1236 1394 +f 1394 1236 1235 1395 +f 1395 1235 1234 1396 +f 1396 1234 1233 1397 +f 1397 1233 1232 1398 +f 1398 1232 1231 1399 +f 1399 1231 1230 1400 +f 1400 1230 1229 1401 +f 1401 1229 1228 1402 +f 1402 1228 1227 1403 +f 1403 1227 1226 1404 +f 1404 1226 1225 1405 +f 1405 1225 1224 1406 +f 1406 1224 1223 1407 +f 1407 1223 1222 1408 +f 1408 1222 1221 1409 +f 1409 1221 1219 1410 +f 1410 1219 1220 1379 +f 1411 1379 1380 1412 +f 1412 1380 1381 1413 +f 1413 1381 1382 1414 +f 1414 1382 1383 1415 +f 1415 1383 1384 1416 +f 1416 1384 1385 1417 +f 1417 1385 1386 1418 +f 1418 1386 1387 1419 +f 1419 1387 1388 1420 +f 1420 1388 1389 1421 +f 1421 1389 1390 1422 +f 1422 1390 1391 1423 +f 1423 1391 1392 1424 +f 1424 1392 1393 1425 +f 1425 1393 1394 1426 +f 1426 1394 1395 1427 +f 1427 1395 1396 1428 +f 1428 1396 1397 1429 +f 1429 1397 1398 1430 +f 1430 1398 1399 1431 +f 1431 1399 1400 1432 +f 1432 1400 1401 1433 +f 1433 1401 1402 1434 +f 1434 1402 1403 1435 +f 1435 1403 1404 1436 +f 1436 1404 1405 1437 +f 1437 1405 1406 1438 +f 1438 1406 1407 1439 +f 1439 1407 1408 1440 +f 1440 1408 1409 1441 +f 1441 1409 1410 1442 +f 1442 1410 1379 1411 +f 1444 1475 1476 1474 +f 1474 1476 1477 1473 +f 1473 1477 1478 1472 +f 1472 1478 1479 1471 +f 1471 1479 1480 1470 +f 1470 1480 1481 1469 +f 1469 1481 1482 1468 +f 1468 1482 1483 1467 +f 1467 1483 1484 1466 +f 1466 1484 1485 1465 +f 1465 1485 1486 1464 +f 1464 1486 1487 1463 +f 1463 1487 1488 1462 +f 1462 1488 1489 1461 +f 1461 1489 1490 1460 +f 1460 1490 1491 1459 +f 1459 1491 1492 1458 +f 1458 1492 1493 1457 +f 1457 1493 1494 1456 +f 1456 1494 1495 1455 +f 1455 1495 1496 1454 +f 1454 1496 1497 1453 +f 1453 1497 1498 1452 +f 1452 1498 1499 1451 +f 1451 1499 1500 1450 +f 1450 1500 1501 1449 +f 1449 1501 1502 1448 +f 1448 1502 1503 1447 +f 1447 1503 1504 1446 +f 1446 1504 1505 1445 +f 1445 1505 1506 1443 +f 1443 1506 1475 1444 +f 1506 1507 1508 1475 +f 1505 1509 1507 1506 +f 1504 1510 1509 1505 +f 1503 1511 1510 1504 +f 1502 1512 1511 1503 +f 1501 1513 1512 1502 +f 1500 1514 1513 1501 +f 1499 1515 1514 1500 +f 1498 1516 1515 1499 +f 1497 1517 1516 1498 +f 1496 1518 1517 1497 +f 1495 1519 1518 1496 +f 1494 1520 1519 1495 +f 1493 1521 1520 1494 +f 1492 1522 1521 1493 +f 1491 1523 1522 1492 +f 1490 1524 1523 1491 +f 1489 1525 1524 1490 +f 1488 1526 1525 1489 +f 1487 1527 1526 1488 +f 1486 1528 1527 1487 +f 1485 1529 1528 1486 +f 1484 1530 1529 1485 +f 1483 1531 1530 1484 +f 1482 1532 1531 1483 +f 1481 1533 1532 1482 +f 1480 1534 1533 1481 +f 1479 1535 1534 1480 +f 1478 1536 1535 1479 +f 1477 1537 1536 1478 +f 1476 1538 1537 1477 +f 1475 1508 1538 1476 +f 1508 192 191 1538 +f 1538 191 190 1537 +f 1537 190 189 1536 +f 1536 189 188 1535 +f 1535 188 187 1534 +f 1534 187 186 1533 +f 1533 186 185 1532 +f 1532 185 184 1531 +f 1531 184 183 1530 +f 1530 183 182 1529 +f 1529 182 181 1528 +f 1528 181 180 1527 +f 1527 180 179 1526 +f 1526 179 178 1525 +f 1525 178 177 1524 +f 1524 177 176 1523 +f 1523 176 175 1522 +f 1522 175 174 1521 +f 1521 174 173 1520 +f 1520 173 172 1519 +f 1519 172 171 1518 +f 1518 171 170 1517 +f 1517 170 169 1516 +f 1516 169 168 1515 +f 1515 168 167 1514 +f 1514 167 166 1513 +f 1513 166 165 1512 +f 1512 165 164 1511 +f 1511 164 163 1510 +f 1510 163 162 1509 +f 1509 162 161 1507 +f 1507 161 192 1508 diff --git a/Graph3D/Chess3D/board.obj b/Graph3D/Chess3D/board.obj new file mode 100644 index 0000000..a56b3bd --- /dev/null +++ b/Graph3D/Chess3D/board.obj @@ -0,0 +1,164 @@ +# Blender3D v245 OBJ File: chess2.blend +# www.blender3d.org +v -6.000000 6.000000 0.000000 +v -8.000000 6.000000 0.000000 +v -8.000001 8.000000 0.000000 +v -6.000000 7.999999 0.000000 +v -6.000000 3.999999 0.000000 +v -8.000000 3.999999 0.000000 +v -8.000000 1.999999 0.000000 +v -6.000000 2.000000 0.000000 +v -6.000000 -2.000000 0.000000 +v -8.000000 -2.000001 0.000000 +v -8.000000 -0.000001 0.000000 +v -6.000000 -0.000001 0.000000 +v -5.999999 -4.000001 0.000000 +v -8.000000 -4.000000 0.000000 +v -8.000000 -6.000000 0.000000 +v -6.000000 -6.000000 0.000000 +v -3.999999 -8.000000 0.000000 +v -6.000000 -8.000000 0.000000 +v -6.000000 -6.000000 0.000000 +v -3.999999 -6.000001 0.000000 +v -3.999999 -2.000001 0.000000 +v -6.000000 -2.000000 0.000000 +v -6.000000 -4.000000 0.000000 +v -4.000000 -4.000000 0.000000 +v -4.000000 -0.000000 0.000000 +v -6.000000 -0.000000 0.000000 +v -6.000000 2.000000 0.000000 +v -4.000000 1.999999 0.000000 +v -4.000000 5.999999 0.000000 +v -6.000000 6.000000 0.000000 +v -6.000000 4.000000 0.000000 +v -4.000000 4.000000 0.000000 +v -0.000000 4.000000 0.000000 +v -2.000000 4.000000 0.000000 +v -2.000000 6.000000 0.000000 +v 0.000000 6.000000 0.000000 +v 0.000000 2.000000 0.000000 +v -2.000000 2.000000 0.000000 +v -2.000000 -0.000000 0.000000 +v 0.000000 0.000000 0.000000 +v 0.000000 -4.000000 0.000000 +v -2.000000 -4.000000 0.000000 +v -2.000000 -2.000000 0.000000 +v 0.000001 -2.000000 0.000000 +v 0.000001 -6.000000 0.000000 +v -2.000000 -6.000000 0.000000 +v -1.999999 -8.000000 0.000000 +v 0.000001 -8.000000 0.000000 +v -2.000000 -6.000000 0.000000 +v -4.000000 -6.000000 0.000000 +v -4.000000 -4.000000 0.000000 +v -1.999999 -4.000000 0.000000 +v -2.000000 -0.000001 0.000000 +v -4.000000 -0.000000 0.000000 +v -4.000000 -2.000000 0.000000 +v -2.000000 -2.000000 0.000000 +v -2.000000 2.000000 0.000000 +v -4.000000 2.000000 0.000000 +v -4.000000 4.000000 0.000000 +v -2.000000 3.999999 0.000000 +v -2.000000 8.000000 0.000000 +v -4.000000 8.000000 0.000000 +v -4.000000 6.000000 0.000000 +v -2.000000 6.000000 0.000000 +v 6.000000 6.000000 0.000000 +v 4.000000 6.000000 0.000000 +v 3.999999 8.000000 0.000000 +v 6.000000 8.000000 0.000000 +v 6.000000 4.000000 0.000000 +v 4.000000 4.000000 0.000000 +v 4.000000 2.000000 0.000000 +v 6.000000 2.000000 0.000000 +v 6.000000 -2.000000 0.000000 +v 4.000000 -2.000000 0.000000 +v 4.000000 0.000000 0.000000 +v 6.000000 -0.000000 0.000000 +v 6.000001 -4.000000 0.000000 +v 4.000000 -4.000000 0.000000 +v 4.000000 -6.000000 0.000000 +v 6.000000 -6.000000 0.000000 +v 8.000001 -8.000000 0.000000 +v 6.000000 -8.000000 0.000000 +v 6.000000 -6.000000 0.000000 +v 8.000000 -6.000000 0.000000 +v 8.000000 -2.000000 0.000000 +v 6.000000 -2.000000 0.000000 +v 6.000000 -4.000000 0.000000 +v 8.000000 -3.999999 0.000000 +v 8.000000 0.000001 0.000000 +v 6.000000 0.000000 0.000000 +v 6.000000 2.000000 0.000000 +v 8.000000 2.000000 0.000000 +v 8.000000 6.000000 0.000000 +v 6.000000 6.000000 0.000000 +v 6.000000 4.000000 0.000000 +v 8.000000 4.000000 0.000000 +v 4.000000 4.000000 0.000000 +v 2.000000 4.000000 0.000000 +v 2.000000 6.000000 0.000000 +v 4.000000 6.000000 0.000000 +v 4.000000 2.000000 0.000000 +v 2.000000 2.000000 0.000000 +v 2.000000 0.000000 0.000000 +v 4.000000 0.000000 0.000000 +v 4.000000 -4.000000 0.000000 +v 2.000000 -4.000000 0.000000 +v 2.000000 -2.000000 0.000000 +v 4.000000 -2.000000 0.000000 +v 4.000001 -6.000000 0.000000 +v 2.000000 -6.000000 0.000000 +v 2.000001 -8.000000 0.000000 +v 4.000000 -8.000000 0.000000 +v 2.000000 -6.000000 0.000000 +v 0.000000 -6.000000 0.000000 +v 0.000000 -4.000000 0.000000 +v 2.000001 -4.000000 0.000000 +v 2.000000 -0.000000 0.000000 +v 0.000000 0.000000 0.000000 +v 0.000000 -2.000000 0.000000 +v 2.000000 -2.000000 0.000000 +v 2.000000 2.000000 0.000000 +v -0.000000 2.000000 0.000000 +v -0.000000 4.000000 0.000000 +v 2.000000 4.000000 0.000000 +v 2.000000 8.000000 0.000000 +v -0.000001 8.000000 0.000000 +v -0.000000 6.000000 0.000000 +v 2.000000 6.000000 0.000000 +usemtl Material.001 +s off +f 1 4 3 2 +f 6 7 8 5 +f 11 10 9 12 +f 14 15 16 13 +f 30 31 32 29 +f 27 26 25 28 +f 22 23 24 21 +f 19 18 17 20 +f 62 63 64 61 +f 59 58 57 60 +f 54 55 56 53 +f 51 50 49 52 +f 35 34 33 36 +f 38 39 40 37 +f 43 42 41 44 +f 46 47 48 45 +f 126 127 128 125 +f 123 122 121 124 +f 118 119 120 117 +f 115 114 113 116 +f 99 98 97 100 +f 102 103 104 101 +f 107 106 105 108 +f 110 111 112 109 +f 67 66 65 68 +f 70 71 72 69 +f 75 74 73 76 +f 78 79 80 77 +f 94 95 96 93 +f 91 90 89 92 +f 86 87 88 85 +f 83 82 81 84 diff --git a/Graph3D/Chess3D/game2.pas b/Graph3D/Chess3D/game2.pas new file mode 100644 index 0000000..cefad7a --- /dev/null +++ b/Graph3D/Chess3D/game2.pas @@ -0,0 +1,182 @@ +uses Graph3D; + +type + FigureColor = (Black,White); + FigureKind = (BishopK, HorseK, KingK, PownK, QueenK, RockK); + +var + BlackC := GrayColor(60); + WhiteC := Colors.White; + delay := 1000; + +type ChessFigure = class + f: FileModelT; +public + color: FigureColor; + k: FigureKind; + x,y: integer; + constructor Create(kk: FigureKind; cc: FigureColor); + function MoveTo(xx,yy: integer): ChessFigure; + function AnimMoveTo(xx,yy: integer): ChessFigure; + procedure Destroy; + begin + f.Destroy; + end; +end; + +var a := new ChessFigure[8,8]; + +constructor ChessFigure.Create(kk: FigureKind; cc: FigureColor); +begin + color := cc; + var c := cc=Black ? BlackC : WhiteC; + case kk of +bishopK: f := FileModel3D(4,14,0,'bishop.obj',c); +horseK : f := FileModel3D(2,14,0,'horse.obj',c); +kingK : f := FileModel3D(6,14,0,'king.obj',c); +pownK : f := FileModel3D(0,12,0,'pawn.obj',c); +queenK : f := FileModel3D(8,14,0,'queen.obj',c); +rockK : f := FileModel3D(0,14,0,'rook.obj',c); + end; + k := kk; +end; + +function ChessFigure.MoveTo(xx,yy: integer): ChessFigure; +begin + a[y,x] := nil; + if a[yy,xx]<>nil then + a[yy,xx].Destroy; + a[yy,xx] := Self; + var dx := xx - x; + var dy := yy - y; + f.MoveBy(-dx*2,-dy*2,0); + (x,y) := (xx,yy); + Result := Self; +end; + +function ChessFigure.AnimMoveTo(xx,yy: integer): ChessFigure; +begin + var dx := xx - x; + var dy := yy - y; + f.AnimMoveBy(-dx*2,-dy*2,0,delay/1000).WhenCompleted(procedure -> begin + a[y,x] := nil; + if a[yy,xx]<>nil then + a[yy,xx].Destroy; + a[yy,xx] := Self; + end + ).Begin; + (x,y) := (xx,yy); + Result := Self; +end; + +function Bishop(x,y: integer; c: FigureColor) := ChessFigure.Create(FigureKind.BishopK,c).MoveTo(x,y); +function Horse(x,y: integer; c: FigureColor) := ChessFigure.Create(FigureKind.HorseK,c).MoveTo(x,y); +function King(x,y: integer; c: FigureColor) := ChessFigure.Create(FigureKind.KingK,c).MoveTo(x,y); +function Queen(x,y: integer; c: FigureColor) := ChessFigure.Create(FigureKind.QueenK,c).MoveTo(x,y); +function Rock(x,y: integer; c: FigureColor) := ChessFigure.Create(FigureKind.RockK,c).MoveTo(x,y); +function Pown(x,y: integer; c: FigureColor) := ChessFigure.Create(FigureKind.PownK,c).MoveTo(x,y); + +procedure InitScene; +begin + var d := 7; + for var c := 'A' to 'H' do + begin + var t := Text3D(d,8.5,0,c,0.5); + t.UpDirection := v3d(0,-1,0); + d -= 2; + end; + d := 7; + for var c := '1' to '8' do + begin + var t := Text3D(8.3,d,0,c,0.5); + t.UpDirection := v3d(0,-1,0); + d -= 2; + end; + View3D.ShowGridLines := False; + var f := FileModel3D(0,0,0,'board.obj',GrayColor(100)); + f.Rotate(OrtZ,90); +end; + +procedure StartupPosition; +begin + Rock(0,0,White); + Horse(1,0,White); + Bishop(2,0,White); + Queen(3,0,White); + King(4,0,White); + Bishop(5,0,White); + Horse(6,0,White); + Rock(7,0,White); + for var i:=0 to 7 do + Pown(i,1,White); + + Rock(0,7,Black); + Horse(1,7,Black); + Bishop(2,7,Black); + Queen(3,7,Black); + King(4,7,Black); + Bishop(5,7,Black); + Horse(6,7,Black); + Rock(7,7,Black); + for var i:=0 to 7 do + Pown(i,6,Black); +end; + +procedure Turn(x,y,x1,y1: integer); +begin + if a[y,x]=nil then + begin + Println('>',y,x); + exit; + end; + + //Print(a[y,x],a[y1,x1]); + a[y,x].AnimMoveTo(x1,y1); + + //Println('->',a[y,x],a[y1,x1]); + Sleep(delay); +end; + +procedure TurnB(s1,s2: string); +begin + //Println(s1,s2); + Turn(Ord(s1[1])-Ord('a'),s1[2].ToDigit-1,Ord(s2[1])-Ord('a'),s2[2].ToDigit-1); +end; + +procedure Turns(s: string); +begin + var ss := s.ToWords.Batch(3).SelectMany(d->d.ToArray[1:]); + var i := 0; + foreach var d in ss do + begin + var p := Pos('-',d); + var p1 := d[:p]; + if Length(p1)=3 then + p1 := p1[2:]; + var p2 := d[p+1:]; + if Length(p2)=3 then + p2 := p2[2:]; + if (p1 = '0') and (p2 = '0') then + begin + if i mod 2 = 0 then + begin + TurnB('e1','g1'); + TurnB('h1','f1'); + end + else + begin + TurnB('e8','g8'); + TurnB('h8','f8'); + end + end + else TurnB(p1,p2); + i += 1; + end; +end; + +begin + InitScene; + StartupPosition; + //Turns('1. c2-c4 g7-g6 2. e2-e4 Cf8-g7 3. d2-d4 d7-d6 4. Kb1-c3 Kg8-f6 5. Kg1-f3 0-0 6. Cf1-e2 e7-e5 7. Cc1-e3 Kf6-g4 8. Ce3-g5 f7-f6 9. Cg5-h4 g6-g5 10. Ch4-g3 Kg4-h6'); + Turns('1. e2-e4 e7-e5 2. f1-c4 g8-f6 3. d2-d4 e5-d4 4. g1-f3 d7-d5 5. e4-d5 f8-b4 6. c2-c3 d8-e7'); +end. \ No newline at end of file diff --git a/Graph3D/Chess3D/horse.obj b/Graph3D/Chess3D/horse.obj new file mode 100644 index 0000000..5f2e04e --- /dev/null +++ b/Graph3D/Chess3D/horse.obj @@ -0,0 +1,2557 @@ +# Blender3D v245 OBJ File: chess2.blend +# www.blender3d.org +v 5.600000 -6.400000 0.000000 +v 5.705525 -6.528583 0.000000 +v 5.783938 -6.675282 0.000000 +v 5.832224 -6.834460 0.000000 +v 5.848528 -7.000000 0.000000 +v 5.832224 -7.165540 0.000000 +v 5.783938 -7.324718 0.000000 +v 5.705525 -7.471417 0.000000 +v 5.600000 -7.600000 0.000000 +v 5.471417 -7.705525 0.000000 +v 5.324718 -7.783938 0.000000 +v 5.165539 -7.832224 0.000000 +v 5.000000 -7.848528 0.000000 +v 4.834460 -7.832224 0.000000 +v 4.675282 -7.783937 0.000000 +v 4.528583 -7.705525 0.000000 +v 4.400000 -7.599999 0.000000 +v 4.294474 -7.471416 0.000000 +v 4.216062 -7.324717 0.000000 +v 4.167776 -7.165539 0.000000 +v 4.151472 -6.999999 0.000000 +v 4.167776 -6.834459 0.000000 +v 4.216063 -6.675282 0.000000 +v 4.294475 -6.528582 0.000000 +v 4.400001 -6.399999 0.000000 +v 4.528584 -6.294474 0.000000 +v 4.675283 -6.216062 0.000000 +v 4.834462 -6.167776 0.000000 +v 5.000001 -6.151472 0.000000 +v 5.165541 -6.167777 0.000000 +v 5.324719 -6.216063 0.000000 +v 5.471418 -6.294476 0.000000 +v 5.471418 -6.294476 0.100000 +v 5.324719 -6.216063 0.100000 +v 5.165541 -6.167777 0.100000 +v 5.000001 -6.151472 0.100000 +v 4.834462 -6.167776 0.100000 +v 4.675283 -6.216062 0.100000 +v 4.528584 -6.294474 0.100000 +v 4.400001 -6.399999 0.100000 +v 4.294475 -6.528582 0.100000 +v 4.216063 -6.675282 0.100000 +v 4.167776 -6.834459 0.100000 +v 4.151472 -6.999999 0.100000 +v 4.167776 -7.165539 0.100000 +v 4.216062 -7.324717 0.100000 +v 4.294474 -7.471416 0.100000 +v 4.400000 -7.599999 0.100000 +v 4.528583 -7.705525 0.100000 +v 4.675282 -7.783937 0.100000 +v 4.834460 -7.832224 0.100000 +v 5.000000 -7.848528 0.100000 +v 5.165539 -7.832224 0.100000 +v 5.324718 -7.783938 0.100000 +v 5.471417 -7.705525 0.100000 +v 5.600000 -7.600000 0.100000 +v 5.705525 -7.471417 0.100000 +v 5.783938 -7.324718 0.100000 +v 5.832224 -7.165540 0.100000 +v 5.848528 -7.000000 0.100000 +v 5.832224 -6.834460 0.100000 +v 5.783938 -6.675282 0.100000 +v 5.705525 -6.528583 0.100000 +v 5.600000 -6.400000 0.100000 +v 5.360000 -6.640000 0.300000 +v 5.423315 -6.717150 0.300000 +v 5.470363 -6.805170 0.300000 +v 5.499334 -6.900676 0.300000 +v 5.509117 -7.000000 0.300000 +v 5.499334 -7.099324 0.300000 +v 5.470363 -7.194830 0.300000 +v 5.423315 -7.282850 0.300000 +v 5.360000 -7.360000 0.300000 +v 5.282850 -7.423315 0.300000 +v 5.194830 -7.470363 0.300000 +v 5.099324 -7.499334 0.300000 +v 5.000000 -7.509117 0.300000 +v 4.900676 -7.499334 0.300000 +v 4.805169 -7.470363 0.300000 +v 4.717150 -7.423315 0.300000 +v 4.640000 -7.360000 0.300000 +v 4.576684 -7.282850 0.300000 +v 4.529637 -7.194830 0.300000 +v 4.500666 -7.099323 0.300000 +v 4.490883 -7.000000 0.300000 +v 4.500666 -6.900676 0.300000 +v 4.529637 -6.805169 0.300000 +v 4.576685 -6.717149 0.300000 +v 4.640000 -6.639999 0.300000 +v 4.717150 -6.576684 0.300000 +v 4.805170 -6.529637 0.300000 +v 4.900677 -6.500666 0.300000 +v 5.000001 -6.490883 0.300000 +v 5.099325 -6.500666 0.300000 +v 5.194831 -6.529638 0.300000 +v 5.282851 -6.576685 0.300000 +v 5.339421 -6.492023 0.400000 +v 5.233798 -6.435565 0.400000 +v 5.119190 -6.400799 0.400000 +v 5.000001 -6.389060 0.400000 +v 4.880812 -6.400798 0.400000 +v 4.766204 -6.435565 0.400000 +v 4.660581 -6.492021 0.400000 +v 4.568000 -6.567999 0.400000 +v 4.492022 -6.660579 0.400000 +v 4.435565 -6.766202 0.400000 +v 4.400799 -6.880811 0.400000 +v 4.389060 -7.000000 0.400000 +v 4.400799 -7.119188 0.400000 +v 4.435565 -7.233796 0.400000 +v 4.492022 -7.339420 0.400000 +v 4.568000 -7.432000 0.400000 +v 4.660580 -7.507978 0.400000 +v 4.766203 -7.564435 0.400000 +v 4.880811 -7.599201 0.400000 +v 5.000000 -7.610940 0.400000 +v 5.119188 -7.599201 0.400000 +v 5.233797 -7.564435 0.400000 +v 5.339420 -7.507978 0.400000 +v 5.432000 -7.432000 0.400000 +v 5.507978 -7.339420 0.400000 +v 5.564435 -7.233797 0.400000 +v 5.599201 -7.119188 0.400000 +v 5.610940 -7.000000 0.400000 +v 5.599201 -6.880811 0.400000 +v 5.564435 -6.766203 0.400000 +v 5.507978 -6.660580 0.400000 +v 5.432000 -6.568000 0.400000 +v 5.360000 -6.640000 0.500000 +v 4.640000 -7.360000 0.500000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.000000 -7.000000 0.000000 +v 5.183636 -6.540046 0.527802 +v 5.183636 -7.459509 0.527802 +v 4.817259 -7.459509 0.527802 +v 4.817259 -6.540046 0.527802 +v 5.000448 -7.459509 0.527802 +v 5.183636 -6.999778 0.527802 +v 5.000448 -6.540046 0.527802 +v 4.817259 -6.999777 0.527802 +v 4.908854 -7.459509 0.527802 +v 5.092042 -7.459509 0.527802 +v 5.183636 -6.769912 0.527802 +v 5.183636 -7.229643 0.527802 +v 4.908854 -6.540046 0.527802 +v 5.092042 -6.540046 0.527802 +v 4.817259 -6.769912 0.527802 +v 4.817259 -7.229643 0.527802 +v 4.817259 -6.654979 0.527802 +v 4.817259 -6.884845 0.527802 +v 4.863057 -6.540046 0.527802 +v 4.954651 -6.540046 0.527802 +v 5.137839 -6.540046 0.527802 +v 5.046245 -6.540046 0.527802 +v 5.183636 -6.654979 0.527802 +v 5.183636 -6.884845 0.527802 +v 5.183636 -7.344576 0.527802 +v 5.183636 -7.114710 0.527802 +v 5.046245 -7.459509 0.527802 +v 5.137839 -7.459509 0.527802 +v 4.954651 -7.459509 0.527802 +v 4.863057 -7.459509 0.527802 +v 4.817259 -7.114710 0.527802 +v 4.817259 -7.344576 0.527802 +v 4.793812 -7.330590 0.627802 +v 4.793812 -7.077738 0.627802 +v 4.845471 -7.457016 0.627802 +v 4.948789 -7.457016 0.627802 +v 5.155425 -7.457016 0.627802 +v 5.052107 -7.457016 0.627802 +v 5.207084 -7.077738 0.627802 +v 5.207084 -7.330590 0.627802 +v 5.207084 -6.824885 0.627802 +v 5.207084 -6.572033 0.627802 +v 5.052107 -6.445607 0.627802 +v 5.155425 -6.445607 0.627802 +v 4.948789 -6.445607 0.627802 +v 4.845471 -6.445607 0.627802 +v 4.793812 -6.824885 0.627802 +v 4.793812 -6.572033 0.627802 +v 4.793812 -7.204164 0.627802 +v 4.793812 -6.698459 0.627802 +v 5.103766 -6.445607 0.627802 +v 4.897130 -6.445607 0.627802 +v 5.207084 -7.204164 0.627802 +v 5.207084 -6.698459 0.627802 +v 5.103766 -7.457016 0.627802 +v 4.897130 -7.457016 0.627802 +v 4.793812 -6.951312 0.627802 +v 5.000448 -6.445607 0.627802 +v 5.207084 -6.951312 0.627802 +v 5.000448 -7.457016 0.627802 +v 4.793812 -6.445607 0.627802 +v 4.793812 -7.457016 0.627802 +v 5.207084 -7.457016 0.627802 +v 5.207084 -6.445607 0.627802 +v 5.250720 -6.333743 0.727803 +v 5.250720 -7.485795 0.727803 +v 4.750176 -7.485795 0.727803 +v 4.750176 -6.333743 0.727803 +v 5.000448 -7.485795 0.727803 +v 5.250720 -6.909769 0.727803 +v 5.000448 -6.333743 0.727803 +v 4.750176 -6.909769 0.727803 +v 4.875312 -7.485795 0.727803 +v 5.125584 -7.485795 0.727803 +v 5.250720 -6.621756 0.727803 +v 5.250720 -7.197783 0.727803 +v 4.875312 -6.333743 0.727803 +v 5.125584 -6.333743 0.727803 +v 4.750176 -6.621756 0.727803 +v 4.750176 -7.197783 0.727803 +v 4.750176 -6.477749 0.727803 +v 4.750176 -6.765762 0.727803 +v 4.812744 -6.333743 0.727803 +v 4.937880 -6.333743 0.727803 +v 5.188151 -6.333743 0.727803 +v 5.063016 -6.333743 0.727803 +v 5.250720 -6.477749 0.727803 +v 5.250720 -6.765763 0.727803 +v 5.250720 -7.341789 0.727803 +v 5.250720 -7.053776 0.727803 +v 5.063016 -7.485795 0.727803 +v 5.188151 -7.485795 0.727803 +v 4.937880 -7.485795 0.727803 +v 4.812744 -7.485795 0.727803 +v 4.750176 -7.053776 0.727803 +v 4.750176 -7.341789 0.727803 +v 4.736209 -7.367824 0.827803 +v 4.736209 -7.108612 0.827803 +v 4.802269 -7.497430 0.827803 +v 4.934388 -7.497430 0.827803 +v 5.198627 -7.497430 0.827803 +v 5.066507 -7.497430 0.827803 +v 5.264686 -7.108613 0.827803 +v 5.264686 -7.367825 0.827803 +v 5.264686 -6.849401 0.827803 +v 5.264686 -6.590189 0.827803 +v 5.066507 -6.460583 0.827803 +v 5.198627 -6.460583 0.827803 +v 4.934388 -6.460583 0.827803 +v 4.802269 -6.460583 0.827803 +v 4.736210 -6.849401 0.827803 +v 4.736210 -6.590189 0.827803 +v 4.736209 -7.238218 0.827803 +v 4.736210 -6.719794 0.827803 +v 5.132567 -6.460583 0.827803 +v 4.868329 -6.460583 0.827803 +v 5.264686 -7.238218 0.827803 +v 5.264686 -6.719794 0.827803 +v 5.132567 -7.497430 0.827803 +v 4.868329 -7.497430 0.827803 +v 4.736210 -6.979006 0.827803 +v 5.000448 -6.460583 0.827803 +v 5.264686 -6.979006 0.827803 +v 5.000448 -7.497430 0.827803 +v 4.736210 -6.460583 0.827803 +v 4.736209 -7.497430 0.827803 +v 5.264686 -7.497430 0.827803 +v 5.264686 -6.460583 0.827803 +v 5.250861 -6.511444 0.927803 +v 5.250861 -7.513036 0.927803 +v 4.750035 -7.513036 0.927803 +v 4.750035 -6.511444 0.927803 +v 5.000448 -7.513036 0.927803 +v 5.250861 -7.012240 0.927803 +v 5.000448 -6.511444 0.927803 +v 4.750035 -7.012240 0.927803 +v 4.875241 -7.513036 0.927803 +v 5.125654 -7.513036 0.927803 +v 5.250861 -6.761842 0.927803 +v 5.250861 -7.262638 0.927803 +v 4.875241 -6.511444 0.927803 +v 5.125654 -6.511444 0.927803 +v 4.750035 -6.761842 0.927803 +v 4.750035 -7.262638 0.927803 +v 4.750035 -6.636642 0.927803 +v 4.750035 -6.887041 0.927803 +v 4.812638 -6.511444 0.927803 +v 4.937845 -6.511444 0.927803 +v 5.188258 -6.511444 0.927803 +v 5.063051 -6.511444 0.927803 +v 5.250861 -6.636642 0.927803 +v 5.250861 -6.887041 0.927803 +v 5.250861 -7.387837 0.927803 +v 5.250861 -7.137439 0.927803 +v 5.063051 -7.513036 0.927803 +v 5.188258 -7.513036 0.927803 +v 4.937845 -7.513036 0.927803 +v 4.812638 -7.513036 0.927803 +v 4.750035 -7.137439 0.927803 +v 4.750035 -7.387837 0.927803 +v 4.768347 -7.411865 1.027803 +v 4.768347 -7.167604 1.027803 +v 4.826373 -7.533997 1.027803 +v 4.942423 -7.533997 1.027803 +v 5.174523 -7.533997 1.027803 +v 5.058473 -7.533997 1.027803 +v 5.232548 -7.167604 1.027803 +v 5.232548 -7.411866 1.027803 +v 5.232548 -6.923343 1.027803 +v 5.232548 -6.679081 1.027803 +v 5.058473 -6.556951 1.027803 +v 5.174523 -6.556951 1.027803 +v 4.942423 -6.556951 1.027803 +v 4.826373 -6.556951 1.027803 +v 4.768347 -6.923342 1.027803 +v 4.768347 -6.679081 1.027803 +v 4.768347 -7.289735 1.027803 +v 4.768347 -6.801212 1.027803 +v 5.116498 -6.556951 1.027803 +v 4.884398 -6.556951 1.027803 +v 5.232548 -7.289735 1.027803 +v 5.232548 -6.801212 1.027803 +v 5.116498 -7.533997 1.027803 +v 4.884398 -7.533997 1.027803 +v 4.768347 -7.045473 1.027803 +v 5.000448 -6.556951 1.027803 +v 5.232548 -7.045474 1.027803 +v 5.000448 -7.533997 1.027803 +v 4.768347 -6.556950 1.027803 +v 4.768347 -7.533997 1.027803 +v 5.232548 -7.533997 1.027803 +v 5.232548 -6.556951 1.027803 +v 5.211981 -6.610044 1.127803 +v 5.211981 -7.541831 1.127803 +v 4.788915 -7.541831 1.127803 +v 4.788915 -6.610044 1.127803 +v 5.000448 -7.541831 1.127803 +v 5.211981 -7.075937 1.127803 +v 5.000448 -6.610044 1.127803 +v 4.788915 -7.075937 1.127803 +v 4.894681 -7.541831 1.127803 +v 5.106215 -7.541831 1.127803 +v 5.211981 -6.842990 1.127803 +v 5.211981 -7.308884 1.127803 +v 4.894681 -6.610044 1.127803 +v 5.106215 -6.610044 1.127803 +v 4.788915 -6.842990 1.127803 +v 4.788915 -7.308884 1.127803 +v 4.788915 -6.726517 1.127803 +v 4.788915 -6.959464 1.127803 +v 4.841798 -6.610044 1.127803 +v 4.947565 -6.610044 1.127803 +v 5.159098 -6.610044 1.127803 +v 5.053331 -6.610044 1.127803 +v 5.211981 -6.726517 1.127803 +v 5.211981 -6.959464 1.127803 +v 5.211981 -7.425357 1.127803 +v 5.211981 -7.192410 1.127803 +v 5.053331 -7.541831 1.127803 +v 5.159098 -7.541831 1.127803 +v 4.947565 -7.541831 1.127803 +v 4.841798 -7.541831 1.127803 +v 4.788915 -7.192410 1.127803 +v 4.788915 -7.425357 1.127803 +v 4.811215 -7.425329 1.227803 +v 4.811215 -7.205607 1.227803 +v 4.858523 -7.535190 1.227803 +v 4.953140 -7.535190 1.227803 +v 5.142373 -7.535190 1.227803 +v 5.047756 -7.535190 1.227803 +v 5.189681 -7.205607 1.227803 +v 5.189681 -7.425329 1.227803 +v 5.189681 -6.985885 1.227803 +v 5.189681 -6.766163 1.227803 +v 5.047756 -6.656302 1.227803 +v 5.142373 -6.656302 1.227803 +v 4.953140 -6.656302 1.227803 +v 4.858523 -6.656302 1.227803 +v 4.811215 -6.985885 1.227803 +v 4.811215 -6.766163 1.227803 +v 4.811215 -7.315468 1.227803 +v 4.811215 -6.876024 1.227803 +v 5.095065 -6.656302 1.227803 +v 4.905831 -6.656302 1.227803 +v 5.189681 -7.315468 1.227803 +v 5.189681 -6.876024 1.227803 +v 5.095064 -7.535190 1.227803 +v 4.905831 -7.535190 1.227803 +v 4.811215 -7.095746 1.227803 +v 5.000448 -6.656302 1.227803 +v 5.189681 -7.095746 1.227803 +v 5.000448 -7.535190 1.227803 +v 4.811215 -6.656302 1.227803 +v 4.811215 -7.535190 1.227803 +v 5.189681 -7.535190 1.227803 +v 5.189681 -6.656302 1.227803 +v 5.166361 -6.719011 1.327803 +v 5.166361 -7.520361 1.327803 +v 4.834535 -7.520361 1.327803 +v 4.834535 -6.719011 1.327803 +v 5.000448 -7.520361 1.327803 +v 5.166361 -7.119686 1.327803 +v 5.000448 -6.719011 1.327803 +v 4.834535 -7.119686 1.327803 +v 4.917491 -7.520361 1.327803 +v 5.083404 -7.520361 1.327803 +v 5.166361 -6.919349 1.327803 +v 5.166361 -7.320024 1.327803 +v 4.917491 -6.719011 1.327803 +v 5.083405 -6.719011 1.327803 +v 4.834535 -6.919349 1.327803 +v 4.834535 -7.320024 1.327803 +v 4.834535 -6.819180 1.327803 +v 4.834535 -7.019517 1.327803 +v 4.876013 -6.719011 1.327803 +v 4.958970 -6.719011 1.327803 +v 5.124883 -6.719011 1.327803 +v 5.041926 -6.719011 1.327803 +v 5.166361 -6.819180 1.327803 +v 5.166361 -7.019517 1.327803 +v 5.166361 -7.420193 1.327803 +v 5.166361 -7.219855 1.327803 +v 5.041926 -7.520361 1.327803 +v 5.124883 -7.520361 1.327803 +v 4.958970 -7.520361 1.327803 +v 4.876013 -7.520361 1.327803 +v 4.834535 -7.219855 1.327803 +v 4.834535 -7.420193 1.327803 +v 4.849163 -7.407565 1.427803 +v 4.849163 -7.215646 1.427803 +v 4.886984 -7.503525 1.427803 +v 4.962627 -7.503525 1.427803 +v 5.113911 -7.503525 1.427803 +v 5.038269 -7.503525 1.427803 +v 5.151732 -7.215646 1.427803 +v 5.151732 -7.407565 1.427803 +v 5.151732 -7.023726 1.427803 +v 5.151732 -6.831807 1.427803 +v 5.038269 -6.735847 1.427803 +v 5.113911 -6.735847 1.427803 +v 4.962627 -6.735847 1.427803 +v 4.886984 -6.735847 1.427803 +v 4.849163 -7.023726 1.427803 +v 4.849163 -6.831807 1.427803 +v 4.849163 -7.311605 1.427803 +v 4.849163 -6.927767 1.427803 +v 5.076090 -6.735847 1.427803 +v 4.924806 -6.735847 1.427803 +v 5.151732 -7.311605 1.427803 +v 5.151732 -6.927767 1.427803 +v 5.076090 -7.503525 1.427803 +v 4.924806 -7.503525 1.427803 +v 4.849163 -7.119686 1.427803 +v 5.000448 -6.735847 1.427803 +v 5.151732 -7.119686 1.427803 +v 5.000448 -7.503525 1.427803 +v 4.849164 -6.735847 1.427803 +v 4.849163 -7.503525 1.427803 +v 5.151732 -7.503525 1.427803 +v 5.151732 -6.735847 1.427803 +v 5.151732 -6.755233 1.527803 +v 5.151732 -7.484139 1.527803 +v 4.849163 -7.484139 1.527803 +v 4.849164 -6.755233 1.527803 +v 5.000448 -7.583217 1.430341 +v 5.151732 -7.119686 1.527803 +v 5.000448 -6.755233 1.527803 +v 4.849163 -7.119686 1.527803 +v 4.924806 -7.484139 1.527803 +v 5.076090 -7.484139 1.527803 +v 5.151732 -6.937459 1.527803 +v 5.151732 -7.301913 1.527803 +v 4.924806 -6.755233 1.527803 +v 5.076090 -6.755233 1.527803 +v 4.849163 -6.937459 1.527803 +v 4.849163 -7.301913 1.527803 +v 4.849163 -6.846346 1.527803 +v 4.849163 -7.028573 1.527803 +v 4.886984 -6.755233 1.527803 +v 4.962627 -6.755233 1.527803 +v 5.113911 -6.755233 1.527803 +v 5.038269 -6.755233 1.527803 +v 5.151732 -6.846346 1.527803 +v 5.151732 -7.028573 1.527803 +v 5.151732 -7.393026 1.527803 +v 5.151732 -7.210800 1.527803 +v 5.038269 -7.484139 1.527803 +v 5.113911 -7.484139 1.527803 +v 4.962627 -7.484139 1.527803 +v 4.886984 -7.484139 1.527803 +v 4.849163 -7.210800 1.527803 +v 4.849163 -7.393026 1.527803 +v 4.849163 -7.380989 1.627803 +v 4.849163 -7.206787 1.627803 +v 4.886984 -7.468090 1.627803 +v 4.962627 -7.468090 1.627803 +v 5.113911 -7.468090 1.627803 +v 5.038269 -7.468090 1.627803 +v 5.151732 -7.206787 1.627803 +v 5.151732 -7.380989 1.627803 +v 5.151732 -7.032585 1.627803 +v 5.151732 -6.858383 1.627803 +v 5.038269 -6.771282 1.627803 +v 5.113911 -6.771282 1.627803 +v 4.962627 -6.771282 1.627803 +v 4.886984 -6.771282 1.627803 +v 4.849163 -7.032585 1.627803 +v 4.849163 -6.858383 1.627803 +v 4.849163 -7.293888 1.627803 +v 4.849163 -6.945484 1.627803 +v 5.076090 -6.771282 1.627803 +v 4.924806 -6.771282 1.627803 +v 5.151732 -7.293888 1.627803 +v 5.151732 -6.945484 1.627803 +v 5.076090 -7.468090 1.627803 +v 4.924806 -7.468090 1.627803 +v 4.849163 -7.119686 1.627803 +v 5.000448 -6.771282 1.627803 +v 5.151732 -7.119686 1.627803 +v 5.000448 -7.563978 1.550220 +v 4.849164 -6.771282 1.627803 +v 4.849163 -7.468090 1.627803 +v 5.151732 -7.468090 1.627803 +v 5.151732 -6.771282 1.627803 +v 5.151732 -6.755233 1.727803 +v 5.151732 -7.484139 1.727803 +v 4.849163 -7.484139 1.727803 +v 4.849164 -6.755233 1.727803 +v 5.000448 -7.583217 1.670099 +v 5.151732 -7.119686 1.727803 +v 5.000448 -6.755233 1.727803 +v 4.849163 -7.119686 1.727803 +v 4.924806 -7.484139 1.727803 +v 5.076090 -7.484139 1.727803 +v 5.151732 -6.937459 1.727803 +v 5.151732 -7.301913 1.727803 +v 4.924806 -6.755233 1.727803 +v 5.076090 -6.755233 1.727803 +v 4.849163 -6.937459 1.727803 +v 4.849163 -7.301913 1.727803 +v 4.849163 -6.846346 1.727803 +v 4.849163 -7.028573 1.727803 +v 4.886984 -6.755233 1.727803 +v 4.962627 -6.755233 1.727803 +v 5.113911 -6.755233 1.727803 +v 5.038269 -6.755233 1.727803 +v 5.151732 -6.846346 1.727803 +v 5.151732 -7.028573 1.727803 +v 5.151732 -7.393026 1.727803 +v 5.151732 -7.210800 1.727803 +v 5.038269 -7.484139 1.727803 +v 5.113911 -7.484139 1.727803 +v 4.962627 -7.484139 1.727803 +v 4.886984 -7.484139 1.727803 +v 4.849163 -7.210800 1.727803 +v 4.849163 -7.393026 1.727803 +v 4.849163 -7.410970 1.890069 +v 4.849163 -7.233874 1.849729 +v 4.886984 -7.499518 1.910239 +v 4.962627 -7.499518 1.910239 +v 5.113911 -7.499518 1.910239 +v 5.038269 -7.499518 1.910239 +v 5.151732 -7.233874 1.849729 +v 5.151732 -7.410970 1.890069 +v 5.151732 -7.056777 1.809388 +v 5.151732 -6.879681 1.769047 +v 5.038269 -6.759117 1.755126 +v 5.113911 -6.759117 1.755126 +v 4.962627 -6.759117 1.755126 +v 4.886984 -6.759117 1.755126 +v 4.849163 -7.056777 1.809388 +v 4.849163 -6.879681 1.769047 +v 4.849163 -7.322422 1.869899 +v 4.849163 -6.968229 1.789218 +v 5.076090 -6.759117 1.755126 +v 4.924806 -6.759117 1.755126 +v 5.151732 -7.322422 1.869899 +v 5.151732 -6.968229 1.789218 +v 5.076090 -7.499518 1.910239 +v 4.924806 -7.499518 1.910239 +v 4.849163 -7.145326 1.829558 +v 5.000448 -6.759117 1.755126 +v 5.151732 -7.145326 1.829558 +v 5.000448 -7.601653 1.888802 +v 4.849164 -6.759117 1.755126 +v 4.849163 -7.499518 1.910239 +v 5.151732 -7.499518 1.910239 +v 5.151732 -6.759117 1.755126 +v 5.151732 -6.750661 1.777915 +v 5.151732 -7.465883 2.083405 +v 4.849163 -7.465883 2.083405 +v 4.849164 -6.750660 1.777915 +v 5.000448 -7.561332 2.096390 +v 5.151732 -7.128751 1.930169 +v 5.000448 -6.750661 1.777915 +v 4.849163 -7.128750 1.930169 +v 4.924806 -7.465883 2.083405 +v 5.076090 -7.465883 2.083405 +v 5.151732 -6.960184 1.853551 +v 5.151732 -7.297317 2.006787 +v 4.924806 -6.750661 1.777915 +v 5.076090 -6.750661 1.777915 +v 4.849163 -6.960184 1.853551 +v 4.849163 -7.297317 2.006787 +v 4.849163 -6.875901 1.815242 +v 4.849163 -7.044467 1.891860 +v 4.886984 -6.750661 1.777915 +v 4.962627 -6.750661 1.777915 +v 5.113911 -6.750661 1.777915 +v 5.038269 -6.750661 1.777915 +v 5.151732 -6.875901 1.815242 +v 5.151732 -7.044467 1.891860 +v 5.151732 -7.381600 2.045096 +v 5.151732 -7.213034 1.968478 +v 5.038269 -7.465883 2.083405 +v 5.113911 -7.465883 2.083405 +v 4.962627 -7.465883 2.083405 +v 4.886984 -7.465883 2.083405 +v 4.849163 -7.213034 1.968478 +v 4.849163 -7.381600 2.045096 +v 4.849163 -7.321197 2.181381 +v 4.849163 -7.165192 2.073043 +v 4.886984 -7.399199 2.235551 +v 4.962627 -7.399199 2.235551 +v 5.113911 -7.399199 2.235551 +v 5.038269 -7.399199 2.235551 +v 5.151732 -7.165192 2.073043 +v 5.151732 -7.321197 2.181382 +v 5.151732 -7.009188 1.964704 +v 5.151732 -6.853183 1.856364 +v 5.038269 -6.737184 1.798265 +v 5.113911 -6.737184 1.798265 +v 4.962627 -6.737184 1.798265 +v 4.886984 -6.737184 1.798265 +v 4.849163 -7.009187 1.964704 +v 4.849163 -6.853182 1.856364 +v 4.849163 -7.243195 2.127212 +v 4.849163 -6.931185 1.910534 +v 5.076090 -6.737184 1.798265 +v 4.924806 -6.737184 1.798265 +v 5.151732 -7.243195 2.127212 +v 5.151732 -6.931185 1.910534 +v 5.076090 -7.399199 2.235551 +v 4.924806 -7.399199 2.235551 +v 4.849163 -7.087190 2.018873 +v 5.000448 -6.737184 1.798265 +v 5.151732 -7.087190 2.018873 +v 5.000448 -7.481392 2.278782 +v 4.849164 -6.737184 1.798265 +v 4.849163 -7.399199 2.235551 +v 5.151732 -7.399199 2.235551 +v 5.151732 -6.737184 1.798265 +v 5.151732 -6.727150 1.812189 +v 5.151732 -7.302564 2.415045 +v 4.849163 -7.302564 2.415045 +v 4.849164 -6.727150 1.812189 +v 5.000448 -7.365547 2.493956 +v 5.151732 -7.039094 2.119839 +v 5.000448 -6.727150 1.812189 +v 4.849163 -7.039094 2.119839 +v 4.924806 -7.302564 2.415045 +v 5.076090 -7.302564 2.415045 +v 5.151732 -6.907359 1.972237 +v 5.151732 -7.170829 2.267442 +v 4.924806 -6.727150 1.812189 +v 5.076090 -6.727150 1.812189 +v 4.849163 -6.907359 1.972237 +v 4.849163 -7.170829 2.267442 +v 4.849163 -6.841492 1.898435 +v 4.849163 -6.973227 2.046038 +v 4.886984 -6.727150 1.812189 +v 4.962627 -6.727150 1.812189 +v 5.113911 -6.727150 1.812189 +v 5.038269 -6.727150 1.812189 +v 5.151732 -6.841492 1.898435 +v 5.151732 -6.973227 2.046038 +v 5.151732 -7.236697 2.341244 +v 5.151732 -7.104962 2.193641 +v 5.038269 -7.302564 2.415045 +v 5.113911 -7.302564 2.415045 +v 4.962627 -7.302564 2.415045 +v 4.886984 -7.302564 2.415045 +v 4.849163 -7.104962 2.193641 +v 4.849163 -7.236697 2.341243 +v 4.849163 -7.046010 2.393138 +v 4.849163 -6.961240 2.231773 +v 4.886984 -7.088395 2.473820 +v 4.962627 -7.088395 2.473820 +v 5.113911 -7.088394 2.473821 +v 5.038269 -7.088394 2.473821 +v 5.151732 -6.961240 2.231773 +v 5.151732 -7.046010 2.393138 +v 5.151732 -6.876471 2.070408 +v 5.151732 -6.791701 1.909043 +v 5.038269 -6.712631 1.814934 +v 5.113911 -6.712631 1.814934 +v 4.962627 -6.712631 1.814934 +v 4.886984 -6.712631 1.814934 +v 4.849163 -6.876471 2.070408 +v 4.849163 -6.791701 1.909043 +v 4.849163 -7.003625 2.312456 +v 4.849163 -6.834086 1.989726 +v 5.076090 -6.712631 1.814934 +v 4.924806 -6.712631 1.814934 +v 5.151732 -7.003625 2.312456 +v 5.151732 -6.834086 1.989726 +v 5.076090 -7.088394 2.473821 +v 4.924806 -7.088395 2.473820 +v 4.849163 -6.918856 2.151091 +v 5.000448 -6.712631 1.814934 +v 5.151732 -6.918856 2.151091 +v 5.000448 -7.108803 2.564416 +v 4.849163 -6.712631 1.814934 +v 4.849163 -7.088395 2.473820 +v 5.151732 -7.088394 2.473821 +v 5.151732 -6.712631 1.814934 +v 5.151732 -6.690492 1.815488 +v 5.151732 -6.946949 2.508360 +v 4.849163 -6.946949 2.508359 +v 4.849164 -6.690492 1.815488 +v 5.000448 -6.939239 2.605821 +v 5.151732 -6.835494 2.151091 +v 5.000448 -6.690492 1.815488 +v 4.849163 -6.835494 2.151091 +v 4.924806 -6.946949 2.508359 +v 5.076090 -6.946949 2.508360 +v 5.151732 -6.779766 1.972457 +v 5.151732 -6.891221 2.329726 +v 4.924806 -6.690492 1.815488 +v 5.076090 -6.690492 1.815488 +v 4.849163 -6.779766 1.972457 +v 4.849163 -6.891221 2.329725 +v 4.849164 -6.744042 1.903773 +v 4.849163 -6.807630 2.061774 +v 4.886984 -6.690492 1.815488 +v 4.962627 -6.690492 1.815488 +v 5.113911 -6.690492 1.815488 +v 5.038269 -6.690492 1.815488 +v 5.151732 -6.744042 1.903773 +v 5.151732 -6.807630 2.061774 +v 5.151732 -6.919085 2.419043 +v 5.151732 -6.863357 2.240408 +v 5.038269 -6.946949 2.508360 +v 5.113911 -6.946949 2.508360 +v 4.962627 -6.946949 2.508359 +v 4.886984 -6.946949 2.508359 +v 4.849163 -6.863357 2.240408 +v 4.849163 -6.919085 2.419042 +v 4.849163 -6.769279 2.399413 +v 4.849163 -6.753209 2.239429 +v 4.886984 -6.777314 2.479404 +v 4.962627 -6.777314 2.479404 +v 5.113911 -6.777314 2.479405 +v 5.038269 -6.777314 2.479405 +v 5.151732 -6.753209 2.239429 +v 5.151732 -6.769279 2.399413 +v 5.151732 -6.737139 2.079446 +v 5.151732 -6.721069 1.919462 +v 5.038269 -6.665230 1.804334 +v 5.113911 -6.665230 1.804334 +v 4.962627 -6.665230 1.804334 +v 4.886984 -6.665230 1.804334 +v 4.849163 -6.737139 2.079446 +v 4.849163 -6.721068 1.919462 +v 4.849163 -6.761244 2.319421 +v 4.849163 -6.729104 1.999454 +v 5.076090 -6.665230 1.804334 +v 4.924806 -6.665230 1.804334 +v 5.151732 -6.761244 2.319421 +v 5.151732 -6.729104 1.999454 +v 5.076090 -6.777314 2.479405 +v 4.924806 -6.777314 2.479404 +v 4.849163 -6.745174 2.159438 +v 5.000448 -6.665230 1.804334 +v 5.151732 -6.745174 2.159438 +v 5.000448 -6.735884 2.571110 +v 4.849164 -6.665231 1.804334 +v 4.849163 -6.777314 2.479404 +v 5.151732 -6.777314 2.479405 +v 5.151732 -6.665230 1.804334 +v 5.151732 -6.653955 1.782139 +v 5.151732 -6.666171 2.453959 +v 4.849164 -6.666171 2.453959 +v 4.849164 -6.653955 1.782139 +v 5.000448 -6.602646 2.540607 +v 5.151732 -6.664441 2.168693 +v 5.000448 -6.653955 1.782139 +v 4.849164 -6.664441 2.168693 +v 4.924806 -6.666171 2.453959 +v 5.076090 -6.666171 2.453959 +v 5.151732 -6.663575 2.009366 +v 5.151732 -6.665306 2.328019 +v 4.924806 -6.653955 1.782139 +v 5.076090 -6.653955 1.782139 +v 4.849164 -6.663575 2.009366 +v 4.849164 -6.665306 2.328019 +v 4.849164 -6.663143 1.929702 +v 4.849164 -6.664008 2.089029 +v 4.886984 -6.653955 1.782139 +v 4.962627 -6.653955 1.782139 +v 5.113911 -6.653955 1.782139 +v 5.038269 -6.653955 1.782139 +v 5.151732 -6.663143 1.929702 +v 5.151732 -6.664008 2.089029 +v 5.151732 -6.665738 2.407683 +v 5.151732 -6.664873 2.248356 +v 5.038269 -6.666171 2.453959 +v 5.113912 -6.666171 2.453959 +v 4.962627 -6.666171 2.453959 +v 4.886984 -6.666171 2.453959 +v 4.849164 -6.664873 2.248356 +v 4.849164 -6.665739 2.407682 +v 4.849164 -6.551487 2.346452 +v 4.879420 -6.550622 2.187125 +v 4.886984 -6.551919 2.392729 +v 4.962627 -6.551919 2.392729 +v 5.113911 -6.551919 2.392729 +v 5.038269 -6.551919 2.392729 +v 5.121476 -6.550622 2.187125 +v 5.151732 -6.551486 2.346452 +v 5.151732 -6.549757 2.027799 +v 5.151732 -6.548891 1.868472 +v 5.038269 -6.636632 1.715996 +v 5.113911 -6.636632 1.715996 +v 4.962627 -6.636632 1.715996 +v 4.886984 -6.636632 1.715996 +v 4.849164 -6.549756 2.027799 +v 4.849164 -6.548891 1.868472 +v 4.849164 -6.551054 2.266788 +v 4.849164 -6.549324 1.948135 +v 5.076090 -6.636632 1.715996 +v 4.924806 -6.636632 1.715996 +v 5.151732 -6.551054 2.266789 +v 5.151732 -6.549324 1.948135 +v 5.076090 -6.551919 2.392729 +v 4.924806 -6.551919 2.392729 +v 4.879420 -6.550189 2.107462 +v 5.000448 -6.636632 1.715996 +v 5.121476 -6.550189 2.107462 +v 5.000448 -6.465683 2.467205 +v 4.849164 -6.636633 1.715996 +v 4.849163 -6.551919 2.392729 +v 5.151732 -6.551919 2.392729 +v 5.151732 -6.636632 1.715996 +v 5.151732 -6.559735 1.596941 +v 5.151732 -6.499763 2.337735 +v 4.849163 -6.499764 2.337735 +v 4.849163 -6.559736 1.596941 +v 5.000448 -6.403160 2.401279 +v 5.121476 -6.498033 2.052469 +v 5.000448 -6.559735 1.596941 +v 4.879420 -6.498033 2.052469 +v 4.924806 -6.499764 2.337735 +v 5.076090 -6.499763 2.337735 +v 5.151732 -6.497168 1.893142 +v 5.151732 -6.498899 2.211795 +v 4.924806 -6.559735 1.596941 +v 5.076090 -6.559735 1.596941 +v 4.849163 -6.497168 1.893142 +v 4.849163 -6.498899 2.211795 +v 4.849163 -6.499451 1.720899 +v 4.849163 -6.497601 1.972805 +v 4.886984 -6.559735 1.596941 +v 4.962626 -6.559735 1.596941 +v 5.113911 -6.559735 1.596941 +v 5.038269 -6.559735 1.596941 +v 5.151732 -6.499451 1.720899 +v 5.151732 -6.497601 1.972805 +v 5.151732 -6.499331 2.291458 +v 5.121476 -6.498466 2.132131 +v 5.038269 -6.499763 2.337735 +v 5.113911 -6.499763 2.337735 +v 4.962626 -6.499764 2.337735 +v 4.886984 -6.499764 2.337735 +v 4.879420 -6.498466 2.132131 +v 4.849163 -6.499331 2.291458 +v 4.849163 -6.471511 2.254579 +v 4.849163 -6.470645 2.095253 +v 4.886984 -6.471943 2.300856 +v 4.962626 -6.471943 2.300856 +v 5.113911 -6.471943 2.300856 +v 5.038269 -6.471943 2.300856 +v 5.151732 -6.470645 2.095253 +v 5.151732 -6.471510 2.254580 +v 5.151732 -6.469780 1.935926 +v 5.151732 -6.415841 1.763082 +v 5.038269 -6.521589 1.543065 +v 5.113911 -6.521589 1.543065 +v 4.962626 -6.521589 1.543065 +v 4.886984 -6.521589 1.543065 +v 4.849163 -6.469780 1.935926 +v 4.849163 -6.415841 1.763082 +v 4.849163 -6.471078 2.174916 +v 4.849163 -6.423092 1.788845 +v 5.076090 -6.521589 1.543065 +v 4.924805 -6.521589 1.543065 +v 5.151732 -6.471078 2.174916 +v 5.151732 -6.423092 1.788845 +v 5.076090 -6.471943 2.300856 +v 4.924805 -6.471943 2.300856 +v 4.849163 -6.470212 2.015589 +v 5.000448 -6.521589 1.543065 +v 5.151732 -6.470212 2.015589 +v 5.000448 -6.369808 2.357069 +v 4.849163 -6.521590 1.543065 +v 4.849163 -6.471943 2.300856 +v 5.151732 -6.471943 2.300856 +v 5.151732 -6.521589 1.543065 +v 5.151732 -6.493333 1.498510 +v 5.151732 -6.449376 2.269498 +v 4.849163 -6.449376 2.269498 +v 4.849163 -6.493333 1.498510 +v 5.000448 -6.449376 2.269498 +v 5.151732 -6.447645 1.984232 +v 5.000447 -6.493333 1.498510 +v 4.849163 -6.447645 1.984232 +v 4.924805 -6.449376 2.269498 +v 5.076090 -6.449376 2.269498 +v 5.151732 -6.376426 1.751812 +v 5.151732 -6.448510 2.143558 +v 4.924805 -6.493333 1.498510 +v 5.076090 -6.493333 1.498510 +v 4.849163 -6.376426 1.751812 +v 4.849163 -6.448510 2.143558 +v 4.849163 -6.406904 1.670217 +v 4.849163 -6.447213 1.904568 +v 4.886984 -6.493333 1.498510 +v 4.962626 -6.493333 1.498510 +v 5.113911 -6.493333 1.498510 +v 5.038269 -6.493333 1.498510 +v 5.151732 -6.406905 1.670217 +v 5.151732 -6.447213 1.904568 +v 5.151732 -6.448943 2.223222 +v 5.151732 -6.448078 2.063895 +v 5.038269 -6.449376 2.269498 +v 5.113911 -6.449376 2.269498 +v 4.962626 -6.449376 2.269498 +v 4.886984 -6.449376 2.269498 +v 4.849163 -6.448078 2.063895 +v 4.849163 -6.448943 2.223221 +v 4.849163 -6.423130 2.149035 +v 4.849163 -6.422264 1.989708 +v 4.886984 -6.423563 2.195312 +v 4.962626 -6.423563 2.195312 +v 5.113911 -6.423562 2.195312 +v 5.038269 -6.423562 2.195312 +v 5.151732 -6.423130 2.149035 +v 5.151732 -6.384747 1.592731 +v 5.038269 -6.437446 1.476536 +v 5.113911 -6.437446 1.476536 +v 4.962626 -6.437446 1.476536 +v 4.886984 -6.437446 1.476536 +v 4.849163 -6.322024 1.725183 +v 4.849163 -6.384747 1.592731 +v 4.849163 -6.422844 2.069479 +v 4.849163 -6.350755 1.663787 +v 5.076090 -6.437446 1.476536 +v 4.924805 -6.437446 1.476536 +v 5.151732 -6.422844 2.069479 +v 5.151732 -6.350755 1.663787 +v 5.076090 -6.423562 2.195312 +v 4.924805 -6.423563 2.195312 +v 4.849163 -6.421832 1.910045 +v 5.000447 -6.437446 1.476536 +v 5.000448 -6.423563 2.195312 +v 4.849163 -6.437447 1.476536 +v 4.849163 -6.423563 2.195312 +v 5.151732 -6.423562 2.195312 +v 5.151732 -6.437446 1.476536 +v 5.151732 -6.421832 1.910045 +v 5.000448 -6.421832 1.910045 +v 5.076090 -6.421832 1.910045 +v 5.000448 -6.422843 2.069479 +v 5.000448 -6.350754 1.663787 +v 4.924807 -6.421832 1.910045 +v 4.924807 -6.350754 1.663787 +v 5.076090 -6.350754 1.663787 +v 5.076090 -6.422843 2.069479 +v 4.924806 -6.422843 2.069479 +v 4.962627 -6.421832 1.910045 +v 4.886985 -6.421832 1.910045 +v 5.000448 -6.322024 1.725183 +v 5.000448 -6.384748 1.592731 +v 4.924807 -6.322024 1.725183 +v 4.886985 -6.350754 1.663787 +v 4.962627 -6.350754 1.663787 +v 4.924807 -6.384748 1.592731 +v 5.038269 -6.421832 1.910045 +v 5.113911 -6.421832 1.910045 +v 5.151732 -6.322024 1.725183 +v 5.038270 -6.350754 1.663787 +v 5.076090 -6.384748 1.592731 +v 5.076090 -6.322024 1.725183 +v 5.113911 -6.350754 1.663787 +v 5.151732 -6.422265 1.989708 +v 5.000448 -6.423128 2.149035 +v 5.000448 -6.422265 1.989708 +v 5.076090 -6.422265 1.989708 +v 5.113911 -6.422843 2.069479 +v 5.038269 -6.422843 2.069479 +v 5.076090 -6.423128 2.149035 +v 4.962627 -6.422843 2.069479 +v 4.924806 -6.423128 2.149035 +v 4.924806 -6.422265 1.989708 +v 4.886985 -6.422843 2.069479 +v 4.886985 -6.422265 1.989708 +v 4.962627 -6.422265 1.989708 +v 4.962627 -6.423128 2.149035 +v 5.038269 -6.423128 2.149035 +v 5.038269 -6.422265 1.989708 +v 5.113911 -6.422265 1.989708 +v 5.113911 -6.322024 1.725183 +v 5.038269 -6.322024 1.725183 +v 5.038270 -6.384748 1.592731 +v 4.962627 -6.384748 1.592731 +v 4.962627 -6.322024 1.725183 +v 4.886985 -6.322024 1.725183 +v 4.886986 -6.384748 1.592731 +v 5.113911 -6.384748 1.592731 +v 5.113911 -6.423128 2.149035 +v 4.886985 -6.423128 2.149035 +v 5.182741 -6.655424 0.527802 +v 5.182741 -6.885290 0.527802 +v 5.136943 -6.540491 0.527802 +v 5.045349 -6.540491 0.527802 +v 4.862161 -6.540491 0.527802 +v 4.953755 -6.540491 0.527802 +v 4.816364 -6.885290 0.527802 +v 4.816363 -6.655424 0.527802 +v 4.816364 -7.115155 0.527802 +v 4.816364 -7.345021 0.527802 +v 4.953755 -7.459954 0.527802 +v 4.862161 -7.459954 0.527802 +v 5.045349 -7.459954 0.527802 +v 5.136943 -7.459954 0.527802 +v 5.182741 -7.115155 0.527802 +v 5.182741 -7.345021 0.527802 +v 5.182741 -6.770357 0.527802 +v 5.182741 -7.230088 0.527802 +v 4.907958 -7.459954 0.527802 +v 5.091146 -7.459954 0.527802 +v 4.816364 -6.770357 0.527802 +v 4.816364 -7.230088 0.527802 +v 4.907958 -6.540491 0.527802 +v 5.091146 -6.540491 0.527802 +v 5.182741 -7.000223 0.527802 +v 4.999552 -7.459954 0.527802 +v 4.816364 -7.000222 0.527802 +v 4.999552 -6.540491 0.527802 +v 5.182741 -7.459954 0.527802 +v 5.182741 -6.540491 0.527802 +v 4.816363 -6.540491 0.527802 +v 4.816364 -7.459954 0.527802 +v 4.717149 -7.423315 0.500000 +v 4.805169 -7.470362 0.500000 +v 4.900675 -7.499334 0.500000 +v 4.999999 -7.509117 0.500000 +v 5.099323 -7.499334 0.500000 +v 5.194830 -7.470363 0.500000 +v 5.282850 -7.423316 0.500000 +v 5.360000 -7.360001 0.500000 +v 5.423315 -7.282851 0.500000 +v 5.470363 -7.194831 0.500000 +v 5.499334 -7.099324 0.500000 +v 5.509117 -7.000000 0.500000 +v 5.499334 -6.900677 0.500000 +v 5.470363 -6.805170 0.500000 +v 5.423316 -6.717150 0.500000 +v 5.282850 -6.576685 0.500000 +v 5.194831 -6.529637 0.500000 +v 5.099324 -6.500666 0.500000 +v 5.000000 -6.490883 0.500000 +v 4.900676 -6.500666 0.500000 +v 4.805170 -6.529637 0.500000 +v 4.717150 -6.576685 0.500000 +v 4.640000 -6.640000 0.500000 +v 4.576685 -6.717150 0.500000 +v 4.529637 -6.805170 0.500000 +v 4.500666 -6.900676 0.500000 +v 4.490883 -7.000000 0.500000 +v 4.500666 -7.099324 0.500000 +v 4.529637 -7.194831 0.500000 +v 4.576685 -7.282850 0.500000 +v 5.600000 -6.400000 0.017797 +v 5.471418 -6.294476 0.017797 +v 5.324719 -6.216063 0.017797 +v 5.165541 -6.167777 0.017797 +v 5.000001 -6.151472 0.017797 +v 4.834462 -6.167776 0.017797 +v 4.675283 -6.216062 0.017797 +v 4.528584 -6.294474 0.017797 +v 4.400001 -6.399999 0.017797 +v 4.294475 -6.528582 0.017797 +v 4.216063 -6.675282 0.017797 +v 4.167776 -6.834459 0.017797 +v 4.151472 -6.999999 0.017797 +v 4.167776 -7.165539 0.017797 +v 4.216062 -7.324717 0.017797 +v 4.294474 -7.471416 0.017797 +v 4.400000 -7.599999 0.017797 +v 4.528583 -7.705525 0.017797 +v 4.675282 -7.783937 0.017797 +v 4.834460 -7.832224 0.017797 +v 5.000000 -7.848528 0.017797 +v 5.165539 -7.832224 0.017797 +v 5.324718 -7.783938 0.017797 +v 5.471417 -7.705525 0.017797 +v 5.600000 -7.600000 0.017797 +v 5.705525 -7.471417 0.017797 +v 5.783938 -7.324718 0.017797 +v 5.832224 -7.165540 0.017797 +v 5.848528 -7.000000 0.017797 +v 5.832224 -6.834460 0.017797 +v 5.783938 -6.675282 0.017797 +v 5.705525 -6.528583 0.017797 +v 5.600000 -6.400000 0.082319 +v 5.705525 -6.528583 0.082319 +v 5.783938 -6.675282 0.082319 +v 5.832224 -6.834460 0.082319 +v 5.848528 -7.000000 0.082319 +v 5.832224 -7.165540 0.082319 +v 5.783938 -7.324718 0.082319 +v 5.705525 -7.471417 0.082319 +v 5.600000 -7.600000 0.082319 +v 5.471417 -7.705525 0.082319 +v 5.324718 -7.783938 0.082319 +v 5.165539 -7.832224 0.082319 +v 5.000000 -7.848528 0.082319 +v 4.834460 -7.832224 0.082319 +v 4.675282 -7.783937 0.082319 +v 4.528583 -7.705525 0.082319 +v 4.400000 -7.599999 0.082319 +v 4.294474 -7.471416 0.082319 +v 4.216062 -7.324717 0.082319 +v 4.167776 -7.165539 0.082319 +v 4.151472 -6.999999 0.082319 +v 4.167776 -6.834459 0.082319 +v 4.216063 -6.675282 0.082319 +v 4.294475 -6.528582 0.082319 +v 4.400001 -6.399999 0.082319 +v 4.528584 -6.294474 0.082319 +v 4.675283 -6.216062 0.082319 +v 4.834462 -6.167776 0.082319 +v 5.000001 -6.151472 0.082319 +v 5.165541 -6.167777 0.082319 +v 5.324719 -6.216063 0.082319 +v 5.471418 -6.294476 0.082319 +v 5.480000 -6.520000 0.200000 +v 5.564420 -6.622867 0.200000 +v 5.627150 -6.740226 0.200000 +v 5.665779 -6.867568 0.200000 +v 5.678823 -7.000000 0.200000 +v 5.665779 -7.132432 0.200000 +v 5.627151 -7.259774 0.200000 +v 5.564420 -7.377133 0.200000 +v 5.480000 -7.480000 0.200000 +v 5.377133 -7.564420 0.200000 +v 5.259774 -7.627151 0.200000 +v 5.132432 -7.665779 0.200000 +v 5.000000 -7.678823 0.200000 +v 4.867568 -7.665779 0.200000 +v 4.740226 -7.627150 0.200000 +v 4.622866 -7.564420 0.200000 +v 4.520000 -7.480000 0.200000 +v 4.435579 -7.377133 0.200000 +v 4.372849 -7.259774 0.200000 +v 4.334221 -7.132431 0.200000 +v 4.321177 -7.000000 0.200000 +v 4.334221 -6.867568 0.200000 +v 4.372850 -6.740225 0.200000 +v 4.435580 -6.622866 0.200000 +v 4.520000 -6.520000 0.200000 +v 4.622867 -6.435579 0.200000 +v 4.740227 -6.372849 0.200000 +v 4.867569 -6.334221 0.200000 +v 5.000001 -6.321177 0.200000 +v 5.132433 -6.334221 0.200000 +v 5.259775 -6.372850 0.200000 +v 5.377135 -6.435580 0.200000 +v 5.311136 -6.534354 0.350000 +v 5.396000 -6.604000 0.350000 +v 5.214314 -6.482601 0.350000 +v 5.109257 -6.450732 0.350000 +v 5.000001 -6.439971 0.350000 +v 4.890745 -6.450732 0.350000 +v 4.785687 -6.482601 0.350000 +v 4.688865 -6.534353 0.350000 +v 4.604001 -6.604000 0.350000 +v 4.534354 -6.688864 0.350000 +v 4.482601 -6.785686 0.350000 +v 4.450732 -6.890743 0.350000 +v 4.439971 -7.000000 0.350000 +v 4.450732 -7.109256 0.350000 +v 4.482601 -7.214314 0.350000 +v 4.534353 -7.311135 0.350000 +v 4.604000 -7.396000 0.350000 +v 4.688865 -7.465647 0.350000 +v 4.785686 -7.517399 0.350000 +v 4.890744 -7.549268 0.350000 +v 5.000000 -7.560029 0.350000 +v 5.109256 -7.549268 0.350000 +v 5.214314 -7.517399 0.350000 +v 5.311135 -7.465647 0.350000 +v 5.396000 -7.396000 0.350000 +v 5.465647 -7.311135 0.350000 +v 5.517399 -7.214314 0.350000 +v 5.549268 -7.109256 0.350000 +v 5.560029 -7.000000 0.350000 +v 5.549268 -6.890744 0.350000 +v 5.517399 -6.785686 0.350000 +v 5.465647 -6.688865 0.350000 +v 5.396000 -6.604000 0.450000 +v 5.465647 -6.688865 0.450000 +v 5.517399 -6.785686 0.450000 +v 5.549268 -6.890744 0.450000 +v 5.560029 -7.000000 0.450000 +v 5.549268 -7.109256 0.450000 +v 5.517399 -7.214314 0.450000 +v 5.465647 -7.311135 0.450000 +v 5.396000 -7.396000 0.450000 +v 5.311135 -7.465647 0.450000 +v 5.214314 -7.517399 0.450000 +v 5.109256 -7.549268 0.450000 +v 5.000000 -7.560029 0.450000 +v 4.890743 -7.549268 0.450000 +v 4.785686 -7.517399 0.450000 +v 4.688864 -7.465646 0.450000 +v 4.604000 -7.396000 0.450000 +v 4.534353 -7.311135 0.450000 +v 4.482601 -7.214314 0.450000 +v 4.450732 -7.109256 0.450000 +v 4.439971 -7.000000 0.450000 +v 4.450732 -6.890744 0.450000 +v 4.482601 -6.785686 0.450000 +v 4.534353 -6.688865 0.450000 +v 4.604000 -6.604000 0.450000 +v 4.688865 -6.534353 0.450000 +v 4.785686 -6.482601 0.450000 +v 4.890744 -6.450732 0.450000 +v 5.000000 -6.439971 0.450000 +v 5.109257 -6.450732 0.450000 +v 5.214314 -6.482601 0.450000 +v 5.311136 -6.534354 0.450000 +v 5.329993 -6.506133 0.250000 +v 5.420000 -6.580000 0.250000 +v 5.227304 -6.451244 0.250000 +v 5.115879 -6.417443 0.250000 +v 5.000001 -6.406030 0.250000 +v 4.884123 -6.417443 0.250000 +v 4.772698 -6.451243 0.250000 +v 4.670009 -6.506132 0.250000 +v 4.580000 -6.579999 0.250000 +v 4.506133 -6.670008 0.250000 +v 4.451244 -6.772697 0.250000 +v 4.417443 -6.884122 0.250000 +v 4.406030 -7.000000 0.250000 +v 4.417443 -7.115877 0.250000 +v 4.451243 -7.227302 0.250000 +v 4.506132 -7.329991 0.250000 +v 4.580000 -7.420000 0.250000 +v 4.670008 -7.493867 0.250000 +v 4.772697 -7.548757 0.250000 +v 4.884122 -7.582557 0.250000 +v 5.000000 -7.593970 0.250000 +v 5.115878 -7.582557 0.250000 +v 5.227302 -7.548757 0.250000 +v 5.329992 -7.493868 0.250000 +v 5.420000 -7.420000 0.250000 +v 5.493868 -7.329992 0.250000 +v 5.548757 -7.227302 0.250000 +v 5.582557 -7.115878 0.250000 +v 5.593970 -7.000000 0.250000 +v 5.582557 -6.884122 0.250000 +v 5.548757 -6.772697 0.250000 +v 5.493868 -6.670008 0.250000 +usemtl Material +s 1 +f 64 1138 1169 33 +f 31 1108 1107 32 +f 30 1109 1108 31 +f 30 29 1110 1109 +f 28 1111 1110 29 +f 27 1112 1111 28 +f 26 1113 1112 27 +f 26 25 1114 1113 +f 24 1115 1114 25 +f 24 23 1116 1115 +f 22 1117 1116 23 +f 21 1118 1117 22 +f 20 1119 1118 21 +f 20 19 1120 1119 +f 18 1121 1120 19 +f 18 17 1122 1121 +f 16 1123 1122 17 +f 16 15 1124 1123 +f 14 1125 1124 15 +f 14 13 1126 1125 +f 12 1127 1126 13 +f 11 1128 1127 12 +f 10 1129 1128 11 +f 10 9 1130 1129 +f 9 8 1131 1130 +f 7 1132 1131 8 +f 7 6 1133 1132 +f 5 1134 1133 6 +f 5 4 1135 1134 +f 3 1136 1135 4 +f 3 2 1137 1136 +f 2 1 1106 1137 +f 63 64 1170 1171 +f 62 63 1171 1172 +f 62 1172 1173 61 +f 60 61 1173 1174 +f 60 1174 1175 59 +f 58 59 1175 1176 +f 58 1176 1177 57 +f 56 57 1177 1178 +f 55 56 1178 1179 +f 55 1179 1180 54 +f 54 1180 1181 53 +f 53 1181 1182 52 +f 51 52 1182 1183 +f 51 1183 1184 50 +f 49 50 1184 1185 +f 49 1185 1186 48 +f 47 48 1186 1187 +f 47 1187 1188 46 +f 45 46 1188 1189 +f 45 1189 1190 44 +f 44 1190 1191 43 +f 43 1191 1192 42 +f 41 42 1192 1193 +f 41 1193 1194 40 +f 39 40 1194 1195 +f 39 1195 1196 38 +f 38 1196 1197 37 +f 37 1197 1198 36 +f 35 36 1198 1199 +f 35 1199 1200 34 +f 34 1200 1201 33 +f 33 1201 1170 64 +f 96 1202 1203 65 +f 95 1204 1202 96 +f 94 1205 1204 95 +f 94 93 1206 1205 +f 92 1207 1206 93 +f 91 1208 1207 92 +f 90 1209 1208 91 +f 90 89 1210 1209 +f 88 1211 1210 89 +f 88 87 1212 1211 +f 86 1213 1212 87 +f 85 1214 1213 86 +f 84 1215 1214 85 +f 84 83 1216 1215 +f 82 1217 1216 83 +f 82 81 1218 1217 +f 80 1219 1218 81 +f 80 79 1220 1219 +f 78 1221 1220 79 +f 78 77 1222 1221 +f 76 1223 1222 77 +f 75 1224 1223 76 +f 74 1225 1224 75 +f 74 73 1226 1225 +f 73 72 1227 1226 +f 71 1228 1227 72 +f 71 70 1229 1228 +f 69 1230 1229 70 +f 69 68 1231 1230 +f 67 1232 1231 68 +f 67 66 1233 1232 +f 66 65 1203 1233 +f 127 128 1234 1235 +f 126 127 1235 1236 +f 126 1236 1237 125 +f 124 125 1237 1238 +f 124 1238 1239 123 +f 122 123 1239 1240 +f 122 1240 1241 121 +f 120 121 1241 1242 +f 119 120 1242 1243 +f 119 1243 1244 118 +f 118 1244 1245 117 +f 117 1245 1246 116 +f 115 116 1246 1247 +f 115 1247 1248 114 +f 113 114 1248 1249 +f 113 1249 1250 112 +f 111 112 1250 1251 +f 111 1251 1252 110 +f 109 110 1252 1253 +f 109 1253 1254 108 +f 108 1254 1255 107 +f 107 1255 1256 106 +f 105 106 1256 1257 +f 105 1257 1258 104 +f 103 104 1258 1259 +f 103 1259 1260 102 +f 102 1260 1261 101 +f 101 1261 1262 100 +f 99 100 1262 1263 +f 99 1263 1264 98 +f 98 1264 1265 97 +f 97 1265 1234 128 +f 32 1 162 131 +f 31 32 131 132 +f 30 31 132 133 +f 30 133 134 29 +f 28 29 134 135 +f 27 28 135 136 +f 26 27 136 137 +f 26 137 138 25 +f 24 25 138 139 +f 24 139 140 23 +f 22 23 140 141 +f 21 22 141 142 +f 20 21 142 143 +f 20 143 144 19 +f 18 19 144 145 +f 18 145 146 17 +f 16 17 146 147 +f 16 147 148 15 +f 14 15 148 149 +f 14 149 150 13 +f 12 13 150 151 +f 11 12 151 152 +f 10 11 152 153 +f 10 153 154 9 +f 9 154 155 8 +f 7 8 155 156 +f 7 156 157 6 +f 5 6 157 158 +f 5 158 159 4 +f 3 4 159 160 +f 3 160 161 2 +f 162 1 2 161 +f 178 194 195 211 +f 194 165 224 195 +f 171 218 197 192 +f 192 197 224 165 +f 164 225 199 190 +f 190 199 217 172 +f 164 187 202 225 +f 187 174 215 202 +f 163 226 204 185 +f 185 204 216 173 +f 163 183 206 226 +f 183 176 213 206 +f 175 181 208 214 +f 181 166 223 208 +f 177 212 210 179 +f 179 210 223 166 +f 177 180 209 212 +f 180 170 219 209 +f 169 182 207 220 +f 182 175 214 207 +f 169 220 205 184 +f 184 205 213 176 +f 168 186 203 221 +f 186 173 216 203 +f 168 221 201 188 +f 188 201 215 174 +f 172 217 200 189 +f 189 200 222 167 +f 171 191 198 218 +f 191 167 222 198 +f 178 211 196 193 +f 193 196 219 170 +f 196 257 234 219 +f 211 242 257 196 +f 198 222 231 255 +f 218 198 255 235 +f 200 253 231 222 +f 217 236 253 200 +f 201 252 238 215 +f 221 232 252 201 +f 203 216 237 250 +f 221 203 250 232 +f 205 248 240 213 +f 220 233 248 205 +f 207 214 239 246 +f 220 207 246 233 +f 209 219 234 244 +f 212 209 244 241 +f 210 243 230 223 +f 212 241 243 210 +f 208 223 230 245 +f 214 208 245 239 +f 206 213 240 247 +f 226 206 247 227 +f 204 249 237 216 +f 226 227 249 204 +f 202 215 238 251 +f 225 202 251 228 +f 199 254 236 217 +f 225 228 254 199 +f 197 256 229 224 +f 218 235 256 197 +f 195 224 229 258 +f 211 195 258 242 +f 242 258 259 275 +f 258 229 288 259 +f 235 282 261 256 +f 256 261 288 229 +f 228 289 263 254 +f 254 263 281 236 +f 228 251 266 289 +f 251 238 279 266 +f 227 290 268 249 +f 249 268 280 237 +f 227 247 270 290 +f 247 240 277 270 +f 239 245 272 278 +f 245 230 287 272 +f 241 276 274 243 +f 243 274 287 230 +f 241 244 273 276 +f 244 234 283 273 +f 233 246 271 284 +f 246 239 278 271 +f 233 284 269 248 +f 248 269 277 240 +f 232 250 267 285 +f 250 237 280 267 +f 232 285 265 252 +f 252 265 279 238 +f 236 281 264 253 +f 253 264 286 231 +f 235 255 262 282 +f 255 231 286 262 +f 242 275 260 257 +f 257 260 283 234 +f 260 321 298 283 +f 275 306 321 260 +f 262 286 295 319 +f 282 262 319 299 +f 264 317 295 286 +f 281 300 317 264 +f 265 316 302 279 +f 285 296 316 265 +f 267 280 301 314 +f 285 267 314 296 +f 269 312 304 277 +f 284 297 312 269 +f 271 278 303 310 +f 284 271 310 297 +f 273 283 298 308 +f 276 273 308 305 +f 274 307 294 287 +f 276 305 307 274 +f 272 287 294 309 +f 278 272 309 303 +f 270 277 304 311 +f 290 270 311 291 +f 268 313 301 280 +f 290 291 313 268 +f 266 279 302 315 +f 289 266 315 292 +f 263 318 300 281 +f 289 292 318 263 +f 261 320 293 288 +f 282 299 320 261 +f 259 288 293 322 +f 275 259 322 306 +f 306 322 323 339 +f 322 293 352 323 +f 299 346 325 320 +f 320 325 352 293 +f 292 353 327 318 +f 318 327 345 300 +f 292 315 330 353 +f 315 302 343 330 +f 291 354 332 313 +f 313 332 344 301 +f 291 311 334 354 +f 311 304 341 334 +f 303 309 336 342 +f 309 294 351 336 +f 305 340 338 307 +f 307 338 351 294 +f 305 308 337 340 +f 308 298 347 337 +f 297 310 335 348 +f 310 303 342 335 +f 297 348 333 312 +f 312 333 341 304 +f 296 314 331 349 +f 314 301 344 331 +f 296 349 329 316 +f 316 329 343 302 +f 300 345 328 317 +f 317 328 350 295 +f 299 319 326 346 +f 319 295 350 326 +f 306 339 324 321 +f 321 324 347 298 +f 324 385 362 347 +f 339 370 385 324 +f 326 350 359 383 +f 346 326 383 363 +f 328 381 359 350 +f 345 364 381 328 +f 329 380 366 343 +f 349 360 380 329 +f 331 344 365 378 +f 349 331 378 360 +f 333 376 368 341 +f 348 361 376 333 +f 335 342 367 374 +f 348 335 374 361 +f 337 347 362 372 +f 340 337 372 369 +f 338 371 358 351 +f 340 369 371 338 +f 336 351 358 373 +f 342 336 373 367 +f 334 341 368 375 +f 354 334 375 355 +f 332 377 365 344 +f 354 355 377 332 +f 330 343 366 379 +f 353 330 379 356 +f 327 382 364 345 +f 353 356 382 327 +f 325 384 357 352 +f 346 363 384 325 +f 323 352 357 386 +f 339 323 386 370 +f 370 386 387 403 +f 386 357 416 387 +f 363 410 389 384 +f 384 389 416 357 +f 356 417 391 382 +f 382 391 409 364 +f 356 379 394 417 +f 379 366 407 394 +f 355 418 396 377 +f 377 396 408 365 +f 355 375 398 418 +f 375 368 405 398 +f 367 373 400 406 +f 373 358 415 400 +f 369 404 402 371 +f 371 402 415 358 +f 369 372 401 404 +f 372 362 411 401 +f 361 374 399 412 +f 374 367 406 399 +f 361 412 397 376 +f 376 397 405 368 +f 360 378 395 413 +f 378 365 408 395 +f 360 413 393 380 +f 380 393 407 366 +f 364 409 392 381 +f 381 392 414 359 +f 363 383 390 410 +f 383 359 414 390 +f 370 403 388 385 +f 385 388 411 362 +f 388 449 426 411 +f 403 434 449 388 +f 390 414 423 447 +f 410 390 447 427 +f 392 445 423 414 +f 409 428 445 392 +f 393 444 430 407 +f 413 424 444 393 +f 395 408 429 442 +f 413 395 442 424 +f 397 440 432 405 +f 412 425 440 397 +f 399 406 431 438 +f 412 399 438 425 +f 401 411 426 436 +f 404 401 436 433 +f 402 435 422 415 +f 404 433 435 402 +f 400 415 422 437 +f 406 400 437 431 +f 398 405 432 439 +f 418 398 439 419 +f 396 441 429 408 +f 418 419 441 396 +f 394 407 430 443 +f 417 394 443 420 +f 391 446 428 409 +f 417 420 446 391 +f 389 448 421 416 +f 410 427 448 389 +f 387 416 421 450 +f 403 387 450 434 +f 434 450 451 467 +f 450 421 480 451 +f 427 474 453 448 +f 448 453 480 421 +f 420 481 455 446 +f 446 455 473 428 +f 420 443 458 481 +f 443 430 471 458 +f 419 482 460 441 +f 441 460 472 429 +f 419 439 462 482 +f 439 432 469 462 +f 431 437 464 470 +f 437 422 479 464 +f 433 468 466 435 +f 435 466 479 422 +f 433 436 465 468 +f 436 426 475 465 +f 425 438 463 476 +f 438 431 470 463 +f 425 476 461 440 +f 440 461 469 432 +f 424 442 459 477 +f 442 429 472 459 +f 424 477 457 444 +f 444 457 471 430 +f 428 473 456 445 +f 445 456 478 423 +f 427 447 454 474 +f 447 423 478 454 +f 434 467 452 449 +f 449 452 475 426 +f 452 513 490 475 +f 467 498 513 452 +f 454 478 487 511 +f 474 454 511 491 +f 456 509 487 478 +f 473 492 509 456 +f 457 508 494 471 +f 477 488 508 457 +f 459 472 493 506 +f 477 459 506 488 +f 461 504 496 469 +f 476 489 504 461 +f 463 470 495 502 +f 476 463 502 489 +f 465 475 490 500 +f 468 465 500 497 +f 466 499 486 479 +f 468 497 499 466 +f 464 479 486 501 +f 470 464 501 495 +f 462 469 496 503 +f 482 462 503 483 +f 460 505 493 472 +f 482 483 505 460 +f 458 471 494 507 +f 481 458 507 484 +f 455 510 492 473 +f 481 484 510 455 +f 453 512 485 480 +f 474 491 512 453 +f 451 480 485 514 +f 467 451 514 498 +f 498 514 515 531 +f 514 485 544 515 +f 491 538 517 512 +f 512 517 544 485 +f 484 545 519 510 +f 510 519 537 492 +f 484 507 522 545 +f 507 494 535 522 +f 483 546 524 505 +f 505 524 536 493 +f 483 503 526 546 +f 503 496 533 526 +f 495 501 528 534 +f 501 486 543 528 +f 497 532 530 499 +f 499 530 543 486 +f 497 500 529 532 +f 500 490 539 529 +f 489 502 527 540 +f 502 495 534 527 +f 489 540 525 504 +f 504 525 533 496 +f 488 506 523 541 +f 506 493 536 523 +f 488 541 521 508 +f 508 521 535 494 +f 492 537 520 509 +f 509 520 542 487 +f 491 511 518 538 +f 511 487 542 518 +f 498 531 516 513 +f 513 516 539 490 +f 516 577 554 539 +f 531 562 577 516 +f 518 542 551 575 +f 538 518 575 555 +f 520 573 551 542 +f 537 556 573 520 +f 521 572 558 535 +f 541 552 572 521 +f 523 536 557 570 +f 541 523 570 552 +f 525 568 560 533 +f 540 553 568 525 +f 527 534 559 566 +f 540 527 566 553 +f 529 539 554 564 +f 532 529 564 561 +f 530 563 550 543 +f 532 561 563 530 +f 528 543 550 565 +f 534 528 565 559 +f 526 533 560 567 +f 546 526 567 547 +f 524 569 557 536 +f 546 547 569 524 +f 522 535 558 571 +f 545 522 571 548 +f 519 574 556 537 +f 545 548 574 519 +f 517 576 549 544 +f 538 555 576 517 +f 515 544 549 578 +f 531 515 578 562 +f 562 578 579 595 +f 578 549 608 579 +f 555 602 581 576 +f 576 581 608 549 +f 548 609 583 574 +f 574 583 601 556 +f 548 571 586 609 +f 571 558 599 586 +f 547 610 588 569 +f 569 588 600 557 +f 547 567 590 610 +f 567 560 597 590 +f 559 565 592 598 +f 565 550 607 592 +f 561 596 594 563 +f 563 594 607 550 +f 561 564 593 596 +f 564 554 603 593 +f 553 566 591 604 +f 566 559 598 591 +f 553 604 589 568 +f 568 589 597 560 +f 552 570 587 605 +f 570 557 600 587 +f 552 605 585 572 +f 572 585 599 558 +f 556 601 584 573 +f 573 584 606 551 +f 555 575 582 602 +f 575 551 606 582 +f 562 595 580 577 +f 577 580 603 554 +f 580 641 618 603 +f 595 626 641 580 +f 582 606 615 639 +f 602 582 639 619 +f 584 637 615 606 +f 601 620 637 584 +f 585 636 622 599 +f 605 616 636 585 +f 587 600 621 634 +f 605 587 634 616 +f 589 632 624 597 +f 604 617 632 589 +f 591 598 623 630 +f 604 591 630 617 +f 593 603 618 628 +f 596 593 628 625 +f 594 627 614 607 +f 596 625 627 594 +f 592 607 614 629 +f 598 592 629 623 +f 590 597 624 631 +f 610 590 631 611 +f 588 633 621 600 +f 610 611 633 588 +f 586 599 622 635 +f 609 586 635 612 +f 583 638 620 601 +f 609 612 638 583 +f 581 640 613 608 +f 602 619 640 581 +f 579 608 613 642 +f 595 579 642 626 +f 626 642 643 659 +f 642 613 672 643 +f 619 666 645 640 +f 640 645 672 613 +f 612 673 647 638 +f 638 647 665 620 +f 612 635 650 673 +f 635 622 663 650 +f 611 674 652 633 +f 633 652 664 621 +f 611 631 654 674 +f 631 624 661 654 +f 623 629 656 662 +f 629 614 671 656 +f 625 660 658 627 +f 627 658 671 614 +f 625 628 657 660 +f 628 618 667 657 +f 617 630 655 668 +f 630 623 662 655 +f 617 668 653 632 +f 632 653 661 624 +f 616 634 651 669 +f 634 621 664 651 +f 616 669 649 636 +f 636 649 663 622 +f 620 665 648 637 +f 637 648 670 615 +f 619 639 646 666 +f 639 615 670 646 +f 626 659 644 641 +f 641 644 667 618 +f 644 705 682 667 +f 659 690 705 644 +f 646 670 679 703 +f 666 646 703 683 +f 648 701 679 670 +f 665 684 701 648 +f 649 700 686 663 +f 669 680 700 649 +f 651 664 685 698 +f 669 651 698 680 +f 653 696 688 661 +f 668 681 696 653 +f 655 662 687 694 +f 668 655 694 681 +f 657 667 682 692 +f 660 657 692 689 +f 658 691 678 671 +f 660 689 691 658 +f 656 671 678 693 +f 662 656 693 687 +f 654 661 688 695 +f 674 654 695 675 +f 652 697 685 664 +f 674 675 697 652 +f 650 663 686 699 +f 673 650 699 676 +f 647 702 684 665 +f 673 676 702 647 +f 645 704 677 672 +f 666 683 704 645 +f 643 672 677 706 +f 659 643 706 690 +f 690 706 707 723 +f 706 677 736 707 +f 683 730 709 704 +f 704 709 736 677 +f 676 737 711 702 +f 702 711 729 684 +f 676 699 714 737 +f 699 686 727 714 +f 675 738 716 697 +f 697 716 728 685 +f 675 695 718 738 +f 695 688 725 718 +f 687 693 720 726 +f 693 678 735 720 +f 689 724 722 691 +f 691 722 735 678 +f 689 692 721 724 +f 692 682 731 721 +f 681 694 719 732 +f 694 687 726 719 +f 681 732 717 696 +f 696 717 725 688 +f 680 698 715 733 +f 698 685 728 715 +f 680 733 713 700 +f 700 713 727 686 +f 684 729 712 701 +f 701 712 734 679 +f 683 703 710 730 +f 703 679 734 710 +f 690 723 708 705 +f 705 708 731 682 +f 708 769 746 731 +f 723 754 769 708 +f 710 734 743 767 +f 730 710 767 747 +f 712 765 743 734 +f 729 748 765 712 +f 713 764 750 727 +f 733 744 764 713 +f 715 728 749 762 +f 733 715 762 744 +f 717 760 752 725 +f 732 745 760 717 +f 719 726 751 758 +f 732 719 758 745 +f 721 731 746 756 +f 724 721 756 753 +f 722 755 742 735 +f 724 753 755 722 +f 720 735 742 757 +f 726 720 757 751 +f 718 725 752 759 +f 738 718 759 739 +f 716 761 749 728 +f 738 739 761 716 +f 714 727 750 763 +f 737 714 763 740 +f 711 766 748 729 +f 737 740 766 711 +f 709 768 741 736 +f 730 747 768 709 +f 707 736 741 770 +f 723 707 770 754 +f 754 770 771 787 +f 770 741 800 771 +f 747 794 773 768 +f 768 773 800 741 +f 740 801 775 766 +f 766 775 793 748 +f 740 763 778 801 +f 763 750 791 778 +f 739 802 780 761 +f 761 780 792 749 +f 739 759 782 802 +f 759 752 789 782 +f 751 757 784 790 +f 757 742 799 784 +f 753 788 786 755 +f 755 786 799 742 +f 753 756 785 788 +f 756 746 795 785 +f 745 758 783 796 +f 758 751 790 783 +f 745 796 781 760 +f 760 781 789 752 +f 744 762 779 797 +f 762 749 792 779 +f 744 797 777 764 +f 764 777 791 750 +f 748 793 776 765 +f 765 776 798 743 +f 747 767 774 794 +f 767 743 798 774 +f 754 787 772 769 +f 769 772 795 746 +f 772 833 810 795 +f 787 818 833 772 +f 774 798 807 831 +f 794 774 831 811 +f 776 829 807 798 +f 793 812 829 776 +f 777 828 814 791 +f 797 808 828 777 +f 779 792 813 826 +f 797 779 826 808 +f 781 824 816 789 +f 796 809 824 781 +f 783 790 815 822 +f 796 783 822 809 +f 785 795 810 820 +f 788 785 820 817 +f 786 819 806 799 +f 788 817 819 786 +f 784 799 806 821 +f 790 784 821 815 +f 782 789 816 823 +f 802 782 823 803 +f 780 825 813 792 +f 802 803 825 780 +f 778 791 814 827 +f 801 778 827 804 +f 775 830 812 793 +f 801 804 830 775 +f 773 832 805 800 +f 794 811 832 773 +f 771 800 805 834 +f 787 771 834 818 +f 818 834 835 851 +f 834 805 864 835 +f 811 858 837 832 +f 832 837 864 805 +f 804 865 839 830 +f 830 839 857 812 +f 804 827 842 865 +f 827 814 855 842 +f 803 866 844 825 +f 825 844 856 813 +f 803 823 846 866 +f 823 816 853 846 +f 815 821 848 854 +f 821 806 863 848 +f 817 852 850 819 +f 819 850 863 806 +f 817 820 849 852 +f 820 810 859 849 +f 809 822 847 860 +f 822 815 854 847 +f 809 860 845 824 +f 824 845 853 816 +f 808 826 843 861 +f 826 813 856 843 +f 808 861 841 828 +f 828 841 855 814 +f 812 857 840 829 +f 829 840 862 807 +f 811 831 838 858 +f 831 807 862 838 +f 818 851 836 833 +f 833 836 859 810 +f 836 897 874 859 +f 851 882 897 836 +f 838 862 871 895 +f 858 838 895 875 +f 840 893 871 862 +f 857 876 893 840 +f 841 892 878 855 +f 861 872 892 841 +f 843 856 877 890 +f 861 843 890 872 +f 845 888 880 853 +f 860 873 888 845 +f 847 854 879 886 +f 860 847 886 873 +f 849 859 874 884 +f 852 849 884 881 +f 850 883 870 863 +f 852 881 883 850 +f 848 863 870 885 +f 854 848 885 879 +f 846 853 880 887 +f 866 846 887 867 +f 844 889 877 856 +f 866 867 889 844 +f 842 855 878 891 +f 865 842 891 868 +f 839 894 876 857 +f 865 868 894 839 +f 837 896 869 864 +f 858 875 896 837 +f 835 864 869 898 +f 851 835 898 882 +f 882 898 899 915 +f 898 869 928 899 +f 875 922 901 896 +f 896 901 928 869 +f 868 929 903 894 +f 894 903 921 876 +f 868 891 906 929 +f 891 878 919 906 +f 867 930 908 889 +f 889 908 920 877 +f 867 887 910 930 +f 887 880 917 910 +f 879 885 912 918 +f 885 870 927 912 +f 881 916 914 883 +f 883 914 927 870 +f 881 884 913 916 +f 884 874 923 913 +f 873 886 911 924 +f 886 879 918 911 +f 873 924 909 888 +f 888 909 917 880 +f 872 890 907 925 +f 890 877 920 907 +f 872 925 905 892 +f 892 905 919 878 +f 876 921 904 893 +f 893 904 926 871 +f 875 895 902 922 +f 895 871 926 902 +f 882 915 900 897 +f 897 900 923 874 +f 900 961 938 923 +f 915 946 961 900 +f 902 926 935 959 +f 922 902 959 939 +f 904 957 935 926 +f 921 940 957 904 +f 905 956 942 919 +f 925 936 956 905 +f 907 920 941 954 +f 925 907 954 936 +f 909 952 944 917 +f 924 937 952 909 +f 911 918 943 950 +f 924 911 950 937 +f 913 923 938 948 +f 916 913 948 945 +f 914 947 934 927 +f 916 945 947 914 +f 912 927 934 949 +f 918 912 949 943 +f 910 917 944 951 +f 930 910 951 931 +f 908 953 941 920 +f 930 931 953 908 +f 906 919 942 955 +f 929 906 955 932 +f 903 958 940 921 +f 929 932 958 903 +f 901 960 933 928 +f 922 939 960 901 +f 899 928 933 962 +f 915 899 962 946 +f 946 962 963 977 +f 962 933 989 963 +f 939 984 965 960 +f 960 965 989 933 +f 932 990 967 958 +f 958 967 983 940 +f 932 955 969 990 +f 955 942 981 969 +f 931 991 970 953 +f 953 970 982 941 +f 931 951 972 991 +f 951 944 979 972 +f 943 949 974 980 +f 949 934 988 974 +f 945 978 976 947 +f 947 976 988 934 +f 945 948 975 978 +f 948 938 985 975 +f 937 950 973 986 +f 950 943 980 973 +f 937 986 971 952 +f 952 971 979 944 +f 936 954 1012 992 +f 954 941 982 1012 +f 936 992 1017 956 +f 956 1017 981 942 +f 940 983 968 957 +f 957 968 987 935 +f 939 959 966 984 +f 959 935 987 966 +f 946 977 964 961 +f 961 964 985 938 +f 989 965 1043 963 +f 990 969 1042 967 +f 991 972 1041 970 +f 988 976 1040 974 +f 985 1003 1039 975 +f 993 1004 1038 1002 +f 986 973 1037 1005 +f 986 1005 1036 971 +f 993 1010 1035 1004 +f 992 1012 1034 1011 +f 992 1011 1033 1017 +f 993 1019 1032 1010 +f 987 968 1031 1018 +f 987 1018 1030 966 +f 993 1002 1029 1019 +f 985 964 1028 1003 +f 977 1027 1028 964 +f 1001 1026 1028 1027 +f 997 1003 1028 1026 +f 997 1026 1029 1002 +f 1001 1024 1029 1026 +f 995 1019 1029 1024 +f 995 1024 1030 1018 +f 1001 1025 1030 1024 +f 984 966 1030 1025 +f 983 1023 1031 968 +f 1000 1022 1031 1023 +f 995 1018 1031 1022 +f 995 1022 1032 1019 +f 1000 1020 1032 1022 +f 994 1010 1032 1020 +f 994 1020 1033 1011 +f 1000 1021 1033 1020 +f 981 1017 1033 1021 +f 982 1016 1034 1012 +f 999 1015 1034 1016 +f 994 1011 1034 1015 +f 994 1015 1035 1010 +f 999 1013 1035 1015 +f 996 1004 1035 1013 +f 996 1013 1036 1005 +f 999 1014 1036 1013 +f 979 971 1036 1014 +f 980 1009 1037 973 +f 998 1008 1037 1009 +f 996 1005 1037 1008 +f 996 1008 1038 1004 +f 998 1006 1038 1008 +f 997 1002 1038 1006 +f 997 1006 1039 1003 +f 998 1007 1039 1006 +f 978 975 1039 1007 +f 978 1007 1040 976 +f 998 1009 1040 1007 +f 980 974 1040 1009 +f 979 1014 1041 972 +f 999 1016 1041 1014 +f 982 970 1041 1016 +f 981 1021 1042 969 +f 1000 1023 1042 1021 +f 983 967 1042 1023 +f 984 1025 1043 965 +f 1001 1027 1043 1025 +f 977 963 1043 1027 +f 1093 183 163 1092 +f 1093 176 183 +f 1094 169 184 +f 1094 182 169 +f 1095 181 175 +f 1095 175 182 1094 +f 1094 184 176 1093 +f 1096 166 181 1095 +f 1092 163 185 1091 +f 129 1091 185 173 +f 129 173 186 1090 +f 1088 168 1087 +f 1089 168 1088 +f 1090 186 168 1089 +f 1087 168 1086 +f 1086 168 1085 +f 1085 168 188 1084 +f 1084 188 174 1083 +f 1083 174 187 1082 +f 1082 187 164 1081 +f 1078 1055 1075 1077 +f 1078 1062 1055 +f 1079 1069 1054 +f 1079 1056 1069 +f 1080 1057 1063 +f 1080 1063 1056 1079 +f 1079 1054 1062 1078 +f 1081 1072 1057 1080 +f 1077 1075 1053 1076 +f 130 1076 1053 1065 +f 130 1065 1052 1105 +f 1103 1070 1102 +f 1104 1070 1103 +f 1105 1052 1070 1104 +f 1102 1070 1101 +f 1101 1070 1100 +f 1100 1070 1050 1099 +f 1099 1050 1064 1098 +f 1098 1064 1051 1097 +f 1097 1051 1074 1096 +f 1106 1138 1139 1137 +f 1137 1139 1140 1136 +f 1136 1140 1141 1135 +f 1135 1141 1142 1134 +f 1134 1142 1143 1133 +f 1133 1143 1144 1132 +f 1132 1144 1145 1131 +f 1131 1145 1146 1130 +f 1130 1146 1147 1129 +f 1129 1147 1148 1128 +f 1128 1148 1149 1127 +f 1127 1149 1150 1126 +f 1126 1150 1151 1125 +f 1125 1151 1152 1124 +f 1124 1152 1153 1123 +f 1123 1153 1154 1122 +f 1122 1154 1155 1121 +f 1121 1155 1156 1120 +f 1120 1156 1157 1119 +f 1119 1157 1158 1118 +f 1118 1158 1159 1117 +f 1117 1159 1160 1116 +f 1116 1160 1161 1115 +f 1115 1161 1162 1114 +f 1114 1162 1163 1113 +f 1113 1163 1164 1112 +f 1112 1164 1165 1111 +f 1111 1165 1166 1110 +f 1110 1166 1167 1109 +f 1109 1167 1168 1108 +f 1108 1168 1169 1107 +f 1106 1 32 1107 +f 1168 34 33 1169 +f 1167 35 34 1168 +f 1166 36 35 1167 +f 1165 37 36 1166 +f 1164 38 37 1165 +f 1163 39 38 1164 +f 1162 40 39 1163 +f 1161 41 40 1162 +f 1160 42 41 1161 +f 1159 43 42 1160 +f 1158 44 43 1159 +f 1157 45 44 1158 +f 1156 46 45 1157 +f 1155 47 46 1156 +f 1154 48 47 1155 +f 1153 49 48 1154 +f 1152 50 49 1153 +f 1151 51 50 1152 +f 1150 52 51 1151 +f 1149 53 52 1150 +f 1148 54 53 1149 +f 1147 55 54 1148 +f 1146 56 55 1147 +f 1145 57 56 1146 +f 1144 58 57 1145 +f 1143 59 58 1144 +f 1142 60 59 1143 +f 1141 61 60 1142 +f 1140 62 61 1141 +f 1139 63 62 1140 +f 1138 64 63 1139 +f 1138 1106 1107 1169 +f 1265 1091 129 1234 +f 1264 1092 1091 1265 +f 1263 1093 1092 1264 +f 1262 1094 1093 1263 +f 1261 1095 1094 1262 +f 1260 1096 1095 1261 +f 1259 1097 1096 1260 +f 1258 1098 1097 1259 +f 1257 1099 1098 1258 +f 1256 1100 1099 1257 +f 1255 1101 1100 1256 +f 1254 1102 1101 1255 +f 1253 1103 1102 1254 +f 1252 1104 1103 1253 +f 1251 1105 1104 1252 +f 1250 130 1105 1251 +f 1249 1076 130 1250 +f 1248 1077 1076 1249 +f 1247 1078 1077 1248 +f 1246 1079 1078 1247 +f 1245 1080 1079 1246 +f 1244 1081 1080 1245 +f 1243 1082 1081 1244 +f 1242 1083 1082 1243 +f 1241 1084 1083 1242 +f 1240 1085 1084 1241 +f 1239 1086 1085 1240 +f 1238 1087 1086 1239 +f 1237 1088 1087 1238 +f 1236 1089 1088 1237 +f 1235 1090 1089 1236 +f 1234 129 1090 1235 +f 1203 128 127 1233 +f 1233 127 126 1232 +f 1232 126 125 1231 +f 1231 125 124 1230 +f 1230 124 123 1229 +f 1229 123 122 1228 +f 1228 122 121 1227 +f 1227 121 120 1226 +f 1226 120 119 1225 +f 1225 119 118 1224 +f 1224 118 117 1223 +f 1223 117 116 1222 +f 1222 116 115 1221 +f 1221 115 114 1220 +f 1220 114 113 1219 +f 1219 113 112 1218 +f 1218 112 111 1217 +f 1217 111 110 1216 +f 1216 110 109 1215 +f 1215 109 108 1214 +f 1214 108 107 1213 +f 1213 107 106 1212 +f 1212 106 105 1211 +f 1211 105 104 1210 +f 1210 104 103 1209 +f 1209 103 102 1208 +f 1208 102 101 1207 +f 1207 101 100 1206 +f 1206 100 99 1205 +f 1205 99 98 1204 +f 1204 98 97 1202 +f 1202 97 128 1203 +f 1201 1266 1267 1170 +f 1200 1268 1266 1201 +f 1199 1269 1268 1200 +f 1198 1270 1269 1199 +f 1197 1271 1270 1198 +f 1196 1272 1271 1197 +f 1195 1273 1272 1196 +f 1194 1274 1273 1195 +f 1193 1275 1274 1194 +f 1192 1276 1275 1193 +f 1191 1277 1276 1192 +f 1190 1278 1277 1191 +f 1189 1279 1278 1190 +f 1188 1280 1279 1189 +f 1187 1281 1280 1188 +f 1186 1282 1281 1187 +f 1185 1283 1282 1186 +f 1184 1284 1283 1185 +f 1183 1285 1284 1184 +f 1182 1286 1285 1183 +f 1181 1287 1286 1182 +f 1180 1288 1287 1181 +f 1179 1289 1288 1180 +f 1178 1290 1289 1179 +f 1177 1291 1290 1178 +f 1176 1292 1291 1177 +f 1175 1293 1292 1176 +f 1174 1294 1293 1175 +f 1173 1295 1294 1174 +f 1172 1296 1295 1173 +f 1171 1297 1296 1172 +f 1170 1267 1297 1171 +f 1267 65 66 1297 +f 1297 66 67 1296 +f 1296 67 68 1295 +f 1295 68 69 1294 +f 1294 69 70 1293 +f 1293 70 71 1292 +f 1292 71 72 1291 +f 1291 72 73 1290 +f 1290 73 74 1289 +f 1289 74 75 1288 +f 1288 75 76 1287 +f 1287 76 77 1286 +f 1286 77 78 1285 +f 1285 78 79 1284 +f 1284 79 80 1283 +f 1283 80 81 1282 +f 1282 81 82 1281 +f 1281 82 83 1280 +f 1280 83 84 1279 +f 1279 84 85 1278 +f 1278 85 86 1277 +f 1277 86 87 1276 +f 1276 87 88 1275 +f 1275 88 89 1274 +f 1274 89 90 1273 +f 1273 90 91 1272 +f 1272 91 92 1271 +f 1271 92 93 1270 +f 1270 93 94 1269 +f 1269 94 95 1268 +f 1268 95 96 1266 +f 1266 96 65 1267 diff --git a/Graph3D/Chess3D/king.obj b/Graph3D/Chess3D/king.obj new file mode 100644 index 0000000..22d9a0c --- /dev/null +++ b/Graph3D/Chess3D/king.obj @@ -0,0 +1,1463 @@ +# Blender3D v245 OBJ File: chess2.blend +# www.blender3d.org +v 1.783787 -6.674918 0.000000 +v 1.832147 -6.834074 0.000000 +v 1.848528 -6.999606 0.000000 +v 1.832301 -7.165153 0.000000 +v 1.784088 -7.324354 0.000000 +v 1.705745 -7.471089 0.000000 +v 1.600279 -7.599721 0.000000 +v 1.471745 -7.705306 0.000000 +v 1.325082 -7.783787 0.000000 +v 1.165926 -7.832147 0.000000 +v 1.000394 -7.848528 0.000000 +v 0.834847 -7.832301 0.000000 +v 0.675646 -7.784088 0.000000 +v 0.528911 -7.705744 0.000000 +v 0.400278 -7.600278 0.000000 +v 0.294693 -7.471744 0.000000 +v 0.216213 -7.325081 0.000000 +v 0.167853 -7.165926 0.000000 +v 0.151472 -7.000393 0.000000 +v 0.167699 -6.834846 0.000000 +v 0.215912 -6.675646 0.000000 +v 0.294256 -6.528910 0.000000 +v 0.399722 -6.400278 0.000000 +v 0.528256 -6.294693 0.000000 +v 0.674919 -6.216213 0.000000 +v 0.834075 -6.167853 0.000000 +v 0.999607 -6.151472 0.000000 +v 1.165154 -6.167699 0.000000 +v 1.324355 -6.215912 0.000000 +v 1.471090 -6.294257 0.000000 +v 1.599722 -6.399723 0.000000 +v 1.705307 -6.528257 0.000000 +v 1.705307 -6.528257 0.100000 +v 1.599722 -6.399723 0.100000 +v 1.471090 -6.294257 0.100000 +v 1.324355 -6.215912 0.100000 +v 1.165154 -6.167699 0.100000 +v 0.999607 -6.151472 0.100000 +v 0.834075 -6.167853 0.100000 +v 0.674919 -6.216213 0.100000 +v 0.528256 -6.294693 0.100000 +v 0.399722 -6.400278 0.100000 +v 0.294256 -6.528910 0.100000 +v 0.215912 -6.675646 0.100000 +v 0.167699 -6.834846 0.100000 +v 0.151472 -7.000393 0.100000 +v 0.167853 -7.165926 0.100000 +v 0.216213 -7.325081 0.100000 +v 0.294693 -7.471744 0.100000 +v 0.400278 -7.600278 0.100000 +v 0.528911 -7.705744 0.100000 +v 0.675646 -7.784088 0.100000 +v 0.834847 -7.832301 0.100000 +v 1.000394 -7.848528 0.100000 +v 1.165926 -7.832147 0.100000 +v 1.325082 -7.783787 0.100000 +v 1.471745 -7.705306 0.100000 +v 1.600279 -7.599721 0.100000 +v 1.705745 -7.471089 0.100000 +v 1.784088 -7.324354 0.100000 +v 1.832301 -7.165153 0.100000 +v 1.848528 -6.999606 0.100000 +v 1.832147 -6.834074 0.100000 +v 1.783787 -6.674918 0.100000 +v 1.548651 -6.772443 0.200000 +v 1.582503 -6.883852 0.200000 +v 1.593970 -6.999724 0.200000 +v 1.582611 -7.115607 0.200000 +v 1.548862 -7.227047 0.200000 +v 1.494021 -7.329762 0.200000 +v 1.420195 -7.419805 0.200000 +v 1.330221 -7.493714 0.200000 +v 1.227557 -7.548651 0.200000 +v 1.116148 -7.582503 0.200000 +v 1.000276 -7.593969 0.200000 +v 0.884393 -7.582610 0.200000 +v 0.772952 -7.548862 0.200000 +v 0.670237 -7.494021 0.200000 +v 0.580195 -7.420195 0.200000 +v 0.506285 -7.330221 0.200000 +v 0.451349 -7.227557 0.200000 +v 0.417497 -7.116148 0.200000 +v 0.406030 -7.000276 0.200000 +v 0.417390 -6.884392 0.200000 +v 0.451138 -6.772952 0.200000 +v 0.505979 -6.670237 0.200000 +v 0.579805 -6.580194 0.200000 +v 0.669779 -6.506285 0.200000 +v 0.772444 -6.451349 0.200000 +v 0.883853 -6.417497 0.200000 +v 0.999725 -6.406030 0.200000 +v 1.115608 -6.417390 0.200000 +v 1.227048 -6.451138 0.200000 +v 1.329763 -6.505980 0.200000 +v 1.419806 -6.579806 0.200000 +v 1.493715 -6.669780 0.200000 +v 1.543087 -6.636758 0.300000 +v 1.461786 -6.537786 0.300000 +v 1.362740 -6.456577 0.300000 +v 1.249753 -6.396252 0.300000 +v 1.127169 -6.359128 0.300000 +v 0.999698 -6.346633 0.300000 +v 0.872238 -6.359247 0.300000 +v 0.749688 -6.396484 0.300000 +v 0.636757 -6.456914 0.300000 +v 0.537786 -6.538214 0.300000 +v 0.456577 -6.637261 0.300000 +v 0.396252 -6.750247 0.300000 +v 0.359129 -6.872831 0.300000 +v 0.346633 -7.000303 0.300000 +v 0.359247 -7.127763 0.300000 +v 0.396484 -7.250312 0.300000 +v 0.456914 -7.363243 0.300000 +v 0.538214 -7.462214 0.300000 +v 0.637261 -7.543423 0.300000 +v 0.750248 -7.603748 0.300000 +v 0.872832 -7.640872 0.300000 +v 1.000303 -7.653367 0.300000 +v 1.127763 -7.640753 0.300000 +v 1.250313 -7.603516 0.300000 +v 1.363243 -7.543086 0.300000 +v 1.462215 -7.461785 0.300000 +v 1.543423 -7.362739 0.300000 +v 1.603748 -7.249752 0.300000 +v 1.640872 -7.127168 0.300000 +v 1.653367 -6.999697 0.300000 +v 1.640753 -6.872237 0.300000 +v 1.603516 -6.749687 0.300000 +v 1.482813 -6.799750 0.400000 +v 1.512603 -6.897789 0.400000 +v 1.522693 -6.999757 0.400000 +v 1.512697 -7.101734 0.400000 +v 1.482998 -7.199802 0.400000 +v 1.434739 -7.290191 0.400000 +v 1.369772 -7.369428 0.400000 +v 1.290595 -7.434469 0.400000 +v 1.200250 -7.482813 0.400000 +v 1.102211 -7.512602 0.400000 +v 1.000243 -7.522693 0.400000 +v 0.898266 -7.512697 0.400000 +v 0.800198 -7.482998 0.400000 +v 0.709809 -7.434738 0.400000 +v 0.630572 -7.369771 0.400000 +v 0.565531 -7.290595 0.400000 +v 0.517187 -7.200250 0.400000 +v 0.487397 -7.102210 0.400000 +v 0.477307 -7.000242 0.400000 +v 0.487303 -6.898265 0.400000 +v 0.517002 -6.800198 0.400000 +v 0.565262 -6.709808 0.400000 +v 0.630229 -6.630571 0.400000 +v 0.709406 -6.565531 0.400000 +v 0.799750 -6.517187 0.400000 +v 0.897790 -6.487397 0.400000 +v 0.999758 -6.477307 0.400000 +v 1.101735 -6.487303 0.400000 +v 1.199803 -6.517002 0.400000 +v 1.290192 -6.565262 0.400000 +v 1.369429 -6.630229 0.400000 +v 1.434469 -6.709406 0.400000 +v 1.260682 -6.825644 1.400000 +v 1.221657 -6.778137 1.400000 +v 1.174115 -6.739157 1.400000 +v 1.119882 -6.710201 1.400000 +v 1.061041 -6.692382 1.400000 +v 0.999855 -6.686384 1.400000 +v 0.938674 -6.692439 1.400000 +v 0.879850 -6.710312 1.400000 +v 0.825643 -6.739318 1.400000 +v 0.778137 -6.778343 1.400000 +v 0.739157 -6.825885 1.400000 +v 0.710201 -6.880119 1.400000 +v 0.692382 -6.938959 1.400000 +v 0.686384 -7.000145 1.400000 +v 0.692438 -7.061326 1.400000 +v 0.710312 -7.120150 1.400000 +v 0.739319 -7.174356 1.400000 +v 0.778343 -7.221863 1.400000 +v 0.825885 -7.260843 1.400000 +v 0.880119 -7.289799 1.400000 +v 0.938959 -7.307618 1.400000 +v 1.000146 -7.313616 1.400000 +v 1.061326 -7.307561 1.400000 +v 1.120150 -7.289688 1.400000 +v 1.174357 -7.260681 1.400000 +v 1.221863 -7.221657 1.400000 +v 1.260843 -7.174115 1.400000 +v 1.289799 -7.119881 1.400000 +v 1.307618 -7.061040 1.400000 +v 1.313616 -6.999855 1.400000 +v 1.307562 -6.938673 1.400000 +v 1.289688 -6.879850 1.400000 +v 1.579375 -6.759700 1.400000 +v 1.615123 -6.877347 1.400000 +v 1.627232 -6.999709 1.400000 +v 1.615237 -7.122081 1.400000 +v 1.579598 -7.239762 1.400000 +v 1.521686 -7.348229 1.400000 +v 1.443726 -7.443314 1.400000 +v 1.348714 -7.521362 1.400000 +v 1.240300 -7.579375 1.400000 +v 1.122653 -7.615123 1.400000 +v 1.000291 -7.627232 1.400000 +v 0.877919 -7.615237 1.400000 +v 0.760238 -7.579598 1.400000 +v 0.651771 -7.521686 1.400000 +v 0.556686 -7.443726 1.400000 +v 0.478637 -7.348713 1.400000 +v 0.420624 -7.240300 1.400000 +v 0.384877 -7.122652 1.400000 +v 0.372768 -7.000291 1.400000 +v 0.384763 -6.877918 1.400000 +v 0.420402 -6.760237 1.400000 +v 0.478314 -6.651770 1.400000 +v 0.556275 -6.556685 1.400000 +v 0.651287 -6.478637 1.400000 +v 0.759700 -6.420624 1.400000 +v 0.877348 -6.384877 1.400000 +v 0.999710 -6.372768 1.400000 +v 1.122082 -6.384763 1.400000 +v 1.239763 -6.420402 1.400000 +v 1.348230 -6.478314 1.400000 +v 1.443315 -6.556275 1.400000 +v 1.521363 -6.651287 1.400000 +v 1.521363 -6.651287 2.200000 +v 1.443315 -6.556275 2.100000 +v 1.348230 -6.478314 2.200000 +v 1.239763 -6.420402 2.100000 +v 1.122082 -6.384764 2.200000 +v 0.999710 -6.372768 2.100000 +v 0.877348 -6.384877 2.200000 +v 0.759700 -6.420624 2.100000 +v 0.651287 -6.478637 2.200000 +v 0.556275 -6.556685 2.100000 +v 0.478314 -6.651770 2.200000 +v 0.420402 -6.760237 2.100000 +v 0.384763 -6.877918 2.200000 +v 0.372768 -7.000291 2.100000 +v 0.384877 -7.122652 2.200000 +v 0.420624 -7.240300 2.100000 +v 0.478637 -7.348713 2.200000 +v 0.556686 -7.443726 2.100000 +v 0.651771 -7.521686 2.200000 +v 0.760238 -7.579598 2.100000 +v 0.877919 -7.615237 2.200000 +v 1.000291 -7.627232 2.100000 +v 1.122653 -7.615123 2.200000 +v 1.240300 -7.579375 2.100000 +v 1.348714 -7.521362 2.200000 +v 1.443726 -7.443314 2.100000 +v 1.521686 -7.348229 2.200000 +v 1.579598 -7.239762 2.100000 +v 1.615237 -7.122081 2.200000 +v 1.627232 -6.999709 2.100000 +v 1.615123 -6.877347 2.200000 +v 1.579375 -6.759700 2.100000 +v 1.463500 -6.807760 2.100000 +v 1.492098 -6.901878 2.200000 +v 1.501786 -6.999767 2.100000 +v 1.492189 -7.097665 2.200000 +v 1.463679 -7.191810 2.100000 +v 1.417349 -7.278584 2.200000 +v 1.354981 -7.354651 2.100000 +v 1.278971 -7.417090 2.200000 +v 1.192240 -7.463500 2.100000 +v 1.098122 -7.492098 2.200000 +v 1.000233 -7.501786 2.100000 +v 0.902335 -7.492189 2.200000 +v 0.808190 -7.463678 2.100000 +v 0.721416 -7.417349 2.200000 +v 0.645349 -7.354980 2.100000 +v 0.582910 -7.278971 2.200000 +v 0.536500 -7.192240 2.100000 +v 0.507901 -7.098122 2.200000 +v 0.498214 -7.000233 2.100000 +v 0.507811 -6.902335 2.200000 +v 0.536322 -6.808190 2.100000 +v 0.582651 -6.721416 2.200000 +v 0.645020 -6.645349 2.100000 +v 0.721030 -6.582910 2.200000 +v 0.807760 -6.536500 2.100000 +v 0.901879 -6.507901 2.200000 +v 0.999768 -6.498215 2.100000 +v 1.097666 -6.507811 2.200000 +v 1.191810 -6.536322 2.100000 +v 1.278584 -6.582652 2.200000 +v 1.354652 -6.645020 2.100000 +v 1.417090 -6.721030 2.200000 +v 1.417090 -6.721030 2.000000 +v 1.354652 -6.645020 2.000000 +v 1.278584 -6.582652 2.000000 +v 1.191810 -6.536322 2.000000 +v 1.097666 -6.507811 2.000000 +v 0.999768 -6.498215 2.000000 +v 0.901879 -6.507901 2.000000 +v 0.807760 -6.536500 2.000000 +v 0.721030 -6.582910 2.000000 +v 0.645020 -6.645349 2.000000 +v 0.582651 -6.721416 2.000000 +v 0.536322 -6.808190 2.000000 +v 0.507811 -6.902335 2.000000 +v 0.498214 -7.000233 2.000000 +v 0.507901 -7.098122 2.000000 +v 0.536500 -7.192240 2.000000 +v 0.582910 -7.278971 2.000000 +v 0.645349 -7.354980 2.000000 +v 0.721416 -7.417349 2.000000 +v 0.808190 -7.463678 2.000000 +v 0.902335 -7.492189 2.000000 +v 1.000233 -7.501786 2.000000 +v 1.098122 -7.492098 2.000000 +v 1.192240 -7.463500 2.000000 +v 1.278971 -7.417090 2.000000 +v 1.354981 -7.354651 2.000000 +v 1.417349 -7.278584 2.000000 +v 1.463679 -7.191810 2.000000 +v 1.492189 -7.097665 2.000000 +v 1.501786 -6.999767 2.000000 +v 1.492098 -6.901878 2.000000 +v 1.463500 -6.807760 2.000000 +v 1.370800 -6.846208 2.000000 +v 1.393679 -6.921503 2.000000 +v 1.401428 -6.999814 2.000000 +v 1.393752 -7.078132 2.000000 +v 1.370943 -7.153448 2.000000 +v 1.333879 -7.222867 2.000000 +v 1.283985 -7.283721 2.000000 +v 1.223177 -7.333672 2.000000 +v 1.153792 -7.370800 2.000000 +v 1.078498 -7.393679 2.000000 +v 1.000186 -7.401429 2.000000 +v 0.921868 -7.393752 2.000000 +v 0.846552 -7.370943 2.000000 +v 0.777133 -7.333879 2.000000 +v 0.716279 -7.283985 2.000000 +v 0.666328 -7.223176 2.000000 +v 0.629200 -7.153792 2.000000 +v 0.606321 -7.078497 2.000000 +v 0.598572 -7.000186 2.000000 +v 0.606248 -6.921868 2.000000 +v 0.629057 -6.846552 2.000000 +v 0.666121 -6.777133 2.000000 +v 0.716016 -6.716279 2.000000 +v 0.776824 -6.666327 2.000000 +v 0.846208 -6.629200 2.000000 +v 0.921503 -6.606321 2.000000 +v 0.999814 -6.598572 2.000000 +v 1.078133 -6.606248 2.000000 +v 1.153448 -6.629057 2.000000 +v 1.222867 -6.666121 2.000000 +v 1.283721 -6.716016 2.000000 +v 1.333672 -6.776824 2.000000 +v 1.200204 -6.866094 2.000000 +v 1.170233 -6.829609 2.000000 +v 1.133720 -6.799673 2.000000 +v 1.092069 -6.777434 2.000000 +v 1.046880 -6.763749 2.000000 +v 0.999888 -6.759143 2.000000 +v 0.952902 -6.763793 2.000000 +v 0.907725 -6.777520 2.000000 +v 0.866094 -6.799797 2.000000 +v 0.829609 -6.829767 2.000000 +v 0.799673 -6.866280 2.000000 +v 0.777434 -6.907931 2.000000 +v 0.763749 -6.953121 2.000000 +v 0.759143 -7.000112 2.000000 +v 0.763793 -7.047099 2.000000 +v 0.777520 -7.092275 2.000000 +v 0.799797 -7.133906 2.000000 +v 0.829767 -7.170391 2.000000 +v 0.866280 -7.200327 2.000000 +v 0.907931 -7.222566 2.000000 +v 0.953121 -7.236251 2.000000 +v 1.000112 -7.240857 2.000000 +v 1.047099 -7.236207 2.000000 +v 1.092275 -7.222480 2.000000 +v 1.133906 -7.200203 2.000000 +v 1.170391 -7.170233 2.000000 +v 1.200328 -7.133720 2.000000 +v 1.222566 -7.092069 2.000000 +v 1.236251 -7.046879 2.000000 +v 1.240857 -6.999888 2.000000 +v 1.236207 -6.952901 2.000000 +v 1.222480 -6.907725 2.000000 +v 1.289224 -6.880042 2.039759 +v 1.307070 -6.938772 2.039759 +v 1.313114 -6.999855 2.039759 +v 1.307126 -7.060943 2.039759 +v 1.289335 -7.119689 2.039759 +v 1.260426 -7.173836 2.039759 +v 1.221508 -7.221303 2.039759 +v 1.174078 -7.260264 2.039759 +v 1.119958 -7.289224 2.039759 +v 1.061228 -7.307069 2.039759 +v 1.000145 -7.313114 2.039759 +v 0.939057 -7.307126 2.039759 +v 0.880311 -7.289335 2.039759 +v 0.826164 -7.260426 2.039759 +v 0.778698 -7.221508 2.039759 +v 0.739736 -7.174078 2.039759 +v 0.710776 -7.119958 2.039759 +v 0.692931 -7.061228 2.039759 +v 0.686886 -7.000145 2.039759 +v 0.692874 -6.939057 2.039759 +v 0.710665 -6.880311 2.039759 +v 0.739574 -6.826164 2.039759 +v 0.778492 -6.778697 2.039759 +v 0.825922 -6.739736 2.039759 +v 0.880042 -6.710776 2.039759 +v 0.938772 -6.692930 2.039759 +v 0.999855 -6.686886 2.039759 +v 1.060943 -6.692874 2.039759 +v 1.119690 -6.710665 2.039759 +v 1.173836 -6.739574 2.039759 +v 1.221303 -6.778492 2.039759 +v 1.260265 -6.825922 2.039759 +v 1.182185 -6.878146 2.091180 +v 1.154912 -6.844944 2.091180 +v 1.121686 -6.817702 2.091180 +v 1.083783 -6.797465 2.091180 +v 1.042660 -6.785012 2.091180 +v 0.999899 -6.780820 2.091180 +v 0.957141 -6.785051 2.091180 +v 0.916030 -6.797543 2.091180 +v 0.878146 -6.817815 2.091180 +v 0.844945 -6.845088 2.091180 +v 0.817702 -6.878314 2.091180 +v 0.797465 -6.916217 2.091180 +v 0.785012 -6.957340 2.091180 +v 0.780820 -7.000102 2.091180 +v 0.785051 -7.042860 2.091180 +v 0.797543 -7.083971 2.091180 +v 0.817815 -7.121854 2.091180 +v 0.845088 -7.155056 2.091180 +v 0.878315 -7.182298 2.091180 +v 0.916217 -7.202535 2.091180 +v 0.957340 -7.214988 2.091180 +v 1.000102 -7.219180 2.091180 +v 1.042860 -7.214949 2.091180 +v 1.083971 -7.202457 2.091180 +v 1.121855 -7.182185 2.091180 +v 1.155056 -7.154912 2.091180 +v 1.182298 -7.121685 2.091180 +v 1.202535 -7.083783 2.091180 +v 1.214988 -7.042660 2.091180 +v 1.219180 -6.999898 2.091180 +v 1.214949 -6.957140 2.091180 +v 1.202457 -6.916029 2.091180 +v 1.110607 -6.911092 2.251494 +v 1.095922 -6.891228 2.090222 +v 0.905151 -6.891228 2.090222 +v 0.890444 -6.911092 2.251494 +v 1.110607 -7.092502 2.251494 +v 1.095922 -7.112367 2.090222 +v 0.905151 -7.112367 2.090222 +v 0.890444 -7.092502 2.251494 +v 0.890444 -7.092502 2.386104 +v 1.110607 -7.092502 2.386104 +v 0.890444 -6.911092 2.386104 +v 1.110607 -6.911092 2.386104 +v 1.110607 -6.911092 2.520714 +v 0.890444 -6.911092 2.520714 +v 1.110607 -7.092502 2.520714 +v 0.890444 -7.092502 2.520714 +v 1.256450 -6.911092 2.386104 +v 1.256450 -7.092502 2.386104 +v 1.256450 -7.092502 2.251494 +v 1.256450 -6.911092 2.251494 +v 0.744601 -6.911092 2.386104 +v 0.744601 -7.092502 2.386104 +v 0.744601 -7.092502 2.251494 +v 0.744601 -6.911092 2.251494 +v 1.000536 -6.891228 2.090222 +v 1.000536 -7.112367 2.090222 +v 1.095922 -7.001797 2.090222 +v 0.905151 -7.001797 2.090222 +v 1.000536 -7.001797 2.090222 +v 0.905151 -6.946513 2.090222 +v 0.905151 -7.057082 2.090222 +v 1.095922 -6.946513 2.090222 +v 1.095922 -7.057082 2.090222 +v 1.048229 -7.112367 2.090222 +v 0.952844 -7.112367 2.090222 +v 1.048229 -6.891228 2.090222 +v 0.952844 -6.891228 2.090222 +v 1.000536 -7.057082 2.090222 +v 1.048229 -7.001797 2.090222 +v 0.952844 -7.001797 2.090222 +v 1.000536 -6.946513 2.090222 +v 0.952844 -6.946513 2.090222 +v 0.952844 -7.057082 2.090222 +v 1.048229 -7.057082 2.090222 +v 1.048229 -6.946513 2.090222 +v 0.890444 -6.911092 2.427350 +v 1.110607 -6.911092 2.427350 +v 1.110607 -7.092502 2.427350 +v 0.890444 -7.092502 2.427350 +v 1.183528 -7.092502 2.251494 +v 1.183528 -7.092502 2.386104 +v 1.183528 -6.911092 2.386104 +v 1.183528 -6.911092 2.251494 +v 0.817523 -6.911092 2.251494 +v 0.817523 -6.911092 2.386104 +v 0.817523 -7.092502 2.386104 +v 0.817523 -7.092502 2.251494 +v 0.772568 -7.092502 2.251494 +v 0.772568 -6.911092 2.251494 +v 0.772568 -7.092502 2.386104 +v 0.772568 -6.911092 2.386104 +v 1.229380 -6.911092 2.251494 +v 1.229380 -7.092502 2.251494 +v 1.229380 -6.911092 2.386104 +v 1.229380 -7.092502 2.386104 +v 0.890444 -7.092502 2.487933 +v 0.890444 -6.911092 2.487933 +v 1.110607 -6.911092 2.487933 +v 1.110607 -7.092502 2.487933 +v 1.347575 -6.767525 0.900000 +v 1.386250 -6.839800 0.900000 +v 1.295543 -6.704183 0.900000 +v 1.232153 -6.652210 0.900000 +v 1.159842 -6.613602 0.900000 +v 1.081388 -6.589842 0.900000 +v 0.999806 -6.581845 0.900000 +v 0.918232 -6.589918 0.900000 +v 0.839800 -6.613750 0.900000 +v 0.767525 -6.652425 0.900000 +v 0.704183 -6.704457 0.900000 +v 0.652209 -6.767847 0.900000 +v 0.613601 -6.840158 0.900000 +v 0.589842 -6.918612 0.900000 +v 0.581845 -7.000194 0.900000 +v 0.589918 -7.081768 0.900000 +v 0.613750 -7.160200 0.900000 +v 0.652425 -7.232476 0.900000 +v 0.704457 -7.295817 0.900000 +v 0.767847 -7.347791 0.900000 +v 0.840158 -7.386399 0.900000 +v 0.918612 -7.410158 0.900000 +v 1.000194 -7.418155 0.900000 +v 1.081768 -7.410082 0.900000 +v 1.160200 -7.386250 0.900000 +v 1.232476 -7.347575 0.900000 +v 1.295817 -7.295543 0.900000 +v 1.347791 -7.232153 0.900000 +v 1.386399 -7.159842 0.900000 +v 1.410158 -7.081388 0.900000 +v 1.418155 -6.999806 0.900000 +v 1.410082 -6.918231 0.900000 +v 1.337969 -6.859825 1.150000 +v 1.358822 -6.928452 1.150000 +v 1.365885 -6.999830 1.150000 +v 1.358888 -7.071214 1.150000 +v 1.338099 -7.139861 1.150000 +v 1.304317 -7.203134 1.150000 +v 1.258840 -7.258600 1.150000 +v 1.203416 -7.304128 1.150000 +v 1.140175 -7.337969 1.150000 +v 1.071547 -7.358822 1.150000 +v 1.000170 -7.365885 1.150000 +v 0.928786 -7.358888 1.150000 +v 0.860139 -7.338099 1.150000 +v 0.796866 -7.304317 1.150000 +v 0.741400 -7.258840 1.150000 +v 0.695872 -7.203416 1.150000 +v 0.662031 -7.140175 1.150000 +v 0.641178 -7.071547 1.150000 +v 0.634115 -7.000170 1.150000 +v 0.641112 -6.928786 1.150000 +v 0.661901 -6.860138 1.150000 +v 0.695683 -6.796866 1.150000 +v 0.741160 -6.741400 1.150000 +v 0.796584 -6.695872 1.150000 +v 0.859825 -6.662031 1.150000 +v 0.928453 -6.641178 1.150000 +v 0.999831 -6.634115 1.150000 +v 1.071215 -6.641112 1.150000 +v 1.139862 -6.661901 1.150000 +v 1.203134 -6.695683 1.150000 +v 1.258600 -6.741160 1.150000 +v 1.304128 -6.796584 1.150000 +v 1.282405 -6.811114 1.275000 +v 1.313828 -6.869837 1.275000 +v 1.240129 -6.759649 1.275000 +v 1.188625 -6.717421 1.275000 +v 1.129872 -6.686051 1.275000 +v 1.066128 -6.666747 1.275000 +v 0.999843 -6.660249 1.275000 +v 0.933564 -6.666808 1.275000 +v 0.869838 -6.686172 1.275000 +v 0.811114 -6.717595 1.275000 +v 0.759649 -6.759871 1.275000 +v 0.717420 -6.811376 1.275000 +v 0.686051 -6.870129 1.275000 +v 0.666747 -6.933872 1.275000 +v 0.660249 -7.000157 1.275000 +v 0.666808 -7.066437 1.275000 +v 0.686172 -7.130163 1.275000 +v 0.717595 -7.188887 1.275000 +v 0.759871 -7.240352 1.275000 +v 0.811376 -7.282580 1.275000 +v 0.870129 -7.313949 1.275000 +v 0.933873 -7.333253 1.275000 +v 1.000158 -7.339751 1.275000 +v 1.066437 -7.333192 1.275000 +v 1.130163 -7.313828 1.275000 +v 1.188887 -7.282405 1.275000 +v 1.240352 -7.240129 1.275000 +v 1.282580 -7.188624 1.275000 +v 1.313949 -7.129871 1.275000 +v 1.333253 -7.066127 1.275000 +v 1.339751 -6.999842 1.275000 +v 1.333192 -6.933563 1.275000 +v 1.521363 -6.651287 1.557290 +v 1.579375 -6.759700 1.507290 +v 1.443315 -6.556275 1.507290 +v 1.348230 -6.478314 1.557290 +v 1.239763 -6.420402 1.507290 +v 1.122082 -6.384763 1.557290 +v 0.999710 -6.372768 1.507290 +v 0.877348 -6.384877 1.557290 +v 0.759700 -6.420624 1.507290 +v 0.651287 -6.478637 1.557290 +v 0.556275 -6.556685 1.507290 +v 0.478314 -6.651770 1.557290 +v 0.420402 -6.760237 1.507290 +v 0.384763 -6.877918 1.557290 +v 0.372768 -7.000291 1.507290 +v 0.384877 -7.122652 1.557290 +v 0.420624 -7.240300 1.507290 +v 0.478637 -7.348713 1.557290 +v 0.556686 -7.443726 1.507290 +v 0.651771 -7.521686 1.557290 +v 0.760238 -7.579598 1.507290 +v 0.877919 -7.615237 1.557290 +v 1.000291 -7.627232 1.507290 +v 1.122653 -7.615123 1.557290 +v 1.240300 -7.579375 1.507290 +v 1.348714 -7.521362 1.557290 +v 1.443726 -7.443314 1.507290 +v 1.521686 -7.348229 1.557290 +v 1.579598 -7.239762 1.507290 +v 1.615237 -7.122081 1.557290 +v 1.627232 -6.999709 1.507290 +v 1.615123 -6.877347 1.557290 +v 1.783787 -6.674918 0.016561 +v 1.705307 -6.528257 0.016561 +v 1.599722 -6.399723 0.016561 +v 1.471090 -6.294257 0.016561 +v 1.324355 -6.215912 0.016561 +v 1.165154 -6.167699 0.016561 +v 0.999607 -6.151472 0.016561 +v 0.834075 -6.167853 0.016561 +v 0.674919 -6.216213 0.016561 +v 0.528256 -6.294693 0.016561 +v 0.399722 -6.400278 0.016561 +v 0.294256 -6.528910 0.016561 +v 0.215912 -6.675646 0.016561 +v 0.167699 -6.834846 0.016561 +v 0.151472 -7.000393 0.016561 +v 0.167853 -7.165926 0.016561 +v 0.216213 -7.325081 0.016561 +v 0.294693 -7.471744 0.016561 +v 0.400278 -7.600278 0.016561 +v 0.528911 -7.705744 0.016561 +v 0.675646 -7.784088 0.016561 +v 0.834847 -7.832301 0.016561 +v 1.000394 -7.848528 0.016561 +v 1.165926 -7.832147 0.016561 +v 1.325082 -7.783787 0.016561 +v 1.471745 -7.705306 0.016561 +v 1.600279 -7.599721 0.016561 +v 1.705745 -7.471089 0.016561 +v 1.784088 -7.324354 0.016561 +v 1.832301 -7.165153 0.016561 +v 1.848528 -6.999606 0.016561 +v 1.832147 -6.834074 0.016561 +v 1.783787 -6.674918 0.088376 +v 1.832147 -6.834074 0.088376 +v 1.848528 -6.999606 0.088376 +v 1.832301 -7.165153 0.088376 +v 1.784088 -7.324354 0.088376 +v 1.705745 -7.471089 0.088376 +v 1.600279 -7.599721 0.088376 +v 1.471745 -7.705306 0.088376 +v 1.325082 -7.783787 0.088376 +v 1.165926 -7.832147 0.088376 +v 1.000394 -7.848528 0.088376 +v 0.834847 -7.832301 0.088376 +v 0.675646 -7.784088 0.088376 +v 0.528911 -7.705744 0.088376 +v 0.400278 -7.600278 0.088376 +v 0.294693 -7.471744 0.088376 +v 0.216213 -7.325081 0.088376 +v 0.167853 -7.165926 0.088376 +v 0.151472 -7.000393 0.088376 +v 0.167699 -6.834846 0.088376 +v 0.215912 -6.675646 0.088376 +v 0.294256 -6.528910 0.088376 +v 0.399722 -6.400278 0.088376 +v 0.528256 -6.294693 0.088376 +v 0.674919 -6.216213 0.088376 +v 0.834075 -6.167853 0.088376 +v 0.999607 -6.151472 0.088376 +v 1.165154 -6.167699 0.088376 +v 1.324355 -6.215912 0.088376 +v 1.471090 -6.294257 0.088376 +v 1.599722 -6.399723 0.088376 +v 1.705307 -6.528257 0.088376 +v 1.000000 -7.000000 0.000000 +usemtl Material +s 1 +f 64 678 709 33 +f 31 648 647 32 +f 30 649 648 31 +f 30 29 650 649 +f 28 651 650 29 +f 27 652 651 28 +f 26 653 652 27 +f 26 25 654 653 +f 24 655 654 25 +f 24 23 656 655 +f 22 657 656 23 +f 21 658 657 22 +f 20 659 658 21 +f 20 19 660 659 +f 18 661 660 19 +f 18 17 662 661 +f 16 663 662 17 +f 16 15 664 663 +f 14 665 664 15 +f 14 13 666 665 +f 12 667 666 13 +f 11 668 667 12 +f 10 669 668 11 +f 10 9 670 669 +f 9 8 671 670 +f 7 672 671 8 +f 7 6 673 672 +f 5 674 673 6 +f 5 4 675 674 +f 3 676 675 4 +f 3 2 677 676 +f 2 1 646 677 +f 63 64 65 66 +f 62 63 66 67 +f 62 67 68 61 +f 60 61 68 69 +f 60 69 70 59 +f 58 59 70 71 +f 58 71 72 57 +f 56 57 72 73 +f 55 56 73 74 +f 55 74 75 54 +f 54 75 76 53 +f 53 76 77 52 +f 51 52 77 78 +f 51 78 79 50 +f 49 50 79 80 +f 49 80 81 48 +f 47 48 81 82 +f 47 82 83 46 +f 45 46 83 84 +f 45 84 85 44 +f 44 85 86 43 +f 43 86 87 42 +f 41 42 87 88 +f 41 88 89 40 +f 39 40 89 90 +f 39 90 91 38 +f 38 91 92 37 +f 37 92 93 36 +f 35 36 93 94 +f 35 94 95 34 +f 34 95 96 33 +f 33 96 65 64 +f 96 97 128 65 +f 95 98 97 96 +f 94 99 98 95 +f 94 93 100 99 +f 92 101 100 93 +f 91 102 101 92 +f 90 103 102 91 +f 90 89 104 103 +f 88 105 104 89 +f 88 87 106 105 +f 86 107 106 87 +f 85 108 107 86 +f 84 109 108 85 +f 84 83 110 109 +f 82 111 110 83 +f 82 81 112 111 +f 80 113 112 81 +f 80 79 114 113 +f 78 115 114 79 +f 78 77 116 115 +f 76 117 116 77 +f 75 118 117 76 +f 74 119 118 75 +f 74 73 120 119 +f 73 72 121 120 +f 71 122 121 72 +f 71 70 123 122 +f 69 124 123 70 +f 69 68 125 124 +f 67 126 125 68 +f 67 66 127 126 +f 66 65 128 127 +f 127 128 129 130 +f 126 127 130 131 +f 126 131 132 125 +f 124 125 132 133 +f 124 133 134 123 +f 122 123 134 135 +f 122 135 136 121 +f 120 121 136 137 +f 119 120 137 138 +f 119 138 139 118 +f 118 139 140 117 +f 117 140 141 116 +f 115 116 141 142 +f 115 142 143 114 +f 113 114 143 144 +f 113 144 145 112 +f 111 112 145 146 +f 111 146 147 110 +f 109 110 147 148 +f 109 148 149 108 +f 108 149 150 107 +f 107 150 151 106 +f 105 106 151 152 +f 105 152 153 104 +f 103 104 153 154 +f 103 154 155 102 +f 102 155 156 101 +f 101 156 157 100 +f 99 100 157 158 +f 99 158 159 98 +f 98 159 160 97 +f 97 160 129 128 +f 160 518 519 129 +f 159 520 518 160 +f 158 521 520 159 +f 158 157 522 521 +f 156 523 522 157 +f 155 524 523 156 +f 154 525 524 155 +f 154 153 526 525 +f 152 527 526 153 +f 152 151 528 527 +f 150 529 528 151 +f 149 530 529 150 +f 148 531 530 149 +f 148 147 532 531 +f 146 533 532 147 +f 146 145 534 533 +f 144 535 534 145 +f 144 143 536 535 +f 142 537 536 143 +f 142 141 538 537 +f 140 539 538 141 +f 139 540 539 140 +f 138 541 540 139 +f 138 137 542 541 +f 137 136 543 542 +f 135 544 543 136 +f 135 134 545 544 +f 133 546 545 134 +f 133 132 547 546 +f 131 548 547 132 +f 131 130 549 548 +f 130 129 519 549 +f 191 192 193 194 +f 190 191 194 195 +f 190 195 196 189 +f 188 189 196 197 +f 188 197 198 187 +f 186 187 198 199 +f 186 199 200 185 +f 184 185 200 201 +f 183 184 201 202 +f 183 202 203 182 +f 182 203 204 181 +f 181 204 205 180 +f 179 180 205 206 +f 179 206 207 178 +f 177 178 207 208 +f 177 208 209 176 +f 175 176 209 210 +f 175 210 211 174 +f 173 174 211 212 +f 173 212 213 172 +f 172 213 214 171 +f 171 214 215 170 +f 169 170 215 216 +f 169 216 217 168 +f 167 168 217 218 +f 167 218 219 166 +f 166 219 220 165 +f 165 220 221 164 +f 163 164 221 222 +f 163 222 223 162 +f 162 223 224 161 +f 161 224 193 192 +f 224 614 615 193 +f 223 616 614 224 +f 222 617 616 223 +f 222 221 618 617 +f 220 619 618 221 +f 219 620 619 220 +f 218 621 620 219 +f 218 217 622 621 +f 216 623 622 217 +f 216 215 624 623 +f 214 625 624 215 +f 213 626 625 214 +f 212 627 626 213 +f 212 211 628 627 +f 210 629 628 211 +f 210 209 630 629 +f 208 631 630 209 +f 208 207 632 631 +f 206 633 632 207 +f 206 205 634 633 +f 204 635 634 205 +f 203 636 635 204 +f 202 637 636 203 +f 202 201 638 637 +f 201 200 639 638 +f 199 640 639 200 +f 199 198 641 640 +f 197 642 641 198 +f 197 196 643 642 +f 195 644 643 196 +f 195 194 645 644 +f 194 193 615 645 +f 255 256 257 258 +f 254 255 258 259 +f 254 259 260 253 +f 252 253 260 261 +f 252 261 262 251 +f 250 251 262 263 +f 250 263 264 249 +f 248 249 264 265 +f 247 248 265 266 +f 247 266 267 246 +f 246 267 268 245 +f 245 268 269 244 +f 243 244 269 270 +f 243 270 271 242 +f 241 242 271 272 +f 241 272 273 240 +f 239 240 273 274 +f 239 274 275 238 +f 237 238 275 276 +f 237 276 277 236 +f 236 277 278 235 +f 235 278 279 234 +f 233 234 279 280 +f 233 280 281 232 +f 231 232 281 282 +f 231 282 283 230 +f 230 283 284 229 +f 229 284 285 228 +f 227 228 285 286 +f 227 286 287 226 +f 226 287 288 225 +f 225 288 257 256 +f 288 289 320 257 +f 287 290 289 288 +f 286 291 290 287 +f 286 285 292 291 +f 284 293 292 285 +f 283 294 293 284 +f 282 295 294 283 +f 282 281 296 295 +f 280 297 296 281 +f 280 279 298 297 +f 278 299 298 279 +f 277 300 299 278 +f 276 301 300 277 +f 276 275 302 301 +f 274 303 302 275 +f 274 273 304 303 +f 272 305 304 273 +f 272 271 306 305 +f 270 307 306 271 +f 270 269 308 307 +f 268 309 308 269 +f 267 310 309 268 +f 266 311 310 267 +f 266 265 312 311 +f 265 264 313 312 +f 263 314 313 264 +f 263 262 315 314 +f 261 316 315 262 +f 261 260 317 316 +f 259 318 317 260 +f 259 258 319 318 +f 258 257 320 319 +f 319 320 321 322 +f 318 319 322 323 +f 318 323 324 317 +f 316 317 324 325 +f 316 325 326 315 +f 314 315 326 327 +f 314 327 328 313 +f 312 313 328 329 +f 311 312 329 330 +f 311 330 331 310 +f 310 331 332 309 +f 309 332 333 308 +f 307 308 333 334 +f 307 334 335 306 +f 305 306 335 336 +f 305 336 337 304 +f 303 304 337 338 +f 303 338 339 302 +f 301 302 339 340 +f 301 340 341 300 +f 300 341 342 299 +f 299 342 343 298 +f 297 298 343 344 +f 297 344 345 296 +f 295 296 345 346 +f 295 346 347 294 +f 294 347 348 293 +f 293 348 349 292 +f 291 292 349 350 +f 291 350 351 290 +f 290 351 352 289 +f 289 352 321 320 +f 352 353 384 321 +f 351 354 353 352 +f 350 355 354 351 +f 350 349 356 355 +f 348 357 356 349 +f 347 358 357 348 +f 346 359 358 347 +f 346 345 360 359 +f 344 361 360 345 +f 344 343 362 361 +f 342 363 362 343 +f 341 364 363 342 +f 340 365 364 341 +f 340 339 366 365 +f 338 367 366 339 +f 338 337 368 367 +f 336 369 368 337 +f 336 335 370 369 +f 334 371 370 335 +f 334 333 372 371 +f 332 373 372 333 +f 331 374 373 332 +f 330 375 374 331 +f 330 329 376 375 +f 329 328 377 376 +f 327 378 377 328 +f 327 326 379 378 +f 325 380 379 326 +f 325 324 381 380 +f 323 382 381 324 +f 323 322 383 382 +f 322 321 384 383 +f 383 384 385 386 +f 382 383 386 387 +f 382 387 388 381 +f 380 381 388 389 +f 380 389 390 379 +f 378 379 390 391 +f 378 391 392 377 +f 376 377 392 393 +f 375 376 393 394 +f 375 394 395 374 +f 374 395 396 373 +f 373 396 397 372 +f 371 372 397 398 +f 371 398 399 370 +f 369 370 399 400 +f 369 400 401 368 +f 367 368 401 402 +f 367 402 403 366 +f 365 366 403 404 +f 365 404 405 364 +f 364 405 406 363 +f 363 406 407 362 +f 361 362 407 408 +f 361 408 409 360 +f 359 360 409 410 +f 359 410 411 358 +f 358 411 412 357 +f 357 412 413 356 +f 355 356 413 414 +f 355 414 415 354 +f 354 415 416 353 +f 353 416 385 384 +f 416 417 448 385 +f 415 418 417 416 +f 414 419 418 415 +f 414 413 420 419 +f 412 421 420 413 +f 411 422 421 412 +f 410 423 422 411 +f 410 409 424 423 +f 408 425 424 409 +f 408 407 426 425 +f 406 427 426 407 +f 405 428 427 406 +f 404 429 428 405 +f 404 403 430 429 +f 402 431 430 403 +f 402 401 432 431 +f 400 433 432 401 +f 400 399 434 433 +f 398 435 434 399 +f 398 397 436 435 +f 396 437 436 397 +f 395 438 437 396 +f 394 439 438 395 +f 394 393 440 439 +f 393 392 441 440 +f 391 442 441 392 +f 391 390 443 442 +f 389 444 443 390 +f 389 388 445 444 +f 387 446 445 388 +f 387 386 447 446 +f 386 385 448 447 +f 449 450 484 +f 456 455 483 +f 453 454 481 +f 450 480 493 484 +f 451 478 452 +f 456 453 458 457 +f 449 452 459 460 +f 460 459 494 495 +f 457 458 496 497 +f 458 460 495 496 +f 459 457 497 494 +f 462 464 463 461 +f 458 453 498 499 +f 460 458 499 500 +f 449 460 500 501 +f 453 449 501 498 +f 467 468 465 466 +f 459 452 502 503 +f 457 459 503 504 +f 456 457 504 505 +f 452 456 505 502 +f 472 471 470 469 +f 476 456 479 +f 476 456 452 +f 454 482 492 481 +f 455 479 491 483 +f 451 485 490 478 +f 475 449 480 +f 475 449 453 +f 474 453 482 +f 474 453 456 +f 473 452 485 +f 473 452 449 +f 485 451 452 +f 482 454 453 +f 480 450 449 +f 473 485 490 489 +f 477 489 490 488 +f 476 488 490 478 +f 476 479 491 488 +f 477 488 491 486 +f 474 486 491 483 +f 474 482 492 486 +f 477 486 492 487 +f 475 487 492 481 +f 479 455 456 +f 478 476 452 +f 475 480 493 487 +f 477 487 493 489 +f 473 489 493 484 +f 481 475 453 +f 483 474 456 +f 484 473 449 +f 434 435 483 455 +f 435 436 483 +f 436 437 483 +f 437 438 474 483 +f 438 439 482 474 +f 439 440 482 +f 440 441 482 +f 441 442 454 482 +f 418 419 484 450 +f 419 420 484 +f 420 421 484 +f 421 422 473 484 +f 422 423 485 473 +f 423 424 485 +f 424 425 485 +f 425 426 451 485 +f 426 427 478 451 +f 417 418 450 480 +f 427 428 478 +f 428 429 478 +f 417 480 448 +f 447 448 480 +f 446 447 480 475 +f 445 446 475 481 +f 429 430 476 478 +f 430 431 479 476 +f 433 434 455 479 +f 442 443 481 454 +f 443 444 481 +f 444 445 481 +f 432 433 479 +f 431 432 479 +f 505 506 507 502 +f 504 508 506 505 +f 503 509 508 504 +f 502 507 509 503 +f 501 510 511 498 +f 500 512 510 501 +f 499 513 512 500 +f 498 511 513 499 +f 497 514 515 494 +f 495 516 517 496 +f 496 517 514 497 +f 494 515 516 495 +f 515 462 461 516 +f 517 463 464 514 +f 516 461 463 517 +f 514 464 462 515 +f 511 467 466 513 +f 513 466 465 512 +f 512 465 468 510 +f 510 468 467 511 +f 507 472 469 509 +f 509 469 470 508 +f 508 470 471 506 +f 506 471 472 507 +f 519 550 551 549 +f 549 551 552 548 +f 548 552 553 547 +f 547 553 554 546 +f 546 554 555 545 +f 545 555 556 544 +f 544 556 557 543 +f 543 557 558 542 +f 542 558 559 541 +f 541 559 560 540 +f 540 560 561 539 +f 539 561 562 538 +f 538 562 563 537 +f 537 563 564 536 +f 536 564 565 535 +f 535 565 566 534 +f 534 566 567 533 +f 533 567 568 532 +f 532 568 569 531 +f 531 569 570 530 +f 530 570 571 529 +f 529 571 572 528 +f 528 572 573 527 +f 527 573 574 526 +f 526 574 575 525 +f 525 575 576 524 +f 524 576 577 523 +f 523 577 578 522 +f 522 578 579 521 +f 521 579 580 520 +f 520 580 581 518 +f 518 581 550 519 +f 581 582 583 550 +f 580 584 582 581 +f 579 585 584 580 +f 578 586 585 579 +f 577 587 586 578 +f 576 588 587 577 +f 575 589 588 576 +f 574 590 589 575 +f 573 591 590 574 +f 572 592 591 573 +f 571 593 592 572 +f 570 594 593 571 +f 569 595 594 570 +f 568 596 595 569 +f 567 597 596 568 +f 566 598 597 567 +f 565 599 598 566 +f 564 600 599 565 +f 563 601 600 564 +f 562 602 601 563 +f 561 603 602 562 +f 560 604 603 561 +f 559 605 604 560 +f 558 606 605 559 +f 557 607 606 558 +f 556 608 607 557 +f 555 609 608 556 +f 554 610 609 555 +f 553 611 610 554 +f 552 612 611 553 +f 551 613 612 552 +f 550 583 613 551 +f 583 192 191 613 +f 613 191 190 612 +f 612 190 189 611 +f 611 189 188 610 +f 610 188 187 609 +f 609 187 186 608 +f 608 186 185 607 +f 607 185 184 606 +f 606 184 183 605 +f 605 183 182 604 +f 604 182 181 603 +f 603 181 180 602 +f 602 180 179 601 +f 601 179 178 600 +f 600 178 177 599 +f 599 177 176 598 +f 598 176 175 597 +f 597 175 174 596 +f 596 174 173 595 +f 595 173 172 594 +f 594 172 171 593 +f 593 171 170 592 +f 592 170 169 591 +f 591 169 168 590 +f 590 168 167 589 +f 589 167 166 588 +f 588 166 165 587 +f 587 165 164 586 +f 586 164 163 585 +f 585 163 162 584 +f 584 162 161 582 +f 582 161 192 583 +f 615 256 255 645 +f 645 255 254 644 +f 644 254 253 643 +f 643 253 252 642 +f 642 252 251 641 +f 641 251 250 640 +f 640 250 249 639 +f 639 249 248 638 +f 638 248 247 637 +f 637 247 246 636 +f 636 246 245 635 +f 635 245 244 634 +f 634 244 243 633 +f 633 243 242 632 +f 632 242 241 631 +f 631 241 240 630 +f 630 240 239 629 +f 629 239 238 628 +f 628 238 237 627 +f 627 237 236 626 +f 626 236 235 625 +f 625 235 234 624 +f 624 234 233 623 +f 623 233 232 622 +f 622 232 231 621 +f 621 231 230 620 +f 620 230 229 619 +f 619 229 228 618 +f 618 228 227 617 +f 617 227 226 616 +f 616 226 225 614 +f 614 225 256 615 +f 646 678 679 677 +f 677 679 680 676 +f 676 680 681 675 +f 675 681 682 674 +f 674 682 683 673 +f 673 683 684 672 +f 672 684 685 671 +f 671 685 686 670 +f 670 686 687 669 +f 669 687 688 668 +f 668 688 689 667 +f 667 689 690 666 +f 666 690 691 665 +f 665 691 692 664 +f 664 692 693 663 +f 663 693 694 662 +f 662 694 695 661 +f 661 695 696 660 +f 660 696 697 659 +f 659 697 698 658 +f 658 698 699 657 +f 657 699 700 656 +f 656 700 701 655 +f 655 701 702 654 +f 654 702 703 653 +f 653 703 704 652 +f 652 704 705 651 +f 651 705 706 650 +f 650 706 707 649 +f 649 707 708 648 +f 648 708 709 647 +f 646 1 32 647 +f 708 34 33 709 +f 707 35 34 708 +f 706 36 35 707 +f 705 37 36 706 +f 704 38 37 705 +f 703 39 38 704 +f 702 40 39 703 +f 701 41 40 702 +f 700 42 41 701 +f 699 43 42 700 +f 698 44 43 699 +f 697 45 44 698 +f 696 46 45 697 +f 695 47 46 696 +f 694 48 47 695 +f 693 49 48 694 +f 692 50 49 693 +f 691 51 50 692 +f 690 52 51 691 +f 689 53 52 690 +f 688 54 53 689 +f 687 55 54 688 +f 686 56 55 687 +f 685 57 56 686 +f 684 58 57 685 +f 683 59 58 684 +f 682 60 59 683 +f 681 61 60 682 +f 680 62 61 681 +f 679 63 62 680 +f 678 64 63 679 +f 678 646 647 709 +f 1 2 710 +f 2 3 710 +f 3 4 710 +f 4 5 710 +f 5 6 710 +f 6 7 710 +f 7 8 710 +f 8 9 710 +f 9 10 710 +f 10 11 710 +f 11 12 710 +f 12 13 710 +f 13 14 710 +f 14 15 710 +f 15 16 710 +f 16 17 710 +f 17 18 710 +f 18 19 710 +f 19 20 710 +f 20 21 710 +f 21 22 710 +f 22 23 710 +f 23 24 710 +f 24 25 710 +f 25 26 710 +f 26 27 710 +f 27 28 710 +f 28 29 710 +f 29 30 710 +f 30 31 710 +f 31 32 710 +f 32 1 710 diff --git a/Graph3D/Chess3D/pawn.obj b/Graph3D/Chess3D/pawn.obj new file mode 100644 index 0000000..9650472 --- /dev/null +++ b/Graph3D/Chess3D/pawn.obj @@ -0,0 +1,2406 @@ +# Blender3D v245 OBJ File: chess2.blend +# www.blender3d.org +v 7.600000 -4.400000 0.000000 +v 7.705525 -4.528583 0.000000 +v 7.783938 -4.675282 0.000000 +v 7.832224 -4.834460 0.000000 +v 7.848528 -5.000000 0.000000 +v 7.832224 -5.165540 0.000000 +v 7.783938 -5.324718 0.000000 +v 7.705525 -5.471417 0.000000 +v 7.600000 -5.600000 0.000000 +v 7.471417 -5.705525 0.000000 +v 7.324718 -5.783938 0.000000 +v 7.165539 -5.832224 0.000000 +v 7.000000 -5.848528 0.000000 +v 6.834460 -5.832224 0.000000 +v 6.675282 -5.783937 0.000000 +v 6.528583 -5.705525 0.000000 +v 6.400000 -5.599999 0.000000 +v 6.294474 -5.471416 0.000000 +v 6.216062 -5.324717 0.000000 +v 6.167776 -5.165539 0.000000 +v 6.151472 -4.999999 0.000000 +v 6.167776 -4.834459 0.000000 +v 6.216063 -4.675282 0.000000 +v 6.294475 -4.528582 0.000000 +v 6.400001 -4.399999 0.000000 +v 6.528584 -4.294474 0.000000 +v 6.675283 -4.216062 0.000000 +v 6.834462 -4.167776 0.000000 +v 7.000001 -4.151472 0.000000 +v 7.165541 -4.167777 0.000000 +v 7.324719 -4.216063 0.000000 +v 7.471418 -4.294476 0.000000 +v 7.471418 -4.294476 0.172243 +v 7.324719 -4.216063 0.172243 +v 7.165541 -4.167777 0.172243 +v 7.000001 -4.151472 0.172243 +v 6.834462 -4.167776 0.172243 +v 6.675283 -4.216062 0.172243 +v 6.528584 -4.294474 0.172243 +v 6.400001 -4.399999 0.172243 +v 6.294475 -4.528582 0.172243 +v 6.216063 -4.675282 0.172243 +v 6.167776 -4.834459 0.172243 +v 6.151472 -4.999999 0.172243 +v 6.167776 -5.165539 0.172243 +v 6.216062 -5.324717 0.172243 +v 6.294474 -5.471416 0.172243 +v 6.400000 -5.599999 0.172243 +v 6.528583 -5.705525 0.172243 +v 6.675282 -5.783937 0.172243 +v 6.834460 -5.832224 0.172243 +v 7.000000 -5.848528 0.172243 +v 7.165539 -5.832224 0.172243 +v 7.324718 -5.783938 0.172243 +v 7.471417 -5.705525 0.172243 +v 7.600000 -5.600000 0.172243 +v 7.705525 -5.471417 0.172243 +v 7.783938 -5.324718 0.172243 +v 7.832224 -5.165540 0.172243 +v 7.848528 -5.000000 0.172243 +v 7.832224 -4.834460 0.172243 +v 7.783938 -4.675282 0.172243 +v 7.705525 -4.528583 0.172243 +v 7.600000 -4.400000 0.172243 +v 7.480000 -4.520000 0.230606 +v 7.564420 -4.622867 0.230606 +v 7.627150 -4.740226 0.230606 +v 7.665779 -4.867568 0.230606 +v 7.678823 -5.000000 0.230606 +v 7.665779 -5.132432 0.230606 +v 7.627151 -5.259774 0.230606 +v 7.564420 -5.377133 0.230606 +v 7.480000 -5.480000 0.230606 +v 7.377133 -5.564420 0.230606 +v 7.259774 -5.627151 0.230606 +v 7.132432 -5.665779 0.230606 +v 7.000000 -5.678823 0.230606 +v 6.867568 -5.665779 0.230606 +v 6.740226 -5.627150 0.230606 +v 6.622866 -5.564420 0.230606 +v 6.520000 -5.480000 0.230606 +v 6.435579 -5.377133 0.230606 +v 6.372849 -5.259774 0.230606 +v 6.334221 -5.132431 0.230606 +v 6.321177 -5.000000 0.230606 +v 6.334221 -4.867568 0.230606 +v 6.372850 -4.740225 0.230606 +v 6.435580 -4.622866 0.230606 +v 6.520000 -4.520000 0.230606 +v 6.622867 -4.435579 0.230606 +v 6.740227 -4.372849 0.230606 +v 6.867569 -4.334221 0.230606 +v 7.000001 -4.321177 0.230606 +v 7.132433 -4.334221 0.230606 +v 7.259775 -4.372850 0.230606 +v 7.377135 -4.435580 0.230606 +v 7.424276 -4.365028 0.295909 +v 7.292247 -4.294456 0.295909 +v 7.148987 -4.250998 0.295909 +v 7.000001 -4.236325 0.295909 +v 6.851016 -4.250998 0.295909 +v 6.707755 -4.294456 0.295909 +v 6.575726 -4.365026 0.295909 +v 6.460001 -4.459999 0.295909 +v 6.365027 -4.575724 0.295909 +v 6.294456 -4.707753 0.295909 +v 6.250998 -4.851014 0.295909 +v 6.236325 -4.999999 0.295909 +v 6.250998 -5.148985 0.295909 +v 6.294456 -5.292245 0.295909 +v 6.365027 -5.424275 0.295909 +v 6.460000 -5.539999 0.295909 +v 6.575724 -5.634973 0.295909 +v 6.707754 -5.705544 0.295909 +v 6.851014 -5.749002 0.295909 +v 7.000000 -5.763675 0.295909 +v 7.148985 -5.749002 0.295909 +v 7.292246 -5.705544 0.295909 +v 7.424275 -5.634973 0.295909 +v 7.540000 -5.540000 0.295909 +v 7.634973 -5.424275 0.295909 +v 7.705544 -5.292246 0.295909 +v 7.749002 -5.148985 0.295909 +v 7.763675 -5.000000 0.295909 +v 7.749002 -4.851014 0.295909 +v 7.705544 -4.707754 0.295909 +v 7.634973 -4.575725 0.295909 +v 7.540000 -4.460000 0.295909 +v 7.270000 -4.730000 0.600000 +v 7.317486 -4.787862 0.600000 +v 7.352772 -4.853877 0.600000 +v 7.374501 -4.925507 0.600000 +v 7.381838 -5.000000 0.600000 +v 7.374501 -5.074493 0.600000 +v 7.352772 -5.146123 0.600000 +v 7.317486 -5.212138 0.600000 +v 7.270000 -5.270000 0.600000 +v 7.212138 -5.317486 0.600000 +v 7.146123 -5.352772 0.600000 +v 7.074493 -5.374501 0.600000 +v 7.000000 -5.381838 0.600000 +v 6.925507 -5.374501 0.600000 +v 6.853877 -5.352772 0.600000 +v 6.787862 -5.317486 0.600000 +v 6.730000 -5.270000 0.600000 +v 6.682513 -5.212137 0.600000 +v 6.647228 -5.146122 0.600000 +v 6.625499 -5.074492 0.600000 +v 6.618162 -5.000000 0.600000 +v 6.625499 -4.925507 0.600000 +v 6.647228 -4.853877 0.600000 +v 6.682514 -4.787862 0.600000 +v 6.730000 -4.730000 0.600000 +v 6.787863 -4.682513 0.600000 +v 6.853878 -4.647228 0.600000 +v 6.925508 -4.625499 0.600000 +v 7.000000 -4.618162 0.600000 +v 7.074493 -4.625499 0.600000 +v 7.146123 -4.647228 0.600000 +v 7.212138 -4.682514 0.600000 +v 7.247123 -4.630155 0.659519 +v 7.170222 -4.589050 0.659519 +v 7.086779 -4.563738 0.659519 +v 7.000000 -4.555191 0.659519 +v 6.913223 -4.563738 0.659519 +v 6.829780 -4.589050 0.659519 +v 6.752878 -4.630155 0.659519 +v 6.685473 -4.685472 0.659519 +v 6.630155 -4.752877 0.659519 +v 6.589050 -4.829779 0.659519 +v 6.563738 -4.913222 0.659519 +v 6.555191 -5.000000 0.659519 +v 6.563738 -5.086778 0.659519 +v 6.589050 -5.170221 0.659519 +v 6.630155 -5.247122 0.659519 +v 6.685472 -5.314528 0.659519 +v 6.752877 -5.369845 0.659519 +v 6.829779 -5.410950 0.659519 +v 6.913222 -5.436262 0.659519 +v 7.000000 -5.444809 0.659519 +v 7.086778 -5.436262 0.659519 +v 7.170221 -5.410950 0.659519 +v 7.247123 -5.369845 0.659519 +v 7.314528 -5.314528 0.659519 +v 7.369845 -5.247123 0.659519 +v 7.410950 -5.170221 0.659519 +v 7.436262 -5.086778 0.659519 +v 7.444809 -5.000000 0.659519 +v 7.436262 -4.913222 0.659519 +v 7.410950 -4.829779 0.659519 +v 7.369845 -4.752877 0.659519 +v 7.314528 -4.685472 0.659519 +v 7.267300 -4.732700 0.713255 +v 7.314312 -4.789984 0.713255 +v 7.349244 -4.855338 0.713255 +v 7.370756 -4.926252 0.713255 +v 7.378019 -5.000000 0.713255 +v 7.370756 -5.073748 0.713255 +v 7.349244 -5.144662 0.713255 +v 7.314312 -5.210016 0.713255 +v 7.267300 -5.267300 0.713255 +v 7.210016 -5.314312 0.713255 +v 7.144662 -5.349244 0.713255 +v 7.073748 -5.370756 0.713255 +v 7.000000 -5.378019 0.713255 +v 6.926252 -5.370756 0.713255 +v 6.855338 -5.349244 0.713255 +v 6.789984 -5.314312 0.713255 +v 6.732700 -5.267300 0.713255 +v 6.685688 -5.210016 0.713255 +v 6.650755 -5.144661 0.713255 +v 6.629244 -5.073748 0.713255 +v 6.621981 -5.000000 0.713255 +v 6.629244 -4.926252 0.713255 +v 6.650756 -4.855338 0.713255 +v 6.685688 -4.789983 0.713255 +v 6.732700 -4.732699 0.713255 +v 6.789984 -4.685688 0.713255 +v 6.855339 -4.650755 0.713255 +v 6.926253 -4.629244 0.713255 +v 7.000000 -4.621981 0.713255 +v 7.073749 -4.629244 0.713255 +v 7.144662 -4.650756 0.713255 +v 7.210017 -4.685689 0.713255 +v 7.000000 -5.000000 0.000000 +v 7.296604 -4.939839 1.500000 +v 7.338684 -4.930305 1.531821 +v 7.377504 -4.922584 1.567695 +v 7.412688 -4.915586 1.607275 +v 7.443898 -4.909377 1.650181 +v 7.470833 -4.904020 1.696000 +v 7.493233 -4.899564 1.744289 +v 7.510883 -4.896053 1.794585 +v 7.523614 -4.893521 1.846402 +v 7.531301 -4.891992 1.899242 +v 7.533872 -4.891480 1.952596 +v 7.531301 -4.891992 2.005950 +v 7.523614 -4.893521 2.058790 +v 7.510883 -4.896053 2.110608 +v 7.493233 -4.899564 2.160903 +v 7.470833 -4.904020 2.209193 +v 7.443898 -4.909377 2.255011 +v 7.412688 -4.915586 2.297917 +v 7.377504 -4.922584 2.337497 +v 7.338685 -4.930305 2.373371 +v 7.296603 -4.938676 2.405192 +v 7.251665 -4.947615 2.432654 +v 7.204303 -4.957036 2.455493 +v 7.154974 -4.966848 2.473490 +v 7.104152 -4.976957 2.486469 +v 7.052328 -4.987266 2.494308 +v 7.049292 -4.977257 2.494308 +v 7.098109 -4.957036 2.486469 +v 7.145982 -4.937206 2.473490 +v 7.192450 -4.917959 2.455493 +v 7.237063 -4.899479 2.432654 +v 7.279394 -4.881945 2.405192 +v 7.319034 -4.865526 2.373371 +v 7.355601 -4.850379 2.337497 +v 7.388744 -4.836651 2.297917 +v 7.418143 -4.824473 2.255011 +v 7.443515 -4.813964 2.209193 +v 7.464615 -4.805224 2.160903 +v 7.481242 -4.798337 2.110608 +v 7.493233 -4.793370 2.058790 +v 7.500474 -4.790370 2.005950 +v 7.502896 -4.789367 1.952596 +v 7.500474 -4.790370 1.899242 +v 7.493233 -4.793370 1.846402 +v 7.481242 -4.798337 1.794585 +v 7.464615 -4.805224 1.744289 +v 7.443515 -4.813964 1.696000 +v 7.418143 -4.824473 1.650181 +v 7.388743 -4.836651 1.607275 +v 7.355601 -4.850379 1.567695 +v 7.319034 -4.865526 1.531821 +v 7.279395 -4.883108 1.500000 +v 7.251448 -4.830824 1.500000 +v 7.287122 -4.805825 1.531821 +v 7.320032 -4.783835 1.567695 +v 7.349860 -4.763905 1.607275 +v 7.376318 -4.746226 1.650181 +v 7.399153 -4.730968 1.696000 +v 7.418143 -4.718280 1.744289 +v 7.433106 -4.708282 1.794585 +v 7.443898 -4.701070 1.846402 +v 7.450415 -4.696716 1.899242 +v 7.452595 -4.695260 1.952596 +v 7.450415 -4.696716 2.005950 +v 7.443898 -4.701070 2.058790 +v 7.433106 -4.708282 2.110608 +v 7.418143 -4.718279 2.160903 +v 7.399153 -4.730968 2.209193 +v 7.376318 -4.746226 2.255011 +v 7.349860 -4.763905 2.297917 +v 7.320032 -4.783835 2.337497 +v 7.287123 -4.805824 2.373371 +v 7.251448 -4.829662 2.405192 +v 7.213351 -4.855117 2.432654 +v 7.173200 -4.881945 2.455493 +v 7.131381 -4.909888 2.473490 +v 7.088296 -4.938676 2.486469 +v 7.044361 -4.968032 2.494308 +v 7.037726 -4.959948 2.494308 +v 7.075089 -4.922584 2.486469 +v 7.111730 -4.885943 2.473490 +v 7.147294 -4.850379 2.455493 +v 7.181440 -4.816233 2.432654 +v 7.213839 -4.783835 2.405192 +v 7.244177 -4.753496 2.373371 +v 7.272165 -4.725508 2.337497 +v 7.297531 -4.700142 2.297917 +v 7.320033 -4.677641 2.255011 +v 7.339451 -4.658222 2.209193 +v 7.355601 -4.642072 2.160903 +v 7.368326 -4.629347 2.110608 +v 7.377504 -4.620169 2.058790 +v 7.383047 -4.614627 2.005950 +v 7.384900 -4.612773 1.952596 +v 7.383047 -4.614627 1.899242 +v 7.377504 -4.620169 1.846402 +v 7.368326 -4.629347 1.794585 +v 7.355601 -4.642072 1.744289 +v 7.339451 -4.658222 1.696000 +v 7.320032 -4.677641 1.650181 +v 7.297531 -4.700142 1.607275 +v 7.272165 -4.725508 1.567695 +v 7.244177 -4.753496 1.531821 +v 7.213839 -4.784997 1.500000 +v 7.168013 -4.747388 1.500000 +v 7.191849 -4.710551 1.531821 +v 7.213838 -4.677641 1.567695 +v 7.233768 -4.647813 1.607275 +v 7.251448 -4.621355 1.650181 +v 7.266705 -4.598521 1.696000 +v 7.279394 -4.579531 1.744289 +v 7.289392 -4.564568 1.794585 +v 7.296603 -4.553775 1.846402 +v 7.300958 -4.547258 1.899242 +v 7.302413 -4.545079 1.952596 +v 7.300958 -4.547258 2.005950 +v 7.296603 -4.553775 2.058790 +v 7.289392 -4.564568 2.110608 +v 7.279394 -4.579531 2.160903 +v 7.266705 -4.598521 2.209193 +v 7.251448 -4.621355 2.255011 +v 7.233768 -4.647813 2.297917 +v 7.213839 -4.677641 2.337497 +v 7.191849 -4.710551 2.373371 +v 7.168012 -4.746226 2.405192 +v 7.142556 -4.784322 2.432654 +v 7.115728 -4.824473 2.455493 +v 7.087785 -4.866293 2.473490 +v 7.058997 -4.909377 2.486469 +v 7.029641 -4.953312 2.494308 +v 7.020417 -4.948382 2.494308 +v 7.040637 -4.899564 2.486469 +v 7.060467 -4.851691 2.473490 +v 7.079714 -4.805224 2.455493 +v 7.098194 -4.760610 2.432654 +v 7.115728 -4.718279 2.405192 +v 7.132147 -4.678639 2.373371 +v 7.147294 -4.642072 2.337497 +v 7.161022 -4.608930 2.297917 +v 7.173200 -4.579531 2.255011 +v 7.183709 -4.554159 2.209193 +v 7.192450 -4.533058 2.160903 +v 7.199336 -4.516432 2.110608 +v 7.204303 -4.504440 2.058790 +v 7.207303 -4.497199 2.005950 +v 7.208306 -4.494777 1.952596 +v 7.207303 -4.497199 1.899242 +v 7.204303 -4.504440 1.846402 +v 7.199336 -4.516432 1.794585 +v 7.192450 -4.533058 1.744289 +v 7.183709 -4.554159 1.696000 +v 7.173200 -4.579531 1.650181 +v 7.161022 -4.608930 1.607275 +v 7.147294 -4.642072 1.567695 +v 7.132147 -4.678640 1.531821 +v 7.115729 -4.719442 1.500000 +v 7.058998 -4.702233 1.500000 +v 7.067368 -4.658989 1.531821 +v 7.075089 -4.620169 1.567695 +v 7.082088 -4.584985 1.607275 +v 7.088296 -4.553775 1.650181 +v 7.093654 -4.526841 1.696000 +v 7.098109 -4.504440 1.744289 +v 7.101620 -4.486790 1.794585 +v 7.104152 -4.474060 1.846402 +v 7.105681 -4.466372 1.899242 +v 7.106193 -4.463801 1.952596 +v 7.105681 -4.466372 2.005950 +v 7.104152 -4.474060 2.058790 +v 7.101620 -4.486790 2.110608 +v 7.098109 -4.504440 2.160903 +v 7.093654 -4.526841 2.209193 +v 7.088296 -4.553775 2.255011 +v 7.082088 -4.584985 2.297917 +v 7.075089 -4.620169 2.337497 +v 7.067368 -4.658989 2.373371 +v 7.058997 -4.701070 2.405192 +v 7.050058 -4.746008 2.432654 +v 7.040637 -4.793370 2.455493 +v 7.030826 -4.842699 2.473490 +v 7.020716 -4.893521 2.486469 +v 7.010408 -4.945345 2.494308 +v 6.999999 -4.944321 2.494308 +v 6.999999 -4.891480 2.486469 +v 6.999999 -4.839663 2.473490 +v 6.999999 -4.789367 2.455493 +v 6.999999 -4.741078 2.432654 +v 6.999999 -4.695260 2.405192 +v 6.999999 -4.652354 2.373371 +v 6.999999 -4.612773 2.337497 +v 6.999999 -4.576900 2.297917 +v 6.999999 -4.545079 2.255011 +v 6.999999 -4.517616 2.209193 +v 6.999999 -4.494777 2.160903 +v 6.999999 -4.476781 2.110608 +v 6.999999 -4.463801 2.058790 +v 6.999999 -4.455963 2.005950 +v 6.999999 -4.453342 1.952596 +v 6.999999 -4.455963 1.899242 +v 6.999999 -4.463801 1.846402 +v 6.999999 -4.476781 1.794585 +v 6.999999 -4.494777 1.744289 +v 6.999999 -4.517616 1.696000 +v 6.999999 -4.545079 1.650181 +v 6.999999 -4.576900 1.607275 +v 6.999999 -4.612773 1.567695 +v 6.999999 -4.652354 1.531821 +v 7.000000 -4.696423 1.500000 +v 6.941001 -4.702233 1.500000 +v 6.932630 -4.658989 1.531821 +v 6.924909 -4.620169 1.567695 +v 6.917910 -4.584985 1.607275 +v 6.911702 -4.553775 1.650181 +v 6.906344 -4.526841 1.696000 +v 6.901888 -4.504440 1.744289 +v 6.898378 -4.486790 1.794585 +v 6.895845 -4.474060 1.846402 +v 6.894316 -4.466372 1.899242 +v 6.893805 -4.463801 1.952596 +v 6.894316 -4.466372 2.005950 +v 6.895845 -4.474060 2.058790 +v 6.898377 -4.486790 2.110608 +v 6.901888 -4.504440 2.160903 +v 6.906344 -4.526841 2.209193 +v 6.911702 -4.553775 2.255011 +v 6.917910 -4.584985 2.297917 +v 6.924909 -4.620169 2.337497 +v 6.932630 -4.658989 2.373371 +v 6.941001 -4.701070 2.405192 +v 6.949939 -4.746008 2.432654 +v 6.959360 -4.793370 2.455493 +v 6.969172 -4.842699 2.473490 +v 6.979281 -4.893521 2.486469 +v 6.989590 -4.945345 2.494308 +v 6.979581 -4.948382 2.494308 +v 6.959360 -4.899564 2.486469 +v 6.939531 -4.851691 2.473490 +v 6.920283 -4.805224 2.455493 +v 6.901804 -4.760610 2.432654 +v 6.884270 -4.718280 2.405192 +v 6.867850 -4.678640 2.373371 +v 6.852704 -4.642072 2.337497 +v 6.838975 -4.608930 2.297917 +v 6.826798 -4.579531 2.255011 +v 6.816288 -4.554159 2.209193 +v 6.807549 -4.533058 2.160903 +v 6.800662 -4.516432 2.110608 +v 6.795694 -4.504440 2.058790 +v 6.792695 -4.497199 2.005950 +v 6.791692 -4.494777 1.952596 +v 6.792695 -4.497199 1.899242 +v 6.795694 -4.504440 1.846402 +v 6.800662 -4.516432 1.794585 +v 6.807549 -4.533058 1.744289 +v 6.816289 -4.554159 1.696000 +v 6.826798 -4.579531 1.650181 +v 6.838975 -4.608930 1.607275 +v 6.852704 -4.642073 1.567695 +v 6.867850 -4.678640 1.531821 +v 6.884271 -4.719442 1.500000 +v 6.831987 -4.747388 1.500000 +v 6.808149 -4.710551 1.531821 +v 6.786160 -4.677641 1.567695 +v 6.766229 -4.647813 1.607275 +v 6.748550 -4.621355 1.650181 +v 6.733293 -4.598521 1.696000 +v 6.720604 -4.579531 1.744289 +v 6.710606 -4.564568 1.794585 +v 6.703395 -4.553775 1.846402 +v 6.699040 -4.547258 1.899242 +v 6.697584 -4.545079 1.952596 +v 6.699040 -4.547258 2.005950 +v 6.703395 -4.553775 2.058790 +v 6.710606 -4.564568 2.110608 +v 6.720604 -4.579531 2.160903 +v 6.733293 -4.598521 2.209193 +v 6.748550 -4.621355 2.255011 +v 6.766229 -4.647813 2.297917 +v 6.786160 -4.677641 2.337497 +v 6.808149 -4.710551 2.373371 +v 6.831986 -4.746226 2.405192 +v 6.857441 -4.784322 2.432654 +v 6.884270 -4.824473 2.455493 +v 6.912212 -4.866293 2.473490 +v 6.941001 -4.909377 2.486469 +v 6.970357 -4.953312 2.494308 +v 6.962272 -4.959948 2.494308 +v 6.924909 -4.922584 2.486469 +v 6.888268 -4.885943 2.473490 +v 6.852704 -4.850379 2.455493 +v 6.818558 -4.816233 2.432654 +v 6.786160 -4.783835 2.405192 +v 6.755820 -4.753496 2.373371 +v 6.727833 -4.725508 2.337497 +v 6.702466 -4.700142 2.297917 +v 6.679965 -4.677641 2.255011 +v 6.660547 -4.658222 2.209193 +v 6.644397 -4.642072 2.160903 +v 6.631672 -4.629347 2.110608 +v 6.622494 -4.620169 2.058790 +v 6.616951 -4.614627 2.005950 +v 6.615098 -4.612773 1.952596 +v 6.616951 -4.614627 1.899242 +v 6.622494 -4.620169 1.846402 +v 6.631672 -4.629347 1.794585 +v 6.644397 -4.642072 1.744289 +v 6.660547 -4.658222 1.696000 +v 6.679965 -4.677641 1.650181 +v 6.702466 -4.700142 1.607275 +v 6.727833 -4.725509 1.567695 +v 6.755821 -4.753496 1.531821 +v 6.786160 -4.784997 1.500000 +v 6.748550 -4.830824 1.500000 +v 6.712875 -4.805825 1.531821 +v 6.679966 -4.783835 1.567695 +v 6.650138 -4.763905 1.607275 +v 6.623680 -4.746226 1.650181 +v 6.600845 -4.730968 1.696000 +v 6.581855 -4.718280 1.744289 +v 6.566892 -4.708282 1.794585 +v 6.556100 -4.701071 1.846402 +v 6.549583 -4.696716 1.899242 +v 6.547403 -4.695260 1.952596 +v 6.549583 -4.696716 2.005950 +v 6.556100 -4.701071 2.058790 +v 6.566892 -4.708282 2.110608 +v 6.581855 -4.718280 2.160903 +v 6.600845 -4.730968 2.209193 +v 6.623680 -4.746226 2.255011 +v 6.650138 -4.763905 2.297917 +v 6.679965 -4.783835 2.337497 +v 6.712875 -4.805824 2.373371 +v 6.748550 -4.829662 2.405192 +v 6.786647 -4.855117 2.432654 +v 6.826798 -4.881945 2.455493 +v 6.868618 -4.909888 2.473490 +v 6.911702 -4.938676 2.486469 +v 6.955637 -4.968032 2.494308 +v 6.950706 -4.977257 2.494308 +v 6.901888 -4.957036 2.486469 +v 6.854016 -4.937206 2.473490 +v 6.807549 -4.917959 2.455493 +v 6.762935 -4.899479 2.432654 +v 6.720604 -4.881945 2.405192 +v 6.680964 -4.865526 2.373371 +v 6.644397 -4.850379 2.337497 +v 6.611254 -4.836651 2.297917 +v 6.581855 -4.824473 2.255011 +v 6.556483 -4.813964 2.209193 +v 6.535383 -4.805224 2.160903 +v 6.518756 -4.798337 2.110608 +v 6.506765 -4.793370 2.058790 +v 6.499523 -4.790370 2.005950 +v 6.497102 -4.789368 1.952596 +v 6.499523 -4.790370 1.899242 +v 6.506765 -4.793370 1.846402 +v 6.518756 -4.798337 1.794585 +v 6.535383 -4.805224 1.744289 +v 6.556483 -4.813964 1.696000 +v 6.581855 -4.824473 1.650181 +v 6.611254 -4.836651 1.607275 +v 6.644397 -4.850379 1.567695 +v 6.680964 -4.865526 1.531821 +v 6.720605 -4.883108 1.500000 +v 6.703395 -4.939839 1.500000 +v 6.661314 -4.930306 1.531821 +v 6.622494 -4.922584 1.567695 +v 6.587310 -4.915586 1.607275 +v 6.556100 -4.909378 1.650181 +v 6.529165 -4.904020 1.696000 +v 6.506765 -4.899564 1.744289 +v 6.489115 -4.896053 1.794585 +v 6.476384 -4.893521 1.846402 +v 6.468697 -4.891992 1.899242 +v 6.466126 -4.891480 1.952596 +v 6.468697 -4.891992 2.005950 +v 6.476384 -4.893521 2.058790 +v 6.489115 -4.896053 2.110608 +v 6.506765 -4.899564 2.160903 +v 6.529165 -4.904020 2.209193 +v 6.556100 -4.909378 2.255011 +v 6.587310 -4.915586 2.297917 +v 6.622494 -4.922584 2.337497 +v 6.661314 -4.930305 2.373371 +v 6.703395 -4.938676 2.405192 +v 6.748333 -4.947615 2.432654 +v 6.795695 -4.957036 2.455493 +v 6.845024 -4.966848 2.473490 +v 6.895845 -4.976957 2.486469 +v 6.947670 -4.987266 2.494308 +v 6.946645 -4.997674 2.494308 +v 6.893805 -4.997674 2.486469 +v 6.841988 -4.997674 2.473490 +v 6.791692 -4.997674 2.455493 +v 6.743402 -4.997674 2.432654 +v 6.697584 -4.997674 2.405192 +v 6.654678 -4.997674 2.373371 +v 6.615098 -4.997674 2.337497 +v 6.579225 -4.997674 2.297917 +v 6.547403 -4.997674 2.255011 +v 6.519941 -4.997674 2.209193 +v 6.497102 -4.997674 2.160903 +v 6.479106 -4.997674 2.110608 +v 6.466126 -4.997674 2.058790 +v 6.458288 -4.997674 2.005950 +v 6.455667 -4.997674 1.952596 +v 6.458288 -4.997674 1.899242 +v 6.466126 -4.997674 1.846402 +v 6.479106 -4.997674 1.794585 +v 6.497102 -4.997674 1.744289 +v 6.519941 -4.997674 1.696000 +v 6.547403 -4.997674 1.650181 +v 6.579225 -4.997674 1.607275 +v 6.615098 -4.997674 1.567695 +v 6.654679 -4.997674 1.531821 +v 6.697585 -4.998837 1.500000 +v 6.703395 -5.057836 1.500000 +v 6.661314 -5.065043 1.531821 +v 6.622494 -5.072765 1.567695 +v 6.587310 -5.079763 1.607275 +v 6.556100 -5.085971 1.650181 +v 6.529165 -5.091329 1.696000 +v 6.506765 -5.095785 1.744289 +v 6.489115 -5.099296 1.794585 +v 6.476384 -5.101828 1.846402 +v 6.468697 -5.103357 1.899242 +v 6.466126 -5.103868 1.952596 +v 6.468697 -5.103357 2.005950 +v 6.476384 -5.101828 2.058790 +v 6.489115 -5.099296 2.110608 +v 6.506765 -5.095785 2.160903 +v 6.529165 -5.091329 2.209193 +v 6.556100 -5.085971 2.255011 +v 6.587310 -5.079763 2.297917 +v 6.622494 -5.072765 2.337497 +v 6.661314 -5.065043 2.373371 +v 6.703395 -5.056673 2.405192 +v 6.748333 -5.047734 2.432654 +v 6.795695 -5.038313 2.455493 +v 6.845024 -5.028501 2.473490 +v 6.895845 -5.018392 2.486469 +v 6.947670 -5.008083 2.494308 +v 6.950706 -5.018092 2.494308 +v 6.901888 -5.038313 2.486469 +v 6.854016 -5.058143 2.473490 +v 6.807549 -5.077390 2.455493 +v 6.762935 -5.095870 2.432654 +v 6.720604 -5.113403 2.405192 +v 6.680964 -5.129823 2.373371 +v 6.644397 -5.144969 2.337497 +v 6.611254 -5.158698 2.297917 +v 6.581855 -5.170875 2.255011 +v 6.556483 -5.181385 2.209193 +v 6.535383 -5.190125 2.160903 +v 6.518756 -5.197011 2.110608 +v 6.506765 -5.201979 2.058790 +v 6.499524 -5.204978 2.005950 +v 6.497102 -5.205981 1.952596 +v 6.499524 -5.204978 1.899242 +v 6.506765 -5.201979 1.846402 +v 6.518756 -5.197011 1.794585 +v 6.535383 -5.190125 1.744289 +v 6.556483 -5.181385 1.696000 +v 6.581855 -5.170875 1.650181 +v 6.611255 -5.158698 1.607275 +v 6.644397 -5.144969 1.567695 +v 6.680964 -5.129823 1.531821 +v 6.720604 -5.114566 1.500000 +v 6.748550 -5.166850 1.500000 +v 6.712876 -5.189524 1.531821 +v 6.679966 -5.211514 1.567695 +v 6.650138 -5.231444 1.607275 +v 6.623680 -5.249123 1.650181 +v 6.600845 -5.264380 1.696000 +v 6.581855 -5.277069 1.744289 +v 6.566892 -5.287067 1.794585 +v 6.556100 -5.294278 1.846402 +v 6.549583 -5.298633 1.899242 +v 6.547403 -5.300089 1.952596 +v 6.549583 -5.298633 2.005950 +v 6.556100 -5.294278 2.058790 +v 6.566892 -5.287067 2.110608 +v 6.581855 -5.277069 2.160903 +v 6.600845 -5.264380 2.209193 +v 6.623680 -5.249123 2.255011 +v 6.650138 -5.231444 2.297917 +v 6.679965 -5.211514 2.337497 +v 6.712875 -5.189524 2.373371 +v 6.748550 -5.165687 2.405192 +v 6.786647 -5.140232 2.432654 +v 6.826798 -5.113403 2.455493 +v 6.868618 -5.085461 2.473490 +v 6.911702 -5.056673 2.486469 +v 6.955637 -5.027316 2.494308 +v 6.999999 -4.997674 2.496929 +v 6.962272 -5.035401 2.494308 +v 6.924909 -5.072765 2.486469 +v 6.888268 -5.109405 2.473490 +v 6.852704 -5.144969 2.455493 +v 6.818558 -5.179115 2.432654 +v 6.786160 -5.211514 2.405192 +v 6.755820 -5.241853 2.373371 +v 6.727833 -5.269840 2.337497 +v 6.702467 -5.295207 2.297917 +v 6.679965 -5.317708 2.255011 +v 6.660547 -5.337127 2.209193 +v 6.644397 -5.353276 2.160903 +v 6.631672 -5.366001 2.110608 +v 6.622494 -5.375179 2.058790 +v 6.616951 -5.380722 2.005950 +v 6.615098 -5.382575 1.952596 +v 6.616951 -5.380722 1.899242 +v 6.622494 -5.375179 1.846402 +v 6.631672 -5.366001 1.794585 +v 6.644397 -5.353276 1.744289 +v 6.660547 -5.337127 1.696000 +v 6.679966 -5.317708 1.650181 +v 6.702467 -5.295207 1.607275 +v 6.727833 -5.269840 1.567695 +v 6.755821 -5.241853 1.531821 +v 6.786160 -5.212677 1.500000 +v 6.831986 -5.250286 1.500000 +v 6.808149 -5.284798 1.531821 +v 6.786160 -5.317708 1.567695 +v 6.766230 -5.347535 1.607275 +v 6.748550 -5.373993 1.650181 +v 6.733293 -5.396828 1.696000 +v 6.720604 -5.415818 1.744289 +v 6.710606 -5.430781 1.794585 +v 6.703395 -5.441573 1.846402 +v 6.699040 -5.448091 1.899242 +v 6.697584 -5.450270 1.952596 +v 6.699040 -5.448091 2.005950 +v 6.703395 -5.441573 2.058790 +v 6.710607 -5.430781 2.110608 +v 6.720604 -5.415818 2.160903 +v 6.733293 -5.396828 2.209193 +v 6.748550 -5.373994 2.255011 +v 6.766230 -5.347535 2.297917 +v 6.786160 -5.317708 2.337497 +v 6.808149 -5.284798 2.373371 +v 6.831986 -5.249123 2.405192 +v 6.857442 -5.211026 2.432654 +v 6.884270 -5.170875 2.455493 +v 6.912213 -5.129056 2.473490 +v 6.941001 -5.085971 2.486469 +v 6.970357 -5.042037 2.494308 +v 6.979581 -5.046967 2.494308 +v 6.959360 -5.095785 2.486469 +v 6.939531 -5.143658 2.473490 +v 6.920283 -5.190125 2.455493 +v 6.901804 -5.234738 2.432654 +v 6.884270 -5.277069 2.405192 +v 6.867851 -5.316709 2.373371 +v 6.852704 -5.353276 2.337497 +v 6.838976 -5.386419 2.297917 +v 6.826798 -5.415818 2.255011 +v 6.816289 -5.441190 2.209193 +v 6.807549 -5.462291 2.160903 +v 6.800662 -5.478917 2.110608 +v 6.795695 -5.490909 2.058790 +v 6.792696 -5.498150 2.005950 +v 6.791692 -5.500571 1.952596 +v 6.792696 -5.498150 1.899242 +v 6.795695 -5.490909 1.846402 +v 6.800662 -5.478917 1.794585 +v 6.807549 -5.462291 1.744289 +v 6.816289 -5.441190 1.696000 +v 6.826798 -5.415818 1.650181 +v 6.838976 -5.386419 1.607275 +v 6.852704 -5.353276 1.567695 +v 6.867851 -5.316709 1.531821 +v 6.884271 -5.278232 1.500000 +v 6.941001 -5.295441 1.500000 +v 6.932631 -5.336360 1.531821 +v 6.924909 -5.375179 1.567695 +v 6.917910 -5.410363 1.607275 +v 6.911702 -5.441573 1.650181 +v 6.906344 -5.468508 1.696000 +v 6.901889 -5.490908 1.744289 +v 6.898378 -5.508558 1.794585 +v 6.895846 -5.521289 1.846402 +v 6.894317 -5.528976 1.899242 +v 6.893805 -5.531547 1.952596 +v 6.894317 -5.528976 2.005950 +v 6.895846 -5.521289 2.058790 +v 6.898378 -5.508558 2.110608 +v 6.901889 -5.490908 2.160903 +v 6.906344 -5.468508 2.209193 +v 6.911702 -5.441573 2.255011 +v 6.917910 -5.410363 2.297917 +v 6.924909 -5.375179 2.337497 +v 6.932631 -5.336360 2.373371 +v 6.941001 -5.294278 2.405192 +v 6.949940 -5.249340 2.432654 +v 6.959360 -5.201979 2.455493 +v 6.969172 -5.152649 2.473490 +v 6.979281 -5.101828 2.486469 +v 6.989590 -5.050003 2.494308 +v 6.999999 -5.051028 2.494308 +v 6.999999 -5.103868 2.486469 +v 6.999999 -5.155685 2.473490 +v 6.999999 -5.205981 2.455493 +v 6.999999 -5.254271 2.432654 +v 6.999999 -5.300089 2.405192 +v 6.999999 -5.342995 2.373371 +v 6.999999 -5.382575 2.337497 +v 6.999999 -5.418448 2.297917 +v 6.999999 -5.450270 2.255011 +v 6.999999 -5.477732 2.209193 +v 6.999999 -5.500571 2.160903 +v 6.999999 -5.518567 2.110608 +v 6.999999 -5.531547 2.058790 +v 6.999999 -5.539385 2.005950 +v 6.999999 -5.542006 1.952596 +v 6.999999 -5.539385 1.899242 +v 6.999999 -5.531547 1.846402 +v 6.999999 -5.518567 1.794585 +v 6.999999 -5.500571 1.744289 +v 6.999999 -5.477732 1.696000 +v 6.999999 -5.450270 1.650181 +v 6.999999 -5.418448 1.607275 +v 6.999999 -5.382575 1.567695 +v 6.999999 -5.342995 1.531821 +v 7.000000 -5.301252 1.500000 +v 7.058998 -5.295441 1.500000 +v 7.067368 -5.336359 1.531821 +v 7.075089 -5.375179 1.567695 +v 7.082088 -5.410363 1.607275 +v 7.088296 -5.441573 1.650181 +v 7.093654 -5.468508 1.696000 +v 7.098109 -5.490908 1.744289 +v 7.101620 -5.508558 1.794585 +v 7.104153 -5.521289 1.846402 +v 7.105681 -5.528976 1.899242 +v 7.106193 -5.531547 1.952596 +v 7.105681 -5.528976 2.005950 +v 7.104153 -5.521289 2.058790 +v 7.101620 -5.508558 2.110608 +v 7.098109 -5.490908 2.160903 +v 7.093654 -5.468508 2.209193 +v 7.088296 -5.441573 2.255011 +v 7.082088 -5.410363 2.297917 +v 7.075089 -5.375179 2.337497 +v 7.067368 -5.336360 2.373371 +v 7.058997 -5.294278 2.405192 +v 7.050058 -5.249340 2.432654 +v 7.040637 -5.201979 2.455493 +v 7.030826 -5.152649 2.473490 +v 7.020716 -5.101828 2.486469 +v 7.010408 -5.050003 2.494308 +v 7.020417 -5.046967 2.494308 +v 7.040637 -5.095785 2.486469 +v 7.060467 -5.143658 2.473490 +v 7.079714 -5.190125 2.455493 +v 7.098194 -5.234738 2.432654 +v 7.115728 -5.277069 2.405192 +v 7.132147 -5.316709 2.373371 +v 7.147294 -5.353276 2.337497 +v 7.161022 -5.386419 2.297917 +v 7.173200 -5.415818 2.255011 +v 7.183709 -5.441190 2.209193 +v 7.192450 -5.462290 2.160903 +v 7.199336 -5.478917 2.110608 +v 7.204303 -5.490908 2.058790 +v 7.207303 -5.498149 2.005950 +v 7.208306 -5.500571 1.952596 +v 7.207303 -5.498149 1.899242 +v 7.204303 -5.490908 1.846402 +v 7.199336 -5.478917 1.794585 +v 7.192449 -5.462291 1.744289 +v 7.183709 -5.441190 1.696000 +v 7.173200 -5.415818 1.650181 +v 7.161022 -5.386419 1.607275 +v 7.147294 -5.353276 1.567695 +v 7.132147 -5.316709 1.531821 +v 7.115728 -5.278232 1.500000 +v 7.168012 -5.250286 1.500000 +v 7.191849 -5.284798 1.531821 +v 7.213838 -5.317707 1.567695 +v 7.233768 -5.347535 1.607275 +v 7.251448 -5.373993 1.650181 +v 7.266705 -5.396828 1.696000 +v 7.279394 -5.415818 1.744289 +v 7.289392 -5.430781 1.794585 +v 7.296603 -5.441573 1.846402 +v 7.300957 -5.448090 1.899242 +v 7.302413 -5.450270 1.952596 +v 7.300957 -5.448090 2.005950 +v 7.296603 -5.441573 2.058790 +v 7.289392 -5.430781 2.110608 +v 7.279394 -5.415818 2.160903 +v 7.266705 -5.396828 2.209193 +v 7.251448 -5.373993 2.255011 +v 7.233768 -5.347535 2.297917 +v 7.213838 -5.317708 2.337497 +v 7.191849 -5.284798 2.373371 +v 7.168012 -5.249123 2.405192 +v 7.142556 -5.211026 2.432654 +v 7.115728 -5.170875 2.455493 +v 7.087785 -5.129056 2.473490 +v 7.058997 -5.085971 2.486469 +v 7.029641 -5.042037 2.494308 +v 7.037726 -5.035401 2.494308 +v 7.075089 -5.072765 2.486469 +v 7.111730 -5.109405 2.473490 +v 7.147294 -5.144969 2.455493 +v 7.181440 -5.179115 2.432654 +v 7.213838 -5.211514 2.405192 +v 7.244177 -5.241853 2.373371 +v 7.272165 -5.269840 2.337497 +v 7.297531 -5.295207 2.297917 +v 7.320032 -5.317708 2.255011 +v 7.339451 -5.337126 2.209193 +v 7.355601 -5.353276 2.160903 +v 7.368326 -5.366001 2.110608 +v 7.377504 -5.375179 2.058790 +v 7.383046 -5.380722 2.005950 +v 7.384900 -5.382575 1.952596 +v 7.383046 -5.380722 1.899242 +v 7.377504 -5.375179 1.846402 +v 7.368326 -5.366001 1.794585 +v 7.355601 -5.353276 1.744289 +v 7.339451 -5.337126 1.696000 +v 7.320032 -5.317707 1.650181 +v 7.297531 -5.295206 1.607275 +v 7.272165 -5.269840 1.567695 +v 7.244177 -5.241852 1.531821 +v 7.213839 -5.212677 1.500000 +v 7.251448 -5.166850 1.500000 +v 7.287122 -5.189524 1.531821 +v 7.320032 -5.211514 1.567695 +v 7.349860 -5.231444 1.607275 +v 7.376318 -5.249123 1.650181 +v 7.399152 -5.264380 1.696000 +v 7.418142 -5.277069 1.744289 +v 7.433105 -5.287067 1.794585 +v 7.443898 -5.294278 1.846402 +v 7.450415 -5.298633 1.899242 +v 7.452594 -5.300089 1.952596 +v 7.450415 -5.298633 2.005950 +v 7.443898 -5.294278 2.058790 +v 7.433105 -5.287067 2.110608 +v 7.418142 -5.277069 2.160903 +v 7.399152 -5.264380 2.209193 +v 7.376318 -5.249123 2.255011 +v 7.349860 -5.231444 2.297917 +v 7.320032 -5.211514 2.337497 +v 7.287122 -5.189524 2.373371 +v 7.251447 -5.165687 2.405192 +v 7.213351 -5.140232 2.432654 +v 7.173200 -5.113403 2.455493 +v 7.131381 -5.085461 2.473490 +v 7.088296 -5.056673 2.486469 +v 7.044361 -5.027316 2.494308 +v 7.049292 -5.018092 2.494308 +v 7.098109 -5.038313 2.486469 +v 7.145982 -5.058143 2.473490 +v 7.192449 -5.077390 2.455493 +v 7.237063 -5.095870 2.432654 +v 7.279394 -5.113403 2.405192 +v 7.319034 -5.129823 2.373371 +v 7.355601 -5.144969 2.337497 +v 7.388743 -5.158698 2.297917 +v 7.418142 -5.170875 2.255011 +v 7.443514 -5.181384 2.209193 +v 7.464615 -5.190125 2.160903 +v 7.481241 -5.197011 2.110608 +v 7.493233 -5.201978 2.058790 +v 7.500474 -5.204978 2.005950 +v 7.502896 -5.205981 1.952596 +v 7.500474 -5.204978 1.899242 +v 7.493233 -5.201978 1.846402 +v 7.481241 -5.197011 1.794585 +v 7.464615 -5.190125 1.744289 +v 7.443514 -5.181385 1.696000 +v 7.418142 -5.170875 1.650181 +v 7.388743 -5.158698 1.607275 +v 7.355601 -5.144969 1.567695 +v 7.319033 -5.129823 1.531821 +v 7.279394 -5.114566 1.500000 +v 7.296603 -5.057836 1.500000 +v 7.338684 -5.065043 1.531821 +v 7.377504 -5.072764 1.567695 +v 7.412688 -5.079763 1.607275 +v 7.443898 -5.085971 1.650181 +v 7.470832 -5.091329 1.696000 +v 7.493233 -5.095785 1.744289 +v 7.510883 -5.099296 1.794585 +v 7.523613 -5.101828 1.846402 +v 7.531301 -5.103357 1.899242 +v 7.533872 -5.103868 1.952596 +v 7.531301 -5.103357 2.005950 +v 7.523613 -5.101828 2.058790 +v 7.510883 -5.099295 2.110608 +v 7.493233 -5.095785 2.160903 +v 7.470832 -5.091329 2.209193 +v 7.443898 -5.085971 2.255011 +v 7.412688 -5.079763 2.297917 +v 7.377504 -5.072764 2.337497 +v 7.338684 -5.065043 2.373371 +v 7.296603 -5.056673 2.405192 +v 7.251665 -5.047734 2.432654 +v 7.204303 -5.038313 2.455493 +v 7.154974 -5.028501 2.473490 +v 7.104152 -5.018392 2.486469 +v 7.052328 -5.008083 2.494308 +v 7.053353 -4.997674 2.494308 +v 7.106193 -4.997674 2.486469 +v 7.158010 -4.997674 2.473490 +v 7.208306 -4.997674 2.455493 +v 7.256595 -4.997674 2.432654 +v 7.302413 -4.997674 2.405192 +v 7.345319 -4.997674 2.373371 +v 7.384900 -4.997674 2.337497 +v 7.420773 -4.997674 2.297917 +v 7.452594 -4.997674 2.255011 +v 7.480057 -4.997674 2.209193 +v 7.502896 -4.997674 2.160903 +v 7.520892 -4.997674 2.110608 +v 7.533872 -4.997674 2.058790 +v 7.541709 -4.997674 2.005950 +v 7.544331 -4.997674 1.952596 +v 7.541709 -4.997674 1.899242 +v 7.533872 -4.997674 1.846402 +v 7.520892 -4.997674 1.794585 +v 7.502896 -4.997674 1.744289 +v 7.480057 -4.997674 1.696000 +v 7.452594 -4.997674 1.650181 +v 7.420773 -4.997674 1.607275 +v 7.384899 -4.997674 1.567695 +v 7.345319 -4.997674 1.531821 +v 7.302414 -4.998837 1.500000 +v 7.157950 -4.763030 1.439149 +v 7.201032 -4.798386 1.439149 +v 7.108798 -4.736757 1.439149 +v 7.055465 -4.720579 1.439149 +v 7.000000 -4.715116 1.439149 +v 6.944535 -4.720579 1.439149 +v 6.891202 -4.736757 1.439149 +v 6.842050 -4.763029 1.439149 +v 6.798967 -4.798386 1.439149 +v 6.763611 -4.841468 1.439149 +v 6.737339 -4.890620 1.439149 +v 6.721160 -4.943954 1.439149 +v 6.715697 -4.999418 1.439149 +v 6.721160 -5.054883 1.439149 +v 6.737338 -5.108216 1.439149 +v 6.763610 -5.157369 1.439149 +v 6.798967 -5.200451 1.439149 +v 6.842050 -5.235807 1.439149 +v 6.891202 -5.262080 1.439149 +v 6.944535 -5.278258 1.439149 +v 7.000000 -5.283721 1.439149 +v 7.055464 -5.278258 1.439149 +v 7.108798 -5.262080 1.439149 +v 7.157950 -5.235807 1.439149 +v 7.201032 -5.200451 1.439149 +v 7.236389 -5.157369 1.439149 +v 7.262661 -5.108216 1.439149 +v 7.278840 -5.054883 1.439149 +v 7.284302 -4.999419 1.439149 +v 7.278840 -4.943954 1.439149 +v 7.262661 -4.890621 1.439149 +v 7.236389 -4.841468 1.439149 +v 7.241204 -4.757923 1.469574 +v 7.283627 -4.809615 1.469574 +v 7.315149 -4.868589 1.469574 +v 7.334560 -4.932580 1.469574 +v 7.341115 -4.999128 1.469574 +v 7.334560 -5.065676 1.469574 +v 7.315149 -5.129667 1.469574 +v 7.283627 -5.188642 1.469574 +v 7.241204 -5.240333 1.469574 +v 7.189513 -5.282755 1.469574 +v 7.130538 -5.314277 1.469574 +v 7.066548 -5.333688 1.469574 +v 7.000000 -5.340243 1.469574 +v 6.933451 -5.333688 1.469574 +v 6.869461 -5.314277 1.469574 +v 6.810486 -5.282755 1.469574 +v 6.758794 -5.240333 1.469574 +v 6.716372 -5.188641 1.469574 +v 6.684850 -5.129667 1.469574 +v 6.665439 -5.065676 1.469574 +v 6.658885 -4.999128 1.469574 +v 6.665439 -4.932580 1.469574 +v 6.684851 -4.868588 1.469574 +v 6.716372 -4.809614 1.469574 +v 6.758795 -4.757923 1.469574 +v 6.810486 -4.715501 1.469574 +v 6.869461 -4.683979 1.469574 +v 6.933452 -4.664567 1.469574 +v 7.000000 -4.658013 1.469574 +v 7.066548 -4.664567 1.469574 +v 7.130539 -4.683979 1.469574 +v 7.189514 -4.715501 1.469574 +v 7.600000 -4.400000 0.086121 +v 7.471418 -4.294476 0.086121 +v 7.324719 -4.216063 0.086121 +v 7.165541 -4.167777 0.086121 +v 7.000001 -4.151472 0.086121 +v 6.834462 -4.167776 0.086121 +v 6.675283 -4.216062 0.086121 +v 6.528584 -4.294474 0.086121 +v 6.400001 -4.399999 0.086121 +v 6.294475 -4.528582 0.086121 +v 6.216063 -4.675282 0.086121 +v 6.167776 -4.834459 0.086121 +v 6.151472 -4.999999 0.086121 +v 6.167776 -5.165539 0.086121 +v 6.216062 -5.324717 0.086121 +v 6.294474 -5.471416 0.086121 +v 6.400000 -5.599999 0.086121 +v 6.528583 -5.705525 0.086121 +v 6.675282 -5.783937 0.086121 +v 6.834460 -5.832224 0.086121 +v 7.000000 -5.848528 0.086121 +v 7.165539 -5.832224 0.086121 +v 7.324718 -5.783938 0.086121 +v 7.471417 -5.705525 0.086121 +v 7.600000 -5.600000 0.086121 +v 7.705525 -5.471417 0.086121 +v 7.783938 -5.324718 0.086121 +v 7.832224 -5.165540 0.086121 +v 7.848528 -5.000000 0.086121 +v 7.832224 -4.834460 0.086121 +v 7.783938 -4.675282 0.086121 +v 7.705525 -4.528583 0.086121 +v 7.600000 -4.400000 0.043061 +v 7.705525 -4.528583 0.043061 +v 7.783938 -4.675282 0.043061 +v 7.832224 -4.834460 0.043061 +v 7.848528 -5.000000 0.043061 +v 7.832224 -5.165540 0.043061 +v 7.783938 -5.324718 0.043061 +v 7.705525 -5.471417 0.043061 +v 7.600000 -5.600000 0.043061 +v 7.471417 -5.705525 0.043061 +v 7.324718 -5.783938 0.043061 +v 7.165539 -5.832224 0.043061 +v 7.000000 -5.848528 0.043061 +v 6.834460 -5.832224 0.043061 +v 6.675282 -5.783937 0.043061 +v 6.528583 -5.705525 0.043061 +v 6.400000 -5.599999 0.043061 +v 6.294474 -5.471416 0.043061 +v 6.216062 -5.324717 0.043061 +v 6.167776 -5.165539 0.043061 +v 6.151472 -4.999999 0.043061 +v 6.167776 -4.834459 0.043061 +v 6.216063 -4.675282 0.043061 +v 6.294475 -4.528582 0.043061 +v 6.400001 -4.399999 0.043061 +v 6.528584 -4.294474 0.043061 +v 6.675283 -4.216062 0.043061 +v 6.834462 -4.167776 0.043061 +v 7.000001 -4.151472 0.043061 +v 7.165541 -4.167777 0.043061 +v 7.324719 -4.216063 0.043061 +v 7.471418 -4.294476 0.043061 +usemtl Material +s 1 +f 64 1123 1124 33 +f 31 1185 1186 32 +f 30 1184 1185 31 +f 30 29 1183 1184 +f 28 1182 1183 29 +f 27 1181 1182 28 +f 26 1180 1181 27 +f 26 25 1179 1180 +f 24 1178 1179 25 +f 24 23 1177 1178 +f 22 1176 1177 23 +f 21 1175 1176 22 +f 20 1174 1175 21 +f 20 19 1173 1174 +f 18 1172 1173 19 +f 18 17 1171 1172 +f 16 1170 1171 17 +f 16 15 1169 1170 +f 14 1168 1169 15 +f 14 13 1167 1168 +f 12 1166 1167 13 +f 11 1165 1166 12 +f 10 1164 1165 11 +f 10 9 1163 1164 +f 9 8 1162 1163 +f 7 1161 1162 8 +f 7 6 1160 1161 +f 5 1159 1160 6 +f 5 4 1158 1159 +f 3 1157 1158 4 +f 3 2 1156 1157 +f 2 1 1155 1156 +f 63 64 65 66 +f 62 63 66 67 +f 62 67 68 61 +f 60 61 68 69 +f 60 69 70 59 +f 58 59 70 71 +f 58 71 72 57 +f 56 57 72 73 +f 55 56 73 74 +f 55 74 75 54 +f 54 75 76 53 +f 53 76 77 52 +f 51 52 77 78 +f 51 78 79 50 +f 49 50 79 80 +f 49 80 81 48 +f 47 48 81 82 +f 47 82 83 46 +f 45 46 83 84 +f 45 84 85 44 +f 44 85 86 43 +f 43 86 87 42 +f 41 42 87 88 +f 41 88 89 40 +f 39 40 89 90 +f 39 90 91 38 +f 38 91 92 37 +f 37 92 93 36 +f 35 36 93 94 +f 35 94 95 34 +f 34 95 96 33 +f 33 96 65 64 +f 96 97 128 65 +f 95 98 97 96 +f 94 99 98 95 +f 94 93 100 99 +f 92 101 100 93 +f 91 102 101 92 +f 90 103 102 91 +f 90 89 104 103 +f 88 105 104 89 +f 88 87 106 105 +f 86 107 106 87 +f 85 108 107 86 +f 84 109 108 85 +f 84 83 110 109 +f 82 111 110 83 +f 82 81 112 111 +f 80 113 112 81 +f 80 79 114 113 +f 78 115 114 79 +f 78 77 116 115 +f 76 117 116 77 +f 75 118 117 76 +f 74 119 118 75 +f 74 73 120 119 +f 73 72 121 120 +f 71 122 121 72 +f 71 70 123 122 +f 69 124 123 70 +f 69 68 125 124 +f 67 126 125 68 +f 67 66 127 126 +f 66 65 128 127 +f 127 128 129 130 +f 126 127 130 131 +f 126 131 132 125 +f 124 125 132 133 +f 124 133 134 123 +f 122 123 134 135 +f 122 135 136 121 +f 120 121 136 137 +f 119 120 137 138 +f 119 138 139 118 +f 118 139 140 117 +f 117 140 141 116 +f 115 116 141 142 +f 115 142 143 114 +f 113 114 143 144 +f 113 144 145 112 +f 111 112 145 146 +f 111 146 147 110 +f 109 110 147 148 +f 109 148 149 108 +f 108 149 150 107 +f 107 150 151 106 +f 105 106 151 152 +f 105 152 153 104 +f 103 104 153 154 +f 103 154 155 102 +f 102 155 156 101 +f 101 156 157 100 +f 99 100 157 158 +f 99 158 159 98 +f 98 159 160 97 +f 97 160 129 128 +f 160 161 192 129 +f 159 162 161 160 +f 158 163 162 159 +f 158 157 164 163 +f 156 165 164 157 +f 155 166 165 156 +f 154 167 166 155 +f 154 153 168 167 +f 152 169 168 153 +f 152 151 170 169 +f 150 171 170 151 +f 149 172 171 150 +f 148 173 172 149 +f 148 147 174 173 +f 146 175 174 147 +f 146 145 176 175 +f 144 177 176 145 +f 144 143 178 177 +f 142 179 178 143 +f 142 141 180 179 +f 140 181 180 141 +f 139 182 181 140 +f 138 183 182 139 +f 138 137 184 183 +f 137 136 185 184 +f 135 186 185 136 +f 135 134 187 186 +f 133 188 187 134 +f 133 132 189 188 +f 131 190 189 132 +f 131 130 191 190 +f 130 129 192 191 +f 191 192 193 194 +f 190 191 194 195 +f 190 195 196 189 +f 188 189 196 197 +f 188 197 198 187 +f 186 187 198 199 +f 186 199 200 185 +f 184 185 200 201 +f 183 184 201 202 +f 183 202 203 182 +f 182 203 204 181 +f 181 204 205 180 +f 179 180 205 206 +f 179 206 207 178 +f 177 178 207 208 +f 177 208 209 176 +f 175 176 209 210 +f 175 210 211 174 +f 173 174 211 212 +f 173 212 213 172 +f 172 213 214 171 +f 171 214 215 170 +f 169 170 215 216 +f 169 216 217 168 +f 167 168 217 218 +f 167 218 219 166 +f 166 219 220 165 +f 165 220 221 164 +f 163 164 221 222 +f 163 222 223 162 +f 162 223 224 161 +f 161 224 193 192 +f 224 1059 1060 193 +f 223 1061 1059 224 +f 222 1062 1061 223 +f 222 221 1063 1062 +f 220 1064 1063 221 +f 219 1065 1064 220 +f 218 1066 1065 219 +f 218 217 1067 1066 +f 216 1068 1067 217 +f 216 215 1069 1068 +f 214 1070 1069 215 +f 213 1071 1070 214 +f 212 1072 1071 213 +f 212 211 1073 1072 +f 210 1074 1073 211 +f 210 209 1075 1074 +f 208 1076 1075 209 +f 208 207 1077 1076 +f 206 1078 1077 207 +f 206 205 1079 1078 +f 204 1080 1079 205 +f 203 1081 1080 204 +f 202 1082 1081 203 +f 202 201 1083 1082 +f 201 200 1084 1083 +f 199 1085 1084 200 +f 199 198 1086 1085 +f 197 1087 1086 198 +f 197 196 1088 1087 +f 195 1089 1088 196 +f 195 194 1090 1089 +f 194 193 1060 1090 +f 32 1 225 +f 31 32 225 +f 30 31 225 +f 30 225 29 +f 28 29 225 +f 27 28 225 +f 26 27 225 +f 26 225 25 +f 24 25 225 +f 24 225 23 +f 22 23 225 +f 21 22 225 +f 20 21 225 +f 20 225 19 +f 18 19 225 +f 18 225 17 +f 16 17 225 +f 16 225 15 +f 14 15 225 +f 14 225 13 +f 12 13 225 +f 11 12 225 +f 10 11 225 +f 10 225 9 +f 9 225 8 +f 7 8 225 +f 7 225 6 +f 5 6 225 +f 5 225 4 +f 3 4 225 +f 3 225 2 +f 225 1 2 +f 1058 226 227 1057 +f 1057 227 228 1056 +f 1056 228 229 1055 +f 1055 229 230 1054 +f 1054 230 231 1053 +f 1053 231 232 1052 +f 1052 232 233 1051 +f 1051 233 234 1050 +f 1050 234 235 1049 +f 1049 235 236 1048 +f 1048 236 237 1047 +f 1047 237 238 1046 +f 1046 238 239 1045 +f 1045 239 240 1044 +f 1044 240 241 1043 +f 1043 241 242 1042 +f 1042 242 243 1041 +f 1041 243 244 1040 +f 1040 244 245 1039 +f 1039 245 246 1038 +f 1038 246 247 1037 +f 1037 247 248 1036 +f 1036 248 249 1035 +f 1035 249 250 1034 +f 1034 250 251 1033 +f 1033 251 720 +f 251 252 720 +f 250 253 252 251 +f 249 254 253 250 +f 248 255 254 249 +f 247 256 255 248 +f 246 257 256 247 +f 245 258 257 246 +f 244 259 258 245 +f 243 260 259 244 +f 242 261 260 243 +f 241 262 261 242 +f 240 263 262 241 +f 239 264 263 240 +f 238 265 264 239 +f 237 266 265 238 +f 236 267 266 237 +f 235 268 267 236 +f 234 269 268 235 +f 233 270 269 234 +f 232 271 270 233 +f 231 272 271 232 +f 230 273 272 231 +f 229 274 273 230 +f 228 275 274 229 +f 227 276 275 228 +f 226 277 276 227 +f 277 278 279 276 +f 276 279 280 275 +f 275 280 281 274 +f 274 281 282 273 +f 273 282 283 272 +f 272 283 284 271 +f 271 284 285 270 +f 270 285 286 269 +f 269 286 287 268 +f 268 287 288 267 +f 267 288 289 266 +f 266 289 290 265 +f 265 290 291 264 +f 264 291 292 263 +f 263 292 293 262 +f 262 293 294 261 +f 261 294 295 260 +f 260 295 296 259 +f 259 296 297 258 +f 258 297 298 257 +f 257 298 299 256 +f 256 299 300 255 +f 255 300 301 254 +f 254 301 302 253 +f 253 302 303 252 +f 252 303 720 +f 303 304 720 +f 302 305 304 303 +f 301 306 305 302 +f 300 307 306 301 +f 299 308 307 300 +f 298 309 308 299 +f 297 310 309 298 +f 296 311 310 297 +f 295 312 311 296 +f 294 313 312 295 +f 293 314 313 294 +f 292 315 314 293 +f 291 316 315 292 +f 290 317 316 291 +f 289 318 317 290 +f 288 319 318 289 +f 287 320 319 288 +f 286 321 320 287 +f 285 322 321 286 +f 284 323 322 285 +f 283 324 323 284 +f 282 325 324 283 +f 281 326 325 282 +f 280 327 326 281 +f 279 328 327 280 +f 278 329 328 279 +f 329 330 331 328 +f 328 331 332 327 +f 327 332 333 326 +f 326 333 334 325 +f 325 334 335 324 +f 324 335 336 323 +f 323 336 337 322 +f 322 337 338 321 +f 321 338 339 320 +f 320 339 340 319 +f 319 340 341 318 +f 318 341 342 317 +f 317 342 343 316 +f 316 343 344 315 +f 315 344 345 314 +f 314 345 346 313 +f 313 346 347 312 +f 312 347 348 311 +f 311 348 349 310 +f 310 349 350 309 +f 309 350 351 308 +f 308 351 352 307 +f 307 352 353 306 +f 306 353 354 305 +f 305 354 355 304 +f 304 355 720 +f 355 356 720 +f 354 357 356 355 +f 353 358 357 354 +f 352 359 358 353 +f 351 360 359 352 +f 350 361 360 351 +f 349 362 361 350 +f 348 363 362 349 +f 347 364 363 348 +f 346 365 364 347 +f 345 366 365 346 +f 344 367 366 345 +f 343 368 367 344 +f 342 369 368 343 +f 341 370 369 342 +f 340 371 370 341 +f 339 372 371 340 +f 338 373 372 339 +f 337 374 373 338 +f 336 375 374 337 +f 335 376 375 336 +f 334 377 376 335 +f 333 378 377 334 +f 332 379 378 333 +f 331 380 379 332 +f 330 381 380 331 +f 381 382 383 380 +f 380 383 384 379 +f 379 384 385 378 +f 378 385 386 377 +f 377 386 387 376 +f 376 387 388 375 +f 375 388 389 374 +f 374 389 390 373 +f 373 390 391 372 +f 372 391 392 371 +f 371 392 393 370 +f 370 393 394 369 +f 369 394 395 368 +f 368 395 396 367 +f 367 396 397 366 +f 366 397 398 365 +f 365 398 399 364 +f 364 399 400 363 +f 363 400 401 362 +f 362 401 402 361 +f 361 402 403 360 +f 360 403 404 359 +f 359 404 405 358 +f 358 405 406 357 +f 357 406 407 356 +f 356 407 720 +f 407 408 720 +f 406 409 408 407 +f 405 410 409 406 +f 404 411 410 405 +f 403 412 411 404 +f 402 413 412 403 +f 401 414 413 402 +f 400 415 414 401 +f 399 416 415 400 +f 398 417 416 399 +f 397 418 417 398 +f 396 419 418 397 +f 395 420 419 396 +f 394 421 420 395 +f 393 422 421 394 +f 392 423 422 393 +f 391 424 423 392 +f 390 425 424 391 +f 389 426 425 390 +f 388 427 426 389 +f 387 428 427 388 +f 386 429 428 387 +f 385 430 429 386 +f 384 431 430 385 +f 383 432 431 384 +f 382 433 432 383 +f 433 434 435 432 +f 432 435 436 431 +f 431 436 437 430 +f 430 437 438 429 +f 429 438 439 428 +f 428 439 440 427 +f 427 440 441 426 +f 426 441 442 425 +f 425 442 443 424 +f 424 443 444 423 +f 423 444 445 422 +f 422 445 446 421 +f 421 446 447 420 +f 420 447 448 419 +f 419 448 449 418 +f 418 449 450 417 +f 417 450 451 416 +f 416 451 452 415 +f 415 452 453 414 +f 414 453 454 413 +f 413 454 455 412 +f 412 455 456 411 +f 411 456 457 410 +f 410 457 458 409 +f 409 458 459 408 +f 408 459 720 +f 459 460 720 +f 458 461 460 459 +f 457 462 461 458 +f 456 463 462 457 +f 455 464 463 456 +f 454 465 464 455 +f 453 466 465 454 +f 452 467 466 453 +f 451 468 467 452 +f 450 469 468 451 +f 449 470 469 450 +f 448 471 470 449 +f 447 472 471 448 +f 446 473 472 447 +f 445 474 473 446 +f 444 475 474 445 +f 443 476 475 444 +f 442 477 476 443 +f 441 478 477 442 +f 440 479 478 441 +f 439 480 479 440 +f 438 481 480 439 +f 437 482 481 438 +f 436 483 482 437 +f 435 484 483 436 +f 434 485 484 435 +f 485 486 487 484 +f 484 487 488 483 +f 483 488 489 482 +f 482 489 490 481 +f 481 490 491 480 +f 480 491 492 479 +f 479 492 493 478 +f 478 493 494 477 +f 477 494 495 476 +f 476 495 496 475 +f 475 496 497 474 +f 474 497 498 473 +f 473 498 499 472 +f 472 499 500 471 +f 471 500 501 470 +f 470 501 502 469 +f 469 502 503 468 +f 468 503 504 467 +f 467 504 505 466 +f 466 505 506 465 +f 465 506 507 464 +f 464 507 508 463 +f 463 508 509 462 +f 462 509 510 461 +f 461 510 511 460 +f 460 511 720 +f 511 512 720 +f 510 513 512 511 +f 509 514 513 510 +f 508 515 514 509 +f 507 516 515 508 +f 506 517 516 507 +f 505 518 517 506 +f 504 519 518 505 +f 503 520 519 504 +f 502 521 520 503 +f 501 522 521 502 +f 500 523 522 501 +f 499 524 523 500 +f 498 525 524 499 +f 497 526 525 498 +f 496 527 526 497 +f 495 528 527 496 +f 494 529 528 495 +f 493 530 529 494 +f 492 531 530 493 +f 491 532 531 492 +f 490 533 532 491 +f 489 534 533 490 +f 488 535 534 489 +f 487 536 535 488 +f 486 537 536 487 +f 537 538 539 536 +f 536 539 540 535 +f 535 540 541 534 +f 534 541 542 533 +f 533 542 543 532 +f 532 543 544 531 +f 531 544 545 530 +f 530 545 546 529 +f 529 546 547 528 +f 528 547 548 527 +f 527 548 549 526 +f 526 549 550 525 +f 525 550 551 524 +f 524 551 552 523 +f 523 552 553 522 +f 522 553 554 521 +f 521 554 555 520 +f 520 555 556 519 +f 519 556 557 518 +f 518 557 558 517 +f 517 558 559 516 +f 516 559 560 515 +f 515 560 561 514 +f 514 561 562 513 +f 513 562 563 512 +f 512 563 720 +f 563 564 720 +f 562 565 564 563 +f 561 566 565 562 +f 560 567 566 561 +f 559 568 567 560 +f 558 569 568 559 +f 557 570 569 558 +f 556 571 570 557 +f 555 572 571 556 +f 554 573 572 555 +f 553 574 573 554 +f 552 575 574 553 +f 551 576 575 552 +f 550 577 576 551 +f 549 578 577 550 +f 548 579 578 549 +f 547 580 579 548 +f 546 581 580 547 +f 545 582 581 546 +f 544 583 582 545 +f 543 584 583 544 +f 542 585 584 543 +f 541 586 585 542 +f 540 587 586 541 +f 539 588 587 540 +f 538 589 588 539 +f 589 590 591 588 +f 588 591 592 587 +f 587 592 593 586 +f 586 593 594 585 +f 585 594 595 584 +f 584 595 596 583 +f 583 596 597 582 +f 582 597 598 581 +f 581 598 599 580 +f 580 599 600 579 +f 579 600 601 578 +f 578 601 602 577 +f 577 602 603 576 +f 576 603 604 575 +f 575 604 605 574 +f 574 605 606 573 +f 573 606 607 572 +f 572 607 608 571 +f 571 608 609 570 +f 570 609 610 569 +f 569 610 611 568 +f 568 611 612 567 +f 567 612 613 566 +f 566 613 614 565 +f 565 614 615 564 +f 564 615 720 +f 615 616 720 +f 614 617 616 615 +f 613 618 617 614 +f 612 619 618 613 +f 611 620 619 612 +f 610 621 620 611 +f 609 622 621 610 +f 608 623 622 609 +f 607 624 623 608 +f 606 625 624 607 +f 605 626 625 606 +f 604 627 626 605 +f 603 628 627 604 +f 602 629 628 603 +f 601 630 629 602 +f 600 631 630 601 +f 599 632 631 600 +f 598 633 632 599 +f 597 634 633 598 +f 596 635 634 597 +f 595 636 635 596 +f 594 637 636 595 +f 593 638 637 594 +f 592 639 638 593 +f 591 640 639 592 +f 590 641 640 591 +f 641 642 643 640 +f 640 643 644 639 +f 639 644 645 638 +f 638 645 646 637 +f 637 646 647 636 +f 636 647 648 635 +f 635 648 649 634 +f 634 649 650 633 +f 633 650 651 632 +f 632 651 652 631 +f 631 652 653 630 +f 630 653 654 629 +f 629 654 655 628 +f 628 655 656 627 +f 627 656 657 626 +f 626 657 658 625 +f 625 658 659 624 +f 624 659 660 623 +f 623 660 661 622 +f 622 661 662 621 +f 621 662 663 620 +f 620 663 664 619 +f 619 664 665 618 +f 618 665 666 617 +f 617 666 667 616 +f 616 667 720 +f 667 668 720 +f 666 669 668 667 +f 665 670 669 666 +f 664 671 670 665 +f 663 672 671 664 +f 662 673 672 663 +f 661 674 673 662 +f 660 675 674 661 +f 659 676 675 660 +f 658 677 676 659 +f 657 678 677 658 +f 656 679 678 657 +f 655 680 679 656 +f 654 681 680 655 +f 653 682 681 654 +f 652 683 682 653 +f 651 684 683 652 +f 650 685 684 651 +f 649 686 685 650 +f 648 687 686 649 +f 647 688 687 648 +f 646 689 688 647 +f 645 690 689 646 +f 644 691 690 645 +f 643 692 691 644 +f 642 693 692 643 +f 693 694 695 692 +f 692 695 696 691 +f 691 696 697 690 +f 690 697 698 689 +f 689 698 699 688 +f 688 699 700 687 +f 687 700 701 686 +f 686 701 702 685 +f 685 702 703 684 +f 684 703 704 683 +f 683 704 705 682 +f 682 705 706 681 +f 681 706 707 680 +f 680 707 708 679 +f 679 708 709 678 +f 678 709 710 677 +f 677 710 711 676 +f 676 711 712 675 +f 675 712 713 674 +f 674 713 714 673 +f 673 714 715 672 +f 672 715 716 671 +f 671 716 717 670 +f 670 717 718 669 +f 669 718 719 668 +f 668 719 720 +f 719 721 720 +f 718 722 721 719 +f 717 723 722 718 +f 716 724 723 717 +f 715 725 724 716 +f 714 726 725 715 +f 713 727 726 714 +f 712 728 727 713 +f 711 729 728 712 +f 710 730 729 711 +f 709 731 730 710 +f 708 732 731 709 +f 707 733 732 708 +f 706 734 733 707 +f 705 735 734 706 +f 704 736 735 705 +f 703 737 736 704 +f 702 738 737 703 +f 701 739 738 702 +f 700 740 739 701 +f 699 741 740 700 +f 698 742 741 699 +f 697 743 742 698 +f 696 744 743 697 +f 695 745 744 696 +f 694 746 745 695 +f 746 747 748 745 +f 745 748 749 744 +f 744 749 750 743 +f 743 750 751 742 +f 742 751 752 741 +f 741 752 753 740 +f 740 753 754 739 +f 739 754 755 738 +f 738 755 756 737 +f 737 756 757 736 +f 736 757 758 735 +f 735 758 759 734 +f 734 759 760 733 +f 733 760 761 732 +f 732 761 762 731 +f 731 762 763 730 +f 730 763 764 729 +f 729 764 765 728 +f 728 765 766 727 +f 727 766 767 726 +f 726 767 768 725 +f 725 768 769 724 +f 724 769 770 723 +f 723 770 771 722 +f 722 771 772 721 +f 721 772 720 +f 772 773 720 +f 771 774 773 772 +f 770 775 774 771 +f 769 776 775 770 +f 768 777 776 769 +f 767 778 777 768 +f 766 779 778 767 +f 765 780 779 766 +f 764 781 780 765 +f 763 782 781 764 +f 762 783 782 763 +f 761 784 783 762 +f 760 785 784 761 +f 759 786 785 760 +f 758 787 786 759 +f 757 788 787 758 +f 756 789 788 757 +f 755 790 789 756 +f 754 791 790 755 +f 753 792 791 754 +f 752 793 792 753 +f 751 794 793 752 +f 750 795 794 751 +f 749 796 795 750 +f 748 797 796 749 +f 747 798 797 748 +f 798 799 800 797 +f 797 800 801 796 +f 796 801 802 795 +f 795 802 803 794 +f 794 803 804 793 +f 793 804 805 792 +f 792 805 806 791 +f 791 806 807 790 +f 790 807 808 789 +f 789 808 809 788 +f 788 809 810 787 +f 787 810 811 786 +f 786 811 812 785 +f 785 812 813 784 +f 784 813 814 783 +f 783 814 815 782 +f 782 815 816 781 +f 781 816 817 780 +f 780 817 818 779 +f 779 818 819 778 +f 778 819 820 777 +f 777 820 821 776 +f 776 821 822 775 +f 775 822 823 774 +f 774 823 824 773 +f 773 824 720 +f 824 825 720 +f 823 826 825 824 +f 822 827 826 823 +f 821 828 827 822 +f 820 829 828 821 +f 819 830 829 820 +f 818 831 830 819 +f 817 832 831 818 +f 816 833 832 817 +f 815 834 833 816 +f 814 835 834 815 +f 813 836 835 814 +f 812 837 836 813 +f 811 838 837 812 +f 810 839 838 811 +f 809 840 839 810 +f 808 841 840 809 +f 807 842 841 808 +f 806 843 842 807 +f 805 844 843 806 +f 804 845 844 805 +f 803 846 845 804 +f 802 847 846 803 +f 801 848 847 802 +f 800 849 848 801 +f 799 850 849 800 +f 850 851 852 849 +f 849 852 853 848 +f 848 853 854 847 +f 847 854 855 846 +f 846 855 856 845 +f 845 856 857 844 +f 844 857 858 843 +f 843 858 859 842 +f 842 859 860 841 +f 841 860 861 840 +f 840 861 862 839 +f 839 862 863 838 +f 838 863 864 837 +f 837 864 865 836 +f 836 865 866 835 +f 835 866 867 834 +f 834 867 868 833 +f 833 868 869 832 +f 832 869 870 831 +f 831 870 871 830 +f 830 871 872 829 +f 829 872 873 828 +f 828 873 874 827 +f 827 874 875 826 +f 826 875 876 825 +f 825 876 720 +f 876 877 720 +f 875 878 877 876 +f 874 879 878 875 +f 873 880 879 874 +f 872 881 880 873 +f 871 882 881 872 +f 870 883 882 871 +f 869 884 883 870 +f 868 885 884 869 +f 867 886 885 868 +f 866 887 886 867 +f 865 888 887 866 +f 864 889 888 865 +f 863 890 889 864 +f 862 891 890 863 +f 861 892 891 862 +f 860 893 892 861 +f 859 894 893 860 +f 858 895 894 859 +f 857 896 895 858 +f 856 897 896 857 +f 855 898 897 856 +f 854 899 898 855 +f 853 900 899 854 +f 852 901 900 853 +f 851 902 901 852 +f 902 903 904 901 +f 901 904 905 900 +f 900 905 906 899 +f 899 906 907 898 +f 898 907 908 897 +f 897 908 909 896 +f 896 909 910 895 +f 895 910 911 894 +f 894 911 912 893 +f 893 912 913 892 +f 892 913 914 891 +f 891 914 915 890 +f 890 915 916 889 +f 889 916 917 888 +f 888 917 918 887 +f 887 918 919 886 +f 886 919 920 885 +f 885 920 921 884 +f 884 921 922 883 +f 883 922 923 882 +f 882 923 924 881 +f 881 924 925 880 +f 880 925 926 879 +f 879 926 927 878 +f 878 927 928 877 +f 877 928 720 +f 928 929 720 +f 927 930 929 928 +f 926 931 930 927 +f 925 932 931 926 +f 924 933 932 925 +f 923 934 933 924 +f 922 935 934 923 +f 921 936 935 922 +f 920 937 936 921 +f 919 938 937 920 +f 918 939 938 919 +f 917 940 939 918 +f 916 941 940 917 +f 915 942 941 916 +f 914 943 942 915 +f 913 944 943 914 +f 912 945 944 913 +f 911 946 945 912 +f 910 947 946 911 +f 909 948 947 910 +f 908 949 948 909 +f 907 950 949 908 +f 906 951 950 907 +f 905 952 951 906 +f 904 953 952 905 +f 903 954 953 904 +f 954 955 956 953 +f 953 956 957 952 +f 952 957 958 951 +f 951 958 959 950 +f 950 959 960 949 +f 949 960 961 948 +f 948 961 962 947 +f 947 962 963 946 +f 946 963 964 945 +f 945 964 965 944 +f 944 965 966 943 +f 943 966 967 942 +f 942 967 968 941 +f 941 968 969 940 +f 940 969 970 939 +f 939 970 971 938 +f 938 971 972 937 +f 937 972 973 936 +f 936 973 974 935 +f 935 974 975 934 +f 934 975 976 933 +f 933 976 977 932 +f 932 977 978 931 +f 931 978 979 930 +f 930 979 980 929 +f 929 980 720 +f 980 981 720 +f 979 982 981 980 +f 978 983 982 979 +f 977 984 983 978 +f 976 985 984 977 +f 975 986 985 976 +f 974 987 986 975 +f 973 988 987 974 +f 972 989 988 973 +f 971 990 989 972 +f 970 991 990 971 +f 969 992 991 970 +f 968 993 992 969 +f 967 994 993 968 +f 966 995 994 967 +f 965 996 995 966 +f 964 997 996 965 +f 963 998 997 964 +f 962 999 998 963 +f 961 1000 999 962 +f 960 1001 1000 961 +f 959 1002 1001 960 +f 958 1003 1002 959 +f 957 1004 1003 958 +f 956 1005 1004 957 +f 955 1006 1005 956 +f 1006 1007 1008 1005 +f 1005 1008 1009 1004 +f 1004 1009 1010 1003 +f 1003 1010 1011 1002 +f 1002 1011 1012 1001 +f 1001 1012 1013 1000 +f 1000 1013 1014 999 +f 999 1014 1015 998 +f 998 1015 1016 997 +f 997 1016 1017 996 +f 996 1017 1018 995 +f 995 1018 1019 994 +f 994 1019 1020 993 +f 993 1020 1021 992 +f 992 1021 1022 991 +f 991 1022 1023 990 +f 990 1023 1024 989 +f 989 1024 1025 988 +f 988 1025 1026 987 +f 987 1026 1027 986 +f 986 1027 1028 985 +f 985 1028 1029 984 +f 984 1029 1030 983 +f 983 1030 1031 982 +f 982 1031 1032 981 +f 981 1032 720 +f 1032 1033 720 +f 1031 1034 1033 1032 +f 1030 1035 1034 1031 +f 1029 1036 1035 1030 +f 1028 1037 1036 1029 +f 1027 1038 1037 1028 +f 1026 1039 1038 1027 +f 1025 1040 1039 1026 +f 1024 1041 1040 1025 +f 1023 1042 1041 1024 +f 1022 1043 1042 1023 +f 1021 1044 1043 1022 +f 1020 1045 1044 1021 +f 1019 1046 1045 1020 +f 1018 1047 1046 1019 +f 1017 1048 1047 1018 +f 1016 1049 1048 1017 +f 1015 1050 1049 1016 +f 1014 1051 1050 1015 +f 1013 1052 1051 1014 +f 1012 1053 1052 1013 +f 1011 1054 1053 1012 +f 1010 1055 1054 1011 +f 1009 1056 1055 1010 +f 1008 1057 1056 1009 +f 1007 1058 1057 1008 +f 1060 1091 1092 1090 +f 1090 1092 1093 1089 +f 1089 1093 1094 1088 +f 1088 1094 1095 1087 +f 1087 1095 1096 1086 +f 1086 1096 1097 1085 +f 1085 1097 1098 1084 +f 1084 1098 1099 1083 +f 1083 1099 1100 1082 +f 1082 1100 1101 1081 +f 1081 1101 1102 1080 +f 1080 1102 1103 1079 +f 1079 1103 1104 1078 +f 1078 1104 1105 1077 +f 1077 1105 1106 1076 +f 1076 1106 1107 1075 +f 1075 1107 1108 1074 +f 1074 1108 1109 1073 +f 1073 1109 1110 1072 +f 1072 1110 1111 1071 +f 1071 1111 1112 1070 +f 1070 1112 1113 1069 +f 1069 1113 1114 1068 +f 1068 1114 1115 1067 +f 1067 1115 1116 1066 +f 1066 1116 1117 1065 +f 1065 1117 1118 1064 +f 1064 1118 1119 1063 +f 1063 1119 1120 1062 +f 1062 1120 1121 1061 +f 1061 1121 1122 1059 +f 1059 1122 1091 1060 +f 1122 330 329 1091 +f 1121 381 330 1122 +f 1120 382 381 1121 +f 1119 433 382 1120 +f 1118 434 433 1119 +f 1117 485 434 1118 +f 1116 486 485 1117 +f 1115 537 486 1116 +f 1114 538 537 1115 +f 1113 589 538 1114 +f 1112 590 589 1113 +f 1111 641 590 1112 +f 1110 642 641 1111 +f 1109 693 642 1110 +f 1108 694 693 1109 +f 1107 746 694 1108 +f 1106 747 746 1107 +f 1105 798 747 1106 +f 1104 799 798 1105 +f 1103 850 799 1104 +f 1102 851 850 1103 +f 1101 902 851 1102 +f 1100 903 902 1101 +f 1099 954 903 1100 +f 1098 955 954 1099 +f 1097 1006 955 1098 +f 1096 1007 1006 1097 +f 1095 1058 1007 1096 +f 1094 226 1058 1095 +f 1093 277 226 1094 +f 1092 278 277 1093 +f 1091 329 278 1092 +f 1123 64 63 1154 +f 1154 63 62 1153 +f 1153 62 61 1152 +f 1152 61 60 1151 +f 1151 60 59 1150 +f 1150 59 58 1149 +f 1149 58 57 1148 +f 1148 57 56 1147 +f 1147 56 55 1146 +f 1146 55 54 1145 +f 1145 54 53 1144 +f 1144 53 52 1143 +f 1143 52 51 1142 +f 1142 51 50 1141 +f 1141 50 49 1140 +f 1140 49 48 1139 +f 1139 48 47 1138 +f 1138 47 46 1137 +f 1137 46 45 1136 +f 1136 45 44 1135 +f 1135 44 43 1134 +f 1134 43 42 1133 +f 1133 42 41 1132 +f 1132 41 40 1131 +f 1131 40 39 1130 +f 1130 39 38 1129 +f 1129 38 37 1128 +f 1128 37 36 1127 +f 1127 36 35 1126 +f 1126 35 34 1125 +f 1125 34 33 1124 +f 1123 1155 1186 1124 +f 1155 1 32 1186 +f 1155 1123 1154 1156 +f 1156 1154 1153 1157 +f 1157 1153 1152 1158 +f 1158 1152 1151 1159 +f 1159 1151 1150 1160 +f 1160 1150 1149 1161 +f 1161 1149 1148 1162 +f 1162 1148 1147 1163 +f 1163 1147 1146 1164 +f 1164 1146 1145 1165 +f 1165 1145 1144 1166 +f 1166 1144 1143 1167 +f 1167 1143 1142 1168 +f 1168 1142 1141 1169 +f 1169 1141 1140 1170 +f 1170 1140 1139 1171 +f 1171 1139 1138 1172 +f 1172 1138 1137 1173 +f 1173 1137 1136 1174 +f 1174 1136 1135 1175 +f 1175 1135 1134 1176 +f 1176 1134 1133 1177 +f 1177 1133 1132 1178 +f 1178 1132 1131 1179 +f 1179 1131 1130 1180 +f 1180 1130 1129 1181 +f 1181 1129 1128 1182 +f 1182 1128 1127 1183 +f 1183 1127 1126 1184 +f 1184 1126 1125 1185 +f 1185 1125 1124 1186 diff --git a/Graph3D/Chess3D/queen.obj b/Graph3D/Chess3D/queen.obj new file mode 100644 index 0000000..78acb99 --- /dev/null +++ b/Graph3D/Chess3D/queen.obj @@ -0,0 +1,2214 @@ +# Blender3D v245 OBJ File: chess2.blend +# www.blender3d.org +v -0.400000 -6.400000 0.000000 +v -0.294475 -6.528583 0.000000 +v -0.216062 -6.675282 0.000000 +v -0.167776 -6.834460 0.000000 +v -0.151472 -7.000000 0.000000 +v -0.167776 -7.165540 0.000000 +v -0.216062 -7.324718 0.000000 +v -0.294475 -7.471417 0.000000 +v -0.400000 -7.600000 0.000000 +v -0.528583 -7.705525 0.000000 +v -0.675282 -7.783938 0.000000 +v -0.834461 -7.832224 0.000000 +v -1.000000 -7.848528 0.000000 +v -1.165540 -7.832224 0.000000 +v -1.324718 -7.783937 0.000000 +v -1.471417 -7.705525 0.000000 +v -1.600000 -7.599999 0.000000 +v -1.705526 -7.471416 0.000000 +v -1.783938 -7.324717 0.000000 +v -1.832224 -7.165539 0.000000 +v -1.848528 -6.999999 0.000000 +v -1.832224 -6.834459 0.000000 +v -1.783937 -6.675282 0.000000 +v -1.705525 -6.528582 0.000000 +v -1.599999 -6.399999 0.000000 +v -1.471416 -6.294474 0.000000 +v -1.324717 -6.216062 0.000000 +v -1.165538 -6.167776 0.000000 +v -0.999999 -6.151472 0.000000 +v -0.834459 -6.167777 0.000000 +v -0.675281 -6.216063 0.000000 +v -0.528582 -6.294476 0.000000 +v -0.528582 -6.294476 0.100000 +v -0.675281 -6.216063 0.100000 +v -0.834459 -6.167777 0.100000 +v -0.999999 -6.151472 0.100000 +v -1.165538 -6.167776 0.100000 +v -1.324717 -6.216062 0.100000 +v -1.471416 -6.294474 0.100000 +v -1.599999 -6.399999 0.100000 +v -1.705525 -6.528582 0.100000 +v -1.783937 -6.675282 0.100000 +v -1.832224 -6.834459 0.100000 +v -1.848528 -6.999999 0.100000 +v -1.832224 -7.165539 0.100000 +v -1.783938 -7.324717 0.100000 +v -1.705526 -7.471416 0.100000 +v -1.600000 -7.599999 0.100000 +v -1.471417 -7.705525 0.100000 +v -1.324718 -7.783937 0.100000 +v -1.165540 -7.832224 0.100000 +v -1.000000 -7.848528 0.100000 +v -0.834461 -7.832224 0.100000 +v -0.675282 -7.783938 0.100000 +v -0.528583 -7.705525 0.100000 +v -0.400000 -7.600000 0.100000 +v -0.294475 -7.471417 0.100000 +v -0.216062 -7.324718 0.100000 +v -0.167776 -7.165540 0.100000 +v -0.151472 -7.000000 0.100000 +v -0.167776 -6.834460 0.100000 +v -0.216062 -6.675282 0.100000 +v -0.294475 -6.528583 0.100000 +v -0.400000 -6.400000 0.100000 +v -0.520000 -6.520000 0.200000 +v -0.435580 -6.622867 0.200000 +v -0.372850 -6.740226 0.200000 +v -0.334221 -6.867568 0.200000 +v -0.321177 -7.000000 0.200000 +v -0.334221 -7.132432 0.200000 +v -0.372850 -7.259774 0.200000 +v -0.435580 -7.377133 0.200000 +v -0.520000 -7.480000 0.200000 +v -0.622866 -7.564420 0.200000 +v -0.740226 -7.627151 0.200000 +v -0.867568 -7.665779 0.200000 +v -1.000000 -7.678823 0.200000 +v -1.132432 -7.665779 0.200000 +v -1.259774 -7.627150 0.200000 +v -1.377134 -7.564420 0.200000 +v -1.480000 -7.480000 0.200000 +v -1.564421 -7.377133 0.200000 +v -1.627151 -7.259774 0.200000 +v -1.665779 -7.132431 0.200000 +v -1.678823 -7.000000 0.200000 +v -1.665779 -6.867568 0.200000 +v -1.627150 -6.740225 0.200000 +v -1.564420 -6.622866 0.200000 +v -1.479999 -6.520000 0.200000 +v -1.377133 -6.435579 0.200000 +v -1.259773 -6.372849 0.200000 +v -1.132431 -6.334221 0.200000 +v -0.999999 -6.321177 0.200000 +v -0.867567 -6.334221 0.200000 +v -0.740225 -6.372850 0.200000 +v -0.622865 -6.435580 0.200000 +v -0.585152 -6.379138 0.300000 +v -0.714247 -6.310135 0.300000 +v -0.854324 -6.267643 0.300000 +v -0.999999 -6.253295 0.300000 +v -1.145674 -6.267642 0.300000 +v -1.285751 -6.310134 0.300000 +v -1.414846 -6.379137 0.300000 +v -1.527999 -6.471999 0.300000 +v -1.620862 -6.585152 0.300000 +v -1.689865 -6.714248 0.300000 +v -1.732357 -6.854324 0.300000 +v -1.746705 -6.999999 0.300000 +v -1.732357 -7.145674 0.300000 +v -1.689866 -7.285751 0.300000 +v -1.620863 -7.414846 0.300000 +v -1.528000 -7.528000 0.300000 +v -1.414847 -7.620862 0.300000 +v -1.285752 -7.689865 0.300000 +v -1.145675 -7.732357 0.300000 +v -1.000000 -7.746705 0.300000 +v -0.854325 -7.732357 0.300000 +v -0.714249 -7.689865 0.300000 +v -0.585153 -7.620862 0.300000 +v -0.472000 -7.528000 0.300000 +v -0.379138 -7.414847 0.300000 +v -0.310135 -7.285751 0.300000 +v -0.267643 -7.145675 0.300000 +v -0.253295 -7.000000 0.300000 +v -0.267643 -6.854325 0.300000 +v -0.310135 -6.714249 0.300000 +v -0.379138 -6.585153 0.300000 +v -0.472000 -6.472000 0.300000 +v -0.657856 -6.657856 0.400000 +v -0.597681 -6.731179 0.400000 +v -0.552967 -6.814833 0.400000 +v -0.525433 -6.905602 0.400000 +v -0.516135 -7.000000 0.400000 +v -0.525433 -7.094397 0.400000 +v -0.552967 -7.185167 0.400000 +v -0.597681 -7.268821 0.400000 +v -0.657856 -7.342144 0.400000 +v -0.731179 -7.402319 0.400000 +v -0.814833 -7.447033 0.400000 +v -0.905603 -7.474567 0.400000 +v -1.000000 -7.483865 0.400000 +v -1.094398 -7.474567 0.400000 +v -1.185167 -7.447033 0.400000 +v -1.268821 -7.402319 0.400000 +v -1.342144 -7.342144 0.400000 +v -1.402319 -7.268821 0.400000 +v -1.447033 -7.185167 0.400000 +v -1.474568 -7.094397 0.400000 +v -1.483865 -7.000000 0.400000 +v -1.474567 -6.905602 0.400000 +v -1.447032 -6.814833 0.400000 +v -1.402318 -6.731179 0.400000 +v -1.342144 -6.657856 0.400000 +v -1.268820 -6.597681 0.400000 +v -1.185166 -6.552967 0.400000 +v -1.094397 -6.525433 0.400000 +v -0.999999 -6.516135 0.400000 +v -0.905602 -6.525433 0.400000 +v -0.814832 -6.552968 0.400000 +v -0.731178 -6.597682 0.400000 +v -0.806448 -6.710331 1.400000 +v -0.866679 -6.678137 1.400000 +v -0.932033 -6.658311 1.400000 +v -0.999999 -6.651618 1.400000 +v -1.067966 -6.658311 1.400000 +v -1.133320 -6.678136 1.400000 +v -1.193551 -6.710330 1.400000 +v -1.246343 -6.753656 1.400000 +v -1.289669 -6.806448 1.400000 +v -1.321863 -6.866679 1.400000 +v -1.341689 -6.932034 1.400000 +v -1.348383 -7.000000 1.400000 +v -1.341689 -7.067966 1.400000 +v -1.321864 -7.133320 1.400000 +v -1.289670 -7.193551 1.400000 +v -1.246344 -7.246344 1.400000 +v -1.193551 -7.289670 1.400000 +v -1.133320 -7.321864 1.400000 +v -1.067966 -7.341689 1.400000 +v -1.000000 -7.348382 1.400000 +v -0.932034 -7.341689 1.400000 +v -0.866680 -7.321864 1.400000 +v -0.806449 -7.289670 1.400000 +v -0.753656 -7.246344 1.400000 +v -0.710330 -7.193551 1.400000 +v -0.678136 -7.133320 1.400000 +v -0.658311 -7.067966 1.400000 +v -0.651617 -7.000000 1.400000 +v -0.658311 -6.932034 1.400000 +v -0.678136 -6.866680 1.400000 +v -0.710330 -6.806449 1.400000 +v -0.753656 -6.753656 1.400000 +v -0.704388 -6.704388 1.400000 +v -0.652396 -6.767739 1.400000 +v -0.613764 -6.840016 1.400000 +v -0.589974 -6.918441 1.400000 +v -0.581941 -7.000000 1.400000 +v -0.589974 -7.081559 1.400000 +v -0.613764 -7.159984 1.400000 +v -0.652396 -7.232261 1.400000 +v -0.704388 -7.295612 1.400000 +v -0.767739 -7.347603 1.400000 +v -0.840016 -7.386236 1.400000 +v -0.918441 -7.410027 1.400000 +v -1.000000 -7.418059 1.400000 +v -1.081559 -7.410026 1.400000 +v -1.159984 -7.386236 1.400000 +v -1.232261 -7.347603 1.400000 +v -1.295613 -7.295612 1.400000 +v -1.347604 -7.232261 1.400000 +v -1.386236 -7.159984 1.400000 +v -1.410026 -7.081559 1.400000 +v -1.418059 -7.000000 1.400000 +v -1.410026 -6.918440 1.400000 +v -1.386236 -6.840015 1.400000 +v -1.347603 -6.767738 1.400000 +v -1.295612 -6.704387 1.400000 +v -1.232261 -6.652396 1.400000 +v -1.159984 -6.613763 1.400000 +v -1.081559 -6.589973 1.400000 +v -0.999999 -6.581941 1.400000 +v -0.918440 -6.589974 1.400000 +v -0.840015 -6.613764 1.400000 +v -0.767738 -6.652397 1.400000 +v -0.716124 -6.575152 1.500000 +v -0.804463 -6.527934 1.500000 +v -0.900316 -6.498857 1.500000 +v -0.999999 -6.489039 1.500000 +v -1.099683 -6.498857 1.500000 +v -1.195536 -6.527933 1.500000 +v -1.283874 -6.575151 1.500000 +v -1.361304 -6.638695 1.500000 +v -1.424848 -6.716125 1.500000 +v -1.472066 -6.804463 1.500000 +v -1.501143 -6.900316 1.500000 +v -1.510961 -7.000000 1.500000 +v -1.501143 -7.099683 1.500000 +v -1.472067 -7.195536 1.500000 +v -1.424849 -7.283875 1.500000 +v -1.361304 -7.361304 1.500000 +v -1.283875 -7.424849 1.500000 +v -1.195537 -7.472066 1.500000 +v -1.099684 -7.501143 1.500000 +v -1.000000 -7.510961 1.500000 +v -0.900317 -7.501143 1.500000 +v -0.804464 -7.472066 1.500000 +v -0.716125 -7.424849 1.500000 +v -0.638696 -7.361304 1.500000 +v -0.575151 -7.283875 1.500000 +v -0.527933 -7.195536 1.500000 +v -0.498857 -7.099684 1.500000 +v -0.489039 -7.000000 1.500000 +v -0.498857 -6.900316 1.500000 +v -0.527933 -6.804463 1.500000 +v -0.575151 -6.716125 1.500000 +v -0.638696 -6.638696 1.500000 +v -0.707344 -6.707344 1.600000 +v -0.655872 -6.770061 1.600000 +v -0.617626 -6.841616 1.600000 +v -0.594074 -6.919256 1.600000 +v -0.586121 -7.000000 1.600000 +v -0.594074 -7.080744 1.600000 +v -0.617626 -7.158384 1.600000 +v -0.655872 -7.229939 1.600000 +v -0.707344 -7.292656 1.600000 +v -0.770061 -7.344128 1.600000 +v -0.841616 -7.382374 1.600000 +v -0.919256 -7.405926 1.600000 +v -1.000000 -7.413878 1.600000 +v -1.080744 -7.405926 1.600000 +v -1.158385 -7.382374 1.600000 +v -1.229939 -7.344127 1.600000 +v -1.292657 -7.292656 1.600000 +v -1.344128 -7.229939 1.600000 +v -1.382374 -7.158384 1.600000 +v -1.405926 -7.080743 1.600000 +v -1.413879 -7.000000 1.600000 +v -1.405926 -6.919256 1.600000 +v -1.382374 -6.841615 1.600000 +v -1.344127 -6.770061 1.600000 +v -1.292656 -6.707343 1.600000 +v -1.229938 -6.655872 1.600000 +v -1.158384 -6.617626 1.600000 +v -1.080743 -6.594074 1.600000 +v -0.999999 -6.586122 1.600000 +v -0.919256 -6.594074 1.600000 +v -0.841615 -6.617626 1.600000 +v -0.770061 -6.655873 1.600000 +v -0.718963 -6.579400 2.300000 +v -0.806418 -6.532654 2.300000 +v -0.901312 -6.503868 2.300000 +v -0.999999 -6.494148 2.300000 +v -1.098686 -6.503868 2.300000 +v -1.193580 -6.532654 2.300000 +v -1.281036 -6.579400 2.300000 +v -1.357691 -6.642308 2.300000 +v -1.420600 -6.718964 2.300000 +v -1.467346 -6.806418 2.300000 +v -1.496132 -6.901313 2.300000 +v -1.505852 -7.000000 2.300000 +v -1.496132 -7.098686 2.300000 +v -1.467346 -7.193581 2.300000 +v -1.420600 -7.281036 2.300000 +v -1.357691 -7.357691 2.300000 +v -1.281036 -7.420600 2.300000 +v -1.193581 -7.467346 2.300000 +v -1.098687 -7.496132 2.300000 +v -1.000000 -7.505852 2.300000 +v -0.901313 -7.496132 2.300000 +v -0.806419 -7.467346 2.300000 +v -0.718964 -7.420600 2.300000 +v -0.642309 -7.357691 2.300000 +v -0.579400 -7.281036 2.300000 +v -0.532654 -7.193581 2.300000 +v -0.503868 -7.098687 2.300000 +v -0.494148 -7.000000 2.300000 +v -0.503868 -6.901313 2.300000 +v -0.532654 -6.806419 2.300000 +v -0.579400 -6.718964 2.300000 +v -0.642309 -6.642309 2.300000 +v -0.562822 -6.562822 2.400000 +v -0.485933 -6.656511 2.400000 +v -0.428799 -6.763401 2.400000 +v -0.393617 -6.879383 2.400000 +v -0.381737 -7.000000 2.400000 +v -0.393617 -7.120617 2.400000 +v -0.428799 -7.236599 2.400000 +v -0.485933 -7.343489 2.400000 +v -0.562822 -7.437178 2.400000 +v -0.656511 -7.514067 2.400000 +v -0.763401 -7.571200 2.400000 +v -0.879383 -7.606383 2.400000 +v -1.000000 -7.618263 2.400000 +v -1.120617 -7.606383 2.400000 +v -1.236599 -7.571200 2.400000 +v -1.343489 -7.514067 2.400000 +v -1.437178 -7.437178 2.400000 +v -1.514067 -7.343488 2.400000 +v -1.571201 -7.236598 2.400000 +v -1.606383 -7.120616 2.400000 +v -1.618263 -7.000000 2.400000 +v -1.606383 -6.879382 2.400000 +v -1.571200 -6.763400 2.400000 +v -1.514067 -6.656511 2.400000 +v -1.437178 -6.562821 2.400000 +v -1.343488 -6.485932 2.400000 +v -1.236598 -6.428799 2.400000 +v -1.120616 -6.393617 2.400000 +v -0.999999 -6.381737 2.400000 +v -0.879382 -6.393617 2.400000 +v -0.763400 -6.428800 2.400000 +v -0.656510 -6.485934 2.400000 +v -0.725208 -6.588747 2.400000 +v -0.810720 -6.543040 2.400000 +v -0.903505 -6.514894 2.400000 +v -0.999999 -6.505390 2.400000 +v -1.096493 -6.514893 2.400000 +v -1.189279 -6.543039 2.400000 +v -1.274790 -6.588746 2.400000 +v -1.349742 -6.650257 2.400000 +v -1.411253 -6.725209 2.400000 +v -1.456960 -6.810720 2.400000 +v -1.485107 -6.903506 2.400000 +v -1.494611 -7.000000 2.400000 +v -1.485107 -7.096493 2.400000 +v -1.456961 -7.189279 2.400000 +v -1.411254 -7.274791 2.400000 +v -1.349743 -7.349742 2.400000 +v -1.274791 -7.411253 2.400000 +v -1.189279 -7.456961 2.400000 +v -1.096494 -7.485106 2.400000 +v -1.000000 -7.494610 2.400000 +v -0.903506 -7.485106 2.400000 +v -0.810721 -7.456961 2.400000 +v -0.725209 -7.411253 2.400000 +v -0.650258 -7.349742 2.400000 +v -0.588746 -7.274791 2.400000 +v -0.543040 -7.189279 2.400000 +v -0.514893 -7.096494 2.400000 +v -0.505389 -7.000000 2.400000 +v -0.514893 -6.903506 2.400000 +v -0.543040 -6.810721 2.400000 +v -0.588746 -6.725209 2.400000 +v -0.650258 -6.650258 2.400000 +v -0.685232 -6.685232 2.200000 +v -0.629872 -6.752688 2.200000 +v -0.588736 -6.829648 2.200000 +v -0.563404 -6.913156 2.200000 +v -0.554851 -7.000000 2.200000 +v -0.563404 -7.086844 2.200000 +v -0.588736 -7.170351 2.200000 +v -0.629872 -7.247312 2.200000 +v -0.685232 -7.314768 2.200000 +v -0.752688 -7.370128 2.200000 +v -0.829649 -7.411264 2.200000 +v -0.913156 -7.436596 2.200000 +v -1.000000 -7.445149 2.200000 +v -1.086845 -7.436596 2.200000 +v -1.170352 -7.411264 2.200000 +v -1.247312 -7.370128 2.200000 +v -1.314768 -7.314768 2.200000 +v -1.370128 -7.247312 2.200000 +v -1.411265 -7.170351 2.200000 +v -1.436596 -7.086844 2.200000 +v -1.445149 -7.000000 2.200000 +v -1.436596 -6.913155 2.200000 +v -1.411264 -6.829648 2.200000 +v -1.370128 -6.752688 2.200000 +v -1.314768 -6.685231 2.200000 +v -1.247311 -6.629871 2.200000 +v -1.170351 -6.588735 2.200000 +v -1.086844 -6.563404 2.200000 +v -0.999999 -6.554851 2.200000 +v -0.913155 -6.563404 2.200000 +v -0.829648 -6.588736 2.200000 +v -0.752688 -6.629872 2.200000 +v -1.123376 -6.917562 2.350016 +v -1.137088 -6.943216 2.350016 +v -1.145532 -6.971052 2.350016 +v -1.148383 -7.000000 2.350016 +v -1.145532 -7.028948 2.350016 +v -1.137088 -7.056784 2.350016 +v -1.123376 -7.082437 2.350016 +v -1.104923 -7.104923 2.350016 +v -1.082437 -7.123376 2.350016 +v -1.056784 -7.137088 2.350016 +v -1.028948 -7.145532 2.350016 +v -1.000000 -7.148383 2.350016 +v -0.971052 -7.145532 2.350016 +v -0.943216 -7.137088 2.350016 +v -0.917563 -7.123376 2.350016 +v -0.971144 -7.000001 2.495095 +v -0.943394 -7.000001 2.486677 +v -0.854922 -6.971143 2.350015 +v -0.855621 -6.971282 2.364514 +v -0.857710 -6.971697 2.378873 +v -0.861169 -6.972385 2.392954 +v -0.865965 -6.973340 2.406622 +v -0.872053 -6.974550 2.419745 +v -0.879372 -6.976007 2.432196 +v -0.887854 -6.977694 2.443856 +v -0.897415 -6.979595 2.454611 +v -0.907964 -6.981694 2.464360 +v -0.919400 -6.983968 2.473007 +v -0.931612 -6.986397 2.480470 +v -0.944482 -6.988957 2.486677 +v -0.957887 -6.991624 2.491567 +v -0.971698 -6.994371 2.495095 +v -0.985781 -6.997172 2.497225 +v -0.986607 -6.994452 2.497225 +v -0.973340 -6.988957 2.495095 +v -0.960331 -6.983569 2.491567 +v -0.947703 -6.978338 2.486677 +v -0.935580 -6.973317 2.480470 +v -0.924076 -6.968552 2.473007 +v -0.913304 -6.964090 2.464360 +v -0.903367 -6.959974 2.454611 +v -0.894360 -6.956243 2.443856 +v -0.886371 -6.952934 2.432196 +v -0.879476 -6.950078 2.419745 +v -0.873742 -6.947703 2.406622 +v -0.869224 -6.945831 2.392954 +v -0.865965 -6.944481 2.378873 +v -0.863998 -6.943666 2.364514 +v -0.863340 -6.943394 2.350015 +v -0.877009 -6.917820 2.350015 +v -0.877601 -6.918216 2.364514 +v -0.879372 -6.919399 2.378873 +v -0.882305 -6.921359 2.392954 +v -0.886371 -6.924076 2.406622 +v -0.891532 -6.927524 2.419745 +v -0.897737 -6.931670 2.432196 +v -0.904927 -6.936474 2.443856 +v -0.913033 -6.941890 2.454611 +v -0.921976 -6.947866 2.464360 +v -0.931671 -6.954344 2.473007 +v -0.942023 -6.961261 2.480470 +v -0.952935 -6.968552 2.486677 +v -0.964299 -6.976145 2.491567 +v -0.976007 -6.983968 2.495095 +v -0.987946 -6.991946 2.497225 +v -0.989750 -6.989749 2.497225 +v -0.979596 -6.979595 2.495095 +v -0.969639 -6.969638 2.491567 +v -0.959974 -6.959974 2.486677 +v -0.950695 -6.950695 2.480470 +v -0.941891 -6.941890 2.473007 +v -0.933646 -6.933646 2.464360 +v -0.926041 -6.926040 2.454611 +v -0.919147 -6.919147 2.443856 +v -0.913033 -6.913032 2.432196 +v -0.907756 -6.907755 2.419745 +v -0.903367 -6.903366 2.406622 +v -0.899909 -6.899908 2.392954 +v -0.897415 -6.897414 2.378873 +v -0.895909 -6.895908 2.364514 +v -0.895405 -6.895404 2.350015 +v -0.917821 -6.877008 2.350015 +v -0.918216 -6.877601 2.364514 +v -0.919400 -6.879372 2.378873 +v -0.921359 -6.882304 2.392954 +v -0.924076 -6.886371 2.406622 +v -0.927525 -6.891531 2.419745 +v -0.931671 -6.897737 2.432196 +v -0.936475 -6.904926 2.443856 +v -0.941891 -6.913032 2.454611 +v -0.947867 -6.921975 2.464360 +v -0.954344 -6.931670 2.473007 +v -0.961262 -6.942023 2.480470 +v -0.968552 -6.952934 2.486677 +v -0.976146 -6.964298 2.491567 +v -0.983969 -6.976007 2.495095 +v -0.991947 -6.987946 2.497225 +v -0.994453 -6.986606 2.497225 +v -0.988958 -6.973340 2.495095 +v -0.983570 -6.960330 2.491567 +v -0.978339 -6.947703 2.486677 +v -0.973317 -6.935579 2.480470 +v -0.968552 -6.924076 2.473007 +v -0.964090 -6.913303 2.464360 +v -0.959974 -6.903366 2.454611 +v -0.956244 -6.894360 2.443856 +v -0.952935 -6.886371 2.432196 +v -0.950079 -6.879476 2.419745 +v -0.947703 -6.873742 2.406622 +v -0.945832 -6.869224 2.392954 +v -0.944482 -6.865965 2.378873 +v -0.943667 -6.863997 2.364514 +v -0.943394 -6.863339 2.350015 +v -0.971144 -6.854921 2.350015 +v -0.971283 -6.855620 2.364514 +v -0.971698 -6.857709 2.378873 +v -0.972386 -6.861168 2.392954 +v -0.973340 -6.865965 2.406622 +v -0.974551 -6.872052 2.419745 +v -0.976007 -6.879372 2.432196 +v -0.977694 -6.887853 2.443856 +v -0.979596 -6.897414 2.454611 +v -0.981694 -6.907963 2.464360 +v -0.983969 -6.919399 2.473007 +v -0.986398 -6.931611 2.480470 +v -0.988958 -6.944481 2.486677 +v -0.991625 -6.957887 2.491567 +v -0.994372 -6.971697 2.495095 +v -0.997173 -6.985781 2.497225 +v -1.000002 -6.985502 2.497225 +v -1.000002 -6.971143 2.495095 +v -1.000002 -6.957062 2.491567 +v -1.000002 -6.943394 2.486677 +v -1.000002 -6.930271 2.480470 +v -1.000002 -6.917820 2.473007 +v -1.000002 -6.906160 2.464360 +v -1.000002 -6.895404 2.454611 +v -1.000002 -6.885656 2.443856 +v -1.000002 -6.877008 2.432196 +v -1.000002 -6.869545 2.419745 +v -1.000002 -6.863339 2.406622 +v -1.000002 -6.858449 2.392954 +v -1.000002 -6.854921 2.378873 +v -1.000002 -6.852791 2.364514 +v -1.000002 -6.852079 2.350015 +v -1.028860 -6.854921 2.350015 +v -1.028721 -6.855620 2.364514 +v -1.028306 -6.857709 2.378873 +v -1.027617 -6.861168 2.392954 +v -1.026663 -6.865965 2.406622 +v -1.025452 -6.872052 2.419745 +v -1.023996 -6.879372 2.432196 +v -1.022310 -6.887853 2.443856 +v -1.020408 -6.897414 2.454611 +v -1.018309 -6.907963 2.464360 +v -1.016035 -6.919399 2.473007 +v -1.013605 -6.931611 2.480470 +v -1.011045 -6.944481 2.486677 +v -1.008379 -6.957887 2.491567 +v -1.005632 -6.971697 2.495095 +v -1.002830 -6.985781 2.497225 +v -1.005550 -6.986606 2.497225 +v -1.011045 -6.973340 2.495095 +v -1.016434 -6.960330 2.491567 +v -1.021665 -6.947703 2.486677 +v -1.026686 -6.935579 2.480470 +v -1.031451 -6.924076 2.473007 +v -1.035913 -6.913303 2.464360 +v -1.040029 -6.903366 2.454611 +v -1.043760 -6.894360 2.443856 +v -1.047069 -6.886371 2.432196 +v -1.049925 -6.879476 2.419745 +v -1.052300 -6.873742 2.406622 +v -1.054172 -6.869224 2.392954 +v -1.055521 -6.865965 2.378873 +v -1.056337 -6.863997 2.364514 +v -1.056609 -6.863339 2.350015 +v -1.082183 -6.877008 2.350015 +v -1.081787 -6.877601 2.364514 +v -1.080604 -6.879372 2.378873 +v -1.078644 -6.882304 2.392954 +v -1.075927 -6.886371 2.406622 +v -1.072479 -6.891531 2.419745 +v -1.068333 -6.897737 2.432196 +v -1.063529 -6.904926 2.443856 +v -1.058113 -6.913032 2.454611 +v -1.052137 -6.921975 2.464360 +v -1.045659 -6.931670 2.473007 +v -1.038742 -6.942023 2.480470 +v -1.031451 -6.952934 2.486677 +v -1.023858 -6.964298 2.491567 +v -1.016035 -6.976007 2.495095 +v -1.008057 -6.987946 2.497225 +v -1.010254 -6.989749 2.497225 +v -1.020408 -6.979595 2.495095 +v -1.030365 -6.969638 2.491567 +v -1.040029 -6.959974 2.486677 +v -1.049308 -6.950695 2.480470 +v -1.058113 -6.941890 2.473007 +v -1.066357 -6.933646 2.464360 +v -1.073963 -6.926040 2.454611 +v -1.080856 -6.919147 2.443856 +v -1.086971 -6.913032 2.432196 +v -1.092248 -6.907755 2.419745 +v -1.096637 -6.903366 2.406622 +v -1.100095 -6.899908 2.392954 +v -1.102589 -6.897414 2.378873 +v -1.104095 -6.895908 2.364514 +v -1.104599 -6.895404 2.350015 +v -1.122402 -6.918216 2.364514 +v -1.120631 -6.919399 2.378873 +v -1.117699 -6.921359 2.392954 +v -1.113632 -6.924076 2.406622 +v -1.108472 -6.927524 2.419745 +v -1.102267 -6.931670 2.432196 +v -1.095076 -6.936474 2.443856 +v -1.086971 -6.941890 2.454611 +v -1.078028 -6.947866 2.464360 +v -1.068333 -6.954344 2.473007 +v -1.057980 -6.961261 2.480470 +v -1.047069 -6.968552 2.486677 +v -1.035705 -6.976145 2.491567 +v -1.023996 -6.983968 2.495095 +v -1.012057 -6.991946 2.497225 +v -1.000002 -7.000001 2.497937 +v -1.013397 -6.994452 2.497225 +v -1.026663 -6.988957 2.495095 +v -1.039673 -6.983569 2.491567 +v -1.052300 -6.978338 2.486677 +v -1.064424 -6.973317 2.480470 +v -1.075927 -6.968552 2.473007 +v -1.086699 -6.964090 2.464360 +v -1.096637 -6.959974 2.454611 +v -1.105643 -6.956243 2.443856 +v -1.113632 -6.952934 2.432196 +v -1.120527 -6.950078 2.419745 +v -1.126261 -6.947703 2.406622 +v -1.130779 -6.945831 2.392954 +v -1.134038 -6.944481 2.378873 +v -1.136006 -6.943666 2.364514 +v -1.144383 -6.971282 2.364514 +v -1.142294 -6.971697 2.378873 +v -1.138835 -6.972385 2.392954 +v -1.134038 -6.973340 2.406622 +v -1.127951 -6.974551 2.419745 +v -1.120631 -6.976007 2.432196 +v -1.112150 -6.977694 2.443856 +v -1.102589 -6.979595 2.454611 +v -1.092039 -6.981694 2.464360 +v -1.080604 -6.983968 2.473007 +v -1.068392 -6.986397 2.480470 +v -1.055521 -6.988957 2.486677 +v -1.042116 -6.991624 2.491567 +v -1.028306 -6.994371 2.495095 +v -1.014222 -6.997172 2.497225 +v -1.014501 -7.000001 2.497225 +v -1.028860 -7.000001 2.495095 +v -1.042941 -7.000001 2.491567 +v -1.056609 -7.000001 2.486677 +v -1.069732 -7.000001 2.480470 +v -1.082183 -7.000001 2.473007 +v -1.093843 -7.000001 2.464360 +v -1.104599 -7.000001 2.454611 +v -1.114347 -7.000001 2.443856 +v -1.122995 -7.000001 2.432196 +v -1.130457 -7.000001 2.419745 +v -1.136664 -7.000001 2.406622 +v -1.141554 -7.000001 2.392954 +v -1.145082 -7.000001 2.378873 +v -1.147212 -7.000001 2.364514 +v -1.144383 -7.028720 2.364514 +v -1.142294 -7.028305 2.378873 +v -1.138834 -7.027617 2.392954 +v -1.134038 -7.026663 2.406622 +v -1.127951 -7.025452 2.419745 +v -1.120631 -7.023996 2.432196 +v -1.112150 -7.022309 2.443856 +v -1.102589 -7.020407 2.454611 +v -1.092039 -7.018309 2.464360 +v -1.080604 -7.016034 2.473007 +v -1.068392 -7.013605 2.480470 +v -1.055521 -7.011045 2.486677 +v -1.042116 -7.008378 2.491567 +v -1.028306 -7.005631 2.495095 +v -1.014222 -7.002830 2.497225 +v -1.013397 -7.005549 2.497225 +v -1.026663 -7.011045 2.495095 +v -1.039673 -7.016433 2.491567 +v -1.052300 -7.021664 2.486677 +v -1.064424 -7.026686 2.480470 +v -1.075927 -7.031450 2.473007 +v -1.086699 -7.035913 2.464360 +v -1.096637 -7.040029 2.454611 +v -1.105643 -7.043759 2.443856 +v -1.113632 -7.047069 2.432196 +v -1.120527 -7.049924 2.419745 +v -1.126261 -7.052299 2.406622 +v -1.130779 -7.054171 2.392954 +v -1.134038 -7.055521 2.378873 +v -1.136006 -7.056336 2.364514 +v -1.122402 -7.081787 2.364514 +v -1.120631 -7.080603 2.378873 +v -1.117698 -7.078643 2.392954 +v -1.113632 -7.075927 2.406622 +v -1.108472 -7.072478 2.419745 +v -1.102267 -7.068332 2.432196 +v -1.095076 -7.063528 2.443856 +v -1.086971 -7.058112 2.454611 +v -1.078028 -7.052136 2.464360 +v -1.068333 -7.045659 2.473007 +v -1.057980 -7.038741 2.480470 +v -1.047069 -7.031450 2.486677 +v -1.035705 -7.023857 2.491567 +v -1.023996 -7.016034 2.495095 +v -1.012057 -7.008056 2.497225 +v -1.010254 -7.010253 2.497225 +v -1.020408 -7.020407 2.495095 +v -1.030365 -7.030364 2.491567 +v -1.040029 -7.040029 2.486677 +v -1.049308 -7.049308 2.480470 +v -1.058113 -7.058112 2.473007 +v -1.066357 -7.066357 2.464360 +v -1.073963 -7.073962 2.454611 +v -1.080856 -7.080855 2.443856 +v -1.086971 -7.086970 2.432196 +v -1.092248 -7.092247 2.419745 +v -1.096637 -7.096636 2.406622 +v -1.100095 -7.100094 2.392954 +v -1.102589 -7.102588 2.378873 +v -1.104095 -7.104094 2.364514 +v -1.081787 -7.122402 2.364514 +v -1.080604 -7.120631 2.378873 +v -1.078644 -7.117698 2.392954 +v -1.075927 -7.113632 2.406622 +v -1.072479 -7.108471 2.419745 +v -1.068333 -7.102266 2.432196 +v -1.063529 -7.095076 2.443856 +v -1.058113 -7.086970 2.454611 +v -1.052137 -7.078027 2.464360 +v -1.045659 -7.068332 2.473007 +v -1.038742 -7.057980 2.480470 +v -1.031451 -7.047069 2.486677 +v -1.023858 -7.035704 2.491567 +v -1.016035 -7.023996 2.495095 +v -1.008057 -7.012056 2.497225 +v -1.005550 -7.013396 2.497225 +v -1.011045 -7.026662 2.495095 +v -1.016434 -7.039672 2.491567 +v -1.021665 -7.052299 2.486677 +v -1.026686 -7.064423 2.480470 +v -1.031451 -7.075927 2.473007 +v -1.035913 -7.086699 2.464360 +v -1.040029 -7.096636 2.454611 +v -1.043760 -7.105642 2.443856 +v -1.047069 -7.113632 2.432196 +v -1.049925 -7.120526 2.419745 +v -1.052300 -7.126261 2.406622 +v -1.054172 -7.130779 2.392954 +v -1.055521 -7.134037 2.378873 +v -1.056337 -7.136005 2.364514 +v -1.028721 -7.144382 2.364514 +v -1.028305 -7.142293 2.378873 +v -1.027617 -7.138834 2.392954 +v -1.026663 -7.134037 2.406622 +v -1.025452 -7.127950 2.419745 +v -1.023996 -7.120631 2.432196 +v -1.022309 -7.112149 2.443856 +v -1.020408 -7.102588 2.454611 +v -1.018309 -7.092039 2.464360 +v -1.016034 -7.080603 2.473007 +v -1.013605 -7.068391 2.480470 +v -1.011045 -7.055521 2.486677 +v -1.008379 -7.042116 2.491567 +v -1.005632 -7.028305 2.495095 +v -1.002830 -7.014221 2.497225 +v -1.000002 -7.014500 2.497225 +v -1.000002 -7.028859 2.495095 +v -1.000002 -7.042941 2.491567 +v -1.000002 -7.056609 2.486677 +v -1.000002 -7.069731 2.480470 +v -1.000002 -7.082182 2.473007 +v -1.000002 -7.093842 2.464360 +v -1.000002 -7.104598 2.454611 +v -1.000002 -7.114347 2.443856 +v -1.000002 -7.122994 2.432196 +v -1.000002 -7.130457 2.419745 +v -1.000002 -7.136663 2.406622 +v -1.000002 -7.141554 2.392954 +v -1.000002 -7.145081 2.378873 +v -1.000002 -7.147211 2.364514 +v -0.971283 -7.144382 2.364514 +v -0.971698 -7.142293 2.378873 +v -0.972386 -7.138834 2.392954 +v -0.973340 -7.134037 2.406622 +v -0.974551 -7.127950 2.419745 +v -0.976007 -7.120631 2.432196 +v -0.977694 -7.112149 2.443856 +v -0.979596 -7.102588 2.454611 +v -0.981694 -7.092039 2.464360 +v -0.983969 -7.080603 2.473007 +v -0.986398 -7.068391 2.480470 +v -0.988958 -7.055521 2.486677 +v -0.991625 -7.042116 2.491567 +v -0.994372 -7.028305 2.495095 +v -0.997173 -7.014221 2.497225 +v -0.994453 -7.013396 2.497225 +v -0.988958 -7.026662 2.495095 +v -0.983570 -7.039672 2.491567 +v -0.978339 -7.052299 2.486677 +v -0.973317 -7.064423 2.480470 +v -0.968552 -7.075926 2.473007 +v -0.964090 -7.086699 2.464360 +v -0.959974 -7.096636 2.454611 +v -0.956244 -7.105642 2.443856 +v -0.952935 -7.113632 2.432196 +v -0.950079 -7.120526 2.419745 +v -0.947703 -7.126260 2.406622 +v -0.945832 -7.130779 2.392954 +v -0.944482 -7.134037 2.378873 +v -0.943667 -7.136005 2.364514 +v -0.918216 -7.122402 2.364514 +v -0.919400 -7.120631 2.378873 +v -0.921359 -7.117698 2.392954 +v -0.924076 -7.113632 2.406622 +v -0.927525 -7.108471 2.419745 +v -0.931671 -7.102266 2.432196 +v -0.936475 -7.095076 2.443856 +v -0.941891 -7.086970 2.454611 +v -0.947867 -7.078027 2.464360 +v -0.954344 -7.068332 2.473007 +v -0.961262 -7.057980 2.480470 +v -0.968552 -7.047069 2.486677 +v -0.976146 -7.035704 2.491567 +v -0.983969 -7.023996 2.495095 +v -0.991947 -7.012056 2.497225 +v -0.989750 -7.010253 2.497225 +v -0.979596 -7.020407 2.495095 +v -0.969639 -7.030364 2.491567 +v -0.959974 -7.040029 2.486677 +v -0.950695 -7.049308 2.480470 +v -0.941891 -7.058112 2.473007 +v -0.933646 -7.066357 2.464360 +v -0.926041 -7.073962 2.454611 +v -0.919147 -7.080855 2.443856 +v -0.913033 -7.086970 2.432196 +v -0.907756 -7.092247 2.419745 +v -0.903367 -7.096636 2.406622 +v -0.899909 -7.100094 2.392954 +v -0.897415 -7.102588 2.378873 +v -0.895909 -7.104094 2.364514 +v -0.895405 -7.104598 2.350015 +v -0.877009 -7.082182 2.350015 +v -0.877601 -7.081787 2.364514 +v -0.879372 -7.080603 2.378873 +v -0.882305 -7.078643 2.392954 +v -0.886371 -7.075926 2.406622 +v -0.891532 -7.072478 2.419745 +v -0.897737 -7.068332 2.432196 +v -0.904927 -7.063528 2.443856 +v -0.913033 -7.058112 2.454611 +v -0.921976 -7.052136 2.464360 +v -0.931671 -7.045659 2.473007 +v -0.942023 -7.038741 2.480470 +v -0.952935 -7.031450 2.486677 +v -0.964299 -7.023857 2.491567 +v -0.976007 -7.016034 2.495095 +v -0.987946 -7.008056 2.497225 +v -0.986607 -7.005549 2.497225 +v -0.973340 -7.011045 2.495095 +v -0.960331 -7.016433 2.491567 +v -0.947703 -7.021664 2.486677 +v -0.935580 -7.026686 2.480470 +v -0.924076 -7.031450 2.473007 +v -0.913304 -7.035913 2.464360 +v -0.903367 -7.040029 2.454611 +v -0.894361 -7.043759 2.443856 +v -0.886371 -7.047068 2.432196 +v -0.879477 -7.049924 2.419745 +v -0.873742 -7.052299 2.406622 +v -0.869224 -7.054171 2.392954 +v -0.865966 -7.055521 2.378873 +v -0.863998 -7.056336 2.364514 +v -0.863340 -7.056608 2.350015 +v -0.854922 -7.028859 2.350015 +v -0.855621 -7.028720 2.364514 +v -0.857710 -7.028305 2.378873 +v -0.861169 -7.027617 2.392954 +v -0.865966 -7.026662 2.406622 +v -0.872053 -7.025452 2.419745 +v -0.879372 -7.023996 2.432196 +v -0.887854 -7.022309 2.443856 +v -0.897415 -7.020407 2.454611 +v -0.907964 -7.018309 2.464360 +v -0.919400 -7.016034 2.473007 +v -0.931612 -7.013605 2.480470 +v -0.944482 -7.011045 2.486677 +v -0.957887 -7.008378 2.491567 +v -0.971698 -7.005631 2.495095 +v -0.985781 -7.002830 2.497225 +v -0.985503 -7.000001 2.497225 +v -0.957062 -7.000001 2.491567 +v -0.930272 -7.000001 2.480470 +v -0.917821 -7.000001 2.473007 +v -0.906161 -7.000001 2.464360 +v -0.895405 -7.000001 2.454611 +v -0.885657 -7.000001 2.443856 +v -0.877009 -7.000001 2.432196 +v -0.869546 -7.000001 2.419745 +v -0.863340 -7.000001 2.406622 +v -0.858449 -7.000001 2.392954 +v -0.854922 -7.000001 2.378873 +v -0.852792 -7.000001 2.364514 +v -0.852080 -7.000001 2.350015 +v -1.000000 -7.000000 0.000000 +v -0.400000 -6.400000 0.016519 +v -0.528582 -6.294476 0.016519 +v -0.675281 -6.216063 0.016519 +v -0.834459 -6.167777 0.016519 +v -0.999999 -6.151472 0.016519 +v -1.165538 -6.167776 0.016519 +v -1.324717 -6.216062 0.016519 +v -1.471416 -6.294474 0.016519 +v -1.599999 -6.399999 0.016519 +v -1.705525 -6.528582 0.016519 +v -1.783937 -6.675282 0.016519 +v -1.832224 -6.834459 0.016519 +v -1.848528 -6.999999 0.016519 +v -1.832224 -7.165539 0.016519 +v -1.783938 -7.324717 0.016519 +v -1.705526 -7.471416 0.016519 +v -1.600000 -7.599999 0.016519 +v -1.471417 -7.705525 0.016519 +v -1.324718 -7.783937 0.016519 +v -1.165540 -7.832224 0.016519 +v -1.000000 -7.848528 0.016519 +v -0.834461 -7.832224 0.016519 +v -0.675282 -7.783938 0.016519 +v -0.528583 -7.705525 0.016519 +v -0.400000 -7.600000 0.016519 +v -0.294475 -7.471417 0.016519 +v -0.216062 -7.324718 0.016519 +v -0.167776 -7.165540 0.016519 +v -0.151472 -7.000000 0.016519 +v -0.167776 -6.834460 0.016519 +v -0.216062 -6.675282 0.016519 +v -0.294475 -6.528583 0.016519 +v -0.460000 -6.460000 0.150000 +v -0.365027 -6.575725 0.150000 +v -0.294456 -6.707754 0.150000 +v -0.250998 -6.851014 0.150000 +v -0.236325 -7.000000 0.150000 +v -0.250998 -7.148985 0.150000 +v -0.294456 -7.292246 0.150000 +v -0.365027 -7.424275 0.150000 +v -0.460000 -7.540000 0.150000 +v -0.575725 -7.634973 0.150000 +v -0.707754 -7.705544 0.150000 +v -0.851014 -7.749002 0.150000 +v -1.000000 -7.763675 0.150000 +v -1.148986 -7.749002 0.150000 +v -1.292246 -7.705544 0.150000 +v -1.424276 -7.634973 0.150000 +v -1.540000 -7.539999 0.150000 +v -1.634973 -7.424275 0.150000 +v -1.705544 -7.292245 0.150000 +v -1.749002 -7.148985 0.150000 +v -1.763675 -6.999999 0.150000 +v -1.749001 -6.851014 0.150000 +v -1.705544 -6.707753 0.150000 +v -1.634972 -6.575724 0.150000 +v -1.539999 -6.459999 0.150000 +v -1.424274 -6.365026 0.150000 +v -1.292245 -6.294456 0.150000 +v -1.148985 -6.250998 0.150000 +v -0.999999 -6.236325 0.150000 +v -0.851013 -6.250998 0.150000 +v -0.707753 -6.294456 0.150000 +v -0.575724 -6.365028 0.150000 +v -0.564928 -6.564928 0.350000 +v -0.488409 -6.658166 0.350000 +v -0.431551 -6.764541 0.350000 +v -0.396538 -6.879964 0.350000 +v -0.384715 -7.000000 0.350000 +v -0.396538 -7.120036 0.350000 +v -0.431551 -7.235459 0.350000 +v -0.488409 -7.341834 0.350000 +v -0.564928 -7.435072 0.350000 +v -0.658166 -7.511590 0.350000 +v -0.764541 -7.568449 0.350000 +v -0.879964 -7.603462 0.350000 +v -1.000000 -7.615285 0.350000 +v -1.120036 -7.603462 0.350000 +v -1.235460 -7.568449 0.350000 +v -1.341834 -7.511590 0.350000 +v -1.435072 -7.435072 0.350000 +v -1.511591 -7.341834 0.350000 +v -1.568449 -7.235459 0.350000 +v -1.603462 -7.120036 0.350000 +v -1.615285 -7.000000 0.350000 +v -1.603462 -6.879963 0.350000 +v -1.568449 -6.764540 0.350000 +v -1.511590 -6.658165 0.350000 +v -1.435071 -6.564928 0.350000 +v -1.341833 -6.488409 0.350000 +v -1.235458 -6.431551 0.350000 +v -1.120035 -6.396538 0.350000 +v -0.999999 -6.384715 0.350000 +v -0.879963 -6.396538 0.350000 +v -0.764540 -6.431551 0.350000 +v -0.658165 -6.488410 0.350000 +v -0.496000 -6.496000 0.250000 +v -0.604009 -6.407359 0.250000 +v -0.727236 -6.341493 0.250000 +v -0.860946 -6.300932 0.250000 +v -0.999999 -6.287236 0.250000 +v -1.139052 -6.300932 0.250000 +v -1.272762 -6.341492 0.250000 +v -1.395989 -6.407358 0.250000 +v -1.503999 -6.495999 0.250000 +v -1.592641 -6.604009 0.250000 +v -1.658507 -6.727236 0.250000 +v -1.699068 -6.860946 0.250000 +v -1.712764 -7.000000 0.250000 +v -1.699068 -7.139053 0.250000 +v -1.658508 -7.272762 0.250000 +v -1.592642 -7.395990 0.250000 +v -1.504000 -7.504000 0.250000 +v -1.395991 -7.592641 0.250000 +v -1.272763 -7.658508 0.250000 +v -1.139054 -7.699068 0.250000 +v -1.000000 -7.712764 0.250000 +v -0.860947 -7.699068 0.250000 +v -0.727237 -7.658508 0.250000 +v -0.604010 -7.592641 0.250000 +v -0.496000 -7.504000 0.250000 +v -0.407359 -7.395990 0.250000 +v -0.341492 -7.272763 0.250000 +v -0.300932 -7.139053 0.250000 +v -0.287236 -7.000000 0.250000 +v -0.300932 -6.860947 0.250000 +v -0.341492 -6.727237 0.250000 +v -0.407359 -6.604010 0.250000 +v -0.400000 -6.400000 0.090810 +v -0.294475 -6.528583 0.090810 +v -0.216062 -6.675282 0.090810 +v -0.167776 -6.834460 0.090810 +v -0.151472 -7.000000 0.090810 +v -0.167776 -7.165540 0.090810 +v -0.216062 -7.324718 0.090810 +v -0.294475 -7.471417 0.090810 +v -0.400000 -7.600000 0.090810 +v -0.528583 -7.705525 0.090810 +v -0.675282 -7.783938 0.090810 +v -0.834461 -7.832224 0.090810 +v -1.000000 -7.848528 0.090810 +v -1.165540 -7.832224 0.090810 +v -1.324718 -7.783937 0.090810 +v -1.471417 -7.705525 0.090810 +v -1.600000 -7.599999 0.090810 +v -1.705526 -7.471416 0.090810 +v -1.783938 -7.324717 0.090810 +v -1.832224 -7.165539 0.090810 +v -1.848528 -6.999999 0.090810 +v -1.832224 -6.834459 0.090810 +v -1.783937 -6.675282 0.090810 +v -1.705525 -6.528582 0.090810 +v -1.599999 -6.399999 0.090810 +v -1.471416 -6.294474 0.090810 +v -1.324717 -6.216062 0.090810 +v -1.165538 -6.167776 0.090810 +v -0.999999 -6.151472 0.090810 +v -0.834459 -6.167777 0.090810 +v -0.675281 -6.216063 0.090810 +v -0.528582 -6.294476 0.090810 +usemtl Material +s 1 +f 931 1 32 932 +f 31 933 932 32 +f 30 934 933 31 +f 30 29 935 934 +f 28 936 935 29 +f 27 937 936 28 +f 26 938 937 27 +f 26 25 939 938 +f 24 940 939 25 +f 24 23 941 940 +f 22 942 941 23 +f 21 943 942 22 +f 20 944 943 21 +f 20 19 945 944 +f 18 946 945 19 +f 18 17 947 946 +f 16 948 947 17 +f 16 15 949 948 +f 14 950 949 15 +f 14 13 951 950 +f 12 952 951 13 +f 11 953 952 12 +f 10 954 953 11 +f 10 9 955 954 +f 9 8 956 955 +f 7 957 956 8 +f 7 6 958 957 +f 5 959 958 6 +f 5 4 960 959 +f 3 961 960 4 +f 3 2 962 961 +f 2 1 931 962 +f 63 64 963 964 +f 62 63 964 965 +f 62 965 966 61 +f 60 61 966 967 +f 60 967 968 59 +f 58 59 968 969 +f 58 969 970 57 +f 56 57 970 971 +f 55 56 971 972 +f 55 972 973 54 +f 54 973 974 53 +f 53 974 975 52 +f 51 52 975 976 +f 51 976 977 50 +f 49 50 977 978 +f 49 978 979 48 +f 47 48 979 980 +f 47 980 981 46 +f 45 46 981 982 +f 45 982 983 44 +f 44 983 984 43 +f 43 984 985 42 +f 41 42 985 986 +f 41 986 987 40 +f 39 40 987 988 +f 39 988 989 38 +f 38 989 990 37 +f 37 990 991 36 +f 35 36 991 992 +f 35 992 993 34 +f 34 993 994 33 +f 33 994 963 64 +f 96 1028 1027 65 +f 95 1029 1028 96 +f 94 1030 1029 95 +f 94 93 1031 1030 +f 92 1032 1031 93 +f 91 1033 1032 92 +f 90 1034 1033 91 +f 90 89 1035 1034 +f 88 1036 1035 89 +f 88 87 1037 1036 +f 86 1038 1037 87 +f 85 1039 1038 86 +f 84 1040 1039 85 +f 84 83 1041 1040 +f 82 1042 1041 83 +f 82 81 1043 1042 +f 80 1044 1043 81 +f 80 79 1045 1044 +f 78 1046 1045 79 +f 78 77 1047 1046 +f 76 1048 1047 77 +f 75 1049 1048 76 +f 74 1050 1049 75 +f 74 73 1051 1050 +f 73 72 1052 1051 +f 71 1053 1052 72 +f 71 70 1054 1053 +f 69 1055 1054 70 +f 69 68 1056 1055 +f 67 1057 1056 68 +f 67 66 1058 1057 +f 66 65 1027 1058 +f 127 128 995 996 +f 126 127 996 997 +f 126 997 998 125 +f 124 125 998 999 +f 124 999 1000 123 +f 122 123 1000 1001 +f 122 1001 1002 121 +f 120 121 1002 1003 +f 119 120 1003 1004 +f 119 1004 1005 118 +f 118 1005 1006 117 +f 117 1006 1007 116 +f 115 116 1007 1008 +f 115 1008 1009 114 +f 113 114 1009 1010 +f 113 1010 1011 112 +f 111 112 1011 1012 +f 111 1012 1013 110 +f 109 110 1013 1014 +f 109 1014 1015 108 +f 108 1015 1016 107 +f 107 1016 1017 106 +f 105 106 1017 1018 +f 105 1018 1019 104 +f 103 104 1019 1020 +f 103 1020 1021 102 +f 102 1021 1022 101 +f 101 1022 1023 100 +f 99 100 1023 1024 +f 99 1024 1025 98 +f 98 1025 1026 97 +f 97 1026 995 128 +f 160 161 192 129 +f 159 162 161 160 +f 158 163 162 159 +f 158 157 164 163 +f 156 165 164 157 +f 155 166 165 156 +f 154 167 166 155 +f 154 153 168 167 +f 152 169 168 153 +f 152 151 170 169 +f 150 171 170 151 +f 149 172 171 150 +f 148 173 172 149 +f 148 147 174 173 +f 146 175 174 147 +f 146 145 176 175 +f 144 177 176 145 +f 144 143 178 177 +f 142 179 178 143 +f 142 141 180 179 +f 140 181 180 141 +f 139 182 181 140 +f 138 183 182 139 +f 138 137 184 183 +f 137 136 185 184 +f 135 186 185 136 +f 135 134 187 186 +f 133 188 187 134 +f 133 132 189 188 +f 131 190 189 132 +f 131 130 191 190 +f 130 129 192 191 +f 191 192 193 194 +f 190 191 194 195 +f 190 195 196 189 +f 188 189 196 197 +f 188 197 198 187 +f 186 187 198 199 +f 186 199 200 185 +f 184 185 200 201 +f 183 184 201 202 +f 183 202 203 182 +f 182 203 204 181 +f 181 204 205 180 +f 179 180 205 206 +f 179 206 207 178 +f 177 178 207 208 +f 177 208 209 176 +f 175 176 209 210 +f 175 210 211 174 +f 173 174 211 212 +f 173 212 213 172 +f 172 213 214 171 +f 171 214 215 170 +f 169 170 215 216 +f 169 216 217 168 +f 167 168 217 218 +f 167 218 219 166 +f 166 219 220 165 +f 165 220 221 164 +f 163 164 221 222 +f 163 222 223 162 +f 162 223 224 161 +f 161 224 193 192 +f 224 225 256 193 +f 223 226 225 224 +f 222 227 226 223 +f 222 221 228 227 +f 220 229 228 221 +f 219 230 229 220 +f 218 231 230 219 +f 218 217 232 231 +f 216 233 232 217 +f 216 215 234 233 +f 214 235 234 215 +f 213 236 235 214 +f 212 237 236 213 +f 212 211 238 237 +f 210 239 238 211 +f 210 209 240 239 +f 208 241 240 209 +f 208 207 242 241 +f 206 243 242 207 +f 206 205 244 243 +f 204 245 244 205 +f 203 246 245 204 +f 202 247 246 203 +f 202 201 248 247 +f 201 200 249 248 +f 199 250 249 200 +f 199 198 251 250 +f 197 252 251 198 +f 197 196 253 252 +f 195 254 253 196 +f 195 194 255 254 +f 194 193 256 255 +f 255 256 257 258 +f 254 255 258 259 +f 254 259 260 253 +f 252 253 260 261 +f 252 261 262 251 +f 250 251 262 263 +f 250 263 264 249 +f 248 249 264 265 +f 247 248 265 266 +f 247 266 267 246 +f 246 267 268 245 +f 245 268 269 244 +f 243 244 269 270 +f 243 270 271 242 +f 241 242 271 272 +f 241 272 273 240 +f 239 240 273 274 +f 239 274 275 238 +f 237 238 275 276 +f 237 276 277 236 +f 236 277 278 235 +f 235 278 279 234 +f 233 234 279 280 +f 233 280 281 232 +f 231 232 281 282 +f 231 282 283 230 +f 230 283 284 229 +f 229 284 285 228 +f 227 228 285 286 +f 227 286 287 226 +f 226 287 288 225 +f 225 288 257 256 +f 288 289 320 257 +f 287 290 289 288 +f 286 291 290 287 +f 286 285 292 291 +f 284 293 292 285 +f 283 294 293 284 +f 282 295 294 283 +f 282 281 296 295 +f 280 297 296 281 +f 280 279 298 297 +f 278 299 298 279 +f 277 300 299 278 +f 276 301 300 277 +f 276 275 302 301 +f 274 303 302 275 +f 274 273 304 303 +f 272 305 304 273 +f 272 271 306 305 +f 270 307 306 271 +f 270 269 308 307 +f 268 309 308 269 +f 267 310 309 268 +f 266 311 310 267 +f 266 265 312 311 +f 265 264 313 312 +f 263 314 313 264 +f 263 262 315 314 +f 261 316 315 262 +f 261 260 317 316 +f 259 318 317 260 +f 259 258 319 318 +f 258 257 320 319 +f 319 320 321 322 +f 318 319 322 323 +f 318 323 324 317 +f 316 317 324 325 +f 316 325 326 315 +f 314 315 326 327 +f 314 327 328 313 +f 312 313 328 329 +f 311 312 329 330 +f 311 330 331 310 +f 310 331 332 309 +f 309 332 333 308 +f 307 308 333 334 +f 307 334 335 306 +f 305 306 335 336 +f 305 336 337 304 +f 303 304 337 338 +f 303 338 339 302 +f 301 302 339 340 +f 301 340 341 300 +f 300 341 342 299 +f 299 342 343 298 +f 297 298 343 344 +f 297 344 345 296 +f 295 296 345 346 +f 295 346 347 294 +f 294 347 348 293 +f 293 348 349 292 +f 291 292 349 350 +f 291 350 351 290 +f 290 351 352 289 +f 289 352 321 320 +f 352 353 384 321 +f 351 354 353 352 +f 350 355 354 351 +f 350 349 356 355 +f 348 357 356 349 +f 347 358 357 348 +f 346 359 358 347 +f 346 345 360 359 +f 344 361 360 345 +f 344 343 362 361 +f 342 363 362 343 +f 341 364 363 342 +f 340 365 364 341 +f 340 339 366 365 +f 338 367 366 339 +f 338 337 368 367 +f 336 369 368 337 +f 336 335 370 369 +f 334 371 370 335 +f 334 333 372 371 +f 332 373 372 333 +f 331 374 373 332 +f 330 375 374 331 +f 330 329 376 375 +f 329 328 377 376 +f 327 378 377 328 +f 327 326 379 378 +f 325 380 379 326 +f 325 324 381 380 +f 323 382 381 324 +f 323 322 383 382 +f 322 321 384 383 +f 383 384 385 386 +f 382 383 386 387 +f 382 387 388 381 +f 380 381 388 389 +f 380 389 390 379 +f 378 379 390 391 +f 378 391 392 377 +f 376 377 392 393 +f 375 376 393 394 +f 375 394 395 374 +f 374 395 396 373 +f 373 396 397 372 +f 371 372 397 398 +f 371 398 399 370 +f 369 370 399 400 +f 369 400 401 368 +f 367 368 401 402 +f 367 402 403 366 +f 365 366 403 404 +f 365 404 405 364 +f 364 405 406 363 +f 363 406 407 362 +f 361 362 407 408 +f 361 408 409 360 +f 359 360 409 410 +f 359 410 411 358 +f 358 411 412 357 +f 357 412 413 356 +f 355 356 413 414 +f 355 414 415 354 +f 354 415 416 353 +f 353 416 385 384 +f 416 498 497 385 +f 415 529 498 416 +f 414 530 529 415 +f 414 413 561 530 +f 412 562 561 413 +f 411 593 562 412 +f 410 594 593 411 +f 410 409 625 594 +f 408 417 625 409 +f 408 407 418 417 +f 406 419 418 407 +f 405 420 419 406 +f 404 421 420 405 +f 404 403 422 421 +f 402 423 422 403 +f 402 401 424 423 +f 400 425 424 401 +f 400 399 426 425 +f 398 427 426 399 +f 398 397 428 427 +f 396 429 428 397 +f 395 430 429 396 +f 394 431 430 395 +f 394 393 867 431 +f 393 392 868 867 +f 391 899 868 392 +f 391 390 900 899 +f 389 929 900 390 +f 389 388 434 929 +f 387 465 434 388 +f 387 386 466 465 +f 386 385 497 466 +f 929 434 435 928 +f 928 435 436 927 +f 927 436 437 926 +f 926 437 438 925 +f 925 438 439 924 +f 924 439 440 923 +f 923 440 441 922 +f 922 441 442 921 +f 921 442 443 920 +f 920 443 444 919 +f 919 444 445 918 +f 918 445 446 433 +f 433 446 447 917 +f 917 447 448 432 +f 432 448 449 916 +f 916 449 641 +f 449 450 641 +f 448 451 450 449 +f 447 452 451 448 +f 446 453 452 447 +f 445 454 453 446 +f 444 455 454 445 +f 443 456 455 444 +f 442 457 456 443 +f 441 458 457 442 +f 440 459 458 441 +f 439 460 459 440 +f 438 461 460 439 +f 437 462 461 438 +f 436 463 462 437 +f 435 464 463 436 +f 434 465 464 435 +f 465 466 467 464 +f 464 467 468 463 +f 463 468 469 462 +f 462 469 470 461 +f 461 470 471 460 +f 460 471 472 459 +f 459 472 473 458 +f 458 473 474 457 +f 457 474 475 456 +f 456 475 476 455 +f 455 476 477 454 +f 454 477 478 453 +f 453 478 479 452 +f 452 479 480 451 +f 451 480 481 450 +f 450 481 641 +f 481 482 641 +f 480 483 482 481 +f 479 484 483 480 +f 478 485 484 479 +f 477 486 485 478 +f 476 487 486 477 +f 475 488 487 476 +f 474 489 488 475 +f 473 490 489 474 +f 472 491 490 473 +f 471 492 491 472 +f 470 493 492 471 +f 469 494 493 470 +f 468 495 494 469 +f 467 496 495 468 +f 466 497 496 467 +f 497 498 499 496 +f 496 499 500 495 +f 495 500 501 494 +f 494 501 502 493 +f 493 502 503 492 +f 492 503 504 491 +f 491 504 505 490 +f 490 505 506 489 +f 489 506 507 488 +f 488 507 508 487 +f 487 508 509 486 +f 486 509 510 485 +f 485 510 511 484 +f 484 511 512 483 +f 483 512 513 482 +f 482 513 641 +f 513 514 641 +f 512 515 514 513 +f 511 516 515 512 +f 510 517 516 511 +f 509 518 517 510 +f 508 519 518 509 +f 507 520 519 508 +f 506 521 520 507 +f 505 522 521 506 +f 504 523 522 505 +f 503 524 523 504 +f 502 525 524 503 +f 501 526 525 502 +f 500 527 526 501 +f 499 528 527 500 +f 498 529 528 499 +f 529 530 531 528 +f 528 531 532 527 +f 527 532 533 526 +f 526 533 534 525 +f 525 534 535 524 +f 524 535 536 523 +f 523 536 537 522 +f 522 537 538 521 +f 521 538 539 520 +f 520 539 540 519 +f 519 540 541 518 +f 518 541 542 517 +f 517 542 543 516 +f 516 543 544 515 +f 515 544 545 514 +f 514 545 641 +f 545 546 641 +f 544 547 546 545 +f 543 548 547 544 +f 542 549 548 543 +f 541 550 549 542 +f 540 551 550 541 +f 539 552 551 540 +f 538 553 552 539 +f 537 554 553 538 +f 536 555 554 537 +f 535 556 555 536 +f 534 557 556 535 +f 533 558 557 534 +f 532 559 558 533 +f 531 560 559 532 +f 530 561 560 531 +f 561 562 563 560 +f 560 563 564 559 +f 559 564 565 558 +f 558 565 566 557 +f 557 566 567 556 +f 556 567 568 555 +f 555 568 569 554 +f 554 569 570 553 +f 553 570 571 552 +f 552 571 572 551 +f 551 572 573 550 +f 550 573 574 549 +f 549 574 575 548 +f 548 575 576 547 +f 547 576 577 546 +f 546 577 641 +f 577 578 641 +f 576 579 578 577 +f 575 580 579 576 +f 574 581 580 575 +f 573 582 581 574 +f 572 583 582 573 +f 571 584 583 572 +f 570 585 584 571 +f 569 586 585 570 +f 568 587 586 569 +f 567 588 587 568 +f 566 589 588 567 +f 565 590 589 566 +f 564 591 590 565 +f 563 592 591 564 +f 562 593 592 563 +f 593 594 595 592 +f 592 595 596 591 +f 591 596 597 590 +f 590 597 598 589 +f 589 598 599 588 +f 588 599 600 587 +f 587 600 601 586 +f 586 601 602 585 +f 585 602 603 584 +f 584 603 604 583 +f 583 604 605 582 +f 582 605 606 581 +f 581 606 607 580 +f 580 607 608 579 +f 579 608 609 578 +f 578 609 641 +f 609 610 641 +f 608 611 610 609 +f 607 612 611 608 +f 606 613 612 607 +f 605 614 613 606 +f 604 615 614 605 +f 603 616 615 604 +f 602 617 616 603 +f 601 618 617 602 +f 600 619 618 601 +f 599 620 619 600 +f 598 621 620 599 +f 597 622 621 598 +f 596 623 622 597 +f 595 624 623 596 +f 594 625 624 595 +f 625 417 626 624 +f 624 626 627 623 +f 623 627 628 622 +f 622 628 629 621 +f 621 629 630 620 +f 620 630 631 619 +f 619 631 632 618 +f 618 632 633 617 +f 617 633 634 616 +f 616 634 635 615 +f 615 635 636 614 +f 614 636 637 613 +f 613 637 638 612 +f 612 638 639 611 +f 611 639 640 610 +f 610 640 641 +f 640 642 641 +f 639 643 642 640 +f 638 644 643 639 +f 637 645 644 638 +f 636 646 645 637 +f 635 647 646 636 +f 634 648 647 635 +f 633 649 648 634 +f 632 650 649 633 +f 631 651 650 632 +f 630 652 651 631 +f 629 653 652 630 +f 628 654 653 629 +f 627 655 654 628 +f 626 656 655 627 +f 417 418 656 626 +f 418 419 657 656 +f 656 657 658 655 +f 655 658 659 654 +f 654 659 660 653 +f 653 660 661 652 +f 652 661 662 651 +f 651 662 663 650 +f 650 663 664 649 +f 649 664 665 648 +f 648 665 666 647 +f 647 666 667 646 +f 646 667 668 645 +f 645 668 669 644 +f 644 669 670 643 +f 643 670 671 642 +f 642 671 641 +f 671 672 641 +f 670 673 672 671 +f 669 674 673 670 +f 668 675 674 669 +f 667 676 675 668 +f 666 677 676 667 +f 665 678 677 666 +f 664 679 678 665 +f 663 680 679 664 +f 662 681 680 663 +f 661 682 681 662 +f 660 683 682 661 +f 659 684 683 660 +f 658 685 684 659 +f 657 686 685 658 +f 419 420 686 657 +f 420 421 687 686 +f 686 687 688 685 +f 685 688 689 684 +f 684 689 690 683 +f 683 690 691 682 +f 682 691 692 681 +f 681 692 693 680 +f 680 693 694 679 +f 679 694 695 678 +f 678 695 696 677 +f 677 696 697 676 +f 676 697 698 675 +f 675 698 699 674 +f 674 699 700 673 +f 673 700 701 672 +f 672 701 641 +f 701 702 641 +f 700 703 702 701 +f 699 704 703 700 +f 698 705 704 699 +f 697 706 705 698 +f 696 707 706 697 +f 695 708 707 696 +f 694 709 708 695 +f 693 710 709 694 +f 692 711 710 693 +f 691 712 711 692 +f 690 713 712 691 +f 689 714 713 690 +f 688 715 714 689 +f 687 716 715 688 +f 421 422 716 687 +f 422 423 717 716 +f 716 717 718 715 +f 715 718 719 714 +f 714 719 720 713 +f 713 720 721 712 +f 712 721 722 711 +f 711 722 723 710 +f 710 723 724 709 +f 709 724 725 708 +f 708 725 726 707 +f 707 726 727 706 +f 706 727 728 705 +f 705 728 729 704 +f 704 729 730 703 +f 703 730 731 702 +f 702 731 641 +f 731 732 641 +f 730 733 732 731 +f 729 734 733 730 +f 728 735 734 729 +f 727 736 735 728 +f 726 737 736 727 +f 725 738 737 726 +f 724 739 738 725 +f 723 740 739 724 +f 722 741 740 723 +f 721 742 741 722 +f 720 743 742 721 +f 719 744 743 720 +f 718 745 744 719 +f 717 746 745 718 +f 423 424 746 717 +f 424 425 747 746 +f 746 747 748 745 +f 745 748 749 744 +f 744 749 750 743 +f 743 750 751 742 +f 742 751 752 741 +f 741 752 753 740 +f 740 753 754 739 +f 739 754 755 738 +f 738 755 756 737 +f 737 756 757 736 +f 736 757 758 735 +f 735 758 759 734 +f 734 759 760 733 +f 733 760 761 732 +f 732 761 641 +f 761 762 641 +f 760 763 762 761 +f 759 764 763 760 +f 758 765 764 759 +f 757 766 765 758 +f 756 767 766 757 +f 755 768 767 756 +f 754 769 768 755 +f 753 770 769 754 +f 752 771 770 753 +f 751 772 771 752 +f 750 773 772 751 +f 749 774 773 750 +f 748 775 774 749 +f 747 776 775 748 +f 425 426 776 747 +f 426 427 777 776 +f 776 777 778 775 +f 775 778 779 774 +f 774 779 780 773 +f 773 780 781 772 +f 772 781 782 771 +f 771 782 783 770 +f 770 783 784 769 +f 769 784 785 768 +f 768 785 786 767 +f 767 786 787 766 +f 766 787 788 765 +f 765 788 789 764 +f 764 789 790 763 +f 763 790 791 762 +f 762 791 641 +f 791 792 641 +f 790 793 792 791 +f 789 794 793 790 +f 788 795 794 789 +f 787 796 795 788 +f 786 797 796 787 +f 785 798 797 786 +f 784 799 798 785 +f 783 800 799 784 +f 782 801 800 783 +f 781 802 801 782 +f 780 803 802 781 +f 779 804 803 780 +f 778 805 804 779 +f 777 806 805 778 +f 427 428 806 777 +f 428 429 807 806 +f 806 807 808 805 +f 805 808 809 804 +f 804 809 810 803 +f 803 810 811 802 +f 802 811 812 801 +f 801 812 813 800 +f 800 813 814 799 +f 799 814 815 798 +f 798 815 816 797 +f 797 816 817 796 +f 796 817 818 795 +f 795 818 819 794 +f 794 819 820 793 +f 793 820 821 792 +f 792 821 641 +f 821 822 641 +f 820 823 822 821 +f 819 824 823 820 +f 818 825 824 819 +f 817 826 825 818 +f 816 827 826 817 +f 815 828 827 816 +f 814 829 828 815 +f 813 830 829 814 +f 812 831 830 813 +f 811 832 831 812 +f 810 833 832 811 +f 809 834 833 810 +f 808 835 834 809 +f 807 836 835 808 +f 429 430 836 807 +f 430 431 837 836 +f 836 837 838 835 +f 835 838 839 834 +f 834 839 840 833 +f 833 840 841 832 +f 832 841 842 831 +f 831 842 843 830 +f 830 843 844 829 +f 829 844 845 828 +f 828 845 846 827 +f 827 846 847 826 +f 826 847 848 825 +f 825 848 849 824 +f 824 849 850 823 +f 823 850 851 822 +f 822 851 641 +f 851 852 641 +f 850 853 852 851 +f 849 854 853 850 +f 848 855 854 849 +f 847 856 855 848 +f 846 857 856 847 +f 845 858 857 846 +f 844 859 858 845 +f 843 860 859 844 +f 842 861 860 843 +f 841 862 861 842 +f 840 863 862 841 +f 839 864 863 840 +f 838 865 864 839 +f 837 866 865 838 +f 431 867 866 837 +f 867 868 869 866 +f 866 869 870 865 +f 865 870 871 864 +f 864 871 872 863 +f 863 872 873 862 +f 862 873 874 861 +f 861 874 875 860 +f 860 875 876 859 +f 859 876 877 858 +f 858 877 878 857 +f 857 878 879 856 +f 856 879 880 855 +f 855 880 881 854 +f 854 881 882 853 +f 853 882 883 852 +f 852 883 641 +f 883 884 641 +f 882 885 884 883 +f 881 886 885 882 +f 880 887 886 881 +f 879 888 887 880 +f 878 889 888 879 +f 877 890 889 878 +f 876 891 890 877 +f 875 892 891 876 +f 874 893 892 875 +f 873 894 893 874 +f 872 895 894 873 +f 871 896 895 872 +f 870 897 896 871 +f 869 898 897 870 +f 868 899 898 869 +f 899 900 901 898 +f 898 901 902 897 +f 897 902 903 896 +f 896 903 904 895 +f 895 904 905 894 +f 894 905 906 893 +f 893 906 907 892 +f 892 907 908 891 +f 891 908 909 890 +f 890 909 910 889 +f 889 910 911 888 +f 888 911 912 887 +f 887 912 913 886 +f 886 913 914 885 +f 885 914 915 884 +f 884 915 641 +f 915 916 641 +f 914 432 916 915 +f 913 917 432 914 +f 912 433 917 913 +f 911 918 433 912 +f 910 919 918 911 +f 909 920 919 910 +f 908 921 920 909 +f 907 922 921 908 +f 906 923 922 907 +f 905 924 923 906 +f 904 925 924 905 +f 903 926 925 904 +f 902 927 926 903 +f 901 928 927 902 +f 900 929 928 901 +f 32 1 930 +f 31 32 930 +f 30 31 930 +f 30 29 930 +f 28 29 930 +f 27 28 930 +f 26 27 930 +f 26 25 930 +f 24 25 930 +f 24 23 930 +f 22 23 930 +f 21 22 930 +f 20 21 930 +f 20 19 930 +f 18 19 930 +f 18 17 930 +f 16 17 930 +f 16 15 930 +f 14 15 930 +f 14 13 930 +f 12 13 930 +f 11 12 930 +f 10 11 930 +f 10 9 930 +f 9 8 930 +f 7 8 930 +f 7 6 930 +f 5 6 930 +f 5 4 930 +f 3 4 930 +f 3 2 930 +f 2 1 930 +f 1026 160 129 995 +f 1025 159 160 1026 +f 1024 158 159 1025 +f 1023 157 158 1024 +f 1022 156 157 1023 +f 1021 155 156 1022 +f 1020 154 155 1021 +f 1019 153 154 1020 +f 1018 152 153 1019 +f 1017 151 152 1018 +f 1016 150 151 1017 +f 1015 149 150 1016 +f 1014 148 149 1015 +f 1013 147 148 1014 +f 1012 146 147 1013 +f 1011 145 146 1012 +f 1010 144 145 1011 +f 1009 143 144 1010 +f 1008 142 143 1009 +f 1007 141 142 1008 +f 1006 140 141 1007 +f 1005 139 140 1006 +f 1004 138 139 1005 +f 1003 137 138 1004 +f 1002 136 137 1003 +f 1001 135 136 1002 +f 1000 134 135 1001 +f 999 133 134 1000 +f 998 132 133 999 +f 997 131 132 998 +f 996 130 131 997 +f 995 129 130 996 +f 994 96 65 963 +f 993 95 96 994 +f 992 94 95 993 +f 991 93 94 992 +f 990 92 93 991 +f 989 91 92 990 +f 988 90 91 989 +f 987 89 90 988 +f 986 88 89 987 +f 985 87 88 986 +f 984 86 87 985 +f 983 85 86 984 +f 982 84 85 983 +f 981 83 84 982 +f 980 82 83 981 +f 979 81 82 980 +f 978 80 81 979 +f 977 79 80 978 +f 976 78 79 977 +f 975 77 78 976 +f 974 76 77 975 +f 973 75 76 974 +f 972 74 75 973 +f 971 73 74 972 +f 970 72 73 971 +f 969 71 72 970 +f 968 70 71 969 +f 967 69 70 968 +f 966 68 69 967 +f 965 67 68 966 +f 964 66 67 965 +f 963 65 66 964 +f 931 1059 1060 962 +f 962 1060 1061 961 +f 961 1061 1062 960 +f 960 1062 1063 959 +f 959 1063 1064 958 +f 958 1064 1065 957 +f 957 1065 1066 956 +f 956 1066 1067 955 +f 955 1067 1068 954 +f 954 1068 1069 953 +f 953 1069 1070 952 +f 952 1070 1071 951 +f 951 1071 1072 950 +f 950 1072 1073 949 +f 949 1073 1074 948 +f 948 1074 1075 947 +f 947 1075 1076 946 +f 946 1076 1077 945 +f 945 1077 1078 944 +f 944 1078 1079 943 +f 943 1079 1080 942 +f 942 1080 1081 941 +f 941 1081 1082 940 +f 940 1082 1083 939 +f 939 1083 1084 938 +f 938 1084 1085 937 +f 937 1085 1086 936 +f 936 1086 1087 935 +f 935 1087 1088 934 +f 934 1088 1089 933 +f 933 1089 1090 932 +f 932 1090 1059 931 +f 1090 33 64 1059 +f 1089 34 33 1090 +f 1088 35 34 1089 +f 1087 36 35 1088 +f 1086 37 36 1087 +f 1085 38 37 1086 +f 1084 39 38 1085 +f 1083 40 39 1084 +f 1082 41 40 1083 +f 1081 42 41 1082 +f 1080 43 42 1081 +f 1079 44 43 1080 +f 1078 45 44 1079 +f 1077 46 45 1078 +f 1076 47 46 1077 +f 1075 48 47 1076 +f 1074 49 48 1075 +f 1073 50 49 1074 +f 1072 51 50 1073 +f 1071 52 51 1072 +f 1070 53 52 1071 +f 1069 54 53 1070 +f 1068 55 54 1069 +f 1067 56 55 1068 +f 1066 57 56 1067 +f 1065 58 57 1066 +f 1064 59 58 1065 +f 1063 60 59 1064 +f 1062 61 60 1063 +f 1061 62 61 1062 +f 1060 63 62 1061 +f 1059 64 63 1060 +f 1027 128 127 1058 +f 1058 127 126 1057 +f 1057 126 125 1056 +f 1056 125 124 1055 +f 1055 124 123 1054 +f 1054 123 122 1053 +f 1053 122 121 1052 +f 1052 121 120 1051 +f 1051 120 119 1050 +f 1050 119 118 1049 +f 1049 118 117 1048 +f 1048 117 116 1047 +f 1047 116 115 1046 +f 1046 115 114 1045 +f 1045 114 113 1044 +f 1044 113 112 1043 +f 1043 112 111 1042 +f 1042 111 110 1041 +f 1041 110 109 1040 +f 1040 109 108 1039 +f 1039 108 107 1038 +f 1038 107 106 1037 +f 1037 106 105 1036 +f 1036 105 104 1035 +f 1035 104 103 1034 +f 1034 103 102 1033 +f 1033 102 101 1032 +f 1032 101 100 1031 +f 1031 100 99 1030 +f 1030 99 98 1029 +f 1029 98 97 1028 +f 1028 97 128 1027 diff --git a/Graph3D/Chess3D/rook.obj b/Graph3D/Chess3D/rook.obj new file mode 100644 index 0000000..25598a1 --- /dev/null +++ b/Graph3D/Chess3D/rook.obj @@ -0,0 +1,1542 @@ +# Blender3D v245 OBJ File: chess2.blend +# www.blender3d.org +v 7.600000 -6.400000 0.000000 +v 7.705525 -6.528583 0.000000 +v 7.783938 -6.675282 0.000000 +v 7.832224 -6.834460 0.000000 +v 7.848528 -7.000000 0.000000 +v 7.832224 -7.165540 0.000000 +v 7.783938 -7.324718 0.000000 +v 7.705525 -7.471417 0.000000 +v 7.600000 -7.600000 0.000000 +v 7.471417 -7.705525 0.000000 +v 7.324718 -7.783938 0.000000 +v 7.165539 -7.832224 0.000000 +v 7.000000 -7.848528 0.000000 +v 6.834460 -7.832224 0.000000 +v 6.675282 -7.783937 0.000000 +v 6.528583 -7.705525 0.000000 +v 6.400000 -7.599999 0.000000 +v 6.294474 -7.471416 0.000000 +v 6.216062 -7.324717 0.000000 +v 6.167776 -7.165539 0.000000 +v 6.151472 -6.999999 0.000000 +v 6.167776 -6.834459 0.000000 +v 6.216063 -6.675282 0.000000 +v 6.294475 -6.528582 0.000000 +v 6.400001 -6.399999 0.000000 +v 6.528584 -6.294474 0.000000 +v 6.675283 -6.216062 0.000000 +v 6.834462 -6.167776 0.000000 +v 7.000001 -6.151472 0.000000 +v 7.165541 -6.167777 0.000000 +v 7.324719 -6.216063 0.000000 +v 7.471418 -6.294476 0.000000 +v 7.471418 -6.294476 0.123118 +v 7.324719 -6.216063 0.123118 +v 7.165541 -6.167777 0.123118 +v 7.000001 -6.151472 0.123118 +v 6.834462 -6.167776 0.123118 +v 6.675283 -6.216062 0.123118 +v 6.528584 -6.294474 0.123118 +v 6.400001 -6.399999 0.123118 +v 6.294475 -6.528582 0.123118 +v 6.216063 -6.675282 0.123118 +v 6.167776 -6.834459 0.123118 +v 6.151472 -6.999999 0.123118 +v 6.167776 -7.165539 0.123118 +v 6.216062 -7.324717 0.123118 +v 6.294474 -7.471416 0.123118 +v 6.400000 -7.599999 0.123118 +v 6.528583 -7.705525 0.123118 +v 6.675282 -7.783937 0.123118 +v 6.834460 -7.832224 0.123118 +v 7.000000 -7.848528 0.123118 +v 7.165539 -7.832224 0.123118 +v 7.324718 -7.783938 0.123118 +v 7.471417 -7.705525 0.123118 +v 7.600000 -7.600000 0.123118 +v 7.705525 -7.471417 0.123118 +v 7.783938 -7.324718 0.123118 +v 7.832224 -7.165540 0.123118 +v 7.848528 -7.000000 0.123118 +v 7.832224 -6.834460 0.123118 +v 7.783938 -6.675282 0.123118 +v 7.705525 -6.528583 0.123118 +v 7.600000 -6.400000 0.123118 +v 7.300000 -6.700000 0.323118 +v 7.352763 -6.764292 0.323118 +v 7.391969 -6.837641 0.323118 +v 7.416112 -6.917230 0.323118 +v 7.424264 -7.000000 0.323118 +v 7.416112 -7.082770 0.323118 +v 7.391969 -7.162359 0.323118 +v 7.352763 -7.235708 0.323118 +v 7.300000 -7.300000 0.323118 +v 7.235708 -7.352763 0.323118 +v 7.162359 -7.391969 0.323118 +v 7.082770 -7.416112 0.323118 +v 7.000000 -7.424264 0.323118 +v 6.917230 -7.416112 0.323118 +v 6.837641 -7.391969 0.323118 +v 6.764291 -7.352763 0.323118 +v 6.700000 -7.300000 0.323118 +v 6.647237 -7.235708 0.323118 +v 6.608031 -7.162358 0.323118 +v 6.583888 -7.082769 0.323118 +v 6.575736 -7.000000 0.323118 +v 6.583888 -6.917230 0.323118 +v 6.608031 -6.837641 0.323118 +v 6.647238 -6.764291 0.323118 +v 6.700000 -6.700000 0.323118 +v 6.764292 -6.647237 0.323118 +v 6.837642 -6.608031 0.323118 +v 6.917231 -6.583888 0.323118 +v 7.000000 -6.575736 0.323118 +v 7.082770 -6.583888 0.323118 +v 7.162360 -6.608031 0.323118 +v 7.235709 -6.647238 0.323118 +v 7.499945 -6.500055 0.223118 +v 7.587873 -6.607196 0.223118 +v 7.653209 -6.729432 0.223118 +v 7.693443 -6.862066 0.223118 +v 7.707028 -7.000000 0.223118 +v 7.693443 -7.137934 0.223118 +v 7.653209 -7.270568 0.223118 +v 7.587873 -7.392804 0.223118 +v 7.499945 -7.499945 0.223118 +v 7.392804 -7.587873 0.223118 +v 7.270568 -7.653209 0.223118 +v 7.137934 -7.693443 0.223118 +v 7.000000 -7.707028 0.223118 +v 6.862065 -7.693443 0.223118 +v 6.729432 -7.653209 0.223118 +v 6.607196 -7.587873 0.223118 +v 6.500055 -7.499944 0.223118 +v 6.412127 -7.392803 0.223118 +v 6.346791 -7.270567 0.223118 +v 6.306557 -7.137934 0.223118 +v 6.292972 -7.000000 0.223118 +v 6.306557 -6.862065 0.223118 +v 6.346791 -6.729431 0.223118 +v 6.412128 -6.607195 0.223118 +v 6.500056 -6.500055 0.223118 +v 6.607197 -6.412127 0.223118 +v 6.729433 -6.346791 0.223118 +v 6.862067 -6.306557 0.223118 +v 7.000001 -6.292972 0.223118 +v 7.137936 -6.306557 0.223118 +v 7.270569 -6.346791 0.223118 +v 7.392805 -6.412128 0.223118 +v 7.457335 -6.542665 0.173118 +v 7.400127 -6.599873 0.256465 +v 7.314379 -6.529500 0.256465 +v 7.359326 -6.462232 0.173118 +v 7.247509 -6.402464 0.173118 +v 7.216548 -6.477209 0.256465 +v 7.110396 -6.445008 0.256465 +v 7.126179 -6.365659 0.173118 +v 7.000001 -6.353231 0.173118 +v 7.000001 -6.434134 0.256465 +v 6.873823 -6.365658 0.173118 +v 6.889606 -6.445007 0.256465 +v 6.783453 -6.477208 0.256465 +v 6.752493 -6.402463 0.173118 +v 6.640675 -6.462231 0.173118 +v 6.685623 -6.529500 0.256465 +v 6.599873 -6.599872 0.256465 +v 6.542666 -6.542665 0.173118 +v 6.529500 -6.685621 0.256465 +v 6.462232 -6.640674 0.173118 +v 6.402464 -6.752491 0.173118 +v 6.477209 -6.783452 0.256465 +v 6.365659 -6.873821 0.173118 +v 6.445008 -6.889605 0.256465 +v 6.434134 -7.000000 0.256465 +v 6.353231 -7.000000 0.173118 +v 6.445007 -7.110394 0.256465 +v 6.365659 -7.126178 0.173118 +v 6.402463 -7.247507 0.173118 +v 6.477208 -7.216547 0.256465 +v 6.462231 -7.359325 0.173118 +v 6.529500 -7.314378 0.256465 +v 6.542665 -7.457335 0.173118 +v 6.599873 -7.400127 0.256465 +v 6.640674 -7.537768 0.173118 +v 6.685622 -7.470500 0.256465 +v 6.752492 -7.597537 0.173118 +v 6.783453 -7.522791 0.256465 +v 6.889605 -7.554993 0.256465 +v 6.873821 -7.634341 0.173118 +v 7.000000 -7.646769 0.173118 +v 7.000000 -7.565866 0.256465 +v 7.110395 -7.554993 0.256465 +v 7.126178 -7.634341 0.173118 +v 7.247508 -7.597537 0.173118 +v 7.216547 -7.522791 0.256465 +v 7.359325 -7.537769 0.173118 +v 7.314378 -7.470500 0.256465 +v 7.400127 -7.400127 0.256465 +v 7.457335 -7.457335 0.173118 +v 7.470500 -7.314378 0.256465 +v 7.537769 -7.359325 0.173118 +v 7.597537 -7.247508 0.173118 +v 7.522791 -7.216547 0.256465 +v 7.554993 -7.110395 0.256465 +v 7.634341 -7.126178 0.173118 +v 7.565866 -7.000000 0.256465 +v 7.646769 -7.000000 0.173118 +v 7.554993 -6.889605 0.256465 +v 7.634341 -6.873822 0.173118 +v 7.597537 -6.752492 0.173118 +v 7.522791 -6.783453 0.256465 +v 7.470500 -6.685622 0.256465 +v 7.537769 -6.640675 0.173118 +v 7.190925 -6.714262 1.400000 +v 7.131511 -6.682506 1.400000 +v 7.067044 -6.662950 1.400000 +v 7.000000 -6.656346 1.400000 +v 6.932957 -6.662949 1.400000 +v 6.868490 -6.682505 1.400000 +v 6.809076 -6.714262 1.400000 +v 6.757000 -6.756999 1.400000 +v 6.714262 -6.809076 1.400000 +v 6.682505 -6.868489 1.400000 +v 6.662950 -6.932956 1.400000 +v 6.656346 -7.000000 1.400000 +v 6.662949 -7.067043 1.400000 +v 6.682505 -7.131510 1.400000 +v 6.714262 -7.190924 1.400000 +v 6.757000 -7.243000 1.400000 +v 6.809076 -7.285738 1.400000 +v 6.868489 -7.317495 1.400000 +v 6.932956 -7.337050 1.400000 +v 7.000000 -7.343654 1.400000 +v 7.067043 -7.337051 1.400000 +v 7.131511 -7.317495 1.400000 +v 7.190924 -7.285738 1.400000 +v 7.243000 -7.243000 1.400000 +v 7.285738 -7.190924 1.400000 +v 7.317495 -7.131511 1.400000 +v 7.337051 -7.067043 1.400000 +v 7.343654 -7.000000 1.400000 +v 7.337050 -6.932956 1.400000 +v 7.317495 -6.868489 1.400000 +v 7.285738 -6.809076 1.400000 +v 7.243000 -6.757000 1.400000 +v 7.379080 -6.620920 1.398646 +v 7.445751 -6.702159 1.398646 +v 7.495292 -6.794843 1.398646 +v 7.525799 -6.895412 1.398646 +v 7.536100 -7.000000 1.398646 +v 7.525799 -7.104588 1.398646 +v 7.495292 -7.205156 1.398646 +v 7.445751 -7.297841 1.398646 +v 7.379080 -7.379080 1.398646 +v 7.297841 -7.445751 1.398646 +v 7.205156 -7.495292 1.398646 +v 7.104588 -7.525799 1.398646 +v 7.000000 -7.536100 1.398646 +v 6.895412 -7.525799 1.398646 +v 6.794843 -7.495292 1.398646 +v 6.702158 -7.445751 1.398646 +v 6.620920 -7.379080 1.398646 +v 6.554249 -7.297841 1.398646 +v 6.504708 -7.205156 1.398646 +v 6.474201 -7.104588 1.398646 +v 6.463900 -7.000000 1.398646 +v 6.474201 -6.895411 1.398646 +v 6.504708 -6.794843 1.398646 +v 6.554249 -6.702158 1.398646 +v 6.620920 -6.620919 1.398646 +v 6.702159 -6.554249 1.398646 +v 6.794844 -6.504708 1.398646 +v 6.895413 -6.474201 1.398646 +v 7.000001 -6.463900 1.398646 +v 7.104589 -6.474201 1.398646 +v 7.205158 -6.504708 1.398646 +v 7.297842 -6.554250 1.398646 +v 7.339530 -6.491860 1.548626 +v 7.233872 -6.435385 1.548626 +v 7.119227 -6.400608 1.548626 +v 7.000001 -6.388865 1.548626 +v 6.880774 -6.400608 1.548626 +v 6.766129 -6.435384 1.548626 +v 6.660472 -6.491859 1.548626 +v 6.567863 -6.567862 1.548626 +v 6.491860 -6.660471 1.548626 +v 6.435385 -6.766128 1.548626 +v 6.400608 -6.880773 1.548626 +v 6.388865 -7.000000 1.548626 +v 6.400608 -7.119226 1.548626 +v 6.435385 -7.233871 1.548626 +v 6.491859 -7.339528 1.548626 +v 6.567862 -7.432137 1.548626 +v 6.660471 -7.508140 1.548626 +v 6.766129 -7.564615 1.548626 +v 6.880773 -7.599392 1.548626 +v 7.000000 -7.611135 1.548626 +v 7.119226 -7.599392 1.548626 +v 7.233871 -7.564615 1.548626 +v 7.339529 -7.508140 1.548626 +v 7.432137 -7.432137 1.548626 +v 7.508140 -7.339529 1.548626 +v 7.564615 -7.233871 1.548626 +v 7.599392 -7.119226 1.548626 +v 7.611135 -7.000000 1.548626 +v 7.599392 -6.880774 1.548626 +v 7.564615 -6.766129 1.548626 +v 7.508140 -6.660471 1.548626 +v 7.432137 -6.567863 1.548626 +v 7.412818 -6.587182 1.698646 +v 7.485423 -6.675651 1.698646 +v 7.539373 -6.776584 1.698646 +v 7.572595 -6.886104 1.698646 +v 7.583813 -7.000000 1.698646 +v 7.572595 -7.113896 1.698646 +v 7.539373 -7.223415 1.698646 +v 7.485423 -7.324349 1.698646 +v 7.412818 -7.412818 1.698646 +v 7.324349 -7.485423 1.698646 +v 7.223415 -7.539373 1.698646 +v 7.113896 -7.572595 1.698646 +v 7.000000 -7.583813 1.698646 +v 6.886104 -7.572595 1.698646 +v 6.776584 -7.539373 1.698646 +v 6.675651 -7.485423 1.698646 +v 6.587182 -7.412818 1.698646 +v 6.514577 -7.324349 1.698646 +v 6.460627 -7.223415 1.698646 +v 6.427404 -7.113896 1.698646 +v 6.416187 -7.000000 1.698646 +v 6.427405 -6.886103 1.698646 +v 6.460627 -6.776584 1.698646 +v 6.514577 -6.675650 1.698646 +v 6.587182 -6.587181 1.698646 +v 6.675652 -6.514577 1.698646 +v 6.776585 -6.460627 1.698646 +v 6.886105 -6.427404 1.698646 +v 7.000001 -6.416187 1.698646 +v 7.113897 -6.427405 1.698646 +v 7.223416 -6.460628 1.698646 +v 7.324350 -6.514578 1.698646 +v 7.294864 -6.558707 2.498646 +v 7.203106 -6.509661 2.498646 +v 7.103543 -6.479459 2.198646 +v 7.000001 -6.469261 2.198646 +v 6.896459 -6.479459 2.198646 +v 6.796896 -6.509661 2.498646 +v 6.705138 -6.558706 2.498646 +v 6.624711 -6.624710 2.498646 +v 6.558707 -6.705136 2.498646 +v 6.509661 -6.796895 2.498646 +v 6.479459 -6.896457 2.198646 +v 6.469261 -7.000000 2.198646 +v 6.479459 -7.103542 2.198646 +v 6.509661 -7.203104 2.498646 +v 6.558706 -7.294863 2.498646 +v 6.624711 -7.375289 2.498646 +v 6.705137 -7.441293 2.498646 +v 6.796895 -7.490339 2.498646 +v 6.896458 -7.520541 2.198646 +v 7.000000 -7.530739 2.198646 +v 7.103542 -7.520541 2.198646 +v 7.203105 -7.490339 2.498646 +v 7.294863 -7.441294 2.498646 +v 7.375289 -7.375289 2.498646 +v 7.441294 -7.294863 2.498646 +v 7.490339 -7.203105 2.498646 +v 7.520541 -7.103542 2.198646 +v 7.530739 -7.000000 2.198646 +v 7.520541 -6.896458 2.198646 +v 7.490339 -6.796895 2.498646 +v 7.441294 -6.705137 2.498646 +v 7.375289 -6.624711 2.498646 +v 7.300231 -6.699769 2.498646 +v 7.353035 -6.764110 2.498646 +v 7.392271 -6.837516 2.498646 +v 7.416433 -6.917166 2.198646 +v 7.424592 -7.000000 2.198646 +v 7.416433 -7.082834 2.198646 +v 7.392272 -7.162484 2.498646 +v 7.353035 -7.235890 2.498646 +v 7.300231 -7.300231 2.498646 +v 7.235890 -7.353035 2.498646 +v 7.162484 -7.392272 2.498646 +v 7.082834 -7.416433 2.198646 +v 7.000000 -7.424592 2.198646 +v 6.917166 -7.416433 2.198646 +v 6.837516 -7.392271 2.498646 +v 6.764110 -7.353035 2.498646 +v 6.699769 -7.300231 2.498646 +v 6.646965 -7.235890 2.498646 +v 6.607728 -7.162484 2.498646 +v 6.583567 -7.082833 2.198646 +v 6.575408 -7.000000 2.198646 +v 6.583567 -6.917166 2.198646 +v 6.607729 -6.837515 2.498646 +v 6.646966 -6.764109 2.498646 +v 6.699769 -6.699768 2.498646 +v 6.764110 -6.646965 2.498646 +v 6.837516 -6.607728 2.498646 +v 6.917167 -6.583567 2.198646 +v 7.000000 -6.575408 2.198646 +v 7.082834 -6.583567 2.198646 +v 7.162485 -6.607729 2.498646 +v 7.235891 -6.646966 2.498646 +v 7.235891 -6.646966 2.398646 +v 7.162485 -6.607729 2.398646 +v 7.082834 -6.583567 2.098646 +v 7.000000 -6.575408 2.098646 +v 6.917167 -6.583567 2.098646 +v 6.837516 -6.607728 2.398646 +v 6.764110 -6.646965 2.398646 +v 6.699769 -6.699768 2.398646 +v 6.646966 -6.764109 2.398646 +v 6.607729 -6.837515 2.398646 +v 6.583567 -6.917166 2.098646 +v 6.575408 -7.000000 2.098646 +v 6.583567 -7.082833 2.098646 +v 6.607728 -7.162484 2.398646 +v 6.646965 -7.235890 2.398646 +v 6.699769 -7.300231 2.398646 +v 6.764110 -7.353035 2.398646 +v 6.837516 -7.392271 2.398646 +v 6.917166 -7.416433 2.098646 +v 7.000000 -7.424592 2.098646 +v 7.082834 -7.416433 2.098646 +v 7.162484 -7.392272 2.398646 +v 7.235890 -7.353035 2.398646 +v 7.300231 -7.300231 2.398646 +v 7.353035 -7.235890 2.398646 +v 7.392272 -7.162484 2.398646 +v 7.416433 -7.082834 2.098646 +v 7.424592 -7.000000 2.098646 +v 7.416433 -6.917166 2.098646 +v 7.392271 -6.837516 2.398646 +v 7.353035 -6.764110 2.398646 +v 7.300231 -6.699769 2.398646 +v 7.300231 -6.699769 1.798646 +v 7.353035 -6.764110 1.798646 +v 7.392271 -6.837516 1.798646 +v 7.416433 -6.917166 1.798646 +v 7.424592 -7.000000 1.798646 +v 7.416433 -7.082834 1.798646 +v 7.392272 -7.162484 1.798646 +v 7.353035 -7.235890 1.798646 +v 7.300231 -7.300231 1.798646 +v 7.235890 -7.353035 1.798646 +v 7.162484 -7.392272 1.798646 +v 7.082834 -7.416433 1.798646 +v 7.000000 -7.424592 1.798646 +v 6.917166 -7.416433 1.798646 +v 6.837516 -7.392271 1.798646 +v 6.764110 -7.353035 1.798646 +v 6.699769 -7.300231 1.798646 +v 6.646965 -7.235890 1.798646 +v 6.607728 -7.162484 1.798646 +v 6.583567 -7.082833 1.798646 +v 6.575408 -7.000000 1.798646 +v 6.583567 -6.917166 1.798646 +v 6.607729 -6.837515 1.798646 +v 6.646966 -6.764109 1.798646 +v 6.699769 -6.699768 1.798646 +v 6.764110 -6.646965 1.798646 +v 6.837516 -6.607728 1.798646 +v 6.917167 -6.583567 1.798646 +v 7.000000 -6.575408 1.798646 +v 7.082834 -6.583567 1.798646 +v 7.162485 -6.607729 1.798646 +v 7.235891 -6.646966 1.798646 +v 7.000000 -7.000000 1.798646 +v 7.000000 -7.000000 0.000000 +v 7.396139 -6.603861 1.648646 +v 7.465810 -6.688756 1.648646 +v 7.517580 -6.785611 1.648646 +v 7.549460 -6.890706 1.648646 +v 7.560225 -7.000000 1.648646 +v 7.549460 -7.109294 1.648646 +v 7.517580 -7.214389 1.648646 +v 7.465810 -7.311244 1.648646 +v 7.396139 -7.396139 1.648646 +v 7.311244 -7.465810 1.648646 +v 7.214389 -7.517580 1.648646 +v 7.109294 -7.549460 1.648646 +v 7.000000 -7.560225 1.648646 +v 6.890706 -7.549460 1.648646 +v 6.785611 -7.517580 1.648646 +v 6.688756 -7.465810 1.648646 +v 6.603861 -7.396138 1.648646 +v 6.534190 -7.311244 1.648646 +v 6.482419 -7.214388 1.648646 +v 6.450540 -7.109294 1.648646 +v 6.439775 -7.000000 1.648646 +v 6.450540 -6.890705 1.648646 +v 6.482420 -6.785611 1.648646 +v 6.534191 -6.688755 1.648646 +v 6.603862 -6.603861 1.648646 +v 6.688756 -6.534190 1.648646 +v 6.785612 -6.482419 1.648646 +v 6.890707 -6.450540 1.648646 +v 7.000001 -6.439775 1.648646 +v 7.109295 -6.450540 1.648646 +v 7.214390 -6.482420 1.648646 +v 7.311245 -6.534191 1.648646 +v 7.398034 -6.601966 1.448646 +v 7.312734 -6.531962 1.448646 +v 7.215415 -6.479944 1.448646 +v 7.109818 -6.447911 1.448646 +v 7.000001 -6.437095 1.448646 +v 6.890183 -6.447911 1.448646 +v 6.784586 -6.479943 1.448646 +v 6.687267 -6.531961 1.448646 +v 6.601966 -6.601965 1.448646 +v 6.531962 -6.687266 1.448646 +v 6.479944 -6.784585 1.448646 +v 6.447911 -6.890182 1.448646 +v 6.437095 -7.000000 1.448646 +v 6.447911 -7.109817 1.448646 +v 6.479943 -7.215414 1.448646 +v 6.531961 -7.312733 1.448646 +v 6.601966 -7.398034 1.448646 +v 6.687266 -7.468039 1.448646 +v 6.784585 -7.520057 1.448646 +v 6.890182 -7.552089 1.448646 +v 7.000000 -7.562905 1.448646 +v 7.109817 -7.552089 1.448646 +v 7.215415 -7.520057 1.448646 +v 7.312733 -7.468039 1.448646 +v 7.398034 -7.398034 1.448646 +v 7.468039 -7.312733 1.448646 +v 7.520057 -7.215415 1.448646 +v 7.552089 -7.109818 1.448646 +v 7.562905 -7.000000 1.448646 +v 7.552089 -6.890182 1.448646 +v 7.520057 -6.784585 1.448646 +v 7.468039 -6.687267 1.448646 +v 7.335076 -6.591709 2.498646 +v 7.248985 -6.534184 2.498646 +v 7.153325 -6.494560 2.348646 +v 7.051772 -6.474360 2.198646 +v 6.948230 -6.474360 2.198646 +v 6.846677 -6.494560 2.348646 +v 6.751017 -6.534184 2.498646 +v 6.664925 -6.591708 2.498646 +v 6.591709 -6.664923 2.498646 +v 6.534184 -6.751016 2.498646 +v 6.494560 -6.846676 2.348646 +v 6.474360 -6.948228 2.198646 +v 6.474360 -7.051771 2.198646 +v 6.494560 -7.153323 2.348646 +v 6.534184 -7.248984 2.498646 +v 6.591708 -7.335076 2.498646 +v 6.664924 -7.408291 2.498646 +v 6.751016 -7.465816 2.498646 +v 6.846676 -7.505440 2.348646 +v 6.948229 -7.525640 2.198646 +v 7.051771 -7.525640 2.198646 +v 7.153324 -7.505440 2.348646 +v 7.248984 -7.465816 2.498646 +v 7.335076 -7.408291 2.498646 +v 7.408291 -7.335076 2.498646 +v 7.465816 -7.248984 2.498646 +v 7.505440 -7.153324 2.348646 +v 7.525640 -7.051771 2.198646 +v 7.525640 -6.948229 2.198646 +v 7.505440 -6.846676 2.348646 +v 7.465816 -6.751016 2.498646 +v 7.408291 -6.664924 2.498646 +v 7.337760 -6.662240 2.498646 +v 7.326633 -6.731939 2.498646 +v 7.397164 -6.734623 2.498646 +v 7.372653 -6.800813 2.498646 +v 7.441305 -6.817205 2.498646 +v 7.404352 -6.877341 2.348646 +v 7.468487 -6.906812 2.198646 +v 7.420512 -6.958583 2.198646 +v 7.477665 -7.000000 2.198646 +v 7.420512 -7.041417 2.198646 +v 7.468487 -7.093188 2.198646 +v 7.404352 -7.122659 2.348646 +v 7.441305 -7.182795 2.498646 +v 7.372653 -7.199187 2.498646 +v 7.397164 -7.265377 2.498646 +v 7.326633 -7.268061 2.498646 +v 7.337760 -7.337760 2.498646 +v 7.268061 -7.326633 2.498646 +v 7.265377 -7.397164 2.498646 +v 7.199187 -7.372653 2.498646 +v 7.182795 -7.441305 2.498646 +v 7.122659 -7.404352 2.348646 +v 7.093188 -7.468487 2.198646 +v 7.041417 -7.420512 2.198646 +v 7.000000 -7.477665 2.198646 +v 6.958583 -7.420512 2.198646 +v 6.906812 -7.468487 2.198646 +v 6.877341 -7.404352 2.348646 +v 6.817205 -7.441305 2.498646 +v 6.800813 -7.372653 2.498646 +v 6.734623 -7.397164 2.498646 +v 6.731939 -7.326633 2.498646 +v 6.662240 -7.337760 2.498646 +v 6.673367 -7.268061 2.498646 +v 6.602836 -7.265376 2.498646 +v 6.627347 -7.199187 2.498646 +v 6.558695 -7.182794 2.498646 +v 6.595648 -7.122659 2.348646 +v 6.531513 -7.093187 2.198646 +v 6.579488 -7.041417 2.198646 +v 6.522335 -7.000000 2.198646 +v 6.579488 -6.958583 2.198646 +v 6.531513 -6.906812 2.198646 +v 6.595648 -6.877341 2.348646 +v 6.558695 -6.817205 2.498646 +v 6.627347 -6.800812 2.498646 +v 6.602836 -6.734623 2.498646 +v 6.673367 -6.731939 2.498646 +v 6.662240 -6.662239 2.498646 +v 6.731939 -6.673367 2.498646 +v 6.734624 -6.602836 2.498646 +v 6.800813 -6.627347 2.498646 +v 6.817206 -6.558694 2.498646 +v 6.877342 -6.595648 2.348646 +v 6.906813 -6.531513 2.198646 +v 6.958584 -6.579488 2.198646 +v 7.000001 -6.522335 2.198646 +v 7.041418 -6.579488 2.198646 +v 7.093189 -6.531513 2.198646 +v 7.122660 -6.595648 2.348646 +v 7.182796 -6.558695 2.498646 +v 7.199188 -6.627347 2.498646 +v 7.265378 -6.602836 2.498646 +v 7.268061 -6.673367 2.498646 +v 7.301569 -6.632538 2.498646 +v 7.224086 -6.580766 2.498646 +v 7.137992 -6.545104 2.348646 +v 7.046595 -6.526924 2.198646 +v 6.953407 -6.526924 2.198646 +v 6.862010 -6.545104 2.348646 +v 6.775915 -6.580765 2.498646 +v 6.698432 -6.632537 2.498646 +v 6.632538 -6.698431 2.498646 +v 6.580766 -6.775914 2.498646 +v 6.545104 -6.862008 2.348646 +v 6.526924 -6.953405 2.198646 +v 6.526924 -7.046594 2.198646 +v 6.545104 -7.137991 2.348646 +v 6.580765 -7.224085 2.498646 +v 6.632537 -7.301568 2.498646 +v 6.698431 -7.367462 2.498646 +v 6.775914 -7.419235 2.498646 +v 6.862009 -7.454896 2.348646 +v 6.953406 -7.473076 2.198646 +v 7.046594 -7.473076 2.198646 +v 7.137991 -7.454896 2.348646 +v 7.224085 -7.419235 2.498646 +v 7.301569 -7.367462 2.498646 +v 7.367462 -7.301569 2.498646 +v 7.419235 -7.224085 2.498646 +v 7.454896 -7.137991 2.348646 +v 7.473076 -7.046594 2.198646 +v 7.473076 -6.953406 2.198646 +v 7.454896 -6.862009 2.348646 +v 7.419235 -6.775914 2.498646 +v 7.367462 -6.698431 2.498646 +v 7.600000 -6.400000 0.030734 +v 7.471418 -6.294476 0.030734 +v 7.324719 -6.216063 0.030734 +v 7.165541 -6.167777 0.030734 +v 7.000001 -6.151472 0.030734 +v 6.834462 -6.167776 0.030734 +v 6.675283 -6.216062 0.030734 +v 6.528584 -6.294474 0.030734 +v 6.400001 -6.399999 0.030734 +v 6.294475 -6.528582 0.030734 +v 6.216063 -6.675282 0.030734 +v 6.167776 -6.834459 0.030734 +v 6.151472 -6.999999 0.030734 +v 6.167776 -7.165539 0.030734 +v 6.216062 -7.324717 0.030734 +v 6.294474 -7.471416 0.030734 +v 6.400000 -7.599999 0.030734 +v 6.528583 -7.705525 0.030734 +v 6.675282 -7.783937 0.030734 +v 6.834460 -7.832224 0.030734 +v 7.000000 -7.848528 0.030734 +v 7.165539 -7.832224 0.030734 +v 7.324718 -7.783938 0.030734 +v 7.471417 -7.705525 0.030734 +v 7.600000 -7.600000 0.030734 +v 7.705525 -7.471417 0.030734 +v 7.783938 -7.324718 0.030734 +v 7.832224 -7.165540 0.030734 +v 7.848528 -7.000000 0.030734 +v 7.832224 -6.834460 0.030734 +v 7.783938 -6.675282 0.030734 +v 7.705525 -6.528583 0.030734 +v 7.600000 -6.400000 0.101007 +v 7.471418 -6.294476 0.101007 +v 7.705525 -6.528583 0.101007 +v 7.783938 -6.675282 0.101007 +v 7.832224 -6.834460 0.101007 +v 7.848528 -7.000000 0.101007 +v 7.832224 -7.165540 0.101007 +v 7.783938 -7.324718 0.101007 +v 7.705525 -7.471417 0.101007 +v 7.600000 -7.600000 0.101007 +v 7.471417 -7.705525 0.101007 +v 7.324718 -7.783938 0.101007 +v 7.165539 -7.832224 0.101007 +v 7.000000 -7.848528 0.101007 +v 6.834460 -7.832224 0.101007 +v 6.675282 -7.783937 0.101007 +v 6.528583 -7.705525 0.101007 +v 6.400000 -7.599999 0.101007 +v 6.294474 -7.471416 0.101007 +v 6.216062 -7.324717 0.101007 +v 6.167776 -7.165539 0.101007 +v 6.151472 -6.999999 0.101007 +v 6.167776 -6.834459 0.101007 +v 6.216063 -6.675282 0.101007 +v 6.294475 -6.528582 0.101007 +v 6.400001 -6.399999 0.101007 +v 6.528584 -6.294474 0.101007 +v 6.675283 -6.216062 0.101007 +v 6.834462 -6.167776 0.101007 +v 7.000001 -6.151472 0.101007 +v 7.165541 -6.167777 0.101007 +v 7.324719 -6.216063 0.101007 +usemtl Material +s 1 +f 64 675 676 33 +f 31 645 644 32 +f 30 646 645 31 +f 30 29 647 646 +f 28 648 647 29 +f 27 649 648 28 +f 26 650 649 27 +f 26 25 651 650 +f 24 652 651 25 +f 24 23 653 652 +f 22 654 653 23 +f 21 655 654 22 +f 20 656 655 21 +f 20 19 657 656 +f 18 658 657 19 +f 18 17 659 658 +f 16 660 659 17 +f 16 15 661 660 +f 14 662 661 15 +f 14 13 663 662 +f 12 664 663 13 +f 11 665 664 12 +f 10 666 665 11 +f 10 9 667 666 +f 9 8 668 667 +f 7 669 668 8 +f 7 6 670 669 +f 5 671 670 6 +f 5 4 672 671 +f 3 673 672 4 +f 3 2 674 673 +f 2 1 643 674 +f 63 64 129 192 +f 62 63 192 189 +f 62 189 188 61 +f 60 61 188 186 +f 60 186 184 59 +f 58 59 184 181 +f 58 181 180 57 +f 56 57 180 178 +f 55 56 178 175 +f 55 175 173 54 +f 54 173 172 53 +f 53 172 169 52 +f 51 52 169 168 +f 51 168 165 50 +f 49 50 165 163 +f 49 163 161 48 +f 47 48 161 159 +f 47 159 157 46 +f 45 46 157 156 +f 45 156 154 44 +f 44 154 151 43 +f 43 151 149 42 +f 41 42 149 148 +f 41 148 146 40 +f 39 40 146 143 +f 39 143 142 38 +f 38 142 139 37 +f 37 139 137 36 +f 35 36 137 136 +f 35 136 133 34 +f 34 133 132 33 +f 33 132 129 64 +f 97 128 131 130 +f 128 127 134 131 +f 127 126 135 134 +f 125 138 135 126 +f 125 124 140 138 +f 124 123 141 140 +f 123 122 144 141 +f 121 145 144 122 +f 121 120 147 145 +f 119 150 147 120 +f 119 118 152 150 +f 118 117 153 152 +f 117 116 155 153 +f 115 158 155 116 +f 115 114 160 158 +f 113 162 160 114 +f 113 112 164 162 +f 111 166 164 112 +f 111 110 167 166 +f 109 170 167 110 +f 109 108 171 170 +f 108 107 174 171 +f 107 106 176 174 +f 105 177 176 106 +f 104 179 177 105 +f 104 103 182 179 +f 102 183 182 103 +f 102 101 185 183 +f 100 187 185 101 +f 100 99 190 187 +f 98 191 190 99 +f 97 130 191 98 +f 130 65 66 191 +f 191 66 67 190 +f 187 190 67 68 +f 187 68 69 185 +f 183 185 69 70 +f 183 70 71 182 +f 179 182 71 72 +f 179 72 73 177 +f 177 73 74 176 +f 174 176 74 75 +f 171 174 75 76 +f 170 171 76 77 +f 170 77 78 167 +f 166 167 78 79 +f 166 79 80 164 +f 162 164 80 81 +f 162 81 82 160 +f 158 160 82 83 +f 158 83 84 155 +f 153 155 84 85 +f 152 153 85 86 +f 150 152 86 87 +f 150 87 88 147 +f 145 147 88 89 +f 145 89 90 144 +f 141 144 90 91 +f 140 141 91 92 +f 138 140 92 93 +f 138 93 94 135 +f 134 135 94 95 +f 131 134 95 96 +f 130 131 96 65 +f 129 132 128 97 +f 132 133 127 128 +f 133 136 126 127 +f 137 125 126 136 +f 137 139 124 125 +f 139 142 123 124 +f 142 143 122 123 +f 146 121 122 143 +f 146 148 120 121 +f 149 119 120 148 +f 149 151 118 119 +f 151 154 117 118 +f 154 156 116 117 +f 157 115 116 156 +f 157 159 114 115 +f 161 113 114 159 +f 161 163 112 113 +f 165 111 112 163 +f 165 168 110 111 +f 169 109 110 168 +f 169 172 108 109 +f 172 173 107 108 +f 173 175 106 107 +f 178 105 106 175 +f 180 104 105 178 +f 180 181 103 104 +f 184 102 103 181 +f 184 186 101 102 +f 188 100 101 186 +f 188 189 99 100 +f 192 98 99 189 +f 129 97 98 192 +f 96 193 224 65 +f 95 194 193 96 +f 94 195 194 95 +f 94 93 196 195 +f 92 197 196 93 +f 91 198 197 92 +f 90 199 198 91 +f 90 89 200 199 +f 88 201 200 89 +f 88 87 202 201 +f 86 203 202 87 +f 85 204 203 86 +f 84 205 204 85 +f 84 83 206 205 +f 82 207 206 83 +f 82 81 208 207 +f 80 209 208 81 +f 80 79 210 209 +f 78 211 210 79 +f 78 77 212 211 +f 76 213 212 77 +f 75 214 213 76 +f 74 215 214 75 +f 74 73 216 215 +f 73 72 217 216 +f 71 218 217 72 +f 71 70 219 218 +f 69 220 219 70 +f 69 68 221 220 +f 67 222 221 68 +f 67 66 223 222 +f 66 65 224 223 +f 223 224 225 226 +f 222 223 226 227 +f 222 227 228 221 +f 220 221 228 229 +f 220 229 230 219 +f 218 219 230 231 +f 218 231 232 217 +f 216 217 232 233 +f 215 216 233 234 +f 215 234 235 214 +f 214 235 236 213 +f 213 236 237 212 +f 211 212 237 238 +f 211 238 239 210 +f 209 210 239 240 +f 209 240 241 208 +f 207 208 241 242 +f 207 242 243 206 +f 205 206 243 244 +f 205 244 245 204 +f 204 245 246 203 +f 203 246 247 202 +f 201 202 247 248 +f 201 248 249 200 +f 199 200 249 250 +f 199 250 251 198 +f 198 251 252 197 +f 197 252 253 196 +f 195 196 253 254 +f 195 254 255 194 +f 194 255 256 193 +f 193 256 225 224 +f 256 484 483 225 +f 255 485 484 256 +f 254 486 485 255 +f 254 253 487 486 +f 252 488 487 253 +f 251 489 488 252 +f 250 490 489 251 +f 250 249 491 490 +f 248 492 491 249 +f 248 247 493 492 +f 246 494 493 247 +f 245 495 494 246 +f 244 496 495 245 +f 244 243 497 496 +f 242 498 497 243 +f 242 241 499 498 +f 240 500 499 241 +f 240 239 501 500 +f 238 502 501 239 +f 238 237 503 502 +f 236 504 503 237 +f 235 505 504 236 +f 234 506 505 235 +f 234 233 507 506 +f 233 232 508 507 +f 231 509 508 232 +f 231 230 510 509 +f 229 511 510 230 +f 229 228 512 511 +f 227 513 512 228 +f 227 226 514 513 +f 226 225 483 514 +f 287 288 451 452 +f 286 287 452 453 +f 286 453 454 285 +f 284 285 454 455 +f 284 455 456 283 +f 282 283 456 457 +f 282 457 458 281 +f 280 281 458 459 +f 279 280 459 460 +f 279 460 461 278 +f 278 461 462 277 +f 277 462 463 276 +f 275 276 463 464 +f 275 464 465 274 +f 273 274 465 466 +f 273 466 467 272 +f 271 272 467 468 +f 271 468 469 270 +f 269 270 469 470 +f 269 470 471 268 +f 268 471 472 267 +f 267 472 473 266 +f 265 266 473 474 +f 265 474 475 264 +f 263 264 475 476 +f 263 476 477 262 +f 262 477 478 261 +f 261 478 479 260 +f 259 260 479 480 +f 259 480 481 258 +f 258 481 482 257 +f 257 482 451 288 +f 317 324 518 +f 316 325 519 +f 309 332 526 +f 308 333 527 +f 301 340 534 +f 300 341 535 +f 293 348 542 +f 292 349 543 +f 351 546 642 549 +f 350 545 641 551 +f 350 551 640 544 +f 348 543 639 555 +f 348 555 638 542 +f 346 541 637 559 +f 346 559 636 540 +f 344 539 635 563 +f 343 538 634 565 +f 343 565 633 537 +f 342 567 632 536 +f 341 569 631 535 +f 339 534 630 573 +f 339 573 629 533 +f 337 532 628 577 +f 337 577 627 531 +f 335 530 626 581 +f 335 581 625 529 +f 333 528 624 585 +f 333 585 623 527 +f 332 587 622 526 +f 331 589 621 525 +f 329 524 620 593 +f 329 593 619 523 +f 327 522 618 597 +f 327 597 617 521 +f 326 599 616 520 +f 325 601 615 519 +f 323 518 614 605 +f 323 605 613 517 +f 322 607 612 516 +f 321 609 611 515 +f 416 353 610 +f 385 384 608 +f 386 383 606 +f 382 604 387 +f 388 381 602 +f 390 379 598 +f 378 596 391 +f 392 377 594 +f 376 592 393 +f 394 375 590 +f 395 374 588 +f 396 373 586 +f 398 371 582 +f 370 580 399 +f 400 369 578 +f 368 576 401 +f 402 367 574 +f 366 572 403 +f 404 365 570 +f 406 363 566 +f 362 564 407 +f 361 562 408 +f 409 360 560 +f 359 558 410 +f 411 358 556 +f 357 554 412 +f 355 550 414 +f 354 548 415 +f 415 416 417 418 +f 414 415 418 419 +f 414 419 420 413 +f 412 413 420 421 +f 412 421 422 411 +f 410 411 422 423 +f 410 423 424 409 +f 408 409 424 425 +f 407 408 425 426 +f 407 426 427 406 +f 406 427 428 405 +f 405 428 429 404 +f 403 404 429 430 +f 403 430 431 402 +f 401 402 431 432 +f 401 432 433 400 +f 399 400 433 434 +f 399 434 435 398 +f 397 398 435 436 +f 397 436 437 396 +f 396 437 438 395 +f 395 438 439 394 +f 393 394 439 440 +f 393 440 441 392 +f 391 392 441 442 +f 391 442 443 390 +f 390 443 444 389 +f 389 444 445 388 +f 387 388 445 446 +f 387 446 447 386 +f 386 447 448 385 +f 385 448 417 416 +f 448 449 417 +f 447 449 448 +f 446 449 447 +f 446 445 449 +f 444 449 445 +f 443 449 444 +f 442 449 443 +f 442 441 449 +f 440 449 441 +f 440 439 449 +f 438 449 439 +f 437 449 438 +f 436 449 437 +f 436 435 449 +f 434 449 435 +f 434 433 449 +f 432 449 433 +f 432 431 449 +f 430 449 431 +f 430 429 449 +f 428 449 429 +f 427 449 428 +f 426 449 427 +f 426 425 449 +f 425 424 449 +f 423 449 424 +f 423 422 449 +f 421 449 422 +f 421 420 449 +f 419 449 420 +f 419 418 449 +f 418 417 449 +f 32 1 450 +f 31 32 450 +f 30 31 450 +f 30 450 29 +f 28 29 450 +f 27 28 450 +f 26 27 450 +f 26 450 25 +f 24 25 450 +f 24 450 23 +f 22 23 450 +f 21 22 450 +f 20 21 450 +f 20 450 19 +f 18 19 450 +f 18 450 17 +f 16 17 450 +f 16 450 15 +f 14 15 450 +f 14 450 13 +f 12 13 450 +f 11 12 450 +f 10 11 450 +f 10 450 9 +f 9 450 8 +f 7 8 450 +f 7 450 6 +f 5 6 450 +f 5 450 4 +f 3 4 450 +f 3 450 2 +f 450 1 2 +f 482 320 289 451 +f 481 319 320 482 +f 480 318 319 481 +f 479 317 318 480 +f 478 316 317 479 +f 477 315 316 478 +f 476 314 315 477 +f 475 313 314 476 +f 474 312 313 475 +f 473 311 312 474 +f 472 310 311 473 +f 471 309 310 472 +f 470 308 309 471 +f 469 307 308 470 +f 468 306 307 469 +f 467 305 306 468 +f 466 304 305 467 +f 465 303 304 466 +f 464 302 303 465 +f 463 301 302 464 +f 462 300 301 463 +f 461 299 300 462 +f 460 298 299 461 +f 459 297 298 460 +f 458 296 297 459 +f 457 295 296 458 +f 456 294 295 457 +f 455 293 294 456 +f 454 292 293 455 +f 453 291 292 454 +f 452 290 291 453 +f 451 289 290 452 +f 483 288 287 514 +f 514 287 286 513 +f 513 286 285 512 +f 512 285 284 511 +f 511 284 283 510 +f 510 283 282 509 +f 509 282 281 508 +f 508 281 280 507 +f 507 280 279 506 +f 506 279 278 505 +f 505 278 277 504 +f 504 277 276 503 +f 503 276 275 502 +f 502 275 274 501 +f 501 274 273 500 +f 500 273 272 499 +f 499 272 271 498 +f 498 271 270 497 +f 497 270 269 496 +f 496 269 268 495 +f 495 268 267 494 +f 494 267 266 493 +f 493 266 265 492 +f 492 265 264 491 +f 491 264 263 490 +f 490 263 262 489 +f 489 262 261 488 +f 488 261 260 487 +f 487 260 259 486 +f 486 259 258 485 +f 485 258 257 484 +f 484 257 288 483 +f 548 353 416 +f 548 416 415 +f 550 354 415 +f 550 415 414 +f 552 355 414 +f 554 356 413 +f 554 413 412 +f 556 357 412 +f 556 412 411 +f 560 359 410 +f 560 410 409 +f 562 360 409 +f 562 409 408 +f 564 361 408 +f 564 408 407 +f 566 362 407 +f 566 407 406 +f 568 363 406 +f 570 364 405 +f 570 405 404 +f 572 365 404 +f 572 404 403 +f 576 367 402 +f 576 402 401 +f 578 368 401 +f 578 401 400 +f 580 369 400 +f 580 400 399 +f 582 370 399 +f 582 399 398 +f 584 371 398 +f 586 372 397 +f 586 397 396 +f 588 373 396 +f 588 396 395 +f 592 375 394 +f 592 394 393 +f 594 376 393 +f 594 393 392 +f 596 377 392 +f 596 392 391 +f 598 378 391 +f 598 391 390 +f 600 379 390 +f 602 380 389 +f 602 389 388 +f 604 381 388 +f 604 388 387 +f 608 383 386 +f 608 386 385 +f 610 384 385 +f 610 385 416 +f 384 610 611 609 +f 353 547 611 610 +f 352 515 611 547 +f 383 608 612 607 +f 384 609 612 608 +f 321 516 612 609 +f 382 606 613 605 +f 383 607 613 606 +f 322 517 613 607 +f 324 603 614 518 +f 381 604 614 603 +f 382 605 614 604 +f 380 602 615 601 +f 381 603 615 602 +f 324 519 615 603 +f 379 600 616 599 +f 380 601 616 600 +f 325 520 616 601 +f 378 598 617 597 +f 379 599 617 598 +f 326 521 617 599 +f 328 595 618 522 +f 377 596 618 595 +f 378 597 618 596 +f 376 594 619 593 +f 377 595 619 594 +f 328 523 619 595 +f 330 591 620 524 +f 375 592 620 591 +f 376 593 620 592 +f 374 590 621 589 +f 375 591 621 590 +f 330 525 621 591 +f 373 588 622 587 +f 374 589 622 588 +f 331 526 622 589 +f 372 586 623 585 +f 373 587 623 586 +f 332 527 623 587 +f 334 583 624 528 +f 371 584 624 583 +f 372 585 624 584 +f 370 582 625 581 +f 371 583 625 582 +f 334 529 625 583 +f 336 579 626 530 +f 369 580 626 579 +f 370 581 626 580 +f 368 578 627 577 +f 369 579 627 578 +f 336 531 627 579 +f 338 575 628 532 +f 367 576 628 575 +f 368 577 628 576 +f 366 574 629 573 +f 367 575 629 574 +f 338 533 629 575 +f 340 571 630 534 +f 365 572 630 571 +f 366 573 630 572 +f 364 570 631 569 +f 365 571 631 570 +f 340 535 631 571 +f 363 568 632 567 +f 364 569 632 568 +f 341 536 632 569 +f 362 566 633 565 +f 363 567 633 566 +f 342 537 633 567 +f 344 563 634 538 +f 361 564 634 563 +f 362 565 634 564 +f 345 561 635 539 +f 360 562 635 561 +f 361 563 635 562 +f 359 560 636 559 +f 360 561 636 560 +f 345 540 636 561 +f 347 557 637 541 +f 358 558 637 557 +f 359 559 637 558 +f 357 556 638 555 +f 358 557 638 556 +f 347 542 638 557 +f 349 553 639 543 +f 356 554 639 553 +f 357 555 639 554 +f 355 552 640 551 +f 356 553 640 552 +f 349 544 640 553 +f 351 549 641 545 +f 354 550 641 549 +f 355 551 641 550 +f 352 547 642 546 +f 353 548 642 547 +f 354 549 642 548 +f 543 348 293 +f 543 293 292 +f 542 347 294 +f 542 294 293 +f 535 340 301 +f 535 301 300 +f 534 339 302 +f 534 302 301 +f 527 332 309 +f 527 309 308 +f 526 331 310 +f 526 310 309 +f 519 324 317 +f 519 317 316 +f 518 323 318 +f 518 318 317 +f 643 675 677 674 +f 674 677 678 673 +f 673 678 679 672 +f 672 679 680 671 +f 671 680 681 670 +f 670 681 682 669 +f 669 682 683 668 +f 668 683 684 667 +f 667 684 685 666 +f 666 685 686 665 +f 665 686 687 664 +f 664 687 688 663 +f 663 688 689 662 +f 662 689 690 661 +f 661 690 691 660 +f 660 691 692 659 +f 659 692 693 658 +f 658 693 694 657 +f 657 694 695 656 +f 656 695 696 655 +f 655 696 697 654 +f 654 697 698 653 +f 653 698 699 652 +f 652 699 700 651 +f 651 700 701 650 +f 650 701 702 649 +f 649 702 703 648 +f 648 703 704 647 +f 647 704 705 646 +f 646 705 706 645 +f 645 706 676 644 +f 643 1 32 644 +f 706 34 33 676 +f 705 35 34 706 +f 704 36 35 705 +f 703 37 36 704 +f 702 38 37 703 +f 701 39 38 702 +f 700 40 39 701 +f 699 41 40 700 +f 698 42 41 699 +f 697 43 42 698 +f 696 44 43 697 +f 695 45 44 696 +f 694 46 45 695 +f 693 47 46 694 +f 692 48 47 693 +f 691 49 48 692 +f 690 50 49 691 +f 689 51 50 690 +f 688 52 51 689 +f 687 53 52 688 +f 686 54 53 687 +f 685 55 54 686 +f 684 56 55 685 +f 683 57 56 684 +f 682 58 57 683 +f 681 59 58 682 +f 680 60 59 681 +f 679 61 60 680 +f 678 62 61 679 +f 677 63 62 678 +f 675 64 63 677 +f 675 643 644 676 +f 516 517 322 +f 323 319 318 +f 520 521 326 +f 524 525 330 +f 331 311 310 +f 528 529 334 +f 532 533 338 +f 339 303 302 +f 536 537 342 +f 540 541 346 +f 347 295 294 +f 544 545 350 +f 380 600 390 +f 380 390 389 +f 372 584 398 +f 372 398 397 +f 364 568 406 +f 364 406 405 +f 356 552 414 +f 356 414 413 +f 358 411 410 +f 358 410 558 +f 366 403 402 +f 366 402 574 +f 374 395 394 +f 374 394 590 +f 382 387 386 +f 382 386 606 +f 349 292 291 +f 341 300 299 +f 333 308 307 +f 325 316 315 +f 325 315 314 +f 333 307 306 +f 341 299 298 +f 349 291 290 +f 347 296 295 +f 339 304 303 +f 331 312 311 +f 323 320 319 +f 321 515 517 +f 321 517 516 +f 327 521 520 +f 327 520 522 +f 329 523 525 +f 329 525 524 +f 335 529 528 +f 335 528 530 +f 337 531 533 +f 337 533 532 +f 343 537 536 +f 343 536 538 +f 345 539 541 +f 345 541 540 +f 351 545 544 +f 351 544 546 +f 323 289 320 +f 331 313 312 +f 339 305 304 +f 347 297 296 +f 349 290 289 +f 341 298 297 +f 333 306 305 +f 325 314 313 +f 328 522 520 +f 336 530 528 +f 344 538 536 +f 352 546 544 +f 323 517 544 +f 331 525 520 +f 339 533 528 +f 347 541 536 +f 525 523 328 +f 525 328 520 +f 533 531 336 +f 533 336 528 +f 541 539 344 +f 541 344 536 +f 517 515 352 +f 517 352 544 +f 349 289 323 +f 349 323 544 +f 341 297 347 +f 341 347 536 +f 333 305 339 +f 333 339 528 +f 325 313 331 +f 325 331 520 diff --git a/Graph3D/Earth.jpg b/Graph3D/Earth.jpg new file mode 100644 index 0000000000000000000000000000000000000000..07f9d8ae27e55610dc2070d3d56e9aa4bcce2aa1 GIT binary patch literal 447092 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%0DPU=YI{N5r6>*(vBkOBXUS=nLR^3f@8;aCLp? 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 z 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�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Âq#h@Qj|)?rSP&xsP#uKFM&Y(fXmofs&O zNdE4d1K?<;u)YoJG})wkJKiLnn* z+=nKvxSF4w(q85ldPWhOsX5{M^v)4Zb+5nvc9&>RZgiu2N9~!18Vj)u$v?aDU@9#d8jTwj;DX%oZ0jkm7 zXLeIX=miK9)bwI`{t)iE4c5-466FiBoq0XnA%!0r)Qt(Cj0B@MSETpstcB7X7hu*F2GgZ}09YQ^$|hV6AT#a! z5|VcY`mgW zbBtQ~8FeWioAXF@1F(ambyIHQlyJpkw#w-)Rc%PVUtI0BB92cm>&lTlQv zO#3-*6%ctk0{#b0c56c2TV?xW@!6udqRD{a;vd3nY^K64a+NAIGOAANAO#0}+s?9P zUF0SQm;?K*oGFPVNTE@q=jx)TovH`z`Orc)suwq4bgvtSnc@o=kq~S9HLQfb20aI(@;-~fPXNo1hul_TbF&CRDtnrs6<9MLL_;x!1j}pQ){D1Wn z%hg$=kN1c9{1%=8&GrUPM#}KJLhMGw99Ud9=*Btr{V$tOKU$6v!ACM1rriiy0dQl8e#4`)j+LT*Kf&AN#?k zu>CTYil5FmthLRH77PW#X0g@C8F;3{u(qko${uNUH)A`2rzhhkP+bce@`;4=F_fIMseP^|zelFK2)2fR zH@4-)#bK5`MtMLTv)IKmHze?OL<0;b4 z);TX}z>*CGF5M9Mm^1P{8|M9Be^SNdASKyi2a0Kws7ExWaxgV!+mcFGX2VM7+{$hc z8X%n@?lJOlmT*hqR{`Y6i*q3;@zZTjBSAK{#1=p3I=~f6XMV*Gt742qvlGbMG=^R7 zk+gN;A@Q$D?232OxN?Jv3nVWSX{{9fU0K#2XGT~WeN8B6CJ9B|q-ixJ=NR9v3+^*~ z(oA#?%A65k=o6E*QVBryGs64LJokz=T4&(|k-$6;&6!}h4TGv3`BO|BUXri>Z_@45 zybk}2iKWB1F#d+fk9~5VL<5x7B#E;HJW+w$j3NeyDKMeWeAQJD&@n)cn!7R8*nY8L zLXbNE9hJy2(E_TKZ0}%O&rvxeg>Bvcyp#LE8sEl4V>+q6La~0DRa*|scH_nN)tx_{oUW=`dV(2u zoT@JER>twNygc5hgC0Ohl5Vu2zDSs-A$itxkZZj|=QpPY2cgn(PYeB1h0_&Kl|b4z z!5r36;%H;0ADjYJuAtj`)JRe6OO1)2lL_Bon2yobLgD4z9sSiHSz<3UZyOy0lo?H z!a1yPvTuE7eed~VgqL?4_>*z?by%DyMA#hZG;kAy6)yxKGA@)#BCDps-bw;)nh0 zOEJaGXnkBFY;=fLiI+>g#$wG`Py7w39_WT9T?#-L(}u6{a4#Rt2c1+jl$bgW-4bO{ zNL0E4)VWTn-yd%Tccb;}czL3DF1jxmH&<^lw0e$bjXaZ{RGUnfkiVVu@ujVPdVlCO z>MPtx*R;22xsxg92e;ncqFfr{ZY7C|JSkI#wny9yzpb#nTACZ`9p1{p*wKdXw+7&eVz^Tc)SgltlB~yPTXK`<>A5Y`ZA&Jy=#>3As1tn1PNW zSUj}_(9{nsJzYD#6oHy9J#DOu^pq#rK7^R{P`7AK_OtvB)pwPEKlzcEn1OgNvt95t zb2}J|kLOQuC)oy+{mgjv_y+Cs*Kd>gk1*u^<-Oq|4+XX{J`JgKX{U@L1?_rn8K%a= z6J^0&1;6CpnVsi;vG8)QjQ4#d$-n&8^6>e?)Z*;-nt9N}TIJ;0kC+5=WtYHKaUXM_ zhgrMDx86q*&W;0Gb2^rA%vnIZD;@pDSBQRgNUO2mbal~b>~0h8>e&?H4cy33WSwqO_R&- z`=|Gs9MeQXw~ne243HD6N9jngzsHOEW%Yl@Kv@nb*KyE2s=+$%qpj2Hu8GuwAEvo* z{5OBj)1T7V%FLS0aWX6jH^jKd`2&luGY0Y!C9P|FR{qlb2aAoMh{FlZ)lh_sF%@$c!X0HCY zd^P)KZQvkV1fx*c>U!qE4(i|iaM?&+@x;c7sU1gQNhO1|Bp$Xvmc`7`kee{m_L7+~ zd)7vTGwyI-)Z>)0w@-IA93Q`a5yC`+Nl#)c;rRUtq~L?UIvpQc{nd~(k?JOI=Ml>V zEOMdDI?0~|Z; zP1c0mXLThyKX^=1-a+7Od%-b zDtlKkempKT4z+?>cC36)Zv5l=C)%-&;jLhS25|?ljg`k8FhQc7qG zr**0bV2DD6oMQ0x}UwAXIl~Z`Z zzAwF2lw`PAR0iNXR8nK53D5)<_;AM*Jy4_eTHd~!eOkPzaG4e7f*`3Jzi?c~dB-RU z=61LD^zv0L05(~OaVnlsk4oTJJUgY23Gtp7mjA`Z*(a48e8GleTh;(P3-I#BsMX!2 z##`tfisAA@&Bo~=Z`6XRB53rr)5zolySv#3vvN8M`BpDaj5;MlYDFnUPxoMqFw#-1 z0s0H`2t9s-%XpV;>g~q^=GRxYaXBUW-I0N_N7(0sMzzR@h&y^IS|1W?+ zCS$noXpZCc+vI{KPuu1IlS+UP4zxMBKW-?9uP18E&n@t2g_6tF}?B)Ft5vnL__LfK)bY}!vKVjq!u8&t_)SI0pdqOA`BfmLLtac z#(l%1yI4;6aOa(r?YL~W(l^=8WaFFFj-OyHe`3jp`LoE{)3l_$5u_xY;IiIDw9wx6 zd(G}ad-ip^I+qEurYPm6?&1;H$S24z~0{{Na@{Drv zs3)F#aPrYR!!;N&IfXno((!?MS3j&!h42gPXXvC_-vDJg0x@G=;9`q=nq zx`F`pFW%tkcnSD2-p8k0`0$!Zlauey(dOtqpSK|#{J`9r%FE!&BY~$r32YRpR*G_^ z&=A$nl$dyL9F(FqlRy~*t95^TM=Sa8%DWR(YrHEV$P2fWsQh*_4IDU&f!nDpi_e8x z#+G8VljR;Rha#DvRTtD+#T7?GJ#H$Af}y-@*wo4}B-}p)7mWJA&*Q)z9WV$Odubop zes{2Piv?)@h~(P~gW&n$hntjf-lf2`szPmn`{VTQEExSgN^7K$;a87lRNc&7aqbXM z%{JN;7%>G44hfylG&pwj?Yj*(Th5s{S1W^w@J@J|oeCF(n_gV>^w8Obd-edaI3I|` zw<&a(Rmgj8VsM{fe3h~vJmjFBW$WCCM)jy;pj106 z^Ck`)UFFz~u)|u@*!b`md)!Cbht}E6KvadZpFY=^3Lt?X}$q ze4D(}|3^74isY!iW1!!EI@I|F^is~i2JSU5U=mwpAx`fM5HMZ9IBs>JTv!=ZV-hQz~gRDVHn`dX+FoVeWM>MlH)UCizO8^@WG zfGv#f>QPN;x+xj*t*lG%LM*Nj&kHf$FU=1jE946ZK8Js#;4e1l)) zHzzUjC*J*@;vPa(X0)T7+`DRn4Ji%EUoFu@TpUNxo%Di8dct>{tzU}6<|d=-G=Ytk zE7h>}D?@}9$@q9ACbF1BC_Fx)h%pbk4Q?sgjSNFj<|x7)5sb(nZI>#^VirN1uI^IP z_I2ChN6RC3(Sj4-ZgTvqx)RyGDr!N=f{^XOy6r2Yt!<*KAJ4ah(HZB^pqBv)Oc5OjKGRbr)_s(#0u2?;@SigF8yc9lnz9DEd z`7-+7$>NSZ82yORc_)>!IBNUES(uLmW7o~gcQBUUO}1=6Ayz#OuIGDQ2c0if28eiU znznZAJ@hq+TvQhSjLi=m1$sI7XqbB(n*FUy3zh=-qWKJRve$^4keK^nzcGkO(Z(ob zUcPkV^*OiMDc!&`B~?Cygh7G5k=yhBbnolm(bfA#kN#zxR0*+N3yjP2|NCt2W)w{V z>7pp*Qbq5F&;Ae{x;Cw(0JL!B)*~iNM((#R!qRdyiN2kz@*0Rpx)f2j1V75*-E$kP zTosf1Y~Bxc%o&jSGpsej2Ou`codIOndOgaV1j$I>CecET=vVl-9RkmC0LQHXLlL~7 zEmDYQz|QwRP33Ms2g(V?1;B6))E2eKC|AK!0OSlc4sdTXPFgbY(`khz(Z237T56bz zX+}ITQE86o_fvPr&mR5g#8uKFc{*kv0gl`HR5f1NRyDEzasgXzT_5DVOQ1SRFv(^}mD3i`AJ zqdODZ9?4Y3JRV>M(O(PD9H6|)HpltuD-sZlD?&p3_$sazyDUav*X1F+kuJvFwN;s- z3o(W72zOpbohuF`pT&csAY&hr=sxZ88Z6i{QK>FySc{-u z&+dwMmIN+OkG7dI+23K*S)L(jG+B4d@4gOy`2(1LZ6F$D$5;{IyHJ!A3YWr%Eq{ZL z2pshCJ(scM(BqUP2I$#?*0Ur^|9kP>iYLUZBGDeew!A|PHZZR@l5Lc@wEykk%U{Fb zJ~hFL2OfXAc{$*;pjlzPCj9eWn2uNiZ80FE>XJavS6kgtBmnCeEDgKuS(AQ<=>a-3 z9<%A7@e+c}fWnpVc7C~KE4&(`qBPGwL}xPd2K12T$mhl(uL$a8zEDtggOYn*;g9HQ zJ29@&vf&HKzKaDK6+D58+zq(dyK+mjF(9~hv~5p27-$R9R-n=KTRm`gP-}rM39MFv zMjl`O1$#fzmXN!tCH^ba7yLx3bI(lvWjrjb&WnGXjbff|eP8h89Kfa%RSBRd=SzI> z8D`LU21?<%bNCNi>1Z75p7=&hwwNYjZJY{~{5$JzF*zRM9O!d^{&*5nP(W*p89zc$ zfx@*e|LqyTos8!e{s~4VEH~McB;Q$lnH`|}?||SVfKPER{CfFa0!H_asl*3YflUDH z7FWuDkM~2B!0_K+#GfOyJhlcheg|p1Jn3c?*cbWNxq*`S?xU#}jhf8GciCr+BEjHb zkYxPu;zP$5QM^v~COt)(c!uR&Mf|{Gzpfk^$l}~j2M#p4q4mEbTaaO?!OUQuD^-!T zCw=N0v3rN(6U8$iA5ukrnV*PF|EjV;WjSX=e)tO3yvPz~;JxkL#XXbo>( zZE@(@F8vs2-RSd@4fGjA1i{R3hH76FNwtScj!90+6lfY!q6JbZuXEii$G zU&q8)eAM%Gl#gPZe=?Bn%Y%stQk!#O;(qM4-1iFgaNL5b{60TEmVBO! z6F$7=TpIJ9%UFM*7cwMKn-AA#R|w6@rMTzD+6>|@tLSsp86vp4TAk}k*?Rb0#19>0 z=DzCb-F)1{{fb8vXn?O2c*(M|4VlHqdW0duy*J{qOR8wxYq+KUnl-qS_5mwLC=8Yq# zvCfY0{-EIuY|e zp0C7@FNz5`L+Ttq`S{U6n}g1a+ef^3r$Ud0UpP!)lWu<&mZYiTT9RQV1+HiY=!`&9 z25tki;V29*Hx3gO`}rfmAp%ojc=HYfuJq{NT{2Nj)LfrJJx$6hylXb46EAM6FbS@g5MdGQ;OXQ1G_#S<$r z*=|_taU<&I+giK|#Bh*ym;0SR6`;r6(0c#3XJ6#7zqRWTPsKCPxo~5I_j3k+RX68K z?dm}!5m|VV{DU9B125g=|Lr_ScKJXV#g&a`k)$Ow-ZSzBr{_m7bfhj{_1;il>nr1` z$n7pWs9RxZ2`#2y_hD45+{*|(#Sy_+T5wR{995)VG|k6|+;nJGIj@JYTdV7GT#DXz5cPN1BdB$cJRdmF<1Ti> zhpI#xS=k+A_p3xhl1yMSP<$%eTXB4MeR$oI*v_($@`5)j{fn(=kK{pv7ELC%stvpw zv>nmyKJqjP&x5_ZFTMos%?G&S4-h54g+*9J{X^3$U*}%&p0*B}j6v6*T$F;0!u|S6 z=g&K^6Xv8T*!;_0Lo#*YAjZv%TE~C)=;!6->+*yljMG%Z0k@a{MXavHp z{cTTL9{qDWYKtu<82b-4_-E(DR4J-O*`@FkMlpnsxkOgoE30SY?ZTXLe{*K>zC5ax zoX%rj!M^P%Uv1k6ROgRl+>-#$R$edn7(<@fTCaJ2N2F#>03~bmGeAvC)0(Nlnv5ZY zj$0C@j~U{pFlDzxs#88KH_iI7Q(Dh6f$vN~`9s%i(V)Z8^b_Tp+rbfo$PHcENOIug zalHJen%XX7w97mnKdkiua+wejKrOJjcFYJ$rxAhSx!msGS<5u!24N7)SBIYH2(!Rm zW3Od(DW4s=_wZA+7S*vF#iF%$`s@sEky^IRgR@7P_7elT>eww~dYzvoHy6VsG5|+EXC^=hc>CzjyO1$VWK}PPASlUVDU_GYeeh) zZ*T7A^{}9>djI>+$S|E@YOqt7*RwQ705F9cX)P`%gosP7pBrsKEbXwTR}#DXqJ8*p zp2EO{oOjy{DudedFkjDQ#T>h3(K6Pd_I0k=O={nJ@xy?A-?|f@>V0Ygs=1gN%kvW$ZW)BYc8FaWgq6s*q1N* z@9*2w&oto;CcnD4`_cxUzM2=enOn~=ENS_7*3t71_T8K8fcMhRfaiNzQd}5aJVFQG`70U=H%(AsNZ>%{J9_STi=BF<$JwV5OF@PNr$nZFkQW4DYCpR9f6{bTXRl6QtF|l~7h*;AzJcJQ176+IZ9wR}dRha}&nME^y?qujd`)AFii}4rU zO*rGRdZ#j!-B#~xk6?&TJW$m^U7gd2qTzOX?n4jYKFF zR&ww@`Yu$)Xh!DIw)tV**jF+_BmM?yK1^d3D*U4Bc( z)v_rY3Rk98ofg>F^#w)MW_N2R$IcIBANe@eTasG#Oi(>hTka^*Y#@ujij%9G75Zb( zH7SwVW7WG9VkK$ragpojgn4|^`j4U$1Sj0Yj~s=ICkV+c;Be5hdWvR|4A(@Gy@58{ zoJ4!_GPq)jiSdFIZpBC~nCDqcm#nKWeD?AqLDf#4_JC-`rC_6DbHujt{C+i$-<|E& zX?jwb;jqptTX-6lVcu1&VRNC?TB;Y?ir@HJ5Np{4fR_E+>>mL)u?_msfXlU z-C^H?EF_Wqqi;~9rL0{24_G@efkd19uwnctUB~W=iTuFmD5f`e6?+F9@+_c)Dz?6y z9{A&ZZrn!ka5w(djHp|R&D||e9HcZ_(NjdGPM(9@@1XMO69Ltq=f*@yY8p9p)b;yC zt@EI$`gJG)Z&VK1T%4YWecOwkgyLpl?XDq{tIz?~Tb%Eg{5;V-*(cmHGu-zjF729w5GraTiSetl76cNAhbKeThdH}A18u^;NND#f- zbm$wV{mXJ;d_`K0{(q&N4@V`05tGV**Q-wACG?Fy7>W}$h%BgoRIETx^ytG4IW9{k zWtx_z<>^PpUDotEf8MgfdZ2=dZAe%9x(5wIha9?p5YAd0`;q=Ee1$cS2aQ)ti|h3p z9VDm1%kkHVo>R;L(N&kVp_99N$m`T{v$#{IE8i~shuZk}Tjn_^=MPLy;c?gp(KGr@ z4sH?F8Y`778Bhwsm-}1zzQ4#^dYu!Bb20z>inePy)?Abuquh|x(0TE6Mp#@c*-8ju|8^rOs*Nw%Jk{i z6af(ftGD;(zu=p;4vOZ|8l$pS-H*3iQamAaNq#I$vHW3Uji`5{h-tvV1E$2|`bl8q zKEOHE|pOZYLseX|StB!W;Izv&M?K(`iA9|$a%PX;O7s(=; zi7!WQ)Gv*GCvA*4(1)nJGZ~q44dQ&46RG*qGw<+SuHWPTNmKlu2+1$Wz^b(!N(mjH zG_t>m799RyJvG3@7S|mwX8}R)-he@>ue_u9On{odWSTpgNo$X>K0)G%uHRR`FuB~f zR+BNnogEOJG_)QnU_EY44@IQrz*6->%V@YetxQ~+jVpl!=XJDPL zuz4cific6XgGoq$>?*>e|-5S6gbWrd9<7CAAJ%5U2{G z49T@t5h91mvbM{_)?Qea<)d}RB!YC0k+(zQ~&-Y1UZ>{s8sUH6^h%40(+P^rTl3D|33zr0k`hDY*rq_wHLsot^LvA~-5!Wf!1}+&vlwFkqRQR(UMl z^|8TOLlHw$3xpbQVUWa^77e=Y1cJBrb1cUInF%(sY5LT9*=q--Ot~X1AXV(rWEC6X zS`OW}FF6>R(BpDWO<9#ZeZ;lFns}kXwNl~#yl|hrI$dppys#7KN#yAbyVLQk5M}g< z?5PE}!$=t@8txdYQoy?PgUI zE{MhNFKfZ7T~~#Hm6tlTgBnDIggf;U9EYv78PK1sC?C(F5#n4XWhs_U!8@z24$a68 zKEKMBu0;3*n4dvm`)Onrm@4J1ey$1lI^lVIWtragreVKIR?5dX(XnSFL4EQ88P>bd zkA9p*+K9VG@k}~6_DY8a` zy-68p{j!#tN!0OojPD5s{AL;vZ&jd%&ATci^WvGEaP80Dig(6$EL;#D+=HU>5)KF? z4sZHp(tTj)&?})ozdwBcAWn`xX4a4baxc@e+(HdO-1MaMOdddKqIjBZwX8&|)PCO< z=8(BgG<6mhhy6U|269ex{lA~AAqNnol(j*Xhm#5igh*qaXGy2UO{KqL6>>i1RXM9Y zO}M7E9WQyEOth7*(7y1xXE4VS$idXxYA*->;!07v~jXmBYoxl8CD*P9qrnUYeh zspYTiv+U}7L~YQfNF6Mn#jP;MJg$jXc{wJR=>HS!Z?0HkVZOekYj0)A&9yrvOPHOX z&}A!_AOhtFdfy~2H9z00e$>tLf2!K?etm3H{cl0`A+_vr=A{ArA99&-&hSdbD`p4t z8--_PSY+IpTuv5S7odR@&6(;7I)94|0ajyLj)WUQ)okKUtL6JtzjZTr;O|jm=7yLk z{dDCi(3cE{tchH6!C5;F*Q$u2pN_SKjWcHi?U+agy0H3XME7T1pFx|HR;JpgCZE+4 zXP|eM`24*0!}4YHCZ@$3tCloFk-pMF=@Pt$wEPbDVxWXmLug_zjakmGANmr@M}{9U zP2?gK(on@g^h?DvDY1_zff)CkvLAcoOLfA2qAKPI=_+I%o$sji(zq$=1yFFBoe=XF zwnta!9Jv(BnNCAq>Wy?C@qUS)&!85mtjusofrf~NdpA*Q*k$Gau)o4#t^C`be?w=S zql!y9)cp!J!Uti*Zg>dU0gb;=7W$%zET*a9xW+a}Z$}TUl+&6B%VJ7=O=>k-1mS_iMo+QLi7$2w5rJ_=G`6wj$;bzJ(6A)a!5rSjKO})14aaxR>uh%{ zuMJv!*JO(B+&$;){dCDF>!!bXxg1EsplvXY@jB6szO_Ncj?b^P_R2PavrfkljdW0a zbt^em&)0^=j^R`4?Se<(^!X^6w^nG9I{Kiwn31lQ_^PO(r zA^&!mTP=~+w&|zdJ<1@=+f@eEA-|)%=w`kNvja6EeE~R3{jspf4>6RH=q5r^x@ba; z%(keb%DAe;BA8+?)GIh>E)<9r6vC>PW9JP%-mU^K#5#d{L)VxY8 zT`x~xl@j>`gabGUoO6>d7&gfzSDjB6z87lRnuUiG;magaqzGvZ?3;=7`yrBc6l1+u za6Qnqs7A3{^dtJ^F~{no$!nM^`!!wb13UE8#zAwy;+OrF$lB7<3SmMkLjlf{xQC6y zPlLO`SQ0%?%wGY&f?Na;<)lw(&3w&!6H|}zyMTzpWl~`{0$cE|)yHS=MAB{B@_v}| z-I5`gaXxjxe7EVO{RPZZ#5(q%_AQK(2BuLc(FcLEmpeGdN`Y!`pGWbP8^n+Dpl?qu>^}Z3?=_yKy5UJnK;m4|C0I8fmqV2r~69ki}2K^yOlET^O7z^9U zJ@lZkFz9%xAqza*f9pvlp9jfZ?i>>4b?ARqwRroZrB;0X=>?M)peJmd_2C_sY|Cx8 zy2n@jgybIoImoBHpImAkF;JCA)TqIf;JLEU_oFp=49d8L<IAKRQ z6XeQ{o$}q~=$QgxXTBVFPoN`p&G75-XnfyI#@wODr_D-EHXlvj7X3Xv5k@nWx2q5$ z-9$lcSjwH|ub+&%%q&m=QX@96g5t~j1q09-zx(A~Ro9hPy zu~KmTcw=$$IW~`CVHK=^Ml#&s@qZmLRTNONv-2-z9c*n5ep5F~9v#os6R@f}0G`rQ zZBiEw65u&Z;x8HEDb^hD6Q-5O2h;wlwFUkjYeWIOf^)T9p)ERFA($a$>l=hO@>F>` z>RnhlL}b#Lt;A$QJ*fQmnD~=GIo?c^CjmJ5-Us9b(SefoWsT(7Zb;knK}6_apTE$> zBj@nZ{=AQGDxA-pCxfZ#g45NkT7UZ?sR$?rK0W2~F_FPN^kQu*oF3-~fmQ=hbUa>y z`@kKapbPTJSm1Rw!11=KhnJZUI)lS`{g}#lVaC#hgls~pDk(aNg`q5&MRUJ@Kv#3+ zNWtq5Igj3tO-B?}Wm2>e<=MAn92lNWmOqW)SPpfKPfj(m=O#B0-rPvhhnd6229!t}l3(DL-1sj_9;*0254XSg=4XA@4zRQph>?JF0 zs{-p%s8LOg z{k87|Jl=b25tt+D)nLX^IN`&+YCXp`p14d%;$=d>Dh5eS8JkuzP_;5PY#){z83?SS zxY(nucyaYfuO`Rz{KwUt96x)#&iu`@3j3wU#^w*V7%?7B4iR~HU9TO#q%I5x>eKx9 z?-BkUWFilXc+?=h3{t5m>X-OxP07gqC%KWsF1ut$76>Vy4(7dM_B+7z(xOdo+J=`* zqf?tx+5p)s{Yct~-KyP2w}3-ZeW%(%m1vfT&bhm{{ePmNC1t+A;Xbr<&n}QaN%g^%ntZDI~-Q|H#H7;41KMRxUb&OC+vTpeon1n6H95_K z%RMSxxsW6%ddHWu>mkgiEWOxe+WMa?Ls9(U_Y=(Qv&-1h;hy< zi+q8P7rS7zb!!vufx<&`*`iPN+9z;cuo&gWP>Jh#}S4$W8xm2QoZ$OR_tE-i$o<_-80Xj@r0U zehXLQ&m<|hw@BMGmxaqN#qE)F**(z=779N`88cl|^rKkLhgh~k@#6ENL*$(}=GETK zxAJUcPLf6j?YXVyqp!~&d#G>qXYBC@;$PM;8lwF5=yace`n9#StkkTE_`=6qLzS{; z>qS!PtVl|_z>Lls!!p(AKl2@Xhef=Y%aUe)6F4WYdGN03eL80KxC``=Wz17|ah!6G zHqWHtKTg+L<9zB@wPu3@zCLWtL7o$fthZ=1b=95ALKYZ>!N~`Q`^Vh;84R4&RU1!` zZgxAg+LwYF_KbNJtm#n~tKv;Qy@>{ zAITndTTsU(*E@VExa{%_&JDWPsN1q=Up9zC3=IZTKnYcT8r5;%33Jk=KuYqW)?CD3^fPXmE1C9_&)hl zAgU49Xo@^E8|6i+q)J5^Jmw{<(^(OjFuI&#a8{!7B7y1S0ns50LJPO#W4YnhwRCMif8YgcuO_hSBd-7oOz%zCs z!OhHY8O45^9lQ6kWE;BT_TOCvZT+EUTAkT1;g+ikZ3itr){M?s;a@CM5b!TyB#Yoq;pG`YUT28Wa7WAlS6|dqy)T~{ zyz397$wDl8kD+Z@klfZ zML@f=hCCN&C@Jz^2QIxvnwta1OXcG!BUVJwz@P?c>LXt$sklj*XU_p+uFAJ{-E#qV z3VAM(+KZQcE72btCM4SF<5*kbP-*DOj?8KHR1U_M*_?qZQ`^m#R&TH?iB_P*5RQ$D$m9dN3FPKksLLi3lq#e1am>AhGa zyp6+(CzrFNS#mS+5zPrPEupeFF_7bZ%RmxDIZy1O{qz#h}8zed{Dps`B9$MPnw#zE~VZ@FP(bPWlTeK8<{ldy$T%zflR z7^r?l?u}(bd^7Zzg_ywbuPF(kzg%@h1I^kJBbC>k+Lb;UPfXSwBi3FEtkS!b26Q4l3jV&^&3ec;29b`wO2KZofvcRKMH9&!LhU>p;5?p) z7AbxnidA~QkBuTlr+)c8ENa-@eF!Wrs|muY1r>;_nFu4-$LP8Co%jmT(wL}8xTQ1; z%M!=j5xqXkF2Fu+UZKl5PEXtvu?8BGSw=2rytD_5JqNUI! z$yu6cX-NpXf60e-)%}OF3u0&Ma;^;3^g7!F{g7*a__2@{SL7@3TiO`#BFAESnA7is z$Ny0WMGcua5h51+12%HVI(ym+!wQZ22yrz-S5VlQoVwAdy`471SkJoS2 zP~g+PVs6$99Pqx;!3i0zp&aQ3OHyo$u0zy%U5Wp_cHtVV6YY8#e)!v*8|vTQm!#@H zricGjva!I2&1($bAJxy!MorOS80Zk|WnXB1jBy$+D;nYW>Md}q5Y86e63#c(DY!Q* zn4-*A$+oJHbOCud4JnI;q|V$C*6-O?6ta#|){lN)2q|Ww#%<)9yA>?=bU%=@gmIl(2t8K~g$XxV&@9f?1 zfxj^a*h{3O?oob!T;ncap!3;x^I^dv+s4xW`^mRnb0(iXJ=YaFzjm%IH6wuEkBsF% z-Cat%rS|`}yn-jMO{IzZIXiz7R9$_ zaVhO08KuBJNf6MG3uOeR{eC-p%RXtJ=?mRVEqJb|p zL1Mq&xMo{NOT+A71v($;ipXG{=%f~Z=@?xCu6>(FU2gCpN(~?70 zYyv6mxq4*mPx4KxpS)I`yBELX5WJJ9zPV_@jAin^^v+ba9mmiChdC>me2%TzfC7{W zbumGOyRb(6#(z1v0G)n5#!^K+LL}q1<*_%U!+^4X%4?|Z@*28)q7*`2X|%|`FUo&- zy=Ben*@`>oHm>*Xc{;=Q%yNtf%HQj~(X5%YOrG9ISmqbw(Bf}i+B?TNAb3^XHSfON zZf6sm4;#O&T?Owg0jaYi{{l%F-}cpRoCwo+iK95Q$C(6zpC98{&@K}iIcpqCem{y| zh6S9A?zI|bYivv!T)Z0DpGAn)`)PJej@GLh2Q=5HUG}XHtGl*jpFdsBp8j>^>JQ&M zAnvGqak)2b*H=m2dmTd8-rTi4&D5jr&}*G)5)_~*sx6ws&MP>Rl~h%EGi}BDm^i7a zM_&8|+S6&N7+?!VI4x4otH>U*wV;E343G6n(&Psbk?wJYW{`Z@JMlHJ})%K)RwF4f1p4^?tt?O1=EbX$M*LRAvJ~ z_mdv(YuY+)sl6>rWCm-5W_DAvPp%U9$cgbZ>kf{JV{8_Q?r@j1=m!sx=fi|rqc>M~ zwl_YIZ&#%%Pj%ZixgF1qL3Vc1v)g8zEn_bdwl@?U%TJju#g1r=iereF?a|7vIZ+81 z{Xv|b&>t#qOFZ5>=Cuc2b5u&+AmlK*NZ<@`chpPpFIFfTn%JMtyR)yCRnp?;{`<)a zO`>>urv?OO_+H_U-Lho&kdqf3ARdZ>amEqu?38$k7`o;VKL@ZI|g8?lv*KAV6@ zCLqpstD{9TNVnxIVRejScOAYB*jSNICi~RFXr0SoE-kt+|9Fw*5$2p< zhGm&~jcHh>k9|Y{|1vWAk->fSH=OXmkM)6UYE>dSU1JLjbO;(MEEjs|s5&p96z2n+ znA#arlgxCxR1gujg2E6T?+&%Jn!x$dDj(8dG_aXDJK+xUk7LR!c&3G4Y>HRGs z0`qcz{B%YF^ql^{O*E3tEJ&6Y%u%6T@vyR?%>lFZP=4kC=ZA|0Q4qshK+9_yUZ z*DPpodvhnLD0m1u$+pmNn?%fN8iee47ufj%G$#o5cyD3W{K4N(JxGk}x!-Ms}7tZ)%vaW$H&Lyy2aWB&zU=229KGa*O=2O|c(FP;Tk zVBw2luOAu-XSROcGX^25xlMWfVLzIB^#jl`_DZbqf1hNdEnOm*z6#c zZHX`f0y|(md6rJ1OPsCbCMWTMw@l|?uglgdHhvd;OqNd}AEV7rnFs1z2eyqV(KwK- zQ+7~vft!Dsth8v5lJ&Id+Fhm4aNPRI1S~!RRnkKtT5vx2QQ-e05iB`M!1oqPN!hPW z$5h3ciIuZ&1(T&4C>c|--7JWv0*T1bGsnY_lrs@k8JgRuHh0x|a`8%0n-cBOUILgB zvnzb|PUxG+=JiS6f4Dccy?7y=`jMVM4CY9~4*^S1h&I#X z9vTiPYS8{_v%e=QJ(^!atEU5NQI;+My>HZS(8m}=B{WQ;<8Q=`YG1Zrs+TqB%2j@X zo4}qa^`*TJ?n_T2*Oq5M+3fLZI~_xtoX;hm?~3Z~e6QPfAlCF<Enisp^n|o?2T%&g^sm_tefyZQ3&fF{6~&M%n`_^dea|H zmPeVegS$ZM?FaT9?3YFUh|p@XprOCHrM0J^-Rkb%U*q6OH$nc0@6LBZxP7Hgpy1N{ zegWlMz;~>ti}o3P7ip;_2Ief3kl?q^uXg`jwV)j!V=mBgscHa?NbYg`V4McK>T6!b z|45Yjqn3ZQ{dLVo*HW>d(Sc`E8lv|d;>1|gWYbVKb z#?L{E1~nRwS6kg$6jwyewMWJ@>`C3;Wj${T9-b z1KAp}#PdZu$qo9xJRw5!(O5L@(h&`nenaQ8DMB(Ii+EaLu~0OHJMQE}oSS&IH}}6kK8}K1yAY_BuuE{YJ<00RKu=bZOc|&Ua~Qs**z=M|U18fw>kn+I9y03J){7i5W2a(7<*tBiwW0Z7JZ zItgBwAM5bvu}hP;={0NDxdc<5fr5@vq(3CUYsiQM`RGJeOgghJlShX#LACWcsg*rf zSbC-yIU_uk@(I-v$8Je;C?K;@pAcX=($Us0}A{m9Rx)5fA(6iszU!a z?%_j>`SIg>KOJKBVwtK0%QI{0ou9w!I+p4d?tY1?IS5?|`Gxd6_%DP*_Og`|i-$Z$ z9*SangX3gUP@GM&r|?#o#qqVHfJ|5Q*ho2{NY{dnBHi7IC_+S)e}|2CnLg8dJ$k{d2Bc>d z!BP9u!{=Hu>=r+=G?x)cHmrz;dvTcD8ip4B8+sr1afEBD_m5Ck_&0o6Z|k&!kq-Zk zLJD8iIr*%FH6%#9J+iKR$&r1T_sdctpHq7J(zb>bMJ&siIr7d3?hWv-p}RcMq7+WPWAdxmS&&pRrI{=?d)Bhbnmz#A$yU*skY17dBWl* zZH~J~e0vn5@+EB_+$C<$$qfExMM)jeocRqrub<_30U#Ljz16n4BWiqw$09cc_}AVc z)>7s))2Ef2GI3uxEMPj}tNy?x>w{~pz7iX~x>s99jTE}9z9;_Jc{Fug*FW@18{bSe zieTT=9WF2Qiy3fJtTNW|z<^EVk)$>-k&hL~Kr)z%>GNTDk)45lf}EiUokm*{tx@qJ zjRiRCgPu+A>!qBVA{)NA3!kY5Us=6C6{T4gE~eZtAuYnvkke>_aqXr)>kAh{>7j~n z-)kOS+c!Bis(NSV_ffHD4=*ZSxOBv-vZYVr7Fc zt>%frwF}>}Hw=DwW1gE_l(dbPS%rvV{b@Su_7DESh=97K7L(^0RywGny6jKd%S>a^ zM~v5HHsQUu3l*

#B0eg;Vb-!!-ZE^GU|oGIOto!- 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%0DNV!?~e-tUd_*;6N=i#WRnQ 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

8I`L4^)rW4(v?SS%H1 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 z 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 + + //Invoke(()->begin + var w := 1; + for var x := -5 to 5 do + for var y := -5 to 5 do + for var z := -5 to 5 do + l.Add(Sphere(x*w,y*w,z*w,w*0.5,RandomColor)); + //end); + + foreach var x in l do + x.AnimMoveBy(Random,Random,Random).AutoReverse.Forever.Begin; + + //Print(Milliseconds); +end. \ No newline at end of file diff --git a/Graph3D/События клавиатуры/Key1.pas b/Graph3D/События клавиатуры/Key1.pas new file mode 100644 index 0000000..43f61b5 --- /dev/null +++ b/Graph3D/События клавиатуры/Key1.pas @@ -0,0 +1,16 @@ +uses Graph3D; + +begin + View3D.ShowViewCube := False; + var s := Box(0,0,0,3,1,2,Colors.Blue); + OnKeyDown := k -> + case k of + Key.Left: s.MoveBy(1,0,0); + Key.Right: s.MoveBy(-1,0,0); + Key.Up: s.MoveBy(0,-1,0); + Key.Down: s.MoveBy(0,1,0); + Key.X: s.Rotate(OrtX,10); + Key.Y: s.Rotate(OrtY,10); + Key.Z: s.Rotate(OrtZ,10); + end; +end. \ No newline at end of file diff --git a/Graph3D/События клавиатуры/KeyFrameBasedTime.pas b/Graph3D/События клавиатуры/KeyFrameBasedTime.pas new file mode 100644 index 0000000..7f18cb5 --- /dev/null +++ b/Graph3D/События клавиатуры/KeyFrameBasedTime.pas @@ -0,0 +1,46 @@ +uses Graph3D; + +begin + Window.Title := 'Перемещение шара - анимация на основе кадра'; + View3D.Title := 'Используйте клавиши:'; + View3D.SubTitle := 'W,A,S,D,Стрелки - перемещение'; + var c := Sphere(0,0,0,1,Colors.SeaGreen); + c.Direction := V3D(-1,0,0); + c.Velocity := 5; + + var kl,kr,ku,kd: boolean; + + BeginFrameBasedAnimationTime(dt -> begin + if kr then + c.Direction := V3D(-1,c.Direction.Y,0) + else if kl then + c.Direction := V3D(1,c.Direction.Y,0) + else c.Direction := V3D(0,c.Direction.Y,0); + if ku then + c.Direction := V3D(c.Direction.X,-1,0) + else if kd then + c.Direction := V3D(c.Direction.X,1,0) + else c.Direction := V3D(c.Direction.X,0,0); + c.MoveTime(dt); + end); + + OnKeyDown := k -> + begin + case k of + Key.w,Key.Up: begin ku := true; kd := false; end; + Key.s,Key.Down: begin kd := true; ku := false; end; + Key.a,Key.Left: begin kl := true; kr := false; end; + Key.d,Key.Right: begin kr := true; kl := false; end; + end; + end; + OnKeyUp := k -> + begin + case k of + Key.w,Key.Up: ku := false; + Key.s,Key.Down: kd := false; + Key.a,Key.Left: kl := false; + Key.d,Key.Right: kr := false; + end; + end; + +end. \ No newline at end of file diff --git a/Graph3D/События мыши/cc3.pas b/Graph3D/События мыши/cc3.pas new file mode 100644 index 0000000..33db1e9 --- /dev/null +++ b/Graph3D/События мыши/cc3.pas @@ -0,0 +1,29 @@ +uses Graph3D; + +begin + View3D.Title := 'Перетягивайте мышью сферу'; + var s := Sphere(0,0,0,1); + var obj: Object3D; + OnMouseDown += procedure (x,y,mb) -> begin + obj := FindNearestObject(x,y); + if obj=s then View3D.Title := ''; + end; + + OnMouseUp += procedure (x,y,mb) -> begin + obj := nil + end; + + OnMouseMove += procedure (x,y,mb) -> begin + if obj = nil then exit; + var pp := PlaneXY.PointOnPlane(x,y); + if pp<>BadPoint then + begin + if pp.X<-5 then pp.X := -5; + if pp.X>5 then pp.X := 5; + if pp.Y<-5 then pp.Y := -5; + if pp.Y>5 then pp.Y := 5; + obj.Position := pp; + View3D.SubTitle := $'X={pp.x.ToString(2)} Y={pp.y.ToString(2)}'; + end; + end; +end. \ No newline at end of file diff --git a/Graph3D/События мыши/cc4.pas b/Graph3D/События мыши/cc4.pas new file mode 100644 index 0000000..e45b35a --- /dev/null +++ b/Graph3D/События мыши/cc4.pas @@ -0,0 +1,28 @@ +uses Graph3D; + +begin + View3D.Title := 'Перетягивайте мышью сферу'; + + var p1 := p3D(2,3,0); + var p := p3D(0,0,5); + var lin := Line(p,p1); + Segment3D(p,p1); + var s := Sphere(p1,0.2); + + var obj: Object3D; + OnMouseDown += procedure (x,y,mb) -> begin + obj := FindNearestObject(x,y); + if obj=s then View3D.Title := ''; + end; + + OnMouseUp += procedure (x,y,mb) -> begin + obj := nil; + end; + + OnMouseMove += procedure (x,y,mb) -> begin + if mb<>1 then exit; + if obj=nil then exit; + + obj.Position := lin.NearestPointOnLine(x,y); + end; +end. \ No newline at end of file diff --git a/Graph3D/События мыши/cc5.pas b/Graph3D/События мыши/cc5.pas new file mode 100644 index 0000000..134d125 --- /dev/null +++ b/Graph3D/События мыши/cc5.pas @@ -0,0 +1,41 @@ +uses Graph3D; + +begin + var d := new Dictionary; + + var pp := Arr(p3D(2,3,0),p3D(-3,0,0),p3D(2,-2,0)); + var p := p3D(0,0,5); + foreach var x in pp do + begin + var lin := Line(x,p); + Segment3D(x,p); + var s := Sphere(x,0.2); + d[s] := lin; // каждому объекту соответствует линия, по которой он может двигаться мышью + end; + + var tr := Polygon3D(Arr(pp)); + + var obj: Object3D; + OnMouseDown += procedure (x,y,mb) -> begin + obj := FindNearestObject(x,y); + if obj=nil then exit; + if not d.ContainsKey(obj) then + obj := nil; + end; + + OnMouseUp += procedure (x,y,mb) -> begin + obj := nil + end; + + OnMouseMove += procedure (x,y,mb) -> begin + if mb<>1 then exit; + if obj=nil then exit; + + obj.Position := d[obj].NearestPointOnLine(x,y); + + // Немного сложно - для изменения координат вершин треугольника + var pp := d.Keys.Select(o->o.Position).ToArray; + tr.Points := Arr(pp[0],pp[1],pp[1],pp[2],pp[2],pp[0]); + end; + +end. \ No newline at end of file diff --git a/Graph3D/События мыши/СлучайныйЦвет.pas b/Graph3D/События мыши/СлучайныйЦвет.pas new file mode 100644 index 0000000..ddce1a5 --- /dev/null +++ b/Graph3D/События мыши/СлучайныйЦвет.pas @@ -0,0 +1,13 @@ +uses Graph3D; + +begin + var s := Sphere(3,0,1,1); + var b := Box(0,2,0.5,3,2,1); + var t := Text3D(-5,0,1,'Graph3D',2); + OnMouseDown += procedure (x,y,mb) -> begin + if mb<>1 then exit; + var v := FindNearestObject(x,y); + if v<>nil then + v.Color := RandomColor; + end; +end. \ No newline at end of file diff --git a/Graph3D/Фигуры/Lego1.pas b/Graph3D/Фигуры/Lego1.pas new file mode 100644 index 0000000..f031115 --- /dev/null +++ b/Graph3D/Фигуры/Lego1.pas @@ -0,0 +1,8 @@ +uses Graph3D; + +begin + var l := Lego(-4,-1,0,8,4,1,Colors.Green); + Lego(-2,0,0.4,4,2,1,Colors.Blue); + Lego(-1,0,0.8,1,1,1,Colors.Red); + Lego(-1,1,0.8,2,1,1,Colors.Yellow); +end. \ No newline at end of file diff --git a/Graph3D/Фигуры/Pyramid.pas b/Graph3D/Фигуры/Pyramid.pas new file mode 100644 index 0000000..d7449c2 --- /dev/null +++ b/Graph3D/Фигуры/Pyramid.pas @@ -0,0 +1,6 @@ +uses Graph3D; + +begin + var p := Pyramid(0,0,0,5,2,2,Colors.Red); + p.AnimRotate(OrtZ,360,5).Begin +end. \ No newline at end of file diff --git a/Graph3D/Фигуры/Замок.pas b/Graph3D/Фигуры/Замок.pas new file mode 100644 index 0000000..634750a --- /dev/null +++ b/Graph3D/Фигуры/Замок.pas @@ -0,0 +1,32 @@ +uses Graph3D; + +function MultipleClones(c: Object3D; N: integer): Group3D; +begin + var g := Group(c); + loop N-1 do + begin + c := c.Clone; + c.MoveByX(-1.5); + if c is ObjectWithMaterial3D then + (c as ObjectWithMaterial3D).Color := RandomColor; + g.AddChild(c); + end; + Result := g; +end; + +begin + var b := Box(0,0,2,14.5,1,4,Colors.Orange); + var c := Cube(6.75,0,4.5,1,RandomColor); + var c1 := Cone(6.75,0,5,1.5,0.4,RandomColor); + var g := MultipleClones(c,10); + var gp := MultipleClones(c1,10); + var gg := Group(g,b,gp); + var g1 := gg.Clone.MoveByY(6); + var g2 := gg.Clone.MoveByY(-6); + gg.Rotate(OrtZ,90); + var g3 := gg.Clone.MoveByX(-6); + gg.MoveByX(6); + var ggg := Group(gg,g1,g2,g3); + ggg.Save('Замок.xaml'); + //ggg.AnimRotate(OrtZ,360,10).Forever.begin; +end. \ No newline at end of file diff --git a/Graph3D/Фигуры/Замок.xaml b/Graph3D/Фигуры/Замок.xaml new file mode 100644 index 0000000..fda6f83 --- /dev/null +++ b/Graph3D/Фигуры/Замок.xaml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Graph3D/Часы.pas b/Graph3D/Часы.pas new file mode 100644 index 0000000..5ca71fa --- /dev/null +++ b/Graph3D/Часы.pas @@ -0,0 +1,23 @@ +uses Graph3D; + +begin + View3D.ShowGridLines := False; + var Циферблат := Cylinder(0,0,-0.4,0.2,6,Colors.DeepPink); + var Сек := Arrow(0,0,0,0,-5.5,0,0.2,Colors.Yellow); + var Мин := Arrow(0,0,0,0,-6.0,0,0.3,Colors.Red); + + var a := 0; + var r := 5.8; + loop 60 do + begin + Sphere(r*cos(a*Pi/180),r*sin(a*Pi/180),-0.2,0.1,Colors.White); + a += 6; + end; + + while True do + begin + Sleep(10); + Сек.Rotate(v3D(0,0,1),-6); + Мин.Rotate(v3D(0,0,1),-6/60); + end; +end. \ No newline at end of file diff --git a/Graphics/ABCObjects/Sprites/SpriteFrames/multi1.bmp b/Graphics/ABCObjects/Sprites/SpriteFrames/multi1.bmp new file mode 100644 index 0000000000000000000000000000000000000000..72ae1e4c9fdea2f122289302692fa54459c13299 GIT binary patch literal 30054 zcmeI)TTa6;5CzaubrCFqPrg_H|Lg*>19o3kICbi_*YVBxQPJ2Jg(~B*9nY!5OA()6 zKfk;4$A^1;bD!Vy=gaQ(-2Oi2&%yk1JRNmNKmrnwfCMBU0SQPz0uqowuE1e`2uJQ% z-#-j@CuK8iZd7rl#RE4-bi3e!stbnPUU9qU1%($3*{%<)JgfGs&Tyd)!mRSMI(L8* zmtYhyc8lllsl|w3?ADV^T#E(4(kGs|%a&D&)ec>Ab;?XHzf(gp&)qUySu9$T@#e1w`gSmHqi(>y}!O>y4;Md zR`TTY)IyEKB`f=8mX*<}4b&L7p{$IX%5{^Ktn32zp4wM-E7!9P*LHsJ&ccDtvH}ni z%8KB`samcvZouGH&NUd66O&cgHkOl#%lHT6%P%#qzh&lL`&hZgRtoR_yulXtnBRMX iik?!qqKPQN30q4i5|DrdBp?9^NI(J-kbndl3j6`;>4l>J literal 0 HcmV?d00001 diff --git a/Graphics/ABCObjects/Sprites/SpriteFrames/multi2.bmp b/Graphics/ABCObjects/Sprites/SpriteFrames/multi2.bmp new file mode 100644 index 0000000000000000000000000000000000000000..b6e9bae3b59f375ac6a2471fdb8080a592334041 GIT binary patch literal 30054 zcmeI)L2kk@5QSliI7E-oWmi2w_q|2c8}#-F)sPU-v-6mkbP@Zn49a+HgFlS{6^YNU zpWof(?<3v6rQ7#-d)d8S`rpU=B^d9Hry~sk1Q0*~0R#|0009ILKwzoBVSkv~(z(O< zX?nV-TVZpvs&`sFadSlXPq<>&6;tjXal6+Q8?TtMT_1Voi}t=~usl!$;iBy?8r%R* zzJ;Jba9F;6OFcn^;INit^1Vb5B4hHEo9uZ=@o+$sEX7TE3ZE@5*mkD@F{!pq=5{v+ zGS@%1PAC0EmSSfoAZD96OWtFq_m&bI347C++izkqZEjYd{pS+eAB&CZl9IqmKun00 z!I2bJ0%Ag}434C*5)cz&WpE^gm4KKKD}y5`tOUe_SQ#8iVI?3Y#LD1E3M&CIAyx)Q zQdkLy39&LblEO+rOo)}ikrY+}VnVD8j-;>>5EEi$a3qD5fS3>~gCi-d1jK|5Tcxe7 z-ilw)r_S{sXyZSy&~ROu(^QwjD(;3AR&jy&Na_l!xIla)b%j-2AU-nHm1*&Hnjd*n zIvozuu7=GcL^gPa5}#t&%`XfT(Z+Hr$`m^lcwq8^N={lu_6)#rV zcjC{MRv$$*y|UGFbq4j+D|~-eBUkVr$kz{_sT!xs?C>Ib82eV53ggT*wETVWnwkc4 fF$mnyAj&>GP$UQ-fB*srAbxBmeC_n)UP=Epypa2CZKmiJD6`0ObJhsja z@o~C4saxT2v#K+#o_IK-#|>9xT`}eHipM>#NW5aoaec(jH|4%5SX^j;=BD&F1rLCe zrl1s1hNbI|)T2aDhK(eX=AuE+#H1?^*|SQq8ZabFHYrSjN3#o#-3dUz(AXxW>`EY| z{?a-|`m-$AP9q>7&6FkW0n@Dw2^`V1rcuh*v4EpA%VxhXq4Onsu)0J^&`N-SCanOD z7^0N`0Zm!~95F;I0Roz|0ytubRssYxX$5e^5Um6VXwnMch#^`D5YVI*z!5{V5+I;S zD}W=0XeB^E(}IJK5E$ac^CG(nYFwwTD&Mj9E|A{kigDM*=@B7 z>wpW5G$fK$T7_9Yc*H`&Nky?$s~CwF9Da0hD1S!pCG8bbDdp9=Dor%lPb>YCPAgjJ z1@w`uD_ZFV^pUJ9TImJ!k*==5pYn#6H493DZFpobDZ*{1DZbCz<-%49ox zd|;$``kpODTTUsOy#k|^vU=;GLYbK&DT}Jx4am9* z0{X|%-#PFe)Zc^MZo|=wDv^a^j!YT;7;0r~dk z(^X@vOoJ!do6)vXEDX;Tj`Zi?Z72rwBnaHmNR+&JV3AOO0u-PC1t>rP3Q&Lo6xc)H E4_cF#D*ylh literal 0 HcmV?d00001 diff --git a/Graphics/ABCObjects/Sprites/SpriteFrames/multi4.bmp b/Graphics/ABCObjects/Sprites/SpriteFrames/multi4.bmp new file mode 100644 index 0000000000000000000000000000000000000000..e097634893495527cc8c9f4602e6d42413f69fe7 GIT binary patch literal 30054 zcmeI&L2kk@5QSlia)=(G%dUEW?t6=>H|XsnR0jw1ltkkvl5UtEnP|dHBjsb9I>6`G z&+qB__$b@A^8B8kFQ?b*>+f^^x-)Oa%g8_g0R#|0009ILKmY**5ZEuEw^}9E0|qHA z%Neh&aymF?jg_NRYp}w~7w{|TE3AA0zmmSf$`|k}=_{;!0l$*I!pax$E9on&d;!0b zzH+RF^AHT@2zhD>)Oa2@$CTpd79xO^-w#+}esL#4%Q}k7lt_jX1_C_R%a>su9On#XgH{<8tl? zTk+x`Np{=mW7U1fvFZ}F0<0QEH^8b()C#a_6x{%;E>SDMs!?OT&ljuMN3&R|MjT@m`)C#`)re!PVjs<7r5bUJRqUhLVigRnOdj8r zF2k@GH^bya_4FsGh0o@0?q4I%?X)Sg`C`3o%y(Dlw$mCdUxQ&~UV$Hns%@60we~_~ z;=;-r@VC#ta$pYnbMUZf`0PzpNsnnQthiXMK1JEv zS~;4kUD+PzN(Qy-3ZKtv<}yD(zAZjWH@4197`T%$w^D12iK~wF|G`_T6%$l}I~qi* Y#RE-(00IagfB*srAbge@A6jCL0RR91 literal 0 HcmV?d00001 diff --git a/Graphics/ABCObjects/Sprites/SpriteFrames/multi5.bmp b/Graphics/ABCObjects/Sprites/SpriteFrames/multi5.bmp new file mode 100644 index 0000000000000000000000000000000000000000..727d8217091d012c13c0903891becbff469b0134 GIT binary patch literal 30054 zcmeI&L2iRU429t|;t)MTmtFM$-S-w%Z_wMLsFMtFo&b3qK&mwUD}oF*Nb|)*AnE7V z&+qB>_fghw<@G(iUQVyK{qIx$wlS^7%gBNN0tg_000IagfB*srAh2IRAGJ!XCv;L; zmN2d|I`HKl&8CfK9i-iibZ_-k&pcJ!8Qq4lZ#bkIv@-VK@Z*);;H(bB zckr{TC+vRb(qy@(dxXdUhx6bpku&6}DNy5iTwSgyemW5Wtm6HE6;^S9cqM)1Ta{Y^ zD+pTYA$DwrKnISM|Bhqj`)C#`)$n7id>_qXr5b*WmG7fjtW?8~vGRR1i2h zX0cKYKgP=UnPrVD@;qq8vy&v*wBcjbe8;hB5?KLOM$rtgY7$uiRz}ebuxb)n0aixQ z46tevX+hyCH&_1s)l?wAQ|lSB#lBTG4S&2?`97M(N;Ui#E8j=6SgD2|W99p37Aw{8 zW2}51%@!+X(aPlUL+LUMv*m7>oTv`}3N`at-OT;p$WuG5%B=3JkB#}B3Zw0`M9bG; zSOu@Z+o5WkrD?6bP?@-}3eLV#hE>q&7^oc65UXHQ9X0{!t11v*_kQQV9E{Jw!=_>H zO;t&cX)Ua{SS`Lq+1pwh48AAPo&*#H0l literal 0 HcmV?d00001 diff --git a/Graphics/ABCObjects/Sprites/gr_SpriteCreation.pas b/Graphics/ABCObjects/Sprites/gr_SpriteCreation.pas new file mode 100644 index 0000000..efe2a13 --- /dev/null +++ b/Graphics/ABCObjects/Sprites/gr_SpriteCreation.pas @@ -0,0 +1,29 @@ +// Создание спрайта и его состояний +uses GraphABC,ABCSprites,ABCObjects,Events; + +var s: SpriteABC; + +begin + Window.Title := 'Создание спрайта'; + SetWindowSize(400,300); + CenterWindow; + + // Создание спрайта и добавление в него кадров + s := new SpriteABC(150,100,'SpriteFrames\multi1.bmp'); + s.Add('SpriteFrames\multi2.bmp'); + s.Add('SpriteFrames\multi3.bmp'); + s.Add('SpriteFrames\multi2.bmp'); + s.Add('SpriteFrames\multi4.bmp'); + s.Add('SpriteFrames\multi5.bmp'); + + // Добавление состояний к спрайту + s.AddState('fly',4); // Летать - 4 кадра + s.AddState('stand',1); // Стоять - 1 кадр + s.AddState('sit',1); // Сидеть - 1 кадр + + // Задание скорости спрайт-анимации (1..10) + s.Speed := 9; + + // Сохранение спрайта в "длинный" рисунок и создание информационного файла спрайта + s.SaveWithInfo('spr.png'); +end. \ No newline at end of file diff --git a/Graphics/ABCObjects/Sprites/gr_SpriteUsing.pas b/Graphics/ABCObjects/Sprites/gr_SpriteUsing.pas new file mode 100644 index 0000000..df48901 --- /dev/null +++ b/Graphics/ABCObjects/Sprites/gr_SpriteUsing.pas @@ -0,0 +1,27 @@ +// Переключение состояний спрайта щелчком мыши +uses GraphABC,ABCSprites,ABCObjects,Events; + +var + s: SpriteABC; + t: TextABC; + +procedure MyMouseDown(x,y,mb: integer); +begin + if s.PtInside(x,y) then + begin + // Переход к следующему состоянию спрайта + if s.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 then + begin + sx := ob.Left - x; + sy := ob.Top - y; + end; +end; + +procedure MyMouseMove(x,y,mb: integer); +begin + if ob<>nil then + ob.Position := new Point(x+sx,y+sy); +end; + +procedure MyMouseUp(x,y,mb: integer); +begin + ob := nil; +end; + + +begin + Window.Title := 'Передвигайте мышью объекты'; + for var i:=1 to 10 do + begin + var p := new PictureABC(Random(Window.Width-100),Random(Window.Height-100),'demo.bmp'); + p.Transparent := True; + end; + OnMouseDown := MyMouseDown; + OnMouseMove := MyMouseMove; + OnMouseUp := MyMouseUp; +end. \ No newline at end of file diff --git a/Graphics/ABCObjects/gr_Intersect.pas b/Graphics/ABCObjects/gr_Intersect.pas new file mode 100644 index 0000000..243b5bb --- /dev/null +++ b/Graphics/ABCObjects/gr_Intersect.pas @@ -0,0 +1,28 @@ +// Иллюстрация метода Intersect для графических объектов +uses ABCObjects,GraphABC; + +var Destroyer: CircleABC; + +procedure CheckPulyaIntersects; +begin + for var i:=Objects.Count-1 downto 0 do + begin + if (Destroyer.Intersect(Objects[i])) and (Objects[i]<>Destroyer) then + Objects[i].Destroy; + end; +end; + +begin + Window.Title := 'Разрушитель: метод Intersect пересечения объектов'; + for var i:=1 to 500 do + new RectangleABC(Random(WindowWidth-200)+100,Random(WindowHeight-100),Random(200),Random(200),clRandom); + Destroyer := new CircleABC(10,WindowHeight div 2,100,clBlack); + Destroyer.FontColor := clYellow; + Destroyer.Text := 'Destroyer'; + + for var i:=1 to 900 do + begin + Destroyer.MoveOn(1,0); + CheckPulyaIntersects; + end; +end. diff --git a/Graphics/ABCObjects/gr_Move_Param.pas b/Graphics/ABCObjects/gr_Move_Param.pas new file mode 100644 index 0000000..8364f08 --- /dev/null +++ b/Graphics/ABCObjects/gr_Move_Param.pas @@ -0,0 +1,70 @@ +// Движение по траектории +uses ABCObjects,GraphABC; + +const +/// Шаг по параметру кривой + step = 0.03; +/// Задержка по времени, мс + delay = 10; + +type + PointR = record + x,y: real; + end; + +function Position(t: real): PointR; // астроида +begin + var si := sin(1.5 * t); + var co := cos(1.5 * t); + Result.x := si*si*si; + Result.y := co*co*co; +end; + +function Position1(t: real): PointR; // фигура Лиссажу +begin + Result.x := cos(4*t); + Result.y := cos(2.97221*t + 2*Pi/3); +end; + +function LogicalToScreen(p: PointR): Point; +begin + var ww := WindowWidth div 2; + var hh := WindowHeight div 2; + Result.x := round((ww - 50) * p.x + ww); + Result.y := round((hh - 50) * p.y + hh); +end; + +procedure InitScreen; +begin + SetBrushColor(clMoneyGreen); + Rectangle(10,10,WindowWidth-10,WindowHeight-10); + var p := LogicalToScreen(Position1(0)); + MoveTo(p.x,p.y); +end; + +begin + Window.IsFixedSize := True; + Window.Title := 'Движение по траектории'; + SetWindowSize(640,480); + CenterWindow; + + InitScreen; + var c := new CircleABC(200,200,25,clGreen); + var d := new StarABC(200,200,40,20,5,clYellow); + + var t: real := 0; + while True do + begin + c.Center := LogicalToScreen(Position1(t)); + d.Center := LogicalToScreen(Position(t)); + if t<20*Pi then + LineTo(c.Center.x,c.Center.y) + else + begin + t := 0; + InitScreen; + end; + t += step; + Sleep(delay); + end; +end. diff --git a/Graphics/ABCObjects/gr_MovingObjects.pas b/Graphics/ABCObjects/gr_MovingObjects.pas new file mode 100644 index 0000000..9f1f683 --- /dev/null +++ b/Graphics/ABCObjects/gr_MovingObjects.pas @@ -0,0 +1,51 @@ +uses ABCObjects,GraphABC,Utils; + +const +/// Количество графических объектов + Count = 300; +/// Флаг ускорения анимации + AnimationIsFast = True; + +/// Возвращает случайный графический объект +function NewRandomABC: ObjectABC; +begin + case Random(3) of +0: Result := new CircleABC(Random(WindowWidth-30)+10,Random(WindowHeight-30)+10,Random(10)+5,clRandom); +1: Result := new RectangleABC(Random(WindowWidth-30)+10,Random(WindowHeight-30)+10,Random(20)+10,Random(20)+10,clRandom); +2: Result := new StarABC(Random(WindowWidth-30)+10,Random(WindowHeight-30)+10,Random(20)+10,Random(10)+5,Random(4)+4,clRandom); + end; +end; + +/// Передвигает графический объект с отражением его от стенок +procedure Move(o: ObjectABC); +begin + o.Move; + if (o.Left<0) or (o.Left+o.Width>WindowWidth) then + o.dx := -o.dx; + if (o.Top<0) or (o.Top+o.Height>WindowHeight) then + o.dy := -o.dy; +end; + +begin + Window.Title := 'Движущиеся объекты'; + if AnimationIsFast then + LockDrawingObjects; + for var i:=1 to Count do + begin + var m: ObjectABC := NewRandomABC; + repeat + m.dx := Random(-3,3); + m.dy := Random(-3,3); + until (m.dx<>0) and (m.dy<>0); + end; + var k := 1; + while True do + begin + for var i:=0 to Objects.Count-1 do + Move(Objects[i]); + if AnimationIsFast then + RedrawObjects; + k += 1; + Window.Title := Format('{0,5:f2}',k/Milliseconds*1000)+' кадров в секунду'; + end; +end. diff --git a/Graphics/ABCObjects/gr_PictureScale.pas b/Graphics/ABCObjects/gr_PictureScale.pas new file mode 100644 index 0000000..03ba24b --- /dev/null +++ b/Graphics/ABCObjects/gr_PictureScale.pas @@ -0,0 +1,38 @@ +// Свойства ScaleX и ScaleY класса PictureABC +uses ABCObjects,GraphABC; + +const delay = 2; + +var p: PictureABC; + +begin + Window.Title := 'Движение и масштабирование рисунка по горизонтали'; + SetWindowSize(640,260); + p := PictureABC.Create(100,100,'demo.bmp'); + while True do + begin + for var x:=100 to 450 do + begin + Sleep(delay); + p.MoveOn(1,0); + end; + for var i:=100 downto -100 do + begin + Sleep(delay); + var w := p.Width; + p.ScaleX := i/100; + p.MoveOn(w - p.Width,0); + end; + for var x:=450 downto 100 do + begin + Sleep(delay); + p.MoveOn(-1,0); + end; + for var i:=-100 to 100 do + begin + Sleep(delay); + p.ScaleX:=i/100; + end; + end; +end. + diff --git a/Graphics/ABCObjects/gr_RealNumber.pas b/Graphics/ABCObjects/gr_RealNumber.pas new file mode 100644 index 0000000..7260260 --- /dev/null +++ b/Graphics/ABCObjects/gr_RealNumber.pas @@ -0,0 +1,21 @@ +uses ABCObjects,GraphABC; + +const +/// отступ по оси x + zx = 100; +/// отступ по оси y + zy = 50; + +begin + Window.IsFixedSize := True; + Window.Title := 'Секундомер'; + var r := new RoundRectABC(zx,zy,Window.Width-2*zx,Window.Height-2*zy,100,clMoneyGreen); + r.BorderWidth := 5; + r.BorderColor := clGreen; + for var i:=1 to 1000 do + begin + r.RealNumber := i/10; + Sleep(100); + end; +end. + diff --git a/Graphics/ABCObjects/gr_StandardColors.pas b/Graphics/ABCObjects/gr_StandardColors.pas new file mode 100644 index 0000000..05a949f --- /dev/null +++ b/Graphics/ABCObjects/gr_StandardColors.pas @@ -0,0 +1,144 @@ +uses + GraphABC, + ABCObjects, + System.Reflection; + +const lim = 127 + 32; + +var + CurrentBackColor := clWhite; + InfoString: RectangleABC; + +procedure ChangeInfoStringText(colorName: string); +begin + var c := Color.FromName(colorName); + InfoString.Text := string.Format('Color.{0}: (R: {1} G: {2} B: {3}) (H: {4:f1} S: {5:f1} B: {6:f1})',colorName,c.R,c.G,c.B,c.GetHue,c.GetSaturation,c.GetBrightness); + InfoString.Color := c; + if c.R*c.R+c.G*c.G+c.B*c.B <= 3*lim*lim then + InfoString.FontColor := clWhite + else InfoString.FontColor := clBlack; + if c.A = 0 then + InfoString.FontColor := clGray; +end; + +procedure CreateStandardColors(backColor: Color); +begin + ClearWindow(backColor); + var t := typeof(Color); + var mi := t.GetProperties(); + var y := 10; + var x := 10; + var h := Window.Width div 5 - 11; + foreach m: PropertyInfo in mi do + begin + if m.GetGetMethod(true).IsStatic then + begin + var c := Color(m.GetValue(nil,nil)); + var r := new RectangleABC(x,y,h,22,c); + r.Text := m.Name; + r.TextScale := 0.9; + r.Bordered := False; + if c.R*c.R+c.G*c.G+c.B*c.B <= 3*lim*lim then + r.FontColor := clWhite + else r.FontColor := clBlack; + if c.A = 0 then + r.FontColor := clGray; + y += 25; + if y > Window.Height-40 then + begin + y := 10; + x += h + 10; + end; + end; + end; +end; + +var + ob: ObjectABC; + dx,dy: integer; + +procedure MouseDown(x,y,mb: integer); +begin + ob := ObjectUnderPoint(x,y); + if ob=InfoString then + ob := nil; + if ob<>nil then + begin + ob.ToFront; + dx := x - ob.Left; + dy := y - ob.Top; + var c := ob.Color; + if (mb=2) then + ob.Scale(2) + else ob.Color := Color.FromArgb(128,c.R,c.G,c.B); + end; +end; + +procedure MouseUp(x,y,mb: integer); +begin + if ob<>nil then + begin + if (mb=2) then + ob.Scale(0.5) + else + begin + var c := ob.Color; + if ob.Text = 'Transparent' then + ob.Color := Color.FromArgb(0,c.R,c.G,c.B) + else ob.Color := Color.FromArgb(255,c.R,c.G,c.B); + end; + ob:= nil; + end; +end; + +procedure MouseMove(x,y,mb: integer); +begin + if (ob<>nil) and (mb=1) then + begin + ob.ToFront; + ob.Left := x - dx; + ob.Top := y - dy; + end; + if ob=nil then + begin + InfoString.Text := ''; + InfoString.Color := CurrentBackColor; + end; + var ob1 := ObjectUnderPoint(x,y); + if ob1=InfoString then + ob1 := nil; + if (ob1<>nil) and (mb=0) then + ChangeInfoStringText(ob1.Text); +end; + +procedure KeyDown(Key: integer); +begin + if Key=vk_Space then + begin + if CurrentBackColor=clWhite then + begin + CurrentBackColor := clBlack; + InfoString.BorderColor := clWhite; + end + else + begin + CurrentBackColor := clWhite; + InfoString.BorderColor := clBlack; + end; + ClearWindow(CurrentBackColor); + RedrawObjects; + end; +end; + +begin + SetWindowSize(1024,768); + Window.IsFixedSize := True; + Window.CenterOnScreen; + Window.Title := 'Стандартные цвета (нажмите Пробел для изменения фонового цвета)'; + CreateStandardColors(CurrentBackColor); + InfoString := new RectangleABC(10,Window.Height-30,Window.Width-20,25); + OnMouseMove := MouseMove; + OnMouseDown := MouseDown; + OnMouseUp := MouseUp; + OnKeyDown := KeyDown; +end. diff --git a/Graphics/ABCObjects/gr_Star_Rotate.pas b/Graphics/ABCObjects/gr_Star_Rotate.pas new file mode 100644 index 0000000..82d5275 --- /dev/null +++ b/Graphics/ABCObjects/gr_Star_Rotate.pas @@ -0,0 +1,18 @@ +// Изменение свойств объекта StarABC +uses ABCObjects,GraphABC; + +var z: StarABC; + +begin + z := new StarABC(WindowWidth div 2,WindowHeight div 2,WindowHeight div 2 - 5,WindowHeight div 4 + 16,6,clRed); + for var i:=1 to 20 do + begin + Sleep(100); + z.Count := z.Count + 1; + end; + for var i:=1 to 180 do + begin + Sleep(10); + z.Angle := z.Angle + 1; + end; +end. diff --git a/Graphics/ABCObjects/gr_Text.pas b/Graphics/ABCObjects/gr_Text.pas new file mode 100644 index 0000000..4cdd07d --- /dev/null +++ b/Graphics/ABCObjects/gr_Text.pas @@ -0,0 +1,17 @@ +// Клонирование графических объектов +uses ABCObjects,GraphABC; + +var bt: TextABC; + +begin + var x := 224; + bt := new TextABC(60,110,110,'Hello!',RGB(x,x,x)); + while x>32 do + begin + Sleep(40); + x -= 32; + bt := bt.Clone; + bt.Color := RGB(x,x,x); + bt.MoveOn(7,7); + end; +end. diff --git a/Graphics/Controls/cc10_ComboBox.pas b/Graphics/Controls/cc10_ComboBox.pas new file mode 100644 index 0000000..9b8da1a --- /dev/null +++ b/Graphics/Controls/cc10_ComboBox.pas @@ -0,0 +1,27 @@ +// Модуль Controls - элемент управления "Список" и использование словаря +uses Controls,GraphWPF; + +begin + Window.Title := 'Столицы стран'; + LeftPanel(150,Colors.Orange); + var l := ComboBox('Список стран'); + l.Tooltip := 'Выбери страну - отобразится столица'; + l.Add('Россия'); + l.Add('США'); + l.Add('Китай'); + l.Add('Германия'); + l.Add('Франция'); + + var d := Dict(('Россия','Москва'), + ('США','Вашингтон'), + ('Китай','Пекин'), + ('Германия','Берлин'), + ('Франция','Париж') + ); + + Font.Size := 70; + l.SelectionChanged := procedure -> begin + Window.Clear; + DrawText(GraphWindow.ClientRect,d[l.SelectedText]); + end; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc11_ComboBox2.pas b/Graphics/Controls/cc11_ComboBox2.pas new file mode 100644 index 0000000..ba766b4 --- /dev/null +++ b/Graphics/Controls/cc11_ComboBox2.pas @@ -0,0 +1,22 @@ +// Модуль Controls - элемент управления "ComboBox" и графики функций +uses GraphWPF,Controls; + +begin + Window.Title := 'Модуль Controls - элемент управления "ComboBox" и графики функций'; + LeftPanel(150, Colors.Orange); + var cb := ComboBox('Графики функций'); + cb.AddRange('x*sin(x)','exp(x)','x*x','sin(x)-cos(2.5*x)'); + + var Redraw: procedure := () -> begin + case cb.SelectedIndex of + 0: DrawGraph(x->x*sin(x)); + 1: DrawGraph(x->exp(x)); + 2: DrawGraph(x->x*x); + 3: DrawGraph(x->sin(x)-cos(2.5*x)); + end; + end; + + cb.SelectionChanged := Redraw; + OnResize := Redraw; + Redraw; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc12_Wrapping.pas b/Graphics/Controls/cc12_Wrapping.pas new file mode 100644 index 0000000..713feb3 --- /dev/null +++ b/Graphics/Controls/cc12_Wrapping.pas @@ -0,0 +1,18 @@ +// Модуль Controls - режим Wrapping для TextBlock +uses GraphWPF,Controls; + +function R := Random(-7,7); + +begin + Window.Title := 'Модуль Controls - режим Wrapping для TextBlock'; + LeftPanel(150,Colors.Orange); + var b := Button('No Wrap'); + b.Tooltip := 'Нажмите для изменения режима переноса слов'; + + var tb1 := TextBlock('Этот текст не помещается на одной строке и в режиме Wrapping автоматически переносится'); + b.Click := procedure → begin + tb1.Wrapping := not tb1.Wrapping; + b.Text := if tb1.Wrapping then 'Wrap' else 'No Wrap'; + end; + var tb := TextBlock('Этот текст усекается,'#10'но можно явно'#10'разделять на строки'); +end. \ No newline at end of file diff --git a/Graphics/Controls/cc13_Заголовки.pas b/Graphics/Controls/cc13_Заголовки.pas new file mode 100644 index 0000000..965b7b0 --- /dev/null +++ b/Graphics/Controls/cc13_Заголовки.pas @@ -0,0 +1,32 @@ +// Модуль Controls - элементы управления с заголовками +uses Controls, GraphWPF; + +begin + Window.Title := 'Модуль Controls - все элементы управления с заголовками'; + LeftPanel(170, Colors.Orange); + + var b := Button('Заголовки включены'); + + var tb := new TextBoxWPF('TextBox'); + tb.Height := 40; + tb.Text := 'Несколько строк текста'; + tb.Wrapping := True; + + var ib := new IntegerBoxWPF('IntegerBox', 0, 10); + var lb := new ListBoxWPF('ListBox',100); + lb.AddRange('1 2 3 4 5'.ToWords); + var cb := new ComboBoxWPF('ComboBox'); + cb.AddRange('1 2 3 4 5'.ToWords); + var sl := new SliderWPF('Slider:'); + + b.Click := procedure -> begin + if b.Text = 'Заголовки включены' then + b.Text := 'Заголовки выключены' + else b.Text := 'Заголовки включены'; + tb.TitleVisible := not tb.TitleVisible; + ib.TitleVisible := not ib.TitleVisible; + lb.TitleVisible := not lb.TitleVisible; + cb.TitleVisible := not cb.TitleVisible; + sl.TitleVisible := not sl.TitleVisible; + end; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc14_Canvas.pas b/Graphics/Controls/cc14_Canvas.pas new file mode 100644 index 0000000..844ac4d --- /dev/null +++ b/Graphics/Controls/cc14_Canvas.pas @@ -0,0 +1,17 @@ +// Модуль Controls - замена графической панели на элемент управления "Канва" +uses Controls,GraphWPF; + +begin + Window.Title := 'Модуль Controls - замена графической панели на элемент управления "Канва"'; + var left := LeftPanel(150,Colors.Orange); + var can := SetMainControl.AsCanvas; + can.Color := Colors.AntiqueWhite; + + Button(100,100,'На Канве можно располагать элементы'); + Button(50,300,'в любом месте,'); + TextBlock(150,500,'указывая их координаты'); + + // Смена активной панели + SetActivePanel(left); + Button('Закрыть').Click := procedure → Window.Close; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc15_ListView.pas b/Graphics/Controls/cc15_ListView.pas new file mode 100644 index 0000000..739359d --- /dev/null +++ b/Graphics/Controls/cc15_ListView.pas @@ -0,0 +1,23 @@ +// Модуль Controls - замена графического окна элементом "ListView" +uses Controls,GraphWPF; + +type My = class +public + auto property Поле1: integer; + auto property Поле2: integer; + constructor (п1,п2: integer) := (Поле1,Поле2) := (п1,п2); +end; + +begin + Window.Title := 'Модуль Controls - замена графического окна элементом "ListView"'; + LeftPanel(150,Colors.Orange); + + var l := SetMainControl.AsListView; + + // Заполнение объектами класса, у которых есть публичные свойства + l.Fill(Arr(new My(2,5),new My(4,6))); + + Button('Очистить список').Click := procedure -> l.Clear; + Button('Заполнить данными').Click := procedure -> l.Fill(|('Иванов',20),('Петров',19)|); + Button('Заполнить заголовки').Click := procedure -> l.SetHeaders('Фамилия','Возраст'); +end. \ No newline at end of file diff --git a/Graphics/Controls/cc16_Countries.pas b/Graphics/Controls/cc16_Countries.pas new file mode 100644 index 0000000..02008d8 --- /dev/null +++ b/Graphics/Controls/cc16_Countries.pas @@ -0,0 +1,19 @@ +// Модуль Controls - визуализация запросов к базе данных +uses GraphWPF,Controls,ABCDatabases; + +begin + Window.Title := 'Модуль Controls - визуализация запросов к базе данных'; + LeftPanel(150,Colors.Orange); + var l := SetMainControl.AsListView; + + var страны := ЗаполнитьМассивСтран; + l.Fill(страны); + + Button('Все').Click := procedure -> l.Fill(страны); + + Button('Азия').Click := procedure -> + l.Fill(страны.Where(страна -> страна.Континент='Азия')); + + Button('Сорт по населению').Click := procedure -> + l.Fill(страны.OrderByDescending(s -> s.Население)); +end. \ No newline at end of file diff --git a/Graphics/Controls/cc16a_CountyCapital.pas b/Graphics/Controls/cc16a_CountyCapital.pas new file mode 100644 index 0000000..370190e --- /dev/null +++ b/Graphics/Controls/cc16a_CountyCapital.pas @@ -0,0 +1,20 @@ +uses GraphWPF, Controls, ABCDatabases; + +begin + Window.Title := 'Столицы стран'; + LeftPanel(220, Colors.LightGoldenrodYellow); + var страны := ЗаполнитьМассивСтран; + + var a := ListBox('Страны',550); + a.AddRange(страны.ConvertAll(страна -> страна.Название)); + + var d := DictStr; + foreach var страна in страны do + d[страна.Название] := страна.Столица; + + Font.Size := 70; + a.SelectionChanged := procedure -> begin + Window.Clear; + DrawText(GraphWindow.ClientRect,d[a.SelectedText]) + end; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc17_CalcIdea.pas b/Graphics/Controls/cc17_CalcIdea.pas new file mode 100644 index 0000000..ac030bd --- /dev/null +++ b/Graphics/Controls/cc17_CalcIdea.pas @@ -0,0 +1,14 @@ +// Модуль Controls - Калькулятор Light +uses Controls,GraphWPF; + +begin + Window.Title := 'Калькулятор Light'; + LeftPanel(150, Colors.Orange); + var tb := SetMainControl.AsTextBox; + tb.FontSize := 30; + var x := IntegerBox('X:',1,9); + var y := IntegerBox('Y:',1,9); + Button('Sum').Click := procedure -> begin + tb.Println($'{x.Value} + {y.Value} = {x.Value + y.Value}'); + end; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc18_SimpleCalc.pas b/Graphics/Controls/cc18_SimpleCalc.pas new file mode 100644 index 0000000..f28cadb --- /dev/null +++ b/Graphics/Controls/cc18_SimpleCalc.pas @@ -0,0 +1,44 @@ +// Модуль Controls - Калькулятор +uses Controls,GraphWPF; + +begin + Window.Title := 'Калькулятор с выводом в TextBox'; + LeftPanel(150, Colors.Orange); + var tb := SetMainControl.AsTextBox; + tb.FontSize := 30; + var x := IntegerBox('X:'); + var y := IntegerBox('Y:'); + x.Value := Random(0,10); + y.Value := Random(0,10); + + var cb := new ComboBoxWPF('Операция'); + cb.AddRange('+','-','*','/'); + + var count := 0; + var sb := StatusBar; + sb.Text := 'Количество вычислений: ' + count; + + var b := Button('+'); + b.Click := procedure -> begin + case cb.SelectedText of + '+': tb.Println($'{x.Value} + {y.Value} = {x.Value + y.Value}'); + '-': tb.Println($'{x.Value} - {y.Value} = {x.Value - y.Value}'); + '*': tb.Println($'{x.Value} * {y.Value} = {x.Value * y.Value}'); + '/': tb.Println($'{x.Value} / {y.Value} = {x.Value / y.Value}'); + end; + x.Value := Random(0,10); + y.Value := Random(0,10); + count += 1; + sb.Text := 'Количество вычислений: ' + count; + end; + + Button('Очистить').Click := () -> begin + count := 0; + sb.Text := 'Количество вычислений: ' + count; + tb.Clear; + end; + + cb.SelectionChanged := procedure -> begin + b.Text := cb.SelectedText + end; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc19_StatusBar.pas b/Graphics/Controls/cc19_StatusBar.pas new file mode 100644 index 0000000..0be2ecb --- /dev/null +++ b/Graphics/Controls/cc19_StatusBar.pas @@ -0,0 +1,17 @@ +// Модуль Controls - StatusBar +uses Controls,GraphWPF; + +begin + Window.Title := 'Модуль Controls - StatusBar'; + var l := LeftPanel(150,Colors.Orange); + l.Tooltip := 'Измените размеры окна'; + var sb := StatusBar(24,55); + sb.AddText('',55); + Button('Очистить поле W').Click := procedure -> sb.ItemText[0] := ''; + Button('Очистить поле H').Click := procedure -> sb.ItemText[1] := ''; + OnResize := () -> begin + sb.ItemText[0] := 'W=' + Window.Width.Round; + sb.ItemText[1] := 'H=' + Window.Height.Round; + end; + OnResize(); +end. \ No newline at end of file diff --git a/Graphics/Controls/cc1_All.pas b/Graphics/Controls/cc1_All.pas new file mode 100644 index 0000000..6c0692d --- /dev/null +++ b/Graphics/Controls/cc1_All.pas @@ -0,0 +1,33 @@ +// Модуль Controls - все элементы управления +uses GraphWPF,Controls; + +begin + Window.Title := 'Модуль Controls - все элементы управления'; + // Обычно элементы управления размещаются на панели - левой или правой + LeftPanel(160,Colors.Orange); + + Button('Кнопка'); + CheckBox('Флажок'); + RadioButton('Переключатель 1'); + RadioButton('Переключатель 2'); + TextBox('Поле ввода текста'); + var ib := IntegerBox('Поле ввода целого',0,10); + ib.Tooltip := 'Покрутите колёсико мыши для изменения значения'; + var l := ListBox('Список стран'); + l.Height := 110; + l.Add('Россия'); + l.Add('США'); + l.Add('Китай'); + l.Add('Германия'); + l.Add('Франция'); + var cb := ComboBox('Выпадающий список'); + cb.AddRange('Россия','США','Китай','Германия','Франция'); + + Slider('Слайдер:',0,10); + TextBlock('Блок текста'); + IntegerBlock('Блок целого:',64); + RealBlock('Блок вещественного:',3.5); + + var s := StatusBar; + s.Text := 'Строка статуса'; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc20_Menu.pas b/Graphics/Controls/cc20_Menu.pas new file mode 100644 index 0000000..576c6d9 --- /dev/null +++ b/Graphics/Controls/cc20_Menu.pas @@ -0,0 +1,17 @@ +// Модуль Controls - меню +uses Controls,GraphWPF; + +begin + LeftPanel(150, Colors.Orange); + var m := new MenuWPF; + var mi1 := m.Add('File'); + mi1.Add('New'); + mi1.Add('Open'); + mi1.Add('Save'); + mi1.AddSeparator; + mi1.Add('Exit').Click := procedure->Window.Close; + //mi1.Add('Exit',procedure->Window.Close); + m.Add('Edit'); + m.Add('Options'); + var mi := m.Add('Help'); +end. \ No newline at end of file diff --git a/Graphics/Controls/cc20_Menu2.pas b/Graphics/Controls/cc20_Menu2.pas new file mode 100644 index 0000000..6d1cd4b --- /dev/null +++ b/Graphics/Controls/cc20_Menu2.pas @@ -0,0 +1,10 @@ +// Модуль Controls - меню 2 +uses Controls,GraphWPF; + +begin + LeftPanel(150, Colors.Orange); + var m := new MenuWPF; + m.AddRange('File','Edit','Options','Help'); + m[0].AddRange('New','Open','Save','-','Exit'); + m[0][3].Click := procedure->Window.Close; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc21_FileDialogs.pas b/Graphics/Controls/cc21_FileDialogs.pas new file mode 100644 index 0000000..ea5f7a9 --- /dev/null +++ b/Graphics/Controls/cc21_FileDialogs.pas @@ -0,0 +1,39 @@ +// Модуль Controls - OpenFileDialog и SaveFileDialog +uses Controls,GraphWPF; + +begin + Window.Title := 'Модуль Controls - OpenFileDialog и SaveFileDialog'; + LeftPanel(150, Colors.Orange); + var tb := SetMainControl.AsTextBox; + tb.FontSize := 16; + tb.ReadOnly := False; + tb.FontName := 'Courier new Cyr'; + + var dopen := new OpenFileDialogWPF('c:\PABCWork.NET','Программы|*.pas'); + var dSave := new SaveFileDialogWPF('c:\PABCWork.NET','Программы|*.pas'); + + var OpenHandler: procedure := procedure -> begin + var res := dopen.ShowDialog; + if res then + tb.Text := ReadAllText(dopen.FileName); + end; + var SaveHandler: procedure := procedure -> begin + var res := dSave.ShowDialog; + if res then + WriteAllText(dSave.FileName,tb.Text); + end; + + var bOpen := Button('Open'); + bOpen.Click := OpenHandler; + + var bSave := Button('Save'); + bSave.Click := SaveHandler; + + var m := Menu; + var m1 := m.Add('File'); + var mm1 := m1.Add('Open'); + mm1.Click := OpenHandler; + m1.Add('Save',SaveHandler); + m1.AddSeparator; + m1.Add('Exit',procedure->Window.Close); +end. \ No newline at end of file diff --git a/Graphics/Controls/cc22_MsgBox.pas b/Graphics/Controls/cc22_MsgBox.pas new file mode 100644 index 0000000..89cce8f --- /dev/null +++ b/Graphics/Controls/cc22_MsgBox.pas @@ -0,0 +1,19 @@ +// Модуль Controls - MessageBox +uses GraphWPF,Controls; + +begin + Window.Title := 'Модуль Controls - MessageBox'; + LeftPanel(150, Colors.Orange); + Button('MsgBoxOK').Click := () -> MessageBox.Show('Сообщение','Заголовок'); + Button('MsgBoxYesNo').Click := () -> begin + if MessageBox.Show('Сообщение','Заголовок',MessageBoxButton.YesNo) = MessageBoxResult.Yes then + Print('Yes') + else Print('No'); + end; + Button('MsgBoxWithQuestion').Click := () -> begin + if MessageBox.Show('Вы уверены?','Заголовок',MessageBoxButton.YesNo,MessageBoxImage.Question) + = MessageBoxResult.Yes then + Print('Уверен') + else Print('Нет'); + end; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc23_Random3DSpheres.pas b/Graphics/Controls/cc23_Random3DSpheres.pas new file mode 100644 index 0000000..6505ad0 --- /dev/null +++ b/Graphics/Controls/cc23_Random3DSpheres.pas @@ -0,0 +1,13 @@ +// Случайные шары +uses Graph3D,Controls; + +function R := Random(-7,7); + +begin + Window.Title := 'Случайные шары'; + LeftPanel(150,Colors.Orange); + var b := new ButtonWPF('Создать шар'); + b.Click := () → begin + Sphere(P3D(R,R,R),1); + end; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc24_RGB.pas b/Graphics/Controls/cc24_RGB.pas new file mode 100644 index 0000000..22d684a --- /dev/null +++ b/Graphics/Controls/cc24_RGB.pas @@ -0,0 +1,24 @@ +// Смешение цветов RGB +uses GraphWPF,Controls; + +begin + Window.Title := 'Цвета'; + Font.Size := 40; + LeftPanel(150); + + var r := Slider('Красный: ',0,255,255,16); + var g := Slider('Зеленый: ',0,255,255,16); + var b := Slider('Синий: ',0,255,255,16); + + Button('Выход').Click := procedure → Window.Close; + + var p: procedure := () → begin + var c := RGB(r.Value,g.Value,b.Value); + Window.Clear(c); + DrawText(GraphWindow.ClientRect,$'R={c.R}, G={c.G}, B={c.B}'); + end; + r.ValueChanged := p; + g.ValueChanged := p; + b.ValueChanged := p; + p; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc25_Gr3DProperties.pas b/Graphics/Controls/cc25_Gr3DProperties.pas new file mode 100644 index 0000000..91ee6a6 --- /dev/null +++ b/Graphics/Controls/cc25_Gr3DProperties.pas @@ -0,0 +1,28 @@ +// Модуль Controls +uses Graph3D, Controls; + +begin + var l := LeftPanel(200, Colors.LightGoldenrodYellow); + + var height := IntegerBox('Высота:', 1, 15); + height.Value := 5; + height.Tooltip := 'Покрутите колёсико мыши'; + var radius := IntegerBox('Радиус:', 1, 6); + radius.Value := 2; + radius.Tooltip := 'Покрутите колёсико мыши'; + var sides := Slider('Количество сторон: ', 3, 20); + sides.Frequency := 1; + sides.Value := 5; + + var p := Pyramid(Origin, sides.Value, height.Value, radius.Value, Colors.Green); + + height.ValueChanged := procedure -> begin + p.Height := height.Value; + end; + radius.ValueChanged := procedure -> begin + p.Radius := radius.Value; + end; + sides.ValueChanged := procedure -> begin + p.Sides := sides.Value; + end; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc2_All2.pas b/Graphics/Controls/cc2_All2.pas new file mode 100644 index 0000000..5b9a62f --- /dev/null +++ b/Graphics/Controls/cc2_All2.pas @@ -0,0 +1,57 @@ +// Модуль Controls - элементы управления на основной панели +uses GraphWPF,Controls; + +begin + Window.Title := 'Модуль Controls - элементы управления на основной панели'; + + var x := 10; + var w := 140; + Button(x,10,'Кнопка',w); + CheckBox(x,43,'Флажок'); + RadioButton(x,70,'Переключатель 1'); + RadioButton(x,97,'Переключатель 2'); + TextBox(x,120,'Поле ввода текста',w); + var ib0 := IntegerBox(x,172,'Поле ввода целого',0,10,w); + ib0.Tooltip := 'Покрутите колёсико мыши для изменения значения'; + var l0 := ListBox(x,221,'Список стран',w); + l0.Height := 110; + l0.Add('Россия'); + l0.Add('США'); + l0.Add('Китай'); + l0.Add('Германия'); + l0.Add('Франция'); + var cb0 := ComboBox(x,362,'Выпадающий список',w); + cb0.AddRange('Россия','США','Китай','Германия','Франция'); + + Slider(x,414,'Слайдер:',0,10,w); + TextBlock(x,469,'Блок текста',w); + IntegerBlock(x,497,'Блок целого:',w,64); + RealBlock(x,526,'Блок вещественного:',w,3.5); + + LeftPanel(160,Colors.Orange); + + Button('Кнопка'); + CheckBox('Флажок'); + RadioButton('Переключатель 1'); + RadioButton('Переключатель 2'); + TextBox('Поле ввода текста'); + var ib := IntegerBox('Поле ввода целого',0,10); + ib.Tooltip := 'Покрутите колёсико мыши для изменения значения'; + var l := ListBox('Список стран'); + l.Height := 110; + l.Add('Россия'); + l.Add('США'); + l.Add('Китай'); + l.Add('Германия'); + l.Add('Франция'); + var cb := ComboBox('Выпадающий список'); + cb.AddRange('Россия','США','Китай','Германия','Франция'); + + Slider('Слайдер:',0,10); + TextBlock('Блок текста'); + IntegerBlock('Блок целого:',64); + RealBlock('Блок вещественного:',3.5); + + var s := StatusBar; + s.Text := 'Строка статуса'; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc3_All3.pas b/Graphics/Controls/cc3_All3.pas new file mode 100644 index 0000000..603bc0c --- /dev/null +++ b/Graphics/Controls/cc3_All3.pas @@ -0,0 +1,33 @@ +// Модуль Controls - создание элементов вызовом конструктора +uses GraphWPF,Controls; + +begin + Window.Title := 'Модуль Controls - создание элементов вызовом конструктора + правая панель'; + // Размещение элементов на правой ранели + new RightPanelWPF(160,Colors.Orange); + + new ButtonWPF('Кнопка'); + new CheckBoxWPF('Флажок'); + new RadioButtonWPF('Переключатель 1'); + new RadioButtonWPF('Переключатель 2'); + new TextBoxWPF('Поле ввода текста'); + var ib := new IntegerBoxWPF('Поле ввода целого',0,10); + ib.Tooltip := 'Покрутите колёсико мыши для изменения значения'; + var l := new ListBoxWPF('Список стран'); + l.Height := 110; + l.Add('Россия'); + l.Add('США'); + l.Add('Китай'); + l.Add('Германия'); + l.Add('Франция'); + var cb := new ComboBoxWPF('Выпадающий список'); + cb.AddRange('Россия','США','Китай','Германия','Франция'); + + new SliderWPF('Слайдер:',0,10); + new TextBlockWPF('Блок текста'); + new IntegerBlockWPF('Блок целого:',64); + new RealBlockWPF('Блок вещественного:',3.5); + + var s := new StatusBarWPF; + s.Text := 'Строка статуса'; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc4_ButtonClick.pas b/Graphics/Controls/cc4_ButtonClick.pas new file mode 100644 index 0000000..463d394 --- /dev/null +++ b/Graphics/Controls/cc4_ButtonClick.pas @@ -0,0 +1,19 @@ +// Модуль Controls - кнопки и их обработчики +uses GraphWPF,Controls; + +begin + Window.Title := 'Модуль Controls - кнопки и их обработчики'; + var p := LeftPanel; + p.Color := Colors.Orange; + + Button('Случайный цвет').Click := () -> begin + Window.Clear(RandomColor); + end; + + var b2 := Button('Плюс'); + b2.Click := procedure -> + if b2.Text = 'Плюс' then b2.Text := 'Минус' else b2.Text := 'Плюс'; + + var b1 := Button('Закрыть окно'); + b1.Click := procedure -> Window.Close; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc5_CheckBoxes.pas b/Graphics/Controls/cc5_CheckBoxes.pas new file mode 100644 index 0000000..f909cb7 --- /dev/null +++ b/Graphics/Controls/cc5_CheckBoxes.pas @@ -0,0 +1,20 @@ +// Модуль Controls - флажки +uses GraphWPF,Controls; + +begin + Window.Title := 'Модуль Controls - флажки'; + + var p := LeftPanel(170,Colors.Orange); + + var b1 := Button('Переключить флажок 1'); + var b2 := Button('Переключить флажок 2'); + var b3 := Button('Переключить флажок 3'); + + var cb1 := new CheckBoxWPF('Флажок 1'); + var cb2 := new CheckBoxWPF('Флажок 2'); + var cb3 := new CheckBoxWPF('Флажок 3'); + + b1.Click := procedure -> cb1.Checked := not cb1.Checked; + b2.Click := procedure -> cb2.Checked := not cb2.Checked; + b3.Click := procedure -> cb3.Checked := not cb3.Checked; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc6_CheckBoxes2.pas b/Graphics/Controls/cc6_CheckBoxes2.pas new file mode 100644 index 0000000..7af4f75 --- /dev/null +++ b/Graphics/Controls/cc6_CheckBoxes2.pas @@ -0,0 +1,33 @@ +// Модуль Controls - флажки +uses WPFObjects,Controls; + +begin + Window.Title := 'Модуль Controls - флажки'; + + LeftPanel(170); + + var tb := TextBlock('Параметры круга:'); + tb.Margin := 12; + + var cb1 := new CheckBoxWPF('Заливка'); + var cb2 := new CheckBoxWPF('Жирная граница'); + var cb3 := new CheckBoxWPF('С текстом'); + + var c := new CircleWPF(GraphWindow.Center,60,Colors.White,1); + + cb1.Click := procedure -> begin + if cb1.Checked then + c.Color := Colors.Green + else c.Color := Colors.White + end; + cb2.Click := procedure -> begin + if cb2.Checked then + c.BorderWidth := 4 + else c.BorderWidth := 1 + end; + cb3.Click := procedure -> begin + if cb3.Checked then + c.Text := 'Текст' + else c.Text := '' + end; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc7_RadioButtons.pas b/Graphics/Controls/cc7_RadioButtons.pas new file mode 100644 index 0000000..b01f073 --- /dev/null +++ b/Graphics/Controls/cc7_RadioButtons.pas @@ -0,0 +1,26 @@ +// Модуль Controls - переключатели +uses WPFObjects,Controls; + +begin + Window.Title := 'Модуль Controls - переключатели'; + LeftPanel(150,Colors.Beige); + + var tb := TextBlock('Цвет круга:'); + //tb.Margin := 12; + + var rb1 := new RadioButtonWPF('Красный'); + var rb2 := new RadioButtonWPF('Зелёный'); + var rb3 := new RadioButtonWPF('Синий'); + + var c := new CircleWPF(GraphWindow.Center,60,Colors.White,1); + + rb1.Click := procedure -> begin + c.Color := Colors.Red; + end; + rb2.Click := procedure -> begin + c.Color := Colors.Green; + end; + rb3.Click := procedure -> begin + c.Color := Colors.Blue; + end; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc8_MoveObject.pas b/Graphics/Controls/cc8_MoveObject.pas new file mode 100644 index 0000000..90bbda7 --- /dev/null +++ b/Graphics/Controls/cc8_MoveObject.pas @@ -0,0 +1,28 @@ +// Модуль Controls - кнопки управления перемещением + клавиатура +uses WPFObjects,Controls; + +begin + Window.Title := 'Модуль Controls - кнопки управления перемещением + клавиатура'; + + LeftPanel; + + var c := new CircleWPF(GraphWindow.Center,30,Colors.Blue); + + OnKeyDown := k -> begin + case k of + Key.Left: c.MoveBy(-2,0); + Key.Right: c.MoveBy(2,0); + Key.Up: c.MoveBy(0,-2); + Key.Down: c.MoveBy(0,2); + end; + end; + + var l := Button('Left'); + var r := Button('Right'); + var u := Button('Up'); + var d := Button('Down'); + l.Click := ()->c.MoveBy(-2,0); + r.Click := ()->c.MoveBy(2,0); + u.Click := ()->c.MoveBy(0,-2); + d.Click := ()->c.MoveBy(0,2); +end. \ No newline at end of file diff --git a/Graphics/Controls/cc8a_MoveObject.pas b/Graphics/Controls/cc8a_MoveObject.pas new file mode 100644 index 0000000..29d2f18 --- /dev/null +++ b/Graphics/Controls/cc8a_MoveObject.pas @@ -0,0 +1,27 @@ +// Модуль Controls - IntegerBlock, IntegerBox и перемещение объекта +uses WPFObjects,Controls; + +begin + Window.Title := 'Модуль Controls - IntegerBlock, IntegerBox и перемещение объекта'; + + LeftPanel; + + var c := new CircleWPF(300,300,30,Colors.Blue); + + var X := IntegerBox('X:',0,600); + X.Value := 300; + var Y := IntegerBox('Y:',0,600); + Y.Value := 300; + + var XX := IntegerBlock('X:',300); + var YY := IntegerBlock('Y:',300); + + X.ValueChanged := procedure → begin + c.Center := Pnt(X.Value,Y.Value); + XX.Value := X.Value; + end; + Y.ValueChanged := procedure → begin + c.Center := Pnt(X.Value,Y.Value); + YY.Value := Y.Value; + end; +end. \ No newline at end of file diff --git a/Graphics/Controls/cc9_ListBox.pas b/Graphics/Controls/cc9_ListBox.pas new file mode 100644 index 0000000..6b91faf --- /dev/null +++ b/Graphics/Controls/cc9_ListBox.pas @@ -0,0 +1,28 @@ +// Модуль Controls - элемент управления "Список" и использование словаря +uses Controls,GraphWPF; + +begin + Window.Title := 'Столицы стран'; + LeftPanel(150,Colors.Orange); + var l := ListBox('Список стран'); + //l.Tooltip := 'Выбери страну - отобразится столица'; + l.Height := 110; + l.Add('Россия'); + l.Add('США'); + l.Add('Китай'); + l.Add('Германия'); + l.Add('Франция'); + + var d := Dict(('Россия','Москва'), + ('США','Вашингтон'), + ('Китай','Пекин'), + ('Германия','Берлин'), + ('Франция','Париж') + ); + + Font.Size := 70; + l.SelectionChanged := procedure -> begin + Window.Clear; + DrawText(GraphWindow.ClientRect,'Столица:'+#10+d[l.SelectedText]); + end; +end. \ No newline at end of file diff --git a/Graphics/GraphABC/DigitalClock.pas b/Graphics/GraphABC/DigitalClock.pas new file mode 100644 index 0000000..5fcaca2 --- /dev/null +++ b/Graphics/GraphABC/DigitalClock.pas @@ -0,0 +1,14 @@ +uses GraphABC,System; + +begin + Font.Size := 80; + var x0 := (Window.Width - TextWidth('00:00:00')) div 2; + var y0 := (Window.Height - TextHeight('00:00:00')) div 2; + while True do + begin + var t := DateTime.Now; + var s := string.Format('{0:d2}:{1:d2}:{2:d2}',t.Hour,t.Minute,t.Second); + TextOut(x0,y0,s); + Sleep(1000); + end; +end. \ No newline at end of file diff --git a/Graphics/GraphABC/Flame.pas b/Graphics/GraphABC/Flame.pas new file mode 100644 index 0000000..eaaaea7 --- /dev/null +++ b/Graphics/GraphABC/Flame.pas @@ -0,0 +1,67 @@ +uses GraphABC; + +type TByteArray = array of byte; +const frames = 25; + size = 250; + dxy = size div 2; + dm = 2*PI/1024; + flameh = 4; + Light: byte = 255; + +procedure FillPallete(ColorsTable: array of Color); +begin + for var i:=0 to 255 do + if(i<128) then + ColorsTable[i] := RGB(i,0,i div 2) + else + ColorsTable[i] := RedColor(i); +end; + +begin + //Создаюм буфер экрана + var ScreenBuffer := new TByteArray[size+1]; + for var i:=0 to size do + ScreenBuffer[i] := new byte[size+1]; + //Создаем палитру + var ColorsTable := new Color[256]; + FillPallete(ColorsTable); + //Настраиваем окно + SetWindowSize(size,size); + SetBrushColor(clBlack); + FillRectangle(0,0,WindowWidth,WindowHeight); + SetSmoothingOff; + LockDrawing; + //Поехали + var x, y, s, tt, xx, yy: Integer; + var dt := System.DateTime.Now; + var ds := WindowWidth div 4; + repeat + tt := tt + 1; + xx := dxy + Round(ds*Sin(tt*dm)); + yy := dxy + Round(ds*Cos(tt*dm)); + ScreenBuffer[xx,yy] := Light; + SetPixel(xx,yy,ColorsTable[Light]); + for var i:=0 to 5 do begin + x := Random(size-1) + 1; + y := Random(size-1) + 1; + s := ScreenBuffer[Y,X]; + if s>=flameh then + s := s - flameh; + if s=0 then + continue; + ScreenBuffer[y-1,x+1] := s; + ScreenBuffer[y-1,x ] := s; + ScreenBuffer[y-1,x-1] := s; + ScreenBuffer[y+1,x ] := s; + var c := ColorsTable[s]; + SetPixel(y-1,x+1,c); + SetPixel(y-1,x, c); + SetPixel(y-1,x-1,c); + SetPixel(y+1,x, c); + end; + if((system.datetime.Now-dt).TotalMilliseconds>1000/frames) then begin + dt := System.Datetime.Now; + Redraw; + end; + until False; +end. diff --git a/Graphics/GraphABC/Fractals/Dragon.pas b/Graphics/GraphABC/Fractals/Dragon.pas new file mode 100644 index 0000000..27570e5 --- /dev/null +++ b/Graphics/GraphABC/Fractals/Dragon.pas @@ -0,0 +1,70 @@ +// Пример из пакета KuMir/PMir +program Dragon; + +uses GraphABC,Utils; + +var + x := 200; + y := 150; + dx := 0; + dy := -4; + turn: array [1..1000] of Boolean; + +begin + SetWindowSize(790,500); + Window.Title := 'Кривая Дракона'; + var f := True; + for var a := 1 to 64 do + begin + turn[2*a-1] := f; + f := not f; + turn[2*a] := turn[a]; + end; + var b := 0; + var d := 1; + f := false; + MoveTo(x,y); + + for var a:=1 to 128 do + begin + var t: integer; + LockDrawing; + for var i:=1 to 127*4 do + begin + b += d; + x += dx; + y += dy; + LineTo(x,y); + if f and not turn[b] or not f and turn[b] then + begin + t := dy; + dy := -dx; + end + else + begin + t := -dy; + dy := dx; + end; + dx := t; + end; + b += d; + x += dx; + y += dy; + LineTo(x,y); + d := -d; + f := not f; + if turn[a] then + begin + t := dy; + dy := -dx; + end + else + begin + t := -dy; + dy := dx; + end; + dx := t; + UnLockDrawing; + end; + write('Время работы = ',Milliseconds/1000,' с'); +end. diff --git a/Graphics/GraphABC/Fractals/Mandelbrot.pas b/Graphics/GraphABC/Fractals/Mandelbrot.pas new file mode 100644 index 0000000..ea950e7 --- /dev/null +++ b/Graphics/GraphABC/Fractals/Mandelbrot.pas @@ -0,0 +1,40 @@ +// Демонстрация фрактальной графики. Множество Мандельброта +// Для каждой точки комплексной плоскости z=(x,y) выполняем итерационный процесс z=z*2+c, c=(cx,cy) +// Считаем количество итераций i до тех пор пока не выполнится условие |z|>max +// После этого рисуем точку z=(x,y) с насыщенностью красного цвета, пропорциональной i +uses GraphABC; + +const + max = 10; + coef1 = 0.5; + coef2 = 0.88; + scalex = 0.0035; + scaley = 0.0035; + dx = 430; + dy = 300; + +begin + Window.Title := 'Фракталы: множество Мандельброта'; + SetWindowSize(600,600); + CenterWindow; + for var ix:=0 to Window.Width-1 do + for var iy:=0 to Window.Height-1 do + begin + var cx := scalex * (ix - dx); + var cy := scaley * (iy - dy); + var c := Cplx(cx,cy); + var z := Cplx(0,0); + + var i := 1; + while i<255 do + begin + z := z*z+c; + if z.Magnitude>max then break; + i += 1; + end; + if i>=255 then SetPixel(ix,iy,clRed) + else SetPixel(ix,iy,RGB(255,255-i,255-i)); + end; + writeln('Время расчета = ',Milliseconds/1000,' с'); +end. + diff --git a/Graphics/GraphABC/Fractals/Paporotnik/Main.pas b/Graphics/GraphABC/Fractals/Paporotnik/Main.pas new file mode 100644 index 0000000..3946450 --- /dev/null +++ b/Graphics/GraphABC/Fractals/Paporotnik/Main.pas @@ -0,0 +1,22 @@ +//(c) DarkStar 2008 +uses GraphABC, Paporotnik, PaporotnikData; + +const + Iterations = 300000; + Height = 600; + Fast = false; + Width = Height div 2; + WindowWidth= Width * 3; + Brightness = 170; + +var + Paprotnik := new PaporotnikFractal(PaprotnikData); + SimplePaprotnik := new PaporotnikFractal(SimplePaprotnikData); + Elka := new PaporotnikFractal(ElkaData); + +begin + InitWindow(200, 50, WindowWidth , Height, clBlack); + Paprotnik.Draw(0, 0, Iterations, Height, Brightness, fast); + SimplePaprotnik.Draw(Width, 0, Iterations, Height, Brightness, fast); + Elka.Draw(Width*2, 0, Iterations, Height, Brightness, fast); +end. \ No newline at end of file diff --git a/Graphics/GraphABC/Fractals/Paporotnik/Paporotnik.pas b/Graphics/GraphABC/Fractals/Paporotnik/Paporotnik.pas new file mode 100644 index 0000000..3d689e7 --- /dev/null +++ b/Graphics/GraphABC/Fractals/Paporotnik/Paporotnik.pas @@ -0,0 +1,51 @@ +///Модуль для рисования фракталов семейства "Лист папоротника" +unit Paporotnik; + +uses GraphABC; + +type + + ///Настройки фрактала + PaporotnikFractalInitalData = record + data: array of array of real; + P0,P1,P2,P3:real; + end; + + ///Фрактал "Лист папоротника" + PaporotnikFractal = class + private + data: array of array of real; + P0,P1,P2,P3:real; + public + constructor(initdata: PaporotnikFractalInitalData); + begin + data := initdata.data; + P0 := initdata.P0; + P1 := initdata.P1; + P2 := initdata.P2; + P3 := initdata.P3; + end; + procedure Draw(x0,y0,Iterations,Height,Brightness: integer; fast: boolean); + begin + var plotx, ploty, x, y : real; + var Size := Height/11; + var Width := Height div 2; + var dx := Width div 2; + var dc := Iterations div Brightness; + if fast then + LockDrawing; + for var i:=1 to Iterations do begin + var P := Random(100); + var rnd := Pmax и |y|>max +// После этого рисуем точку x,y с насыщенностью красного цвета, пропорциональной i +uses GraphABC,Utils; + +const + max = 10; + cx = 0.251; + cy = 0.95; + coef1 = 0.5; + coef2 = 0.88; + + scalex = 0.001; + scaley = 0.001; + dx = 200; + dy = 130; + +begin + Window.Title := 'Фракталы: папоротник'; + SetWindowSize(800,600); + CenterWindow; + for var ix:=0 to Window.Width-1 do + for var iy:=0 to Window.Height-1 do + begin + var x := scalex*(ix-dx); + var y := scaley*(iy-dy); + var i := 1; + while i<255 do + begin + var x1 := coef1*x*x-coef2*y*y+cx; + var y1 := x*y+cy; + x := x1; + y := y1; + if (abs(x)>max) and (abs(y)>max) then break; + i += 1; + end; + if i>=255 then SetPixel(ix,iy,clRed) + else SetPixel(ix,iy,RGB(255,255-i,255-i)); + end; + writeln('Время расчета = ',Milliseconds/1000,' с'); +end. diff --git a/Graphics/GraphABC/Graphics/DrawFunc.pas b/Graphics/GraphABC/Graphics/DrawFunc.pas new file mode 100644 index 0000000..f71ee1b --- /dev/null +++ b/Graphics/GraphABC/Graphics/DrawFunc.pas @@ -0,0 +1,9 @@ +uses GraphABC; + +begin + Brush.Color := ARGB(0,0,0,0); // + Draw(x->x*sin(x),-20,20); + Draw(sin); + Draw(cos); + Draw(exp); +end. \ No newline at end of file diff --git a/Graphics/GraphABC/Graphics/DrawFunc2.pas b/Graphics/GraphABC/Graphics/DrawFunc2.pas new file mode 100644 index 0000000..5012ab2 --- /dev/null +++ b/Graphics/GraphABC/Graphics/DrawFunc2.pas @@ -0,0 +1,27 @@ +uses GraphABC; + +function System.Drawing.Rectangle.Scale(m: real): System.Drawing.Rectangle; +begin + Result := Self; + Result.Width := Trunc(Result.Width * m); + Result.Height := Trunc(Result.Height * m) +end; + +function System.Drawing.Rectangle.Move(dx,dy: integer): System.Drawing.Rectangle; +begin + Result := Self; + Result.X := Result.X + dx; + Result.Y := Result.Y + dy; +end; + +begin + var r := ClientRectangle; + r := r.Scale(0.5); + var r1 := r.Move(r.Width,0); + var r2 := r.Move(0,r.Height); + var r3 := r.Move(r.Width,r.Height); + Draw(x->x*sin(x),-20,20,r); + Draw(sin,r1); + Draw(cos,r2); + Draw(exp,20,10,r3); +end. \ No newline at end of file diff --git a/Graphics/GraphABC/Hypno.pas b/Graphics/GraphABC/Hypno.pas new file mode 100644 index 0000000..f9d4ab0 --- /dev/null +++ b/Graphics/GraphABC/Hypno.pas @@ -0,0 +1,11 @@ +// Иллюстрация прозрачности +uses GraphABC; + +begin + for var Transparency:=0 to 255 do + begin + Brush.Color := ARGB(Transparency,Random(256),Random(256),Random(256)); + FillCircle(Random(Window.Width),Random(Window.Height),Random(20,60)); + sleep(100); + end; +end. \ No newline at end of file diff --git a/Graphics/GraphABC/Mosaic.pas b/Graphics/GraphABC/Mosaic.pas new file mode 100644 index 0000000..4aee71d --- /dev/null +++ b/Graphics/GraphABC/Mosaic.pas @@ -0,0 +1,51 @@ +// Мозаика. Квадратики случайным образом меняются местами +uses GraphABC; + +const + w = 25; + w1 = 1; + m = 50; + n = 70; + x0 = 0; + y0 = 0; + delay = 10; + +var a: array [0..n,0..m] of Color; + +begin + Window.Title := 'Мозаика'; + Window.SetSize(800,600); + + // Заполнение массива случайными цветами + for var i:=0 to n-1 do + for var j:=0 to m-1 do + begin + a[i,j] := clRandom; + Brush.Color := a[i,j]; + FillRect(x0+i*w,y0+j*w,x0+(i+1)*w-w1,y0+(j+1)*w-w1); + end; + + var k := 0; + while true do + begin + k += 1; + if k mod 1000 = 0 then + begin + k := 0; + Sleep(delay); + end; + + var i := Random(1,n-2); + var j := Random(1,m-2); + var di := Random(-1,1); + var dj := Random(-1,1); + var i1 := i+di; + var j1 := j+dj; + Swap(a[i,j],a[i1,j1]); + + Brush.Color := a[i,j]; + FillRect(x0+i*w,y0+j*w,x0+(i+1)*w-w1,y0+(j+1)*w-w1); + Brush.Color := a[i1,j1]; + FillRect(x0+i1*w,y0+j1*w,x0+(i1+1)*w-w1,y0+(j1+1)*w-w1); + end; +end. diff --git a/Graphics/GraphABC/MouseDownEvent.pas b/Graphics/GraphABC/MouseDownEvent.pas new file mode 100644 index 0000000..5dceee1 --- /dev/null +++ b/Graphics/GraphABC/MouseDownEvent.pas @@ -0,0 +1,5 @@ +uses GraphABC; + +begin + OnMouseDown := (x,y,mb) -> Circle(x,y,5); +end. \ No newline at end of file diff --git a/Graphics/GraphABC/MouseDraw.pas b/Graphics/GraphABC/MouseDraw.pas new file mode 100644 index 0000000..85ccdfb --- /dev/null +++ b/Graphics/GraphABC/MouseDraw.pas @@ -0,0 +1,7 @@ +uses GraphABC; + +begin + Window.Title := ' '; + OnMouseDown := (x,y,mb) -> MoveTo(x,y); + OnMouseMove := (x,y,mb) -> if mb=1 then LineTo(x,y); +end. \ No newline at end of file diff --git a/Graphics/GraphABC/SetPixel.pas b/Graphics/GraphABC/SetPixel.pas new file mode 100644 index 0000000..498bb4a --- /dev/null +++ b/Graphics/GraphABC/SetPixel.pas @@ -0,0 +1,7 @@ +uses GraphABC; + +begin + for var x:=0 to Window.Width-1 do + for var y:=0 to Window.Height-1 do + SetPixel(x,y,RGB(2*x-y,x-3*y,x+y)); +end. \ No newline at end of file diff --git a/Graphics/GraphABC/Stamps/Stamp1.pas b/Graphics/GraphABC/Stamps/Stamp1.pas new file mode 100644 index 0000000..be42fe3 --- /dev/null +++ b/Graphics/GraphABC/Stamps/Stamp1.pas @@ -0,0 +1,24 @@ +// Штампы - это классы графических фигур, хранящие их параметры +// В любой момент можно нарисовать графическую фигуру, вызвав метод Stamp. + +// Класс штампа прямоугольника +uses GraphABC; + +type + RectangleStamp = auto class + x,y,w,h: integer; + procedure Stamp; + begin + Rectangle(x,y,x+w,y+h); + end; + end; + +begin + var r := new RectangleStamp(30,30,50,50); + r.Stamp; + for var i:=1 to 10 do + begin + r.x := r.x + r.w +5; + r.Stamp; + end; +end. \ No newline at end of file diff --git a/Graphics/GraphABC/Stamps/Stamp2.pas b/Graphics/GraphABC/Stamps/Stamp2.pas new file mode 100644 index 0000000..9b9427d --- /dev/null +++ b/Graphics/GraphABC/Stamps/Stamp2.pas @@ -0,0 +1,37 @@ +// Класс штампа ряда прямоугольников +uses GraphABC; + +type + RectangleStamp = auto class + x,y,w,h: integer; + procedure Stamp; + begin + Rectangle(x,y,x+w,y+h); + end; + end; + + RowRectanglesStamp = auto class + x,y,w,h,n: integer; + procedure Stamp; + begin + var r := new RectangleStamp(x,y,w,h); + r.Stamp; + for var i:=1 to n-1 do + begin + r.x += r.w + 5; + r.Stamp; + end; + end; + end; + +const n=8; + +begin + var r := new RowRectanglesStamp(30,30,50,50,n); + r.Stamp; + for var i:=1 to n-1 do + begin + r.y += r.h + 5; + r.Stamp; + end; +end. \ No newline at end of file diff --git a/Graphics/GraphABC/Stamps/Stamp3.pas b/Graphics/GraphABC/Stamps/Stamp3.pas new file mode 100644 index 0000000..e985dad --- /dev/null +++ b/Graphics/GraphABC/Stamps/Stamp3.pas @@ -0,0 +1,28 @@ +// Класс штампа прямоугольника с методами увеличения-уменьшения +uses GraphABC; + +type + RectangleStamp = auto class + x,y,w,h: integer; + procedure Stamp := Rectangle(x,y,x+w,y+h); + procedure Increase(dw,dh: integer); + begin + w += dw; h += dh; + end; + procedure Decrease(dw,dh: integer) := Increase(-dw,-dh); + procedure MoveOn(dx,dy: integer); + begin + x += dx; y += dy; + end; + end; + +begin + var r := new RectangleStamp(100,100,300,300); + r.Stamp; + while r.w>2 do + begin + r.Decrease(8,8); + r.MoveOn(4,4); + r.Stamp; + end; +end. \ No newline at end of file diff --git a/Graphics/GraphABC/Stamps/Stamp4.pas b/Graphics/GraphABC/Stamps/Stamp4.pas new file mode 100644 index 0000000..0775030 --- /dev/null +++ b/Graphics/GraphABC/Stamps/Stamp4.pas @@ -0,0 +1,39 @@ +// Класс штампа прямоугольника с методами увеличения-уменьшения от центра +uses GraphABC; + +type + RectangleStamp = class + x,y,w,h: integer; + constructor (xx,yy,ww,hh: integer); + begin + x := xx; y := yy; + w := ww; h := hh; + end; + procedure Stamp; + begin + Rectangle(x,y,x+w,y+h); + end; + procedure IncreaseFromCenter(dw: integer); + begin + w += dw*2; h += dw*2; + x -= dw; y -= dw; + end; + procedure DecreaseFromCenter(dw: integer); + begin + IncreaseFromCenter(-dw); + end; + procedure MoveOn(dx,dy: integer); + begin + x += dx; y += dy; + end; + end; + +begin + var r := new RectangleStamp(100,100,300,300); + r.Stamp; + while r.w>2 do + begin + r.DecreaseFromCenter(4); + r.Stamp; + end; +end. \ No newline at end of file diff --git a/Graphics/GraphABC/Stamps/Stamp5.pas b/Graphics/GraphABC/Stamps/Stamp5.pas new file mode 100644 index 0000000..abc6ca3 --- /dev/null +++ b/Graphics/GraphABC/Stamps/Stamp5.pas @@ -0,0 +1,36 @@ +// Класс штампа треугольника +uses GraphABC; + +type + TriangleStamp = auto class + x,y,w,orient: integer; + procedure Stamp; + begin + MoveTo(x,y); + var dx := w; + var dy := w; + case orient of + 2: dx := -dx; + 3: dy := -dy; + 4: begin dx := -dx; dy := -dy; end; + end; + LineTo(x+dx,y); + LineTo(x,y+dy); + LineTo(x,y); + end; + procedure MoveOn(dx,dy: integer); + begin + x += dx; y += dy; + end; + end; + +begin + var r := new TriangleStamp(200,200,100,1); + r.Stamp; + r.orient := 2; + r.Stamp; + r.orient := 3; + r.Stamp; + r.orient := 4; + r.Stamp; +end. \ No newline at end of file diff --git a/Graphics/GraphABC/Stamps/StampCompound.pas b/Graphics/GraphABC/Stamps/StampCompound.pas new file mode 100644 index 0000000..f8f44be --- /dev/null +++ b/Graphics/GraphABC/Stamps/StampCompound.pas @@ -0,0 +1,77 @@ +// Класс штампа составного объекта +uses GraphABC; + +type + TextStamp = class + x,y,pt: integer; + Text: string; + constructor (xx,yy,ppt: integer; t: string); + begin + x := xx; y := yy; + pt := ppt; + text := t; + end; + procedure Stamp; + begin + Font.Size := pt; + Brush.Color := clWhite; + TextOut(x,y,text); + end; + procedure MoveOn(dx,dy: integer); + begin + x += dx; y += dy; + end; + end; + + RectangleStamp = class + x,y,w,h: integer; + constructor (xx,yy,ww,hh: integer); + begin + x := xx; y := yy; + w := ww; h := hh; + end; + procedure Stamp; + begin + Brush.Color := clRandom; + Rectangle(x,y,x+w,y+h); + end; + procedure MoveOn(dx,dy: integer); + begin + x += dx; y += dy; + end; + end; + + RectWithTextStamp = class + x,y,w,h: integer; + Text: string; + constructor (xx,yy,ww,hh: integer; t: string); + begin + x := xx; y := yy; + w := ww; h := hh; + text := t; + end; + procedure Draw; + begin + var r := new RectangleStamp(x,y,w,-h); + var t := new TextStamp(x,y+3,10,Text); + r.Stamp; + t.Stamp; + end; + procedure MoveOn(dx,dy: integer); + begin + x += dx; y += dy; + end; + end; + +begin + var a: array of integer := (100,70,50,120,90,200,111,150,230,11,44); + var rt := new RectWithTextStamp(100,300,30,a[0],IntToStr(a[0])); + rt.Draw; + for var i:=1 to a.Length-1 do + begin + rt.MoveOn(40,0); + rt.h := a[i]; + rt.Text := IntToStr(a[i]); + rt.Draw; + end; +end. \ No newline at end of file diff --git a/Graphics/GraphABC/Stamps/StampCross.pas b/Graphics/GraphABC/Stamps/StampCross.pas new file mode 100644 index 0000000..43dbada --- /dev/null +++ b/Graphics/GraphABC/Stamps/StampCross.pas @@ -0,0 +1,51 @@ +// Класс штампа креста +uses GraphABC; + +type + CrossStamp = class + x,y,w: integer; + constructor (xx,yy,ww: integer); + begin + x := xx; y := yy; + w := ww; + end; + procedure Stamp; + begin + MoveTo(x,y); + LineTo(x+w,y); + LineTo(x+w,y+w); + LineTo(x+2*w,y+w); + LineTo(x+2*w,y); + LineTo(x+3*w,y); + LineTo(x+3*w,y-w); + LineTo(x+2*w,y-w); + LineTo(x+2*w,y-2*w); + LineTo(x+w,y-2*w); + LineTo(x+w,y-w); + LineTo(x,y-w); + LineTo(x,y); + end; + procedure MoveOn(dx,dy: integer); + begin + x += dx; y += dy; + end; + procedure MoveOnRel(a,b: integer); + begin + MoveOn(a*w,b*w); + end; + function Clone := new CrossStamp(x,y,w); + end; + +begin + var r := new CrossStamp(100,150,20); + for var k:=1 to 2 do + begin + var r1 := r.Clone; + for var i:=1 to 8 do + begin + r1.Stamp; + r1.MoveOnRel(2,1); + end; + r.MoveOnRel(-1,2); + end; +end. \ No newline at end of file diff --git a/Graphics/GraphABC/Stamps/StampFunc.pas b/Graphics/GraphABC/Stamps/StampFunc.pas new file mode 100644 index 0000000..9357dc6 --- /dev/null +++ b/Graphics/GraphABC/Stamps/StampFunc.pas @@ -0,0 +1,79 @@ +// +uses GraphABC; + +type + FuncType = function (r: real): real; + FuncStamp = class + xs0,ys0,ws,hs: integer; + xf0,yf0,wf,hf: real; + f: FuncType; + constructor (xs0p,ys0p,xs1p,ys1p: integer; xf0p,yf0p,xf1p,yf1p: real; ff: FuncType); + begin + SetScreenWindow(xs0p,ys0p,xs1p,ys1p); + SetFuncWindow(xf0p,yf0p,xf1p,yf1p); + f := ff; + end; + function WorldToScreenX(xf: real): integer; + begin + var a := ws/wf; + var b := xs0-a*xf0; + Result := Round(a * xf + b); + end; + function WorldToScreenY(yf: real): integer; + begin + var c := hs/hf; + var d := ys0-c*yf0; + Result := hs + 2*ys0 - Round(c * yf + d); + end; + procedure Stamp; + const n = 100; + begin + Pen.Color := Color.Gray; + Rectangle(xs0,ys0,xs0+ws,ys0+hs); + Pen.Color := Color.Black; + var x := xf0; + var y := f(x); + var h := wf/n; + var xs := WorldToScreenX(x); + var ys := WorldToScreenY(y); + MoveTo(xs,ys); + for var i:=1 to n do + begin + x += h; + y := f(x); + xs := WorldToScreenX(x); + ys := WorldToScreenY(y); + LineTo(xs,ys); + end; + end; + procedure SetScreenWindow(xs0p,ys0p,xs1p,ys1p: integer); + begin + xs0 := xs0p; ys0 := ys0p; + ws := xs1p-xs0p; hs := ys1p-ys0p; + end; + procedure SetFuncWindow(xf0p,yf0p,xf1p,yf1p: real); + begin + xf0 := xf0p; yf0 := yf0p; + wf := xf1p-xf0p; hf := yf1p-yf0p; + end; + procedure MoveOn(dx,dy: integer); + begin + xs0 += dx; ys0 += dy; + end; + end; + +begin + var fs := new FuncStamp(10,10,310,230,0,-2*Pi,2*Pi,2*Pi,x->x*sin(5*x)); + fs.Stamp; + fs.MoveOn(320,0); + fs.SetFuncWindow(-Pi,-1,Pi,1); + fs.f := sin; + fs.Stamp; + fs.MoveOn(-320,240); + fs.f := cos; + fs.Stamp; + fs.MoveOn(320,0); + fs.SetFuncWindow(-2*Pi,-2,2*Pi,2); + fs.f := x->sin(3*x)+sin(4*x); + fs.Stamp; +end. \ No newline at end of file diff --git a/Graphics/GraphABC/Stamps/StampPoly.pas b/Graphics/GraphABC/Stamps/StampPoly.pas new file mode 100644 index 0000000..ced69f1 --- /dev/null +++ b/Graphics/GraphABC/Stamps/StampPoly.pas @@ -0,0 +1,49 @@ +// Класс штампа правильного многоугольника +uses GraphABC; + +type + RegularPolygonStamp = class + x,y,r: real; + n: integer; + constructor (xx,yy,rr: real; nn: integer); + begin + x := xx; y := yy; + r := rr; n := nn; + end; + procedure Stamp; + begin + var t := 0.0; + var xr := r*cos(t); + var yr := r*sin(t); + MoveTo(Round(x + xr),Round(y + yr)); + for var i:=1 to n do + begin + t += 2*Pi/n; + xr := Round(r*cos(t)); + yr := Round(r*sin(t)); + LineTo(Round(x + xr),Round(y + yr)); + end; + end; + procedure MoveOn(dx,dy: real); + begin + x += dx; y += dy; + end; + function Clone: RegularPolygonStamp; + begin + Result := new RegularPolygonStamp(x,y,r,n); + end; + end; + +begin + var r := new RegularPolygonStamp(Window.Center.X,Window.Center.Y,50,6); + r.Stamp; + var t := 2*Pi/12; + var rr := r.r*sqrt(3)+10; + for var i:=1 to 6 do + begin + var r1 := r.Clone; + r1.MoveOn(rr*cos(t),rr*sin(t)); + r1.Stamp; + t += 2*Pi/6; + end; +end. \ No newline at end of file diff --git a/Graphics/GraphABC/Stamps/StampText.pas b/Graphics/GraphABC/Stamps/StampText.pas new file mode 100644 index 0000000..71b1742 --- /dev/null +++ b/Graphics/GraphABC/Stamps/StampText.pas @@ -0,0 +1,25 @@ +// Класс штампа текста +uses GraphABC; + +type + TextStamp = auto class + x,y,pt: integer; + Text: string; + procedure Stamp; + begin + Font.Size := pt; + TextOut(x,y,text); + end; + procedure MoveOn(dx,dy: integer); + begin + x += dx; y += dy; + end; + end; + +begin + var txt := new TextStamp(200,200,14,'Привет!'); + txt.Stamp; + txt.MoveOn(0,40); + txt.Text := 'До свидания!'; + txt.Stamp; +end. \ No newline at end of file diff --git a/Graphics/GraphABC/Star.pas b/Graphics/GraphABC/Star.pas new file mode 100644 index 0000000..76054f2 --- /dev/null +++ b/Graphics/GraphABC/Star.pas @@ -0,0 +1,17 @@ +uses GraphABC; + +const + n = 17; // количество точек + n1 = 7; // через сколько точек соединять + +begin + var a := -Pi/2; + var Center := Window.Center; + var Radius := Window.Height/2.2; + MoveTo(Round(Center.X+Radius*cos(a)),Round(Center.Y+Radius*sin(a))); + for var i:=1 to n do + begin + a += n1*2*Pi/n; + LineTo(Round(Center.X+Radius*cos(a)),Round(Center.Y+Radius*sin(a))); + end; +end. \ No newline at end of file diff --git a/Graphics/GraphABC/Tentacles.pas b/Graphics/GraphABC/Tentacles.pas new file mode 100644 index 0000000..1de368e --- /dev/null +++ b/Graphics/GraphABC/Tentacles.pas @@ -0,0 +1,82 @@ +//Программа "Щупальца". Порт с midletPascal :) + +uses + GraphABC; + +const + S = 14; // Кол-во щупалец + N = 18; // Кол-во звеньев в каждом из них + W = 2; //Ширина щупалец + +var + i, j: Integer; + x, y: Real; + tx, ty: Real; + k, d: Real; + + // Углы поворота звеньев относительно друг-друга + a: array [1..N] of Real; + + // Длина одного звена + len: Real; + +begin + Pen.Width := W; + SetWindowSize(320, 320); + SetWindowTitle('Щупальца'); + + if Window.Width > Window.Height then + len := Window.Height / 1.8 / N + else + len := Window.Width / 1.8 / N; + k := random(360) * pi / 180; + d := pi * 2 / S; + + var k1 := 1; + + // Главный цикл + repeat + + if Window.Width > Window.Height then + len := Window.Height / 1.8 / N + else + len := Window.Width / 1.8 / N; + + LockDrawing(); //Блокируем рисование(для оптимизации) + ClearWindow(ClBlack); // Стираем всё + + // Расчёт коэфицента поворота + if random(50) = 0 then + k := random(360) * pi / 180; + + // Поворот всех щупалец + a[1] := a[1] + sin(k) / 15; + + // Интерполяция углов между щупальцами + for i := 2 to N do + a[i] := a[i] + (a[i - 1] - a[i]) * 0.1; + for j := 0 to S - 1 do + begin + x := 0.5 * Window.Width; + y := 0.5 * Window.Height; + for i := 2 to N do + begin + SetPenColor(Color.FromArgb(255, trunc(255 - 255 * i / N), 255)); + + // Немного школьной тригонометрии :) + tx := x + cos(j * d + a[i]) * len; + ty := y + sin(j * d + a[i]) * len; + Line(trunc(x), trunc(y), trunc(tx), trunc(ty)); + x := tx; + y := ty; + end; + end; + Redraw(); //Перерисуем изображение + + k1 += 1; + SetWindowTitle('Щупальца( Средн. FPS ' + Format('{0,5:f2}',k1/Milliseconds*1000)+')'); + + sleep(5); + until false; + +end. \ No newline at end of file diff --git a/Graphics/GraphABC/ThroughTheUniverse.pas b/Graphics/GraphABC/ThroughTheUniverse.pas new file mode 100644 index 0000000..a6840cd --- /dev/null +++ b/Graphics/GraphABC/ThroughTheUniverse.pas @@ -0,0 +1,85 @@ +//Программа "Скозь вселенную". Порт с midletPascal + +uses GraphABC; + + type + // Описываем тип-элемент Звезда + TStar = record + X, Y, Z : real; // Положение в пространстве + end; + + const + MAX_STARS = 1000; // Кол-во звёздочек + SPEED = 200; // Скорость, в единицах/сек + + var + i : Integer; + // Наши звёздочки :) + Stars : array [1..MAX_STARS] of TStar; + // Ширина и высота дисплея + scr_W : Integer; + scr_H : Integer; + // Время + time, dt : Integer; + + // Рисует текущую звёздочку (i), цвета (c) + procedure SetPix(c: Integer); + var + sx, sy : Integer; + begin + // Данные действия, проецируют 3D точку на 2D полоскость дисплея + try + sx := trunc(scr_W / 2 + Stars[i].X * 200 / (Stars[i].Z + 200)); + sy := trunc(scr_H / 2 - Stars[i].Y * 200 / (Stars[i].Z + 200)); + except + end; + + try + SetPixel(sx, sy, Color.FromArgb(c, c, c)); + except + end; + end; + + begin + MaximizeWindow(); + scr_W := Window.Width; + scr_H := Window.Height; + + //случайным образом раскидаем звёздочки + randomize; + for i := 1 to MAX_STARS do + begin + Stars[i].X := random(scr_W * 4) - scr_W * 2; + Stars[i].Y := random(scr_H * 4) - scr_H * 2; + Stars[i].Z := random(1900); + end; + + // Очистка содержимого дисплея (чёрный цвет) + ClearWindow(Color.Black); + + time := Milliseconds; + // Главный цикл отрисовки + repeat + scr_W := Window.Width; + scr_H := Window.Height; + dt := Milliseconds - time; // Сколько мс прошло, с прошлой отрисовки + time := Milliseconds; // Засекаем время + for i := 1 to MAX_STARS do + begin + // Затираем звёздочку с предыдущего кадра + SetPix(0); + // Изменяем её позицию в зависимости прошедшего с последней отрисовки времени + Stars[i].Z := Stars[i].Z - SPEED * dt/1000; + // Если звезда "улетела" за позицию камеры - генерируем её вдали + if Stars[i].Z <= -200 then + begin + Stars[i].X := random(scr_W * 4) - scr_W * 2; + Stars[i].Y := random(scr_H * 4) - scr_H * 2; + Stars[i].Z := 1900; // Откидываем звезду далеко вперёд :) + end; + // Рисуем звёздочку в новом положении (цвет зависит от Z координаты) + SetPix(trunc(255 - 255 * (Stars[i].Z + 200) / 2100)); + end; + sleep(10); + until false; + end. \ No newline at end of file diff --git a/Graphics/GraphABC/graph3d.pas b/Graphics/GraphABC/graph3d.pas new file mode 100644 index 0000000..ea0587a --- /dev/null +++ b/Graphics/GraphABC/graph3d.pas @@ -0,0 +1,64 @@ +// Пример из пакета KuMir/PMir +// Публикуется практически без изменений +// Дорог как память :) +Uses GraphABC; + +var Xmin,Xmax,Xstep: real; + Ymin,Ymax,Ystep,asp: real; + dx: integer; + +function f(x,y:real): integer; +var r: real; +begin + r := x*x+y*y+1; + f := round(5*asp*(cos(r)/r+0.1)) +end; + +procedure gr(N : integer); +var X,Y: real; + i,j,k,Z0,dy: integer; + pred: array [1..100] of integer; + jj,maxX,maxY: integer; +begin + Xmin := -4; + Xmax := 4; + Ymin := -3; + Ymax := 3; + maxX := 600; + maxY := 400; + Xstep := dx*(Xmax-Xmin)/maxX; + X := Xmin; + Ystep := (Ymax-Ymin)/N; + Y := Ymin; + dy := maxY div N div 2; + asp := maxY/8; + for i := 1 to N do + begin + pred[i] := maxY-i*dy-f(X,Y); + Y := Y + Ystep + end; + for jj := 1 to maxX div dx do + begin + j := jj*dx; + X := X + Xstep; + Y := Ymin; Z0 := maxY; + for i := 1 to N do + begin + k := maxY-i*dy-f(X,Y); + if k real); + var + xl0,wl,yl0,hl: real; + xs0,ws,ys0,hs: integer; + + function LtoSx(xl: real) := round(ws/wl*(xl-xl0)+xs0); + function LtoSy(yl: real) := round(hs/hl*(yl-yl0)+ys0); + function StoLx(xs: integer) := wl/ws*(xs-xs0)+xl0; + +begin // drawGraph + xs0 := 0; + ys0 := WindowHeight-1; + ws := WindowWidth; + hs := WindowHeight-1; + + xl0 := x1; + wl := x2-x1; + + var yi: array of real; + SetLength(yi,ws+1); + + var min := real.MaxValue; + var max := real.MinValue; + for var xi:=0 to ws do + begin + yi[xi] := f(StoLx(xi+xs0)); + if yi[xi]max then + max := yi[xi]; + end; + + yl0 := min; + hl := -(max-min); + + // Нарисовать оси системы координат + Line(0,LtoSy(0),ws,LtoSy(0)); + Line(LtoSx(0),0,LtoSx(0),hs); + + Pen.Color := clBlue; + MoveTo(xs0,LtoSy(yi[0])); + for var xi:=xs0+1 to xs0+ws do + LineTo(xi,LtoSy(yi[xi-xs0])); +end; + +procedure Resize; +begin + ClearWindow; + drawGraph(0,60,f); + Redraw; +end; + +begin + LockDrawing; + SetWindowCaption('График функции: масштабирование'); + drawGraph(0,60,f); + Redraw; + OnResize := Resize; +end. diff --git a/Graphics/GraphABC/rain.pas b/Graphics/GraphABC/rain.pas new file mode 100644 index 0000000..17f971f --- /dev/null +++ b/Graphics/GraphABC/rain.pas @@ -0,0 +1,27 @@ +// Имитация кругов на воде от капель дождя +uses GraphABC; + +const speed = 2; + +procedure Kaplia(x0,y0: integer); +begin + var r := 1; + for var i:=0 to 63 do + begin + Pen.Color := RGB(i*4,i*4,i*4); + Circle(x0,y0,r); + if i mod speed = 0 then Sleep(10); + Pen.Color := clWhite; + Circle(x0,y0,r); + r += 2; + end; +end; + +const z=50; + +begin + Window.Title := 'Капли дождя'; + SetWindowSize(800,600); + while True do + Kaplia(Random(z,WindowWidth-z),Random(z,WindowHeight-z)); +end. diff --git a/Graphics/GraphWPF/4.pdf b/Graphics/GraphWPF/4.pdf new file mode 100644 index 0000000000000000000000000000000000000000..3570a974d479246bc8d65b48983e026681563df1 GIT binary patch literal 148760 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.ClientRect,DateTime.Now.ToLongTimeString.Replace(' AM',''),Colors.Red), + 1 + ); +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/CurjaMurja.pas b/Graphics/GraphWPF/CurjaMurja.pas new file mode 100644 index 0000000..91574aa --- /dev/null +++ b/Graphics/GraphWPF/CurjaMurja.pas @@ -0,0 +1,36 @@ +uses GraphWPF; + +begin + Window.Title := 'Всякая Курья Мурья'; + Pen.Width := 0.5; + Brush.Color := RGB(128,200,100); + Ellipse(100,100,30,20); + Brush.Color := RandomColor; + Circle(170,100,20); + Brush.Color := RandomColor; + Rectangle(220,80,70,50); + Line(220,80,220+70,80+50); + //DrawImage(200,140,'cofe.jpg'); + Brush.Color := RGB(200,200,255); + Polygon(Arr(Pnt(20,20),Pnt(20,120),Pnt(120,20))); + Brush.Color := Colors.Black; + for var i:=0 to 400 do + Rectangle(1+2*i,2,0,0); + Font.Size := 30; + Font.Color := Colors.Red; + TextOut(0,0,'Hello'); + Font.Size := 40; + Font.Color := Colors.Blue; + Font.Name := 'Times New Roman'; + Font.Style := FontStyle.BoldItalic; + TextOut(200,0,'Привет'); + Sleep(1000); + Window.Save('1.png'); + Window.Title := 'Сохранили'; + Sleep(1000); + Window.Clear; + Window.Title := 'Очистили'; + Sleep(1000); + Window.Load('1.png'); + Window.Title := 'Загрузили'; +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/DrawCircleByMouse.pas b/Graphics/GraphWPF/DrawCircleByMouse.pas new file mode 100644 index 0000000..75b1057 --- /dev/null +++ b/Graphics/GraphWPF/DrawCircleByMouse.pas @@ -0,0 +1,16 @@ +uses GraphWPF; + +begin + var x1,y1: real; + var c: Color; + OnMouseDown := procedure(x,y,mb) -> begin + (x1,y1) := (x,y); + c := RandomColor; + end; + OnMouseMove := procedure(x,y,mb) -> if mb=1 then + begin + var r := Sqrt(Sqr(x1-x)+Sqr(y1-y)); + Window.Clear; + Circle(x1,y1,r,c); + end; +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/DrawGraphic.pas b/Graphics/GraphWPF/DrawGraphic.pas new file mode 100644 index 0000000..aada7bd --- /dev/null +++ b/Graphics/GraphWPF/DrawGraphic.pas @@ -0,0 +1,11 @@ +uses GraphWPF; + +begin + Window.Title := 'Графики функций'; + var ww := Window.Width / 2; + var hh := Window.Height / 2; + DrawGraph(x -> sin(4 * x) + cos(3 * x), -5, 5, 0, 0, ww, hh, 'sin(4 * x) + cos(3 * x)'); + DrawGraph(x -> x * x, -5, 5, ww - 1, 0, ww, hh, 'x * x'); + DrawGraph(x -> exp(x), -3, 3, 0, 10, 0, hh-1, ww, hh, 'exp(x)'); + DrawGraph(x -> x*cos(2*x-1), -15, 15, ww - 1, hh-1, ww, hh, 'x * cos(2*x-1)'); +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/DrawPixels.pas b/Graphics/GraphWPF/DrawPixels.pas new file mode 100644 index 0000000..ae64a98 --- /dev/null +++ b/Graphics/GraphWPF/DrawPixels.pas @@ -0,0 +1,9 @@ +uses GraphWPF; + +begin + Window.SetSize(640, 480); + var m := MatrGen(640,480,(x,y)->RGB(2 * x - y, x - 3 * y, x + y)); + MillisecondsDelta.Println; + DrawPixels(0,0,m); + MillisecondsDelta.Println; +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/EllRectInWindow.pas b/Graphics/GraphWPF/EllRectInWindow.pas new file mode 100644 index 0000000..12386e2 --- /dev/null +++ b/Graphics/GraphWPF/EllRectInWindow.pas @@ -0,0 +1,7 @@ +uses GraphWPF; + +begin + Pen.Width := 1; + Rectangle(0,0,Window.Width-1,Window.Height-1); + Ellipse((Window.Width-1)/2,(Window.Height-1)/2,(Window.Width-1)/2,(Window.Height-1)/2); +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/Ellipses.pas b/Graphics/GraphWPF/Ellipses.pas new file mode 100644 index 0000000..0c721b4 --- /dev/null +++ b/Graphics/GraphWPF/Ellipses.pas @@ -0,0 +1,14 @@ +uses GraphWPF; + +begin + Window.Title := 'Рисование эллипсов'; + Pen.Width := 1; + var n := 20000; + for var i:=1 to n do + begin + if i mod 10000 = 0 then + Println(i,MillisecondsDelta); + Brush.Color := RandomColor; + Ellipse(Random(800),Random(600),Random(20),Random(20)); + end; +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/IsFixedSize.pas b/Graphics/GraphWPF/IsFixedSize.pas new file mode 100644 index 0000000..71350ba --- /dev/null +++ b/Graphics/GraphWPF/IsFixedSize.pas @@ -0,0 +1,8 @@ +uses GraphWPF; + +begin + Window.IsFixedSize := True; + Print(Window.IsFixedSize); + Window.IsFixedSize := False; + Print(Window.IsFixedSize); +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/MandelbrotWPF.pas b/Graphics/GraphWPF/MandelbrotWPF.pas new file mode 100644 index 0000000..66fc936 --- /dev/null +++ b/Graphics/GraphWPF/MandelbrotWPF.pas @@ -0,0 +1,44 @@ +// Демонстрация фрактальной графики. Множество Мандельброта +// Для каждой точки комплексной плоскости z=(x,y) выполняем итерационный процесс z=z*2+c, c=(cx,cy) +// Считаем количество итераций i до тех пор пока не выполнится условие |z|>max +// После этого рисуем точку z=(x,y) с насыщенностью красного цвета, пропорциональной i +uses GraphWPF; + +const + max = 10; + coef1 = 0.5; + coef2 = 0.88; + scalex = 0.0035; + scaley = 0.0035; + dx = 430; + dy = 300; + +begin + Window.Title := 'Фракталы: множество Мандельброта'; + Window.SetSize(600,600); + Window.CenterOnScreen; + var m := Window.Width.Round; + var n := Window.Height.Round; + var a := new Color[m,n]; + for var ix:=0 to m-1 do + for var iy:=0 to n-1 do + begin + var cx := scalex * (ix - dx); + var cy := scaley * (iy - dy); + var c := Cplx(cx,cy); + var z := Cplx(0,0); + + var i := 1; + while i<255 do + begin + z := z*z+c; + if z.Magnitude>max then break; + i += 1; + end; + if i>=255 then a[ix,iy] := Colors.Red + else a[ix,iy] := RGB(255,255-i,255-i); + end; + DrawPixels(0,0,a); + Writeln('Время расчета = ',Milliseconds/1000,' с'); +end. + diff --git a/Graphics/GraphWPF/OnDrawFrame1.pas b/Graphics/GraphWPF/OnDrawFrame1.pas new file mode 100644 index 0000000..c3df477 --- /dev/null +++ b/Graphics/GraphWPF/OnDrawFrame1.pas @@ -0,0 +1,11 @@ +uses GraphWPF; + +begin + var x0 := 100.0; + var v := 100; + OnDrawFrame := dt -> + begin + x0 += v * dt; + Circle(x0,100,30,Colors.Yellow); + end; +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/SetPixel.pas b/Graphics/GraphWPF/SetPixel.pas new file mode 100644 index 0000000..dc84cf1 --- /dev/null +++ b/Graphics/GraphWPF/SetPixel.pas @@ -0,0 +1,9 @@ +uses GraphWPF; + +begin + Window.SetSize(640, 480); + for var x := 0 to Window.Width.Round do + for var y := 0 to Window.Height.Round do + SetPixel(x, y, RGB(2 * x - y, x - 3 * y, x + y)); + Milliseconds.Println; +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/SetPixels.pas b/Graphics/GraphWPF/SetPixels.pas new file mode 100644 index 0000000..008fc2f --- /dev/null +++ b/Graphics/GraphWPF/SetPixels.pas @@ -0,0 +1,7 @@ +uses GraphWPF; + +begin + Window.SetSize(640, 480); + SetPixels(0,0,640,480,(x, y)->RGB(2 * x - y, x - 3 * y, x + y)); + Milliseconds.Println; +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/TextOutFontWith.pas b/Graphics/GraphWPF/TextOutFontWith.pas new file mode 100644 index 0000000..a12ee06 --- /dev/null +++ b/Graphics/GraphWPF/TextOutFontWith.pas @@ -0,0 +1,9 @@ +uses GraphWPF; + +begin + Window.Title := 'Использование FontOptions'; + TextOut(10,10,'Обычный'); + TextOut(10,40,'Жирный',Font.WithStyle(FontStyle.Bold)); + TextOut(10,70,'20 пунктов',Font.WithSize(20)); + TextOut(10,110,'Наклонный синий',Font.WithColor(Colors.Blue).WithStyle((FontStyle.Italic))); +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/anim1.pas b/Graphics/GraphWPF/anim1.pas new file mode 100644 index 0000000..0160433 --- /dev/null +++ b/Graphics/GraphWPF/anim1.pas @@ -0,0 +1,16 @@ +uses GraphWPF; + +begin + Window.Title := 'Простая анимация'; + var x := 30; + Brush.Color := Colors.Beige; + Circle(x,50,20); + loop 600 do + begin + Sleep(10); + Window.Clear; + x += 1; + Circle(x,50,20); + Window.Title := '' + (Milliseconds div 100)/10; + end; +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/anim2.pas b/Graphics/GraphWPF/anim2.pas new file mode 100644 index 0000000..d9a0a6d --- /dev/null +++ b/Graphics/GraphWPF/anim2.pas @@ -0,0 +1,25 @@ +uses GraphWPF; + +begin + Window.Title := 'Отражение шарика. Вещественное направление движения'; + Brush.Color := Colors.Beige; + var x := 400.0; + var y := 300.0; + var dx := 2.1; + var dy := -1.2; + Circle(x,y,20); + while True do + begin + Sleep(10); + Window.Clear; + x += dx; + y += dy; + if not x.Between(0,Window.Width) then + dx := -dx; + if not y.Between(0,Window.Height) then + dy := -dy; + Circle(x,y,20); + if Milliseconds>2000 then + Window.Title := 'Секунды: ' + (Milliseconds div 100)/10; + end; +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/anim4.pas b/Graphics/GraphWPF/anim4.pas new file mode 100644 index 0000000..4d2d5a6 --- /dev/null +++ b/Graphics/GraphWPF/anim4.pas @@ -0,0 +1,45 @@ +uses GraphWPF; + +function RandomReal(a,b: real): real := Random*(b-a)+a; + +type + BallInfo = auto class + x,y,r,dx,dy: real; + c: Color; + procedure Move := (x,y) := (x+dx,y+dy); + procedure Draw := FillCircle(x,y,r,c); + procedure CheckDirection; + begin + if not x.Between(r,Window.Width-r) then + dx := -dx; + if not y.Between(r,Window.Height-r) then + dy := -dy; + end; + procedure Step; + begin + Move; + CheckDirection; + Draw; + end; + class function CreateRandomBallArray(n: integer): array of BallInfo; + begin + var rr := 20; + Result := ArrGen(n,i->new BallInfo(RandomReal(rr,Window.Width-rr), + RandomReal(rr,Window.Height-rr),RandomReal(5,15), + RandomReal(-3,3),RandomReal(-3,3),RandomColor)); + end; + end; + +begin + Window.Title := 'Отражение шариков. Анимация на основе кадра'; + + var n := 1000; + var a := BallInfo.CreateRandomBallArray(n); + + BeginFrameBasedAnimation(()-> + foreach var ball in a do + ball.Step + ); + + //BeginFrameBasedAnimation(()->a.ForEach(ball->ball.Step)); +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/anim5.pas b/Graphics/GraphWPF/anim5.pas new file mode 100644 index 0000000..9dd84de --- /dev/null +++ b/Graphics/GraphWPF/anim5.pas @@ -0,0 +1,44 @@ +uses GraphWPF; + +const vmax = 50; + +function RandomReal(a,b: real): real := Random*(b-a)+a; + +type + BallInfo = auto class + x,y,r,vx,vy: real; + c: Color; + procedure Move(dt: real) := (x,y) := (x+vx*dt,y+vy*dt); + procedure Draw := FillCircle(x,y,r,c); + procedure CheckDirection; + begin + if not x.Between(r,Window.Width-r) then + vx := -vx; + if not y.Between(r,Window.Height-r) then + vy := -vy; + end; + procedure Step(dt: real); + begin + Move(dt); + CheckDirection; + Draw; + end; + class function CreateRandomBallArray(n: integer): array of BallInfo; + begin + var rr := 25; + Result := ArrGen(n,i->new BallInfo(RandomReal(rr,Window.Width-rr), + RandomReal(rr,Window.Height-rr),RandomReal(5,15), + RandomReal(-vmax,vmax),RandomReal(-vmax,vmax),RandomColor)); + end; + end; + +begin + Window.Title := 'Отражение шариков. Анимация на основе кадра'; + + var n := 1000; + var a := BallInfo.CreateRandomBallArray(n); + + OnDrawFrame := dt -> + foreach var ball in a do + ball.Step(dt); +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/mouse1.pas b/Graphics/GraphWPF/mouse1.pas new file mode 100644 index 0000000..8349d01 --- /dev/null +++ b/Graphics/GraphWPF/mouse1.pas @@ -0,0 +1,6 @@ +uses GraphWPF; + +begin + OnMouseDown := (x,y,mb) -> if mb=1 then Circle(x,y,5); + OnKeyDown := k -> Print(k); +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/mouse2.pas b/Graphics/GraphWPF/mouse2.pas new file mode 100644 index 0000000..af3d6a8 --- /dev/null +++ b/Graphics/GraphWPF/mouse2.pas @@ -0,0 +1,10 @@ +uses GraphWPF; + +begin + Window.Title := 'Рисование мышью'; + Pen.Color := Colors.Blue; + Pen.Width := 3; + OnMouseDown := (x,y,mb) -> MoveTo(x,y); + OnMouseMove := (x,y,mb) -> if mb=1 then LineTo(x,y); + OnKeyDown := k -> if k = Key.Space then Window.Save('a.png'); +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/ВсеТочкиМногоугольника.pas b/Graphics/GraphWPF/ВсеТочкиМногоугольника.pas new file mode 100644 index 0000000..426ac86 --- /dev/null +++ b/Graphics/GraphWPF/ВсеТочкиМногоугольника.pas @@ -0,0 +1,12 @@ +uses GraphWPF; + +procedure ВсеТочкиМногоугольника(x0,y0,r: real; n: integer); +begin + var q := PartitionPoints(0,2*Pi,n).Select(a->Pnt(x0 + r * Cos(a), y0 - r * Sin(a))); + q.Cartesian(q).ForEach(p->Line(p[0].x,p[0].y,p[1].x,p[1].y,RandomColor)); +end; + +begin + Pen.Width := 0.5; + ВсеТочкиМногоугольника(400,300,290,30) +end. diff --git a/Graphics/GraphWPF/ВыравниваниеТекста1.pas b/Graphics/GraphWPF/ВыравниваниеТекста1.pas new file mode 100644 index 0000000..de8e67e --- /dev/null +++ b/Graphics/GraphWPF/ВыравниваниеТекста1.pas @@ -0,0 +1,30 @@ +uses GraphWPF; + +begin + Window.Title := 'Выравнивание шрифта'; + Font.Size := 20; + var (x,y) := (200,200); + var (w,h) := (400,200); + DrawRectangle(x,y,w,h); + DrawText(x,y,w,h,'LeftTop',Alignment.LeftTop); + DrawText(x,y,w,h,'LeftCenter',Alignment.LeftCenter); + DrawText(x,y,w,h,'LeftBottom',Alignment.LeftBottom); + DrawText(x,y,w,h,'CenterTop',Alignment.CenterTop); + DrawText(x,y,w,h,'Center'); + DrawText(x,y,w,h,'CenterBottom',Alignment.CenterBottom); + DrawText(x,y,w,h,'RightTop',Alignment.RightTop); + DrawText(x,y,w,h,'RightCenter',Alignment.RightCenter); + DrawText(x,y,w,h,'RightBottom',Alignment.RightBottom); + // Выравнивание относительно точки + TextOut(150,100,'PointRightBottom',Alignment.RightBottom); + TextOut(150,100,'PointRightTop',Alignment.RightTop); + TextOut(150,100,'PointLeftTop',Alignment.LeftTop); + TextOut(150,100,'PointLeftBottom',Alignment.LeftBottom); + FillCircle(150,100,5,Colors.Red); + TextOut(600,100,'PointCenterTop',Alignment.CenterTop); + TextOut(600,100,'PointCenterBottom',Alignment.CenterBottom); + FillCircle(600,100,5,Colors.Red); + TextOut(400,500,'PointLeftCenter',Alignment.LeftCenter); + TextOut(400,500,'PointRightCenter',Alignment.RightCenter); + FillCircle(400,500,5,Colors.Red); +end. diff --git a/Graphics/GraphWPF/ВыравниваниеТекста2.pas b/Graphics/GraphWPF/ВыравниваниеТекста2.pas new file mode 100644 index 0000000..f8e6229 --- /dev/null +++ b/Graphics/GraphWPF/ВыравниваниеТекста2.pas @@ -0,0 +1,34 @@ +uses GraphWPF; + +begin + Window.Title := 'Выравнивание шрифта'; + Font.Size := 20; + + var sc := 40; + SetMathematicCoords; + + var (x,y) := (-5,-2); + var (w,h) := (10,4); + DrawRectangle(x,y,w,h); + DrawText(x,y,w,h,'LeftTop',Alignment.LeftTop); + DrawText(x,y,w,h,'LeftCenter',Alignment.LeftCenter); + DrawText(x,y,w,h,'LeftBottom',Alignment.LeftBottom); + DrawText(x,y,w,h,'CenterTop',Alignment.CenterTop); + DrawText(x,y,w,h,'Center'); + DrawText(x,y,w,h,'CenterBottom',Alignment.CenterBottom); + DrawText(x,y,w,h,'RightTop',Alignment.RightTop); + DrawText(x,y,w,h,'RightCenter',Alignment.RightCenter); + DrawText(x,y,w,h,'RightBottom',Alignment.RightBottom); + // Выравнивание относительно точки + TextOut(-5,5,'PointRightBottom',Alignment.RightBottom); + TextOut(-5,5,'PointRightTop',Alignment.RightTop); + TextOut(-5,5,'PointLeftTop',Alignment.LeftTop); + TextOut(-5,5,'PointLeftBottom',Alignment.LeftBottom); + FillCircle(-5,5,0.1,Colors.Red); + TextOut(5,5,'PointCenterTop',Alignment.CenterTop); + TextOut(5,5,'PointCenterBottom',Alignment.CenterBottom); + FillCircle(5,5,0.1,Colors.Red); + TextOut(5,-5,'PointLeftCenter',Alignment.LeftCenter); + TextOut(5,-5,'PointRightCenter',Alignment.RightCenter); + FillCircle(5,-5,0.1,Colors.Red); +end. diff --git a/Graphics/GraphWPF/Многоугольник.pas b/Graphics/GraphWPF/Многоугольник.pas new file mode 100644 index 0000000..2d6e3c8 --- /dev/null +++ b/Graphics/GraphWPF/Многоугольник.pas @@ -0,0 +1,20 @@ +uses GraphWPF; + +procedure Многоугольник(x0,y0,r: real; n: integer); +begin + var a := Pi / 2; + MoveTo(x0 + r * Cos(a), y0 - r * Sin(a)); + loop n do + begin + a += 2 * Pi / n; + //FillCircle(x0 + r * Cos(a), y0 - r * Sin(a),3,Colors.Black); + LineTo(x0 + r * Cos(a), y0 - r * Sin(a)); + end; +end; + +begin + var (x0,y0) := (400.0,300.0); + var r := 30.0; + for var n := 3 to 11 do + Многоугольник(x0,y0,r+(n-3)*30,n) +end. diff --git a/Graphics/GraphWPF/Многоугольник1.pas b/Graphics/GraphWPF/Многоугольник1.pas new file mode 100644 index 0000000..b065061 --- /dev/null +++ b/Graphics/GraphWPF/Многоугольник1.pas @@ -0,0 +1,9 @@ +uses GraphWPF; + +begin + var (n,r) := (9,250); + var a := ArrGen(n, i -> Window.Center + r * Vect(Cos(i*2*Pi/n),Sin(i*2*Pi/n))); + foreach var p in a.Combinations(2) do + Line(p[0], p[1]); + //a.Combinations(2).ForEach(p -> Line(p[0], p[1])); +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/Светофор.pas b/Graphics/GraphWPF/Светофор.pas new file mode 100644 index 0000000..26176c9 --- /dev/null +++ b/Graphics/GraphWPF/Светофор.pas @@ -0,0 +1,19 @@ +uses GraphWPF; + +procedure Светофор(x,y,r: real); +begin + Rectangle(x,y,4*r,10*r,Colors.LightGray); + x += 2*r; + y += 2*r; + var dy := 3*r; + + Circle(x,y,r,Colors.Red); + Circle(x,y + dy,r,Colors.Yellow); + Circle(x,y + 2*dy,r,Colors.Green); +end; + +begin + Pen.Width := 2; + Window.Title := 'Светофор'; + Светофор(150,40,50); +end. \ No newline at end of file diff --git a/Graphics/GraphWPF/Система координат.pas b/Graphics/GraphWPF/Система координат.pas new file mode 100644 index 0000000..343c23e --- /dev/null +++ b/Graphics/GraphWPF/Система координат.pas @@ -0,0 +1,18 @@ +uses GraphWPF; + +begin + Window.Title := 'Система координат'; + Font.Size := 20; + + // SetMathematicCoords; // так тоже можно + // SetMathematicCoords(-10,10); // так тоже можно + SetMathematicCoords(-10,10,-9.2); + DrawGrid; + + Print('Видимые координаты:',XMin,XMax,YMin,YMax); + + Polygon(Arr((-3,2),(2,1),(-2,-4)),ARGB(100,255,228,196)); + TextOut(-3,2,'A(-3,2)',Alignment.RightBottom); + TextOut(2,1,'B(2,1)',Alignment.LeftBottom); + TextOut(-2,-4,'C(-2,-4)',Alignment.CenterTop); +end. diff --git a/Graphics/GraphWPF/ТаблицаУмножения.pas b/Graphics/GraphWPF/ТаблицаУмножения.pas new file mode 100644 index 0000000..5565ca7 --- /dev/null +++ b/Graphics/GraphWPF/ТаблицаУмножения.pas @@ -0,0 +1,16 @@ +uses GraphWPF; + +begin + Window.Title := 'Таблица умножения'; + Font.Size := 16; + var n := 9; + var w := 40; + var (x0,y0) := (50,50); + for var i:=0 to n-1 do + for var j:=0 to n-1 do + begin + var (xx,yy) := (x0+i*w,y0+j*w); + Rectangle(xx,yy,w,w); + DrawText(xx,yy,w,w,(i+1)*(j+1)); + end; +end. diff --git a/Graphics/WPFObjects/MovingFrameBasedTime.pas b/Graphics/WPFObjects/MovingFrameBasedTime.pas new file mode 100644 index 0000000..a411db2 --- /dev/null +++ b/Graphics/WPFObjects/MovingFrameBasedTime.pas @@ -0,0 +1,22 @@ +uses WPFObjects; + +begin + var c := new CircleWPF(Window.Center, 20, Colors.Green); + + OnDrawFrame := dt → begin + c.MoveTime(dt); + end; + + OnKeyDown := k → begin + case k of + Key.Left: c.Direction := (-5, 0); + Key.Right: c.Direction := (5, 0); + Key.Up: c.Direction := (0, -5); + Key.Down: c.Direction := (0, 5); + end; + end; + + OnKeyUp := k → begin + c.Direction := (0, 0); + end; +end. \ No newline at end of file diff --git a/Graphics/WPFObjects/Shooter.pas b/Graphics/WPFObjects/Shooter.pas new file mode 100644 index 0000000..288c1f8 --- /dev/null +++ b/Graphics/WPFObjects/Shooter.pas @@ -0,0 +1,105 @@ +uses WPFObjects,Timers; + +type + BulletWPF = class(CircleWPF) end; + MonsterWPF = class(SquareWPF) end; + PlayerWPF = class(EllipseWPF) end; + +begin + var Player := new PlayerWPF(GraphWindow.Center, 30, 50, RandomColor); + Player.Velocity := 100; + Player.Number := 0; + + loop 5 do + begin + var m := new MonsterWPF(750,Random(10,550),30,RandomColor); + m.Velocity := 50; + end; + + OnMouseMove := (x,y,mb) -> Player.RotateToPoint(x,y); + + OnMouseDown := (x,y,mb) -> begin + var cc := new BulletWPF(Player.CenterTop,5,Colors.Red); + cc.Direction := (x-Player.Center.X,y-Player.Center.Y); + cc.Velocity := 300; + end; + + var kl,kr,ku,kd: boolean; + + OnDrawFrame := dt -> begin + Window.Title := 'Количество объектов: '+Objects.Count; + // Перемещение игрока + if kr then + Player.Dx := 1 + else if kl then + Player.Dx := -1 + else Player.Dx := 0; + if ku then + Player.Dy := -1 + else if kd then + Player.Dy := 1 + else Player.Dy := 0; + + for var i:=Objects.Count-1 downto 0 do // все перемещаются в своём направлении со своей скоростью + begin + var o := Objects[i]; + if o is MonsterWPF then + o.Direction := (Player.Center.X - o.Center.X,Player.Center.Y-o.Center.Y); + o.MoveTime(dt); + end; + + if Player.IntersectionList.Any(o -> o is MonsterWPF) then + begin + // Конец игры + + end; + end; + + CreateTimerAndStart(100,procedure -> // Таймер убивания монстров и умирания объектов за пределами экрана + begin + for var i:=Objects.Count-1 downto 0 do + begin + var o := Objects[i]; + if (o.Center.X < 0) or (o.Center.X > Window.Width) or + (o.Center.Y < 0) or (o.Center.Y > Window.Height) then + if not (o is PlayerWPF) then + o.Destroy; + if o is BulletWPF then + foreach var x in o.IntersectionList do + if x is MonsterWPF then + begin + x.Destroy; + o.Destroy; + Player.Number += 1; + break; + end; + end; + end); + + CreateTimerAndStart(1000,procedure -> // Таймер рождения монстров + begin + var x := Random(2)=0 ? 750 : 50; + var m := new MonsterWPF(x,Random(10,550),30,RandomColor); + m.Velocity := 50; + end); + + + OnKeyDown := k -> + begin + case k of + Key.w,Key.Up: begin ku := true; kd := false; end; + Key.s,Key.Down: begin kd := true; ku := false; end; + Key.a,Key.Left: begin kl := true; kr := false; end; + Key.d,Key.Right: begin kr := true; kl := false end; + end; + end; + OnKeyUp := k -> + begin + case k of + Key.w,Key.Up: ku := false; + Key.s,Key.Down: kd := false; + Key.a,Key.Left: kl := false; + Key.d,Key.Right: kr := false; + end; + end; +end. \ No newline at end of file diff --git a/Graphics/WPFObjects/ShooterWithInterface.pas b/Graphics/WPFObjects/ShooterWithInterface.pas new file mode 100644 index 0000000..79d52bf --- /dev/null +++ b/Graphics/WPFObjects/ShooterWithInterface.pas @@ -0,0 +1,197 @@ +uses WPFObjects, Timers, Controls; + +type + BulletWPF = class(CircleWPF) end; + MonsterWPF = class(SquareWPF) end; + PlayerWPF = class(EllipseWPF) end; + TGameState = (Paused, Started, EndOfGame); + +var + // Состояние игры + GameState: TGameState := Paused; + // Глобальные интерфейсные объекты + sb: StatusBarWPF; + bstart, bstop, bnewgame: ButtonWPF; + // Глобальные игровые объекты + Player: PlayerWPF; + // Клавиатура + kl, kr, ku, kd: boolean; + + +procedure InitGame; +begin + Player := new PlayerWPF(GraphWindow.Center, 30, 50, RandomColor); + Player.Velocity := 100; + Player.Number := 0; + + loop 10 do + begin + var m := new MonsterWPF(750, Random(10, 550), 30, RandomColor); + m.Velocity := 50; + end; +end; + +procedure NewGame; +begin + sb.Text := ''; + Objects.Clear; + InitGame; +end; + +// Конец игры - игрок погиб +procedure GameOver; +begin + sb.Text := 'Игрок погиб'; + GameState := EndOfGame; + bstart.Enabled := False; + bstop.Enabled := False; + bnewgame.Enabled := True; + Player.Color := Colors.Black; +end; + +// Конец игры - победа! +procedure GameOverWin; +begin + sb.Text := 'Победа!'; + GameState := EndOfGame; + bstart.Enabled := False; + bstop.Enabled := False; + bnewgame.Enabled := True; + Player.Color := Colors.Yellow; +end; + +procedure InitInterface; +begin + Window.SetSize(1000, 600); + LeftPanel(200, Colors.Orange); + bstart := Button('Start'); + bstop := Button('Stop'); + bnewgame := Button('Новая игра'); + bstop.Enabled := False; + bstart.Enabled := False; + bstart.Click := procedure → begin + GameState := Started; + bstart.Enabled := False; + bstop.Enabled := True; + end; + bstop.Click := procedure → begin + GameState := Paused; + bstart.Enabled := True; + bstop.Enabled := False; + end; + bNewGame.Click := procedure → begin + GameState := Started; + bnewgame.Enabled := False; + bstart.Enabled := False; + bstop.Enabled := True; + NewGame; + end; + sb := StatusBar; +end; + +// Обработчик таймера убивания монстров и умирания объектов за пределами экрана +procedure KillMonstersHandler; +begin + if GameState <> Started then + exit; + // Удалить пули, вылетевшие за экран + Objects.DestroyAll(o → o.OutOfGraphWindow and not (o is PlayerWPF)); + // Удалить монстра, убитого пулей, вместе с пулей + foreach var o in Objects do + begin + if o is BulletWPF then + foreach var x in o.IntersectionList do + if x is MonsterWPF then + begin + x.Destroy; + o.Destroy; + Player.Number += 1; + break; + end; + end; +end; + +// Обработчик перерисовки экрана +procedure DrawFrame(dt: real); +begin + if GameState <> Started then exit; + Window.Title := 'Количество объектов: ' + Objects.Count; + +// Перемещение игрока + if kr then + Player.Dx := 1 + else if kl then + Player.Dx := -1 + else Player.Dx := 0; + if ku then + Player.Dy := -1 + else if kd then + Player.Dy := 1 + else Player.Dy := 0; + +// Перемещение остальных объектов + foreach var o in Objects do // все перемещаются в своём направлении со своей скоростью + begin + if o is MonsterWPF then + o.Direction := (Player.Center.X - o.Center.X, Player.Center.Y - o.Center.Y); + o.MoveTime(dt); + end; + +// Проверка гибели игрока + if Player.IntersectionList.Any(o → o is MonsterWPF) then + GameOver; + +// Проверка выигрыша игрока + if Player.Number >= 10 then + GameOverWin; +end; + +/// Обработчик таймера рождения монстров +procedure CreateMonstersHandler; +begin + if GameState <> Started then exit; + var x := if Random(2) = 0 then 750 else 50; + var m := new MonsterWPF(x, Random(10, 550), 30, RandomColor); + m.Velocity := 50; +end; + +begin + InitInterface; + + CreateTimerAndStart(100, KillMonstersHandler); + CreateTimerAndStart(1000, CreateMonstersHandler); + +// Обработчик перерисовки кадров + OnDrawFrame := DrawFrame; + +// Обработчики мыши и клавиатуры + OnMouseMove := (x, y, mb) → begin + if GameState <> Started then exit; + Player.RotateToPoint(x, y); + end; + + OnMouseDown := (x, y, mb) → begin + if GameState <> Started then exit; + var cc := new BulletWPF(Player.CenterTop, 5, Colors.Red); + cc.Direction := (x - Player.Center.X, y - Player.Center.Y); + cc.Velocity := 300; + end; + + OnKeyDown := k → begin + case k of + Key.w, Key.Up: begin ku := true; kd := false; end; + Key.s, Key.Down: begin kd := true; ku := false; end; + Key.a, Key.Left: begin kl := true; kr := false; end; + Key.d, Key.Right: begin kr := true; kl := false end; + end; + end; + + OnKeyUp := k → begin + case k of + Key.w, Key.Up: ku := false; + Key.s, Key.Down: kd := false; + Key.a, Key.Left: kl := false; + Key.d, Key.Right: kr := false; + end; + end; +end. \ No newline at end of file diff --git a/Graphics/WPFObjects/StartStopMoveRotation.pas b/Graphics/WPFObjects/StartStopMoveRotation.pas new file mode 100644 index 0000000..0b0a911 --- /dev/null +++ b/Graphics/WPFObjects/StartStopMoveRotation.pas @@ -0,0 +1,32 @@ +// Модуль Controls - StatusBar +uses Controls,WPFObjects; + +// Управление свойствами объекта, связанными с перемещением и поворотом. +// В OnDrawFrame объект сам себя перерисовывает +begin + Window.Title := 'Модуль Controls - StatusBar'; + var l := LeftPanel(180,Colors.Orange); + + var c := new RectangleWPF(50,200,80,50,Colors.Green); + c.Direction := (1,0); + c.Velocity := 0; + c.Tag := 0; // скорость поворота + + OnDrawFrame := dt -> begin + c.MoveTime(dt); + c.RotateAngle += integer(c.Tag) * dt; + end; + + Button('Начать перемещение').Click := procedure -> begin + c.Velocity := 30; + end; + Button('Закончить перемещение').Click := procedure -> begin + c.Velocity := 0; + end; + Button('Начать поворот').Click := procedure -> begin + c.Tag := 30; + end; + Button('Закончить поворот').Click := procedure -> begin + c.Tag := 0; + end; +end. \ No newline at end of file diff --git a/Graphics/WPFObjects/gr_All_Brown_WPF.pas b/Graphics/WPFObjects/gr_All_Brown_WPF.pas new file mode 100644 index 0000000..48b31e2 --- /dev/null +++ b/Graphics/WPFObjects/gr_All_Brown_WPF.pas @@ -0,0 +1,39 @@ +// Изменение свойств графических объектов +// Броуновское движение графических объектов +uses WPFObjects; + +procedure MoveAll(a,b: integer); +begin + for var j:=0 to Objects.Count-1 do + Objects[j].moveBy(a,b); +end; + +begin + Window.Title := 'Броуновское движение объектов'; + var sq := new SquareWPF(30,5,90,Colors.SkyBlue,1); + var r := new RectangleWPF(10,10,100,180,RGB(255,100,100),1); + var rr := new RoundRectWPF(200,180,180,50,20,RandomColor,1); + var rsq:= new RoundSquareWPF(20,180,80,10,RandomColor,1); + var c := new CircleWPF(160,55,70,Colors.Green); + var z := new StarWPF(200,150,70,135,5,EmptyColor,1); + var el := new EllipseWPF(5,55,65,50,RandomColor,2,RandomColor); + var t := new TextWPF(100,170,40,'Hello, WPFObjects!'); // + t.BackgroundColor := Colors.Yellow; + t.FontName := 'Times New Roman'; + //var br := new BoardWPF(200,20,7,5,20,20); + //br.Filled := False; + z.Height := 220; + z.Radius := 160; + sq.Width := 120; + //t.FontSize := 40; + c.Height := 50; + c.Scale(2); + MoveAll(160,110); + + while True do + begin + for var j:=0 to Objects.Count-1 do + Objects[j].MoveBy(Random(-1,1),Random(-1,1)); + Sleep(10); + end; +end. diff --git a/Graphics/WPFObjects/gr_IntersectWPF.pas b/Graphics/WPFObjects/gr_IntersectWPF.pas new file mode 100644 index 0000000..5b45068 --- /dev/null +++ b/Graphics/WPFObjects/gr_IntersectWPF.pas @@ -0,0 +1,24 @@ +uses WPFObjects; + +var Destroyer: CircleWPF; + +procedure CheckPulyaIntersects; +begin + Destroyer.IntersectionList.ForEach(procedure(o)->o.Destroy); +end; + +begin + Window.SetSize(640,480); + Window.Title := 'Разрушитель: метод Intersect пересечения объектов'; + loop 500 do + new RectangleWPF(Random(Window.Width.Round-200)+100,Random(Window.Height.Round-100),Random(200),Random(200),clRandom); + Destroyer := new CircleWPF(10,Window.Height / 2,100,Colors.Black); + Destroyer.SetText('Destroyer',30,'Arial',Colors.Yellow); + + loop 900 do + begin + Destroyer.MoveBy(1,0); + CheckPulyaIntersects; + Sleep(1); + end; +end. diff --git a/Graphics/WPFObjects/gr_Move_Param_WPF.pas b/Graphics/WPFObjects/gr_Move_Param_WPF.pas new file mode 100644 index 0000000..bae294e --- /dev/null +++ b/Graphics/WPFObjects/gr_Move_Param_WPF.pas @@ -0,0 +1,70 @@ +// Движение по траектории +uses WPFObjects,GraphWPF; + +const +/// Шаг по параметру кривой + step = 0.02; +/// Задержка по времени, мс + delay = 5; + +type + PointR = record + x,y: real; + end; + +function Position(t: real): PointR; // астроида +begin + var si := sin(1.7 * t); + var co := cos(1.5 * t); + Result.x := si*si*si; + Result.y := co*co*co; +end; + +function Position1(t: real): PointR; // фигура Лиссажу +begin + Result.x := cos(4*t); + Result.y := cos(2.97221*t + 2*Pi/3); +end; + +function LogicalToScreen(p: PointR): GPoint; +begin + var ww := Window.Width / 2; + var hh := Window.Height / 2; + Result.x := Round((ww - 50) * p.x + ww); + Result.y := Round((hh - 50) * p.y + hh); +end; + +procedure InitScreen; +begin + Brush.Color := Colors.LightGreen; + Rectangle(10,10,Window.Width-20,Window.Height-20); + var p := LogicalToScreen(Position1(0)); + MoveTo(p.x,p.y); +end; + +begin + //Window.IsFixedSize := True; + Window.Title := 'Движение по траектории'; + Window.SetSize(640,480); + Window.CenterOnScreen; + + InitScreen; + var c := new CircleWPF(200,200,25,Colors.Green); + var d := new StarWPF(200,200,40,20,5,Colors.Yellow); + + var t: real := 0; + while True do + begin + c.Center := LogicalToScreen(Position1(t)); + d.Center := LogicalToScreen(Position(t)); + if t<20*Pi then + LineTo(c.Center.x,c.Center.y) + else + begin + t := 0; + InitScreen; + end; + t += step; + Sleep(delay); + end; +end. diff --git a/Graphics/WPFObjects/gr_MovingObjectsWPF.pas b/Graphics/WPFObjects/gr_MovingObjectsWPF.pas new file mode 100644 index 0000000..90ea8a7 --- /dev/null +++ b/Graphics/WPFObjects/gr_MovingObjectsWPF.pas @@ -0,0 +1,58 @@ +uses WPFObjects; + +const +/// Количество графических объектов + Count = 1000; + +/// Возвращает случайный графический объект + +var w := 50; + +function NewRandomABC: ObjectWPF; +begin + case Random(3) of +0: Result := new CircleWPF(Random(Window.Width.Round-w)+w/2,Random(Window.Height.Round-w)+w/2,Random(w/2),RandomColor); +1: Result := new RectangleWPF(Random(Window.Width.Round-w)+w/2,Random(Window.Height.Round-w)+w/2,Random(w),Random(w),RandomColor); +2: Result := new StarWPF(Random(Window.Width.Round-w)+w/2,Random(Window.Height.Round-w)+w/2,Random(w/2),Random(w/2),Random(4)+4,RandomColor); + end; +end; + +/// Передвигает графический объект с отражением его от стенок +procedure Move(o: ObjectWPF); +begin + o.Move; + if (o.Left<0) or (o.Left+o.Width>Window.Width) then + o.dx := -o.dx; + if (o.Top<0) or (o.Top+o.Height>Window.Height) then + o.dy := -o.dy; +end; + +procedure CreateAll; +begin + loop Count do + begin + var m: ObjectWPF := NewRandomABC; + repeat + m.dx := Random(-3,3); + m.dy := Random(-3,3); + until (m.dx<>0) and (m.dy<>0); + end; +end; + +procedure MoveAll; +begin + for var i:=0 to Objects.Count-1 do + Move(Objects[i]); +end; + +begin + Window.Title := 'Движущиеся объекты'; + Redraw(CreateAll); + var k := 1; + while True do + begin + Redraw(MoveAll); + k += 1; + Window.Title := Format('{0,5:f2}',k/Milliseconds*1000)+' кадров в секунду'; + end; +end. diff --git a/Graphics/WPFObjects/gr_ObjectsAsSeq.pas b/Graphics/WPFObjects/gr_ObjectsAsSeq.pas new file mode 100644 index 0000000..0874368 --- /dev/null +++ b/Graphics/WPFObjects/gr_ObjectsAsSeq.pas @@ -0,0 +1,25 @@ +uses WPFObjects; + +function GenRandomWPF: ObjectWPF; +begin + var x := Random(Window.Width); + var y := Random(Window.Height); + case Random(3) of + 0: Result := new CircleWPF(x,y,Random(15,20),RandomColor); + 1: Result := new EllipseWPF(x,y,Random(15,60),Random(15,60),RandomColor); + 2: Result := new RegularPolygonWPF(x,y,Random(15,30),Random(3,8),RandomColor); + end; +end; + +begin + loop 100 do + GenRandomWPF; + + Sleep(1000); + foreach var o in Objects.Seq do + match o with + CircleWPF(c): c.Radius += 10; + EllipseWPF(e): e.AnimMoveBy(Random(-50,50),Random(-50,50),1); + RegularPolygonWPF(r) when r.Count<6: r.SetBorder; + end +end. \ No newline at end of file diff --git a/Graphics/WPFObjects/gr_RealNumber_WPF.pas b/Graphics/WPFObjects/gr_RealNumber_WPF.pas new file mode 100644 index 0000000..7f0f507 --- /dev/null +++ b/Graphics/WPFObjects/gr_RealNumber_WPF.pas @@ -0,0 +1,20 @@ +uses WPFObjects, GraphWPF; + +const + /// отступ по оси x + zx = 100; + /// отступ по оси y + zy = 50; + +begin + //Window.IsFixedSize := True; + Window.Title := 'Секундомер'; + var r := new RoundRectWPF(zx, zy, Window.Width - 2 * zx, Window.Height - 2 * zy, 100, Colors.LightGreen, 5, Colors.Green); + r.FontSize := 200; + for var i := 1 to 1000 do + begin + r.RealNumber := i/10; + Sleep(100); + end; +end. + diff --git a/Graphics/WPFObjects/gr_StandardColors_WPF.pas b/Graphics/WPFObjects/gr_StandardColors_WPF.pas new file mode 100644 index 0000000..65e4f4d --- /dev/null +++ b/Graphics/WPFObjects/gr_StandardColors_WPF.pas @@ -0,0 +1,144 @@ +uses + GraphWPF, + WPFObjects, + System.Reflection; + +const lim = 127 + 32; + +var + CurrentBackColor := Colors.White; + InfoString: RectangleWPF; + +procedure ChangeInfoStringText(colorName: string); +begin + var c := Colors.LightGray;//Color.FromName(colorName); + InfoString.Text := $'Colors.{colorName}: (R: {c.R} G: {c.G} B: {c.B})'; + InfoString.Color := c; + if c.R*c.R+c.G*c.G+c.B*c.B <= 3*lim*lim then + InfoString.FontColor := Colors.White + else InfoString.FontColor := Colors.Black; + if c.A = 0 then + InfoString.FontColor := Colors.Gray; +end; + +procedure CreateStandardColors(backColor: Color); +begin + Window.Clear(backColor); + var t := typeof(Colors); + var mi := t.GetProperties(); + var y := 10.0; + var x := 10.0; + var h := Window.Width / 5 - 11; + foreach m: PropertyInfo in mi do + begin + if m.GetGetMethod(true).IsStatic then + begin + var c := Color(m.GetValue(nil,nil)); + var r := new RectangleWPF(x,y,h,22,c); + r.Text := m.Name; + r.FontSize := 16;//.TextScale := 0.9; + //r.Bordered := False; + if c.R*c.R+c.G*c.G+c.B*c.B <= 3*lim*lim then + r.FontColor := Colors.White + else r.FontColor := Colors.Black; + if c.A = 0 then + r.FontColor := Colors.Gray; + y += 25; + if y > Window.Height-40 then + begin + y := 10; + x += h + 10; + end; + end; + end; +end; + +var + ob: ObjectWPF; + dx,dy: real; + +procedure MouseDown(x,y: real; mb: integer); +begin + ob := ObjectUnderPoint(x,y); + if ob=InfoString then + ob := nil; + if ob<>nil then + begin + ob.ToFront; + dx := x - ob.Left; + dy := y - ob.Top; + var c := ob.Color; + if (mb=2) then + ob.ScaleFactor := 2 + else ob.Color := Color.FromArgb(128,c.R,c.G,c.B); + end; +end; + +procedure MouseUp(x,y: real; mb: integer); +begin + if ob<>nil then + begin + if (mb=2) then + ob.Scale(0.5) + else + begin + var c := ob.Color; + if ob.Text = 'Transparent' then + ob.Color := Color.FromArgb(0,c.R,c.G,c.B) + else ob.Color := Color.FromArgb(255,c.R,c.G,c.B); + end; + ob:= nil; + end; +end; + +procedure MouseMove(x,y: real; mb: integer); +begin + if (ob<>nil) and (mb=1) then + begin + ob.ToFront; + ob.Left := x - dx; + ob.Top := y - dy; + end; + if ob=nil then + begin + InfoString.Text := ''; + InfoString.Color := CurrentBackColor; + end; + var ob1 := ObjectUnderPoint(x,y); + if ob1=InfoString then + ob1 := nil; + if (ob1<>nil) and (mb=0) then + ChangeInfoStringText(ob1.Text); +end; + +procedure KeyDown(k: Key); +begin + if k=Key.Space then + begin + if CurrentBackColor=Colors.White then + begin + CurrentBackColor := Colors.Black; + InfoString.BorderColor := Colors.White; + end + else + begin + CurrentBackColor := Colors.White; + InfoString.BorderColor := Colors.Black; + end; + Window.Clear(CurrentBackColor); + //RedrawObjects; + end; +end; + +begin + Window.SetSize(1024,768); + //Window.IsFixedSize := True; + Window.CenterOnScreen; + Window.Title := 'Стандартные цвета (нажмите Пробел для изменения фонового цвета)'; + CreateStandardColors(CurrentBackColor); + InfoString := new RectangleWPF(10,Window.Height-30,Window.Width-20,25,Colors.LightGray); + OnMouseMove := MouseMove; + OnMouseDown := MouseDown; + OnMouseUp := MouseUp; + OnKeyDown := KeyDown; +end. diff --git a/Graphics/WPFObjects/gr_Star_Rotate1_WPF.pas b/Graphics/WPFObjects/gr_Star_Rotate1_WPF.pas new file mode 100644 index 0000000..6fcb8e8 --- /dev/null +++ b/Graphics/WPFObjects/gr_Star_Rotate1_WPF.pas @@ -0,0 +1,12 @@ +// Изменение свойств объекта StarWPF +uses WPFObjects; + +begin + var z := new StarWPF(Window.Width / 2, Window.Height / 2, Window.Height / 2 - 5, Window.Height / 4 + 16, 6, Colors.Red); + loop 20 do + begin + Sleep(100); + z.Count += 1; + end; + z.AnimRotate(200,2); +end. diff --git a/Graphics/WPFObjects/gr_Star_Rotate_WPF.pas b/Graphics/WPFObjects/gr_Star_Rotate_WPF.pas new file mode 100644 index 0000000..a871cf6 --- /dev/null +++ b/Graphics/WPFObjects/gr_Star_Rotate_WPF.pas @@ -0,0 +1,16 @@ +// Изменение свойств объекта StarWPF +uses WPFObjects, GraphWPF; + +begin + var z := new StarWPF(Window.Width / 2, Window.Height / 2, Window.Height / 2 - 5, Window.Height / 4 + 16, 6, Colors.Red); + loop 20 do + begin + Sleep(100); + z.Count += 1; + end; + loop 200 do + begin + Sleep(10); + z.Rotate(1); + end; +end. diff --git a/LINQ/Consonants.pas b/LINQ/Consonants.pas new file mode 100644 index 0000000..c73dfef --- /dev/null +++ b/LINQ/Consonants.pas @@ -0,0 +1,7 @@ +// Вывод английских согласных +var vowel: string := 'aeiouy'; + +begin + var all := Range('a','z').JoinIntoString(''); + all.Except(vowel).Println; +end. \ No newline at end of file diff --git a/LINQ/Delimiters.pas b/LINQ/Delimiters.pas new file mode 100644 index 0000000..60a7298 --- /dev/null +++ b/LINQ/Delimiters.pas @@ -0,0 +1,4 @@ +begin + Range(#0,#127).Where(c->char.IsLetterOrDigit(c)).Println; + Range(#0,#127).Where(c->char.IsPunctuation(c)).Println; +end. \ No newline at end of file diff --git a/LINQ/First3Min.pas b/LINQ/First3Min.pas new file mode 100644 index 0000000..58cb148 --- /dev/null +++ b/LINQ/First3Min.pas @@ -0,0 +1,4 @@ +// Первые 3 минимума +begin + ArrRandom(20).Println.Sorted.Distinct.Take(3).Println; +end. \ No newline at end of file diff --git a/LINQ/FunTable.pas b/LINQ/FunTable.pas new file mode 100644 index 0000000..38aa5f5 --- /dev/null +++ b/LINQ/FunTable.pas @@ -0,0 +1,6 @@ +// Вывод таблицы значений функции sin + +begin + PartitionPoints(0,Pi,20).Select(x->Format('({0:f4}, {1:f7})',x,sin(x))).Println(NewLine); +end. + diff --git a/LINQ/Linq1.pas b/LINQ/Linq1.pas new file mode 100644 index 0000000..46e2a8b --- /dev/null +++ b/LINQ/Linq1.pas @@ -0,0 +1,6 @@ +begin + Range(1,20).Select(x->x*x).Println; + PartitionPoints(0.0,1.0,10).Println; + Range('a','z').Println; +end. + diff --git a/LINQ/Linq2.pas b/LINQ/Linq2.pas new file mode 100644 index 0000000..1a5df0a --- /dev/null +++ b/LINQ/Linq2.pas @@ -0,0 +1,13 @@ +function IsPrime(x: integer): boolean; +begin + var sqx := Round(Sqrt(x)); + var i := 2; + while (i <= sqx) and (x mod i <> 0) do + i += 1; + Result := i > sqx; +end; + +begin + Range(2,1000).Where(IsPrime).Print; +end. + diff --git a/LINQ/Linq3.pas b/LINQ/Linq3.pas new file mode 100644 index 0000000..3b3cda4 --- /dev/null +++ b/LINQ/Linq3.pas @@ -0,0 +1,18 @@ +function IsPrime(x: integer): boolean; +begin + var sqx := Round(Sqrt(x)); + var i := 2; + while (i <= sqx) and (x mod i <> 0) do + i += 1; + Result := i > sqx; +end; + +var n := 3000000; + +begin + writeln(Range(2,n).Where(IsPrime).Count); + writeln(Milliseconds); + writeln(Range(2,n).AsParallel.Where(IsPrime).Count); + writeln(MillisecondsDelta); +end. + diff --git a/LINQ/MonteCarlo.pas b/LINQ/MonteCarlo.pas new file mode 100644 index 0000000..67f11a4 --- /dev/null +++ b/LINQ/MonteCarlo.pas @@ -0,0 +1,7 @@ +// Вычисление числа Pi методом Монте-Карло + +begin + var n := 10000000; + var pp := Range(1,n).Select(x->Rec(Random(),Random())).Where(p->sqr(p.Item1)+sqr(p.Item2)<1).Count/n*4; + Print(pp); +end. \ No newline at end of file diff --git a/LINQ/Palindroms.pas b/LINQ/Palindroms.pas new file mode 100644 index 0000000..03f4a42 --- /dev/null +++ b/LINQ/Palindroms.pas @@ -0,0 +1,6 @@ +// Вывести все палиндромы в строке, упорядоченные по длине + +begin + var s := ' hello aha paap zz '; + s.ToWords.Where(w -> w.Inverse = w).OrderBy(s->s.Length).Println(','); +end. \ No newline at end of file diff --git a/LINQ/QuickSortLinq.pas b/LINQ/QuickSortLinq.pas new file mode 100644 index 0000000..c1f7cf9 --- /dev/null +++ b/LINQ/QuickSortLinq.pas @@ -0,0 +1,19 @@ +function QuickSort(a: sequence of integer): sequence of integer; +begin + if a.Count = 0 then + Result := a + else + begin + var head := a.First(); + var tail := a.Skip(1); + Result := QuickSort(tail.Where(x->x<=head)) + + head + + QuickSort(tail.Where(x->x>head)); + end; +end; + +begin + var a := ArrRandom(20); + a.Println; + QuickSort(a).Println; +end. \ No newline at end of file diff --git a/LINQ/Seq.pas b/LINQ/Seq.pas new file mode 100644 index 0000000..c7eb39c --- /dev/null +++ b/LINQ/Seq.pas @@ -0,0 +1,3 @@ +begin + Seq(1,5,3,2,4).Print; +end. \ No newline at end of file diff --git a/LINQ/SumInv.pas b/LINQ/SumInv.pas new file mode 100644 index 0000000..c17199d --- /dev/null +++ b/LINQ/SumInv.pas @@ -0,0 +1,13 @@ +// Сравнение производительности обычного алгоритма накопления суммы +// и метода, использующего лямбда-выражение +begin + var n := 100000000; + var q := Range(1,n).Select(x->1/x).Sum(); + Println(q,MillisecondsDelta); + + var s := 0.0; + for var i:=1 to n do + s += 1.0/i; + + Println(s,MillisecondsDelta); +end. \ No newline at end of file diff --git a/LINQ/TextFileCount.pas b/LINQ/TextFileCount.pas new file mode 100644 index 0000000..0f9d80b --- /dev/null +++ b/LINQ/TextFileCount.pas @@ -0,0 +1,7 @@ +begin + var d := new Dictionary; + foreach var s in ReadLines('TextFileCount.pas') do + foreach var word in s.ToWords(' ',':',')','(',';','''',',','.','=','<','>','[',']','+','-') do + d[word] := d.Get(word) + 1; + d.Print(NewLine); +end. \ No newline at end of file diff --git a/LINQ/TextFileCount1.pas b/LINQ/TextFileCount1.pas new file mode 100644 index 0000000..087d9a2 --- /dev/null +++ b/LINQ/TextFileCount1.pas @@ -0,0 +1,8 @@ +begin + var d := Dict('begin' => 0); + var delims := Seq(' ',')','(',';','''',',','.','[',']',#10,#13); + var words := ReadAllText('TextFileCount1.pas').ToWords(delims); + foreach var word in words do + d[word] := d.Get(word) + 1; + d.Print(NewLine); +end. \ No newline at end of file diff --git a/LINQ/Zip.pas b/LINQ/Zip.pas new file mode 100644 index 0000000..add9cd1 --- /dev/null +++ b/LINQ/Zip.pas @@ -0,0 +1,5 @@ +begin + var a := Seq(1,5,3,2,4); + var b := Seq(2,3,4,1,6); + a.Zip(b,(x,y)->x*y).Print; +end. \ No newline at end of file diff --git a/LINQ/Zip2.pas b/LINQ/Zip2.pas new file mode 100644 index 0000000..54eb378 --- /dev/null +++ b/LINQ/Zip2.pas @@ -0,0 +1,4 @@ +begin + var a := Seq(1,5,3,2,4); + a.Zip(a.Skip(1),(x,y)->y-x).Print; +end. \ No newline at end of file diff --git a/LanguageFeatures/AutoClassPoint.pas b/LanguageFeatures/AutoClassPoint.pas new file mode 100644 index 0000000..4f31fce --- /dev/null +++ b/LanguageFeatures/AutoClassPoint.pas @@ -0,0 +1,13 @@ +type + Point = auto class + x,y: integer; + procedure MoveBy(dx,dy: integer) := (x,y) := (x+dx,y+dy); + function Distance(p: Point) := sqrt(sqr(x-p.x)+sqr(y-p.y)); + class function operator implicit(t: (integer,integer)): Point := new Point(t[0],t[1]); + end; + +begin + var p: Point; + p := (2,3); + Println(p); +end. \ No newline at end of file diff --git a/LanguageFeatures/Boxing.pas b/LanguageFeatures/Boxing.pas new file mode 100644 index 0000000..8f7eec8 --- /dev/null +++ b/LanguageFeatures/Boxing.pas @@ -0,0 +1,22 @@ +// Упаковка-распаковка размерных типов +var + i: integer := 2; + r: real := 3.14; + o: object; + +begin + o := i; // Упаковка: объект размерного типа integer упаковывается в объект ссылочного типа, + // котрый и присваивается переменной o + // Преобразование типов при упаковке - неявное + writeln(integer(o)); // Распаковка: из упакованного объекта извлекается значение + // Преобразование типов при распаковке - явное + o := r; + writeln(real(o)); + + try // При неверном преобразовании типов генерируется исключение InvalidCastException + writeln(shortint(o)); + except + on e: Exception do + writeln(e.GetType); + end; +end. \ No newline at end of file diff --git a/LanguageFeatures/ClassConstructor.pas b/LanguageFeatures/ClassConstructor.pas new file mode 100644 index 0000000..c9f9d8d --- /dev/null +++ b/LanguageFeatures/ClassConstructor.pas @@ -0,0 +1,36 @@ +// Иллюстрация использования статических (классовых) конструкторов +type + Person = class + private + class arr: array of Person; // Классовое поле. Связано не с переменной класса, а с классом. + name: string; + age: integer; + public + class constructor; // Конструктор класса. Вызывается до создания первого объекта класса и до вызова любого классового метода + begin + writeln(' Вызван классовый конструктор'); + SetLength(arr,3); + arr[0] := new Person('Иванов',20); + arr[1] := new Person('Петрова',19); + arr[2] := new Person('Попов',35); + end; + constructor (n: string; a: integer); + begin + name := n; + age := a; + end; + function ToString: string; override; + begin + Result := Format('Имя: {0} Возраст: {1}',name,age); + end; + class function RandomPerson: Person; // Классовый метод. Может обращаться только к классовым полям + begin + Result := arr[Random(3)]; + end; + end; + +begin + writeln('Случайные персоны'); + for var i:=1 to 5 do + writeln(Person.RandomPerson); // Вызов классового метода +end. \ No newline at end of file diff --git a/LanguageFeatures/DiapasonOperation/diapAll.pas b/LanguageFeatures/DiapasonOperation/diapAll.pas new file mode 100644 index 0000000..be88686 --- /dev/null +++ b/LanguageFeatures/DiapasonOperation/diapAll.pas @@ -0,0 +1,12 @@ +begin + var diap := 'a'..'z'; + Println(diap); + var g := 3 in 1..5; + Println(g); + foreach var x in 1..10 do + Print(x); + var a := Arr(1..5); + var h := HSet(1..5); + Println(a,h); + (1..9).Select(x->x*x).Println; +end. \ No newline at end of file diff --git a/LanguageFeatures/DllTest/MyDll.dll b/LanguageFeatures/DllTest/MyDll.dll new file mode 100644 index 0000000000000000000000000000000000000000..9a9c8f82715d6198e732ca50e3316357d55290ce GIT binary patch literal 16384 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 + +begin + for var i:=1 to n do + a[i] := Random(100); + // Цикл foreach по статическому массиву + foreach var x in a do + Print(x); + writeln; + + SetLength(b,n); + for var i:=0 to n-1 do + b[i] := Random(100); + + // Цикл foreach по динамическому массиву + foreach var x in b do + Print(x); + writeln; + + s := [2..5,10..14]; + // Цикл foreach по множеству + foreach var x in s do + Print(x); + writeln; + + l := new List; + l.AddRange(b); + l.Reverse; + // Цикл foreach по списку + foreach var x in l do + Print(x); + writeln; + +end. \ No newline at end of file diff --git a/LanguageFeatures/ForeachForSet.pas b/LanguageFeatures/ForeachForSet.pas new file mode 100644 index 0000000..08b831e --- /dev/null +++ b/LanguageFeatures/ForeachForSet.pas @@ -0,0 +1,5 @@ +// Цикл по множеству. Порядок - не по алфавиту, поскольку множества реализованы на базе хеш-таблиц +begin + foreach var c in ['a'..'z'] do + Write(c); +end. \ No newline at end of file diff --git a/LanguageFeatures/ForeachIEnumerable.pas b/LanguageFeatures/ForeachIEnumerable.pas new file mode 100644 index 0000000..77d0b75 --- /dev/null +++ b/LanguageFeatures/ForeachIEnumerable.pas @@ -0,0 +1,46 @@ +// Пример иллюстрирует реализацию классом интерфейса IEnumerable +// для использования его в операторе foreach +type + // Генератор чисел Фибоначчи + FibGen = class(IEnumerable, IEnumerator) + private + a,b,n,i: integer; + public + constructor Create(n: integer); + begin + i := -1; + a := 0; + b := 1; + Self.n := n; + end; + function Get_Current: integer; + begin + if i=0 then + Result := 1 + else Result := b; + end; + function System.Collections.IEnumerator.Get_Current: object := Get_Current; + function GetEnumerator: IEnumerator := Self; + function System.Collections.IEnumerable.GetEnumerator: System.Collections.IEnumerator := Self; + function MoveNext: boolean; + begin + i += 1; + Result := i = class + private + a: array of T; + last: integer; + public + constructor Create(sz: integer); + begin + SetLength(a,sz); + last := 0; + end; + constructor Create; + begin + Create(100); + end; + procedure push(i: T); + begin + a[last] := i; + Inc(last); + end; + function pop: T; + begin + Dec(last); + pop := a[last]; + end; + function top: T; + begin + top := a[last-1]; + end; + function empty: boolean; + begin + Result := (last=0); + end; + function ToString: string; override; + begin + Result := ''; + for var i:=0 to last-1 do + Result += a[i]+' '; + end; + end; + +var s: Stack; + +begin + s := new Stack; + s.push(7); + s.push(2); + s.push(5); + s.push(4); + writeln(s); + while not s.empty do + write(s.pop,' '); +end. + + diff --git a/LanguageFeatures/Generics/GenericProcFun/FindT.pas b/LanguageFeatures/Generics/GenericProcFun/FindT.pas new file mode 100644 index 0000000..c275256 --- /dev/null +++ b/LanguageFeatures/Generics/GenericProcFun/FindT.pas @@ -0,0 +1,21 @@ +// Обобщенные функции +// Выведение типа T по типам параметров + +function IndexOf(a: array of T; val: T): integer; +begin + Result := -1; + for var i:=0 to a.Length-1 do + if a[i]=val then + begin + Result := i; + exit; + end; +end; + +var a := Arr('Ваня', 'Коля', 'Саша', 'Сережа'); + +begin + var s := 'Сережа'; + writelnFormat('Индекс элемент со значением ''{0}'' равен {1}',s,IndexOf(a,s)); +end. + diff --git a/LanguageFeatures/Generics/GenericProcFun/SwapT.pas b/LanguageFeatures/Generics/GenericProcFun/SwapT.pas new file mode 100644 index 0000000..f8b0bca --- /dev/null +++ b/LanguageFeatures/Generics/GenericProcFun/SwapT.pas @@ -0,0 +1,17 @@ +// Обобщенные функции +// Выведение типа T по типам параметров + +procedure Swap(var a,b: T); +begin + var v := a; + a := b; + b := v; +end; + +begin + var a := 2; + var b := 3; + writelnFormat('До Swap a={0}, b={1}',a,b); + Swap(a,b); + writelnFormat('После Swap a={0}, b={1}',a,b); +end. \ No newline at end of file diff --git a/LanguageFeatures/IfThenElseExpr.pas b/LanguageFeatures/IfThenElseExpr.pas new file mode 100644 index 0000000..8b64f17 --- /dev/null +++ b/LanguageFeatures/IfThenElseExpr.pas @@ -0,0 +1,6 @@ +begin + var (a,b) := (2,3); + var min: integer; + min := if a0 then + if y>0 then + 1 + else 4 + else + if y>0 then + 2 + else 3; + + Print(q) +end. \ No newline at end of file diff --git a/LanguageFeatures/IndexProperties.pas b/LanguageFeatures/IndexProperties.pas new file mode 100644 index 0000000..649f9c6 --- /dev/null +++ b/LanguageFeatures/IndexProperties.pas @@ -0,0 +1,74 @@ +// Индексные свойства. Массив цветных квадратов +uses GraphABC; + +const + sz = 50; + dim = 10; + delay = 500; + +type + /// + VisualArray = class + private + a: array of Color; + procedure SetItem(i: integer; x: Color); // Процедура, устанавливающая цвет i-того квадрата + begin + if (i<0) or (i>=a.Length) then + raise new System.ArgumentException('Выход за границы изменения индекса: '+IntToStr(i)); + a[i] := x; + Draw(i); + end; + function GetItem(i: integer): Color; // Функция, возвращающая цвет i-того квадрата + begin + if (i<0) or (i>=a.Length) then + raise new System.ArgumentException('Выход за границы изменения индекса: '+IntToStr(i)); + Result := a[i]; + end; + public + constructor (n: integer); + begin + a := ArrFill(n,Color.White); + Draw; + end; + /// Рисует i-тый квадрат + procedure Draw(i: integer); + begin + Brush.Color := a[i]; + Rectangle(sz+sz*i,sz,sz+sz*(i+1)+1,sz+sz); + end; + /// Рисует массив цветных квадратов + procedure Draw; + begin + for var i:=0 to a.Length-1 do + Draw(i); + end; + /// Индексное свойство по умолчанию + property Item[i: integer]: Color read GetItem write SetItem; default; + end; + +var arr: VisualArray; + +begin + Window.Title := 'Иллюстрация индексных свойств'; + arr := new VisualArray(dim); + Window.SetSize(sz*(dim+2),3*sz); + arr[0] := clGreen; // arr.Items[0] = arr[0] поскольку свойство Items является свойством по умолчанию + Sleep(delay); + arr[1] := clBlack; + Sleep(delay); + arr[2] := clYellow; + Sleep(delay); + arr[3] := clGray; + Sleep(delay); + arr[4] := clRed; + Sleep(delay); + arr[5] := clMagenta; + Sleep(delay); + arr[6] := clBrown; + Sleep(delay); + arr[7] := clMoneyGreen; + Sleep(delay); + arr[8] := clOlive; + Sleep(delay); + arr[9] := clLinen; +end. \ No newline at end of file diff --git a/LanguageFeatures/Lambdas/IntIntInt.pas b/LanguageFeatures/Lambdas/IntIntInt.pas new file mode 100644 index 0000000..a70918f --- /dev/null +++ b/LanguageFeatures/Lambdas/IntIntInt.pas @@ -0,0 +1,6 @@ +type int = integer; + +begin + var f: int -> int -> int := i -> j -> i*j; + MatrGen(10,10,(i,j)->f(i)(j)).Println; +end. \ No newline at end of file diff --git a/LanguageFeatures/ParamsConcat.pas b/LanguageFeatures/ParamsConcat.pas new file mode 100644 index 0000000..b36c1ed --- /dev/null +++ b/LanguageFeatures/ParamsConcat.pas @@ -0,0 +1,13 @@ +// Создание функции Concat с переменным числом параметров + +function Concat(params strs: array of string): string; +begin + var sb := new StringBuilder; + foreach var x in strs do + sb.Append(x); + Result := sb.ToString; +end; + +begin + Writeln(Concat('Pascal','ABC','.NET')); +end. \ No newline at end of file diff --git a/LanguageFeatures/ParamsWriteln.pas b/LanguageFeatures/ParamsWriteln.pas new file mode 100644 index 0000000..ee15d78 --- /dev/null +++ b/LanguageFeatures/ParamsWriteln.pas @@ -0,0 +1,17 @@ +// Создание процедуры MyWriteln с переменным числом параметров + +procedure MyWriteln(params args: array of object); +begin + foreach var x in args do + Write(x); + WriteLn; +end; + +var + a: integer := 777; + b: boolean := True; + r: real := 3.1415; + +begin + MyWriteln(a,' ',b,' ',r); +end. \ No newline at end of file diff --git a/LanguageFeatures/Pattern Matching/ArithmEval.pas b/LanguageFeatures/Pattern Matching/ArithmEval.pas new file mode 100644 index 0000000..f6d3cf9 --- /dev/null +++ b/LanguageFeatures/Pattern Matching/ArithmEval.pas @@ -0,0 +1,38 @@ +type + Expr = interface + end; + Cons = auto class(Expr) + r: real; + end; + Add = auto class(Expr) + left,right: Expr; + end; + Mult = auto class(Expr) + left,right: Expr; + end; + Neg = auto class(Expr) + ex: Expr; + end; + +// Создающие функции +function ConsC(r: real) := new Cons(r); +function AddC(l,r: Expr) := new Add(l,r); +function MultC(l,r: Expr) := new Mult(l,r); +function NegC(ex: Expr) := new Neg(ex); + +// Вычисляющая функция +function Eval(e: Expr): real; +begin + match e with + Cons(c): Result := c; + Neg(n): Result := -Eval(n); + Add(l,r): Result := Eval(l) + Eval(r); + Mult(l,r): Result := Eval(l) * Eval(r); + end; +end; + +begin + // -2 + 3 * 4 + var r := AddC(NegC(ConsC(2)),MultC(ConsC(3),ConsC(4))); + Eval(r).Print; +end. \ No newline at end of file diff --git a/LanguageFeatures/Pattern Matching/ArithmSimplify.pas b/LanguageFeatures/Pattern Matching/ArithmSimplify.pas new file mode 100644 index 0000000..3e19408 --- /dev/null +++ b/LanguageFeatures/Pattern Matching/ArithmSimplify.pas @@ -0,0 +1,76 @@ +type + Expr = interface + end; + V = auto class(Expr) + name: string; + end; + Cons = auto class(Expr) + r: real; + end; + Add = auto class(Expr) + left,right: Expr; + end; + Mult = auto class(Expr) + left,right: Expr; + end; + Neg = auto class(Expr) + ex: Expr; + end; + +function NegC(ex: Expr) := new Neg(ex); +function ConsC(r: real) := new Cons(r); +function AddC(ex1,ex2: Expr) := new Add(ex1,ex2); +function MultC(ex1,ex2: Expr) := new Mult(ex1,ex2); +function VC(name: string) := new V(name); + +function Simplify(e: Expr): Expr; forward; + +function Simplify1(e: Expr): Expr; +begin + match e with + Mult(Cons(c),Cons(c1)): Result := ConsC(c*c1); + Mult(Cons(1.0),ex): Result := Simplify(ex); + Mult(Cons(0.0),ex): Result := ConsC(0); + Add(Cons(0.0),ex): Result := Simplify(ex); + Add(ex,Cons(0.0)): Result := Simplify(ex); + Add(Cons(c),Cons(c1)): Result := ConsC(c+c1); + Add(Cons(c),ex): Result := AddC(ex,ConsC(c)); // константы - в хвосте! + Mult(Cons(c),ex): Result := MultC(ex,ConsC(c)); + Add(Add(ex,Cons(c)),Cons(c1)): Result := AddC(ex,ConsC(c+c1)); // ассоциативность + Mult(Mult(ex,Cons(c)),Cons(c1)): Result := MultC(ex,ConsC(c*c1)); // ассоциативность + Neg(Cons(c)): Result := ConsC(-c); + else Result := e; + end; +end; + +function Simplify(e: Expr): Expr; +begin + match e with + Mult(e1,e2): Result := Simplify1(MultC(Simplify(e1),Simplify(e2))); + Add(e1,e2): Result := Simplify1(AddC(Simplify(e1),Simplify(e2))); + Neg(e1): Result := Simplify1(NegC(Simplify(e1))); + else Result := e; + end; +end; + +function Str(e: Expr): string; +begin + match e with + Mult(l,r): Result := Str(l) + ' * ' + Str(r); + Add(l,r): Result := Str(l) + ' + ' + Str(r); + Neg(n): Result := '-' + Str(n); + Cons(c): Result := c.ToString; + V(x): Result := x; + end; +end; + + +begin + // 0 + 1*x + 1 + 0*(2 + a) + 2 + var r: Expr := AddC(ConsC(1),AddC(MultC(ConsC(1),VC('x')),ConsC(1))); + r := AddC(r,MultC(ConsC(0),AddC(ConsC(2),VC('a')))); + r := AddC(r,ConsC(2)); + Str(r).Println; + r := Simplify(r); + Str(r).Println; +end. \ No newline at end of file diff --git a/LanguageFeatures/Pattern Matching/MatchDelegate.pas b/LanguageFeatures/Pattern Matching/MatchDelegate.pas new file mode 100644 index 0000000..72da623 --- /dev/null +++ b/LanguageFeatures/Pattern Matching/MatchDelegate.pas @@ -0,0 +1,12 @@ +begin + var s: real->real := x -> x * x; + var add: (real,real)->real := (x, y)-> x + y; + + // Делегат может хранить процедурную переменную любого типа! + var d: System.Delegate := s; + d := add; + match d with + Func(var i): Print(i(2)); + Func2(var i): Print(i(2,3)); + end; +end. \ No newline at end of file diff --git a/LanguageFeatures/Pattern Matching/MatchWithTupleWhen.pas b/LanguageFeatures/Pattern Matching/MatchWithTupleWhen.pas new file mode 100644 index 0000000..7c09986 --- /dev/null +++ b/LanguageFeatures/Pattern Matching/MatchWithTupleWhen.pas @@ -0,0 +1,8 @@ +begin + var (a,b) := (3,2); + match (a,b) with + (var x,var y) when x < y: Print('a < b'); + (var x,var y) when x = y: Print('a = b'); + (var x,var y) when x > y: Print('a > b'); + end; +end. \ No newline at end of file diff --git a/LanguageFeatures/Pattern Matching/Squares.pas b/LanguageFeatures/Pattern Matching/Squares.pas new file mode 100644 index 0000000..c06e173 --- /dev/null +++ b/LanguageFeatures/Pattern Matching/Squares.pas @@ -0,0 +1,22 @@ +type + Line = class + end; + Rectangle = auto class + X,Y,Width,Height: real; + end; + Circle = auto class + X,Y,Radius: real; + end; + +begin + var l := new List; + l.Add(new Line); + l.Add(new Circle(10,10,5)); + l.Add(new Rectangle(10,10,20,10)); + foreach var x in l do + match x with + Line(var ll): Println('Line S =',0); + Circle(var c): Println('Circle S =',c.Radius*c.Radius*Pi); + Rectangle(var r): Println('Rectangle S =',r.Width*r.Height); + end; +end. \ No newline at end of file diff --git a/LanguageFeatures/Pattern Matching/UserDefinedDeconstruct.pas b/LanguageFeatures/Pattern Matching/UserDefinedDeconstruct.pas new file mode 100644 index 0000000..044339b --- /dev/null +++ b/LanguageFeatures/Pattern Matching/UserDefinedDeconstruct.pas @@ -0,0 +1,27 @@ +type + Person = class + name: string; + age: integer; + + constructor(name: string; age: integer); + begin + self.name := name; + self.age := age; + end; + + procedure Deconstruct(var name: string; var age: integer); + begin + name := self.name; + age := self.age; + end; + end; + +begin + var p := new Person('Петр', 25); + if p is Person(var name, var age) then + Println(name, age); + + match p with + Person(name,age): Println(name,age); + end; +end. \ No newline at end of file diff --git a/LanguageFeatures/Pattern Matching/UserDefinedDeconstructAsExtension.pas b/LanguageFeatures/Pattern Matching/UserDefinedDeconstructAsExtension.pas new file mode 100644 index 0000000..89b4878 --- /dev/null +++ b/LanguageFeatures/Pattern Matching/UserDefinedDeconstructAsExtension.pas @@ -0,0 +1,20 @@ +// Деконструктор как метод расширения + +procedure Deconstruct(Self: integer; var a: integer; var b: integer); extensionmethod; +begin + a := Self div 10; + b := Self mod 10; +end; + + +begin + var i := 25; + if i is integer(var a, var b) then + Println(a,b); + + i := 9; + match i with + integer(a,b) when i>=10: Println(a,b); + integer(a): Println(a); // деконструктор по умолчанию + end; +end. \ No newline at end of file diff --git a/LanguageFeatures/ProcParam.pas b/LanguageFeatures/ProcParam.pas new file mode 100644 index 0000000..3555e1b --- /dev/null +++ b/LanguageFeatures/ProcParam.pas @@ -0,0 +1,20 @@ +// Иллюстрация процедурных переменных как параметров подпрограмм +// Для процедурного типа в PascalABC.NET реализована структурная эквивалентность типов +// Процедурный тип реализован через делегаты .NET +procedure for_each(a: array of real; p: procedure(var r: real)); +begin + for var i := 0 to a.Length-1 do + p(a[i]); +end; + +procedure mult2(var r: real) := r := 2*r; + +procedure print(var r: real) := write(r,' '); + +var a: array of real := (1,2,3,6,7); + +begin + for_each(a,print); writeln; + for_each(a,mult2); + for_each(a,print); +end. \ No newline at end of file diff --git a/LanguageFeatures/ProcVars.pas b/LanguageFeatures/ProcVars.pas new file mode 100644 index 0000000..6a4e88d --- /dev/null +++ b/LanguageFeatures/ProcVars.pas @@ -0,0 +1,36 @@ +// Все возможные способы инициализации поцедурной переменной +// Процедурный тип реализован через делегаты .NET, для него доступны операции +=, -= + +procedure pp; +begin + writeln('Вызов обычной процедуры'); +end; + +type + A = class + private + x: integer; + public + constructor Create(xx: integer); + begin + x := xx; + end; + procedure pp; + begin + writeln('Вызов метода класса, значение поля равно ',x); + end; + class procedure ppstatic; + begin + writeln('Вызов классового метода класса'); + end; + end; + +var p: procedure; + +begin + p := pp; + var a1: A := new A(5); + p += a1.pp; + p += A.ppstatic; + p; +end. \ No newline at end of file diff --git a/LanguageFeatures/QuestionColonTypes.pas b/LanguageFeatures/QuestionColonTypes.pas new file mode 100644 index 0000000..0ea5c29 --- /dev/null +++ b/LanguageFeatures/QuestionColonTypes.pas @@ -0,0 +1,176 @@ +begin + var i0: shortint; + var i1: byte; + var i2: smallint; + var i3: word; + var i4: integer; + var i5: longword; + var i6: int64; + var i7: uint64; + var i8: BigInteger; + var i9: single; + var ia: real; + var ib: decimal; + + var n := 12; + + var b := new string[12,12]; + + b[0,0] := (True ? i0 : i0).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[0,1] := (True ? i0 : i1).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[0,2] := (True ? i0 : i2).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[0,3] := (True ? i0 : i3).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[0,4] := (True ? i0 : i4).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[0,5] := (True ? i0 : i5).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[0,6] := (True ? i0 : i6).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[0,7] := (True ? i0 : i7).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[0,8] := (True ? i0 : i8).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[0,9] := (True ? i0 : i9).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[0,10] := (True ? i0 : ia).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[0,11] := (True ? i0 : ib).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + + b[1,0] := (True ? i1 : i0).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[1,1] := (True ? i1 : i1).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[1,2] := (True ? i1 : i2).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[1,3] := (True ? i1 : i3).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[1,4] := (True ? i1 : i4).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[1,5] := (True ? i1 : i5).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[1,6] := (True ? i1 : i6).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[1,7] := (True ? i1 : i7).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[1,8] := (True ? i1 : i8).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[1,9] := (True ? i1 : i9).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[1,10] := (True ? i1 : ia).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[1,11] := (True ? i1 : ib).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + + b[2,0] := (True ? i2 : i0).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[2,1] := (True ? i2 : i1).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[2,2] := (True ? i2 : i2).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[2,3] := (True ? i2 : i3).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[2,4] := (True ? i2 : i4).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[2,5] := (True ? i2 : i5).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[2,6] := (True ? i2 : i6).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[2,7] := (True ? i2 : i7).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[2,8] := (True ? i2 : i8).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[2,9] := (True ? i2 : i9).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[2,10] := (True ? i2 : ia).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[2,11] := (True ? i2 : ib).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + + b[3,0] := (True ? i3 : i0).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[3,1] := (True ? i3 : i1).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[3,2] := (True ? i3 : i2).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[3,3] := (True ? i3 : i3).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[3,4] := (True ? i3 : i4).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[3,5] := (True ? i3 : i5).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[3,6] := (True ? i3 : i6).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[3,7] := (True ? i3 : i7).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[3,8] := (True ? i3 : i8).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[3,9] := (True ? i3 : i9).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[3,10] := (True ? i3 : ia).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[3,11] := (True ? i3 : ib).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + + b[4,0] := (True ? i4 : i0).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[4,1] := (True ? i4 : i1).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[4,2] := (True ? i4 : i2).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[4,3] := (True ? i4 : i3).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[4,4] := (True ? i4 : i4).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[4,5] := (True ? i4 : i5).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[4,6] := (True ? i4 : i6).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[4,7] := (True ? i4 : i7).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[4,8] := (True ? i4 : i8).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[4,9] := (True ? i4 : i9).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[4,10] := (True ? i4 : ia).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[4,11] := (True ? i4 : ib).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + + b[5,0] := (True ? i5 : i0).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[5,1] := (True ? i5 : i1).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[5,2] := (True ? i5 : i2).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[5,3] := (True ? i5 : i3).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[5,4] := (True ? i5 : i4).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[5,5] := (True ? i5 : i5).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[5,6] := (True ? i5 : i6).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[5,7] := (True ? i5 : i7).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[5,8] := (True ? i5 : i8).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[5,9] := (True ? i5 : i9).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[5,10] := (True ? i5 : ia).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[5,11] := (True ? i5 : ib).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + + b[6,0] := (True ? i6 : i0).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[6,1] := (True ? i6 : i1).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[6,2] := (True ? i6 : i2).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[6,3] := (True ? i6 : i3).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[6,4] := (True ? i6 : i4).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[6,5] := (True ? i6 : i5).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[6,6] := (True ? i6 : i6).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[6,7] := (True ? i6 : i7).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[6,8] := (True ? i6 : i8).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[6,9] := (True ? i6 : i9).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[6,10] := (True ? i6 : ia).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[6,11] := (True ? i6 : ib).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + + b[7,0] := (True ? i7 : i0).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[7,1] := (True ? i7 : i1).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[7,2] := (True ? i7 : i2).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[7,3] := (True ? i7 : i3).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[7,4] := (True ? i7 : i4).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[7,5] := (True ? i7 : i5).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[7,6] := (True ? i7 : i6).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[7,7] := (True ? i7 : i7).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[7,8] := (True ? i7 : i8).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[7,9] := (True ? i7 : i9).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[7,10] := (True ? i7 : ia).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[7,11] := (True ? i7 : ib).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + + b[8,0] := (True ? i8 : i0).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[8,1] := (True ? i8 : i1).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[8,2] := (True ? i8 : i2).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[8,3] := (True ? i8 : i3).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[8,4] := (True ? i8 : i4).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[8,5] := (True ? i8 : i5).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[8,6] := (True ? i8 : i6).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[8,7] := (True ? i8 : i7).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[8,8] := (True ? i8 : i8).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[8,9] := '--'.PadLeft(n); + b[8,10] := '--'.PadLeft(n); + b[8,11] := '--'.PadLeft(n); + + b[9,0] := (True ? i9 : i0).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[9,1] := (True ? i9 : i1).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[9,2] := (True ? i9 : i2).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[9,3] := (True ? i9 : i3).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[9,4] := (True ? i9 : i4).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[9,5] := (True ? i9 : i5).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[9,6] := (True ? i9 : i6).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[9,7] := (True ? i9 : i7).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[9,8] := '--'.PadLeft(n); + b[9,9] := (True ? i9 : i9).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[9,10] := (True ? i9 : ia).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[9,11] := '--'.PadLeft(n); + + b[10,0] := (True ? ia : i0).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[10,1] := (True ? ia : i1).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[10,2] := (True ? ia : i2).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[10,3] := (True ? ia : i3).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[10,4] := (True ? ia : i4).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[10,5] := (True ? ia : i5).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[10,6] := (True ? ia : i6).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[10,7] := (True ? ia : i7).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[10,8] := '--'.PadLeft(n); + b[10,9] := (True ? ia : i9).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[10,10] := (True ? ia : ia).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[10,11] := '--'.PadLeft(n); + + b[11,0] := (True ? ib : i0).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[11,1] := (True ? ib : i1).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[11,2] := (True ? ib : i2).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[11,3] := (True ? ib : i3).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[11,4] := (True ? ib : i4).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[11,5] := (True ? ib : i5).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[11,6] := (True ? ib : i6).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[11,7] := (True ? ib : i7).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + b[11,8] := '--'.PadLeft(n); + b[11,9] := '--'.PadLeft(n); + b[11,10] := '--'.PadLeft(n); + b[11,11] := (True ? ib : ib).GetType.ToString.Substring(7).ToWords('.').Last.PadLeft(n); + + b.Println(8); +end. \ No newline at end of file diff --git a/LanguageFeatures/ShortTypesInTemplateParams.pas b/LanguageFeatures/ShortTypesInTemplateParams.pas new file mode 100644 index 0000000..3410bd2 --- /dev/null +++ b/LanguageFeatures/ShortTypesInTemplateParams.pas @@ -0,0 +1,19 @@ +begin + var q := new Queue<(integer,integer)>; + q.Enqueue((1,2)); + q.Enqueue((2,5)); + q.Println; + Println(q); + + var l := new Listinteger>; + l.Add(x->x); + l.Add(x->x*x); + l.ForEach(f->Print(f(5))); + Println; + + var l1 := new List<(integer,integer)->integer>; + l1.Add((x,y)->x+y); + l1.Add((x,y)->x-y); + l1.Add((x,y)->x*y); + l1.ForEach(f->Print(f(2,3))); +end. \ No newline at end of file diff --git a/LanguageFeatures/Students.pas b/LanguageFeatures/Students.pas new file mode 100644 index 0000000..a90af77 --- /dev/null +++ b/LanguageFeatures/Students.pas @@ -0,0 +1,22 @@ +// Перегрузка операторов +type + Student = auto class + Name: string; + Height: integer; + public + // Сравнение по росту + class function operator<(left,right: Student): boolean := left.Height < right.Height; + class function operator>(left,right: Student): boolean := left.Height > right.Height; + function ToString: string; override := string.Format('{0} ({1})', Name, Height); + end; + +begin + var s1 := new Student('Stepa Morkovkin',188); + var s2 := new Student('Petya Pomidorov',180); + Writeln('s1: ',s1); + Writeln('s2: ',s2); + Writeln; + Writeln('s1(s1,s2): ',Student.operator>(s1,s2)); +end. \ No newline at end of file diff --git a/LanguageFeatures/Tuples/MySqrt.pas b/LanguageFeatures/Tuples/MySqrt.pas new file mode 100644 index 0000000..a976c51 --- /dev/null +++ b/LanguageFeatures/Tuples/MySqrt.pas @@ -0,0 +1,14 @@ +function MySqrt(x: real): real; +begin + var eps := 1e-15; + (var a, var b) := (x, real.MaxValue); + while abs(b-a) >= eps do + (a,b) := (b,(a + x / a) / 2); + Result := b; +end; + +begin + Println(MySqrt(2)); + Println(MySqrt(3)); + Println(MySqrt(4)); +end. \ No newline at end of file diff --git a/LanguageFeatures/WriteCycledLinkedList.pas b/LanguageFeatures/WriteCycledLinkedList.pas new file mode 100644 index 0000000..2a2d42e --- /dev/null +++ b/LanguageFeatures/WriteCycledLinkedList.pas @@ -0,0 +1,19 @@ +type + Node = class + public + data: T; + next: Node; + constructor (d: T; n: Node); + begin + data := d; + next := n; + end; + end; + +begin + var n1 := new Node(5,nil); + var n2 := new Node(6,n1); + writeln(n2); + n1.next := n2; + writeln(n2); +end. \ No newline at end of file diff --git a/LanguageFeatures/WriteRecord.pas b/LanguageFeatures/WriteRecord.pas new file mode 100644 index 0000000..d35db74 --- /dev/null +++ b/LanguageFeatures/WriteRecord.pas @@ -0,0 +1,26 @@ +// Иллюстрация конструкторов и методов в записях +// Если переопределен метод ToString, то он вызывается при выводе объекта этого типа процедурой writeln +type + SexType = (Male, Female); + Person = record + Name: string; + Age, Weight: integer; + Sex: SexType; + constructor (Name: string; Age, Weight: integer; Sex: SexType); + begin + Self.Name := Name; + Self.Age := Age; + Self.Sex := Sex; + Self.Weight := Weight; + end; + function ToString: string; override; + begin + Result := string.Format('Имя: {0} Возраст: {1} Вес: {2} Пол: {3}', Name, Age, Weight, Sex); + end; + end; + +var p: Person := new Person('Иванов',20,70,SexType.Male); + +begin + writeln(p); +end. diff --git a/LanguageFeatures/Yields/InfixTraverseTree.pas b/LanguageFeatures/Yields/InfixTraverseTree.pas new file mode 100644 index 0000000..e56cb7f --- /dev/null +++ b/LanguageFeatures/Yields/InfixTraverseTree.pas @@ -0,0 +1,20 @@ +type Node = auto class + data: T; + left,right: Node; +end; + +function CNode(x: T; l: Node := nil; + r: Node := nil): Node := new Node(x,l,r); + +function Infix(root: Node): sequence of T; +begin + if root = nil then exit; + yield sequence Infix(root.left); + yield root.data; + yield sequence Infix(root.right); +end; + +begin + var root := CNode(1,CNode(2,CNode(3),CNode(4)),CNode(5)); + Infix(root).Print; +end. \ No newline at end of file diff --git a/NETLibraries/NET4.0/BigIntegerExample.pas b/NETLibraries/NET4.0/BigIntegerExample.pas new file mode 100644 index 0000000..fb473bc --- /dev/null +++ b/NETLibraries/NET4.0/BigIntegerExample.pas @@ -0,0 +1,12 @@ +// Использование длинных целых. Вычисление 100! +{$reference 'System.Numerics.dll'} +uses System.Numerics; + +var n := 100; + +begin + var f := new BigInteger(1); + for var i:=2 to n do + f := f * i; + writelnFormat('{0}! = {1}',n,f); +end. \ No newline at end of file diff --git a/NETLibraries/NET4.0/ComplexExample.pas b/NETLibraries/NET4.0/ComplexExample.pas new file mode 100644 index 0000000..818b4fe --- /dev/null +++ b/NETLibraries/NET4.0/ComplexExample.pas @@ -0,0 +1,17 @@ +// Использование комплексных чисел +{$reference 'System.Numerics.dll'} +uses System.Numerics; + +begin + var a := new Complex(0,1); + writeln('Мнимая единица: ', a); + + var b := Complex.Sqrt(a); + writeln('Главный корень из мнимой единицы: ', b); + + var c := a*a; + writeln('Квадрат мнимой единицы: ', c); + + var d := new Complex(1,2); + writelnFormat('Модуль {0} равен {1}', d,d.Magnitude); +end. \ No newline at end of file diff --git a/NETLibraries/NET4.0/StopWatch.pas b/NETLibraries/NET4.0/StopWatch.pas new file mode 100644 index 0000000..98c6be5 --- /dev/null +++ b/NETLibraries/NET4.0/StopWatch.pas @@ -0,0 +1,11 @@ +// Stopwatch - класс высокоточного таймера (с точностью до 0.001 с) +begin + var stopWatch := new System.Diagnostics.Stopwatch; + stopWatch.Start; + + Sleep(123); + + stopWatch.Stop; + var ts := stopWatch.Elapsed; + writelnFormat('Время работы: {0:00}:{1:00}:{2:00}.{3:000}',ts.Hours, ts.Minutes, ts.Seconds, ts.Milliseconds); +end. \ No newline at end of file diff --git a/NETLibraries/NET4.0/TupleCreate.pas b/NETLibraries/NET4.0/TupleCreate.pas new file mode 100644 index 0000000..9d07269 --- /dev/null +++ b/NETLibraries/NET4.0/TupleCreate.pas @@ -0,0 +1,10 @@ +// Создание кортежей +uses System; + +begin + var a := Tuple.Create('Иванов',24); + writeln(a.Item1,' ',a.Item2); + + var b := Tuple.Create('Петров',17,1,11); + writeln(b.Item1,' ',b.Item2,' ',b.Item3,' ',b.Item4); +end. \ No newline at end of file diff --git a/NETLibraries/System.Array/SystemArray1.pas b/NETLibraries/System.Array/SystemArray1.pas new file mode 100644 index 0000000..2bce694 --- /dev/null +++ b/NETLibraries/System.Array/SystemArray1.pas @@ -0,0 +1,37 @@ +Uses System, PABCSystem; + +const Size = 10; + +procedure PrintArray(a: array of T); +begin + foreach v: T in a do + Write(v, ' '); + Writeln; +end; + +var a: array of integer; + +begin + SetLength(a, Size); + // Заполнение массива + for var i:=0 to a.Length-1 do + a[i] := Random(100); + + // Вывод всех элементов массива + PrintArray(a); + + // Сортировка массива (знак & используется для того, + // чтобы воспользоваться ключевым словом array при обозначении класса Array) + &Array.Sort(a); + + PrintArray(a); + + // Обращение массива + &Array.Reverse(a); + + PrintArray(a); + + // Поиск вхождения элемента в массив + var i := &Array.IndexOf(a, 99); + Writeln(i); +end. \ No newline at end of file diff --git a/NETLibraries/System.DateTime/DateTime1.pas b/NETLibraries/System.DateTime/DateTime1.pas new file mode 100644 index 0000000..9832b1c --- /dev/null +++ b/NETLibraries/System.DateTime/DateTime1.pas @@ -0,0 +1,32 @@ +Uses System; + +var + d1, d2, d3: DateTime; // Объекты для хранения даты и времени + ts: TimeSpan; // Объект для хранения промежутков времени + +begin + // Получение текущей даты - вызов статического метода + d1 := DateTime.Now; + Writeln(d1); + + // Дата и время через один месяц + d2 := d1.AddMonths(1); + Writeln(d2); + + // Дата и время на 12 часов раньше + d2 := d1.AddHours(-12); + Writeln(d2); + + // Формирование даты - вызов конструктора объекта (год, месяц,число) + d3 := new DateTime(2001, 1, 1); + Writeln(d3); + + // Определение времени, прошедшего с начала тысячелетия (разность дат) + ts := d1.Subtract(d3); + + // Промежуток времени в днях (результат - вещественное число) + Writeln(ts.TotalDays); + + // Промежуток времени в днях, часах, минутах и секундах + WritelnFormat('{0} {1}:{2}:{3}',ts.Days,ts.Hours,ts.Minutes,ts.Seconds); +end. \ No newline at end of file diff --git a/NETLibraries/System.DateTime/DateTime2.pas b/NETLibraries/System.DateTime/DateTime2.pas new file mode 100644 index 0000000..f444870 --- /dev/null +++ b/NETLibraries/System.DateTime/DateTime2.pas @@ -0,0 +1,34 @@ +Uses System; + +var + d: DateTime; + s: string; + +begin + s := '27.03.2008 9:58:17'; + //Попытка преобразования строки в объект DateTime + if not DateTime.TryParse(s, d) then + begin + Writeln('Строка не содержит значение даты и времени'); + Exit; + end; + + // Проверка високосности заданного года с помощью статического метода + if DateTime.IsLeapYear(d.Year) then + Writeln('Год високосный') + else + Writeln('Год невисокосный'); + + // Преобразование даты и времени в строковое представление + s := d.ToString; + Writeln(s); + + // Преобразование даты в строковое представление + s := d.ToShortDateString; + Writeln(s); + + // Преобразование времени в строковое представление + s := d.ToShortTimeString; + Writeln(s); + +end. \ No newline at end of file diff --git a/NETLibraries/System.DateTime/DateTimeInterval.pas b/NETLibraries/System.DateTime/DateTimeInterval.pas new file mode 100644 index 0000000..b7afdf9 --- /dev/null +++ b/NETLibraries/System.DateTime/DateTimeInterval.pas @@ -0,0 +1,16 @@ +// Работа с классом System.DateTime +// Вычисление времени выполнения фрагмента кода + +uses System, PABCSystem; + +var dt: DateTime := DateTime.Now; + +begin + // Делаем случайную паузу + var ms := Random(1000); + Writeln('Sleep','(',ms,')'); + Sleep(ms); + + // Сравниваем с показаниями DateTime.Now + Writeln((DateTime.Now-dt).TotalMilliseconds,'ms'); +end. \ No newline at end of file diff --git a/NETLibraries/System.Net/DownloadFile.pas b/NETLibraries/System.Net/DownloadFile.pas new file mode 100644 index 0000000..3d6f11c --- /dev/null +++ b/NETLibraries/System.Net/DownloadFile.pas @@ -0,0 +1,12 @@ +// Скачивание файла +uses System.Net; + +const + address = 'www.yandex.ru'; + filename = 'LogoPABCNET2010_Rus.png'; + +begin + var w := new WebClient(); + w.DownloadFile('http://pascalabc.net/images/logo/'+filename,filename); + Exec(filename); +end. \ No newline at end of file diff --git a/NETLibraries/System.Net/MailSend.pas b/NETLibraries/System.Net/MailSend.pas new file mode 100644 index 0000000..666b6e7 --- /dev/null +++ b/NETLibraries/System.Net/MailSend.pas @@ -0,0 +1,17 @@ +// Исправьте имя SMTP-сервера SMTPServerName и адрес получателя toReceiver! +uses System.Net.Mail; + +const + SMTPServerName = 'mail.spark-mail.ru'; + +begin + var fromSender := 'ivanov@mail.ru'; + var toReceiver := 'petrov@yandex.ru'; + var subject := 'Proba'; + var body := 'Hello!' + NewLine + 'I am robot!'; + var message := new MailMessage(fromSender, toReceiver, subject, body); + + var mailClient := new SmtpClient(SMTPServerName); + + mailClient.Send(message); +end. \ No newline at end of file diff --git a/NETLibraries/System.Net/Ping.pas b/NETLibraries/System.Net/Ping.pas new file mode 100644 index 0000000..269017b --- /dev/null +++ b/NETLibraries/System.Net/Ping.pas @@ -0,0 +1,16 @@ +// Использование Ping +uses System.Net.NetworkInformation; + +const address = 'www.yandex.ru'; + +begin + var p := new Ping(); + try + var res := p.Send(address); + writeln('IP адрес сервера: ',res.Address); + writeln('Время отклика: ',res.RoundtripTime,' мс'); + except + on e: Exception do + write(e.Message); + end; +end. \ No newline at end of file diff --git a/NETLibraries/System.Net/WebClient.pas b/NETLibraries/System.Net/WebClient.pas new file mode 100644 index 0000000..0e5b12e --- /dev/null +++ b/NETLibraries/System.Net/WebClient.pas @@ -0,0 +1,10 @@ +// Использование WebClient +uses System.Net; + +begin + var w := new WebClient(); + w.Encoding := System.Text.Encoding.UTF8; + var s := w.DownloadString('http://pascalabc.net'); + writeln(s); + w.DownloadFile('http://pascalabc.net/images/logo/LogoPABCNET2010_Rus.png','LogoPABCNET2010_Rus.png'); +end. \ No newline at end of file diff --git a/NETLibraries/System.Parallel/Parallel1.pas b/NETLibraries/System.Parallel/Parallel1.pas new file mode 100644 index 0000000..5cdfcd0 --- /dev/null +++ b/NETLibraries/System.Parallel/Parallel1.pas @@ -0,0 +1,8 @@ +Uses System,System.Net,System.Threading.Tasks; + +begin + Parallel.Invoke ( + procedure -> begin (new WebClient()).DownloadFile ('http://yandex.ru', 'yandex.html') end, + procedure -> begin (new WebClient()).DownloadFile ('http://pascalabc.net', 'pabc.html') end + ); +end. \ No newline at end of file diff --git a/NETLibraries/System.Parallel/Parallel2.pas b/NETLibraries/System.Parallel/Parallel2.pas new file mode 100644 index 0000000..8b4fd3e --- /dev/null +++ b/NETLibraries/System.Parallel/Parallel2.pas @@ -0,0 +1,46 @@ +uses + System, System.Net, System.Threading.Tasks; + +type + Int = class + N: int64; + constructor(NN: int64); + begin + N := NN; + end; + + function IsPrime: boolean; + begin + Result := True; + for var i: int64 := 2 to round(sqrt(N)) do + if N mod i = 0 then + begin + Result := False; + exit; + end; + end; + end; + +type + BTask = Task; + +begin + var ss: array of int64 := (1265713689122381, 1265713689122461, 1265713689142451, 1265713689542501); // Все числа - простые + var tb := new BTask[4]; + // Запуск 4 потоков из пула потоков + // У каждого tb[i] свой Result! + for var i := 0 to ss.Length - 1 do + tb[i] := Task.Factory.StartNew((new Int(ss[i])).IsPrime); + + // Если поток не закончился, то обращение к tb[i].Result приостанавливает основную программу + for var i := 0 to tb.Length - 1 do + writeln(tb[i].Result); + // В эту точку мы попадем только после окончания всех четырех потоков + writeln(Milliseconds); + + // Последовательное выполнение + var t := Milliseconds; + for var i := 0 to ss.Length - 1 do + writeln((new Int(ss[i])).IsPrime); + writeln(Milliseconds - t); +end. \ No newline at end of file diff --git a/NETLibraries/System.Parallel/Parallel3.pas b/NETLibraries/System.Parallel/Parallel3.pas new file mode 100644 index 0000000..c058cad --- /dev/null +++ b/NETLibraries/System.Parallel/Parallel3.pas @@ -0,0 +1,57 @@ +uses + System, System.Net, System.Threading.Tasks, System.Collections.Generic; + +type + ListSimple = class + l := new List(); + procedure AddSimple(N: int64); + begin + var Result := True; + for var i: int64 := 2 to round(sqrt(N)) do + if N mod i = 0 then + begin + Result := False; + break; + end; + // lock не позволяет нескольким потокам одновременно выполнять эту секцию. + // Это обязательно, иначе если несколько потоков одновременно будут пытаться добавить значение в список, список может оказаться испорченным + // Секция, охраняемая lock, называется критической + lock l do + if Result then + l.Add(N); + end; + end; + +var hh := 1000; + +begin + var ls := new ListSimple; + + var ii: int64 := 1265713689181; + + Parallel.For(ii,ii+hh,ls.AddSimple); + + writeln(ls.l.Count); + // ls.l := ls.l.OrderBy(x->x).ToList(); - это можно включить для проверки того, что в обоих списках - одинаковые простые числа + for var i:=0 to ls.l.Count-1 do + write(ls.l[i],' '); + // Надо обратить внимание, что выводится неупорядоченная последовательность простых чисел ! + + writeln; + writeln('Время выполнения = ',Milliseconds); + + // То же, но непараллельно + var ls1 := new ListSimple; + + var t := Milliseconds; + for var i:=ii to ii+hh-1 do + ls1.AddSimple(i); + writeln(ls1.l.Count); + for var i:=0 to ls1.l.Count-1 do + write(ls1.l[i],' '); + writeln; + writeln('Время выполнения = ',Milliseconds-t); + + // Проверка того, что списки простых как множества совпадают + writeln('Количество элементов в разности множеств = ',ls.l.Except(ls1.l).Count()); +end. \ No newline at end of file diff --git a/NETLibraries/System.String/StringConvert.pas b/NETLibraries/System.String/StringConvert.pas new file mode 100644 index 0000000..fe2a5b8 --- /dev/null +++ b/NETLibraries/System.String/StringConvert.pas @@ -0,0 +1,25 @@ +var + s: string; + i: integer; + r: real; + +begin + // Преобразование строки в число + s := '123,3443'; // Дробная часть отделяется запятой - настройки Windows + if not real.TryParse(s, r) then + Writeln('Строка s не является строковым представлением вещественного числа') + else Writeln(r); + + if not integer.TryParse(s, i) then + Writeln('Строка s не является строковым представлением целого числа'); + + // Преобразование числа в строку + i := 10; + s := i.ToString; + Writeln(s); + + s := ''; + for i:=1 to 9 do + s += i.ToString; + Writeln(s); +end. \ No newline at end of file diff --git a/NETLibraries/System.String/StringMethods1.pas b/NETLibraries/System.String/StringMethods1.pas new file mode 100644 index 0000000..b0db02e --- /dev/null +++ b/NETLibraries/System.String/StringMethods1.pas @@ -0,0 +1,30 @@ +var s1,s2: string; + +begin + // Определение длины строки + s1 := 'ABCDEFGH'; + Writeln(s1.Length); + + // Сравнение строк без учета регистра символов + s1 := 'AAA'; + s2 := 'aaa'; + if String.Compare(s1, s2, {ignoreCase - без учета регистра} true) = 0 then + Writeln('Строки совпадают с точностью до регистра букв'); + + // Определение вхождений подстрок + s1 := 'Long string'; + s2 := 'string'; + if s1.EndsWith(s2) then + Writeln('В конце строки s1 содержится подстрока, совпадающая с s2'); + + // Поиск индекса вхождения подстроки в строку + Writeln(s1.IndexOf(s2)); + + // Извлечение подстрок + s1 := 'ABCDEFGH'; + s2 := s1.Substring( {начальная_позиция = } 3); + Writeln(s2); + + s2 := s1.Substring(3, {длина_подстроки = } 2); + Writeln(s2); +end. \ No newline at end of file diff --git a/NETLibraries/System.String/StringMethods2.pas b/NETLibraries/System.String/StringMethods2.pas new file mode 100644 index 0000000..13cc3e5 --- /dev/null +++ b/NETLibraries/System.String/StringMethods2.pas @@ -0,0 +1,37 @@ +var s1,s2: string; + +begin + // Извлечение подстрок + s1 := 'ABCDEFGH'; + s2 := s1.Substring( {начальная_позиция = } 3); + Writeln(s2); + + s2 := s1.Substring(3, {длина_подстроки = } 2); + Writeln(s2); + + // Вставка, удаление и замена подстрок + s1 := 'ABCDEFGH'; + s2 := s1.Insert(2, 'xxx'); + Writeln(s2); + + s2 := s2.Replace('x', '!'); + Writeln(s2); + + s2 := s2.Remove(2, 3); + Writeln(s2); + + s1 := 'слово слово слово'; + s2 := s1.Replace('слов', 'молок'); + Writeln(s2); + + // Удаление пробельных символов в концах строки + s1 := ' xxx xxx '; + Writeln('|', s1, '|'); + s1 := s1.Trim; + Writeln('|', s1, '|'); + + // Смена регистра символов + s1 := 'абвгд'; + s1 := s1.ToUpper; + Writeln(s1); +end. \ No newline at end of file diff --git a/NETLibraries/System.String/StringSplit.pas b/NETLibraries/System.String/StringSplit.pas new file mode 100644 index 0000000..184c12c --- /dev/null +++ b/NETLibraries/System.String/StringSplit.pas @@ -0,0 +1,26 @@ +uses System; + +var + str_arr: array of string; + int_arr: array of integer; + s: string := '12 765 765 76'; + +begin + // Разбиение строки на массив подстрок с заданным разелителем + str_arr := s.Split(' '); + + // Соединение массива подстрок с новым разделителем + s := string.Join('+', str_arr); + Write(s, '='); + + // Формирование целочисленного массива по массиву подстрок + SetLength(int_arr, str_arr.Length); + for var i:=0 to int_arr.Length-1 do + integer.TryParse(str_arr[i], int_arr[i]); + + // Вычисление суммы элементов целочисленного массива + var sum := 0; + foreach v: integer in int_arr do + sum += v; + Writeln(sum); +end. \ No newline at end of file diff --git a/NETLibraries/System.Timers.Timer/SystemTimer.pas b/NETLibraries/System.Timers.Timer/SystemTimer.pas new file mode 100644 index 0000000..8223bd8 --- /dev/null +++ b/NETLibraries/System.Timers.Timer/SystemTimer.pas @@ -0,0 +1,31 @@ +//События, +=, -=, демонстрация работы таймера System.Timers.Timer +uses System; + +var Timer:System.Timers.Timer; + x:integer; + exit:boolean; + +procedure OnTimer2(sender:object; e:System.Timers.ElapsedEventArgs); +begin + Writeln(x); + x:=x+1; + exit:=x>=10; +end; +procedure OnTimer1(sender:object; e:System.Timers.ElapsedEventArgs); +begin + Writeln(e.SignalTime); + x:=x+1; + if x>=5 then begin + Timer.Elapsed-=OnTimer1; + Timer.Elapsed+=OnTimer2; + end; +end; + +begin + Exit:=false; + Timer:=System.Timers.Timer.Create(1000); + Timer.Elapsed+=OnTimer1; + Timer.Start; + while not exit do + Sleep(Round(Timer.Interval)); +end. \ No newline at end of file diff --git a/NETLibraries/System.Windows.Forms/FormWebBrowser.pas b/NETLibraries/System.Windows.Forms/FormWebBrowser.pas new file mode 100644 index 0000000..51a1936 --- /dev/null +++ b/NETLibraries/System.Windows.Forms/FormWebBrowser.pas @@ -0,0 +1,17 @@ +// Иллюстрация использования компонента WebBrowser +{$apptype windows} +{$reference 'System.Windows.Forms.dll'} + +uses + System.Windows.Forms, + System.Net; + +begin + var myForm := new Form; + var w := new WebBrowser; + w.Url := new System.Uri('http://pascalabc.net'); + w.Dock := Dockstyle.Fill; + myForm.Controls.Add(w); + myForm.WindowState := FormWindowState.Maximized; + Application.Run(myForm); +end. diff --git a/NETLibraries/System.Windows.Forms/MouseDraw.pas b/NETLibraries/System.Windows.Forms/MouseDraw.pas new file mode 100644 index 0000000..db17bcf --- /dev/null +++ b/NETLibraries/System.Windows.Forms/MouseDraw.pas @@ -0,0 +1,52 @@ +// Рисование мышью на форме. Иллюстрация Windows.Forms, событий +{$apptype windows} +{$reference 'System.Windows.Forms.dll'} +{$reference 'System.Drawing.dll'} + +uses + System, + System.Drawing, + System.Windows.Forms; + +type + MyForm = class(Form) + private + g: Graphics; + // Предыдущие координаты мыши + x,y: integer; + public + constructor; + begin + Size := new System.Drawing.Size(640,480); + StartPosition := FormStartPosition.CenterScreen; + Text := 'Рисование мышью на форме'; + // Привязка обработчиков к событиям + MouseDown += OnMouseDown; + MouseMove += OnMouseMove; + Resize += OnResize; + g := Graphics.FromHwnd(Handle); + end; + procedure OnMouseDown(sender: object; e: MouseEventArgs); + begin + x := e.x; + y := e.y; + end; + procedure OnMouseMove(sender: object; e: MouseEventArgs); + begin + if e.Button = System.Windows.Forms.MouseButtons.Left then + begin + g.DrawLine(new Pen(Color.FromARGB(PABCSystem.Random(255),PABCSystem.Random(255),PABCSystem.Random(255))),x,y,e.x,e.y); + x := e.x; + y := e.y; + writeln(e.x,' ',e.y); + end; + end; + procedure OnResize(sender: object; e: EventArgs); + begin + g := Graphics.FromHwnd(Handle); + end; + end; + +begin + Application.Run(new MyForm); +end. \ No newline at end of file diff --git a/NETLibraries/System.Windows.Forms/WinFormWithButton.pas b/NETLibraries/System.Windows.Forms/WinFormWithButton.pas new file mode 100644 index 0000000..ecfa4db --- /dev/null +++ b/NETLibraries/System.Windows.Forms/WinFormWithButton.pas @@ -0,0 +1,29 @@ +// Создание оконного приложения +{$apptype windows} +{$reference 'System.Windows.Forms.dll'} + +uses + System, + System.Windows.Forms; + +var + myForm: Form; + myButton: Button; + +procedure MyButtonClick(sender: Object; e: EventArgs); +begin + myForm.Close; +end; + +begin + myForm := new Form; + myForm.Text := 'Оконное приложение'; + myButton := new Button; + myButton.Text := ' Закрыть окно '; + myButton.AutoSize := True; + myButton.Left := 90; + myButton.Top := 110; + myForm.Controls.Add(myButton); + myButton.Click += MyButtonClick; + Application.Run(myForm); +end. diff --git a/NumLibABC/ApproxCheb1.pas b/NumLibABC/ApproxCheb1.pas new file mode 100644 index 0000000..915dbf8 --- /dev/null +++ b/NumLibABC/ApproxCheb1.pas @@ -0,0 +1,14 @@ +uses NumLibABC; + +// +// +begin + var e:=0.1; + var x:=ArrGen(12,i->0.25*i-2); x.Println; + var y:=x.Select(z->2*z-5*Sqr(z)+8*z*Sqr(z)).ToArray; y.Println; + var oL:=new ApproxCheb(x,y,e); + oL.f.Println; // + Println(oL.r,oL.tol); // + oL.MakeCoef; // + oL.c.Println; +end. diff --git a/NumLibABC/Decomp1.pas b/NumLibABC/Decomp1.pas new file mode 100644 index 0000000..120f4d0 --- /dev/null +++ b/NumLibABC/Decomp1.pas @@ -0,0 +1,11 @@ +uses NumLibABC; + +// +begin + var A:=new real[3,3] ((2,3,-1),(1,-2,1),(1,0,2)); + var B:=new real[3] (9,3,2); + var oL:=new Decomp(A); + oL.Solve(B); + B.Println; + Writeln('cond=',oL.cond) +end. diff --git a/NumLibABC/DiffEqu1.pas b/NumLibABC/DiffEqu1.pas new file mode 100644 index 0000000..133b8a2 --- /dev/null +++ b/NumLibABC/DiffEqu1.pas @@ -0,0 +1,29 @@ +uses NumLibABC; + +// + +procedure Orbit(t:real; y,yp:array of real); +// +// y[] yp[] +begin + var alpha:=Sqr(ArcTan(1.0)); + var r:=y[0]*y[0]+y[1]*y[1]; r:=r*Sqrt(r)/alpha; + yp[0]:=y[2]; yp[1]:=y[3]; yp[2]:=-y[0]/r; yp[3]:=-y[1]/r +end; + +begin + var e:=0.25; + var y:=Arr(1.0-e,0.0,0.0,ArcTan(1)*Sqrt((1.0+e)/(1.0-e))); + var (abserr,relerr):=(0.0,0.3e-6); + var oL:=new RKF45(Orbit, y, abserr, relerr); + var (t,tb,th):=(0.0,12.0,0.5); + var t_out:=t; + repeat + oL.Solve(t,t_out); + Writeln(t:5:1,oL.y[0]:15:9,oL.y[1]:15:9); + case oL.flag of + -3,-2,-1,1,8:begin Writeln('Flag=',oL.flag); Exit end; + 2:t_out:=t+th; + end + until t>=tb +end. diff --git a/NumLibABC/Economi1.pas b/NumLibABC/Economi1.pas new file mode 100644 index 0000000..a66bbd0 --- /dev/null +++ b/NumLibABC/Economi1.pas @@ -0,0 +1,12 @@ +uses NumLibABC; + +// +begin + var x:=ArrGen(8,-0.75,x->x+0.25); + var p:=new Polynom(0,1,-1/2,1/3,-1/4,1/5); + var r:=p.EconomSym(0.75, 0.05); + Println(r.eps,r.n); + r.PrintlnBeauty; + for var i:=1 to x.Length do + Write(r.Value(x[i-1]):0:3,' ') +end. diff --git a/NumLibABC/FMinN_1.pas b/NumLibABC/FMinN_1.pas new file mode 100644 index 0000000..b99d8d5 --- /dev/null +++ b/NumLibABC/FMinN_1.pas @@ -0,0 +1,13 @@ +uses NumLibABC; + +// - +function f(x:array of real):real:=100*Sqr(x[1]-Sqr(x[0]))+Sqr(1-x[0]); + +begin + var xb:=Arr(-1.2,1.0); + var oL:=new FMinN(xb,f); + var r:=oL.HJ; + Writeln(' : ',oL.iter); + Write(' : '); r.Println; + Writeln(' : ',f(r)); +end. diff --git a/NumLibABC/FMinN_2.pas b/NumLibABC/FMinN_2.pas new file mode 100644 index 0000000..4dcf385 --- /dev/null +++ b/NumLibABC/FMinN_2.pas @@ -0,0 +1,14 @@ +uses NumLibABC; + +// MKSearch +begin + var f:function(x:array of real):real:= x->Power(x[0],4)+ + Power(x[1],4)-2*Sqr(x[0])+4*x[0]*x[1]-2*Sqr(x[1])+3; + var a:=Arr(-20.0,-20.0); + var b:=Arr(20.0,20.0); + var y:real; + var oL:=new FMinN(a,f); + oL.MKSearch(a,b,y); + Write(' : '); oL.x.Println; + Writeln(' : ', y); +end. diff --git a/NumLibABC/FMinN_3.pas b/NumLibABC/FMinN_3.pas new file mode 100644 index 0000000..9d9cf69 --- /dev/null +++ b/NumLibABC/FMinN_3.pas @@ -0,0 +1,14 @@ +uses NumLibABC; + +// BPHS +begin + var f:function(x:array of real):real:= x->Power(x[0],4)+ + Power(x[1],4)-2*Sqr(x[0])+4*x[0]*x[1]-2*Sqr(x[1])+3; + var a:=Arr(-20.0,-20.0); // + var b:=Arr(20.0,20.0); // + var y:real; // + var oL:=new FMinN(a,f); + oL.BPHS(a,b,y); + Write(' : '); oL.x.Println; + Writeln(' : ', y); +end. diff --git a/NumLibABC/FMinN_4.pas b/NumLibABC/FMinN_4.pas new file mode 100644 index 0000000..809e15e --- /dev/null +++ b/NumLibABC/FMinN_4.pas @@ -0,0 +1,23 @@ +uses NumLibABC; + +// BestP +begin + var f:function(x:array of real):real:= x->Power(x[0],4)+ + Power(x[1],4)-2*Sqr(x[0])+4*x[0]*x[1]-2*Sqr(x[1])+3; + var a:=Arr(-20.0,-20.0); // + var b:=Arr(20.0,20.0); // + var x:=new real[a.Length]; // MinHJ + var oL:=new FMinN(x,f); + var r:=oL.BestP(a,b,0.01); + var y:real; + var fet:=f(Arr(Sqrt(2),-Sqrt(2))); + foreach var t in r do begin + (y,x):=(t[0],t[1]); + Write(' : '); x.Println; + Write('.: '); + x.Foreach(z->WriteFormat('{0:0.0e0} ',Abs(z)-Sqrt(2))); + Writeln; + Writeln(' : ', y, ', .: ',Abs(y-fet)); + Writeln + end +end. diff --git a/NumLibABC/FMinN_5.pas b/NumLibABC/FMinN_5.pas new file mode 100644 index 0000000..eddd2b8 --- /dev/null +++ b/NumLibABC/FMinN_5.pas @@ -0,0 +1,13 @@ +uses NumLibABC; + +// ARS +begin + var f:function(x:array of real):real:= + x->4*Sqr(x[0]-5)+Sqr(x[1]-6); + var x:=Arr(-8.0,9.0); + var (t,R):=(1.0,1e-6); + var oL:=new FMinN(x,f); + oL.ARS(R,t); + Write(': '); oL.x.Println; + Writeln(' : ',f(oL.x)) +end. diff --git a/NumLibABC/FMinN_6.pas b/NumLibABC/FMinN_6.pas new file mode 100644 index 0000000..dccdb8d --- /dev/null +++ b/NumLibABC/FMinN_6.pas @@ -0,0 +1,27 @@ +uses NumLibABC; + +// ( ) + +function f(x:array of real):real; +begin + var x1:=x[0]; + var x2:=x[1]; + var s:=0.0; // + if x1+x2>8 then s:=real.MaxValue + else if -2*x1+3*x2>9 then s:=real.MaxValue + else if 2*x1-x2>10 then s:=real.MaxValue + else if x1<0 then s:=real.MaxValue + else if x2<0 then s:=real.MaxValue; + Result:=-4*x1-3*x2+1+s +end; + +begin + var a:=Arr(0.0,0.0); + var b:=Arr(8.0,8.0); + var y:real; + var oL:=new FMinN(a,f); + oL.MKSearch(a,b,y); + oL.x.Transform(t->real(Round(t))); + Write(' : '); oL.x.Println; + Writeln(' : ',f(oL.x)) +end. diff --git a/NumLibABC/FMin_1.pas b/NumLibABC/FMin_1.pas new file mode 100644 index 0000000..c0ede58 --- /dev/null +++ b/NumLibABC/FMin_1.pas @@ -0,0 +1,9 @@ +uses NumLibABC; + +// + +begin + var fun:real->real:=x->x*Sqr(x)-2*x-5; + var oL:=new Fmin(fun,-1,1); + Println(oL.x, oL.Value) +end. diff --git a/NumLibABC/Factors1.pas b/NumLibABC/Factors1.pas new file mode 100644 index 0000000..697873c --- /dev/null +++ b/NumLibABC/Factors1.pas @@ -0,0 +1,10 @@ +uses NumLibABC; + +// +// +begin + var oL:=new Factors(-20, 7, 73, -42); + var r:=oL.Factorize; + Writeln('k:=',r[0,1]); + for var i:=1 to r[0,0] do r.Row(i).Println; +end. diff --git a/NumLibABC/Fraction1.pas b/NumLibABC/Fraction1.pas new file mode 100644 index 0000000..25db375 --- /dev/null +++ b/NumLibABC/Fraction1.pas @@ -0,0 +1,8 @@ +uses NumLibABC; + +// +begin + var r:=((Frc(5,5,9)-Frc(7,18))/35+(Frc(40,63)-Frc(8,21))/20+ + (Frc(83,90)-Frc(41,50))/2)*50; + r.Print +end. diff --git a/NumLibABC/Matrix1.pas b/NumLibABC/Matrix1.pas new file mode 100644 index 0000000..f91f8bf --- /dev/null +++ b/NumLibABC/Matrix1.pas @@ -0,0 +1,11 @@ +uses NumLibABC; + +// () +begin + // M = det ((A-BxC)^T)xA + var A:=new Matrix(2,4,-3,0,4,-1,2,-7,5,6); + var B:=new Matrix(2,3,8,1,-5,6,7,2); + var C:=new Matrix(3,4,1,-1,7,0,3,2,9,4,5,0,-2,-4); + var M:=(((A-B*C).Transpose)*A).Det; + Writeln(M) +end. diff --git a/NumLibABC/NumLibABCTest.pas b/NumLibABC/NumLibABCTest.pas new file mode 100644 index 0000000..fbd32ed --- /dev/null +++ b/NumLibABC/NumLibABCTest.pas @@ -0,0 +1,981 @@ +uses NumLibABC; + +procedure TestApproxCheb(s:string; a,b:array of real; eps:real); +// a - массив вычисленных значений +// b - массив ожидаемых значений +// eps - допустимая абсолютная погрешность решений +begin + for var i:=0 to a.Length-1 do begin + var Msg:=s+': найдено: '+a[i]+', ожидалось '+b[i]; + Assert(Abs(Abs(a[i])-Abs(b[i]))<=eps,Msg); + end +end; + +procedure TestDecomp(s:string; a:array[,] of real; b:array of real; + roots:array of real; eps:real); +// a - матрица системы; +// b - вектор правых частей; +// roots - вектор эталонных решений; +// eps - максимальная абсолютная погрешность решений +begin + var oD:=new Decomp(a); + var Msg:=s+': cond='+oD.cond+' обнаружена вырожденность матрицы'; + var Flag:=oD.cond+1=oD.cond; + Assert(not Flag,Msg); + if not Flag then begin + oD.Solve(b); + var sum:=b.Zip(roots,(p,q)->Abs(Abs(p)-Abs(q))).Sum; + Msg:=s+': недопустимая погрешность '+sum+' > '+eps+NewLine+ + 'Получено : '+b.JoinIntoString(' ')+NewLine+ + 'Ожидалось: '+roots.JoinIntoString(' '); + Assert(sum<=eps,Msg); + end +end; + +procedure TestFactors(s:string; a:array of integer; roots:array of integer); +// a - коэффициенты полинома; +// aroots - вектор эталонных решений; +begin + var oL:=new Factors(a); + var r:=oL.Factorize; + var r1:=r.Rows.SelectMany(x->x); + var Msg:=s+': ошибка.'+Newline+r1.JoinIntoString+': получено'+NewLine+ + roots.JoinIntoString+': ожидалось'; + if r1.Count=roots.Count then begin + var s1:=r1.Zip(roots,(i,j)->i-j).Sum; + Assert(s1=0,Msg) + end + else + Assert(false,Msg) +end; + +{$region FMinTest} +procedure TestFMin(s:string; f:real->real; a,b,etx,ety,epsx,epsy:real); +// etx - ожидаемое значение аргумента +// etx - ожидаемое значение функции +// epsx - допустимая абсолютная погрешность по аргументу +// epsy - допустимая абсолютная погрешность по функции +begin + var oL:=new FMin(f,a,b); + var (x,y):=(oL.x,oL.Value); + var Msg:=s+': найден аргумент: '+x+', ожидался '+etx; + Assert(Abs(x-etx)<=epsx,Msg); + Msg:=s+': значение функции: '+y+', ожидалось '+ety; + Assert(Abs(y-ety)<=epsy,Msg); +end; + +procedure TestFMinN1(s:string; f:function(x:array of real):real; + xb:array of real; etx:array of real; ety,epsx,epsy:real); +// xb - массив аргументов +// etx - массив ожидаемых значений аргументов +// etx - ожидаемое значение функции +// epsx - допустимая абсолютная погрешность по аргументу +// epsy - допустимая абсолютная погрешность по функции +begin + var oL:=new FMinN(xb,f); + var x:=oL.HJ; + var y:=f(x); + var Msg:=s+':'+NewLine+'найдены аргументы : '+ + x.Select(t->Format('{0}',t)).JoinIntoString+NewLine+ + 'ожидались аргументы: '+ + etx.Select(t->Format('{0}',t)).JoinIntoString; + for var i:=0 to x.Length-1 do + if Abs(x[i]-etx[i])>epsx then begin + Assert(false,Msg); + break + end; + Msg:=s+': значение функции: '+y+', ожидалось '+ety; + Assert(Abs(y-ety)<=epsy,Msg); +end; + +procedure TestFMinN2(s:string; f:function(x:array of real):real; + a,b:array of real; k,m:integer; etx:array of real; ety,epsx,epsy:real); +// a,b - массивы нижних и верхних границ аргументов +// k - количество случайных точек в BPHS +// m - количество вызовов MKSearch +// etx - массив ожидаемых значений аргументов +// etx - ожидаемое значение функции +// epsx - допустимая абсолютная погрешность по аргументу +// epsy - допустимая абсолютная погрешность по функции +begin + var oL:=new FMinN(etx,f); + var y:real; + oL.BPHS(a,b,y,k,m); + var Msg:=s+':'+NewLine+'найдены аргументы : '+ + oL.x.Select(t->Format('{0}',t)).JoinIntoString+NewLine+ + 'ожидались аргументы: '+ + etx.Select(t->Format('{0}',t)).JoinIntoString; + for var i:=0 to oL.x.Length-1 do + if Abs(oL.x[i]-etx[i])>epsx then begin + Assert(false,Msg); + break + end; + Msg:=s+': значение функции: '+y+', ожидалось '+ety; + Assert(Abs(y-ety)<=epsy,Msg); +end; + +procedure TestFMinN3(s:string; f:function(x:array of real):real; + a,b:array of real; k,m:integer; etx:array of real; ety,epsx,epsy:real); +// a,b - массивы нижних и верхних границ аргументов +// k - количество случайных точек в BPHS +// m - количество вызовов MKSearch +// etx - массив ожидаемых значений аргументов +// etx - ожидаемое значение функции +// epsx - допустимая абсолютная погрешность по аргументу +// epsy - допустимая абсолютная погрешность по функции +begin + var oL:=new FMinN(etx,f); + var y:real; + var r:=oL.BestP(a,b,epsx,10,k,m); + var x:array of real; + foreach var t in r do begin + (y,x):=(t[0],t[1]); + var Msg:=s+':'+NewLine+'найдены аргументы : '+ + x.Select(t->Format('{0}',t)).JoinIntoString+NewLine+ + 'ожидались аргументы: '+ + etx.Select(t->Format('{0}',t)).JoinIntoString; + for var i:=0 to x.Length-1 do + if Abs(x[i]-etx[i])>epsx then begin + Assert(false,Msg); + break + end; + Msg:=s+': значение функции: '+y+', ожидалось '+ety; + Assert(Abs(y-ety)<=epsy,Msg) + end +end; + +procedure TestFMin4(s:string; f:function(x:array of real):real; + x:array of real; R:real; var t:real; v:array of real; eps,epsf:real); +// f - функция +// x - вектор координат +// R - максимально допустимая неопределенность +// t - полученный радиус сферы неопределенности +// v - вектор эталонного решения +// eps - оценочная точность решения по координатам +// epsf - оценочная точность по функции +begin + var oL:=new FMinN(x,f); + oL.ARS(R,t); + var Msg:=s+': Требуемая точность не достигнута'; + Assert(t<=R,Msg); + Msg:=s+': не найдено решение, ожидалось ['+v.Skip(1).JoinIntoString(',')+ + '], получено ['+oL.x.JoinIntoString(',')+']'; + var p:=true; + for var i:=0 to oL.x.Length-1 do p:=p and (Abs(oL.x[i])-Abs(v[i+1])<=eps); + Assert(p,Msg); + Msg:=s+': найден радиус сферы '+t+', ожидаемый '+v[0]; + Assert(Abs(t-v[0])<=epsf,Msg) +end; +{$endregion} + +procedure TestFraction(s:string; res,ans:Fraction); +// результат сравнения res=ans +begin + Assert(res=ans,s+': получено '+res.ToString+', ожидалось '+ans.ToString) +end; + +{$region MatrixTest} +procedure TestMatrixS(s:string; a,r,eps:real); +// a - найденное значение; +// r - ожидаемое значение; +// eps - максимальная допустимая абсолютная погрешность +begin + var Msg:=s+': погрешность выше допустимой.'+Newline+'Получено значение '+ + a+', ожидалось значение '+r; + Assert(Abs(a-r)<=eps,Msg) +end; + +procedure TestMatrixV(s:string; a,r:Vector; eps:real); +// a - вектор найденных значений; +// r - вектор ожидаемых значений; +// eps - максимальная допустимая абсолютная погрешность +begin + for var i:=0 to a.Length-1 do + Assert(Abs(a.Value[i]-r.Value[i])<=eps, + s+': погрешность выше допустимой.'+Newline+'Получено значение '+ + a.Value[i]+', ожидалось значение '+r.Value[i]) +end; + +procedure TestMatrixM(s:string; a,r:Matrix; eps:real); +// a - вычисленная матрица; +// r - эталонная матрица; +// eps - максимальная допустимая абсолютная погрешность +begin + for var i:=0 to a.RowCount-1 do + for var j:=0 to a.ColCount-1 do + Assert(Abs(a.Value[i,j]-r.Value[i,j])<=eps, + s+': погрешность выше допустимой.'+Newline+'Получено значение a['+ + i+','+j+']='+a.Value[i,j]+', ожидалось значение '+r.Value[i,j]) +end; +{$endregion} + +procedure TestPolRt(s:string; a:Polynom; roots:array of complex; eps:real); +// roots -массив ожидаемых значений корней +// eps - максимальная абсолютная погрешность решений +begin + var oP:=new PolRt(a); + if oP.ier>0 then begin + var Msg:=s+': тест не прошел, ошибка с кодом '+oP.ier; + Assert(false,Msg) + end + else begin + var r:=oP.Value; + for var i:=0 to r.Length-1 do begin + var Msg:=s+': найдено: ('+r[i].Real+','+r[i].Imaginary+'), ожидалось ('+ + roots[i].Real+','+roots[i].Imaginary+')'; + Assert(Complex.Abs(r[i]-roots[i])<=eps,Msg); + end + end +end; + +procedure TestPolynomD(s:string; res,lim:real; n1,n2:integer); +// res - вычисленное значение +// lim - предельно допустимая величина res +// проверяется также условие n2n2,s+': экономизации не произошло'); + Assert(res<=lim,s+': отклонение '+res+' превышает '+lim); +end; + +procedure TestPolynomV(s:string; p:Polynom; x,r,eps:real); +// х - аргумент, для которого вычисляется полином +// r - ожидаемое значение +// eps - максимальная абсолютная погрешность решения +begin + var a:=p.Value(x); + var Msg:=s+': найдено: '+a+', ожидалось '+r; + Assert(Abs(a-r)<=eps,Msg) +end; + +procedure TestQuanc8(s:string; a,b:real; F:real->real; ae,re,r2,eps:real); +// cres - аналитически найденное значение интеграла +// eps - допустимая абсолютная погрешность решения +begin + var Msg:string; + var oQ:=new Quanc8(f,a,b,ae,re); + var r1:=oQ.Value; + if r1[2]=0 then begin + Msg:=s+': вычислено '+r1[0]+', ожидалось '+r2; + Assert(Abs(r1[0]-r2)<=eps,Msg) + end + else begin + Msg:=s+': вычислено '+r1[0]+', ожидалось '+r2+', errest='+r1[1]+', flag='+r1[2]; + Assert(Abs(r1[0]-r2)<=eps,Msg) + end +end; + +procedure TestRKF45(s:string; res,ans,eps:real); +begin + Assert(Abs(res-ans)<=eps,s+': контрольная сумма '+res+', ожидалась '+ans) +end; + +procedure TestRootsIsolation(s:string; f:real->real; a,b,h:real; + t:array of real); +// f - функция +// a,b - границы интервала поиска +// h - шаг поиска +// t - эталонный массив нулей функции +begin + var oRI:=new RootsIsolation(f,a,b,h); + var r:=oRI.Value; + for var i:=0 to t.Length-1 do begin + var Msg:=s+': точка нуля '+t[i]+' не в интервале ['+r[i][0]+';'+r[i][1]+']'; + Assert(t[i].Between(r[i][0],r[i][1]),Msg) + end; +end; + +procedure TestSpline(st:string; x:real; F:real->real; eps:real; S:Spline); +// eps - относительная погрешность в процентах +begin + var r1:=F(x); + var r2:=S.Value(x); + var Msg:=st+': F('+x+')='+r1+', получено '+r2; + Assert(Abs((r1-r2)/r1)<=eps/100,Msg); +end; + +procedure TestSvenn(s:string; f:real->real; x0,t,a,b:real); +// f - функция +// x0 - начальная точка поиска +// t - шаг поиска +// a,b - ожидаемый интервал (результат должен ему принадлежать) +begin + var oS:=new Svenn(f,x0,t); + var r:=oS.Value; + var Msg:=s+': не найдено решение, ожидалось ['+a+';'+b+']'; + Assert(r[2]=0,Msg); + Msg:=s+': интервал ['+a+';'+b+'] не входит в ['+r[0]+';'+r[1]+']'; + Assert(a.Between(r[0],r[1]) and b.Between(r[0],r[1]),Msg) +end; + +{$region VectorTest} +procedure TestVector1(s:string; a,r,eps:real); +// a - найденное значение; +// r - ожидаемое значение; +// eps - максимальная допустимая абсолютная погрешность +begin + var Msg:=s+': погрешность выше допустимой.'+Newline+'Получено значение '+ + a+', ожидалось значение '+r; + Assert(Abs(a-r)<=eps,Msg) +end; + +procedure TestVectorN(s:string; a,r:Vector; eps:real); +// a - вектор найденных значений; +// r - вектор ожидаемых значений; +// eps - максимальная допустимая абсолютная погрешность +begin + for var i:=0 to a.Length-1 do + Assert(Abs(a.Value[i]-r.Value[i])<=eps, + s+': погрешность выше допустимой.'+Newline+'Получено значение '+ + a.Value[i]+', ожидалось значение '+r.Value[i]) +end; +{$endregion} + +procedure TestZeroin(s:string; a,b:real; F:real->real; root,eps:real); +// root - точное значение корня +// eps - абсолютная погрешность значения корня +begin + var oZ:=new Zeroin(F,eps); + var x:=oZ.Value(a,b); + var Msg:=s+': корень: '+x+', ожидалось '+root; + Assert(Abs(x-root)<=eps,Msg); +end; + +begin + var nt:=1; + Writeln('*** ',&NumLibABCVersion,' ***'); + Writeln(' *** Тестирование начато ***'); + + {$region ApproxCheb} + begin + var e:=0.1; + var x:=ArrGen(12,i->0.25*i-2); + var y:=x.Select(z->2*z-5*Sqr(z)+8*z*Sqr(z)).ToArray; + var oC:=new ApproxCheb(x,y,e); + oC.MakeCoef; + TestApproxCheb('AppoxCheb 1',oC.c,Arr(0.0,2.0,-5.0,8.0),1e-12); + + e:=0.1; + x:=ArrGen(10,i->i-3.0); + y:=x.Select(z->4+z*(-2.5+z*(1.752+z*(-9+z*0.28)))).ToArray; + oC:=new ApproxCheb(x,y,e); + oC.MakeCoef; + TestApproxCheb('AppoxCheb 2',oC.c,Arr(4.0,-2.5,1.752,-9.0,0.28),1e-12); + + e:=0.5; + x:=ArrGen(7,i->0.2*i-0.3); + y:=x.Select(z->3*sin(z)+5.6*Ln(Abs(z))).ToArray; + oC:=new ApproxCheb(x,y,e); + TestApproxCheb('AppoxCheb 3',oC.f,y,0.8); + + Writeln(nt:2,'. Проверка класса ApproxCheb завершена'); + nt+=1; + end; + {$endregion} + + {$region Decomp} + begin + // из первоисточника + var a:=new real[3,3] ( + (10.0,-7.0,0.0), + (-3.0,2.0,6.0), + (5.0,-1.0,5.0)); + var b:=Arr(7.0,4.0,6.0); + var r:=Arr(0.0,-1.0,1.0); + TestDecomp('Decomp/Solve 1',a,b,r,1e-15); + + // Фаддеев Д.К, Фаддеева В.Н. "Вычислительные методы линейной алгебры" + // Точное регение получено при помощи пакета Maple15 + a:=new real[4,4] ( + (1.0,0.17,-0.25,0.54), + (0.47,1.0,0.67,-0.32), + (-0.11,0.35,1.0,-0.74), + (0.55,0.43,0.36,1.0)); + b:=Arr(0.3,0.5,0.7,0.9); + r:=Arr(7039205/15965951,-5796135/15965951,18629045/15965951,6283675/15965951); + TestDecomp('Decomp/Solve 2',a,b,r,1e-15); + + // Свидетельство к алгоритму 135б. В кн. Агеев М.И. и др. + // "Библиотека алгоритмов 101б-150б" + var aa:=new real[3,3] ( + (4.0,2.0,2.0), + (2.0,2.0,2.0), + (2.0,2.0,3.0)); + a:=Copy(aa); //для теста + //a:=MatrGen(3,3,(i,j)->aa[3*i+j]); + b:=Arr(2.0,3.0,4.0); + r:=Arr(-0.5,1.0,1.0); + TestDecomp('Decomp/Solve 3-1',a,b,r,1e-15); + a:=Copy(aa); + b:=Arr(-1.0,1.0,2.0); + r:=Arr(-1.0,0.5,1.0); + TestDecomp('Decomp/Solve 3-2',a,b,r,1e-15); + a:=Copy(aa); + b:=Arr(3.0,2.0,3.0); + r:=Arr(0.5,-0.5,1.0); + TestDecomp('Decomp/Solve 3-3',a,b,r,1e-15); + + Writeln(nt:2,'. Проверка класса Decomp/Solve завершена'); + nt+=1 + end; + {$endregion} + + {$region Factors} + begin + var a:=Arr(-20,7,73,-42); + TestFactors('Factors 1',a,Arr(3,-1,2,-1,3,5,7,4)); + + a:=Arr(45,-12,-52,-1,6); + TestFactors('Factors 2',a,Arr(2,1,1,3,2,-5)); + + a:=Arr(6,-13,9,-2); + TestFactors('Factors 3',a,Arr(3,-1,1,1,2,3,1,2)); + + a:=Arr(40,10,2); + TestFactors('Factors 4',a,Arr(0,1)); + + a:=Arr(-40,78,-29,3); + TestFactors('Factors 5',a,Arr(3,1,1,4,1,5,3,2)); + + Writeln(nt:2,'. Проверка класса Factors завершена'); + nt+=1 + end; + {$endregion} + + {$region FMin} + begin + var f:real->real:=x->x*(x*x-2)-5; + TestFMin('FMin 1',f,0,1,Sqrt(2/3),-(Sqrt(32/27)+5),1e-8,1e-18); + + TestFMin('FMin 2',f,-4,4,Sqrt(2/3),-(Sqrt(32/27)+5),1e-7,1e-18); + + f:=x->x*Sqr(x-1)*(x-3)*Sqr(x-3); + var etx:=(13-Sqrt(97))/12; + var ety:=-(232229+4171*Sqrt(97))/93312; + TestFMin('FMin 3',f,-5,1.5,etx,ety,1e-7,1e-17); + + etx:=(13+Sqrt(97))/12; + ety:=(-232229+4171*Sqrt(97))/93312; + TestFMin('FMin 4',f,0.5,3.1,etx,ety,1e-7,1e-15); + + f:=x->x=0?1e15:(x+2)*Exp(1/x); + TestFMin('FMin 5',f,-1.5,4,2.0,4*Exp(0.5),1e-7,1e-17); + + Writeln(nt:2,'. Проверка класса FMin завершена'); + nt+=1 + end; + {$endregion} + + {$region FMinN} + begin + var Rosenbrock:function(x:array of real):real:= + x->100*Sqr(x[1]-Sqr(x[0]))+Sqr(1-x[0]); + var xb:=Arr(-1.2,1.0); + var xet:=Arr(1.0,1.0); + TestFminN1('FMinN 1: HJ, функция Розенброка', + Rosenbrock,xb,xet,0,1e-5,1e-8); + + var Woods:function(x:array of real):real:=x-> + begin + var s1:=x[1]-Sqr(x[0]); + var s2:=1-x[0]; + var s3:=x[1]-1; + var t1:=x[3]-Sqr(x[2]); + var t2:=1-x[2]; + var t3:=x[3]-1; + var t4:=s3+t3; + var t5:=s3-t3; + Result:=100*Sqr(s1)+Sqr(s2)+90*Sqr(t1)+Sqr(t2)+10*Sqr(t4)+0.1*Sqr(t5) + end; + xb:=Arr(-3.0,-1.0,-3.0,-1.0); + xet:=Arr(1.0,1.0,1.0,1.0); + TestFminN1('FMinN 2: HJ, функция с 4 аргументами', + Woods,xb,xet,0,1e-4,1e-8); + + var f1:function(x:array of real):real:= + x->x[0]*(Sqr(x[0])-2)-5; + xb:=Arr(0.0); + xet:=Arr(Sqrt(2/3)); + TestFminN1('FMinN 3: HJ, функция x^3-2x-5', + f1,xb,xet,-Sqrt(32/27)-5,1e-4,1e-8); + + var FSimplex:function(x:array of real):real:=x-> + begin + var x1:=x[0]; + var x2:=x[1]; + var s:=0.0; + if x1+x2>8 then s:=real.MaxValue + else if -2*x1+3*x2>9 then s:=real.MaxValue + else if 2*x1-x2>10 then s:=real.MaxValue + else if x1<0 then s:=real.MaxValue + else if x2<0 then s:=real.MaxValue; + Result:=-4*x1-3*x2+1+s + end; + xb:=Arr(0.0,0.0); + xet:=Arr(6.0,2.0); + var oL:=new FMinN(xb,FSimplex); + var a:=Arr(0.0,0.0); + var b:=Arr(8.0,8.0); + var y:real; + oL.MKSearch(a,b,y); + xb:=oL.x.Select(t->real(Round(t))).ToArray; + TestFminN1('FMinN 4: MKSearch+HJ, целочисленная функция со штрафом', + FSimplex,xb,xet,-29,1e-4,1e-8); + + a:=Arr(-1.0,-1.0); + b:=Arr(2.0,2.0); + xb:=new real[a.Length]; + xet:=Arr(1.0,1.0); + TestFminN2('FMinN 5: BPHS, функция Розенброка', + Rosenbrock,a,b,100,1000,xet,0,1e-3,1e-5); + + a:=Arr(-1.0,-1.0,-1.0,-1.0); + b:=Arr(2.0,2.0,2.0,2.0); + xet:=Arr(1.0,1.0,1.0,1.0); + TestFminN2('FMinN 6: BPHS, функция с 4 аргументами', + Woods,a,b,100,5000,xet,0,1e-1,1e-2); + + a:=Arr(0.0,0.0); + b:=Arr(8.0,8.0); + xet:=Arr(6.0,2.0); + TestFminN2('FMinN 7: BestP, целочисленная функция со штрафом', + FSimplex,a,b,100,1000,xet,-29,1e-2,1e-6); + + f1:=x->4*Sqr(x[0]-5)+Sqr(x[1]-6); + xb:=Arr(-8.0,9.0); + var (t,R):=(1.0,1e-6); + var v:=Arr(f1(Arr(5.0,6.0)),5.0,6.0); + TestFMin4('FMinN 8: ARS',f1,xb,R,t,v,2*R,10*R); + + f1:=x->2*Sqr(x[0])+x[0]*x[1]+Sqr(x[1]); + xb:=Arr(-10.0,10.0); + (t,R):=(1.0,1e-10); + v:=Arr(f1(Arr(0.0,0.0)),0.0,0.0); + TestFMin4('FMinN 9: ARS',f1,xb,R,t,v,2*R,10*R); + + Writeln(nt:2,'. Проверка класса FMinN завершена'); + nt+=1 + end; + {$endregion} + + {$region Fraction} + begin + var r:=((Frc(5,5,9)-Frc(7,18))/35+(Frc(40,63)-Frc(8,21))/20+ + (Frc(83,90)-Frc(41,50))/2)*50; + TestFraction('Fraction 1',r,Frc(74,7)); + + r:=Frc(34,197)+Frc(6,9,91)-Frc(351,95113)*Frc(1,7); + TestFraction('Fraction 2',r,Frc(10692560566,1705090751)); + + var m:=Range(1,30,2).Aggregate(BigInteger(1),(i,j)->i*j); + var n:=Range(2,30,2).Aggregate(BigInteger(1),(i,j)->i*j)+1; + var a:=Frc(m,n); + var b:=Frc(6190283353629375,42849873690624001); + TestFraction('Fraction 3',a,b); + + Writeln(nt:2,'. Проверка класса Fraction завершена'); + nt+=1 + end; + {$endregion} + + {$region Matrix} + begin + var a:=new Matrix(3,4,-2,4,0,3,6,11,-5,7,0,8,-4,1); + a.SetRow(new Vector(a.Row(2).Value.Select(x->x-2).ToArray),2); + a.MultCol(1,3); + var vb:=new Vector(1,-1,0,2); + a.InsertRowBefore(vb,3); + a.SwapRows(2,3); + a.SwapCols(1,3); + a:=a.Transpose; + var Atr:=a.Inv; + var d:=254.0; + var x:=new Matrix(4,4,173/d,83/d,27/d,28/d,-426/d,-222/d,-112/d,72/d, + 122/d,60/d,44/d,8/d,-277/d,-105/d,-77/d,-14/d); + TestMatrixM('Matrix 1',Atr,x,1e-14); + + a:=new Matrix(2,4,-3,0,4,-1,2,-7,5,6); + var b:=new Matrix(2,3,8,1,-5,6,7,2); + var c:=new Matrix(3,4,1,-1,7,0,3,2,9,4,5,0,-2,-4); + var r:=(((a-b*c).Transpose)*a).Det; + TestMatrixS('Matrix 2',r,0.0,1e-15); + + a:=new Matrix(3,3,2,3,-1,1,-2,1,1,0,2); + vb:=new Vector(9,3,2); + var vr:=a.Inv*vb; + TestMatrixV('Matrix 3',vr,new Vector(4,0,-1),1e-15); + + vr:=new Vector(vb.Length); + var det:=a.Det; + for var i:=0 to vb.Length-1 do begin + var t:=a.Copy; + t.SetCol(vb,i,0); + var detx:=t.Det; + vr.Value[i]:=detx/det; + end; + TestMatrixV('Matrix 4',vr,new Vector(4,0,-1),1e-15); + + var cond:real; + vr:=A.SLAU(vb,cond); + TestMatrixV('Matrix 5.1',vr,new Vector(4,0,-1),1e-15); + TestMatrixS('Matrix 5.2',cond,1.97935318837932,1e-14); + + Writeln(nt:2,'. Проверка класса Matrix завершена'); + nt+=1 + end; {$endregion} + + {$region Polrt} + begin + var p:=new Polynom(-120,34,-4,-1,1); + var cr:=Arr(cplx(3,0),cplx(-4,0),cplx(1,-3),cplx(1,3)); + TestPolrt('Polrt 1',p,cr,1e-15); + + p:=new Polynom(6,-5,-2,1); + cr:=Arr(cplx(1,0),cplx(-2,0),cplx(3,0)); + TestPolrt('Polrt 2',p,cr,1e-15); + + p:=new Polynom(-120,274,-225,85,-15,1); + cr:=Arr(cplx(1,0),cplx(2,0),cplx(3,0),cplx(4,0),cplx(5,0)); + TestPolrt('Polrt 3',p,cr,1e-12); + + p:=new Polynom(8,-6,6,1,2,-2,1); + cr:=ArrFill(6,cplx(-1,-1)); + cr[0]:=cplx(0.5,-Sqrt(3)/2); cr[1]:=Conjugate(cr[0]); + cr[2]:=cplx(1.5,-Sqrt(7)/2); cr[3]:=Conjugate(cr[2]); + cr[5]:=Conjugate(cr[4]); + TestPolrt('Polrt 4',p,cr,1e-15); + + p:=new Polynom(-36,0,49,0,-14,0,1); + cr:=Arr(cplx(-2,0),cplx(2,0),cplx(-3,0),cplx(3,0),cplx(-1,0),cplx(1,0)); + TestPolrt('Polrt 5',p,cr,1e-15); + + p:=new Polynom(-16,0,0,0,1); + cr:=Arr(cplx(0,2),cplx(0,-2),cplx(-2,0),cplx(2,0)); + TestPolrt('Polrt 6',p,cr,1e-15); + + p:=new Polynom(-250,125,45,-32,4); + cr:=Arr(cplx(2.5,0),cplx(5,0),cplx(-2,0),cplx(2.5,0)); + TestPolrt('Polrt 7',p,cr,1e-8); + + p:=new Polynom(-1,0,0,0,0,1); + cr:=ArrFill(5,cplx(1,0)); // y=x^5-1 + cr[1]:=cplx(-(Sqrt(5)+1)/4,-Sqrt(10-2*Sqrt(5))/4); cr[2]:=Conjugate(cr[1]); + cr[3]:=cplx((Sqrt(5)-1)/4,-Sqrt(10+2*Sqrt(5))/4); cr[4]:=Conjugate(cr[3]); + TestPolrt('Polrt 8',p,cr,1e-15); + + Writeln(nt:2,'. Проверка класса PolRt завершена'); + nt+=1; + end; + {$endregion} + + {$region Polynom} + begin + var p:=new Polynom(2,6,8,3,1); // запись 13862(10) + TestPolynomV('Polynom 1',p,10,13862,1e-15); + + p:=new Polynom(0,3,8,6,4,2,5); // запись 0.386425 + TestPolynomV('Polynom 2',p,0.1,0.386425,1e-15); + + p:=new Polynom(1,0,1,1,0,1,1,0,1); // 365(10)=101101101(2) + TestPolynomV('Polynom 3',p,2,365,1e-15); + + p:=new Polynom(1,1,1/2,1/6,1/24,1/120,1/720,1/5040,1/40320); // exp(x) + TestPolynomV('Polynom 4',p,0.36,exp(0.36),1e-9); + + // пример -1435+(25*12+917) = -218 + var a:=new Polynom(5,3,4,1); + var b:=new Polynom(5,2); + var c:=new Polynom(2,1); + var d:=new Polynom(7,1,9); + TestPolynomV('Polynom 5',-a+(b*c+d),10,-218,1e-15); + + p:=new Polynom(6,-2,0,-5,0,2,3); + a:=new Polynom(-1,3,-2,4); + (b,c):=p/a; + var x:=pi; + var x1:=b.Value(x)+c.Value(x)/a.Value(x); + var x2:=p.Value(x)/a.Value(x); + var Msg:='Polynom 6: найдено: '+x1+', ожидалось '+x2; + Assert(Abs(x1-x2)<=1e-15,Msg); + + var k:=ArrFill(20,0.0); + var i:=3; + k[1]:=2; + var pr:=1.0; + while i<=19 do begin + pr:=-pr*i*(i-1); + k[i]:=1/pr; + i:=i+2 + end; + p:=new Polynom(k); + var p2:=p.EconomSym(1,1e-10); + var dm:=-1.0;; + for var j:=0 to 20 do begin + x:=-1.0+j/10; + var y:=p.Value(x); + var z:=p2.Value(x); + var d1:=Abs(y-z); + if dmreal:=x->x=0?1.0:Sin(x)/x; // интегральный синус + var s:real; + begin + s:=2.0; + var (p2,f1,sgn,i):=(2.0,1.0,1,1); + var tt:real; + repeat + p2*=4; f1*=2*i*(2*i+1); sgn:=-sgn; + tt:=sgn*p2/f1/(2*i+1); + s+=tt; + i+=1; + until Abs(tt)4/(1+x*x); + TestQuanc8('Quanc8 2',0,1,f,abserr,relerr,pi,1e-13); + + s:=6+20*Sqrt(10); + TestQuanc8('Quanc8 3',-9,1000,x->1/Sqrt(Abs(x)),abserr,relerr,s,1e-3); + + f:=x->x/Sqrt(Sqr(Sqr(x))+16); + s:=ln(2)/2; + TestQuanc8('Quanc8 4',0,Sqrt(3),f,abserr,relerr,s,1e-12); + + f:=x->ArcCos(2*x); + s:=pi/2; + TestQuanc8('Quanc8 5',-0.5,0.5,f,abserr,relerr,s,1e-15); + + Writeln(nt:2,'. Проверка класса Quanc8 завершена'); + nt+=1 + end; + {$endregion} + + {$region RKF45} + begin + // лямбда-процедура чтобы не выходить за пределы блока + var p1:procedure(t:real; y,yp:array of real):=(t,y,yp)-> + begin + var alpha:=Sqr(ArcTan(1.0)); + var r:=y[0]*y[0]+y[1]*y[1]; r:=r*Sqrt(r)/alpha; + yp[0]:=y[2]; yp[1]:=y[3]; yp[2]:=-y[0]/r; yp[3]:=-y[1]/r + end; + // конец процедуры + var e:=0.25; + var y:=Arr(1.0-e,0.0,0.0,ArcTan(1)*Sqrt((1.0+e)/(1.0-e))); + var (abserr,relerr):=(0.0,0.3e-6); + var oL:=new RKF45(p1,y,abserr,relerr); + var (t,tb,th):=(0.0,12.0,0.5); + var t_out:=t; + var ss:=0.0; + repeat + oL.Solve(t,t_out); + ss+=t+oL.y[0]+y[1]; + case oL.flag of + -3,-2,-1,1,8: break; + 2:t_out:=t+th; + end + until t>=tb; + TestRKF45('RKF45 1',ss,140.749980780164,1e-12); + + p1:=(t,y,yp)->begin yp[0]:=y[0]/4*(1-y[0]/20) end; + // + (abserr,relerr):=(0.0,1e-6); + (t,tb,th):=(0.0,20.0,5.0); + y:=Arr(1.0); + t_out:=t; + oL:=new RKF45(p1,y,abserr,relerr); + ss:=0.0; + repeat + OL.Solve(t,t_out); + ss+=t+oL.y[0]+20/(1+19*Exp(-0.25*t)); + case oL.flag of + -3,-2,-1,1,8: break; + 2:t_out:=t+th + end + until t>=tb; + TestRKF45('RKF45 2',ss,136.941910731927,1e-12); + + (abserr,relerr):=(0.0,1e-6); + (t,tb,t_out):=(0.0,0.0,0.0); + var (te,ns):=(20.0,4); + y:=Arr(1.0); + oL:=new RKF45(p1,y,abserr,relerr); + oL.flag:=-1; + p1(t,y,oL.yp); + for var i:=1 to ns do begin + t:=((ns-i+1)*tb+(i-1)*te)/ns; + t_out:=((ns-i)*tb+i*te)/ns; + while oL.flag<0 do begin + oL.Solve(t,t_out); + ss+=t+oL.y[0]+20/(1+19*Exp(-0.25*t)); + case oL.flag of + -3,-1,1,8: break; + end + end; + oL.flag:=-2 + end; + TestRKF45('RKF45 3',ss,603.231676788451,1e-12); + + Writeln(nt:2,'. Проверка класса RKF45 завершена'); + nt+=1 + end; + {$endregion} + + {$region RootsIsolation} + begin + var f:real->real:=x->(x+4.5)*(x+3)*(x-2)*(x-3.8); + var (a,b,h):=(-10.0,8.0,0.5); + TestRootsIsolation('RootsIsolation 1',f,a,b,h,Arr(-4.5,-3.0,2.0,3.8)); + + f:=t->sin(t)/(1+Sqr(Exp(t)))-0.1; + (a,b,h):=(-10,5,0.3); + var r:=Arr(-9.52495,-6.18307,-3.24191,0.27789,1.00272); // найдено заранее + TestRootsIsolation('RootsIsolation 2',f,a,b,h,r); + + Writeln(nt:2,'. Проверка класса RootsIsolation завершена'); + nt+=1 + end; + {$endregion} + + {$region Spline} + begin + var f:real->real:=x->x*x*x; + var pp:=PartitionPoints(1.0,10.0,9).Select(x->new Point(x,f(x))).ToArray; + var Sp:=new Spline(pp); // создаем сплайн с заданными узлами интерполяции. + TestSpline('Spline1-1',1,f,1e-15,Sp); // левая точка + TestSpline('Spline1-2',1.25,f,1e-15,Sp); // внутри + TestSpline('Spline1-3',2.5,f,1e-15,Sp); // внутри + TestSpline('Spline1-4',7.2,f,1e-15,Sp); // внутри + TestSpline('Spline1-5',10,f,1e-5,Sp); // правая точка + + f:=x->Power(x,4); + pp:=PartitionPoints(1.0,10.0,9).Select(x->new Point(x,f(x))).ToArray; + Sp:=new Spline(pp); + TestSpline('Spline2-1',1.28,f,32,Sp); // 32% у края... надо исходный шаг мельче + TestSpline('Spline2-2',2.5,f,0.8,Sp); // 0.8% + TestSpline('Spline2-3',5.1,f,0.005,Sp); // 0.005% + TestSpline('Spline2-4',9.7,f,0.01,Sp); // 0.01% + + pp:=PartitionPoints(1.0,10.0,36).Select(x->new Point(x,f(x))).ToArray; + Sp:=new Spline(pp); + TestSpline('Spline3-1',1.28,f,0.03,Sp); // 0.03% + TestSpline('Spline3-2',1.1,f,0.24,Sp); // 0.24% + TestSpline('Spline3-3',1.03,f,0.18,Sp); // 0.18% + + f:=x->(3*x-8)/(8*x-4.1); + pp:=PartitionPoints(1.0,10.0,18).Select(x->new Point(x,f(x))).ToArray; + Sp:=new Spline(pp); + TestSpline('Spline4-1',1.1,f,4.8,Sp); // 4.8% + TestSpline('Spline4-2',2.6,f,5.8,Sp); // 5.8% + TestSpline('Spline4-3',5.9,f,0.001,Sp); // <0.001% + TestSpline('Spline4-4',9.9,f,0.001,Sp); // <0.001% + + Writeln(nt:2,'. Проверка класса Spline завершена'); + nt+=1 + end; + {$endregion} + + {$region Svenn} + begin + var f:real->real:=x->Sqr(x-5); + TestSvenn('Svenn 1',f,0,1,5-1e-10,5+1e-10); + + f:=x->Abs((x-4)*(x+7)); + TestSvenn('Svenn 2',f,0,2,4-1e-10,4+1e-10); + + TestSvenn('Svenn 3',f,-3,1,-7-1e-10,-7+1e-10); + + f:=x->x*(x*x-2)-5; + TestSvenn('Svenn 4',f,0,1,2.0945514814,2.0945514816); + + Writeln(nt:2,'. Проверка класса Svenn завершена'); + nt+=1 + end; + {$endregion} + + {$region Vector} + begin + var a:=new Vector(3,-4,1); + var b:=new Vector(-1,0,5); + var r:=(2*a-b).ModV; + TestVector1('Vector 1',r,Sqrt(122),1e-15); + + a:=new Vector(Arr(3.0,0.0,-4.0)); + var vr:=a.Ort; + TestVectorN('Vector 2',vr,new Vector(0.6,0,-0.8),1e-15); + + var pa:=Arr(2.0,-1.0,2.0); + var pb:=Arr(1.0,2.0,-1.0); + var pc:=Arr(3.0,2.0,1.0); + var BC:=new Vector(pb,pb); + var CA:=new Vector(pc,pa); + var CB:=new Vector(pc,pb); + vr:=(BC-2*CA).VP(CB); + TestVectorN('Vector 3',vr,new Vector(-12,8,12),1e-15); + + a:=new Vector(2,-1,1); + b:=new Vector(2,3,6); + r:=a*b/(a.ModV*b.ModV); + TestVector1('Vector 4',r,1/Sqrt(6),1e-15); + + pa:=Arr(7.0,3.0,4.0); + pb:=Arr(1.0,0.0,6.0); + pc:=Arr(4.0,5.0,-2.0); + a:=new Vector(pa,pb); + b:=new Vector(pA,pc); + r:=a.VP(b).ModV/2; + TestVector1('Vector 5',r,24.5,1e-15); + + Writeln(nt:2,'. Проверка класса Vector завершена'); + nt+=1 + end; + {$endregion} + + {$region Zeroin} + begin + var f:real->real:=x->x*(x*x-2)-5; // классика + // Точное решeние по формуле Кардано 2.094551481542326591482386540579... + var root:=(Power(5+Sqrt(643/27),1/3)+Power(5-Sqrt(643/27),1/3))/Power(2,1/3); + TestZeroin('Zeroin 1',2,3,f,root,1e-15); + + f:=x->Power((12-2*x)/(x-1),1/3)+Power((x-1)/(12-2*x),1/3)-2.5; + root:=2; + TestZeroin('Zeroin 2',1.01,3.5,f,root,1e-15); // разрыв при х=1 + + root:=97/17; + TestZeroin('Zeroin 3',3,5.99,f,root,1e-15); // разрыв при х=6 + + f:=x->3*Sin(x)+4*Cos(x)-5; + root:=2*ArcTan(1/3); + TestZeroin('Zeroin 4',-1,1,f,root,1e-8); + + Writeln(nt:2,'. Проверка класса Zeroin завершена'); + nt+=1 + end; + {$endregion} + + Writeln('*** Тестирование завершено ***'); + Writeln('*** Если в тесте класса FMinN были ошибки, повторите тест ***'); + +end. \ No newline at end of file diff --git a/NumLibABC/PolRT1.pas b/NumLibABC/PolRT1.pas new file mode 100644 index 0000000..c97da73 --- /dev/null +++ b/NumLibABC/PolRT1.pas @@ -0,0 +1,10 @@ +uses NumLibABC; + +// +// +begin + var p:=new Polynom(-609, -283 ,294, -38, -5,1); + var oL:=new PolRt(p); + if oL.ier=0 then oL.Value.Println + else Writeln(': ier=',oL.ier); +end. diff --git a/NumLibABC/Polynom1.pas b/NumLibABC/Polynom1.pas new file mode 100644 index 0000000..52a2aa2 --- /dev/null +++ b/NumLibABC/Polynom1.pas @@ -0,0 +1,11 @@ +uses NumLibABC; + +// +begin + var u:=(new Polynom(2, -6, 0, 3.8, 0, 1)).Value(-7.16); // + Println(u); + + var t:=new Polynom(1, -7, 12, -3, -2); + var (p,q):=(t.PInt, t.PDif); // + p.PrintlnBeauty; q.PrintlnBeauty; +end. diff --git a/NumLibABC/Polynom2.pas b/NumLibABC/Polynom2.pas new file mode 100644 index 0000000..6b8a408 --- /dev/null +++ b/NumLibABC/Polynom2.pas @@ -0,0 +1,16 @@ +uses NumLibABC; + +// +begin + var a:=new Polynom(6.5,-4,2.12,1); + var b:=new Polynom(3,0,-3.8); + var c:=new Polynom(ArrGen(5,i->i*i+1.0)); + (-c +(a-2*b)*a+11.5*(1-b)).Println; // - + + a:=new Polynom(3,0,-72,12,0,-1,2); + b:=new Polynom(-1,0,2,1); + var (p,q):=a/b; + Print(''); p.PrintlnBeauty; + Print(''); b.PrintlnBeauty + +end. diff --git a/NumLibABC/Quanc8_1.pas b/NumLibABC/Quanc8_1.pas new file mode 100644 index 0000000..d749547 --- /dev/null +++ b/NumLibABC/Quanc8_1.pas @@ -0,0 +1,9 @@ +uses NumLibABC; + +// + +begin + var f:real->real := x->x=0?1.0:sin(x)/x; + var oL := new Quanc8(f,0,2,1e-7,0); + Writeln(oL.Value); +end. diff --git a/NumLibABC/RootsIsolation1.pas b/NumLibABC/RootsIsolation1.pas new file mode 100644 index 0000000..5e22591 --- /dev/null +++ b/NumLibABC/RootsIsolation1.pas @@ -0,0 +1,10 @@ +uses NumLibABC; + +// y(x)=0 +// +begin + var f:real->real:=t->sin(t)/(1+Sqr(Exp(t)))-0.1; + var (a,b,h):=(-10,5,0.5); + var oL:=new RootsIsolation(f,a,b,h); + Println(oL.Value) +end. diff --git a/NumLibABC/SLAU1.pas b/NumLibABC/SLAU1.pas new file mode 100644 index 0000000..3395d2f --- /dev/null +++ b/NumLibABC/SLAU1.pas @@ -0,0 +1,11 @@ +uses NumLibABC; + +// () +begin + var A:=new Matrix(3,3,2,3,-1,1,-2,1,1,0,2); + var B:=new Vector(9,3,2); + var cond:real; + var x:=A.SLAU(B,cond); + x.Println; + Writeln(' = ',cond) +end. diff --git a/NumLibABC/Spline1.pas b/NumLibABC/Spline1.pas new file mode 100644 index 0000000..09d0b46 --- /dev/null +++ b/NumLibABC/Spline1.pas @@ -0,0 +1,12 @@ +uses NumLibABC; + +// +begin + var f:real->real:=x->(3*x-8)/(8*x-4.1); + var pt:=PartitionPoints(1.0,10.0,18).Select(x->new Point(x,f(x))).ToArray; + var oL:=new Spline(pt); + var r:=oL.Value(4.8); + Writeln(' =4.8: ',r); + var (d1,d2):=oL.Diff(4.8); + Writeln(' 1- 2- : ',d1,' ',d2) +end. diff --git a/NumLibABC/Vector1.pas b/NumLibABC/Vector1.pas new file mode 100644 index 0000000..b11ad62 --- /dev/null +++ b/NumLibABC/Vector1.pas @@ -0,0 +1,20 @@ +uses NumLibABC; + +// +begin + // + var a:=new Vector(3,-4,1); + var b:=new Vector(-1,0,5); + Writeln((2*a-b).ModV); + + // + var p:=Arr(3.0,0.0,-4.0); + a:=new Vector(p); + a.Ort.Println; + + // + a:=new Vector(2,-1,1); + b:=new Vector(2,3,6); + Writeln(a*b/(a.ModV*b.ModV)) + +end. diff --git a/NumLibABC/Zeroin1.pas b/NumLibABC/Zeroin1.pas new file mode 100644 index 0000000..5840c73 --- /dev/null +++ b/NumLibABC/Zeroin1.pas @@ -0,0 +1,9 @@ +uses NumLibABC; + +// +begin + var f:real->real := t->sin(t)/(1+Sqr(Exp(t)))-0.1; + var oL:=new Zeroin(f,1e-12); + Println(oL.Value(-10,-9.5), oL.Value(-6.5,-6), oL.Value(-3.5,-3), + oL.Value(0,0.5),oL.Value(1,1.5)) +end. diff --git a/OMPSamples/Hanoi.pas b/OMPSamples/Hanoi.pas new file mode 100644 index 0000000..9b02ba6 --- /dev/null +++ b/OMPSamples/Hanoi.pas @@ -0,0 +1,35 @@ +//Демонстрация использования параллельных секций на примере задачи о ханойских башнях +// Вывод решения закомментирован, так как он занимает большую часть времени + +//параллельная процедура +procedure MovePiramidParallel(n: integer; f, t, w: integer); +begin + if n = 0 then + exit; + {$omp parallel sections} + begin + MovePiramidParallel(n - 1, f, w, t); + //writelnFormat('Переложить диск с {0} на {1}', f, t); + MovePiramidParallel(n - 1, w, t, f); + end; +end; +//последовательная процедура +procedure MovePiramid(n: integer; f, t, w: integer); +begin + if n = 0 then + exit; + MovePiramid(n - 1, f, w, t); + //writelnFormat('Переложить диск с {0} на {1}', f, t); + MovePiramid(n - 1, w, t, f); + +end; + +begin + var m0 := Milliseconds; + MovePiramid(27, 1, 2, 3); + writeln('Последовательное выполнение: ', Milliseconds - m0, 'ms'); + + var m1 := Milliseconds; + MovePiramidParallel(27, 1, 2, 3); + writeln('Параллельное выполнение: ', Milliseconds - m1, 'ms'); +end. \ No newline at end of file diff --git a/OMPSamples/MultMatrix.pas b/OMPSamples/MultMatrix.pas new file mode 100644 index 0000000..13796ff --- /dev/null +++ b/OMPSamples/MultMatrix.pas @@ -0,0 +1,37 @@ +uses Arrays; + +procedure ParallelMult(a,b,c: array [,] of real; n: integer); +begin + {$omp parallel for } + for var i:=0 to n-1 do + for var j:=0 to n-1 do + begin + c[i,j]:=0; + for var l:=0 to n-1 do + c[i,j]:=c[i,j]+a[i,l]*b[l,j]; + end; +end; + +procedure Mult(a,b,c: array [,] of real; n: integer); +begin + for var i:=0 to n-1 do + for var j:=0 to n-1 do + begin + c[i,j]:=0; + for var l:=0 to n-1 do + c[i,j]:=c[i,j]+a[i,l]*b[l,j]; + end; +end; + +const n = 400; + +begin + var a := Arrays.CreateRandomRealMatrix(n,n); + var b := Arrays.CreateRandomRealMatrix(n,n); + var c := new real[n,n]; + ParallelMult(a,b,c,n); + writeln('Параллельное перемножение матриц: ',Milliseconds,' миллисекунд'); + var d := Milliseconds; + Mult(a,b,c,n); + writeln('Последовательное перемножение матриц: ',Milliseconds-d,' миллисекунд'); +end. \ No newline at end of file diff --git a/OMPSamples/Mutual Lock.pas b/OMPSamples/Mutual Lock.pas new file mode 100644 index 0000000..03e1848 --- /dev/null +++ b/OMPSamples/Mutual Lock.pas @@ -0,0 +1,33 @@ +// Демонстрация использования критических секций и возможных взаимоблокировок +begin + {$omp parallel sections} + begin + begin + WriteLn('Thread 1 started'); + {$omp critical a} + begin + Writeln('Lock a set by 1 thread'); + //ReadLn; + {$omp critical b} + begin + Writeln('Lock b set by 1 thread'); + end; + end; + WriteLn('Thread 1 finished'); + end; + begin + WriteLn('Thread 2 started'); + {$omp critical b} + begin + Writeln('Lock b set by 2 thread'); + //ReadLn; + {$omp critical a} + begin + Writeln('Lock a set by 2 thread'); + end; + end; + WriteLn('Thread 2 finished'); + end; + end; + Writeln('Program finished without mutual lock!'); +end. \ No newline at end of file diff --git a/OMPSamples/QuickSort.pas b/OMPSamples/QuickSort.pas new file mode 100644 index 0000000..ca6541c --- /dev/null +++ b/OMPSamples/QuickSort.pas @@ -0,0 +1,96 @@ +//Демонстрация использования параллельных секций на примере быстрой сортировки +var + a: array of integer; + +var + b: array of integer; + +// Partition - разделение A[l]..A[r] на части A[l]..A[q] <= A[q+1]..A[r] +function Partition(a: array of integer; l, r: integer): integer; +begin + var i := l - 1; + var j := r + 1; + var x := A[l]; + while True do + begin + repeat + i += 1; + until A[i] >= x; + repeat + j -= 1; + until A[j] <= x; + if i < j then + Swap(A[i], A[j]) + else + begin + Result := j; + exit; + end; + end; +end; + + // Параллельная cортировка частей +procedure Sort(A: array of integer; l, r: integer); +begin + if l >= r then + exit; + var j := Partition(A, l, r); + {$omp parallel sections} + begin + Sort(A, l, j); + Sort(A, j + 1, r); + end; +end; +// Параллельная сортировка +procedure QuickSortParrallel(A: array of integer); +begin + Sort(A, 0, a.Length - 1) +end; + +//Последовательная Сортировка частей +procedure SortSeq(a: array of integer; l, r: integer); +begin + if l >= r then + exit; + var j := Partition(A, l, r); + SortSeq(A, l, j); + SortSeq(A, j + 1, r); +end; +//Последовательная сортировка +procedure QuickSortSeq(A: array of integer); +begin + SortSeq(A, 0, a.Length - 1) +end; + //заполнение массивов равными значениями для обоих сортировок +procedure FillRandArr(A, B: array of integer); +begin + Randomize; + for var i := 0 to A.Length - 1 do + begin + a[i] := Random(1000); + b[i] := a[i]; + end; +end; + //Вывод массива +procedure printArr(A: array of integer); +begin + Randomize; + for var i := 0 to A.Length - 1 do + writeln(a[i]); +end; + +begin + + SetLength(a, 10000000); + SetLength(b, 10000000); + + FillRandArr(a, b); + var m1 := Milliseconds; + QuickSortSeq(B); + writeln('Последовательное выполнение: ', Milliseconds - m1, 'ms'); + + var m0 := Milliseconds; + QuickSortParrallel(a); + writeln('Параллельное выполнение: ', Milliseconds - m0, 'ms'); + +end. \ No newline at end of file diff --git a/OMPSamples/SqrSinArrays.pas b/OMPSamples/SqrSinArrays.pas new file mode 100644 index 0000000..3c7de0f --- /dev/null +++ b/OMPSamples/SqrSinArrays.pas @@ -0,0 +1,47 @@ +// демонстрация работы параллельного for +//заполнение массива +procedure FillRandArr(A: array of real); +begin + Randomize; + for var i := 0 to A.Length - 1 do + a[i] := Random(1000); +end; + // вывод массива +procedure printArr(A: array of real); +begin + for var i := 0 to A.Length - 1 do + writeln(a[i]); +end; +// Последовательное вычисление квадратов синусов +procedure SqrSinArr(A: array of real; var C: array of real); +begin + + for var i := 0 to A.Length - 1 do + C[i] := sqr(sin(A[i])); +end; +// Параллельное вычисление квадратов синусов +procedure SqrSinArrParallel(A: array of real; var C: array of real); +begin + + {$omp parallel for} + for var i := 0 to A.Length - 1 do + C[i] := sqr(sin(A[i])); +end; + +begin + var A: array of real; + var C: array of real; + SetLength(A, 10000000); + SetLength(C, A.Length); + FillRandArr(A); + + var m0 := Milliseconds; + SqrSinArrParallel(A, C); + + writeln('Параллельное выполнение: ', Milliseconds - m0, 'ms'); + + m0 := Milliseconds; + SqrSinArr(A, C); + writeln('Последовательное выполнение: ', Milliseconds - m0, 'ms'); + +end. \ No newline at end of file diff --git a/OMPSamples/SumOfPrime.pas b/OMPSamples/SumOfPrime.pas new file mode 100644 index 0000000..ef2c2e6 --- /dev/null +++ b/OMPSamples/SumOfPrime.pas @@ -0,0 +1,44 @@ +// Демонстрация работы директивы parallel for c опцией редукции +// на примере вычисления суммы простых чисел среди первых n +// натуральных чисел + +// проверка на простоту числа n +function IsPrime(n:integer):boolean; +begin + result:=false; + for var i:integer:=2 to round(sqrt(n)) do + if n mod i = 0 then + exit; + result:=true; +end; +//Последовательное вычисление суммы простых чисел +function SumOfPrimesSeq(n:integer):int64; +begin + var sum:int64:=0; + for var i:integer:=2 to n do + if IsPrime(i) then + sum:=sum+i; + result:=sum; +end; +//Параллельное вычисление суммы простых чисел +function SumOfPrimesPar(n:integer):int64; +begin + var sum:int64:=0; + {$omp parallel for reduction(+:sum)} + for var i:integer:=2 to n do + if IsPrime(i) then + sum:=sum+i; + result:=sum; +end; + +const Count = 5000000; + +begin + var t := Milliseconds; + WriteLn(SumOfPrimesSeq(Count)); + Writeln('Seq time = ', Milliseconds - t); + + t := Milliseconds; + WriteLn(SumOfPrimesPar(Count)); + Writeln('Par time = ', Milliseconds - t); +end. \ No newline at end of file diff --git a/OMPSamples/Write Critical.pas b/OMPSamples/Write Critical.pas new file mode 100644 index 0000000..c850aa8 --- /dev/null +++ b/OMPSamples/Write Critical.pas @@ -0,0 +1,27 @@ +// Вывод в параллельной секции без использования критических секций +// и с их использованием. В первом случае из-за параллельного доступа +// к разделяемому ресурсу возможно, что строки будут выводиться +// на одной строке, и в произвольно порядке. Во втором случае такого не будет. +begin + {$omp parallel sections} + begin + begin + WriteLn('Thread 1 started'); + end; + begin + WriteLn('Thread 2 started'); + end; + end; + + {$omp parallel sections} + begin + begin + {$omp critical a} + WriteLn('Thread 1 started'); + end; + begin + {$omp critical a} + WriteLn('Thread 2 started'); + end; + end; +end. \ No newline at end of file diff --git a/OpenGL и OpenCL/OpenCL/MatrMlt.cl b/OpenGL и OpenCL/OpenCL/MatrMlt.cl new file mode 100644 index 0000000..8c66636 --- /dev/null +++ b/OpenGL и OpenCL/OpenCL/MatrMlt.cl @@ -0,0 +1,28 @@ +#pragma OPENCL EXTENSION cl_khr_fp64: enable + + + +__kernel void MatrMltMatr(__global double* A, __global double* B, __global double* C, int W) +{ + int cX = get_global_id(0); + int cY = get_global_id(1); + + double sum = 0.0; + for (int i=0; i(A_Matr), // Тип в &<> надо указывать явно, потому что компилятор не может вычислить его из типа элементов массива + B.NewQueue.AddWriteArray2&(B_Mart), + C, + W + ); + + var Otp_C_Q := + C.NewQueue.AddReadArray2&(A_Matr) + + HPQ(()-> + begin + 'Матрица С = A*B:'.Println; + A_Matr.Println; + Writeln; + end); + + var Calc_V2_Q := + code['MatrMltVec'].NewQueue.AddExec1(MatrW, + C, + V1.NewQueue.AddWriteArray1&(V1_Arr), + V2, + W + ); + + var Otp_V2_Q := + V2.NewQueue.AddReadArray1&(V1_Arr) + + HPQ(()-> + begin + 'Вектор V2 = C*V1:'.Println; + V1_Arr.Println; + Writeln; + end); + + // Выполнение всего и сразу асинхронный вывод + + Context.Default.SyncInvoke( + + Calc_C_Q + + Calc_V2_Q * Otp_C_Q + // Считать V2 и выводить C можно одновременно, поэтому тут *, т.е. параллельное выполнение + Otp_V2_Q + + ); + + except + on e: Exception do Writeln(e); // Эта строчка позволяет выводить всю ошибку, если при выполнении Context.SyncInvoke возникла ошибка + end; +end. \ No newline at end of file diff --git a/OpenGL и OpenCL/OpenCLABC/0Простейшие примеры/SimpleAddition.cl b/OpenGL и OpenCL/OpenCLABC/0Простейшие примеры/SimpleAddition.cl new file mode 100644 index 0000000..8f5d9c5 --- /dev/null +++ b/OpenGL и OpenCL/OpenCLABC/0Простейшие примеры/SimpleAddition.cl @@ -0,0 +1,12 @@ + + + +// Это подпрограмма которую вызывает из "SimpleAddition.pas" 10 раз параллельно +__kernel void TEST(__global int* message) +{ + int gid = get_global_id(0); // номер текущего вызова TEST + + message[gid] += gid; +} + + diff --git a/OpenGL и OpenCL/OpenCLABC/0Простейшие примеры/SimpleAddition.pas b/OpenGL и OpenCL/OpenCLABC/0Простейшие примеры/SimpleAddition.pas new file mode 100644 index 0000000..810b3fd --- /dev/null +++ b/OpenGL и OpenCL/OpenCLABC/0Простейшие примеры/SimpleAddition.pas @@ -0,0 +1,27 @@ +uses OpenCLABC; + +begin + + // Чтение и компиляция .cl файла + + var prog := new ProgramCode(Context.Default, ReadAllText('SimpleAddition.cl')); + + // Подготовка параметров + + var A := new Buffer( 10 * sizeof(integer) ); // Буфер достаточного размера, чтобы хранить 10 элементов типа "integer" + + // Выполнение + + prog['TEST'].Exec1(10, // Используем 10 ядер + + // Заполняем весь буфер значениями (1), прямо перед выполнением + // Тип значения integer, потому что это тип по-умолчанию для целых чисел + A.NewQueue.AddFillValue(1) + + ); + + // Чтение и вывод результата + + A.GetArray1&.Println; // Читаем всё содержимое как одномерный массив с элементами типа "integer" + +end. \ No newline at end of file diff --git a/OpenGL и OpenCL/OpenCLABC/Wait очереди/1.pas b/OpenGL и OpenCL/OpenCLABC/Wait очереди/1.pas new file mode 100644 index 0000000..4e2d514 --- /dev/null +++ b/OpenGL и OpenCL/OpenCLABC/Wait очереди/1.pas @@ -0,0 +1,32 @@ +uses OpenCLABC; +uses NamedQData; + +begin + // График выполнения очередей: + // + // D + // / + // B + // / \ + // A E + // \ / + // C + // \ + // F + // + + var A := NamedQ('A'); + var B := NamedQ('B'); + var C := NamedQ('C'); + var D := NamedQ('D'); + var E := NamedQ('E'); + var F := NamedQ('F'); + + Context.Default.SyncInvoke( + A + + (B+D) * + (C+F) * + (WaitForAll(B,C) + E) + ); + +end. \ No newline at end of file diff --git a/OpenGL и OpenCL/OpenCLABC/Wait очереди/2.pas b/OpenGL и OpenCL/OpenCLABC/Wait очереди/2.pas new file mode 100644 index 0000000..c04e7c5 --- /dev/null +++ b/OpenGL и OpenCL/OpenCLABC/Wait очереди/2.pas @@ -0,0 +1,31 @@ +uses OpenCLABC; +uses NamedQData; + +begin + // График выполнения очередей: + // + // A1--B1--C1------E1 + // \ / + // \ / + // A2------C2--D2--E2 + // + + var A1 := NamedQ('A1'); + var A2 := NamedQ('A2'); + + var B1 := NamedQ('B1'); + + var C1 := NamedQ('C1'); + var C2 := NamedQ('C2'); + + var D2 := NamedQ('D2'); + + var E1 := NamedQ('E1'); + var E2 := NamedQ('E2'); + + Context.Default.SyncInvoke( + ( A1 + B1 + C1 + WaitFor(D2) + E1 ) * + ( A2 + WaitFor(B1) + C2 + D2 + E2 ) + ); + +end. \ No newline at end of file diff --git a/OpenGL и OpenCL/OpenCLABC/Wait очереди/NamedQData.pas b/OpenGL и OpenCL/OpenCLABC/Wait очереди/NamedQData.pas new file mode 100644 index 0000000..7af3a38 --- /dev/null +++ b/OpenGL и OpenCL/OpenCLABC/Wait очереди/NamedQData.pas @@ -0,0 +1,13 @@ +unit NamedQData; + +uses OpenCLABC; + +function NamedQ(name: string; delay: integer := 1000) := +HPQ(()-> +begin + lock output do Writeln($'Очередь {name} начала выполнятся'); + Sleep(delay); + lock output do Writeln($'Очередь {name} выполнилась'); +end); + +end. \ No newline at end of file diff --git a/OpenGL и OpenCL/OpenCLABC/Прекомпиляция ProgramCode/0.cl b/OpenGL и OpenCL/OpenCLABC/Прекомпиляция ProgramCode/0.cl new file mode 100644 index 0000000..50d612d --- /dev/null +++ b/OpenGL и OpenCL/OpenCLABC/Прекомпиляция ProgramCode/0.cl @@ -0,0 +1,11 @@ + + + +__kernel void TEST(__global int* message) +{ + int gid = get_global_id(0); // номер текущего вызова TEST + + message[gid] += gid; +} + + diff --git a/OpenGL и OpenCL/OpenCLABC/Прекомпиляция ProgramCode/Использовать.pas b/OpenGL и OpenCL/OpenCLABC/Прекомпиляция ProgramCode/Использовать.pas new file mode 100644 index 0000000..e4b8a59 --- /dev/null +++ b/OpenGL и OpenCL/OpenCLABC/Прекомпиляция ProgramCode/Использовать.pas @@ -0,0 +1,24 @@ +uses OpenCLABC; + +begin + + // Запустите "Прекомпилировать.pas", чтобы создать этот файл + {$resource 0.cl.temp_bin} + + var prog := ProgramCode.DeserializeFrom(Context.Default, + System.Reflection.Assembly.GetExecutingAssembly.GetManifestResourceStream('0.cl.temp_bin') + ); + + // Дальше всё так же как в "0Простейшие примеры\SimpleAddition" + + var A := new Buffer( 10 * sizeof(integer) ); + + prog['TEST'].Exec1(10, + + A.NewQueue.AddFillValue(1) + + ); + + A.GetArray1&.Println; + +end. \ No newline at end of file diff --git a/OpenGL и OpenCL/OpenCLABC/Прекомпиляция ProgramCode/Прекомпилировать.pas b/OpenGL и OpenCL/OpenCLABC/Прекомпиляция ProgramCode/Прекомпилировать.pas new file mode 100644 index 0000000..fa75e2d --- /dev/null +++ b/OpenGL и OpenCL/OpenCLABC/Прекомпиляция ProgramCode/Прекомпилировать.pas @@ -0,0 +1,8 @@ +uses OpenCLABC; + +begin + var prog := new ProgramCode(Context.Default, ReadAllText('0.cl')); + var f := System.IO.File.Create('0.cl.temp_bin'); + prog.SerializeTo(f); + f.Close; +end. \ No newline at end of file diff --git a/OpenGL и OpenCL/OpenGL/Rot Triangle 1.vertex.glsl b/OpenGL и OpenCL/OpenGL/Rot Triangle 1.vertex.glsl new file mode 100644 index 0000000..9d216f7 --- /dev/null +++ b/OpenGL и OpenCL/OpenGL/Rot Triangle 1.vertex.glsl @@ -0,0 +1,18 @@ +#version 460 + +attribute vec2 position; +attribute vec3 color; +uniform float rot_k; + +void main() +{ + + gl_Position.x = position.x*rot_k; + gl_Position.y = position.y; + gl_Position.z = 0.0f; + gl_Position.w = 1.0f; + + gl_FrontColor.rgb = color; + gl_FrontColor.a = 1.0f; + +} diff --git a/OpenGL и OpenCL/OpenGL/Крутящийся треугольник 1 (простейший пример).pas b/OpenGL и OpenCL/OpenGL/Крутящийся треугольник 1 (простейший пример).pas new file mode 100644 index 0000000..63948b3 --- /dev/null +++ b/OpenGL и OpenCL/OpenGL/Крутящийся треугольник 1 (простейший пример).pas @@ -0,0 +1,238 @@ +{$reference System.Windows.Forms.dll} +{$reference System.Drawing.dll} + +// Данный пример демонстрирует запуск простейшей программы с модулем OpenGL +// Примите во внимание, что методы из gl_gdi. - могут служить только временной заменой в серьёзной программе +// (По крайней мере в данной версии. В будущем, возможно, gl_gdi будет улучшено) +// Они использованы тут, чтоб пример был проще + +uses System.Windows.Forms; +uses System.Drawing; +uses System; +uses OpenGL; + +{$apptype windows} // убирает консоль + +var gl: OpenGL.gl; + +{$region Shader} + +function InitShader(fname: string; st: ShaderType): gl_shader; +begin + Result := gl.CreateShader(st); + + var source := ReadAllText(fname); + + gl.ShaderSource(Result, 1, + new string[](source), + new integer[](source.Length) + ); + + gl.CompileShader(Result); + // получаем состояние успешности компиляции + // 1=успешно + // 0=ошибка + var comp_ok: integer; + gl.GetShaderiv(Result, ShaderParameterName.COMPILE_STATUS, comp_ok); + if comp_ok = 0 then + begin + + // узнаём нужную длинную строки + var l: integer; + gl.GetShaderiv(Result, ShaderParameterName.INFO_LOG_LENGTH, l); + + // выделяем достаточно памяти чтоб сохранить строку + var ptr := System.Runtime.InteropServices.Marshal.AllocHGlobal(l); + + // получаем строку логов + gl.GetShaderInfoLog(Result, l, IntPtr.Zero, ptr); + + // преобразовываем в управляемую строку + var log := System.Runtime.InteropServices.Marshal.PtrToStringAnsi(ptr); + Writeln(log); + + // и в конце обязательно освобождаем памяти, чтобы не было утечек памяти + System.Runtime.InteropServices.Marshal.FreeHGlobal(ptr); + end; + +end; + +{$endregion Shader} + +{$region Program} + +function InitProgram(vertex_shader, fragment_shader: gl_shader): gl_program; +begin + Result := gl.CreateProgram; + + gl.AttachShader(Result, vertex_shader); + if fragment_shader<>gl_shader.Zero then gl.AttachShader(Result, fragment_shader); + + gl.LinkProgram(Result); + // всё то же самое что и у шейдеров + var link_ok: integer; + gl.GetProgramiv(Result, ProgramPropertyARB.LINK_STATUS, link_ok); + if link_ok = 0 then + begin + + var l: integer; + gl.GetProgramiv(Result, ProgramPropertyARB.INFO_LOG_LENGTH, l); + var ptr := System.Runtime.InteropServices.Marshal.AllocHGlobal(l); + + gl.GetProgramInfoLog(Result, l, IntPtr.Zero, ptr); + var log := System.Runtime.InteropServices.Marshal.PtrToStringAnsi(ptr); + Writeln(log); + + System.Runtime.InteropServices.Marshal.FreeHGlobal(ptr); + end; + +end; + +{$endregion Program} + +const dy = -Sin(Pi / 6) / 2; + +begin + + // Создаёт и настраиваем окно + var f := new Form; + f.StartPosition := FormStartPosition.CenterScreen; + f.ClientSize := new Size(500, 500); + f.FormBorderStyle := FormBorderStyle.Fixed3D; + // Если окно закрылось - надо сразу завершить программу + f.Closed += (o,e)->Halt(); + + // Настраиваем поверхность рисования + var hdc := gl_gdi.InitControl(f); + + // Настраиваем перерисовку + gl_gdi.SetupControlRedrawing(f, hdc, EndFrame-> + begin + + {$region Настройка глобальных параметров OpenGL} + + // При создании экземпляра OpenGL.gl инициализируются некоторые функции + // Это необходимо для всех функций из OpenGL1.2 и выше, потому что они локальны для контекста OpenGL + gl := new OpenGL.gl; + + {$endregion Настройка глобальных параметров OpenGL} + + {$region Инициализация переменных} + + var vertex_pos_buffer: gl_buffer; + gl.CreateBuffers(1, vertex_pos_buffer); + gl.NamedBufferData( + vertex_pos_buffer, + new IntPtr(3*sizeof(Vec2f)), + ArrGen(3, i-> + begin + var rot := i * Pi * 2 / 3; + + Result := new Vec2f( + Sin(rot), + Cos(rot) + dy + ); + + end), + VertexBufferObjectUsage.STATIC_DRAW + ); + + var vertex_clr_buffer: gl_buffer; + gl.CreateBuffers(1, vertex_clr_buffer); + gl.NamedBufferData( + vertex_clr_buffer, + new IntPtr(3*sizeof(Vec3f)), + new Vec3f[]( + new Vec3f(1,0,0), + new Vec3f(0,1,0), + new Vec3f(0,0,1) + ), + VertexBufferObjectUsage.STATIC_DRAW + ); + + var element_buffer: gl_buffer; + gl.CreateBuffers(1, element_buffer); + gl.NamedBufferData( + element_buffer, + new IntPtr(3*sizeof(byte)), + new byte[]( + 0,1,2 + ), + VertexBufferObjectUsage.STATIC_DRAW + ); + + var vertex_shader := InitShader('Rot Triangle 1.vertex.glsl', ShaderType.VERTEX_SHADER); +// var fragment_shader := InitShader('fragment.glsl', ShaderType.FRAGMENT_SHADER); + + var sprog := InitProgram(vertex_shader, gl_shader.Zero {fragment_shader}); + + var uniform_rot_k := gl.GetUniformLocation(sprog, 'rot_k'); + + var attribute_position := gl.GetAttribLocation(sprog, 'position'); + var attribute_color := gl.GetAttribLocation(sprog, 'color'); + + var t := new System.Diagnostics.Stopwatch; + t.Start; + + {$endregion Инициализация переменных} + + while true do + begin + // очищаем окно в начале перерисовки + gl.Clear(ClearBufferMask.COLOR_BUFFER_BIT); + + + + gl.UseProgram(sprog); + + gl.Uniform1f(uniform_rot_k, Cos( t.Elapsed.Ticks * 0.0000002 ) ); + + gl.BindBuffer(BufferTargetARB.ARRAY_BUFFER, vertex_pos_buffer); + gl.VertexAttribPointer( + attribute_position, + 2, + VertexAttribPointerType.FLOAT, + false, + 8, + IntPtr.Zero + ); + gl.EnableVertexAttribArray(attribute_position); + + gl.BindBuffer(BufferTargetARB.ARRAY_BUFFER, vertex_clr_buffer); + gl.VertexAttribPointer( + attribute_color, + 3, + VertexAttribPointerType.FLOAT, + false, + 12, + IntPtr.Zero + ); + gl.EnableVertexAttribArray(attribute_color); + + gl.BindBuffer(BufferTargetARB.ELEMENT_ARRAY_BUFFER, element_buffer); + gl.DrawElements( + PrimitiveType.TRIANGLES, + 3, + DrawElementsType.UNSIGNED_BYTE, + IntPtr.Zero + ); + + gl.DisableVertexAttribArray(attribute_position); + gl.DisableVertexAttribArray(attribute_color); + + + + // получаем тип последней ошибки + var err := gl.GetError; + // и если ошибка есть - выводим её + if err<>ErrorCode.NO_ERROR then Writeln(err); + + gl.Finish; + // EndFrame меняет местами буферы и ждёт vsync + EndFrame; + end; + + end); + + Application.Run(f); +end. \ No newline at end of file diff --git a/OpenGL и OpenCL/Гайд по использованию OpenGL и OpenCL.html b/OpenGL и OpenCL/Гайд по использованию OpenGL и OpenCL.html new file mode 100644 index 0000000..1a4f70b --- /dev/null +++ b/OpenGL и OpenCL/Гайд по использованию OpenGL и OpenCL.html @@ -0,0 +1,1921 @@ + + + + + + +
+
+
+
+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/OpenGL и OpenCL/Справка OpenCLABC.html b/OpenGL и OpenCL/Справка OpenCLABC.html new file mode 100644 index 0000000..07108a1 --- /dev/null +++ b/OpenGL и OpenCL/Справка OpenCLABC.html @@ -0,0 +1,2086 @@ + + + + + + +
+
+
+
+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/OpenGL и OpenCL/Справка OpenGLABC.html b/OpenGL и OpenCL/Справка OpenGLABC.html new file mode 100644 index 0000000..335b55e --- /dev/null +++ b/OpenGL и OpenCL/Справка OpenGLABC.html @@ -0,0 +1,886 @@ + + + + + + +
+
+
+
+
+
+
+
+
+ + + + + + diff --git a/Other/SpeedTests/ArraySlice.pas b/Other/SpeedTests/ArraySlice.pas new file mode 100644 index 0000000..f82ec81 --- /dev/null +++ b/Other/SpeedTests/ArraySlice.pas @@ -0,0 +1,9 @@ +begin + var s := Arr(1..1000); + var s1: array of integer; + var n := 100000000; + MillisecondsDelta; + loop n do + s1 := s[1:11]; + MillisecondsDelta.Println; +end. \ No newline at end of file diff --git a/Other/SpeedTests/ArraySliceAssignment.pas b/Other/SpeedTests/ArraySliceAssignment.pas new file mode 100644 index 0000000..7a700cf --- /dev/null +++ b/Other/SpeedTests/ArraySliceAssignment.pas @@ -0,0 +1,9 @@ +begin + var s := Arr(1..10); + Milliseconds; + var n := 100000000; + MillisecondsDelta.Println; + loop n do + s[0:10] := s; + MillisecondsDelta.Println; +end. \ No newline at end of file diff --git a/Other/SpeedTests/CalculationsGlobalLocal/BlockVars.pas b/Other/SpeedTests/CalculationsGlobalLocal/BlockVars.pas new file mode 100644 index 0000000..176f245 --- /dev/null +++ b/Other/SpeedTests/CalculationsGlobalLocal/BlockVars.pas @@ -0,0 +1,13 @@ +// Сравнение скорости работы глобальных и внутриблочных переменных. +// См. также файл GlobalVars.pas +begin + var s := 0.0; + var i: real := 1; + while i<1000000000 do + begin + s += 1/i; + i += 1; + end; + writeln(s); + writeln('Время расчета = ',Milliseconds/1000,' с'); +end. diff --git a/Other/SpeedTests/CalculationsGlobalLocal/GlobalVars.pas b/Other/SpeedTests/CalculationsGlobalLocal/GlobalVars.pas new file mode 100644 index 0000000..7976854 --- /dev/null +++ b/Other/SpeedTests/CalculationsGlobalLocal/GlobalVars.pas @@ -0,0 +1,15 @@ +// Сравнение скорости работы глобальных и внутриблочных переменных. +// См. также файл BlockVars.pas +var + s: real := 0; + i: real := 1; + +begin + while i<1000000000 do + begin + s += 1/i; + i += 1; + end; + writeln(s); + writeln('Время расчета = ',Milliseconds/1000,' с'); +end. diff --git a/Other/SpeedTests/ListSlice.pas b/Other/SpeedTests/ListSlice.pas new file mode 100644 index 0000000..6dc560e --- /dev/null +++ b/Other/SpeedTests/ListSlice.pas @@ -0,0 +1,10 @@ +begin + var s := Lst(1..1000); + var s1: List; + Milliseconds; + var n := 10000000; + MillisecondsDelta.Println; + loop n do + s1 := s[1:11]; + MillisecondsDelta.Println; +end. \ No newline at end of file diff --git a/Other/SpeedTests/ListSliceAssignment.pas b/Other/SpeedTests/ListSliceAssignment.pas new file mode 100644 index 0000000..b8cf9be --- /dev/null +++ b/Other/SpeedTests/ListSliceAssignment.pas @@ -0,0 +1,9 @@ +begin + var s := Lst(1..10); + Milliseconds; + var n := 100000000; + MillisecondsDelta.Println; + loop n do + s[0:10] := s; + MillisecondsDelta.Println; +end. \ No newline at end of file diff --git a/Other/SpeedTests/Milli.pas b/Other/SpeedTests/Milli.pas new file mode 100644 index 0000000..16534cf --- /dev/null +++ b/Other/SpeedTests/Milli.pas @@ -0,0 +1,14 @@ +// Производительность заполнения статических и динамических массивов +const n = 20000; + +var a: array [1..n,1..n] of real; + +begin + for var i:=1 to n do + for var j:=1 to n do + a[i,j] := 1; + Println(MillisecondsDelta/1000); + + var m := MatrFill(n,n,1); + Println(MillisecondsDelta/1000); +end. diff --git a/Other/SpeedTests/Substring_vs_Slice.pas b/Other/SpeedTests/Substring_vs_Slice.pas new file mode 100644 index 0000000..d2f7710 --- /dev/null +++ b/Other/SpeedTests/Substring_vs_Slice.pas @@ -0,0 +1,12 @@ +begin + var s := Range(#32,#1000).JoinIntoString; + var s1: string; + Milliseconds; + var n := 100000000; + loop n do + s1 := s.Substring(10,10); + MillisecondsDelta.Println; + loop n do + s1 := s[1:11]; + MillisecondsDelta.Println; +end. \ No newline at end of file diff --git a/Other/UnmanagedGraphics/MessageBox.pas b/Other/UnmanagedGraphics/MessageBox.pas new file mode 100644 index 0000000..df79987 --- /dev/null +++ b/Other/UnmanagedGraphics/MessageBox.pas @@ -0,0 +1,6 @@ +function MessageBox(h:integer;m,c:string;t:integer):integer; +external 'User32.dll' name 'MessageBox'; + +begin + MessageBox(0,'Привет!','Сообщение',0); +end. \ No newline at end of file diff --git a/PascalABCNET.ini b/PascalABCNET.ini new file mode 100644 index 0000000..9ea787c --- /dev/null +++ b/PascalABCNET.ini @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/StandardUnits/CRT/Bill.pas b/StandardUnits/CRT/Bill.pas new file mode 100644 index 0000000..5cc3309 --- /dev/null +++ b/StandardUnits/CRT/Bill.pas @@ -0,0 +1,145 @@ +// Отражение шарика от стенок. Консольный режим +// Для запуска программы используйте Shift+F9 !!! +uses CRT; + +const +// Ширина поля + w = 80; +// Высота поля + h = 24; + +var +/// Координаты шарика + ax,ay: integer; +/// Вектор перемещения шарика + vx,vy: integer; +/// Массив клеток поля + a: array [1..w,1..h] of char; + +/// Очистка массива a +procedure CleanA; +begin + for var j := 1 to h do + for var i := 1 to w do + A[i,j] := ' ' +end; + +/// Создание горизонтальной стены +procedure HorizWall(x,y,L: integer); +begin + for var i := x to x+L-1 do + A[i,y] := '*' +end; + +/// Создание вертикальной стены +procedure VertWall(x,y,L: integer); +begin + for var j := y to y+L-1 do + A[x,j] := '*' +end; + +/// Заполнение поля стенами +procedure Fill; +begin + CleanA; + HorizWall(1,1,w); + HorizWall(1,h,w); + VertWall(1,1,h); + VertWall(w,1,h); + + HorizWall(49,9,31); + HorizWall(49,14,31); +end; + +/// Перерисовка экрана +procedure DrawScreen; +begin + TextColor(White); + ClrScr; + for var j := 1 to h do + for var i := 1 to w do + write(A[i,j]) +end; + +/// Возвращает True, если на пути шарика препятствие +function FilledInFront: boolean; +begin + Result := (A[ax+vx,ay]<>' ') or (A[ax,ay+vy]<>' ') or (A[ax+vx,ay+vy]<>' ') +end; + +/// Меняет направление шарика +procedure ChangeDirection; +begin + if A[ax+vx,ay]<>' ' then + vx := -vx; + if A[ax,ay+vy]<>' ' then + vy := -vy; + if (A[ax+vx,ay]=' ') and (A[ax,ay+vy]=' ') and (A[ax+vx,ay+vy]<>' ') then + begin + vx := -vx; + vy := -vy + end; + Sleep(10); +end; + +/// Рисует шарик +procedure ShowBall; +begin + GotoXY(ax,ay); + write('B'); +end; + +/// Стирает шарик +procedure HideBall; +begin + GotoXY(ax,ay); + write(' '); +end; + +/// Устанавливает вектор движение шарика +procedure SetBallCoords(x,y: integer); +begin + ax := x; + ay := y +end; + +/// Устанавливает координаты шарика +procedure SetBallVeloc(vx0,vy0: integer); +begin + vx := vx0; + vy := vy0 +end; + +/// Перемещает шарик к позиции (x,y) +procedure MoveTo(x,y: integer); +begin + HideBall; + SetBallCoords(x,y); + ShowBall +end; + +/// Перемещает шарик на вектор (dx,dy) +procedure MoveBy(dx,dy: integer); +begin + MoveTo(ax+dx,ay+dy); +end; + +BEGIN + SetWindowTitle('Биллиард (ностальгия по CRT)'); + HideCursor; + + Fill; + DrawScreen; + + SetBallCoords(70,13); + SetBallVeloc(1,1); + TextColor(Yellow); + ShowBall; + + repeat + Delay(20); + if FilledInFront then + ChangeDirection; + MoveBy(vx,vy); + until KeyPressed; +END. diff --git a/StandardUnits/CRT/CPaint.pas b/StandardUnits/CRT/CPaint.pas new file mode 100644 index 0000000..5ea9b40 --- /dev/null +++ b/StandardUnits/CRT/CPaint.pas @@ -0,0 +1,70 @@ +// Рисование курсором в консольном окне +// Иллюстрация GotoXY, TextBackGround +// Для запуска программы используйте Shift+F9 !!! +uses Crt; + +var + draw: boolean; + color: integer; + +function IsCoordCorrect(x,y: integer): boolean; +begin + Result := (x in [1..WindowWidth]) and (y in [1..WindowHeight]); +end; + +procedure MyGotoXY(x,y: integer); +begin + if not IsCoordCorrect(x,y) then + exit; + GotoXY(x,y); +end; + +procedure DrawSymbol(x,y: integer; c: char); +begin + if not IsCoordCorrect(x,y) then + exit; + GotoXY(x,y); + write(c); + GotoXY(x,y); +end; + +begin + draw := True; + color := Green; + ClrScr; + SetWindowTitle('Рисование курсором (Esc-выход, Num 5 - изменение цвета)'); + TextBackGround(color); + GotoXY(WindowWidth div 2,WindowHeight div 2); + var c: char; + repeat + c := ReadKey; + if c=#32 then + draw := not draw; + if c=#0 then + begin + c := ReadKey; + case c of + // Изменение цвета по клавише Num 5 + {5} #12: begin + color := color + 1; + if color=16 then + color := 0; + TextBackGround(color); + end; + {RU}#33: MyGotoXY(WhereX+1,WhereY-1); + {RD}#34: MyGotoXY(WhereX+1,WhereY+1); + {LD}#35: MyGotoXY(WhereX-1,WhereY+1); + {LU}#36: MyGotoXY(WhereX-1,WhereY-1); + {L} #37: MyGotoXY(WhereX-1,WhereY); + {U} #38: MyGotoXY(WhereX,WhereY-1); + {R} #39: MyGotoXY(WhereX+1,WhereY); + {D} #40: MyGotoXY(WhereX,WhereY+1); + #67: ClrScr; + end; + if draw then + DrawSymbol(WhereX, WhereY,' '); + end; + until c=#27; + TextBackGround(Black); + GotoXY(1,25); +end. diff --git a/StandardUnits/CRT/CRTColors.pas b/StandardUnits/CRT/CRTColors.pas new file mode 100644 index 0000000..5b205c8 --- /dev/null +++ b/StandardUnits/CRT/CRTColors.pas @@ -0,0 +1,20 @@ +// Стандартные CRT-цвета +// Для запуска программы используйте Shift+F9 !!! +uses CRT; + +begin + SetWindowTitle('Стандартные CRT-цвета'); + for var i:=0 to 15 do + begin + TextBackground(i); + for var j:=0 to 15 do + begin + TextColor(j); + write(' CRT'); + end; + writeln; + end; + HideCursor; + TextBackground(0); + TextColor(0); +end. diff --git a/StandardUnits/CRT/SimpleTextEditor.pas b/StandardUnits/CRT/SimpleTextEditor.pas new file mode 100644 index 0000000..b8dc321 --- /dev/null +++ b/StandardUnits/CRT/SimpleTextEditor.pas @@ -0,0 +1,17 @@ +// Простейший текстовый редактор +// Для запуска программы используйте Shift+F9 !!! +uses CRT; + +begin + SetWindowTitle('Текстовый редактор (Enter - новая строка, Esc - выход)'); + clrScr; + repeat + var c := ReadKey; + case c of + #13: writeln; + #27: break; + #32..#255: write(c); + #0: c := ReadKey; + end; + until false; +end. diff --git a/StandardUnits/FormsABC/CalcIntegral.pas b/StandardUnits/FormsABC/CalcIntegral.pas new file mode 100644 index 0000000..d73a20b --- /dev/null +++ b/StandardUnits/FormsABC/CalcIntegral.pas @@ -0,0 +1,64 @@ +uses FormsABC; + +type Fun = function (x: real): real; + +var funs: array of Fun := (sin,cos,sqr); + +function CalcIntegral(a,b: real; N: integer; f: Fun): real; +begin + Result := 0; + var x := a; + var h := (b-a)/N; + for var i:=0 to N-1 do + begin + Result += f(x); + x += h; + end; + Result *= h; +end; + +var + a := new RealField('a:'); + f1 := new FlowBreak; + b := new RealField('b:'); + f2 := new FlowBreak; + N := new IntegerField('N:'); + f3 := new FlowBreak; + tl := new TextLabel('Функция: '); + f4 := new FlowBreak; + cb := new ComboBox; + f5 := new FlowBreak(50); + s1 := new Space(20); + ok := new Button('Вычислить'); + tb: TextBox; + +procedure MyClick; +begin + var f := funs[cb.SelectedIndex]; + var res := CalcIntegral(a.Value,b.Value,N.Value,f); + tb.AddLine(Format('Интеграл({0},{1},{2},{3}) = {4}',a.Value,b.Value,N.Value,cb.SelectedValue,res.ToString)); +end; + +procedure InitControls; +begin + MainForm.Title := 'Вычисление определенного интеграла'; + MainForm.SetSize(500,350); + MainForm.CenterOnScreen; + b.Value := 1; + N.Value := 10; + cb.Items.Add('sin'); + cb.Items.Add('cos'); + cb.Items.Add('x^2'); + cb.SelectedIndex := 0; + ok.Click += MyClick; + mainPanel.Dock := DockStyle.Left; + mainPanel.Width := 150; + + ParentControl := MainForm; + tb := new TextBox; + tb.Dock := DockStyle.Fill; +end; + +begin + InitControls; +end. \ No newline at end of file diff --git a/StandardUnits/FormsABC/PaintBoxDraw.pas b/StandardUnits/FormsABC/PaintBoxDraw.pas new file mode 100644 index 0000000..3f5e162 --- /dev/null +++ b/StandardUnits/FormsABC/PaintBoxDraw.pas @@ -0,0 +1,76 @@ +uses + System.Drawing, + System.Windows.Forms, + System.Threading, + FormsABC; + +procedure DrawMandelbrot(g: Graphics; w,h: integer; scale: real; dx,dy: integer); +const max = 10; +begin + for var ix:=0 to w-1 do + for var iy:=0 to h-1 do + begin + var x := 0.0; + var y := 0.0; + var cx := scale * (ix - dx); + var cy := scale * (iy - dy); + var i := 1; + while i<255 do + begin + var x1 := x*x-y*y+cx; + var y1 := 2*x*y+cy; + x := x1; + y := y1; + if (abs(x)>max) and (abs(y)>max) then break; + i += 1; + end; + if i>=255 then + g.FillRectangle(Brushes.Red,ix,iy,1,1) + else + g.FillRectangle(new SolidBrush(Color.FromArgb(255,255-i,255-i)),ix,iy,1,1) + end; +end; + +var + Scale := new RealField('Масштаб: '); + l1 := new FlowBreak; + dx := new IntegerField('dx: '); + l2 := new FlowBreak; + dy := new IntegerField('dy: '); + l3 := new FlowBreak(20); + b := new Button(' Нарисовать '); + p: PaintBox; + + +procedure Draw; +begin + var g := p.Graphics; + DrawMandelbrot(g,p.Width,p.Height,Scale.Value,dx.Value,dy.Value); + p.Invalidate; +end; + +procedure My(o: Object); +begin + Draw; +end; + +procedure Click; +begin + ThreadPool.QueueUserWorkItem(My); +end; + +begin + MainForm.Title := 'Множество Мандельброта'; + MainForm.SetSize(700, 600); + MainPanel.Dock := Dockstyle.Left; + MainPanel.Width := 120; + Scale.Value := 0.0035; + dx.Value := 430; + dy.Value := 280; + b.Click += Click; + + ParentControl := MainForm; + p := new PaintBox; + p.Dock := DockStyle.Fill; + ThreadPool.QueueUserWorkItem(My); +end. \ No newline at end of file diff --git a/StandardUnits/FormsABC/f0.pas b/StandardUnits/FormsABC/f0.pas new file mode 100644 index 0000000..9d99a29 --- /dev/null +++ b/StandardUnits/FormsABC/f0.pas @@ -0,0 +1,24 @@ +uses FormsABC; + +var + a,b,sum,prod: IntegerField; + d: Button; + +procedure MyClick; +begin + sum.Value := a.Value + b.Value; + prod.Value := a.Value * b.Value; +end; + +begin + a := new IntegerField('a:'); + b := new IntegerField('b:'); + LineBreak; + sum := new IntegerField('Сумма:',220); + LineBreak; + prod := new IntegerField('Произведение:',220); + LineBreak; + EmptyLine(20); + d := new Button('Вычислить'); + d.Click += MyClick; +end. \ No newline at end of file diff --git a/StandardUnits/FormsABC/f0_MV.pas b/StandardUnits/FormsABC/f0_MV.pas new file mode 100644 index 0000000..0c38882 --- /dev/null +++ b/StandardUnits/FormsABC/f0_MV.pas @@ -0,0 +1,40 @@ +uses FormsABC; + +type + Model = class + class procedure Calc(x,y: integer; var sum,prod: integer); + begin + sum := x + y; + prod := x * y; + end; + end; + + View = class + private + a,b,sum,prod: IntegerField; + procedure MyClick; + begin + var s,p: integer; + Model.Calc(a.Value,b.Value,s,p); + sum.Value := s; + prod.Value := p; + end; + public + constructor Create; + begin + a := new IntegerField('a:'); + b := new IntegerField('b:'); + LineBreak; + sum := new IntegerField('Сумма:',220); + LineBreak; + prod := new IntegerField('Произведение:',220); + LineBreak; + EmptyLine(20); + var d := new Button('Вычислить'); + d.Click += MyClick; + end; + end; + +begin + var v := new View; +end. \ No newline at end of file diff --git a/StandardUnits/FormsABC/f0_class.pas b/StandardUnits/FormsABC/f0_class.pas new file mode 100644 index 0000000..fc46960 --- /dev/null +++ b/StandardUnits/FormsABC/f0_class.pas @@ -0,0 +1,30 @@ +uses FormsABC; + +type + View = class + private + a,b,sum,prod: IntegerField; + procedure MyClick; + begin + sum.Value := a.Value + b.Value; + prod.Value := a.Value * b.Value; + end; + public + constructor Create; + begin + a := new IntegerField('a:'); + b := new IntegerField('b:'); + LineBreak; + sum := new IntegerField('Сумма:',220); + LineBreak; + prod := new IntegerField('Произведение:',220); + LineBreak; + EmptyLine(20); + var d := new Button('Вычислить'); + d.Click += MyClick; + end; + end; + +begin + var v := new View; +end. \ No newline at end of file diff --git a/StandardUnits/PABCSystem/SerializationGraph.pas b/StandardUnits/PABCSystem/SerializationGraph.pas new file mode 100644 index 0000000..8ac010c --- /dev/null +++ b/StandardUnits/PABCSystem/SerializationGraph.pas @@ -0,0 +1,19 @@ +// Сериализация объектов +// Можно сериализовать только объекты, помеченные атрибутом [Serializable] +// Внешние Serialize, Deserialize позволяют сохранить в файле - восстановить +// один объект (один граф объектов с данным корнем) +type + [Serializable] + Node = auto class + x: integer; + next: Node; + end; + +const fname = 'a.dat'; + +begin + var m := new Node(5,new Node(3,new Node(4,nil))); + Serialize(fname,m); // Сериализуем объект в файл + var m1 := Deserialize(fname) as Node; // Десериализуем из файла + Print(m1); +end. \ No newline at end of file diff --git a/StandardUnits/PABCSystem/SerializationMany.pas b/StandardUnits/PABCSystem/SerializationMany.pas new file mode 100644 index 0000000..c5a2671 --- /dev/null +++ b/StandardUnits/PABCSystem/SerializationMany.pas @@ -0,0 +1,28 @@ +// Сериализация объектов +// Можно сериализовать только объекты, помеченные атрибутом [Serializable] +// Внешние Serialize, Deserialize позволяют сохранить в файле - восстановить +// один объект (один граф объектов с данным корнем) +type + [Serializable] + My = auto class + x,y: integer; + end; + IntArray = array of integer; + +const fname = 'a.dat'; + +begin + var f := CreateBinary(fname); + f.Serialize(new My(444,555)); + f.Serialize(|1,2,3|); + f.Serialize(Lst(1..9)); + f.Close; + + f := OpenBinary(fname); + var m: My := f.Deserialize as My; + var a: array of integer := f.Deserialize as IntArray; + var l: List := f.Deserialize as List; + f.Close; + + Print(m,a,l); +end. \ No newline at end of file diff --git a/StandardUnits/PABCSystem/SerializationOne.pas b/StandardUnits/PABCSystem/SerializationOne.pas new file mode 100644 index 0000000..9b39597 --- /dev/null +++ b/StandardUnits/PABCSystem/SerializationOne.pas @@ -0,0 +1,18 @@ +// Сериализация объектов +// Можно сериализовать только объекты, помеченные атрибутом [Serializable] +// Внешние Serialize, Deserialize позволяют сохранить в файле - восстановить +// один объект (один граф объектов с данным корнем) +type + [Serializable] + My = auto class + x,y: integer; + end; + +const fname = 'a.dat'; + +begin + var m := new My(2,3); + Serialize(fname,m); // Сериализуем объект в файл + var m1 := Deserialize(fname) as My; // Десериализуем из файла + Print(m1); +end. \ No newline at end of file diff --git a/StandardUnits/PABCSystem/a.dat b/StandardUnits/PABCSystem/a.dat new file mode 100644 index 0000000000000000000000000000000000000000..44fe69364310ad87ce0ff9cf1e8b56141075980c GIT binary patch literal 455 zcma)2O-lnY5Y1}0rc|g0f56^dLf5v|9`@9OiWY>5mr~a3GKXNAg?xzV!C&To(-|y? z7Q_iJnVHN?-U~|@V;^XAk{uu5cD)3vq*hz$RcjW~#5{Wh>o6z_F{G7e^PqjOP#Or{ zN}Xr-q1LLoh4|1ugDFkWI;F9vd(*@s(lg0x5*g#1{CBK8L#NMvGa69h5W&fzS_<~- zI&}TEjLySG%v-IYA@)vOfk8QqxKqwQ6|2>*px) or (yy<>py) then + begin + var t := 1/10; + var newx := round((1-t)*xx+t*px); + var newy := round((1-t)*yy+t*py); + Move(newx,newy); + end; +end; + +procedure MouseMove(x,y,mb: integer); +begin + px := x; py := y; +end; + +begin + SetWindowCaption('"Собачка"'); + SetSmoothingOff; + OnMouseMove:=MouseMove; + xx := 100; yy := 100; + px := xx; py := yy; + Show; + Timer1; + t := new Timer(20,Timer1); + t.Start; +end. diff --git a/StandardUnits/Turtle/Turtle1.pas b/StandardUnits/Turtle/Turtle1.pas new file mode 100644 index 0000000..2d40e88 --- /dev/null +++ b/StandardUnits/Turtle/Turtle1.pas @@ -0,0 +1,53 @@ +uses Turtle,GraphWPF; + +var + Atom,FStr,XStr,YStr: string; + angle,len,x0,y0: real; + n: integer; + +procedure Init1; // Dragon +begin + (Atom,FStr,XStr,YStr) := ('fx','f','x+yf+','-fx-y'); + (angle,len,n,x0,y0) := (90,3,15,300,450); +end; + +procedure Init2; // Koch curve +begin + (Atom,FStr,XStr,YStr) := ('F', 'F-F++F-F', '', ''); + (angle,len,n,x0,y0) := (60,5,7,10,550); +end; + +procedure Init3; // Quadratic Koch Island +begin + (Atom,FStr,XStr,YStr) := ('F+F+F+F', 'F+F-FF+F+F-F', '', ''); + (angle,len,n,x0,y0) := (90,4,4,250,450); +end; + +procedure Init4; // Gosper hexagonal curve +begin + (Atom,FStr,XStr,YStr) := ('XF', 'F', 'X+YF++YF-FX--FXFX-YF+','-FX+YFYF++YF+FX--FX-Y'); + (angle,len,n,x0,y0) := (60,4,5,580,56); +end; + +procedure RunStr(s: string; n: integer); +begin + foreach var c in s do + case c of + '+': Turn(angle); + '-': Turn(-angle); + 'f','F': if n>0 then RunStr(FStr,n-1) else Forw(len); + 'x','X': if n>0 then RunStr(XStr,n-1); + 'y','Y': if n>0 then RunStr(YStr,n-1); + else Print('error') + end; +end; + +begin + Init4; + ToPoint(x0,y0); + SetWidth(0.5); + //SetColor(Colors.Red); + Down; + RunStr(Atom,n); + Up; +end. \ No newline at end of file diff --git a/Городок/data/Thumbs.db b/Городок/data/Thumbs.db deleted file mode 100644 index 2b45c489418c5f994dfaf40703655e05b02e591a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4608 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

^YuLd*yWQ2m{x9GuR;|8HH`Y`w2S4K zSVNqFY#Cq5E$MT_f|(5^K@i0+jK?>}!B$ICj`o>d!DOhtY?|LT<#9*clErF)I=P>m z&<<0(sLrp7b(J}Xxchs(Kj`nvfT z5NhX2s0BN}BJ6rAL>ym-Ncyf{7LKeLaoWWG)Mm4`w3Hh{PPCu6{)@dnjF?`jBPZ@Q z6E;SiQVUHm<+52Blm^2p&92S7BU#Bg7h@anZR&hN_5@R>T@!a8C;TPkKGWIH-tww# zT~bJ@lY@PDKjPCPEHooRS~@vy~-2c*t1ld(&!&3wC-Y0pE$ z*tL(jSJb**dIVr_oU#o1VV&E*T)MDchc@dnI3%|lT_{}3)~!i-(JI{J7|>>YU%$+# z;3g{Hgnzl}zQVwEzRfX%Q_OAev9&-cEG>FfB-5rDIN>=+JK;DrF!tv~Fr?AnQGx$Td-A{W9U4SzBCU()&OnpFL;N&v{w$bc+st>pfQnl4 ztEv^@zli^Ah%Nm*ie_rYUVW2fwBD;UAo1q>c zn-t^eu*}lRR-vqT@V2nc+wHGndeaY*>lbAzDHC8`)ioH4Skf3VGV@eRaK zRlWD>Du!c|f;fRJ)Y3S6$Qd1XbX`s5{fip;o*FFBO&DoX%R=kWLCBsGV>=z;#x zLjRkA|J`m|C(%T$G7m$FdieX}8!VY20wq)AMdGdb<>VX6_P6!r-)~UT1R8)c&eg*% zJYBWK6Z6hafDoQ_6)>Mt0rFFp^e@n}^ZN@e=NBOJf9#Ka^Qo)>$A+cvb5M)OWon!s zjq_t-o`;4#&M-7_j_CaE^?W12|5rUnF}U0R zW`;OzgYR9H>_6)A4aI+9}cBtkSqM%hy~9FKDa&4 zt%%0-AOA!2w@8`z+kgFWSZ78ATvePOK~U-Jnu-*JBB(_0`+hJ|%0^918qRI208ejG zCJ;UDw**S=wt6j=3qf8vFUZ?@Xx07SoO!g^{C}P>Kaf(-IlCK|hSE@rYEh9|_5fzz zBg2P}!Gl@}&rm9wiLd7=8s(#PA{r*+o7n{^y=anbgf@0FOBeZmilDzRr^o2c&*XVG zSmYMMlrpz__iaKHz`OmyFZ*^PgVe!c(zI3Z#6d zs3n^0U$8j76<>-wCM+i;uZyJRPiJ7mjl)zIQc#J^PQ6Ba4T^+ zspjxkI<}<AC+#0xBM8UJ5QS(Z`k)2 zw`YO|ds2MH=S8;oHiHHnL4O|zPn=LXn_$B4tBIjr39AqxEB~uBPV%lS{5Oh|+;_5^Oib|cF z_+SW2iY`o%ze~LFkCx)!Ka)-q%}>b5AzEJMqcW?%z1KH>c>Y>&Vfa}ZUGz#1MAj&* z(fmKA48LFCzdwg9|8QN=PJg(^JWnSQUH#L^_0J~Vzxq7$&k5)6pXh&_E2(YEL@On$ z9#@(Mcc(DDJiP3#yFl7K?Vc1e+&Yq?dFWJ>dyABy=)O*h+4ip_81#r>+SS~UGO@$e zWmd;weWG^i1Tw%Ni=2idX}eZdd0`~Gs3{`9jd&87 zT3N#X0?UGl!9kAmT&P1ccs1WvC;2IJh}PjXMBW{YmIHA5?>y7L>c9WX@4jn>|1mD$ M)&9Tw?62+r1=255) then + dgr := - dgr; + View3D.BackgroundColor := RGB(gr,gr,gr); + end; +end. \ No newline at end of file diff --git a/Graph3D/Platonic.pas b/Graph3D/Platonic.pas new file mode 100644 index 0000000..6e46df8 --- /dev/null +++ b/Graph3D/Platonic.pas @@ -0,0 +1,24 @@ +uses Graph3D; + +begin + var РисоватьОписанныеСферы := True; + var p := P3D(6,0,0); + var p1 := p; + var h := -4; + Icosahedron(p,2,Colors.Green); + p.Offset(h,0,0); + Dodecahedron(p,2,Colors.Blue); + p.Offset(h,0,0); + Tetrahedron(p,2,Colors.Red); + p.Offset(h,0,0); + Octahedron(p,2,Colors.Magenta); + + p := p1; + if РисоватьОписанныеСферы then + loop 4 do + begin + var s := Sphere(p,2.0,DiffuseMaterial(Colors.Gold.ChangeAlpha(64))+SpecularMaterial(64)); + s.BackMaterial := nil; + p.Offset(h,0,0); + end; +end. \ No newline at end of file diff --git a/Graph3D/ReGroup1.pas b/Graph3D/ReGroup1.pas new file mode 100644 index 0000000..8939e2f --- /dev/null +++ b/Graph3D/ReGroup1.pas @@ -0,0 +1,14 @@ +uses Graph3D; +// ошибка! +begin + var b := Box(0,0,0,3,1,2,Colors.Blue); + var s := Sphere(0,0,2,1,Colors.Green); + var b1 := b.Clone; + var s1 := s.Clone; + + var g := Group(b,s); + var g1 := Group(b1,s1); + g1.MoveByY(3); + g.AddChild(g1[0]);// он должен отсоединиться от g! + b1.MoveByY(3); +end. \ No newline at end of file diff --git a/Graph3D/SunSystem/PlanetsRotateAlgAnim.pas b/Graph3D/SunSystem/PlanetsRotateAlgAnim.pas new file mode 100644 index 0000000..dc5a7e0 --- /dev/null +++ b/Graph3D/SunSystem/PlanetsRotateAlgAnim.pas @@ -0,0 +1,23 @@ +uses Graph3D; + +begin + Window.Title := 'Вращение планет'; + View3D.HideAll; + View3D.BackgroundColor := Colors.Black; + + var s := Sphere(0,0,0,30); + s.BackMaterial := ImageMaterial('skymap.jpg'); + + var Sun := Sphere(0,0,0,2,ImageMaterial('sunmap.jpg')); + var Earth := Sphere(-7,0,0,1,ImageMaterial('earthmap.jpg')); + var Moon := Sphere(2,0,0,0.5,ImageMaterial('moonmap.jpg')); + Earth.AddChild(Moon); + + var tr := ParametricTrajectory(0,2*Pi,100,t->P3D(7*cos(t),7*sin(t),0)); + Polyline3D(tr,1.2,GrayColor(70)); + + Moon.AnimRotateAt(OrtZ,360,P3D(-2,0,0),2.sec).Forever.Begin; + Earth.AnimRotateAtAbsolute(OrtZ,360,Origin,20.sec).Forever.Begin; + Earth.AnimRotate(OrtZ,-360,5.sec).Forever.Begin; + Sun.AnimRotate(OrtZ,-360,20.sec).Forever.Begin; +end. \ No newline at end of file diff --git a/Graph3D/SunSystem/PlanetsRotateFrBased.pas b/Graph3D/SunSystem/PlanetsRotateFrBased.pas new file mode 100644 index 0000000..b46eb69 --- /dev/null +++ b/Graph3D/SunSystem/PlanetsRotateFrBased.pas @@ -0,0 +1,27 @@ +uses Graph3D; + +begin + Window.Title := 'Вращение планет'; + View3D.HideAll; + + var s := Sphere(0,0,0,30); + s.BackMaterial := ImageMaterial('skymap.jpg'); + + var earth := Sphere(-7,0,0,1,ImageMaterial('earthmap.jpg')); + var moon := Sphere(2,0,0,0.5,ImageMaterial('moonmap.jpg')); + earth.AddChild(moon); + var Sun := Sphere(0,0,0,2,ImageMaterial('sunmap.jpg')); + Sun.AnimRotate(OrtZ,-360,20.sec).Forever.Begin; + + var tr := ParametricTrajectory(0,2*Pi,100,t->P3D(7*cos(t),7*sin(t),0)); + Polyline3D(tr,1.2,GrayColor(80)); + + var tr1 := ParametricTrajectory(0,2*Pi,100,t->P3D(2*cos(t),2*sin(t),0)); + var pl1 := Polyline3D(tr1,1.2,GrayColor(80)); + earth.AddChild(pl1); + + OnDrawFrame := dt -> begin + moon.RotateAt(OrtZ,360*dt/3,P3D(-2,0,0)); + earth.RotateAtAbsolute(OrtZ,360*dt/6,Origin); + end; +end. \ No newline at end of file diff --git a/Graph3D/SunSystem/earthmap.jpg b/Graph3D/SunSystem/earthmap.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9efef1690fa58aff1ab19bc1883066f7f9b23d3a GIT binary patch literal 27294 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 literal 0 HcmV?d00001 diff --git a/Graph3D/SunSystem/skymap.jpg b/Graph3D/SunSystem/skymap.jpg new file mode 100644 index 0000000000000000000000000000000000000000..10ba8efd7b3a294399c5ee5d57b6f2dc7cf5f582 GIT binary patch literal 327479 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 #9cu9Ozv2~KRa4@v#ac|yQ&zE9i|(RedanFUKB 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%0ABWHySe-R9Z6VANhaQ{k)4q9am$EMv& zn_2@S_6z;~19<$l{6^^iJ9ni-Hv{+XpxyqWmXg(d#D(^Ie!cUZwk(=n4qw!GDM{SS zpEdqaRC81>ZsKkT?vVrq3KQChgn2kq)qoVJA#X0P-<6}?DQ2O>N%&!KO8Z}}xJc=9 zQro#FL)dGaZg(Xn%6xpRicHEKqv`9KXCG$Qrb{0`;BFG@BGhh8X{*hmly$mmM#@CcykKapD0ZmLlwc5)n9SbTg#d84yNhv^Vd zcH$;}yer!=!w4f)Ve#~GOo}mSoh>)~4;}z|`!Hz}kY}_fW)1jR7MIHq{nU|3$hQ!J zz&1Xo(@iVv=A{15u&nHIr2*Y3M2M%V#eyrI}K|Nk9`K z;b_c9xKsc-&yo%ydVaIkLg8#nHRKjfN9oT=1dr&m(@F39;}*unSF)9a1nzdI8|Rpi zeQYiqOM`HGpb*#RdDQo}R;|_9ZLc{<;n|JViez0i_{C^;EMcrwDTKSF6ktcjypz~3 z6~Pqigi~vr@$e_vuEnV>ED)rYfh(eKsfxLk#=T0HyVa|vww zZ=!t*XC8%>M2J`QKJOCgbW~e#U=`z`8MUFoV8q8#R#-srx+-{(!*crD*TtH*Po^Ma zt{!mxJvCxwDM3W!jiBbdj&8G%J?)j;TzW^QKq7Up0r&^15uj*Lx*bfO77AGhIy?{XwSO zgF&-G_=Zu8Ti~+(OP22Opmh3d>)Rb}DMccIe^qeq^?Dy{Lu|y|X2}d7B=SHHCrC2t zL7z==coa633YC4k2orl{|DeCn)-^})_H{(W%(>E~*q_0QaV5R;`}EIi8_ z-#C^{37N-#otDw_ZAhR~{G9t;+wCKpx?vWj(;ZL?--D~oZFE}gaVcstKmoAw9KP3=_8(6$E62G4;yvIf^wNx{sqj6#iE$8z7s+>`_MZ5TZ#IN9`?4ATi% zALH~L5pzWK7e1HgN3`KF@#Rx1_-(d`cbBm`>{#IqjB29oK%2kyTKQbyPu-%JMBKgF zyNgz9f6Cpzc45x9JR>&$_6(pA#8_j>r2R|4hjmYqiOGIGkm@0`2-FL4SGMQe2$7U+ zvg3{dH!eRm1vx1Y+9+Xw6cJmwzwzSj?33o(k+Fg%;*IXS+POMv8*Yn<6ss7pB4t7y z`7Ko)BEnGKZFKO>01s_ZrZ3|kr zUcyL7omC#DaFEe9#pz+MQf$~CML{nop3c$1et9BLE6=AGg_z*eD+b8Pn1Ru}b{Wqe zw%ngUn^6#KmfpTaJreoWVm1O@MsVCK{P}mN9Wi5Gn%ZzlpefGu!(3&mHsM`Y$H5zr z-y>o{KBEq2l^CiQBN>f+1ui#?j;Ngr$BT3S{GO|dOEF!1U_ z`&lhm6zV3P#{|wbzAI1uNlgok5MG?h>uKW3i$5gZnF)7s!MV?8)E+P`nzYxwYk#_w z$`j@j8D~M!;WkqV6tvxD_R)8gODqtOZ(Y^E=0V;|C9~-sGCd0 zgXYdNZmn<%UM*|=*9Hr?Au5%?B)(Sp9$& z`!e}XNwlr^>Y{kuX9UHthyusUh zB|@zB&)GbHN=7Hs#>HMeJd_vjKy_3jx^jryX#@x7gyjPj-{vG2qiPhXBhQyD>V)7&?hWfO`S9W-^c}CpZ9mluwx7iLZlL~D_TsWnWx{<>i_oqd)5cKCY<3I>ZEM_L-1%c zN7k*S)d$3>PaG#px=^m>SM>^&xJUn^d9XhdPVNU=J|YM3Q9DkkL^z=vz!CGbjrp^J zSr4x8O-$@6^z`;jv|G0)q2qvGza2L>8B2+C+bsHm$185A0(B4($}14; z4{^NcQAFE2CrNju5#shSvt#4=1p~{dQYBkd8lETCVTo5r>Qr&;PadP^fX?{f_YuD| zfbZ<)7a}|jZgF;0*2~bp0%IoF<^0ROt*07fx08A;sYxWXXN=DC^|JvQlGWU&bDGzG z2({Zv4D50}w!J;TFP6PX7BbvkaJFU`%Z6|bhunH1*|Qvr-2>h14EO{$Bbh*bvJEDE z*ESS?Pja9X0={_yhApK8%U8J#Lc=1XU`%tOfDGGnqShjJnTh(8SW!h4Na&RndJk;- z{sZYI$?lK>O{rV8*3XlO6}#`^k~zp)j(fA(3F)$?krGMxt0g=!S~9A-gu3o;9OWWF z|IbI;v|O{fUvacL7UjP{d*;s$=memv16Bw?ww^ZNMCSQ4DP**NVA)Tu1&s` zAg2vOoR{ycTl*y_<*1&F%QxV4x#!e@`0rxcfUy~5kBwG@c4!7 zxr9jRpjpGI^9eF7f2yj4+c=m`=nQKqjYDrk19PN&5caw#cIR|(C=I6~)qMN@rREd4 z#fok|qM{^_etN8s$y?Je^9A9p=xZt15JU*o@G6;u-`gcos#o^IDNa!)_C0tD`2M>7 zXbPm(Eqc|bV>pyE#V+ys8ob>{M=huH2SBlAPXzr3N^I?>I_U~du$I-Sg@MfecjeIc z=2d*`$w%hr$isUWkoR|0kPql=);<%Xdc&ZjL6T7vl?McFy_y2bA#Ma>lGU|q4^xm} z&=;O!c;O>N24}z~SQjCrQ-=GgPKR>j2!i#yR`zq27wgp!>*yNF#K;9rsW zw5eyt%`2eG)iMwu+kOAQm~m5mPF=$#)odHX`uslBqC|o77FI>kXZCd$5v+}MZnI{& zy%%9>Fj+{=4Qz<{%~};1z~B5@{$J=I1PUFh-&sX`tv{@kSp%1$B=C~tHss@7@$BP? zR!PLl9g!06BZ7W1OT_{uN1e^NXti_pQZ`|#w#BIR*hS;_p1_A*w_kx?ygCGqmS2zJ z9_TR<@>ErS-vzU8xt?>kC)_UW74|%UPW%eA%J}pItrS^4{wrRxZfg|0&&?1>ph2f&Cixz}c?tk7MzLvFfLDtmr=|U8F2YT7B6im-?$b-PrRc#Arcidt11+cHei=qH@=fE%CVFG+OABY+Yx7Z;`hu$GlT3q#CO$og>>L zuz31ciu_1cM0NvY^)4>LbDmD%{3&p|F&l_ZSQqNxAx9x04dd55wd>p-j5-xXdiHsx zmy-;Gc*GOFjyFfWQsAi5>v`(p^DWBAy_Rh|oc^T9(#3VYQl6sj`fOLLtBC|L83BRm zkGb3rdYiU-?7sDIU% zL5${2XI!FHxe0vg(vmb%QND{P4g-#!tIUI`)fS@27A(RwZ!Dt|%x2F^kGgv*DK2;Q zfrR85>AUkAz0{X(XV9F7lc0Nohod}^H$ZAC@A{f<-!S|fxf0C@eW3K!`-L+;XIu9BaB(V#W#U1G;M=2J2e6eZm zn1X`;19TNe2D1yg0x}%^n*^)`mFV80WdIww7USyR#h#Z~l&)HW_$Roy#cg9VA?!9L z-_UINFA*-~)E)+#`MCNPPXMlMt3500X-10j!-v@ir2mbdsHgsD@7ikZYl^t25ZN4& z*o9)pD@6wRJ8DedfA`Jf>#Le?nZbg=ljw|5sbOiBIH32sR6_+oV|kIt`nx{h^(T3F z8=CrNsjhs91_eD(D{}BaOFy+JAWqgRWi?DQe>(cmGUYmYVh5O%5;#7nDUzPiTzu|P$GPN za>$poj%#PE=>{1sCIn%!u>36vwX8=gFIM(=Dhoi0 zU}s|#oPR&Q=^Y`%FeC%m%K7h(J^POLY)0S1g>t8c;KnNe2~<(EnNP{?RXIzaNJHA% zeDb=hpTnwwNl#ZlB7+0F+}g^}mZcF3x`_bs!O9qO59eU3*#x8KD0WlL zuk)-Hq7X!c5!0xg=jNOQ-9xMOZw;Ltbi8_b!c+yDRW>g)a89Dh-L}Sn^C3% z>{pMQi{G4?(H3MeqU1n+(Gi5ms2vh}Uqw4nrjy%7LEzZGzNrFDV*C8+wh55aMsA%1@c@! zZ6{{SbwN-(3RjW2VWIs)E^hJXNhh{=4Q(>nSTLSl33DmX-cFt5%K6c$Wsy4&#Nyz)Y&Z+Ydjpg*PpiSR>A_J{OpsM~EG15wJuV4HgJ*>f? z`BSUF#oZOsWF0b2TKCX;^=xP2`IaBnU94+i9jF|8s78s*fWd|A;6?@}@A~R4tBmoC zqsa~+_~L+g_lf4g?+vRy0t4(lW0)_K2zJIl(+J9R63f~8FtmOav`AdMNz+WCVR^kI zNI;0_i{_GDpjIoI-7!Zm_w}A8tG;>t+bqq4BB7>g(PU9EAEms+U|Nk@VUPf*QUil6 zQ5Gzxcb6>{jFkEHc@i3Yn8zatx`$Kt`{DXW103|{hJa40*`UOtBOoxfR@IMkK_bav z;qrqTF`XRhTG&4p)qzb_v~DKk5}Jo4Wwv%cp#aofdtf(R-zd~9a;x`EmKrNb7)rh2 z$B4e4$yk$2kY9)xlVbZ+ag*qKWW9rWOoTq!E|Hd{Q{A~}pnosgd28JuHGe4;84DG- z?8IWl?XOjMXqzBu(U2(#ER^R{=S>+^%yDa-x00xUNRV@{Kh(aKowj`&3uK;8#TuiIux1SW`A_BSjvTL+#)~^hmSAtd~Ff`8;;zPU$BSzFuAwt{r-L z+E3vt;|43DOSXWF6LgLPU#n+UzgU85_$w7iglRF%DRfBOcyZy1=p`lRJ64OIR-vFL zjdN9SEB|+@dQZyMHIIvDob&gjS70s$J}$dj${}E7XqhP1^(o(}83Xdb^*>8#N@flL zvDuE!R-}ZAw6aw|M1joxP5lK5{bW+Ajqw#OQ^qCsSwR`tc{rOzY{KvomChmnuDn#P z29aFhpF9coaA_-JF5aG-_nx7ao^Rwpi-1-9MK3~FEN$bKsAxPq={bdCKzS&06ST{_ zydp^|wHb%Yd!0OP0s+5_a}QZ?kD?L zcr_T>#kqOOc_AU&44zqCQpVy`j?7OqmW|a9hDS+H(M+{UfGUQ1Hqbjl)2Y}bGXidc z^s|e!4nEQ9{z}y}xzvt_RP|5$_HNY0-{bo{gOa>YNt%6G`&mNG(_TD+2pvG%)$3{i z;to_u1m0_tD!#0>%TS3Di_$o*MJr?~72b*s&E7pLbB{M?z`QXP3MXJl_S}r~ z{AHn5^g$kQM(R-eXvnJ9KB^6BD48tc`MyS%v~a10kBQ>7DI*Hz7TU%HYYG0FBgX_i z-P~Y7_`=tHR<28&(=glCYBz4r?UI&yejIvvrET(BtX01hjHO6Su~%TR%r; zb5NxmTOij;0NkP!BU^XC?-y8%qrUDu<%4kp;Cx()=Y5fYX-S9A-Z%Jb>hkUXhfGC=Lz7E`ktQow#l;zM+2f50{ zp5)j98-kkKx(VZ@2ag4yaSig{3XOxak*VX5j4$R-r6MPk0I7Dy>^OY6uqTB*kuu`7 zskTuN-+JdE^;Df!T`xf=$hd{sF~-=OJ#d_vZr}5erZXRtOj*b%E;X&H{{TBQ(56VP zbOXH(rx9E>R>9`Rn*hX%b0BvWeQ*(>#e#rycG)Rbj8i2sF|uF8*6%r>BM z{lFg$$rIx1J2*Li>eGqiko%#L8QdC*fS>;+uzNmag9*-+mS4uEplBzb=q5qyk+$Sa z;7cUuE-QPY>(MvOmdJNvP79qdN$;y|ziEw)eIVKU6UH-fVM~1V@Kl{Q+9pPor7Enj@AqR1ISz^3=>5 zGttH&{{i@I(#Yv84wke6RjEel0SOz88CqfBU^K>pq)T?{QbdYF9@{&$D6}YaT5VeX zT_z!d?L-arP3};-xEZ+0`X~cdY2%^b+b17vxe7GIVl_7-ovCVfX!lTNxt_veRM;;* zxlV0qHJP9>{i^K(-_gGvAYzRPj6(>j>h>UiOgnzuep^shX zcfq;o`Y&MtuASBa!-ZN>kJ$YR{AJ@$0k2E=FF*X8@n}aD`)ABo=!@^Ud>u#}W{#hD zG%4Jov|@UdX9xgRYxm8ttiTP+RYZOs(?{K?be|0#XQBb> z-|dI%4|7XM#xyb`TKLonlbZF-GWmeVc`8AfR!5gGrqd>^5FIz0xLKl z->q1_6m42|(zaYE;-Ku#RR-5a5`?b(@?z3$BirA7Z#xzF6)P85dS#dktM5K@T;C%d zADe%n!c%xm$7+bY-;qJClPY^qXIQa5TVI7PrxYQf8fMgp4^@Ak5qqb-cyw zI4R>xjHvupUz(1H>Qydmf&8|JG}HFpy0dUumq-}D zlXuH6*gV^}bstMtU$%%_hK>Gvv)#IK)U2>5cOzNYau1(BPHa-nIipN#QR$JW8Faoh zK>aqs6ty-$JausqEcGO>e5TC%o+5fM73=Mt{G)vNK?CrXJUm}roNLwT?w9j4pxaV) zskG>X^IaGdfv3PH>6~mEI>(~!BMwGtu6&$kZ8grhW1PvkFX*T6HgaJ)vZjtk`$YFa zA8QO~A|H~ape^#}GsPSy7==ulWdg4V9{{tmltg&jo8T+n@J}zrdUWYIp-tHq4)a645uKcW5kCR|JRK-DVhk?$ z+~c|?;T#>LkgeZp#)vUv+V^U{DjfS~`b-A|iJ6R>@%X*VMjopu)S4T~Uwf8ITdeY2 z`!{|z?a?~RWOD}N1k9O;!*D;{x5kN`{8>@3F zLkoehsEXl@7yDsvKlDm0tcJ$N0e=ZZ)V^DRN*3$v3fd@xzm8;WayZU7AKVE`qAh$+ z%RVr|09+&*4vK!i`{2KS+lUoSXz^K>S17Ac`2Bf$n!&)hH@{F2Y&Vv6ZX&*Mu^02R zmyX1dp9Ps4YXg3z>?sHu_m*Myixph0xSRRcTGQJuyJrc%BgzNcRRxM~t99*PIcr$6 z9@%g=I)XccPveBGh&T1fSXmyP49zymG;jJhf+Y8Cn2O zX*wqgfB$KYoBdpjMB<-fH9k71k&(eAW$?0VpuDEVZ72Z<{b4K@HfEy2F#xwPmdFJ1 zlv8E?ZlcwwH>r(bV2J@WF)P7t3gW(8!g7n`qfVo8Slr~&_(TaI-?1etSL>X(Wd-P% zv0!TI;dXqR)3k3kFbd=01*{E3O$NCy8m1iNErpoWdI(8_uYGMZ59gwmeylGGwNK!rYlMktstz!oB5I${vpMgxl!d^QW2XvuQuR z*m}p*c5Cq8Fy2N@B0P9i(HQqhdQid55~Gw%QhDgE{r=eZw1&MOcQ{BZ!u)_65f+)2 z-8rCF#+IOU@Tu)7V?Cx1{!G1r%k}-7>!PdP)e64k#Ju^pBT>AcDVQogqWY=5@(j5W zg|SOmJ(C~SJRmsHTykyTxl#GOZK>yE-{fDZ)wO;R`k`SbETYWD;t-;@#`VmPt3TN% z`yJQmfa3WFYSe`ZIy%Asu*ueuYI$Z*xnrppD zyS+uvJ+G_A_2B6uf~o2#$MTlv1=G${9xo`?wPa>^W!US@S8?z_H z(`c4l?OM=PsyNkpnuODfTMNgxY(zhoOdlx0j^qTf6-U~?1@fj)!RH?gg>*D#Ten#9 zjGr_RKu5mx<&>(eFGvgF2EgQK!0=nx3$*rULr3LftCFMXI2gaiXrLOi4&K{m8e={Km+|HtkZrrkKGnP0GavP2sM`sKk+PIFY z3E*oJs`;+5@?_C?HU9*`A)TzEKqlm%SPf_G$U21sOP#*T-&^U`6fjEfA+YjM%`yM4 znwT8vK2B?Ju5_Pnf1bXy+JeTaTW>*@(I>FR`26@sSH8wh%eXaNmv zPhee5($z1oMq;kHa_Z3T50I+!?69nV>W#ocK+XyeeS8T@q_cRZp;G4r8Vdm-dq4pQ z2e^>8fh;fmI_?>eq*I{Q0?52({j7rSRL_GwubMsSBsywIQo+lx3Fjph%OFazJJjQ# zB^^EppE^~<_*Xi}d^-pj_)9Mj>Ip&y_bytN_&zxrPD*P)maxB;Gn8KNe`Po&N7dcY z=*^j=am%>nV?_A8=#ER4JLNDrw24UkbzsO}3QmXOfR8XAHQ~B!(!&lFgAx!P7yiHc|;C5Q|6pgIg~?A8)2C9AtZ-FBq8UH zqdB(HVIjOrNTm|VSw7$E`v>fY-EP-)y`Hb<^YOgj8{6J~J1i@knG!a%>C;I)7-F~N z_RNM<7A_xW$nh-$6GA@onJgqjW}kwS5;tPSds0lG(ktq&=a{uqAgw5+7(#F60P@vm zhTrqffk{;1WYL+@KzT5Pci1bf&y3{+>AZ=#=5BDX1D)hYkA`fYz< zo~9;P-3IPVm{{F4rR!jQdm{1I(|}0!MFkvggPVSk-Mp;Fz1lMw`bHLZ1OxMCr-?EM zRPZk9kYw!X<|Jjc0=fmS-K?=a&G|>|i%_d==Ecte3&dsv>n82iJT<+1>xD95EDZx7@KX4G;SMci z+`7`FFx$U~D<)^bLW(c1mU9TTFW?Xb!gsjJUS~w@(5Wj5R&8k;g059(Kf2}C_{lU&)bWV2 zU;lXRrwCCLYoqIazuKJut<`fbGq=M>!-Z%$&T{ChAObDd#DXi7d2{{t-Mvani`1^& zJgZgmfI-sIYJB1*cd9W?O@n-nL;!fU0-rTMthsYHJbxx%pmZFSnt@Qi^{&q!*j=%G z;5IQM6V+427Our?e`Ovyami!(y)aiGZ#~4`vItDv+2dYlH{-*JCLF(KOqPf%H;4bL z_V-_|yH{ZqTwpv0W*r$nnmybkQZ1WHX}VbRi_sO%-Izzj2>nroGFuR)L13qjAZWtG zCQFU3%XtltOcgMIgcKBkG%h^xv|L;09fJN$Q{53v??|nKzL} z1^YYt2jV6Al9cH4@1doZj}H9=IyTK(Y~(TQ1c9n1aOJH(1jG|eLv_?hXyw4p;OHwAgnI2|arWh+jV@nl*?@!-uIAP9k9*JErfZ2z|Etw}^!Iri z6V#Jd>s0!Q`7r~~CowGyYTi};lziKbxyk!I|J@1r&AfWb<-N8be6~d2LRn38#9em< z8!d*2G07WhJP<(oev-@=o{$_0nQ3slLc2@SYf05xmzobQ{IdbMIGEMnFxIU^0to2k zAeXRo_jL#x8ud?Av$3?B!ZCa4ue^urhr24zu(pR)2mb?7bf_lf+FE+VAFSbR(+kT9 zHT&WCzb~^Eez1c-g~Fr7?;Z0ODewB(x^LXUK;%Dmu@xcUjBTTFuD(pcfpL0)63PX6 zi=V3Smofa-yAN4>5hZ}YFJ>KGa1;7(<_8Nnb&J<-Q(S-(IR1yPubn z&$2jnM@)=Xt@do0qnmujdzr+`*!^afwO~)g&B0x1{CN#d6rLs(g#`u0^lGE>p;$mK zl-*Kklm;6p?!R`8dQ;YFMij(fInRz=qWv=UL{Cf7Xs}z-Xn2ODzNnx69-aMO&2%&) zqE=Qkg^dQ=R_tJ2F@3ae$KU)4XprvLif8ZsxwO3t;cWDtMV#}ICZUo40jm2Xf*|**Advb82yR-rph?~+cvqx! z?0M9+IB?K@fm@RC^iIRyhej63+1u}XU&Z&}aU5VJ9kOth4vl(Z3dfwWJn!d2#&4HG zL{A@w0qa|8aLhhGxua$is`2QIn!$^{U`gg*1V)b< z&gLjwk+2@|%0l(u&ui^^*;6yezfZhrUD$O4ikz1s%%e$uy&M{32^YF$Xl^Hv7r z6bDpeiu(F!fdcpR``e?IzeFObJCu|%PC2N?r-o%&hcAqVwCXP?wS>~`!3~_ok;fKR z`lCnZ{qg@S%t=fA3ZsmDCcM^daYOP_$PI|^NqEw*iSK~hl?A*PbRc<$D)W_HYa&H{ zs){}I-^O(Y&T1zz5JM3WTn6La7mnJN{THPnf{~C}+bK0BSMC^?amu+qjuulCXCK%# z^UL4NsD)47Aj-b~e-Us`Vyym7sYO}q-=D{9@T?Svw(um|?U#-IN8x?uoRuSJJo@XJ z5$)#@m!D$L1vhqI6JGZNJ<|o?1Tf@qnc<1#HiZG()ZVA~EAus@*>gECmj?3s8ZHVMqg;e) z7i6PP?mcUM`@Yr4`UXj?>ehm}`=M2#&;Nk=(nsuavsuG=3$ZV24@+}fzpUfN`5mn` zRnR%8>I3tT!qIC=Ye9DJ{#kxIYY$?ARq_N;L~#p8`h3AxXBg;Fk%rSki* z*e%)fWNmBy3|wz)h3S{EgL0uToWqFYDWB@!bHYr)t7 zG|IL;kx{n{&lg(}0)NLS95bSEjSRe!kLe=rmI{YYs7t7JafXDcAS(ONSGc+_AmZkc z45!qnNa&F9m#>oM?c4cDM4s8tu77^8V97l0hqnipNtkDsbblMIIsq6>CfBQvhJUP{ zBY2f6TQ0&&Q+G6ASNenxm*{khr^n3fsET*rf52o0!V8@lMst~Y(Y*a?ijvO?%jr;s zYhSSC9OkxRKkpe`*nlNKIwOf)yx1Gmm)>GU;NYaiYsLG@SciV`T;Ls^r?T%F_W?$7 zkSqJ&(Y;WY#)ZLw1;kOp-Qp2URuDy&$ zzp_((6w$}N{+4X%`a0oWf?x09*}{w9AlLY4?WxN^<32^;nohd65T6(mNleH;IKQe6 z5qKSfEM~SUc{&bu{TpebnMVRb@G8pV@_Qq*|HcVQbeS>eZfy%VP^$tgeUD_MG#ho*1#OkU@G(jeY?!En z{s=iwLw}b-%q)il2XL9(^R+z_kc#-|BrA-sB~bVknzk=V*qzmL%I`WNzCeHxxjP&f&r3;DQBelS+n;$l6ZYA9dwY>1!Y{ZSaQDl|f5j47a( ztXB<2F0$lz3N4yib_BZCxB_i^ijG7Go7D?tDUbA{QGChtC#NJGl>mm^UV({S-`f@f zVx$ip;FvK9xg&Vxfte5KeofQf>2K0EGml)Y`dQC4p#g3;B~jnUNMTbm;xQQ^N+iYV z65}q9RnF!2K;gP5^X`vNx*Ss%6HN#TD+ac=nD)izv#6rZqmW`;QBRekGt4V>U<1uz zSPS^1G?O8|oMy5u*;_1L!*}7f62adc7Z|IOVp;z(Smbejxhwb_4ahmu-{^LPQ58wl zEJ*53?3*NK!*c!*=ty+V6?x_&c;9sAHb9afb9eW z)!p37)0B^IMP!{*9D5YSD-UQz08o@XPLkVrg}byVUiQ9&&E_7G`8qeE1fLlplxB+J zl7CCjAx>9nda2#Q{B1QpJvlFMs9h12yrwkedz%Rx=mgfBj;%j%7d04L^1r?SfZ>TZ zxIJ2s4u4r37Q}pkVR7j>4$3!a3#HmK^I&LiBomTz;AE+@3_VqJFY`R^jAMv%__~&l zz+#qB+;PDpS|@(k#}ty!@P+uF1om{U_b!Be*eAXQkhrasUr-XN0KMglLc4A#OP8+# zu#nGS5di!dImBs1vTmOa6VckKf)S8>F-V-qr^wXsK%#QtFfPJ^Z~6GVFzyp9+-k8D zg|F#qU7hWj+F?>q+#PMs2Yr;Ud3t#*(d{X05jw*&@b)GL5eA=+SLd6tcx_jM7DWjL zq=ubY@FM|!V|IqJAx;;SQf#JOVVuX_3;lX(V6%M#;Cdd!|C=D|22$i##AnakIg<|g zV`wuGJo7T+>MBVaD6qy8th6mTPq^WDHQz)ol|}Fc5((o8j2MznIWn^n|bCQJ~^FXrGR>|cN6w^FSUMhq>9K)(I}q=rxtEM zt>g!I)O0aN_;$KVt|*@%@N00MGZxmhoT@MfetokgHnoO7Qz+;wvM6s7>Q^NkU%G_o z&PVG#+a_MP-5mbuAn3^ENrB(}(hGaptOuO>&4OzHVR58sXvn%Xm!sY46+r?AfxRMR z7%TIPphaCC=p+HErW#LJ$y&8I&7FVVZUvxvpyhkiLiLy zy?Y^4f0wT}zN^q4nApT|P@2Ui)Oju9a?+NAt*65C>fEllvydHp3+O{X zVH{f6WC3+pF42D49^SD6`?EfcNeR)>G|h0+AW5^h+_2A7n-lEA-2QmEp`~Tpr2}D# zYYPNAr-4qPj+lDM>C>xZe3wenrzlUR|4!ax2<*}u{^U741rxHEb1&I{BT#+2#3#p%)AhqRr3&c$ zkT^E(#v)5L{)ZA3Z{mUUBp%fmvNA%miqAS?5&7zqH-1uqeP)5ghEk>;$!D!oG4Mth zSUF%f`2Y2dTt{QqgroTvAO(4*t1{JrGpB^7l=@{Y8jfgbPaoyXvHbh(XRJO&N8nQZ zyFJepuaFgfd)~oLoqb#+ic)^v{Cw?yPU&yd1&aO$aBFaV$*h+BaRF9M1{O|Ui=#R7 zaeB0wHAA{8-@BpDAbicK!nkXejzb#8vh|1xP6vOe>LbQujADtn;e? zsw#`~(aU%67!KdKf`;?6t&cii396DEc`$XB?^N~0aE#*K&=DPqFeDVQ0ohMg{!nD$ zhx=1PrEpMiZT5=S5ZG}ck^lUXn#fX1)T+!Cd+vMpP!-=m2<`s>FT)#W7RjB9k`sEt z>nGkeg#KZ3zMrSkH_;ZYFMoz596#1{(RT4?fHZyd#6BGr#Vy?K9cC?8M5n+b8i@yt*FS}QF#WVbAeof$uSvkCO4NVe zBF^6QHzdO0kp9F#{px=+-Ns*^brsu7S6}D%PoOH4k1UHO`eGv|BC>Va+DCNFjbKdQ zYr#1n2Z!l)Km5QXm4pI0B<|)J@lfHORoSsI%Ai-EVH{d+mSSM?7{h%{{LG(ZEFksBQntd zjOBOHbCHK-Q(T?Ms7BEEsJJPOezD|Q3{}FfL{mJG3vP`y4zyo@N(Tv*mk!6_v*fO? zI^ci7GE@MZ1(eWk_$T2)QUkI5&%?Z?+BZpKVPrWLg!9vJ0~2w*ml3XgJYaBYt00=e z;HPsY4{`_utQhEp8{r4Y=;sw>y8J~EGS2?fxK7zgLN2qEHi07V&;-tosHMMV);?dd z4fgO1w__H)+%*X_Ir{kPTwV6f`b}`B@0Vn(SN8j229)$l09>W#RQYtCfC)guywaFv zV9Xkz+=~^a?3><(|IvV3F%nwaU1Nv37C7ARz-6iT8@hfq7+Z(8|C>x??Lg>KIEz_c z<~^6%h2iJ_12(BR4Y^+?{bFCDWE@v2Oy{@))G|#${8W>9>wf$m21P+qN?abzk-nC7Ux-0%(DHT`W^G1{M^;g3S|iy0zw_-7i+KxuQdQvJ-cMkOw} z?sBxw{&Pb{-d9CHBukaWGiOoJ^b|aS;t5>Sz3PB^nNBC%8l=`yy zuza`5@dY-JA4PAmw~B$JL>8^+MkfC_a(nmYGuywGuHSz(A^n;WqP(LAmV3F0RzAFs zM=qtOE|EGEn4D51%yTh6eX-JHR_sxj50nqj7nah}0U3C(lv9t?q@0njO z)e!RTj~FQ*>&}rYE)VO3U9{td3K8hk%wnbOPtktouVT8oa$nxqNwr=g8An61Zw}XD zFZ%&IHxvd)nQwmR8FmzIPCE2y=jOp^u38<_NE!>Gy`D2GpFY1(pkd5F zoLEEzx#ZexFp$yqQpdcE8^;Kk`p79r02Q>quS3Xx0s{P!N2hY+^ zXuX{nZ8s`b9K}FzwUJu)TZc2hU&{)MM%PNqsu|-9<-V=tH@=@!QeBLodfWaj+sn1> zuKefy8r(PhZ}>CcoxOLrn;+h;Zul28CEbjKa{U_BRc<^^YNfWWSTK|-tc<{ZfVozXnz=-A3Oc3OmIaPd3APJ<3_cWPVL@YVVWtpYCyKnrL z)9f?=so6f!cr!-A>;7Ftpcm)NYVS^5n}((6m+@9Pr)W`HyZi*|FM^-#snz_IhjlAD zj~oW+6#E8p|IJDyR%OkOk5WzV}Xo96fx?$JnYJY|t zwSQ}R9Kt~Fs+#U)&8P3Ki^@r@E1?bjy0dJ)W`Ra4&@3ETGh;~}t+(yw(rzcm@^e6q z7tzZOT>iqRC}~2$Kzx4m;#03!ZNa9Fohpi6MW6T$Cjd}B07ucN`!bK~!R7sEK;j-Z zoLZr>s}y|4Arv2J6Xjo|Y;U|PWyba0@AvV_viqffM}9qwazD1c0!fHa6gnTDss$7f z^%L?&mqDM7x_d1cN?R}>K3cid3WZ(pju*`&=kJdT|K*FPs#A}G*ZKuX6RkI|#cNxD zOhi$V&8s4xCG7A~G6&81+rW~qvn;=xbg*y9u73x!EE78*At(ZZJ5u9w0RP_Cv_Zy> zEL1@!^SoWTDq8gGPQkg$t$q$pR#-#A{1sTyz~HKMUafwCD^xziNF8Hr$q($RiG~kT zKT{>+&e?`2d!&-6WpCabCKOe*xK~9gJ2sXH&vCV1Y}e%aQ+rlQWCPHoO=3Bmr=zI$ zcKVj1gsKh5Z1BH2J~#s~=6IS}o)P!TCuBPMAdQBZUQsDl^#!UIOdFQU_zKMyLS;@$I$q!2S4`bek(9~5Ux zlC@t$353>uwzyyMwp|!k1R01z8GbP>mF4msx#uIMB`v!axF2fE8DiTy^bqQ7{`lS% zLMkVx!8ndublveDN9J(7%=0MT1QmH3(kv{`sRigiHdN#gp=#&&7bystgMZ(vY3q4P zt6Pbp*bSxbL~DwM3=BiCoviB7)&j9*iB>PzgyIHNdpf(wcmxZ|KkLWWAvcaA_VPw3 zeZzXC>o)q>Q7v)t+r&?y&4-N=+^W(W26q28oBs+4w_2>_Y(q~D49={V5|>Y(II5ylB4q97BR4<24s_^z7ZK8@!(! zIf*Bo{I9SB#22NY%eaC~n4ez}W076gm}NRmz571^XW7*EoY^{jr&@Cv)>g-K(Z0JS zYH_Sb>tn}P7BRD6Bon|;0c^BnjHJeR`+R&6qyw~~&W_Mc)BXpDgd0W!_@$7DguKbQ^RLy} z8MZV;q(R=|oOXSF^1KoFfG7y}imu7Y4Xe-b%nstx1#VO^~dWYPB2tGPMy!(1q$kx!8z}=QO`1ypf zl&_uzkKE+|2uTr}Xg}gBmx)*dKQ=XE1+KW`33R7wP27pS1$Xdb6-R+WUO2Y(FmImv z)%IYiGS4_e#>!XS#T8_Cswr5$d)wPD@{|=j#~bbBejnk0+R*N6Ib#c)dVd>!@jM-A z9t23UF1LD*Vhlt#@1E#xyA!ld&`Ix;X2LJ8kxD~c!!6#ba7MF~$!@qCQi8Q6+lRHr z?Ja&kAF~Wydo`oWXslEunNgWnyl)&&cfvqM`uKa8P?h`*q#`72^WX*aw)W=;S;CQe zXTQgNKhBa*1H2RH`p4F=5Q5Pzg*$xnWb1}Ub}dwLpPKtWV8vq+aEi)wM9NL?E^F)S z@I9npeolVs0zqoa5|4h*2~h4K6&HXHsaF^5xo8u>aXrdiTPqo@X{!8){@{Sn_$q;{ z?U)h=JW))ydVn2=r_QSbCN8EWI4okt{L_jH@VK zuQFWp*{N8nvh=ty=Y*apD)DL6WjL%ozM|3D3NB+m;ujFr5)P`{DSonSu~-vHuUdfV zt5{h~i_xYx#jY5IbwE6x$x5RiXcGVg4I>4uTnRoV?w!Q7cwvb+B8u3fiY_DAF0Xtb zW~C#2&xJnzVFL&@ungHIsEf8m7F~?;&J^7~7`z!mbPijT93p46QW2jVK?~KZz23Jg z=D)%{SLLSv2Sng3O5G9qW+b;recmtTPAw4=X$0s_9`o__yrm5`kE!2<9mj}K?B#XD zk~Y4h=W~L8HI~cYR|qKJGG*N@KCR}QSx9gyu%jV2UeIIohfSKyv+x{)D$p7SkxL`| zH*H^n;c}or_fSWzp4u`)!Zx{HkOR-;GESX8w-hOv*kwqO`zmr;=)kt?QoYv76|nP2 zZrfIHqDFhXcdhM&LM&y^p~rL)S+MHHQrp@jsU?Ay$b=i>l)a|2NBfZnr@>&U0G+;D z((3YqEPIt-l@+&Q(8q{7ltW$`yTJUNwBaJm)`k0ot^cI2=soa>JOc zn!iaENm(_x6SxdL8p{uOa^$OZyY9lO>m2`l^b=ad8_t7N7d|C;QD(j)r{$Ph5_9cg zNx0t~kD3_`b;5&e({V>imyg{|_h)m|CYms3^*p{a6nNmSMi*+;NIIqA zk3t>?9%CJ(4W@_X%Ph#>;y<0b^q32mj!vhO|tv`A^QZsR1!;zvw^E&&1$p=f-BRHmdJjT zcJ&5@U!RLxP19aQ>_G8Efa$5guGaF2ew9hq6}~QH0Q7Yf7bwgQh_2$2=SWF=QS3dZ zaT^X8i~V39^Nb>5j;22Qb+T@!NJpwsw$?Q|xuMg(vXtZ1YKj09Rw>XA!Nb(e9$a@E zGJoWq{JBwbSh|iMv2$4O_mSe+5u%Hz_Z%(`L z1!aiJj)6#J$XEUkxE-2SdxR*tTR`p26o3M$azRZ)Kud}OvsKUG=6u0Jy52nJReRi1 zs~iP+Z)Wmx^4nPPwRkjV=ynDyzS527pH6qHeTbvGCPw;5LMh5Cb;b3pt)9KxYMs{F z(z`P~-Nx-r`qfTP%0ytgi@#KqPY|`SCU=%Jd*^;l?kP_ZLsU-coKZ8)KKb;1!Mld8 z0TJmwsb%f`frcY?Bn3mB`jcI4U@D2U->ni>v#Md&CeXm2(Yw! zHw8AmEdB@FJF~eiQ1Z)d<3wxl-i<5aT__B!xVhnK@FX)aeBb7lzymSETT7ivk77O) z9eY~@>#aa|zxyZD{r6In3g^eHs;xR3`ibSrm~OCsNU|9|E#{cjaAeF~_WYdBYIdIr z=fg_R^HUAM5uC5fS2<7C#T$>ca_LmM4B)Sez6+p_Wpt9rHC;EKOt^kG+S+`}7H9kC z-4W{HaeLeMeHazq7+PGoM0D~Pul-7ua65K2>!6&6sr2`khg;6sI2i?@-)9?@lw$R- zvnb0o4dFKmg>)kD5=q-iQ}H7UBJVyV)zhOorAkj0aabAuskQ0_%JAB#OMH@MJsV(7 zQB)QU1<7^lRbR@1yCl({%;PIcCP&&ex!V(rX%|n$41@*5Y6vT4rim(qeD7mlbp^vF zCtCk{*Pozt%|E>@N_b{qWgwmP7sr>x2#o^#nN~Pg=0lg+V@b7B^y&q0HIc(3#=1<$ zR8|eDVzfgm5OVhImYWUX}lEpTANLLw9d^2I=Cvu_8P zq;kFkV+BKf+vMuXtCf@x@4qYk^x(tv@8KbmWk+JnUc`<;)t_G$}gXrse1k_DtDK_c=R@r%zbFF0uP@+?^v?W|-FS+HeD_Hr%w@9|iN~ z#+LRXkR!+6U`v|)DJptxXJjvzk|Van+fW(K!OQ8}L=d1~CaZ*ZHXHKMXp*s_dL5y- z{^CP}pgpQr8R<~)?riWbr_oNe{H5mmH;o+k&C7JV;QVcUgp^Qvt#jO>dXC61Vwv_5 zVp+HycZy<3Wtnq)Dlaw|Gwseg){7<-Ps*`f1Km4EC^&UTFr%(UP%{?AtKq+V8Hb0f z-24xTVh~T!>6hyZvs_`+FL9LnBse)LF5Q~5rB_B3Ojdur!;yvN)3gqmCX2Yd`8?Wv z#AWq4H{hPC$5a|Ov|K(_+*|IZOfdO&U94FLOb4364@mLbxU&FN`vlG~8Zvf4RCLbC zvFYH!a_G(tk2`TAVnrI>x(w>k>7`^Jzmd@b=>FAoYTk{LDeV8i98Q}?oy(oGj&&!~ z-Cf_D=uRJKZo>_MabQNO+af!L{j}Na2F44i*Az{o^5Fk0C~%FLt8t^nM#(_GEObjq zD@9BVNRiYCG5d9+R**G#xgW%Q&``tAFh!-$`qEf z=V`gWwQ9ssto6wbm95ywETan=BlmHtm#Q0bT!V$-rR%C$dSRh`yzjQro+SNENY1nx zHyr=d@|>wLnR||ZTlknSQHUFN_!`P@mcQ(5(kE;zwL|f}Rmk5XTaBV;MgM9eVs@vhMim?$cUa5k2XV~rCR?Xjr#`JDb zc%!646sB+iM7}uv^0)Dz>y|_CN&TD?e%Q}X9i~^clIbw&m2vuNNH2sW8O&7(- zm`aHkaLZ(VWB4x#&6J$~TBWN^T*NcWa`Il3eL9bW`&VipHhB$=pBc`-bVF48={Z1Z z;EXbZ{S3o3Jge?n3>0Cwgx39%KzE1gk9^@WNxS$1R?OxS>Oh2=%ByjmQR7a8o$#p& zZ(iau2`dT+e*JNwmNKExtU=uorwhy!T0AX(%kGZlInI1lruymptx**)^xJgrT)y;N zQ^&sD(BA_qX<1-t0U@`H$MFbT-m}JPGAoN62l(g=V$5CL0=pN7^4DalceV+Xac)SF zMx?|MpLj<%6U0Okqvcmz;^$GEYE;hiB11FCm=aK+2%enq_Gf+Wsre3X9?9WG{> zXdgcnA|Ap6sCnpHpNeT)ZRYoD7P`Y;Np5^{e?4)*PfFT6epNOa`k*E&ma|4+w9sn_ z6)SoFl5aTl>XKiZdQq5rwi=)NH6`{%iRzDRU4>?1rx@@B=i{j9_)&*KNP2wQ8BlqC z;h0eu*Vvd^kBJ{9w_OiLmCUsT6%O;eRC=u%m04&1hw<~i9Haz?H?u_UlqjduhMWja zShH;@k!II+e&^yWht|vCy~&KnHYA;!Gv3ar4oP=2`I>J& zhO&b^_O&&8pI6-QiG^l=>w8IRu#%CE0)=Ok51g`U`l9D}$bA^?RLK7RH8l%k)PUMv zj&}Rq3I1vH>AT~yz&K=`={LF}bl(AIR_C-1jphaB8G@q}AdHB8soHq?Vkmg{9tG}y zna=T&={gQt+PLC2`B}Fpzkk0e(j9X=8aa@`v%$Wa{-OOUvog&$Q=@h+gZ(^0)CgzS zcpE^IyaN6QFiRnkyOn3{-?D(W3nWM^;v>Qu2D?)6wHw;5Jfd%551h>8w~dBiB2HoX z&^Cfb>TAZd#}FuK0Jn}vtB$AVA@;IxKAdtsa6|9Jt3{$Jyot9;K z)%*%V^Qc^*p`4@H{^>RU1Kf`T6nD38+fYi3Y`wIk&VR-z%wF+&$Jh)(lKFV?879Lj zu!kU0b^7hQp4&oVkg81$LRHmEB@z;Il5ZJ`1KgL$TrxR+2-dx~pJWQzX1!F1Ft-}y z@%oDE>h5%LP$7g`kO);rmXC_MKUas8GW~*&zr0$a5zC7(DqrPLAvd1IvbK ziBBS6IWX`Ax$N?=JINwsPES;sk!y}HzGmzb+sJ5=XyuJy6f5`&l@K<;=1r`FknHU5wj6Ptl@u47F4I6nB z&XK%SI5&Hm_`{2vqED5>E>%y6LXS?h{hfMqW%l10)92?la4|D{%p!v!mcw<59oCxH znqIg|ZMHrBF1xmv@|qgonu+HVD*!)xT>+?^Aa;Q|H22JZKNhSxA#khY`hHj9e5wJ_ z=tVxWqnUyXotv1udt?Y;9r;n0T*u;i;5-}=>4xpc-3>rKryKk>6QC_z-E_ge3S$xmSmwqYSOFfHKN z!)*{%|E~eVl`%;`W1oByICrmV^{18LE(QM!+Hx@NqAmD)pxA3sIvVlt)A3g}oC2e8 zGongP{*M7<$E3bRI)o?T3Yp1j?#ASHP3sE|1DoZ#?(n`dKav6)8}q*xQ7X${M&&AhplE0czw>?Nm2g)D(qUQDSDfH1RJF)@ zVR?y`U}7+;7%*&n!jC$>5;*pi3Sn0mvlkJpB2z_~1sD6nI>f4SQC#+1U0|&T9`pK^ zS7C)ob2H%H=9sS3Z+NTK8yEeeGWdfhAl+AJuatxDzgk&&9anVb&4G3Q&PFveRtT89 z9yeMtaOp0)=lb`Vch~Ke1;P77cOps4W!EQuL+aKU5KS0|fRyt~HW`20kKoA@axp4* zndGf4*sTl+@wA6UGmJ^C7L(x9c)YvmEupe%&BA7Up^^DcC=R~tzE}Z|p2?OUz>2J% zDja~R0kKkQ^^8rW-~?Br3N4On(Z{zy>eaolI5;y>kyD!EMFS#ri8tw0<&T+%HO;wm zkt!Tr-`j<1wlzDognD6Fo~@S(-6{pb?M0=rk&4V<40p+i*V?^C!LK>h#03mYe*T*4 zqw^Nd(c-=hpU5Vh(7oZ((_;dgYY9$J*%Z}i7LO5bg74s=0lq^IHgvEAFS&U2c_r5ITN!Nt4T}luADkh;etNzctgd- zGyQ(UN1kC`6ZIhr{4#lXAyy|jw6Gk?nbPcV>;6sck9T5mPwOe+*#!~1MY%N5R}ghK z{%X^&&CZsvWh9pGajv$h4ZKRihBOl+u|)s~sSxGzs*~tHHDIIT$dE9u$5SPJ1_36*=q>@teKhYl1+W}=3m#q8U zrjB;QD#cJwJ$B^|r?KBuM7D_DF$ep6c}oTLX<-jeQPnnpR6Di6`?>m2-kq-nEz@Wm zdT^h&E>y-dB|`Fhh)d&~r!2_25E0dG#?2Sx@TV%Z^Tx@-Y8!fQOsC#VDu=@@UOh$y z{gNq)EM7pkPR@W7pogEDVlscQmzJo)zl#S--XPZp_%B}L^H)11Z>M&>k@TQhcb%1* z@Jgh~wJN^kips@H7wt5NYARE~s`$|bg$WZ`Yuha6)@~JbU%UG@h;wba`~~Lp0->jF z>3I=o-4b{IT9Ikytu~GHd^#~kDn1MCTK*3H6j#o(0c{~e&2Ja@oY$rEXNaG#^ZA0P zFn5_)2=7YizY#ezI7x7FisOgBk=~)2ew0%fT+}dL*7S$8aYGyx?U=&CS93yFWhRcC z{^a6jwuZ3R)Inw#9k9G8Zh4ctK4uV&aS;a8bEK_?H`uY+LUPi$tA*6eof1-OaJZ&VSSOTELEri%QL9~*Y0|hA zbKG$zK?+Ifp^Qx|%TB`IooO5iAvB5K%3L`m1R@8xpmD! z>5)#rm^=QNy}}Zg;wJpG%V7eQkoW-H^z;%y{}+Z=e4t@9dss)JL{rP#xtW$@#lvQ) z)8U*r5}|;gzmXrAk>!SEJggN{X8Z}vE$UeD8?$}M|8HyQZvwS>1{OBtT};MnUXl;3 zKf|^gDZ*JaR_MA_V9f0qo2N2b)59%VF4~tDPzbPc>{mJ7gHeUx4XqiHOhQ3$i4PLy zYrMp_AQPRpwI+x(5$@=jw16UsA&r#G$EDv%W7vIJ$CDkO%YT^I!!ODyifxO1U6^`? z>6w`%qReWoDG43j*U^tU6p6R?>68l_;}pvm#k(LKdOL$W&;z9(o8Vf< z&Gf#NJ`>z|c-!}PbJ=YrCghP0joNpRX%NZ7@qG3TzQVXK`%a$EfLQiD4Fq?Da~kN}QJWl(4~zQzWp0at?lT0-`RF)qgC!C!ySr0Z)B=AR$Y1;t|%LOxI8i;#Hugd&bk7KU6zb2 zAL%&JYTn`SXPx7>0y`D5iM@p!R3Q)OE4sLf<;ODLTjN>UO&pvHFfoIdF;l0V-CXw1 zM5k#;7PC6S&~a2`502*Md*SG#4ksx)b=O57pHYJW8t7;3a&CD5-bBux^ZYoIu~#b5 zTGHr+r3nPFuGo}rvHX1n`x^%CBS)z`x+U5?k1(Mt4tiOHrM>LUczdC6hpRW7v)ABC z%1I_amAIDj2Zd|3ws}c6IG^*W*`7Yfi+#S zA!7uy^-Ir0A(M6NtfNr1)G4)7Ckz|^zGJ`b1}zot0#yYjFx9>M&z*$dDOtMOjInRl zwY3b@0s4JU@T~UnQzF5ar0N728v@7rT!z#0Kt)RLP=-z%>oU9`TOm`^pQ3MlzpnX$ z|8Y6No|1umYdG%1!DzF7h1GVJkk=GFZ=SYf!FhT`l0^x6aMpo&G9IF zQqSQ&{LLDi$&;U-{M1Aua6ULNnR#@Va_-Q-a)z01PxOZYhCt8@QjNXn#L=Ny8w)NmQ#5jq$#qfN_)2m^*!;Sqs~Q_PKiI&I zAX`C_BcW>7mmMA`TriG^su$^sqewnqSZ6`w$g$-aKd_oK2qke)3~?lqeG)Bfl;w?9 zJAGa+ClZd1!U_AMQe7SG4DMHvwbN+J9N(uRg~%6mlPueAU2Y|-s6ae3d5L8HDq37r z)@+$O2>j0tL#{Yy;W({DrDPYF@V-rmzUnSr#f;YvRr8F7LR`vnA5iPzlb($Zw`*j- zZM9u79rY8?XQM-N{P6i*O_>wA`N15~TcsgOYa)&{V{F{RQvU1D_s3t}RZ@~B`M*5z z-E;b42dq;|-0yCE;tN^bP$CH~6)h)gFBfsg^?TI#FV;OSZQY5;G>IU&8?h4FkSaPv zsk;d`op_$8o4s5=8*UvJ)GT-pAU)IQorcp|JG&xr*GS}lbazD6=-q}`?81}5!8YvW z1z7KO(TRUc4qdY2_%@Aa_LAy%y5OGrW8qumtH#pXkZ}EB?SlyK2p^TFw-@Q)AhnnE z?fqoKck6dHPL!+--F~BB@~@$4MxSLX51&{Mg$SLYwtn--vyh@Dz<`jOn1J6a%xVf@RNza`mr{Y19&PzS40 zK`wUE^BBRBD@m5`J)Me9b4C?$8yi0@(GWivp8*NCiRAJkizP0DvvzwPOnwEu_}ucn`a<&Q?m{0MecaByDy-Vsw{{N z1xC>emP^(`9ru4H2k=D>`!33Bt~YTu{aNZ}agq{MSwE(X&LmgfK658->6NyKSee$P zb9zo#&x!zxsPxAJOShCnXeyjc$ArpOA>?ODV<^rICe|WSq^J)kVVuCj9Tti!3DxMPrU1S!{TDY-BOJm z0J~Dvvw<@O=V+trC-xFtDr;9#Gab@2AJ$$o%TsWj40*fPX5Cly1xx8DA5iX)MzHvr zR`NsH2#YI{Wjfg(G{%J#it*ZnZ6M$t+^E7?AyT1&=S|cQ=+XnqUPQiS6rgfM7>vsA z(>PL8wvhnk@J~#dBIdkFde{5#P<^r?tC@Z;rWyhUE7jAEoc%wF&cdOozm4K|0gN6a zWaNMm5=sby5~E8}x=WB!LXc)7M@WN!NGUivBn=!o2}MyEAxy!6s0b(^E&ks7{sr6a zwtK(NbI$o3_eH4f>mA_2>SrECmm+g%!kV(>dvEVliff+f$_~`@v`n#b_7cjwSN_|H z$^AmiwuH&3OOa#525w}AY0$dQ?neqUZCm03AMe%nf7|%xUt8z_S7-NwT$D@@19_C= z!fY58DSl9pWcY+3tM_WpxEG+vMzXKFguZ#OU-K*?nAE9k6&~bKs-dR#O_W;S8zL*` z(wBT=(n`{4OXXAIV$=9_jYu==8c_;w?=3vTx6!Oq4}m9*$s2M(=;Dwfw8vK?m)mlI zSJ_U(E}_<~L3*BKl=yK4A|K@M*s})nxgDn8c=Pt+I!MM<^10%&lKz}-lppjuQH87X zbQOnGNL3_YPw+F5pA)G%OA1oEpG!2|}k3^UPnstH{EG(d4`S zO^O{`1j)a9%b)acF4j zskqGVRum~h5AIT#@nUG7l+zqf7UIxQmX{opr)K7P6>dkm@r16v@65jmTJ@@D3kERE%#luXg z8ilcGR|Cq0z7BANpN!ZdPSJ498@aw3#35v<8(;ap%qoQn92MHQ3TsloiCan8h|<84 zzWVUlh}e)w+1ux6S%(bl3c3$S@q;XlAbEKXql1;rQiq{>)rFls{9ocMryv$lq<0Dol+vOGN4!oiFBzR?VZwBF zi)A6Sl1YgFR;GoKNpGEQ`{!XFcJ%on>!Q$VZ=Tpyo4)cXoYTU1MNx?MbFDe|m_noT zD5wY~#6-%zt>20d?&inQ7*Jde>8)mC6myk}9@@f(SQBuM@m7((e;(a42p0Iu8F?3@ zq9$t7a^!R8?RzTQzQCM7qmH8Bt$tL}zolkCp?DUgCG=oi@Xj!NT9KK#=$aJfOmwA6 z&sPLPh%y2zA26t~?FEx2?+eEgoN+O9+hZRS9q!cc2e%5}O0t(!YZ}QDV4O8RCh*n~ zy_ONHRRB~=lgF00m9a&pD|nOeD1jZyKOD6MAWXhgX0z(}S{&#Y7K z=V695{*u7tm{u~10WZY&#f8^J>t5h?gug*Gypbc~Fs!YQ<_`P51%)OIx2qfww#B>) z^v0H=FwG7#f_SWkSIQgW*+Xun{%#9nz(+a_6U5B$+hA(f`s{HPowDr~{}ASV-R7OJ zYc`aLMh|eCh7=ZaVB850aQm;zQAV8XO-=P5PN_9rk*=s14<%1bi{#}08RKkf|ICl! zUste>V=APwrTchJbPVG8)NtzDX+|?~#R}d}20|p+n997l@)jEyZPLE8Yfb^ zk)EP_%R-i!zaPnpf$D^#`RqRtyff)%xJ8KoyVcnygVyB=2XtsLKkr<`%^OU}Hj9FG zDAH3aB~>`1>Z zU@r?WrmkJ3SqBDg*c)qByhVsg@h|D(Pf7m*-VjCc%h1-%(;SbLTqu7CyWFqE$g)Y! za$9FFQ9lK7_frcP_v7w%5OQ&ZfyPH+T=G4&%uI`2=r%CyKfqLs>W!FnQj|gB7{toD zeH-3{KB^OWYDxy6phuJc)r&8?(5!h6A>Gh#(xQQgKloM8@XX5gU()h5p#_G!zdKuGQYxk5LLlAFc z(y)q4ad|W^u~B8`Q6aOl2oZ^fm%0ZziVvw1{3|v-=91(6nrN%?oH5~7S<=F*;^+BH zjuCH^#d5Z$^@H<#HcVXx8o4(Vu$@gi_h@$uGzt^O}*WGf{V}XWN?C&TmUUZOcR~5 z?4Dy0X$5^N`=jNf(N4=!xX*xRB-H)MOKNkclPs)(eI58kMBbaS;ND_rdN#daHuAvi zv7Ser+ee|i7)7(ORb_CU??qv9gVx&azaxl2MbX4XI4pI7VMUucx%5GU~wLnLIMdx!rU@}Nj?A5isjg4Xq9 zZ~h>?fNx-vDe{J`FHM#QP#kRMm0)i%A z7B99|g{p<^O;$1lDKayP_tDY++~vYv)H8&C;5!AlA}kACSCF z>kMK?&JQa2UW@%HM2RI^GI>%H?RO1>gSj6<^88dnZ4wj5w(UmxRONvr`iOf@>4i{p0hIoW6>#i`wDFOJ4XX%zbPe;iFx-eRm9I{GjlN;qGl;!OR_Xuo zuWWXVT;&4G`gtPqRLC6EfSh#vi%pH)6#G81AYB1V^^DaA4(PBzHJ{J;N>0oE*)HI#=DzsEBDQ#; zB;<6&jaEnFRBYS?ko2oS3Y&Ac<|y{P!1RgPow$kA~JpAV+Zuw3`BQ+K~AacCVb_RpM{|5}@CA}+A7yY^t zgTH0%mBJK;1r<~20k1PlZ&mj2Z;amEgdS}Hic9D#>U#@;GIis4L0@p{H`QF~I@3#I zffoqn>j7O*XD`TJCLM`Zz;x9_{OFqum*Ceg#)PV^!zkz`O9qZe*?qN#k|!&I$`(0N z7Xg9+=Mz|d7wUHqkhJ0*pNldU!rlBJamoGG{q{%|v)2_yD|Yy>*n-!iSu(Zu7S{j7 zR|eRS$0fK|%Otzne{OMkyR{7#A*Pxs>glyIAvj>jn>$zL`N9S{0~fM2q4rf|5Ffdp zVT_CqS#wO~7sdWtwfugsW@{u5&$+gOWzr^>`sKKho-OE+^LiN+?@v zV?S~n74qnQ4>&QaTkstKZ_Y1wV6IbqO>FATn#vospj(6=m|NW)0SS@(OrZe(P7llGqG}i&MRnVV!+Q z2N|~|cp>eY{iu}9`vKC^WTtamty zleT@;I@Oyz0=F5umkB zEA{DB4UK0XRo%kS3=qIy=k2(>M+StR9Kqy#pDT4PcVJ#!n`XU)KBbCJfB4=_^*(db zxIMl2V|}C)ES7#=kmv8XST0aA_6&_@p6MMF20U7f-JM$ag{;;vYrNd68U=%lc*e#*Z%{Y zP!5uA#UbsdP`Z;ucJ|j{$Ghycu))-K)}qu8&yU*o9?ruOag?IldH}bK9d}WtKhuPG zi14EkC4OO~%EvW(i(k{2@r8SuIZpVMjM-5bj4oCh2pru zuj_~48Z~pzcn#*~JG1xUgk`1& zJj;BldU;g#BsEKB6C@D(TM6BhDKf@i!ZlYO7VsJnd~oZzqkhxoBDO@hfKJR28Slqd z@Ynpq!oV*q+;)dojcMrq@&vm@jQ4LXoI((v?L)GVfeBVbseFAMm}h)H8z!v%1T>E6 zcpLpYePu_$;98S#@rvGLv^fD&;8bZl)3y)WMn`zQ0EDu}~%c{Ir%ES4U^}bkiUb0~@Xmr9(8=)c2J? zPOkj8cZ7p@xN*1wfEy*!8c<(Vj?sGgW{{T&3=TK7g^Ydj6!8;%VsM}c6C_d?<#qY_ zcNkyi1TKxpn!7VW+FmS|pz~_Ii)aN-u-qM)GcO1}WaQNghF{0kzuW_oF8Qigt_A;V zNQ!Ft;f)((t7S7F{%i_5rI&5#zuq;I^bT#kLlj73jn+Z{mxVaI96rt38&va2dsLUz z{Cl;h2D9evsTfhQji5Y2j;sdH;fIXr)1Fnh6B>ud;=<&7U?RKO4@c|SWv}5djFN+~ zW_<4L>p2EDRX&lo1hu`KVDiay`yinSPkdTu(j|VL7ppdcWllmS2ODtbxtjUfvsF41 z_YxHiowOUk)>|J{_e$7?YG31weC(?o@vb3GO^U8(*fQ<&V@w_Xf$XC6q34Wti86|mE+i%ZNyH?PBM2}tg zi8_P67*cyxSvTP3g3y?jCLR1lT>cclzT@0a`QcNR^OY%&k|p+v%XH<==3SDBxvnjN zW;661xHhT*BVCt?g&>UnbW!#1aA=LThUx`3*%@E1zOCAcX^Nid-S7=oj!k^t__A6B zP0|n4rV+eV>pC>aQ~H*Ti`w9}Dp5P5`mSZ+75~VzXPOwvwufp{<;2&$5k|NK{lMl+XlRR7yX3nY&$cj@kEU>mXLfu;jru?6gZw@wR->G?um$If7mg;pp&T$u}lPRb5tFMF}ROJcmV5b2m?JBYA zaBOLs(4!0--2#6F!F*$94!_JODT4!sOZU&nX3~tSlNB3HO~NJl21^PitSDj-c`p?9 z$+JzB41Qk;SVM3N!Q>W+N zJ!9LFhM!IPq003-TMhS)nnRzSI38=0*}%WxDFwCIczklZ-@SMep7^l6SS zh`h_<7m$bqSh;^|`1{fuGQz{sb-?t6XzG7JgKOyiMBxht{z5CoFvwet@Z0u&y@wTvCs##qs7cGq1i?cX%NAX&13?7+{Ik_hf2j^Z}H{XnyV{*vc%E~@_S_v$JY9o=E zJHi~JQwZUDtdX8_OU5m9{+JV~a{M1))53-;_3bJBMG3|fELuWb9)7Dr5S~-K(!wOp zVOT}j;G9j#1KF8XzRxH+QBR|CE2Jpi;MU2ys9Vcdv5P?#pK|=1wyb1#kwZt)M9>Ew ziphaq9<}v|3BQR+jvcHBY?f4i#5(C~awWp7quQ%~vEfwD`U8UsNs) zi_*jVy+i7avw#e*k>n5~QZ%y*=tPl;apn!e~} z;QHy~Ca>#8F#DpS(u6@lf&{fqF8c#HyV!ftHmDrWXsYB|QOD2c3s&C^gU%5elKAfc z)PIXEWcQd9r^FU|jk`t33g22YrvQFRGB$*PUfG^sq=MErrf)GUm4b3S;v~k8bR|J{ z^UtM%onS>rOVI2-lXV26(Ae+yS#x)5pY=4?g`})Lu$yD$VGomH>}&R7rv(ryp7~In3d#hX9h$4R1d(cnscs>5isuWbOy4#?$vP13bczp3yX!9 z?h(@$L~6|yYj@K!s%hgljoV+{_ef*7P6KjWEHWuzP%RAeBUT6d`l3}pUPUG+b*x}J|<82ZXh^( zi^q`gmQ!(ik)J49?Dwt0!8Pw)^KXn&4-#|^Z=iYkE}E)pUPBki+Nj&y*~I-;M|S8N zEndJ_`9Na3hI;9q;QVSwqrSYCDikEp2mVwYBvLZP9qodh$s!8?Oh&M1)%Zz$4>1*Ld9S~mI(U?)u0AdtRO$Sf8 zy39E1P%GQC9~$eG)V&*`8wChHC(c!0y1D_+iziI~S+sH25_Va*(08g|kMv*K$qB zcbgc#wA-E~K{S;w$;Vw+cQeqkIBl`-6!06P8+%60dW#yZ77doH92b@gc=SD>w}NIXlQNzGV10$1y-FV@3>jSawsG4V~t(G{5qtbQ9wn`d3+7= zTNlaxjj5EcA-&bY=v|z!;bTN@9>!AEGR~HzZ6he#WyPUQ`+om59V9?L=;&>pEmweHhC=2$nKaU-&jv$efqk4RvwpmEnC%d;11D>`USqa8AI@ zLGm{pr<`Ulhv|q_rhr?dXP2#ul+9(~ej}D)JT330mctA)4GiO4Y6PKRLE{eb^C|b^ ztnk}txEGz_@^gj}6P-Q0>fG(uuZegByhFPdPG{UR`NQLCYTlh@kOqa^gygPN*sDr9 z6-;h!VTJp~nBG?=YUi&l21B3`cFX~Ir_AI0y(M_UaCg|yyK_g8EuM%RC}Tp0bp7cZ7+H*tW%|nvR`@E#rX!!UgvHi-x?9kqEUR8QijyYFp&|xt3-Z6q#f3c!tY9WC7{+*{z|HQ*4 zcOBA&+aKW9B>ub=bK9MMD(CHrRG29C!7*XNB!zLRhGe0qEl|GR_RvTNK@41s+j_z; zMKQBh+z(|uy1`||#;MGH<4;>F4$c;B_x1<O!)U*n*6`*p-P70z>giUW{x8-Bz6H z*%YqaxB^#9#^s5wYuU#W7M+T@KF9f~ACPChMK{i`JX4nE%>juGs56L84Mw0d!Aw}g zh{CD+(wf>10&5uydL3NPB_;F`oOndd(j6R!edj1FsDhR&p_0Dq(^KPbL`-3Kt zfrM*;U*jKDG_c7ooUU_qDQjByGmc+$wVmmT?laqjfqV%0*d;5YXGgc5?PX-bPA1P^ z`q6ToHv2M`xKMx=Ha{Z;*29I5c`P@PtgLQoNLM`g;Arl6`PxujnJ&)LQe1t})WAtR)uKCA5!%}c(SCsAkQ20B zXz^i_tDGh~OBu!7_R^&kFu%}4Uf2L;x9NV{rb)})@M)a@(i`h0U`505@}&}PHM&G< z|Fz%=liX@`pNk5h3ozuuX%nnO$WmOHY_Yfnp+3f&xPP~Wb23ae-4o3bb>d0A>}C^~ zot>VqLNrsyIfI!Hpq}SOa&IZXtbBW63)-?CDZ{X)M1CvL2}?~8vksTc@{1`X{Gu{i zb%e8OMxi~tFoO6MgXa`^l~W?dnKV|Z7mW8r8d$kg#rtf@WOZXud@%g?wU7?2hldi{ z!zt~YL$vGgGv3Gno6R0?eI`*tH{KUx6{rfeF#Bt zHkRj+@60V%4@4Ltq=~2EJaWRsGPI|(eKZ~mV`d>ZsS5*XXOu%e9L zk#4%720%Vv;WgU?Gb3AE@B+a0yM@All6TpMyP}tFjMSaP6+833;@6gxO8w`5Cn&^3 zl;6{^}JGxB$;m&lLf}Mb@>wkoVnh_I~p3A#YkB&3?kyk zxdQvKiV;DFvkFsIiqDiTf=G4F3jOJ+3u+5~CM(cYE6R0E&8=01Of1web{B$jQz$OT z4>#*wSa7f1ok)pL*2Dog_ESYMm1|emz-Q*|2cwtw<^?h>kHB+t5JS?clQKJM^yJGh zuJo?~dJeh>eMWgnZGHT9gZush{#fhMi#Ec#85|#>PiSk(&$_yUf$EA62)%At zYc)~u)f$J3m?4|y-@=YfRNcU3zj^@8@s+#|tcj}{Y7`xK;{2{b$E=rc<>Sgx)q_1E zOUg&vTT#7Hs&9|W8ok;9e$Uuw1yK*4La+BNBKKJyNBj-n#5@Gsn%kFq3#Upi@fq*P zRM&?{3cu@O&$nTNzfxvDT^GDD&)=mN+VN*pFD{{l5PY3qTy1E?Ae2TxO z{70(Rfn4YPYvA`bRUZ?(QSGb7-l&P@$uqSuh}BaH+1j)H5!x$3*WJbh#1+_F5-|>g z*XsSw^gj7 zoXzl`m`JRMBx_~Cb`DZ>vzKT;3L9{>q@q1j=xx(;7bEj+3u>QQX-NZLNE3Nkk5pml0xV)Mx$0Wcja2=SdU}>lIFCfCG3{ z-!Lq!YL{UEbzu!FlH9}qE4V2Xjxs6CYP>a4R@+5-R*$_S2)XY!dQX z@*WNtLw0?d(kGLAfSZt#6y}?&KxXCgFKDbMg`p5Wc0blb!Yw}Y z3LQ$317%=+25%o;=pqu(;$9@NdNJ*%6V=qgpe=}v$Q&+>tE8pqc51vX3L1DTpptjTqJU0x3EZACvE7C?CKX=azdgW)bwJj;ID})w9yE49ycnwN1U0#R6P@^ zH65|B1`0Dww&*HFS;V=oylEr+co3Pl5Y#?1gf8>Cy7yFU5PH3iX?;LaR?PI8Kd~*2eHTADhUaZyKv2ZU{}7GYDtjFjki?X+ zH5;kKt2h_(D*YniG5d`bSLKb=bV?DLtf_~r!>n-ZAOZ21UG&x|X&ovMj#z^UW*L`K zx#aU|t>yn_Etfz24>%AHFZq3nB%EAVpH#3mzZ9f1FD*P-tNmdgW?vn~#4Rz=bCH@p zASI+*l;IX?m$t}6i4PuN`I!2V1;?`Vu&g-cZ#lA6*D$7pnW1}>5jqCi4!H_+EOIz( zH(?T3$f`*J(3;CdQwiob5(q{Lyp06Ej|GbY3ymmX+olv85r`65Mi8RcO;M&yU>M7x z(*$ra)a~aYe~bIoXqEGDk{sQ&A5q_3h$2_5PF7#aL=Jj>U# z%pJo{6oXDBc`1>Mswv!|{+8k^uf(Tih-};*83qb(RSt-fBfh{ZHm|Chh);+vvq>Nv zO%e#;3rM9_+LhJbOgu%sY|KZ(W@YrgYz?(m_BWe;tF3q5rt$Xci6Q}``$f77dA}*e zA)91H$rZF3TBsw^r1qD;xz6UPldpW5u{s)C1_92}p|ma<9yss!cjQ zfIMEB0<>Tcg-qmwKR*Z!Aq?+}4?ET6b+6<{G{?r;)>lA~xXypx4arkOOIgBPtS)_1 zEa|DmSo``grhS;fM;%e*Adv2UpY51<+i_`2MZT(>J>?x}B76Y{j7ekUvA_C!&(sqt zcoK*-EA>^e?;1ugYebm1Qt~hgM1Mh}FJrBp3UPPfnYN*O)&nW%QMxH(1M(@_k4FMS zE3&+ldgd>uQc?JKpQ}M?V2#l4fuhsF-aIM<2-pD$BLJdv#y!Qvy#h&A_KxA)%PC3r zn{Xr-b0qhQ$dc2!pq1qze?L6G#&X_0F%G|ML711eL@^zwTr5|2uK&lTXyY3PH+g|B zCNbsMbVF0O_)?jT!hG(yx;|3)jCa$Y*~ZdqdQF?Sp(%W0{l(xvkM5k`U5yORpBfZ8 zxRd$H?C_*1cYPCcwo`2eU{-So)>J?JaG4rru z(xlWWsgL@U{E2L6?9x76#YaB+OZowEE>z-bq9_+<=iiCumVwm%zmbwo65oh+50?IT zXX9fh%Yl$G(E%Uocdnlm4ZDo(9cvy{+j1W(=9}@GoT(lZpdr`y?1Y~HeU6s1%bVnd zXWgafeXeDKuZZ^ej{>_?hi}3M#4{dol$2%&Tq>4fi~k1#6;i2B&b{sH^Ki|24YHvh z43<6sH$U7-RBO8t6&!5m`kF8q`Dm{F{gTnc;&U?tRH_<8vyR1Ox}o`bzjE%3_;OYg z#_{TluM;Dzc!&F6y&}&YC31lr#bB0{SY^fRTxW#f&%hsn>^+0M)!|urU#D{7Ul7zs zcc3prTl~=d5r6)b|GawVUDD@E6lZ&AuA8Gxj#{Stf@JYlfP892-&L>36TFehlo!xX`#5XAtq zu;`@@G%b2C+*b~Ze3!3^=2z@w6W@XWt*y^jd1c?KY{H1V@$-9XUC~BJ0OLt>sbeQ3ETn|ZAwNrd}hmtpm6mGp{Dy>AN zvMPcyRkab*XO$NaoZ?8bvUAMl#ktQTFIARKYhx54OyOhv1Tx`(#@bbNhnKbEI3sagh!cvFc3hxeC_=`7;wgj6A&@v8Tvte|+uM6%j(^5%(;F zR4xRHAuHTX;VE1BO5MRdZ0Aog;|&+KMa^QkPZ34<@e;w&xiBg)gHX&0n^bMeDS=i7k9Fu$VAnz$kk?rEA7g}a*#-E{sO@rW( zOCy_3wl5n|p|n`%g(VmSZOK&jJb4YH=~aEpiun%eXSoB5frL{8g8H%K1s@gzvAN^ z>9ul097=b8iN9cP#{m+LqDMa)iRxV4 zm3Nkdj}HeQq`^}F(%8z7-wwr3;9n#Z(A<^b3zz*55TFuzPQZn(mTMquC~SpKzoPT+ zA;BKHcgVXLntTM#Tm1qhGNr@icdqFIPs|1chp=<8W{lCI;sd+FL6+sL< z;seZ0u%WiM)pK40J(j6 zOy?@nnP098$u2Fh*~-sm$BnllopM9!(m_yrS=-C*3tQ3-{{d~JP~YvY@ipE%&ymRq_5)GVB?in@gG-k3s$D6pHB*!)vG9S{sT-B6T8(}N7uCVX*;SWy{)>3 zH-O5AD2L<}$QN=?*IxsZQJo3UjUPk5Vn;U6`fLF7XV6KXu2@$Cd4JAzwGrSq{A^Xl zVEZ{IBj=sB6Gpl~`*{Wdg0e~x2R8mJ>&F6JUk#q2(@ptv6KkIusbAVbu;0q*3P$I1 zN>rzDjsxSRL7}x>5}Hi1wVlz`8kQFqcjYYxo%FC5G|4?B;`_x7omJ2g?5z>9<9-xW z7sw{OC-8sU5&)ES_sN^qjTIlddhr8GY=d{OO951E1IAfvBqp}R!jSRZ%^|BSCI)`q z$L#U=NO>m!$Gih_=2iW;Jd#e#=B!T-u`x>w*k3zD!CM&o5OSq7;}sX!2K0)fFpQTJ zrTw%AhmzYS)@q&i=W|xEzdP1%dl@sk!W#~1P~;9R)q?fk z-IoMR-jzg8s;kG_RWA;2-)$}RVMgq6Ntl>Ru_HvFvZgdZ*54ve{Qz@PZg< zYmJ*R%!6GSp~1+*<8g~JCAKJ3nu8Luv==Z1dL9$>`88H~7$GZ;DfP60;e-*(cTS>W z`Ipa^>#xDEa4V7`(Q1?ggc&E`>atJ1PMOV@sxdp3`CkRMUN5^363w}yrh3;0e3;2D-q!Z=9es)o%05$!TDS( zLN{ef2a9kZ-X}c|hUI{>$LEN{n%f8%rHyap<$y~GX-^8QBkY%dP=M?mH z2Yx49db4A12YAN9DsDJSk(Fn6Ma>5QW;p^QkJz+hSm$v*HwLW|=L=WE(pa{J3FRex z@4pQQ9GTxkvNkbTrx|^HTqycL>{j!=oilhpvvUogqoTak($P7B0L`S|6j7kdM+?um5-|+bc@2SdR4END0N5~zgNYns8-}Lbrqy2;2jwLU~`lOnRSlnT&@e%|5?F>8ab|VN`y3&NMc5 z>n1rx+JyoIXcpV@0Ucv#HKwD7$&bx#;ouUbL7s46Iv45IKuw0Mvgw-cO8scL0|7uN zt*yB_Jw8ixqD;u|tnoHUquBqP)3KfQbGY9&a`DH^ZB@Sl2lX7Y#(Nr-cZBsWN({WD zCRM1qJ{_MAQvCSU0{`4rUeCZRcO!c#^#e+T?cP=wAL}n_no9?gHwTe>SbS`vQ!WxF z1o@Pk_vkNKxp&&7L+&gAcvL6hk)dHGMaW`x;=4vm3K^B6I7^GaCTkvm}bQ# zt;g-8!x!1N3LhqMF4LZ#{ZPj@-PCKo^Z?`ZVMg^Lzw^2Yi5*qGBU`3A&^i3Q@&4uk zo@tTBFeY(xj7>tBwdlP;Rk0*#J`5LFDoeC^E5% zUC&A;N{+2v$TUwd)s91QMPXsz+v)1`i%2C~6Ay9Bms{Mf=b$P8nYwsZ3G!2_^@ zc)~g%OCSC_d{yGOQvy5J?PiLr8`}{bN?ygVKfS5IIl;WNs%VmAC8cn`8-j^QF#OSk zvk@XgU4(Ec0G20ap9{!~uI5*O+`_DoV+aly-hcO}Fjk8a44vt{3EsXG> zs<&^``#+1;S3^CsF4S-bNAZ!~x0POhd|f`m(^`>FEcQF)_dOlCgm`tXun{%_wesVT z)KMuoCoRl8r>s33kiV3-VWEdp8%-B0sg~sRcrAKe+4=T^#_QRupS4W=ppapLYv*I< zeQu&}mSLfFh7w^SrKhd4sJmd4OH@fv_;HN2P*~D-hH^x>>?3~~6B2#b({wlaIB}6H zbZ&z5oZ4mr{e_k_eEXA!a2k-H4$)0sXqtF}(6K?D2t{Q^zmyuz0$;@3Gh%65!;#PZ z&kv%U4F6#a`?()ciXtY%SHw9#nvPqv!<#!1Ox0e3W(>K)SX*(J8M;e-A)7HjnF23@eknumFuP%h%z+sj~R+6lwQ-PLigYp84K zH@9|^3eaw^ql$y5Y^!n<=S#6kEpm1vM?5P?6R|M;3}Iy&Jm0r!!X{z_XVyQ?70nX9 zNz8)hJ*nvJy_#&7i|VUP!FefRrElcCAUiTpk zs@s~Wq7Xfvv|4MIjkf`dcq^kmOsmpVWiPfvN_@v(+dMh^<9+U8&!nKKC>2_YS?@!$ zgI;E*9-MY;7LQUf1#z(H6aY6TU>By?nJyDH$jbcSrGb0<&W!CzBYR9}k53I$sme1wphP;J@BBSo;e+8Y?CO#*)kL7~OYoXDIkRgM1$XXz}KTUJs zg*obt@c1D6-`h4cJJjg{4(1mqgl_!K=}qud1sZj{sTN*-*InlXlZ z8(iC>vONW44$$CNC6OJxrQE z!Z1BYjES6M`!RtbzlZJ2ttV!k3k$$fv_Z}sQhym^!iRZ=0y~a{;20~!@nm@hRrD-2 zCWi=KnTXiTk}*OQ;?3z6?}kvJ&_Q^S&MF-IcY2?Eb=f;d!a#};LSxCk!t8{oZzLX$ zwN_t6@VqC&X=`XM=CAb&!ZEbXF4vI!{sKt=nziXGQ;mBlx(VKpkc=NCiYE*pr(Jz@ zdTKTqyz<9Nuz;1;h}yGa=_3`3i^3=i!!z<~D;gDWMq~9b+0n#uXl-d8Jmn+mrCu~+ zUDT?vG>wo7%7u{}5cnx!WOpa|t8v76;hN4W?JL5frlBk|{{ii+67&bE-;KPHT|$ap zlEc{KdF3(q?=P;Q;9E#K!4-$Z2SIgFh;Lbq)x+11>c^v0_;U;NoD;@4wuDU<3%JMV zaDhg|@$+db`Fvrrm86egJ|bf2Hj}o5P$MLfT(wuF~~-rw;ww@29-K&8e!K{nEEMtlvAnuTm_vU zcPX|^o`$FWJf;`@K|hlOEsdX(^k(D8mHq9^9{9_bc}j5A8!_<1oJt%M%IyeWeoes5 zDXME3Cr;a|Gs&8l4saEPznEb5`*L#6oFP@1*jqg{T5d~Gi)H;KBa0Axmb)s4{C)CF znNZg$+7mrd1oWS!!ND-?G7TVgem)^ga4Hi&c?Z{gx(yK&#KZ_0M+M()JxF-@F0XIl zF*|rAx!AP%Brc@Av%VAZn?5XjR1{;bh-E{OZITCO3uTYvK0SW=={YtczJ!yq!}6HR zCUe#7-+hNv{HRhFF+JnGd)-hxUiKq!^7ZoR6#c^M3$w~u-b~^&Js|`JuNMX>+;nJs zv&c>nJFeAQ2#NL<(tN&xe9tFY!=i5s!fyUmzp!~7tjKEuhmA&zF&@Nwt{T6Zx$;m= zyfI_lQKtt-&LyFYM8KjvRK#iWK4Wb zrS{d<%GfbDGcL5a)a46PhRmT{c7sjW2)(fgDfVK;O=*(zy_hjk(8d0gDdZO(>3e2THFZ zrz;y@1?BjwP2%NVwltoJ^_Ji0s3_ujz;A@yL-9#-nlg)Axck%$+9#|^ow%2qYkaO( z&z~Q4i1+42{Be|aCXs45}Z**c6KYqSTa8^c@Brcs?=D=}_rUto6g_tQ3Ugrw%C~9(uKd!ug4$x!J3DY@PRgB5pZOvEDC2+KVe?V%@(>VD9d;Tf&?U|xe3ionv~UHw#-FH1BM|`l z)rL8IKT7n$xgbl1cQcF7>azh%VTsyLN(AN5Q}KtY2%jZz4Bj`&p#)-3r`Uak3)&>@ z(y+A6zeH>L$5SV?*nv{`*7e2eJV~LsxWTf4i1V3z+ z>i|aGwWFkWapwkKNzJpJCcOuoekZ?Zcz?TR$)n_9ikb7XjduFevydp%=?(5XKEzM% znzwr0OF0|f&cF$0$R$1L!s{bf(MZrc_+g2i=!qoP>#J(ayt2IEA*(eF$M*LxJPy@5 z{QoV_jyZ^gYPg)*_R{(Tc-l_VPWQOJ6R0Z#dn#-Lf@oFWBf|!Euz^%3-MyB?sS&d& z(=!)byqhuJm@rwPl}g9fkb_T_l6LCxbLqaC@__on)c zXPuRgNRbX)dEUfTUCf_!y0fJdvVc*Dm=Wyx{e#uDhuCJ~{;ki)>hF$5By+>b?@K`* zFNKS^=y0iir$`+hSG=$_H1Hu9_DXDN$v&ME(rw%C_D1M*yAfj@Z`BZbpmK$TI z$}Dj?-1S>om9Is_SK@H^2Doceqw}4>WiBYZ{Y>Yxi$N5Z)zSKtR36PX#nA4E79&5dlO!C zbgQb_Nc$-xbzGN-0O;*4oiaT5W4n~(Fr~P7qD0R-g#zh_#^+3u3b@!SU2S*YYXHAO z_M`Z)kD&UEUfC?{|~T9p~;bNddshRO_MWbN(9+QT0EXif1q8EMQsBnp#gn) zkDulGUra6h(Y6EQj2fY% z{dpa+7OLPOWK(eWtdd5GJfqS zMOJ?v{AaZIv|{x+9q;&KQ^0fxtT)UgAKB*e9tRgEdd<#eewl0EN-T+t@Xqb>CgvuJ zpA-oOt|*xG&6VzplHuj!H7TR~$Zzgg78{WIbS^sZ0cC> zNvC^}=kbp#(H-Em{%+~(w>oX^Qj z<0|QbNF5DVz%4!2rA_F(WVk470d!12q#SqeF=F>_VI8p8Za98voo!u1oHPolKfQL^ zpK;lB7ePak@pB~(d(8H5m<+gQ6m;Cc3SFWqjPV(WXzqT`0#3;^k$q2nW5;`fshUiG zP^C189ZOnF=Gixz;xsE&>gRBT#)}+oez0cIMY@ve-hAj?N!w{!Hp1xlhG4=#mIcqM zVVG6N_X>FttFF_X&U}LuXh?5Q(8f+!lIrtM1hNr0b7KXRPU!ZVicAwL70 z3^@BvCkcN{X{XA4S3CcJa1!wR<}a-O`VR|aF`fvJba5~Hb%zIfS*|M|H}D8#LhmJ0 z#-ljt5=x8a`#8NnErMEOp3R_N5^A#iB{^0VOpl)8Yi6;n}cxYQ#9^;bXe!1^?#;No-Q$gU4oYNxy{OxlxtUIDMX`?#-a2({N423YZ(ucK>@2bKO z$jMgrLx^|+QstO{XD9*ss$lQX@M+5b`9wA$nrGZK<(!Uary>UJ1_bLQ;wEvKAMM;6 zZnwV+n*KV{UltaD!EhBKQsPeU2}&EA;nARgXa3J}=8ZEC3!VZY zrPBAl!LJ#c^ns^VqftfvUcnU*jTAWtikNHH*`|AStuV@M^uTu_WN*J9^Az_L($Lwf z)nEHhK9oqG6tv$BZ}T|vfCek8K7U|qwJ8Ae>mOa(Ms)G1|JXjo*5aPH$1WLlvKg?h zF^5(0HimqSK?a$aj2^$jZOVqW-y16anQ@j55VUK)8sa7OE`Awf1jd$*5` zSz%EFFyg3s7ynS9B81lX!+TU_U~BnQeD8*Rn~9lHk3OwU+vUz(CZf@`OLPMcy&9gs zSAWN(S@T}5isL(1m7T3?`@8mFHbr{lia|i+k+BH#Q|y-Pe5;UsgfPX#hCmm;=$Ps2+Kf44rrwLFF!LQ?^oC0 zsx}Oqy(QB?C(s;dm;Br&gMgy*&XTCveH9WjyFCr<*5oI@c2pY(eeHUM)C5iUBr z-pcLn7SGilgQ_dF0byXns+bV6A&L&(y#tq2fiYaoSf1bOvBb-)A zq9%j*^-ihPQSI9Uy>VRuHwGeJAzs^cy~C}AToYEle#sBB8V)H+D6K3>+!lRsCb&7E zxRe6Xqum!T9@&-|J;gqPGARW!Xz!&En>_@pa)9?A9Wu*F{h1iXU}yBbXbE<9fLYemj zQ8KnrZc%b;sHg9X_h%E-BxP;l3RgecF8^u?vF^ZFbemC#D%B}1aZ;gBcGcO@vfdM- zs8~An4bM36#KJ67W#Ngb4|F|Dd+MKLVGMc0Z5#9BF~zH(K-xr{aECocUlzgLmNv9hd|Dcv6_`dEFy4T6fjIc3X^_|C zGb?ry4fP_bu@G-g$HwTev4g^vo_?8sy4Q((G;h;PzuVfG0adZ!tQ%4|e?wN^Ex5|3 zj0J%x@DoMo3ttETDjzTC;giM}J)*&qB4+_Kpjm3`qME2{I4!HOOwbcYi2p;rM6~Ue znDhGulZYZ0_;R~*b*e9)##)8(hVxjk1W!g<0-QYTsQ@BWHS8%3M|dMdgDeDNuK%xtHX0Tgf;(b$k5iwp-CaW7Ut@Vqfr zUjkrsK-t2$ImDzy{wzx0E+_GsdAfY+@Fl&jKxNyhsC`m~4cyYJho&oV`G}GsK|WvP zq3)U5cLz$Y@winK<+s~Mbp_9#i4oL^6VQ&~HzfEz{-~&2ZOk0OnUj`y_2I82^}j(0 zQhoaqoMAVA_Ezs*u8@VkFh!~SrrihJWuJdLW z>>Q)zJ+kd8vcg=yNNwu)^S#@VdHTopOVzh|gAtyN6msB;Pem~*L=*OOmd@Y~`|jPf zAOn6!>_s0Rj6-+)4)`2yYrgW6`~dpX=({m_2M7FO#-NJZna?awT+P8dx7Vm3_})k9qp5XNm7k0ExdvFp$pm zjc0V}#pTd1%txF_V`(v>d(6HP)`gZ{8DU%eZ}`I z5!T__+-U1XsB0_7(Mw{3P<#NqzDf!_IexfC{2ge~Q$ ziBgjf8EkdxBcO9|>qmEwB^Wq035-ed#!} z6=^6^xLm-`5*FfVluXq>Dc0oDe)Rk7i7q;bLW7G~XtFcA8edzHdWGOd*ZOn`Bqbgh4_d0c@kOc% zUi#{2GZJ;iFR?5Pf!5UHu;4B{B3I45fKILcRcdQ_mrzv9ceuSTsKYn#cqI^Fzv3N#Q~T=-?zx3t%?cWZlVaiU{YOZexbJ++ z^2qX3oM(nyO6>#CpQLRdRcjHl!kRN>u_ECwgi5K6u;~>a!*zXMS2Di2F?_$SH7dm% z#S`C6A2I5o=Ldm3D{k9hn=NU{jCiSoyDHwE9+hQ%th0UJX#<^|{Kl}#Pj2TEZZH~Z zrJ&c;-}Vqcz+Bp&lX#e8zN#P8yg!b)3Oco{RXogrOSLLgjXtx?ceDawd4?zS2U128 zvoA%1rbpA?Z=BvTN0BSn1+<@TO4_4EN-4$SHv0Q`5WSD>0$EN8%$lt!pgikB=lUYv z4@TXZ6fupj<-RYd)9=~q(mkuPz{BF=O*Te=^a+v{sKcE3apspzrjv~K34tdKfrRAg z`(JQGYaG>V?B}QG;9(HmnFerk<4I~_nC7c8xq5I$yV=MXtXvM zs>Sems+%zviwJc#sB$*`-G`pLqn{masK!K`h80H1h7`OM1_L9Ehnkx&&slwfL(??h z{orgTX8v)f0tb6+{P%5e8l!W2o~f6c8_zhTU2E3CW%R_&>ENx)bdSNzq6As)_*)z| zGWREv44E-9J-*9P{uq(lOQd9iclkB%ADR_ilVE#DzS779&h_=^>nt6r4E}N%*GHiD z2}-&MZwlSkk`8Wga_=1*faJ6AK31IPgd;b_NmOO2Pz5~2(|iD$veGSFD7a;vWRs^Q z!)zXi@Nvk}7tgJ|hd4w#gX(i-z8-8VlKaJ*Kj8|KJhr)E94FE!Df9~XSjw?%Ki?m& zGqR8C6@68=Oi{dcfn9n6e2Ig3d-;0)U1|aW0eXegKS{)E6QBZj>!0hNwL=lk*)6MRa%v@z&B3Ujk3Wt0Cac6g@Oitw6|vw5#>3(NNVK>QdT zvaw)a1CC8G8GcdM_i8OR9nDZ%l5R_30z%=6w&(#Z{2^8P%qfqiMt(_k@Qk9f=~79v zjb4VUqxrlucKKhK2xZICXU%pwD!(k*S584i_>^0ZZDrmKX#X*+I^)&*pr#roK{E?-y^fh}cxt(iHa- zd?Z55lO6?(0t0AMI~MPbRrP?by&?pP=j462Y4z6C-Uvp@1%gc^aIjXt^iu8E+(#7} zeyWJ^*!~56{yOfQ(X|GRtP_)oC*OYqg*dhSO;8DrsxsSD82yifdj@x3wHTEzHy{kS zM-VZpw$s397^`n)@|fuT`|N^y2;WYpBzEHh5o08ZpJl*VzI>jL@(+)!Mc{6*6i(DW z4d8|h7%_}bX0Ug-nL}fGR868iz0CfIeAXn9EM0iBg2q1-#O$b!#(oqR{a zNp<kPuj*GDpBm`_gAK zH}DIyF1PQtdCoge6<9Tv1VXY0NeE)W4|riJ=|>NBp;^aqPN=Q-O*=NfyS z;=}^Oz)TiCNCuVhlS>^JQ_BZsXfB-=59gy0duyjei?g-VY{EE2eX?3FmtR5#ewsTr z+e*?z4q?zqrAHK|tO&F95OV!jI3=v6iJ?|3Z#pA8nYq9HE3a>g0|EFwe1JoS(dDpf zC9i8Pq2BNE@AI$mwXT* zXD&{=12vU)t6arD<);FSL_Efr+4Ye&ZxWslQVAAcyNFOYDDSw=0MbNNnqWP26I;hi zbT+M%ItTG}rX?BYEJqaYVm*Pqm_ZwnHNj_>aS1ze>~2UE@Z*h8(z#0ovK9x&jxWDC zMDR-K=e}+Zce?wmSS`y(0~WKVILlm_Mmk|ymn~Hd`B!<e? zJXfdbKVb%MMJ8U{BhL(R+t!>WK9M?dKhfoD_<__kW!q=((ypRwLZr{ zR>K*k3cz2*!9W)trTDRV^~NvZevRmJ^}lCIV@+F}Fd|l~iuO(U%8{y>SLCFcoj8~ufM^)Mq7t{fC-56maDWeiuw2Z2 zVdc=9I8Gq2mkJ87u5ctGLHU*+K76)xWUGg=^1*p+RKjO#IhUi|@0us_TFrL%9`gqF z>x||0SUd#up5z*#UhaUSDh|;X5P-no;TX!J8(gbsS0SYZ;qI)pXC87Eqsv_r9k|ZT z!}>L)+3fu8NUQ^8mjw4nCOQEm#(NI`31hyNfcj9&S1QZ3KN+R>4pxfxlAAd%*s z+B{tCTqD2wtvrnFg(A~b;ImOG^Ab+N2$+mZBepr#lPT=0g@9)MjF`dvKU{)b-rgn{E0?OnRM0v`rUbuM@> z#hFQvoM;>+(>kgC3bWJXNiX#EZU&c+*5Wc(-HGc~H@S8@omW}vN7{z=mUqSW3e(;M z_w1w@Pj2*nlzty$!{x&E<%wP(-=!~l+cxKI=S1soSB;8nAB{f}%J<%T!j!H(taT&3 zX+afj2e!$6H>yM__177bcNwHqi(3W_S&XX8?eW7`X05@von$TU#yBdt(rXc^Z>{e7?!M6b~a=hfUEaWYZ zNWdqbZP5Y@lncKGCdJdmO`Qz{MH4HJ)vvb2-G2uwXtJ0?fJb5ZGTM1ptUk`VwP+!Z zR_wu<8N*WQ?H`^><;QBgZB)8G{XJyk{gtM66I(hL2ghp!EayA%q1mkWeVY&cJ_&57 zh+E8xktVhP`OeQ{-7}Wl(E)yBq7&ylY*8&pTCkC?3ujp{*AXe0L&fUojIu*+8|;Cg zu?0^HdYq+1Hdla~M#%d4l1nh2b-yqg);#9lo@9%dcpu;}!gdz0P5e3k(e{d7j%qrp25!10%?`~x;@^<) zXJPeKVCA?>y+6BGH-y-~=c*=s%g-NMl`7Q&bTTBCbe|5*BALp{+aG#ZDNWh03xyWo+NMnBM;d*fAmxlP*bp>^>KJ z;5&U6?3ItRT)rkNUpNtRKO>;Pb({N8E`zCXg&D9-$cGoC2^Mr~Af5Od?@W(;LvQUa zLY3u*eN-SlR@j4*`9bfdne!^cKYu zZ_F35N>TIJ43aR4WTCPi3#EKG4~}%Dy3U`fRDGFS%*2eK(#s)s{3`ym#3nKXr(k+< zkAIQ=LZYZ}=X4z)usW<(Ejc-3R7>~nrv|ypdeA)`1%NrWAWoA!4lAjXYC1wdHTP2y zNbp9(g;409BF;;GyV_Q&P)+<06ba|^rN(o%K<*8Q`dmxT_b|C?r?kH>O+Z&@$$#ryQ?x-Co7ktBs3V&&K>O(g-aZ4T zud=SboTfVxcC<_L{FPWhr`7vKJHDgb122z5{%$-t>-JmK{MDci>=d(t;UqWjV|vCf zQ(Nz_oC1FraHi11xe~Egi{hK77$S(n9H;V)L+ZK4 zVwN|FKDl6eEPMyT!q?=SYX{?=5o-3eT(cVfzl6RK>Ir|Z@jB*cPp+g}9cVQ1U?p=l zWa}7%0=Qt44nPz4?GSxyAMFP&)^Dg^*H_0hn82F9Vthf@a_i0?^KhEeK2vp5?!E76 z3s1t}Sd57+_qjS>JnBnR*p@SG%4Fx*V*GkKg^hl;^nM7N^7KiqCN?H(jPy@f>6o7v zm((*Td8FiMzB=77+oO@d)I!Mj?-%)V`4lfzo+dCGmho+<7svyfhf|D{<(rR&Sp|7O zKQ}L)l>X?BTaWh0czk(>CuFdx6_xSB#6OpXXAVJYxz|SUTk4WNLZ{N~osg*rpVX)6h&=XnfqqtP{D^bg6ib#zzqv&$VrP+3vL7xt+SfI0r+>f8p_irYuPFat$F&P7&yF0u_I8M|>174Cu?6RPMi)LSqCBZA-D2f>s$A!!6C=rD$;Vu~ zxx9mlF<%1`DFTe8=eA&%5rwT~?l3W*V@Kw}YXFzy&}oN<_TfySb)0=04nQpNDkG?6 zeN(XQdKz&cQJf;g*wb*EL?f;gQs5hCg7E1{gz!M=Q#LrWq=m?}31$v1Q@fEy0r zo`(yRBos(Op(?w#HU*}7CTZ$%Vdj7ad>e@1rU5X9at?L{4c+air?6ex6aY9z0}13K zbgQ$Xsz8NTan^YNG0}SN0T-MnpXq{|6JoNu9%PD!t3(#_q3zbu1=JNuZ?ut!#b@Gr z$`He)oxv@LBF?R#^*i@O&%BtS7~kPfEOVI=M4S=g0VZD<|2--F8F~JkO~2Q_>dO&u zt;cV}9!Tw$I}6=uZF?3o6D#@p^#k$1#L7HX1Haej*Obk^?LkWY_!I)sjdRIw+H9mq z;?T5M_>?wlfT*Ebx%VsUPfP=PsMGujMOR%8d=A4QP1i~^K5c3dCZ6wp>TNoC+x~G2 z_5D9!8dLE0g@V%ed5|=hJ%y#in4wc7bD@|X*xW3XQK&q~^c8bOfC|L9D{I9ACa^q) z0Cf;|UZO-b3Mwv|Ho+?%0?Y$Q#d+Th|A@(|<+1iK@`g2SI zvn5%H_zIMWzpl;nAF#GD`vk8AZm5z*0jdleI->M9gKtHaLK&gOY(wgNzr!W`cQf_g zBB1|Nc;D!~qp69W^OzBKjl!bKZ-Z}E-iFV-!X#6no(~^3q@!_huwmHoQky~iBgj}Z z)JK^;P#Ga`M4nrO8M2OqVcqwDz`N4|$sA_(GrxJlOG}T&`FmG?@$Z+6{_zcMtv&za z0hSkjJ7*4j_Z>fUK3#2 zUVb5|0mFDKNG!OO1%+=pv*xG%Xib~qBHe*F@T2k9pFFwtAxVSAv?;Prp;V6~lON^x z%L?FK0KlX|r;yiRi}W9`(zl(xHePOM^#g+FxqH@z}Gj&y0_tSH+#{Uj5z(O|cnnsu7w3w;q;0jidI;GPY!Hu9X}4Z?Q=gx*&O{ zP`u9+Hn2w3g6}_I_m`{K1XDLhm1g3|tS~|38XEwsOlLRX73KKG=Juyg;F1TC(Qd_-cjL^>FG$6FXou+R(I0iwM1OS=0pQaz)-|T1gb`* z)9j^chiB;Qhco$n6{0IHwqTe5R3t`fUU#4zF5MW7eKX z>8FWb9}a%5g?zLD?iEvA9W3CC#3jc~(VA@(Iki74TkqYCvgrgFT@x?xF?r%?sy-*N;6{EA%i!aVSxl2JwUzU}I#E^$>~)5iPe z-6rAF?`V_kj4~iF!mnckA^tRvFo5iWRhdHuqh-({#J6)B7F6mQguZ-@62Yq8);0px z-wa}|yw(?B^N{-z%8$M@e+Ju_ZZ<>0qQ(EeTP{f+3HSKGU~nSu2Y#t&xMNmnNiJ-wxsUm8}c9X#)hxZ%dsdv-hokfv^H9ALvj@*=1B zQGPorAG*3eM{=Bv?yJm%8Ta+_l`J;C_V{&%rbkR$x9y~n&SA@Gv8Sv+a4tT5$=&nozwi=y5f!c)_Rq5BV$o(*!lQP zN%{v`+iPdQKs;8M=d7yJ)6h@Co-BJ*MyHo*ZvJie^pO>1*uQ{}F%n6Yb53)%j~S+v z2NlG4XVJ~`Q!PDfoOSsp(iy7Bgxqwh6n-8pxyUh{OA>+rYuHFoyHT)TkJGrO9r0C+mh!l}W zn{P-)BT&~U=dKjIEw53QOKv^HWq%Lb>jeiLkMYkM0L4^hZWjST>Y9b-SGl2LX^wwu zn8sh6xDnEaAmqc$Ifn`DcWx+C73IVz`SeBU0!_x67kD-t!A7EQS09n@QlfmVx{yka zmLXwbr5@?`F9cJZ`D8u-GYqDmq2D^t496wtTTip#gD zRCtZ*&HEtM(t%A-taC3Ldha|;Z&62F1@t}$db73PXsQb)=x%!b{C@zANv|dhUAR1{ zP@>?5+?A>P*tYwtoeYES2@#c2R`z_kD+=Yy;m^?2&}=Z{+f|>nuxU|9XBj{U0XHY$ zlE{%ne7scYSMtRYw&Y-vP$N%M1lH0^^aPEv;C4gCy|%^on%! zY+88Oxn{AYIL?GuxOG4BeU1**MC%cUQGrcjjoWu3hcbx&~UZ=lPU^qN7SP2b0V)#bI(naf^Mw; z3nZFS7zyRD@~i-WizT#lmuQZe@3M@>PVRdE%6AhaDO1yOW$M)DO>9zWji|Bf{$p6o zjdKBfB~-a$0$G$XU7rKZ$QL_4o!PiJ-Lk?@dH*Ab$SJxT$H6z5@^==|u>?G_OI-Q>eGv znK%l6Il*Fb>eM}~{{oSey45`j31geTspeMtx= zLX2R(QLQabe4FS^+R_=|E^nMJI#nrwcZA+`*%dWrT#87UCmj`$jhK{s4Cym zN62dBKakuc0&)`RiF&o5?x9N-?kd3Me4JbrcyNO0c71m*XcNRlcr>|-1og_+!hP7sQsYn#4HT2Q(6eD+6uyO`%{E+mfYsT@QBjg^Ow=Vc z8*GLn|FK!AUoJcIEBxu&H~a>#1~QDIda0X>)&Zgr5TwFz8U-7Hw@B#Zu%4PvdQOh6 zp>S&%AC_^zFm4*j*EHT9+_eGHY=<96n&sl;r7B$e`{x~(K=!KG)Z%jvx+F}FgPSNoHB7JiAHhDJ=&s3J|GAiumt~>F3&f^x%kAiIp{~3@=1=1 zj4f0N%01wUW(c}1G_$_cwjNxCRSKdYPxzS@! zmS0I^&z>Jw)Rz+Wx{0j^d#LERE#2V#_jWPfTRHA0>Tyt5jb;*S1Tcp_a zDDKN}5%dQh{$z_4>dVJs2{>Un)<-%KqUwkc*>Z*aI%GNdNj(i1){~2GLP#*-JP%YdS9--=-2nJ(rH7A znsqfD>p=9%z1?0kC{<8<<*IvNRp~^W3s{-4K>RQ>Ymt@fe7Zo7dDFJuAO+OS)sY>f0>j z&|o*ne0Q%k!ft$zh2>+YRE5N@z&A^2y#=Nb!@IVi0ZFJOI-421yeEIDY>KAdIP`Pb zIE0Dm;iSMV^Vc{?jf@k7(V*YvH#)q6;sm>LD<%Va2f&EL2~%V(QMLR^_wmgBhAEi<_w z>LP9khs346k%{mj-g2RAI}3y$Tji7RoJAuAQr-3gzI!VG=yE(1$};zucHyx8 zb9cJ(eo1|ITavKbBS5A$!)#B5fuSswMmo6|{JoA~!DldbQEib%3m8X%XdZ6JzAg)q zPp7X|M<7T!6~(urGGr;MU-%d*+PTm3fJvQeT(>`%dlg4zatnmWdm0`DH9KK12tSmt za>T3^w}j6njfq&3&y6^64s?$A+IjwXoSNroJG{%){U+euvdA)yQk6TaZ+d%r!6@xS zdUGR&*R}H5KYUXetIIpojMMDQqIr_dEQDJ(%Yl;Nbp6N-6Q?MTQ7QV05b$rLxF8N! zFyLw7w#V`QAbQLnq>>NqUKDQW#W#n0mGx;Op`(&Mv{gsD&?#Em&?~Yfv%>m_h^A2e z=+_YkL+_}??p*430!skjcv&WBQ1lyd=(S**{cP3Q^ScoL++;C*1X8(hQz2jZb&}q) z2C%7Ec_+%A1$VFqZnaW2Up2ynu9Pa*}pB@WRlYOAxVKN)e$-j`n zuu%t90o0PRetrTT{a9hQAoBvk_KT$1wQ&wDGyByWr3(ZQzjYt=KHys&&_*RqY3%b% zlDs@fZi;e%w6PFu{W#4cZ8)JT%~$#7=P)V$mYa)SJM%|gfKY8IzLoMKoG z1w<`0jd=zLiWV%FT+HWzQ>yaGkNhKkxf7}h;{(bp@f6nall&VvtHB%l+EK3lnAvSc zF|Uh+(?@9RSs*}a0LG=h$#4U*u?A1nDKKu6su@UEhz^nAN0+GA=0`v9f18)|h) zifU-@)O{`6?KiD0B{L6`ECg($!0KFO1>~)RvX-Y<`F>g;oPqWQ#;9;7-Nl#3ycLe( z6`i1--!K1Vt{}V`_T)%GRoB=X-~Hg}WDF=+Y4fyx2s?67it?nm|5GvFiS6M1LeM4) zBj%OjB_dbBp%=g;2t+TblFr(_nM-Mw?s!^xV{T0;zyruY`m&l{YpHW#*_LK}mOd*FYO zrx@)_EhMElf1Qb6*F2-CTB-$~shMy|Mcpy(;L`U5u-);uXkv9DCKnd!&w{X!7sy|q zP5Y<6W&sjc1d(AX89fs?*A>W;uSta<1w79~{Y~J_+PJ_&h32P4cSi2wbXY)|1!X;r zS>bnhaD*lo$l<_ugdp_P^);m(;mN94zDT2`Uq-l*v3cB~GRS1Nu-#Xs^ecn13}(6- zsIN-wkocYg-GyC*g@YKwoXt~Xun@x=HKWCoe^V-N;8GT;%y zIBE{GUv$x}fKAUU?#a2h-C`!WAGDABjq;t0R$uKqp~rq5Qw!z*=+_%nJ>-Z}0bBs1 z*fX`@*n;D-NmNzv?Afq2c0n_%&PC%r|Np1@NMURAw)i8i+R_;Q_P!quyBO5V3NSE`~7M&B6pBYE_KTvc_U}Uv7S+#$MA6Y%L%OnL?6VfcLoNi3XJPmHU6{>QLq;* zN~AD~O2e8)gK4Ztf)uOuIvdsHBSw>oDQCg&tI@&%&7)*Q;;re^(;Uf;^<@CI){(+dke;N0o9%Mb{ zWGlBz<_)DJNrk57=xgIaDZRzuq$}c^#?O9Q|CYD`Mn7w&pko}})4$V%ICL_71~!j>|A6K`H{rBRG0C=dk3|Y33(R0?9>+!)eo)tr;1)%5QUJA|eQu@H za2~c9=IW)W0nenOn|EK9BFZt^lOzs^lY-`0R%slIo|MmIpJ(`fI;`LL)*Jm7l8|n^ zAi9nVil4m`U-H7B4sbGlHXNV%Q2Ul1Mu4#VojBkwIzHc;41OD)3vQ<5-Lj|eDXn1} zu>n|wNiwghfZcw<+_fVEzCCc-iv9hEkJyPE6^3N^?8H5II}|pnO!yWsqEc{ML3b^kt!MROfp|Tbsc%Ht`~s(t(YDJ^aT|46BqB*`4c;9#DoqUVi>eay~^ zq1X?{uQC?V0Q<>hSH{WN&h=gy{xGr<{7wmoxcwT|S3ZK1s6^dL8Z8m7V zo_Fc-WuEJMk~`YDR~XKS8twx7vo=O@9TR$Q75=cv{W&ZdAyimVYE9aZo` zJ8z#O&WQ3vh9b;Uv?*7dQnvqr%k_|fO2_F@;=8*eZ65h+EgI;eZyT%tOJ#!K9^~d1 zFW~0NbXF1_VR1>D=!_sJEWKEFJW+5m*(=Gv%D=E$_LFC zL!SP^*BG`Xy*?}G@S?_g9-sLip!Rg_B>#s)ITB&~Ff3AM4#6X8F%NHP8{%rwXdf#b zx?Z*00xCl5B$b}>SoV!x15egaJb(S$VQ-rVOu`LeU;1lTVg!29lv!_ItaNC4Qr5lN zm!M0|Y@JRcF*9>K4|n+}^Z3*obP?;U*$MzJ`W8n6?cc)b{L7IZ6kx+}ARir%K9Y@Q z5kss}?uilMsoF;@-(u(^yEX}N2sl*>oNuzyI-2cu)?edmgUM% zB2bI+#o@^YlU^f{e$B*+%2W*8;UFK`7*H#5S0p#q?r{XwS=3 zj%(V#B2;FhUn?|FIl0$D>Plqvjf_?P2)ldEKI(4T zKl6W1ps@VH3FlV%ezQ2!tj9{>o+tH#8~%gCcDdDIR3nY8{1`$of| zE!cNPe_Uk&2NNOW8rJ)Y9xvw}UV?H1i*N)l_KXLk77hEiws~&CL$cnX z8Ix>kzRm9D=`tt(*z-m{x#W^1YI(4kZlDtgR~A_g7$FkhfRe9gBCTS*ZM<#5;UBtC zP;p1qoORjxx}H&YrUga_4&x%zY*Wj=%@<`bpaiM7{^Y{@&WmO0iHm#{yXJb5v%k)! z>ZjIsL8tGapH7)}@2}17G7_&bc^*&DZBpT`f~o-Uuk6H{BOw!jIM~7u zakFPr75@70dN>KqQg}0UST9Ve)AN{0y-0#?{6{O^f6JJ9IjXom5;NpD4obA}jo!c# z_EGV~M7qWAhqV^cJkgn#vB=is&dulq16> zeAdc{L1kt?xp&)nX%pns-Wwp+7&*Aw&Cm2^s^IzStNKISS|I%w0a6-W=7GNiz0CxOdv_V zb-R@d4(0Es>VSyA@;laMdeX=(3r44OmgJBaw_dE0W&3#QRCm@w3j~|4DU|^#7+*zO zS23`2e$?F&QfuJ;M1XX00S(-$*deeZz)8rEb}qRLc?y_km7=js0Y()5t2HP-$_ z3!zHuSe^fnr#SpSiq6BI>i>`8cj4Oi5|N9GYh;hexVZKT*Iub>mYI=N#=R8R-dk3- z6f&c_>Sol9;u@h6B8sxN@9+NZe{k>P^SSTW>%7l-9(@<$C^O-CHIP=rjjtaT8Hd5X zy4#zu;6-B}y}stl^r(z;^FoVX!&8fIjEyP7oX#^P==*r~e$VuVxLBNDf}6D@QwT7K zkFKp^4|szK6@tk`DGk9d9Gzfpy%A=!!g+QCqsnX9MI-1{PQ*+%2B}O8^H)Vs@Iu~R zWv;bO&@Y{yuPgTiZCZ9$*VZpvW|w=JTx2fR{StllbN-rZ`0Q80iWFW|y0?D9cWwNy zecfA9wug;}@53VAEgl>PQ(Ep(96nnSc3R=N zvCM*xztc^Y>zG@B3Y?N!fxq5a1HJo_k|f5DaX!{3>l>ezW0oDkcQOT|G+s$jUP{eb zocsbRkLuyGTJkf$Vr0JfN|%)*vzNAz?!)l}qaNuiY@x7)3WSj#znRv$dkIOvuzEnX!_WhFPuz12pghq^WS<{Q&TUGfWDW*$dI<9 z%u0t9z{cqg_X#o?5PXHdh|m9`JNUNHa`+2k0nkj4qO$_yw8KfB3c@3Z`j&B2!WVG- zP_ZOdBIbxl0^~^qS<(J>uDtx~Yv0{XW+&!(yU>{6X@>BBuqgaHA{Vmk)*sKMJKdZa zD}Aq!DWto#Bkm6>4-?TpxA^56F~9u)!5NEuEh#%=^2*dRrQN+N43TG>9;AO;mu+?r z_%s9nzyB(sNli1LQL7~iJ7j5twFh#G;$+sq9$$Kb;gL=wfEZ>D@jDK~zXqWIZ|SU& zQ`4tk>w^~D*v{T_wRm`V3?rSJz*x}%|LDNk zQX6+$r_t9{g-gu~sj>@b)=JMJv*E9U%Q{;#-bj>(Eb z_kz?(26J{uur*-zFsBJ_?(TXgMmd*Ahz*P)pKDk34sjJOWQykf{Vh?x0o0+Xx0o=S~04sz>Wq3 zE;DMD#Vu;+l{_Kk@;1)MOtWz}HjeGVX|J-5G0k5ipJp|qf_aPKEK0nA0Oq|2ysVEC zFp7O#Yfw?1iG|BOImWZI@{C+On=*FGT$iNXF)SoWSiLH?g7q%C(y=`%?)q^OZ7fzP zIFHR-l*PzC6IjmSm^&)0ZwyfI1kS4zAXBwm4@k@p5AjDGq@?x%QGj{XW5>;MkA)j&F` zyc#LswmnzaAxH+Q$6HpS-<=t@E}6+-Y+~fo5AFQU;45+CQZOXq&f62OnfqW~hHi z(e9{j^NW7M-`hq>DM=sgE7C*XCjd|H@dop77<%Y!&Eu+kXO_yMvJbN~Nq5P7Z}9X( zh@lt_pY==E14N2-3W!S_1iimp7R$_eibh)iH6y`{Y87$u3MJPV=3m!Yt#W_^>t6E& zJ!K(z+h$wpX?&EGNI8|6&*D+~$8Lbi5 zcktsY<|h!#UTSJjOS~WGN!-9hQCB9Rgvjx7Ya!R7SOyG3|>qvf8kk5;k z*`G5_S1qyE0S?*3OW;~p^^)1|4UXM-F$jNUjcTZ`&$NxD^~zr3Gp?QeqV`-;K?0O^ z2mrVhX`QaZBO_KUdDM8C$08r+8_lyDrfso!;)j!eqQKQD+VmVo4bE|fOqWKAd6xSv-XT?#u1{;oYyf;Uj(zb_xRUhG^D`RWhL4Dfj&RYJC&~l z)EO9jJW%jhBD2KxiiSz7UXH2uT`dE@hi(aF( z&tt5?ef~iy&Rx)COY#MPFlNQDd)&d&io@7(OyRt)wmrRY4`AL)uswFev2GCFqRkmT z-~Lj{eFFbvYt?QUDs`sE)~PBn+^nrrJNblthv`hSgK&j9yjx}N!t{XFC%j+cV#9h_ z%4(poIcC9^!-36HXWrsgwYjontdWS17G!C9{7h5#@{70C_u(9w4U=`Xn7aJC<0R?g zM>;CXM#0cMQN;p}mllt<0)`jg_C9l@pG)ngncP!1LA8LREo5O4hsg?k0pNm64=pZ6 z(k+STn_<++zX*H!NIT=voxay|v!&~2PSje1WW8scM8_;mz0ktlqP~r;$1TYM#@1ox z8M8Db8gT2P0s_fW(y03PFW|*kay2H^ZV4iQnxrQ~m}JyyJLMXk<4w3oyQq|ovK5ft0%mIUI(&xHb-d3razQ1wiYj#V3)-k>G6fIQ zPkU1`*wJ~Z5y3_oi<&JLL zi18uOpAOaw5qA86p$}$uDqrxmu@YVoNnqLe6pubk&m)Ab0OI^2w?sdnvYpGN$QKC| z#^ImI_FYSFz(kj_?fVan=>(9joic7+13IKTsgPLE3} zCe8qjZtiixstWYsV*8!hqu0Wu8dCg&H~C(&zb@vgZT~aCURkG~GB+9r`xZxjtRzkm z{`e2HX!0BkkUb^qjNu~0)r7%qkOhesJ`BWj4Q3ji!Q$f>s{|PI;lNfvHTZmYm>8rm zm+|JU3gZg6fd>57c`>07$WwyNa$HyxetEO@Sfshe7z_&WyPe|8O%f1$p=}ocyFHAC zt99;%oU$n(=RjM zI$d3Qoew6ct?IUCTA*msM}8Neb04bz-F20%_v>7p4H33kMi5g`>Ri_IDKCB6W+$x2 zFq4u0J)r8=$f8JE#407;>TPVLuU|kT&lfdR(G&QcA^@M;CP0C5`+>tONbLyyO6dOI zu0`-h1SnZtyNFxT7xQzgh~3iu*j}s#9|i8YiCy>pg4z)cyS(X1TQPf}t#sxNagmN2 zQ0}9|O~*(wCVg~(2%d{b_}=h)yBC#mfLcC;v5R6}%um<^jpRReGfQ=je><@0Eg!n5 zfRkpux5M;{`uSCP(aWZXhn$in07i!JKjrw+Gs|h;7=z1ZwH6P4N+mi3Nv{J#d_1r` z^u~aR`Lc-24u-F~v{B6NN5=hxg^OJP1wzrK%zCQ&Ev)UIM#J&n^)1hOCcoeIDoie- zn-1tT$P*1Hp9{KE~X1&$a) zCUk?qWJY4ec{zdYEqPm+$8lh|&~Ni8$*=3l<`2qmmm4Iu)8b}bAhX+21&2YFj<%MF z$p0(RD6CK!59%VeQyt^?$+!T{ll{lPMf4u5Iq>lZN(@Y&83KD>eJ#!jX<`v!**dcU$mA zK_l073%ce2#*OdtkP}Ep=K;cW(U)Ec+)u`PFTy4+ARqd6j;)x>1PK4qGk;SPQj(65 z+vaGraewH9A8rCbj6`=N3za82dF_{t5wee)zHi@-WTUgAK5%Fgp0aE>>OyhmFfdRc z{w8T|L7GJ}Qy6g)eD-aC4NXcTe5NUsW{rEGsagfATvFMAxpcC}dZ$#~m38BWU)NrT zb_Ypa!)|`>eU`Gbi3}|}TNshfxi;fe^QzRyNG9EeYNIuf3~9h`AiMIW@eh5DRI}(lW+B0@!iIQro8( zS4&}2k}c^|t+n8eKFZVK^DmMj`*XghHA?ON3X{g8j+1Ra6%ZGq2$~Zf=%i6@2>uVrH{!!Kn$MV@Xec@SEcE-5z1>}P13#VARIzFP{Z+hsbi_* zKTmKGDG1hv%c%19-}vTbbDR6Cwc}ualo;nB<|&JXW|@ac}=o;l#uh=Kkl3ZtdD2CHLF(i%DQIWNBUeA;UTyvPfiyl2fiq zT#<*0{3U|U(eLYuUjBBTVffk#k(HHkk2|`h`R*aU(slQltAe|h90w;NxpBJp^Cf#( zeA~L0%cYL?3lLR;XyHgEp6BKc3{pmqQ`iq8@R{D3AxMt);P2AnhX8-<2!8ZZy4xOr zPJmYc=RYEz3p_CyBEA~NRAu2&Q&X*A6iFZnHLyiG;D6}n z4xDEQf+KPa**pwujq^ti<0}<1SlV{(9B__gK@r5jH@9X8_D~08Mm0KS2Nq6ZIVQ*z zF|1}FLsUZ;12e@vSl=^#HI=U49J$Mk`8?|iDa-jkOeX;2q_T1a;Q{#%_=FwVf-9{(%eS;V z>@2G1Fk_EVB`FcT=SU4#-$01tkz2o}qqy=fNpOu|L5G3z zJYJVY-q8N@$0u71j8U(G@}K}^_t!m1u#t5@HmK!3>?#LVkD3!*Y%lwGBzpv8bq&e> z9cI7e6QGK)W25m7+||SpBJ&9Wm!|i+eCKe8JnEQD!Hk-(ko%t-mgUzBvcKpZ5)8EQ zDENGqF$C8`K*E@!-;$Z0p*IFih-vv*n(u}0hOq-*#3q(@3<$whpGX-8bDB&GYxtMv;p7{fVY^u2hJ5lx7ns{5A2@=qB0g(IoxVuNpZN=yIN{8)lA^>bH_ zc&aBaf@TnnAxM0R&(PW$C(+@4pI5UnV0#-xf_}g>3SF)5Y>Q0_!Psqz`j{%U50`jL zW0cK1f7bI>g{Wwl5VWdW!^-H!?q@s2DF5}#P57DIRZAG}?O|D#zMS|_ z#?1Cx4R}EDRo${W?j*$!^mDW{H?EGk>w;Cy1~NX}qsdenl~S)nhv*Zujvzpp>1 zfLN5)PwZ!S#2|D>_Bd>!Nk!wm1e@p~lA024jW#4U(0UD|IIu=)g|DV+ef*-ONZBS8 zLkPn}`MMYQXg||zcX~d0??C?$dIiv6{%C$DFzohIzP&VRZ#-Hif~GdH0h4&Sn`B9-*3L_ z_6_tUWh>RyuaPD!Pai`vj`5Hk;Jp4SJpPD)$r=Lea0@tZYW^SIoE7zV3m{G-I@>NQ zAElMCWT+!B%`-WFoN{~gtvvG=#cgTj1+oV%sV(6Ta&!IQThWnl%(9 zk`>8tdHBRMj?AjXd|T&Y&w-SK<2+NT^CUt^QH)YI6=M=dk=zI|LvO*jsXZ+i)Y4xj zf=3R1#k$1`x$NelNHziB5_&v}TGiMTS)c!wlwc#~{Xa6Pfkl;NJYGacfI^IB70pvo zr2-x|x!JWAc~tR*MSL6_kRxltZRuC;A1#W{plqI?e6>$dktl8a{Qh zg1Zd*IE6(Sgi(3BuMs4lIW_T(^7Z@7MsUlt0QfzrU6Pye2E$@-WOGJ@~yQ z3H;667xsP`$n_-9>BQZq<=%JfJl6Im!G`?4k}sqd3h&KMlC1fOh)nkEk69FqVz95> zeYSfXR#$wfYE$c$wm1v<({gY3__~dmeK)o4pZY_uA!`D&_$!g))YSQJmA0HI88ugk zYJ|GKf|T&*&lkNJ)vVKvTjy2!&yn&n$KmaKx}L)yGt`K=S?`l+7AWv&475P-I*ql5 zI7;KRhW;jE`~ybTbjeu?gGk*UokdAR)?A8oE}%hrRl6uUY0XL1aK~ddtk!Z zkYLgX-Y)QTaBx%MAZPHK(h4F&6+iI)wtz>^Y;eHvj=*;!Vs41o>^krHCS_`{hOmVw zBI<_Uj!{tl-gu%Ra7(mcSvC4FI~a}FVhNuP*?Z=4(b*qEi@hnyvUwRe#yje5aI0)p zD2PpieCqC!I>V%L^80m_{$`Tz`*#Bg6#Zx--D-tGE>5LP7N_LLF$U?RLRC@7NJ%LW zlR~MZkUxQ>sr$&sofQvp5G9i!p$i|3tfxACCFyCqVx-v)v>6%XxC0C7n%?r8r!#5B zZ>#<7DL_UpDV%5?;**!s^yMA%UWqS8zXlz4HTo$;sT zv+2ElVvv;62my8eqI4@q)XyGRM1aTnXORl56kngnb155}m=vaGVDd+}!1v@X*a6tr zm+AJ6`fHrA(nf+lMG{$HdO2Xepm`(aJz!6=@TinSXYWh4HJG1ggaiP*?xp+vn??wm z{W&+B;~UU3^Jr2>A21tSAxA`TWNtA%Zgi_Xj+`}9-Nc|gb=9+gZ)r=0-njCm{HuIT z+bl0l)4yLJEVCHx?tQ)(hus&(?%pa+mm8lPxrk&Ey`WYyZG6+>xU|{4-?prxL(-{z4RSFgTiK7sBOY!A^*E-jJ7!o! z5oAmm`x}K!myfgTzz8F&?L`IO6aqHWYv&3rn}4=o-blm5;Ay~W6|wpuHpzbrCatyY z2!|;Zs>&?*SD4t+iW8W_7^_^>+wv)FWu_R>9z~lyn;SI}enlnYp7!R6&Mp<@s-_9N zKxZnsYTg+)Ox_R?)_3Po%`;X{3TikB66#DJ>q!IWe&Seb9X}cHTg(hmTGu4o-0tEN zwvrN9+_X}?mAh%oJBnfv8$K6NA(q3iuh^!j^a4LR&NAT=zZj(*LPm0d9k`IZu(O({ z4Dzq0R5~h=BEvEbU%2#oYYnqL3yNlT6FVpcs-FX+>eFL4?*T z){{*Efc*g!47MS*E^0Q)#0Lg)sps7(FnU8Ts}B@;E&=bDbTk9TW)+1|B5< zmPF>m8he46y(!>p+P=5%%1TJ<0Jbu`?+)y!pFjRB)3`f1E+x?WFgWLiNv=fpRLoIo zFIGR2mp7f0m25i=B^7uC41p&aQX&&ImeKI@Sjp^DK zm08-s*Ljh6#~>IcQPeTP-4`nG!>T8M>qzUm9!vmjLarVOYJ=F>LXXXpVo3B@#CzaY zPB4F0GzJ3Gx*4UWcD`^WnVWZKQHJbzG5a#pY~R3aXhJ?J>BLDe5GiaCO3}+sT4zbv z)U2mf`_2PFf^=I{9KI-OhlkIvFJc%0gz&Q+|?Dso6_DG*yv!8e4u+4b1k z4L55=$=>X4BtlzW^xxS)4$a}5iRDIs_(`o+Of;%24%`hUL1UJlUuFxbA#%&O-Jv!; zyU9^=z*Le7cIycj+ES(wW)wkh)CgN3l^iBb90|s18mogp5cr~aknP%6q=tD{Eg9A% zmy)|md}iL=$_)XJ6*29r2$h2}Djo5lAt##oQcu2e-m0}>8|Q>%;dv4r&tgd0&_jxB z3Xe$_(*<_=Vo)HZO>PL)2@;%q6;<{iTAz_FK9Byx5LR1Ch7zTk@6o^6GdqNgT~gvf zt8$SB=!8$;=$w#6#8CRH1#sfR@j6(fOO;4pDUW%6MvB@L$-VL_eRt$yVWiq&uzRL^7bHG9T7n)6N+E8oLJ0r0s4%qT}9&pkMKw|pl0Kk9f`}qpl2!au zkjx|E2KQNw&}vT*{>C!H3h;_sVC2o)t%Bv1KK<119$Z3#9`jkImJAIgtjAX4lf$hZ zwNy||{3q?mOC{L@e|ggg550}Y8um{ep{lm+%u##%cRCUKoH;=_<9XKT16p{gG2lV2 z^Oq$BU%}%CrJ(!5T*`D6h5rE@=~%lH45j~7R={WI;u%R~_d@9uL?lPDva&lV;k{Mr zrD`>S$FF`n&A0cK`mq9QYwntNKP%k)CMj1WqQ%R1>X`bni12`&65!o-1MxW>&&{P2MtqD6mm>R zcHh4gUVS(d?@@dA+@3lQWN_aRAXcguaCv|sL+-nd*26hKM> z4nTk-S<$AcWsU%=H*fPh?XqIr?IgDe0tjebey3blLa-&jK5+K)bXfvG%R&Zv?%!%J~XNGgOu>ojC{E?$_Hc zo*=LCw2FJ85`e1^^D~>b^Wv4P07%Dri5T^4yhcilh}C50imUKIhHIO>GjSH?Mt&So zk0OM}g2jdobM8Lsv6kYOQCu}&r%zAZXzy6>H<@e|>sT7m)K3`u;>Uq`JCY3R+mk(P z`@kkMk0wwj7;g#&aUCHMJn9v4Po+FniKz^ zhEey!UsQHa(?i$@8y%H!C)c%MPsXJp-9TGWGW-!~8DYwHrUV2_e8EezeXChS0=a+g zf&7&u><4SM8G7vips{mzszjyEbvW?FZ2nUn)}lm1lN*r4d)kpFhi?S@Zl4UN{6aDh ziS)1>Ftv;<(Nthwg$$g|19@{s2z_CZhUX+;W#2lnc_T=Pc6E1pUms9;Bt z$o{95Cd%L{dIEOv`yC4FmAikN8`CZfEG1uPNhdwqT+=`0!I-I~BRKJq@*t-pPb-fG z4kX_VqaxCsG|=d278GU zK_+=l&0v~oC04}iR`569ZG z!y!hzgr{A#oqOi*zj|bWifclZ$3Ii2G$eQ(Iapa;7((9k5;+%qE_ujLL>6=4#qTEKXw$YV~974bFdC(&c}#5<*h zusRxjIeFxNUKrIS`4duz;>*#@`thf)UQGmB<-Yio5%JaVds}>- zfsP1Sj~?{tDDK`L9EF-E6D^$O=oeKK9mxy~_z6TeM17D^K8qs371Q!EZvT z=nu8~b74)=nj^L5wEJywBIkY@p>vrhHDf6J<~h>7v9U#^uKo4tie&7MDbIKUIG4zV zB~0$kI^VOetZSeduq!yT2mMorR-~g&NH4w!8Var(3($1p8Hn5_c$YhR;Ff^LTV=XT zk)A}pQ%og)4~i}A*W|IexmKD*!P=fdfR#Vbmafvyj7BG7ErW(pg^ z@iY4WegtP zL(w|4^HStTFm3w^cwP7P#v(&;Zi)R{i(0DVw`MWp#w+3;k+Dc2Yg4e8YnY6#G?SvQ z(GkPZ!*;`)r|HrhH-eK?&S{@w)mC`PJ}fAGv$%%&SXCR z4@syMXg$>;Mh5gR8 zAoA#p{Ms=86GyaQM~m5cZF+{k8EVmt{1@j0BA2W)1Kjs9)JN*p+E~)j9Wh`9q03Ef!DgjY?ZMia#8# zg!zKTyhc;jd<5$|HyWO*Hm%?=I*3CnPT=gEtKpo&`$ddY1C{;#`~Eiob7vIz>>cqj z4SC04Jrn(w_=4d%FLN%a2m({xDLTl-SzedE%+-bfz8Oxx+SzdNUQ$3(m|+C0<^f4{ zf4Nup#26|1y~vKswSFn^DXfqm3SZ(JW#fr&P0=w8RVZxE_-MUp+N6i*0k9=mw|H zLoZ7sJq6qtk248F3XaFRSIqfH2SE0IBg*Y8?1Br=a9VyyywNwlyluxJryisj9MPFP-0V`1C8?6)O!|3~2@d5qno! z{sUYKZ0RHCd({6v&v|VTs}dM2(~uzNK#QrI{;~XKDpmz@x~_jYI{cvb{DLPI3$r-L zYDMv|m?q}P$+N_|S@jlxD5@|}@L=?SXx?E)twOI>KaChag0d@bQYD}+Ej*l8MHIq2 zq8+Li5O(!{$)1}ckH09IjcJkTQfNJBjG%Yif;*S_``U8ybSE*+kCroxX|}CJ+7r)! z$g(_6nT{qL!q=7^7plJG6!~KW%LbbgL+A4)sH{yC_$kI?*;m%iK~knC&hyw0ty$8F3#1Fh3pcU%En)gqKT}e1^yHuwI{oz4TpXr!FZwR+x+zyBn zaxQK(x#qLB9xzU&S#(Evv=$_GhLY_MT_BDL!;4adArYW$V|;caav#ZY>oM6APycyH zj$#C6N0R_5qM-W;KOnV#UNX)aBbBCvX-yZ24%$1Q&O67%FPp%N^I2VAW-`Hr;wN}X zI{SA4+_UUjsCeSuB49)AwYxm)rotEj$T_OE$$-D%Wk1uY!v*m=05@3r13O|WOjo>jG{ktFW;z9^olNEhX^djT|OB2?)){z;_h)P;lFUOA+ z(PbM}MS&okCokY$15tm_7?mGAFjd|IcHm`w#dR1O1JFsb;Hv5s!egR{Y*swyKT9~xN&Jsm3!RUrdlaYV@^lqZj1q~(zmDrERrq3{a?h(Ot_zY z2ts8)eBj;}Ee=Z7&^dj>Z}>alD;8aj>i>AB(ZH&Po<_}oeWBG{# zm8V^m&(_w~Zw8w3AEk7tv`*9ldy7{JSmciIK|zj>)Ro8UvZh`(d$`C=XeNK4c=VI{ zX1ioNZ`9O9Gr;dWRF~P~nyi&-#L)S5TuM7zz>TQMm|ZwC=)l`M6+f^DR&E>bJeSRj zM3f_MbuU`d_VBLScfMC0|IuI1ro3>R8tu_CvX*Eu-_tTeRj=Nej$x&>#y0x;rt-05 zo>;i}1WeS`9X}dlSCplR!p9+wZOH;cRxjSPXswjkw(R-2%vjefA0|;JEG?a>zpkbUf$!9gH#T-Y0j`a2UeXUvqkg~(ZsNHN1FthKhj0P~sE2ktyk;Zfl z!sN_S!Cedg6l+sAgco}S3z#iedG|l9Ntxd5-W-Nj7_GY>+90#Hn81>5Smo`t8Rynz8C5o&f(qZC;Y zq^#T$Fx*N8Jrj{ny`o<&&ET#+7cd}N^<&tRl%w^JkAZjoh=UEd$lEzLf-Y|H`PbQP z>s+5y#6y^GR)4WM@KeCOPds>e6%Kmi+G7Kn>#!$mPc~^jOhINTN@d*$Pdvp8u^1b z7*C6_no$+lOfZ}0$B-Fd=3L}kzz{9`b$P}XZ^@e)mc-*hE(FETnyfa~rPF*1Ah!QjCD&*&Ayd9=%RL1j`ltZw(}N014ZIR7=cAaee#K1S+&(H*XT?K+Ck^9dO`^j8EK57LGrbHzUTR!qa;70ffcz1 zbt9+SIewozM$$M&@_lda9*7*@VVKX;!A1Rn;=9*!GNzIVyaVacj9&}0K^PTMJn|_y z%&rxsFyljp(vhlJ{b;DfdCG^<-|Oiv%&ZF79KLt& z+L4^l{2##bIHBsPw6s(L<-?6t8^_XU6Sd;F!z!qtEJ&`_44w%(Zu*xoQ^dv-}aj84k;+EM3v$ur?t3YOjhM zsyzxnxK6-nOPYv&)V3bF_GymwS%|L-L=_5(TqW17UoP`JTjW-Lwf>@9zrZBsO~yhl z6FS4;p>$R@#1Y4S@I zr;>J(!=5(qL!xQG?Nwg_`1?iH5D3v^)OI0Y-r(B+^AWHmOTvufE&(w|-#1byyjUjMg2pwJ& z_G+tXV`NleMVgP55Q_stxciv=noS){3oljgclk5eK>4&nnOX+lbgF?t@^>D)>&*El zqCB@F`G+uUD~E3$AiV$s=EqyG(^#A!R?c*8ar=Dr!ZXxu z)f3EzWXwYFsfh?YO=|&x;Rv~=DDy^v$Wl9sleE{KcfD-BQ^5g!`}W39&~Rh}5y^<& z6&BCjyOOHRzNo`^R&!OBsyyD347n-63zDq3HgFn#?v~96i}kXtCWBPnt0LwtF3i9m zw!d42M&%fb;$P~OYZqPmmj5(eT6V*Gy{A}3Xk-MdRVl9#1zUkUOw+eO+FQ%844NAR z9YkeCXCOmK59D8HQ>0Fcy1oZN;v?mX9Jr5I*l^qox7($X_@DVXipvHbAJ<(G>9tW$`*XbQW0Cj*2U$>py1etrjH}8^MPOQi46$cYy%7ehk6yW z)a16r=*H`Q0sN!c;nI6!@{LA|W>!DEjJFkjXtzk*8(|RnCQW-<~i3Gu<%xu^ACx1#OqmJ-x zLk-DZNBQO;48u{0^|6P=!sN_@@0`eXXOYYh0;GUGu7Q}(IutmaL|*GE$U46FJ&uy! zVG&};q%~GVp|k(d`^@^!W#ux;dumNc{!3n4W#6;MS_OS8)sVM zT)SqcIx!7DIZ-WDoG-YA$&xkd#3$l|vHw`7L6mxbXDKfB~9}DrS$_ zQ4iQFJcHNJ*#$w%9z5RiiG#!1B-&kjhw_E7MhpxM8|K}e0ryU0c7Qp`z6^tXey1bK zorXH#vS9|LKFjsrH)~!!>S**6kiJJ41R`hRlY#{u;kkGLH0Il2eC8rEmK!|~&jFsl zbDO@Bt-mL5e(;mYUoxKWew-WA%!`cyxLnkt20&F6k2@IK1F2A5q{~DAT1Lu4|2$|X z>IVjfzd%j`Hc0(Id_#8e#5a%$EvRTR1iKJj#rh5?VEmg5u~#bp2@GN-dBoeJ;*Iz} zN`+k64@AN7>helPJ%5T1@rQdLX+~T|8q9d-CrO3Bra}_HN^>y&M!YS{p-6e^%<^cG zOayJrtl#8`E6W(GwW*F})Y4kLdro68fNL8f--%D4U>eG?blUlK?Y&FP&hw7j!q3)y z*B%L-_-z}(__CG7wM0|Xm{rcnK`41}> z&KGk*WN-CV28L_k9H-nw@3gy1RRN0{sj@5RAVorWkhk<(f-9TN);)_hDmgmvo| z5G7evL!lwmW=bGZ37-hAaY z7U^LYej*SoD8VwbC;Gf-V+S?W03_4vAm~yC2 z)E96qLe0c8$0mK@Ui@K((;@&$yV%kdX7$&B65&)Qm{bV#|6KW!meo^7#957i&^Me7 zP?(vQIeB8&`JQ?S$?v-tdekn7CkBoAeLS(d-}7w3&i*l~{FYRk_LQj4R9EZwfc#Ng zy^$5VwRs!c>sSCAkWwo6D0@H*a%%JTtUWT%=0{>($%}gIWXkmIo3OHvcGD|GBiGG5 z0~=eFQHn|+ueo4A!A;0uK>e2TV;z{~<^d|``;2jIa1RKt=TGRtqvgFu-*P{*f~TXIU*24)})KlvwKU;li3UtULGKzsd?Zjza@KKGC~ zb?sQm`FEdf$qA9!A-qbkjt;YU%XjKQzyRHt(R$dGjS{-~oxLa8R?AgI#|>BF+X(r4)``=lmrj6`Kfm2sL}FY! zd)1MDfQn)!z^pN=Is4;+2r&}!9yxc6nQY|<7S|HOG9K|Xd-T){QzSLDL0l$Y3I|yp zfC^s?I}Sz`OtnEXRw_H5))CPGFJuN|Q+Csg@f&aT(InP)4M1Q9S$D{-`En=gVMjcDDYgv+L12mVAp^gF)P=erK*(otdtuPT}OI=^|c z*w4t#lEZxuU)(w(SY$As7W|peR+n|`J+}Tz-A0lsd>?_y#nA_|1kt4LNVYtc_6Ah> z1Hj081(2c6&7wfNk=U1Sq`bNU0e_-TGA(V_s^xXu^)3hgB|dZQ5{mD?$n_{8Vh978VRvwqw_XVIay3oQ+KbMl@(qeCW|KnY)*Ulw{B@-oBZ6_4KUt8e{Y~A1YPX@d3PL_uCZ3n2zwpVmW0i#B8Bo3oMz0T z#Tp?-%#_*VXO8O*O9dBg6eBn+WqKj;M5#=Ll9!q!0KM7>F_DLXh7!}G2*)XGtL8U$ zQWG9r6&lF-JixGpgq_N5N@ta@-42h_)t!N|s#b;(B)O(87$`MEgex(9@11}S>w zL=mK)Q>t)-3#3)_2w0VXNefx{*pge+WDto4kD~Jqg!=#E_~!=4S!ZvKJ0oO9wzK!1nP+EZMTFcD&WN*T zvPVW#W~rkqlu}#>m5@qND9ZZ&KEMC`b^f@|=RTkJ>-Bs-9?e^=(V?Q`6^fBGmMwoJ z;sN$E)jb7=huSey&9SvYKv^e!sKe1Uyne&hN&S7orLq| z_>Fl0^--1vXZyC;RBQ6%a)A4@eYM_zGXF)ijQ*$YJVyRM(gd84$dnmzTiF@M@USKt zdTr;va>9x+?8x;$APw+|;+85n5LWvsn0_Zz92^Zs?-L?O8_s5lq}?&mix5jbJ46Hj z9v^&utD;zkfj71(ev3y`=&_1oEQxo)9@n59#5kYr#C?~=t=1Ol))(S2L*p5MPLnt- z+$jqvwSS6|bt?lK1_7@3HiRhw+r6^2*O}CQk|3i99o(+HqHw6Cmb)m`_Fwwg6i*VN z4pEE2Ko~gFiM4DbhP<^SqPkh?2REA2!mk)`MQj1=0GPbN{VL#Z&z^8(Kgmf?XA+%W zn{2^nwx0Tdr>8F)&1Tp}+F{*w0xV>~21CX7Sog&~(|CcLaY7Li7TU&|q!=8!Dd%Sw z^ssb_$W@mOCr~yRq`!H%-A*(Aic6bsYq>5XTBMMHIrccVpl9Ln*bz>&PFX*wG`$Eo zKbj=Ni|m5ivJUvZxA&X~e04+Fw5#htU>G~LZNwIX9nh*my8Xqij5FBP#E>uU|_AQYx_I{wy2mXL? zO3zP5b4+JDE4Ac$F#rm0Y@2!h7D(YB%enwQaB2aNOgcWb@;WE z6uXcpNAcbD9W)dhXc%_4+b`@C|10T$p+OhjTiftVNWV|EyAG{9%|0(7X{A=|MM*>0 zi-Y?<9tbzipFLM#7N8&14S1ZBQ|G?gNuQ{^nJfGrvY*SWd_8sDR72kwU(q8@0X=_# zYa|cZe9iPY&)N}Ox?}$WrVZydS{_=*MEAD{2qdGn!`j09SZ~I&Jk<4dJK(3Elw$?* zP)~%vEHh&B>3PJMLp=4e$CW#p{mg{&AHJHdpKX6U^(*%L;iuMSzssHaU-L{YcAtjw z_qp-eV0w^S*rk5VAj|n}%%Bsq!~{pq+qwQ`Stl789<8GZ2G(V$5l8RI)6>=WhG%}A z7y(u%WJL+*#0_!wJ@n%6vtfi4@;Kj|zw#}UmMjn>s+>v{ish4enHR+MiZ8}iHz;$d zE6nSzH@sx8=6QDY*Lkb$6HE5IBo#~^)~LRX()F%O9}*{C+tRWE=`vY{YLOWhy>b(T zjVBG@mTiG8rrQ&WUH$LY@>gKThM7tLw$@xm`k7gJupW(W#(wZ#ttZE%#tx)ko$u6& zpZ(i>9K|SqUO6I{eT8y)a#2e?I<&qW4+VZL=Fjm2BL4!h?C%`$SA>#n`3X)$ODze? zuAf@>$yj~rj-;he!Yw<&U?orkn&{UtnHvShY!%OJ$vG=!t1{OE=3{EIB6WbO9Klp% zMal9)-8@Mkt=Mv~@>BGx6r|{d;SRn2xUaD=k;h8Z531aQU`|}c43;GOX)aE=w!Ha7 zLCPY}KIWx0oaew9R<=DVJdCw2us{7mW46I5=sb-Z+zMM}{O8Yc`(oE1M=CX~E@+MC zYo@lL6Y{+iN;4(~3sL%%rq?!9+HTky(a(@?M3<(>1g3r6sURxw>{Ds+TXw>@v!!`{ z@>E}1uInptMLx9Nrrm!)`|a~?#h1)U>w?K9F7ITQS#1MUJLPs+Px-*l5Jv_v*}#djST|!*yH^93nDT^0npKKe{hlM z35LW$&wp&eSb`AZ#O`KZd;g;AVz_ZOz+;QSW5FdU_INI{3RS zBHBl4kOL`~rFrh_S-&_{@a&g$+I$i@Bih_|q5ZuEStykDFsf(!mT^4b0uN^AyUx;-s0#5_pQRCrdto|w#J-M+}+`^^KIFJxC?t5x^fe6 zkgN3oN#{w+ve?o`twUbny!}U5BJQVAVc;hXc&})B(~^>yvd*FguB-e9tdcu=gg;6Z zLd_$-91$*$9$%3Qb#fCXG>&fb%nZ&5R9{nD1?kfWzq8>^Z1Zxc-iReZ)^~b)}tLm;>JNzk&=LZk(b2?tXh5>g;Sd(Idw$`Ea*> zrQq=g+z;#jfVcvkIF-Pnm|ubD)Ss)ecwq476rH=EdtaO6oHV2Ru)wg}h;__kW$&?% z6VWpJkNPHQy=vM;37~ZN~?9ii!7HpzBC^S!? z%UE;JTTDUJZ2_=kzK&U=rP&5P9Zfs)2S8s=IX~;MNtapiK8n%6Kk|cVog*@ z1}Wbh+gf7*9eyU(m#LhtTgREV+8$eu#wl%!y~)E&djGqTtiK1O&_A>^wPp`ufN$x& zA@c?*Y@ac{_T8=TLm;wxW{z8?P6drEOMVhPag1X?ubY@G_x!V;cc6_#cqprnvqQob zT<^Nzc>tI8?f(ENVc8@XDl`=F+?@Z5Qa0U8=2JUP|JP;beq4S@`8!W95PJW7cU{*g zEp^@D>EyoOxHchgXUZTJh~@okB`Zv6Y#_# z-z`4a)DTkNbdG|pGG`)$C$L06W0{WU5tjWK_wQ%?bT}UsRK|0HHU`+#5Qmi?9p(iu zS(BZoQA!uAEI-hBvsu{8fl`xhmPlVbpN5_EhmS1)pKj`^c*mg5bf2urVqE{0g&=FX zJu-JwrpR+J!``dY?a^3OI0O55cBy{%mDn^X<5b(<6H@Ct+1#pv`aM`y_2_T!mGz}w zROK>-EE00kUsNDD4B+anrklfQ;O!CV5n7NV(h`rb+QOzZhkT3-f}du$|6~7KdKlou zahy#Hu|0WoGWyVYN9j>G4_?eqI`r3K6*xmTTYQ8K_g6C<5dUaz0kON1M7+^w*8Fv$ zH`yjBrKK!hz7MxzCfV|7=N&5B=&?iJMhMrSsJHb!a!%)ZK1k@=f6XlA;{Yu+I7vJ86!-1K)T7y+___x>n zq?yN?uNU73`A41a0eB`@UfePW>Jl;W14QmYF3Ty^M9U05)7^#3{L&yWof*$(ba?uY zzA@zca-$6K!RNwN2|H!WAJ$hs+E83q!!qfu(oBwo^#^O08}zjpuF=Bf1%>|RJh|?1 zTCWU!UP3~Pg4UD6f>v%#|7bZ6+KU+ZJA3l@-krNx1&oUR6S!aOT|2z@g^S-_ev`oQm_fV2jp` zi{i-$DH)&dqHp?)vtD2oI8{;$dxXc1?9K@X{wp_tqZTpJ2a@~edwZ>Rn~@?mkZp4g zgq;n1I4cvfvte_yP2`u2=ANt(vF&V_KxbNQpzufI_TP)ndfklu!SpRl?$7F3n|O2HCPT_!hm1>?iTv=+ z#1eBvAvMWnp3HV2y+8odZuZ3_FpN$eJ#FGZZt6^ZzGFYvu$D_m+9r*N=rHq-})Irs%gFCLncf{ADBgiEzyHj&y|fJctNz_>%4XHFnjm z%h1yevqII`S@rI_lT;nbd+EeXT}HpTYxq92q3+6;pFI5|f5NR_DC^`uq{iUwdI1{X zBPoYDG2)}+VrD>p8Dwp%Dcx4|Sh-sKdi={&hZ7_X`E#o7+w+YeZ42gDbORvF5xZa1 zD}TNC`Z)T^@MNUW)T?YXSy6)=0NaFv>PUY2=3na+tulTr zVW%cqT=B_sqU%zB+ugfsU3^_P2=LBW$p_|I*?gPuJORpx`%UE#{CQTZi5=-Oygocl z_g52S^7}o$_H$}qO=I}E{2norLB!8#Jwur%+#exsKlwK!zm9pdiNti&XE7-j4y16@YUWErO?2!t%Oz=5`7=!*Ea@|hcZXkSN6v%c3N{TXcC~~}3Pyt| zkOasATR4$qN`=et)$5!!&mYy(^b|G%-D#UZ| zUWZX}%w*Gr1DU?{hpgA$0I#Bv?5a{sq)mhOp}BFzD3I|CPapuVi}4IAiKR^4zF*Ef z{UE`9pKO1Cj<*sw^Q<6xt|#Pb|6vZOImIivI@ki*IOs)7z_ojI6wkT_@|3vy6_1}| zqh)O}_nob^OC=o_q1$M`=S{)u+ElrrDO-MaT!QB_VKa314iARe>39>_jCNVNrZE=VY~)ZoT~74n(M^N82>iognB$ zFk~C#42PYn=Y60;{3r~%O$`5F2-01PAOCV+IR&H>xDb9Uld`{*Q0m&aoKKuvfA|?n zNW%XJz;g!CK>gyWt9~tOiOxT$i5n2+I|lr!;Seh8`?`A%2I&l+;P$WPmHDi(YyOkn zf{s3q5=bsdp)z8{ZrOd&kmTq7jpvc44s6SjI0@Rg-gMwV_<|3Q`gkfTttbu7JaJC?kIgfque zn|P1;oty9Yx@#$C4W{w9$T2Gc@w_e!KdHz^Tf&AeX9t9o#H)=nKMf{?@?R|3^^8OF zq**G;Jc(abL;&R~(90(#-K7)(=LNMd{XucTR&#wKHY$IKur#GwtH*>l=(KRl_5?>= zPy{(J64oAbW*ztPsy#~avGNbtdg>w^ElLj{o{|rz9g-3XO8x^RwYK89M0wK^2?e6O z1A+xZ8hRIJ+7;ap3MUk!n;q?OcP9i*kI3qJPe|&5p_?~x=LI?RXw%(Raee)Zgw@H( zm36%-C}b$IzDiC zF!rgPXX(M}{E%@-x}VIwOUex+*5+Ns?Ivh@$!2Mi$hBQ0^d<1?cvWyv2q9Tt!zGck zhEe3UAC*XH=8=Jk1W>a(#=umIoCroJfC?aZ=q!3wee?3V!Sn+e;Cr%n{_t^Y%gxKL zYU@Ti)rD;w!{x4t%hO%E*?l&pIur;n6JtI&*Y)aUf8UK{y;X638B+Y+x?l=J-j^*X zV&IIEqPZ-Q3WY_&QIiN*L4_H=&Azhxx5rv5|` zzT*TEg?^f0TKCJ&e%N@dBqJZPK^FrAPO` zTc1t4-jy@c_-H$g9qz~oEzLb|+QNeO6#0j8n*CQQw`|CFS*fwo!^Cj~c2t;SL{nzv zChUBiXW&`^rPzK1^5T=(H4RYDzSSCg)zgJ?MKp=~kARe^Ye+jBh*cgQo5X0`3^sN3 zFj)L7kX{rl(dA&#MR1#rc>|YZLQqi}5*8Tgitkpz|H#&%i7>Xx0N}YPbwo$M$v7j- z|7Uw?XGD;t)Sy7MJs|6!Z=S~$U#JXka=I-?^>E12-(fI&8BzDS}(=1mx{dpEwCD0f12~3qdjWry3^)WpxmJU%s+tn%+)Nbnaq;DsBEcX4m6obw_&srP4ibm^PL?H za*-vN!-L!5L^)T#^UUlNB_KR#@#^{h(myh!JM!G;&U5!Kp%^9*m0ISLMBLh*wCE-v zQ+`+`GXW5eCljSu_5KoGTARc3Vk^ZP@4D7Q?ML$q9NxC9Ac`qO9h@5bl#yI!RTMgH zGL*f(&!p^qUD@IkS@?>GKrVfCMG7g$d0aU&dg$E0f;A8@^EL0O;{du*oa!so4)SJW z*%h&MjN@pd6~$P7tuErRvFmfX#Qd&Yr{-lKYKNK74A#_I+vIRP{{hi%Y_s@JJFBqQ z^P1;FE}-5n{tw`z6Z{s+BcyPg6usca1KYHULm92?pnB@^zv=9dz!FGzz;fqv`;T?i;+>Yt3 zowg5Ph1Xf02?#VogsiFr2Cf|yFC4(Y9IX!xG_CwrVmBrAKkNmjyvJ53A_?+#eYf3Y z(CofKzwm0-YQ%#3X^C!QN6(HQQ$?Sifg+9=o|Znt=zq!9fYNDyIV_LW4?V5CtDQbY zE!sm=@P-Kyp2b$8$?k}4$>B>at&nvQr-@<@Hz5&folXK_A0yc^!J}Qsk7ntU)8 z`*XH6*!!10vw7DIxy^?GxN_KV6Ro#~;*mWnVQLq#!=Fg{4;UwvlLTC?s*3F_Hq0Z0 z_`n^)D%DqFqUd=FF4@R5;mAaeZCltkF@t|4c$x$-#}Z)%bQYs)%X%Sb5^JIzc5XQs zCHa16zWMjT{J@E_x$(lQB&RIL>j@=6mF2O&y5b3j6WahA{)%w?miTCG?kYUNVbf%W zf&a%J;S6p^5vw9VIv|m#*S8{MLTtm<^FbOkPMZpkCz$i1H$;Zh%5J7hQg9{uCSm%P zOu{BgJ4+kpAS-$0>i6YB&)quBe6TN9Ok4W4Wx*a{QEc~jPvp*<(2x{W)#pngudIu7 zHY7$pt3`EwV{c`ndFm|G$2YVuTu#!(1GPfTU3|&dZT<1X5^*>;WOREOJ;Dqb_FaKAADFW)1i$|Rc1t|<$=YX$@j1A0JjF* z0XO&z7|+(1tGcNOs=5`}J;nF85HeVMDx5X2*gnQ|BB_X^moTcDh|a@7m-(M;xU5bD zif$XpFrxjHS#Ris&14deBZ{=2v6y|GV(KC#3TOMy)w}W1ZjazDWxjca+6a)bu3~!B zdv0VPsEz>L2=e7$xUtWDatF#lzqDx&uwrk;zzsCm*DgLwe$J->^e!98=^ayMZOv}# zJLYPqYd(7XP4@SG>y+^5Nh{AP!`VAAKa(~AOX=9DidkJIBqmHq1tH9{5%z%A+4^&; zw>2emto7okvYG1W=nv^<%^57lIXbw76pjCYrJMetXoo}<)a!Qj2pkWQ@^jh5&V(^? z@OmekA2jR3xy4N^n>?%+LFCZYc@oX7nvhRgVB&ymz)y|{@Y1QPCFh2^kvphhf+rIC zyVp${N23)6$!RLKI|tx*_|Y4$#(zSbW|Mlfk{L$+z;T?GPBW#h?aTbII}aI{2G~o& z*<{BWh$D<~IZwx$NqDHYDQxNtYb;d* zp`LIc7vY({UvLpaO_Q;?nNem+Ue7C6?SnaE3uJ=A?o(J(f3h;ZIFM;<#{!n8b&7`> z1u%#|JCko5S58TuP`olr3H_@75dF@js9ZIB<$#=GIcD6=XJ==+DsM%duTzs5($#)G zt7R^k_E%lmtgVCR?9L|o>f-VYk{Cv?V83wxYIzE#MJAkWLW%qSmK`I5o6#zSyhkVTwMIGB0jD&2F;6#f(4dfC=8;C1Z}sg^p;6B<){El10rwu8 zn9J<*+7HOdWHP!XlvIAz;qmXS$i=rqq9J7Tg~+iD`*?&}xNcDVKi1DPlm(deyWN_q zhWP#H=@x;Z%#h*R@&s6 zu2k6J$An(kUEM~xJ>Vc*6X(}ZT1n3vL~g+Da9S*ss2>@@+RfQEoOP~DLGb0@jOZog z#;EcKoKrHm+#P;~<_h^aQ0ZWDaWjN${CK%0=l^2C4IM9!(2vp9m&Gj8=?2$!w#_Cd z4RjWKNJy9W{{iceeJArQ4u`q~xAC?#&qjVawoMF`$QT^?E$`<045An}H2@zV>Ma3t z`%F?GDcZ^4o`z?$;GhYgt-p2nH(bsLMQn%q`e~NLg?t6yAh){0HX%__4{E?#SOF2WF9@R{D0%bsOt2F*Ex`?T#r{eHO9S^tMNxY(<%+U{qW>a*#P|yCbA+( zUJ+8bU!m)ilsPseC5E%VuU3;EymOFrGJ19S95LxY1c(YN`sDU^Rwc8E2ZZ0JPaCR8tK1PDS zLo?g-XPmE_PcI6FUSvQo)VvLfJ8_*^!Ud$NzILYAbAb1BMcFI6%kGzE{y|@dJ2@i(sj!Ij8%Jyjn{nN1OrZOP*O!y? z!${XeJi}7hLo5*d>eOXuy%*n!>TaWAjo_?GA71Z;qX zSYnxQ^qY;d%5K^=KiglwZk-AFP=4iteR|G!Vi1DP90qTB+&1)QIT#z~2ymYlleA#3 z;xe}EIiXl>rKgV;sNK^p-Y0vP6~6uZ`gr(G1&bETOStm%VP2>}&Rm_#+f;On?{KTt z9A!K5GV=$u-yi%#(*NZq8gco^TOrq@nIjgn6t2XaiZ&c1A6$D&OTQ1Wr&MsjLY3Y< zlW=qL`9HH_A2m`1IDr-uBl;b!)ZZtXOLoGR5DzZHsr9;!e?9DLQ@1^7yMCAf(CGDg zX6EgGK!csyggG%CYf zz2_2e1irM=r$&pcsykZL$wpXgcRl0^ivNt#Lf;*|6MFu*$RG$*%SE%z?h1(at@Y5-<{!eQoeGtP5WRI zhNS6<7HWh4s!(o@Qhl9Q_7qEaCjo)bRP5IqRtL6SB$)leA~?Mu?E!Ry!c&pcjDL`d zqkum-iIj#MU*&;wnHVWTuB(ltlj8Dy9W3sk139yux%+QsV^K=m@Ef%E_F3uD7nj!3 z2QzhN%&{9TmH)mdz!WhdBKUt>2dXsmt$eJ&Jn{MZA815PzrPyKgXZ|Zz+{R>%Z;`; z)6KW9cZZ;G5x=U?s@%n4qtiU4+J~c{8z-! ztT2dSliTm(gAgInXpSq2|F-S6)rz#h(lgtAz1Vv`d-6w$XI@Y4K_cRoS+#!qZNiHW zNM^#0Y_9^3)vhz%1J5~p2x0=O(7g6>!jf_cG`hu4Tov{oVE-BO1|mC0u`}sjTIefA%ye;}`vO5tcWkwjSxBB*lr3D2 z8@Z7!aqDzO?qMwSog3dar1f}e)9fFVui9nv9rLae!-Kx4>7YQrvrhEMFH0laWFo;} z|Ek{X;SCm8yUDqqSsR|T7_wOyRG#SnLoF9BMvpk(Y_D z(YVR7X)|N;GusPHnQfHzF=438{dd9s6GHg8YWM5>B&2-NbOr0v8rR5rzLD~6?K5&E zjOuH&s?3mSvC1-cJL352lsgUGP_IDr03n>*yi7a+JT)V@IR2 z3&qn>vWPc%A_o4IvQ+J{oBegf_a8}aJ1f!h!%6pFPPVyuRb)SV{_Eogywd^=SNhi6{H^6^3grwVJsV@`>iLxpw-0?S42^#z8<`ul)hiaub;cd| zcqaY;IQrFVLBr#QS5Cz6dPn@V>R-0FfXo6Br`t4?c@NVOSrJ_OBgKpoH`%+X0Qf7x zRs|^^uW$;`f^2IZ$DEy*Ai7rt+bo6CCkvT>*CYKfXQ=JLo-q`AJMN+~b|a$8nfSg) z+jwZDOyii+pg;L6Xxt^;%JFw7ZoTrw{*ei*9Y3K{3&xJ=1N+3?v|+c`bCiGpZkVV8 zrMLS-eoz%y+E5eYEJn@ts82DTh!7a1<3SVT7exmx8y>qDL3^b;%R z)-R!t^OZ48CaxjiNpo%@z3*+`hEPq-5z%nJ$aDyX`5Ztm!8R-4!o%}nOvmigodcP< z_jYQ8A-i!zDH>hIr;5~;KQO!`#3KaArCs~*X&eQZgxzmQ&7*uf^yz#& zJM-uEKll-6MUnX)r<{%RyNA1YS^D0l2QdMf3iv$gtmsYo^iXx(-;{vdb|#aoqj?0lBc{hRo)UBZ~yx z6$VV2?IAfPiYvgqGeCrzZW-ncng9o$J+#UbC*m@*{cLR%6>XHDXpVO4&){DH>lOoL zCpb@0hx=PNn-w!N@rDbAdKU+kbK8Y3+_8_rK9`zSgt>$J4L^(zNePUw7XNr!3G2l} z34BOX4)RY@kKC*XGtgKV&ZZm~0YL5jr%~vAPC`0Erv;8yOEqivAaWb#r#$DNAHwB7 zd`gR#d#uDxVvb54e{I~IVt%n6=H~+v&ToYe{z|d~Ty3M#+hanc2SKp0qg`GUxbocw z@*j@Jun?K@uUBx^t}Lwgp0<=Ogc{#!Tn#31o~@!09M{2)@f<>N`3ff_xVcb-?zIdL zMNE91Sc*=N3yxNw;u~9!g=(gz+Wl>Ov1#|B??!=SSc>3W!+blCDe4z6Y8I_}V%Xtx zSe3QrL;A8Kes4uOYLs485Y0Wg?WF%j{m2BVC-c~zFe`DnLG=a8Whch9pF#n_xUPe$DWh z0_&wLu*uIvU7t*GQwv)(w>7)sWn#`kE`iMKKo)fo{_1I7j63aiFJPHC}nJ1Xjm zP|sq15~TufiY1v4ZuFYBkCj6BO6nwXu0WH@7|~!#tRRtt2sC1 z7WR%SIsgbJ7PbZL9f)rK1U&*%%KS`)T*N}Jk30`64ffmr7D@J>i2Z)+G_a|?u%rA^ zf926Tizud>7U|GC0wxeIPZGO}Nd9e3%VcMD=un_r)#*g)1B z?1%(Lo}(j6Xsg7d*Q+6sts{C-Oea&hvm+g&D{YRq0~!6(6xSV}80`nbR$$>V1Ve2SLW$N-#_E!sBNFh+NBntAQH`&{07^Bxfb})Y>^DU^mc(pmhttpOC zsS2kZ?z`?~Mnt?E5)M0l&bA|Zup!@kv#P8Y7IxCNVP-J8vv^(nRkFp)?O9#8S6`NV z*$DU7_`+>CPf3zN!1(=lRi6VWod&IudV2!gJu4@9SNj%lYCKP*hv2)vuG-0h+Qbi* ztd@B)n=C7JF%V+>NM^+hT53?YCBEOnaErzkz>H&|tV0od3|6eQdZee6dckX^#}7@w zY|D+E``ptp7T7DG9AY0X zlvKjNZSYuLg3YCL_N^-1(`i>L*QRVpE7UgBR!Y74M7OTHw%OQxhyerBdOaUvhT2%v zyw&967rVamH-CTGC*@=%KE-uTII0%45xtO3fo<`r`V3FEb-29xMEFNkS~&YyEL=NI zDw;>KiBzSoM@_fQ*ov3~-;X_G#DZPE`IIvU7~|+(=neFNR^-$lU5)lposUfHKZ}nT zC2WS=mXWhoaimT+-9rOsz+NTvu(aJr{H|n*Zp&j^OWrmlmsmNK^>O#1Ov+hl;{n~8 z74ZjAma(aA^C$K`r3K~6??HeTf_Rn#$$naSPLse=*B$Kr`1EE+qx(Yg?a&?C8uWps zo_rJU;I(Z2WhTgK@U&vJ%YA|P{tn(nHL-N4u(jD@BK{FJ(Bv-={5V=^8HoMAr033- zPf^oi%VR7~TRmNy6|J-X?p~cIqabi0naan^B|wCA>n#HwJi93-SGbdy<20{Te=DFt z&t-0V*?KR3(Tt}b^?P_o=>ODde)E>;AFkJ3FMmIMNrb$zF$Z@xtWTn~a9_GHm`gK! ziY*|J^xKU_Y(gf`4paCK7zMgWPfa}hD{>gC-o5(ZLEh|kcX^+48ihY)>@&=!9xK3z5Hk$pXUCIID__u2iq4A zz}=?W8eV5zNLaeZN}VMsPfTiVR9`$oeO;fL?k4U$H<(ScB*0OI@E z7jQR@a5quZP;pEYN-*mCvh5C)~P)Z1mRi!?j6ZSLke+vAY z=JIpm^_<{1@Bw{eR$i>&-}*IDApE^jI$XqCY=-RN%aLo_mb}7l*2@dfG zc+=TP4L(vYz%TEIj5IsE_#a28xpYiYiRBc&QMjZ3`AY5;ZbP243Z4@Pl2a9X;66Pw zEMpA=PK=-S*q_$P)7j`%+G2OtP4tCUA){ZmWcpPT5K$L6`U@K$$C;^_j69v3@M}EA zGwkcmbeqV?kk%hrWm>dNuSVb$ya?b*y^ip`^P1torQ82v|5oNt|4^m-r~K!)Lc=v@ z)ry58bL_p7=dywEOi**3PMFHn@CxePH zqgk(O4P7_Bdph0X)J5}4ddY?OM&|yC#g_S`WOp|NJ+X4~Ag<~|U|&x00QOS?3i3C< zZlSq&`OG^&*1=WcUv^Rz@IA?m!yEaeIL5jXUA!XA6#2BIfIp+x{W|IA)NMPD*ggX` ziT}$LVE!2pXOSrF@e!y9tHif?Gfan{zL0C7c(v@6s0dJ3@HW{xSC|lk`H?g7X!UK^ z_lWtn?jLO#Wnt;3E0Ox4uu$#5ZuqNpU6l_3k^OI6v+;kAOJS+aU1o#lxu39_FQ0o^ zu`^W_Ar=r^ylPG4r9@#DSX8_SMX6U}Ai~9etDT5=la|@q1WqxpdBdWpX4b6r3Xv(c zi4CogLjS@@rH#3#CJ7FV=ry6SL6xu&f#bL{q03QL&UM|kcFKd>E`8Z=W&t;sdZCqy zA6?VJ?b+>8%tZMzDMU>YN$iDgqd1&7B1Zf-ZgMdqa>q1%!}eqOl-go551XI;y*ANf zP>YQ7Lo=>PQ9JC?zigo-A963l_2Jj`cSQ7G;=MW(v0oImZdeb9-Xmo54wYX!MUNX z&a=-n3#;9VQU;B_w6QzsN*tA3&`?e@(p7=d*=Dztm2ZZ+q!+pPwF};LUDcKKa6AZX z6dz&hJVb(V)$J4g2N3?x z15)~~0!5b?O!YJe!`-(Mh*HtxtIX_#hflN(B;DFnlOB1CKl#K4Rl>6ZUj~`KEtc|N zcviJ;D)}5H5w~gsPB+Y_^zX89bGs zna$h9rym8dtkwF%={1tg`v%;KGd)!%HtE#NyAj>Z^C0~^H2us{T>?=uD@0UmYEZMo z*8>{*{nPmHIHhLX%UMcAbGQt97iFplQf#=oAO?X9EnfDUC>B0&W@1ad0yRT7W*gTTTsrT$9Z;CIUJT8co+#q~7AvLQ zwuO(#*%JDfk?$OCeN_sTzL38H?|QI9P4lM{kKHs@j0KCzcg@Dzpgj61qKd+X(mR^E z1>dr0p+D5P$FZ;QuY$51-l|Ug{Uv7nd;bINyeLNy9vVyJ*Qx}|wIE7?ibh}3+u;-X z!ajfLXEkizL4w!4$T^96Wfoj`OCTMdQIU5MP&FG3B0Q=WmY$d0c8*()^UB}i4*#S` zG4)YdVgIANv`M~W>fNF$=Q0#_*NV9~?epIG6ZA!!72Q2d7;#_^rdlyA!7&_7=9E$( zQG_WzvCP-5mWApsEvp^Wn28VeXa_eUCPQ6b?`27aL;fO}2SB-N&V{O6*3oTqYz6Sl zQOJTJg+zWqP?SE(dHV#$p1%7}m5+GKM)%%S2c*PQZ)(=`H&L&{(oH^x;6Odm`L+Y_ zn6DpJ0@bqY$8G_68@36n_VHcUr1MqSf!_@QVBYCGUJe1}N-}4`-J4t^L9@|+AndE) zC-bjpQ;dp6O!JrBnArDf@gboRT@JlH3C}C*9cIDWO&McJ{Iv@1m)X;8>>gFGXQR0W zwmA}nV#gOcsKpX@NKn%jd*cOqJ zz%O;G@0C1b$NnktMs$m*B9tH6i)QpKr+eVGs zQQ=0p%r85_Q>cAJ=yJ|8Erflhg z9$KjNFqUX;hLj*YE+H@~)=eSvb_<+-b~~8ZdlD(vd4ss!=QW2j=di^a+@ST+;3BK- zu?b|!FNcFM0-tc*p4RuRe@;4pwI+_{E@if&HWxq;3F!2{h2oX88@_G-T6yRf2K2R+ zW*%-yfjx6&M$sW+LG%Kg;rK~BXe5Lei;2WS7F;F!{YOXBWVB8z;7-*(@p9@8k8S?U z2=truW0@&M3@sZP7S^{}$a0CK1-JDIkWhbt^L`y(%PHNxaQ3FCQJ9xqBz4?5Ib8L; z`{>devUP{wds~w0z@LGceloQF%$g@+is;9*!59R)9ay@pS-WV5Ta_?&RS`wvK!qpT0sc|~|pKXmdET>P;g>K~H~ z&MLJ&dN8?|8Y5)d-$He|Wjka(O zabPEdM~?^vXJZC(;2j!I3aqKcbjpu-?}e@Lxh|9tWA5{(Q(w- zlrH1gFhHqRZ%2+A)=}^7>KORFEuZ0Z>Px`2nFm>hIwszWY0!01MeG`ic_o(i`m4|H z%$C{yr!bWxyxHyZ@(Zwd22yhPc`(>&+{Y*L>fIj0%;9jE))kLPfRi?TSOv1x?zE+v zG&vRQuAA4lb+w0Ty~C`+gZk;9jqe@wA}5Y0r0W)YB5GMh$I-AmhQ^obACa}LF_z++2o#OzHg5++oG%F+bq}|7wSXtGH zcVUU9TbOy)g4DvPuE;$XTwB-Ou&HwtI;YZ%(Zz0966 zS%B+&+|+U`HVu8e+;lhb%M=1H^Km=bi2gfX3@A+g!|OG1Zsd%YzkbSF;TjG2N|XehGM`^nudLAGj{(; z7HunBoKuhXA3sGim=!%tB4poy9qC7s-gdN{$}Ai(q3Dd=w80_PTHENWjp$W0li84S z-&48TC%L#H4{Z7Al*~Y2H|;_m2P;yMkMW_O=o(6BNApqj*FV=9ZT1_Sg)4+!sH^V@ zXchj8<1k7;ClIt4w6dB8f6G1q{F4Gl;O>sr7A|Fim*jcT($$fJOohc%TBwdd2#W54 zR7Y)cGP_*+V-OI`FXC6bGa46kW6++t&I?l;OR?^ut^op0)WR zDwy0tj`g|!12AuL-U@~VsnA%DuAfKg5rKO8pLXs~9xJ&X6xzRnWuvTZwPTU#gMjji zecaPbqub=vtqp_0%<7YH~ibzR=c$_v5*mcG{(^KNS&Zhlhspaz4ZvVl~?R6`PGAxF{g@9&!b=bGy}bIy6*_jBK`JH2epbHEDkdbL&nIAx=28TIdaF$as7k-ViH z|AY;@rE{D=;SKAB#$a4AkH>q)ER9^L&`Ip}>hwk0?|My+1< z6HvNorNl9ez*_h#r{i*U!&dTe690_H{%*@wi)bY0tc0mt7HxUe|w$=?E0SYh4`n5z84Xa+Vyoz!qLDxNDrf(0_4o7+>mPx7JV zd3$eK+T_1l z(s7}>OJ2RB>{aiXFt<67WR8BQA{Wd{%qi)&%bK`eG=jGBu@I_P0W-{myIWEb7>j1q6I+DWy{l?1%^J1=4zEfqkXba)H4};U z{@|Us*~%|R_mS^}I>dvv61%JK2WB~XNzvdR*XlK4Z=@^C5Ni-{D{@v`lfV{}ep0mO zquEERvk%X7y-!a4X{1@qC96R!pbbt=L=$e{V$#0;2UvQf*gm%b4P|`=uil=8dy+n5 z4F;{oJDiQHAFo!rJ-%3u+7i&OXT$3-*MOl?oK z7XdDmNKH)En>(vP?_Hmfx*qXLl<7I}hE{S7EbC9)Y_J1581kb9C4FA;f~0(P=@7fJR4*vL@BXEqQ zZ9^m9ire;*#OkNJ<%ByKs4oT-WLP zV?jtCIA)Y4lD2b>R`B5(X_vZq+W>8kJBozHg+PgL>r{#NZ~~u;*4UcOmZ^N_LZ&Uw zrTQQ<)gT=2{A9cmcJJ(_$JMtRKaO!e>9m#SinG-_gh>wHc$ZA6vYgpMJM!%3AmROvbgzg=gS7KL_AM48%FKe$bpq(mB zx0CZeal79joCZ54nWm96N&x}DOEltlx(j$!*wd5srt_}IM@7I(HkhD_+e~SZA46Ip z9C}56p)wrR^9zKrCF2kcCHz6S^9Wd^xD849^vW13o|9qs5cOjlVs?tHm_qp;5ubr0 z?oJ}@2#=R?2JW+JI7e&)jwZ+|A`RS}rqGC`a-(4h+4S^EVTwq#Lwa273AF0DR#o*i zz(zp+R?5A`H0jQEMA$`B{2tdYBD`k%*cbQeP0r2}K1s2m=o~PXjTQs7h(;08vYbP@ z?y4^7=b|ij7&^F{`(8j<`=LiXy75!>GW~AgqcF!F-0o zMHE`G^5e*8!&0=*+`MG_7_<{@Js;je$lWxMZR<6T;_CIS+(P-P8m^Sio+@t z%+X3)U9HQj${gC@xO-GjUt63=&@4A9eNF8i)O@qiqq#F|d)#Iv!#(Y^xKZEKFVKS-JfV^)m{t8GU#i54LW)4w7G ze^xmq$UmC*vMnPX{|LjJ+DlkKaZVykWL6JIEW`EE_mi?JS_eV2g-p6SxtgKDF0e4Z zw{}t9n5*4A!opm57lXytBtU7ijWM@yd{z~{uu@gM2DYE=cD z1RT{SNvGVG9`g`1q~H%6(O4^M>JKxUx8XJ3D{>5!_YL$m@}`hb|2ztuR~5Ms9V%+# zOkQ>)MV6*PLlI2lxO`idB2h~2%lkvmGXyRSOFK@tnn*8=v)9Ze0seWl&fw+FjRjJ~nt=%D438y!vc z71?_;_Q^(9+ZK)eqNV3__VeY$IGAl?${?0kdtaPeg0e4f;x<9GZDhybbU zA0OC+%1)V*+BX0C%pLU$|7Hnh*RmX_ZiY-gr_MB&HdME?h-BTIqs25ZT6o743&MQe z6(?m7mYtA6Oc>aq^doo{Y`ob2eD%tt3!^7JUQt^aZXzfCoDulyc8!HF_khijgvY=V zBa7|bxjYNM`O={eA5i2(#M8u*zFKxF$HljdBMZfGEyJzGQA9}n{h(O0 zmNf)l^CI7frzE@F>>Hd?bj~BLZ%^l3c&wy|g@b67x3dg}%8@xHC?`)U_R?y?lm?~P z_vuja*iD->GddpJioUl7grF9M1;*fTw_VnWHY8ufF;B`4Jz4*87ICk)QX5RCH>l#A z@xO3^XMSwU#Z{zhm1hY{9m;&*EEBSK`RX$NKy9@AYG~#KO??ZJM@Pwjz(f|Vl>CG0 zY?zw&=VkkltGmEhVu8uFM#%4qit_{`Hw4|mlb)vT!kp7doPwEWo^Bn_=iFJ1?yEwrkzfZ}p6|%$vf9&e!(y4(kcKeB$!Od&NC>x$EO&oV zN+bu1P6=CSm*|Fr!1`U)*MD=v&d)i`%~PZsvU7Qo^=j9Y+|kL)K>P-vfZCnJh@HF( z9A+bFXpllF{xvbk%Zee?an)tZ2t+c>QZEprq&i=oeckjv`lUKX#+*=p%E_mmn=p(r zuxvkjs#<@j8-bGc_c2fP6P~{*b+1dGF@18KroA5cs_y&CG==A{?Uq9K%M@v*7jk&r zg{yka+6_ZP#&w>7??W%%^rMShI5P19_LI*$_bO)vUR4>tah3ghj^s~-Tj4^Y>ysR& z()eM$5uLzr6;t2V#p?EOlet&^QFBnHhn@rEc>*of*xQmg+E6SB0hAMM()-m{$_+@S z`br(ekxuf~EP4_;i*<%3x(Ose&gb;N_L>5u9{z4;wMxNLnSxio23ffjHWryvfUsa5 za5oW=J$2nJ&=X&fU$_SUS!Lw=cxo1zAyc^Q0eL^lzgmT7AWM7An%}QPXm}C|G@w%; zLH&9pK<;0&>2By4AgFm76n-W~%Mf|Hpx317hEfL`nkR1eAr-~N*y5u|G^K>d^nA`A z;!T|&yVCMMn6wJ(-YhqKn-vh@9?7WqwZEl2KE44jn)08~92+_I=gj|D#?p@1pw)V%yxDq-6ad zv2-CbaX!T|eLj6IbR)~*0ZI0~K;noMJ@vK;YsMN}iO+=Va?Lu!dsFhSCsC+OEP906 z1tyaQuYG_mwHTdH_+{ixJU^w3J{*;k;;i#Q3a^P$fXB+_8{ysUgqi_v@v$6M*EzPF zGB&oj$tV|o;vI2EGxDS3kM_T;nrEI&(r!3>)v<59tYaKESfXyN^vdYnsXN^iFb~NW z$y+?=x#YB5s!n61{VXw^SZN{PYLs@7O~FO^Wa>5O6RT9-tL1b^p3Ax49z^MO^l!h=$7?^t={L zJ~%uUejcg7n=t*8K`2>g5%W=#g)Qbqamvay4Y9?rlGIvSbQpyjh-afs1PjidNmhpp zPm>ZG)TM2e^Pz3X_{`|d0J=QDKlxRKXwu#B;`+)oIxoqAajzQgYoSx9KYqPFzm26q zAZIsym2vJrV9j4?NBIv~zjge(;gq+H6_6H4w&7g!KD>jm6AT(hwzy zNdB}2n-_O<0-t7|1Hw>P2ZJ@6hVFebX^Lq1@ag2}+_?I(xFuyVMF)Mhd8Q`B&DLef z@thJtczqKfXtEL%%Xl*Lw6!lRixov54c*XcQ7eVLm?zSjnKu*@0jEU&d7CPjzj!$OWw-?ep22@51n_O9@IzzeNa7VtIAf zySTPPQ>tCwwTQ>Hw{1&JN3G@%yS|x=<+$ZXao`lJPszM_@xXrC${d1@KCWs0RvcPV zdW)SsHt%COUjqtfI)rvf!WpouveOSx5 z_DNJ9{d+(x-!E3fS1g+-uTrmEHT%8Aez@hHHl|Cq9Ii+Jni2NY=Mv0yDA7Eri64n{btDo{`s~1o?^Y?nh z@Y36SE|(Pur(7A!;(o<~-y&6+aYZxy&UBW;)W7;t9r!9D*!UE-IT!Xx=@XG}Fy|r?JSCF0 zM#t2ZOw+bE0FZI~n0T-U@ifsymi_rjk=KqVbtbdhj9u!&On8k&Yz{#mncFRda%B-k z6^pFc%Xaxh*Y7B>;!Fg7`dlatwxV?R+Uxa>^^b|tnTpT02X$O=uf*ythfptv{rau) z{_msDOUzTI%V0r5AMhqYYpAR9co|>x5A1{=AR(+hqoJ&RpbzvO3p}aBe8Fm9a2QME z=oWHbGyP}Oug?Fk|BlR`WSVu*fC9)kc~04gEhYb>PvCcm8c=3$Q3O(Y#Zjaw$z`5C zS6JjD6!nqclL%a$!E)Na6cn}6`L#j~*Kzo*xj8bKloi_G&l%L}2w&!-J_zNdxGX<2 z+W|A+S-7Ih0Q1~_YF8jkMV2egTtTny30GT|$J&CalFm{GPr0rHwT3ty*uBIy{Hc2F)M$&ozd>~m-LOkmT?K20h&(O9covbgAIf+t3G zSRp?uWY&Q+XR_Ebvj?+-x#SIALSiCxQ`ngG)cy^vGyN7&VOL%%7%TgaCBul zOY*)g!}1?XG+dY;>Ec-HWcWOjwT8)_pRFs6Gj445_gr`Vyh#+D$2N53+jdvkUHxC$vpBltgqgKR3&nO@jpvBX>(yeEKF#Xuw z%-6+j1)&I}cD2;gf5y6crVLfjXB6LR-;+^s+ULp6?Us~k@hdF{P$0LimZhj)LJ2t^ z$ewFx75CjenW(-cU6hFb1Hj$m=Y_4R7)S7>HBYhT?)ft(Eu#ev5HB_2v< z#8})IzG!R>uHO@R22m|G5eXyz*?-cu18=+lGivaeC_+tTsPwT*y3_-CPySN?OuIb>V12LPmZp`94iumuaGogNFQDyfP$uLTp+>Z3!r?s(Qo zN(i!-i@k+SR_S0qR`KDizTdjDPsZ~?@_Qb*tseaRTQG7B72A!28Yzf}Ig{~4z6Wm7 zYNQv|V+gtN4T(wUe3Tc(TkS-z&GlEsg}!3ziWn2Np9+6TDQ5D^HK(N+UWI!(V%HVC ze&ZIbEnK|(8yiI@x^HKxdc7>Jm}7t!zbO3I@S80gD5KT4Uv%=SskXHeO@nYr6NZba zQ6f=+H{5gL`kZB~Xi2B5%^9R=C601~3^Kaqf_l`|dgJ^kwq~S7LKM5BZh}^PMWGw- z$n!&s9hAgRZ&cK?N|6-ZduK!cKwp<1*OJ;JF8G0ikzBCrFX*gK4|5tVTUADE3mAva zcdP52{~Q5k2f-5hA?IR-T;Ah@ir_^Lh}o4BBhRBXMdw+`b+?&@vbq}Cv8!*1PZ^-} z@Q^&MRJu_aegLCW4Sq^AOr_2h86^)>R%5c5+#;;Inv!_r<5?u`=*b8kk_~@;4icQJ znf6>GcxT)}GwD4`r3MEsgpHmO5Ih&^rYz(+yI#0vwcKrMoVpmr<2*Yv!(5!Rxe@8? zL`$FlvWL&XSb3p?FgwQUlg!?iC8#Mnwn{v>rcF1P9c5I4nuV|AzN0XRn1n6EAs;mf zX?;`eydzw=;JH)@p56jT6=@AAwz4gAOYBOLwvVVBTWNBALOf*)Q2_sFXh{{w_U2eR1(_)HYJ?ovEGJyL7iSEM9wyLoZ=;~>GFH7@T=uG zKNqI_*;|8Br*TON@*VLx_5w;*%T{UG>AKny@-GZ!yFklQFxbA^F7q`1bGi$)mU60%()LgXHb<@d(Q+GS^YR+*wsf{G4u>QyxG+2im(fxI ziF0nNtb066;g?gvVx*D~McX!}xh?t5MJ7=IZQUhyd+z!p8~(?qIb?I_GAJ#1cf#=jHTdFk(7nsOjWq<&nV}de%N{H$)biNiK+)l995ga>O$=H%H^O0hEcG8y z>vh!4XfMeuploVPZyZ1Y_P zLse_w{_MbD;hMyxI7!8bc9s8+LDlc{2f-uD1To7(aqP6s-;mH8RR2FwBU^cfU`9q+n3@J@d|ezM6GQot`AQD~J^%!| z{}dCLtK{~%uwxO^0(ATpN9OjivB%!flemeCg#~u}G+m9w4{F5;$#bH)+?TY05-?cN zYE~4?tP>>t*~dEKg%#&EB%6J74nH?}vJ14Ked1WT+k48*=E3Fa-L7Qw4J5e6|0Cz7 zRlORY-Fe>CwPgSHoPmD=x~`^wY*(ahgV6d!b(O=Qab2_MW<#Ru(~1+9Wol19jqRI% z{$#`XO^W*86wA5+`ZbCGTWOl2aM5$@5=b;Rvzvc&`J7sNS-07b2-1Znw zM(~HV`OP^h__E*Ko8&4rz8gTgq zIuxktO`nfge-WMAjq)rjixsQnoIgYx1&wP3Bfp^!(lWEZ?6GWwcFA1eI8}!JG|m>V z=+uuxr@kUx@{=7~LNO)ceUHYGI+?im3YJPGD69-IP3bJEp|-yW7Wjz^CLn+Uz5ZQD zaL|I)s^|R^{TN;7B!g=?sDXOv-(#;WX{GkdR(Z3*agI9-HVE5_$VG|C8V5)}LJm3s zKixwx3@5CNRYcYWT0xTiOdb#+iymt*M^!?#wUmYf>^c;zF-k3aEn4sUbZ`~a7wx$q zdA2eM*ULuv4O{Qn805s@4E4b^=^h{(Cwx^LC<2g|;VZm&A;3hq`JUu2$uNn)hNBfy z+9I=|b_E#v?DG$H4l)3YSbi)Lu2BBaCaX_~|D!Z~<)Y*hWF0ZE`kd>b5x^&b`ZN~_wV?^*y-{gx5a7QND5KZXeFmzF zFER~SL|82|>%_Z2d^;tmWs8Gg3oRDdIIA|bb;WVjKdEBl>&Nhafd0{kGzBH24&#E< z?fFS~JgpeTR*A`1)UU4Gg+Rb{pnTc^-J7kzWCcSEq=Lkc$aBcdOs*CNBNkd+C5un9 z&450#uTOHw$hl}0tji>7w@C%D!q0-a$CQ{ugb9IXxhgL49x3bZz)n9uRxd1hwp@@( zgctFtM|!i3_t8knQOWzoxqYU`)hf<5rr1cj^}DZZcy>3-}}=E%GBoFuU~9k*+VWG5zmLp11SL-rEUyOLNKR4kJ|pmv;HS17$z` zd2I#*W1YG1ox;W*?bWUGwnx3?=cLoQenY;opWiqPzvLzBcTL|IO2D7U_Z4%fpQhhUNuxwx-v^Rp?g0Xjj3iMw3# zJ*l{#wf112b&Ii$l*)BX)cM^LQO_eKr6OA3uuP)uRnd zjx?P9h4{rQ!OY&&4n5LM+_S$XQDh>zU%A=IV7Ii+MB);D;koO*yWZf@niJ`=0=x$K zP!0C_WwVOgT3&VU9tH+;g#7=Jc#?c?N@Dm!^rSA!sxmYh`on|VX6;#b39DuH8N-~m zW#u`Om&0O!i0ntd&}Y-`-!K(0F8dHaLg8T%#kh`^)Tfj&S5Y=hTf=KbzngX%oK3P3 zK;_aN?XkL`NlPo6K&mR7d#Mkf7f*T%$Equw#XX1>_Pz(vaLZxiUYP_iN!O%TO}R+? zY3;|KPFFZ}JE9-bA2>L7yjOW&X<`KY5w1^6pRY<`HJ*s zQT(f8)Q`b$d8aIk3geij0e`dzyH0Po+@?Q-x;@i&tM)K(8r(qp$^_b;QlF z?krT4)V~}C14efZ2qPZ{JhYzKNKv4I$K_m;?NLq+j|~!ZfwX=0EZfn3IY=r;>)i*n zn0^xwEpe|!Ia81=y9gPf)NF!z5j-kcb>q>D3t-k<-Z`SKj#e}@e1?iVf2o?k)>Ku} zD%y^j6#3%^#6APNeCa7@-rQ2yGE)9RVA6dm$*Gu~;ZMtZa~AI+eqLOHCb0|MtoIo4 zU6@(3sw-+QY;Q!$hSW9&CM%w8YMY_gq$9`a3+~QwLrG9MyscY!^Pi6i-F z?khpp1XyY$)alIgW`vs?LaFk{5=Iai3_$`8J6>_zF-!(U%?Mc4dIb z{O-&=H7Fr`KYNpj?{LU2#5;H?1LjLa=CGN=Av?`Kd~DVFRRW5pl^X25L&6Zfluhr@ zY+zu-PV*v~%~C$hzq>{GPf-FtKDvzkKHo<>8B~EF)&bX|_~%A)-&0a%nz$`BRAmdb z8NyCr*0X&BD>6Xoq_qVqAXAA726qRuA~Y@K>P#Zoja{1$)|iua-E0_lphIGcH8V=bFLdOq-b-IWp+`6s7DbCSD$Y~IHK>g z1>SuvVz^)8*g?PHge+rfd*P(Jh-FJZq4YQslT7eCyrYv){ibE+>{!FsJ>>>mYX<)q zI3z4XixO^_U(dV6M9ZL~a6S241g&8}S~5XONi~OjYs6KkxD5l!0;I?jbo>0`&*KZW zuBEJNeW36(q5u_hU|knB@O3HRB^*A+64K!-utlihu_T%R2k)?Pt|z~`ihbDpiY`o= z5u6^X0)geRRDlMmCgnvEv&=;em|gav*_k|0OLT4SDuZsHt+T=f=fp@=lYRKdw-oe5 z=zcbHZofy<|_a@>6;4X(p%ROnFlt0UXcO3o}bgbN>| za^vI{<<)fG%=Wd;d3C=NiKV2Rw^ z;DtV^F&Y3V%7Pe50X(Lmm7qlQY!6hi{(Ai3Sy8UJ=we7#t<0H7r)qy(LC=fS<_u$p zuQN98@`dWTwRHHS$#bqt_9$gK_~O)ygrNdnWh9sV`VzxZYndIWcc1Z-*<1npT0Jwv zq$iC_({Gs1Yni7oIOI`V7KWl*woY^O@CmyNKHqNfPi=(&bHtU4#Y(5#ifF z4b@CT!20gCP<2+wxSSP5@|I&{vJ2!hAqLiO*J8$xYiAfm1taC~>bN@*!6YeWEyJH;!klboSf&lknh$ru=`cCwMY zoINS*)wU%3!nCewfn#v!Yg&SWG&2Di)AG*OINo=L;kZ{o_nwI61AR@11T_b9*lAGa7V8*unau0Q#P zHu;=#Pjc>)3CFG=ZQ0}Oqr|zHRk`9XCO;Hp^7^IU<&w-+7Ipoh)zKTl^WeAf z8c9^0r_pEtvABO$c#)x<}BKVEjEYPf?o*6y1od zOb^RTYX~+BCij3Q6r6peUwQ_=vh>O9;$!{AY|uIIzE|iqqoMuzM63GuQ$C@lXEN5r zzilt^*hgQw-+T5qH75AWiV+xZa1-0cKSl;$KJx$d>D+#M=D3;1) zI;WJ_bTJ#?GHtjGA?=)E!0!lXjrezED|;o6xMgplT(~~k%rN@OrS3!Zf`J%V4Ab4B zD7F9%#HYcuZDsy1qM#ud0j@HX8VMl2x+q%ShHG2C&Xb2E6xFXb0Gi+L)#j{9a1r-& ziOLzvFt*!&gvzI)ynQBsY)ww|YB*k-2QnZHy29D2e1gz(3eu9^!!)5-#=kA7{9%5| z0ZFQdYYod#`-1}t;$T(R$%xt(Yqe~9pPJ}J1$T*+UE^J$d>ynSk2`R##ImX;AXVfjax%}>iqayWtC=#CM zhb5|h>rab!4mnWSIGIFvkkt2{aO-r`p^=BFZ~|#jcDL=;zY3Vw-_iz1guIf!K)Ogo zsp6suxI90-a9r(7sQp+D&Gk8bqsA)>PtrB-LVWYPRh({Nq0NjH%k2@F-bRNru|1B* zO4PnkVQQPxQs=rcha#w}-)yQ46WV+nwA3~Im0d9N5+n3xrZT>G%Vt7HW<&NdsGHdZ zvu9%}`%K&w@Pa{KJb$V3;$xjLXLQXs7r(7qJAdu#H2#`eHSg__!#lZq+VaIiU^w|C zZ{hxpkVCqHanyFFTI=^wtVYR+F4wI=Eb=dzW%3oQK+B-e>7Ng$80~IDutWCkd;PqN zd7n9%(*G?P*sV*TIf9iGk_m_?=dSOi;>$2Gwxgv!c|N3)cetx(b?DitiS))`{`cty z*Pgah;g8~Pgr!(M%W7SME%QGAIzJr~THtc*|3%L+MGeCVL4EBidMJyC?k^m(K=DD6 zTs7(c@QD~}pdf3Bc1MY&rEbtWxs6hiVqW3k&gSTVey+$e^IHZ{J!R^Gi8+1AC*g)f z#j(HFuc_)ITmnz-b&m-k(#6i5P6l0yltn3 z>>l8Zu5sQ_IpqrLxK|D7>?Tgw-K!;XWt2T8?J{Cp+h0sEtLt-l1?nJ-yOGwfk4#_l zy>4Bok7~-w>z)xT6*QQ?%`JI8Pjru$OjXf}U-sbr`}Rn5hG^T?eK?e~MYz)KG0Ii| zzlRpO^W2VI#i&5~S60`6rb*Li0~MxKSY|uBKxOtc#;CC%o$_CQ^U|AdM+R<1R}@&O ztuw&(+4mkgb?5bMSQZ{}SJXrrEu@s4NbxX#-QJ$n6c684hEx&qNTtX%$6qhxLx{n~ zM(|q&rHN>j{&DxN?*Kr$!{va9_oKx^?}y@-Fm`sH=#^rj_9hU|1tYidsgr6Jwio}| zv;d!uiN`qAJSfRQgOrtm5)W%DDXFRv{+S{JHLNrqB~c{Uvw{kAk#Slwh7}Xn&$l7MH~wjf6oFTz*(;)dZgoKZhQ_X&IBib^t)C3Fr~I{Pe&IWICm79 zQXe>VGFod1B37Q7eYGD3|B%pI2GI6J0#Wp$ordk*0NmfAYw@{mofJLWvXiea-DlL# zIC~DR_)_?1|5S_LC+W%2jY{1pGJ9(tTgrbg^LTS9!w=Mst8vkC^&f2$aw(4T&;_y| zV1bLlOg{vbERpkM3M{~+8nDuodg(2>x6z7s>ahcn0C{C+~t<UT6)qv>O4r3B#Un(L0 z)5|ZOBJ%r`pS&r6TlGV}%5|Mx@G69%40N|_rOSkK=jfa)3hepfy287ZFOFnLfj23Y z(7d!EYjt7e?FU4~-ua5U;gY-mnk(L#Ir8}yl~OyRE&H)OqgRC zcLn7_Vp@5)OxV=dI~S#Idr2lQhi{EoXd`DeaQ_B}MjpwXWEt|E9&Bltg@yO74c{B3 zqC;qD`}sk9?GSjZZe@!1qm4%JX$a#WA{X)%6QQiIyy!_KZG!JLmDhKlH7S_{TMq1( z>|rw9Skg1iStTgfAWMmB!tlPIs5Hvq=!s>?JNEj9Qzol<;$n!F_)O>*w8C)8SpRAo zSCo6T^5CFCmf=ATkjJcL6ncVHc$m^erXKF#G_pBI(cs0gU7|BRCr8f9Sg6&~Q zhz`1`o!>%=A8Rnxf6I*N>vsQGgcwHFuyqvt4WRS;=*^V>#y4l1>)D&#M-%z<=@2f+ zn(pP+P@VwCn7k!jDKI*IQ@H?lkYWbE6QT0A>C!A?QC99xnNXOTyv`bH*}G8a zAC^^5VK%lEr)0{Hy#kR4YB+t`qVz8B)7jR}l<_9gipU9xU5;u;qlo_iu9rG_o7K05 z?4FG8aS-LQXIE{Cw1zEXm-rroSJtv|LUaQq`0zP~ys~%!{U5MB;o_T)7noNJqgIbx z)ao4xGrlh)XY=fWf-=5L1|mCI?S$ZgbG-8J-w}sBp+7c-K3Z9}mdFHZGs6n=f5UtT z@D?>PF9hwb|M!Msz7k1Dc_O>xU1-3+95+-MpcA+k;ZUGoA;@j{ZFy!7Xy8=L0|UE8 zKu(6kfcL1}B`tk#RMn37B5C13q3N!xJ-6#_j(XnVX|ZSg$Nt9V7FZwE2V=LESA~s} z)OlM?Cc_gmW6pO%1EN3+ewQIShbjG3F(au@=cqD@OQ3|OKj-4dawLBa{|Tb5M2lY; zR2N+J5@f&ItS%ci>MEzO>(^3MWXpCXY(OxF#GWu!fayPA-S(yvMDA!@>`bI!q3sq_ z>Jgi77wjg6Bv9b_BaguoOXZ;oWj0MLjo~rG7sWb3dKbv3!t@$XB7$g^-$OLlr^nRD zK+QG?{WBnKyy8J>-P#A9QO4$_@+7NBkr&OKeCgOLvZzPr-EC?H7Um<6pHj} z)Mx!c&|QZSOZ5R&>x!9Q&-IpPrk~7-dTCf-*8AP8P?gASMd4PwNZV^Q(2HcnUI#{eo$yO zqMpH`VX7v!$HIK!dIU(v8p2oIEAafxVP4=HA#=MMsa>b~=CorwADmuf!Fr_6zGd=| z2N}XcF4~6C^|**5lLf*)bWQyPbAV zpx9hPN_k<~n2GyPkI_-iu7qX1BG(#){l2>vu=tGS%JpHt8+S3|3dF|=8+?#Yk0Pj2 z6O$}J4x`6E23y-%V1v8@#TdiGx12s(QvEs?WhFO#1;!B;5V7WM6l=30!h#3K+|B^} zIK)s)-Gmm6UGxnU)2%T>l|0;K>5F67fcjrv=6^qBXwm{tCwN%(ay~f1Mcu@%Ej!(@ zt)Z%PAVMR{`y1I+*iVi2SB9iGwukJjPY!^r2%6mDjm(DnL_d=5Qu>%Y1OU9V}|Q)-kif^XEn5e)qJ^*3VU_nn3BW_d{wNk9EC2eN1Rbf;5St9Y_w*hC9N zQ&$$_lYPXq_OEDiL-im?F!_Ihh8~^N;kwy^?Ly1Ns{r})U~{FGhKR=XPdVht$pXUk zZ#D|{&df*ajpLd)Mxm2J`mKuL3fFa?UP!{0zfA@{A7d(AoOjovFv)e)0ZYEF0=weV z6vvs5Q~r}7fR7&7a1d9XUL_D$)g50rR?RLC4%&ekp8iAKC)n47b7 z`W^Km6ljIR`gd6cE1Uztc!d%?YRQS+6X8o;+(BrNVu)a*d=XjS8U5riA#;~%()`gD z_mcrdiXBbfo$KwpVi6`Ea1S(S@KYqvfB^rRQrAS}nd{@h7(_5(O5yV+(!eVsOj#ZUC=1`dl6;VHlAt!N zIDfC656K`{{_e|nHns?Mhu9A%kU^Hl+rDMZWyRxaC3fT7!F*dl_1F9wlfsiV*33!v z%PMDoW#-jY?SON!=kVXFb8IV&m$RkqA#Oz|{}p9rd%K5h)o!MIGW$i=IYuD+-1J*3 zAOHFy3Di?QDD@fdZ&*un6_YUT|H#yLVVosnEozP5exP5s|C*xC11BR7O&WwLdR$@K1_=D3PM`>E-U2?G0Y3>cVST5Z5Am*p_!?1oM`XHod=M?ODbkNw7jV&j`OG zCbYf?2@r^2BL3W!i=N?`V#VSM4x#5oXci=6BU>V{|Bdd1s#`KS#k9;b^}b}Db4`bG z!cTzOF*A7GY0z$~jhB@ySyD`4Dd~zFBs=gP2vs3qYp}53g!flG@!KLMOa%@s)Yh&~ zzxIpbnbwbt9k5F#E}lO9KhUzIs+NOf(-+oV(0D%%e-;;z?)`~owD8@sC4ok%N=l*i zOWaCXvT6QD?t+?~X~6qsAhNK@6#12ZH$2+qL*=aq%-#mP-+%ZWXqIdAwC_(qB1dUKtksVXd9-t&nJR9^oB#m(^06g{Vm4stECA&V1Zq1F}C}0GC-nWySZxL z?&4Y>{4e@YYxgx@2{Z27_0pm+?;aW=19*8V14E&z86QDtzAO_I!bkfKDUtnK`ljPs zskO4EIqyG0EKUFU8VGl=7Oj(45CXrdAe!!Xs2tjN{vYjj0|-oZa*~?EUbDU8>HGnw zNiZoo$bn>Z!34&nxzLbF78QwtDj(vUNHv7<_IFk0m z_9%>{SpBSbXj6mdlX!@Lnwg@Flfwg;LAS)crGgC};Dk&*$nZV!QR(WPF@=<@=O7#a z>00gBwqwBI@Qf@lSjn)N|4W*EW7o&^NR=t-U1mJmMncfajcdF6XNM5b_F?U10ab*M8|X0BjN?~%A47PkFpZYFeHHn! zd*PR>;5ojI=fh2`3EI*qV2*thJIP*R6R+80F4L5l?f(7rBaBR#-YL6$eiCkJI7=<0 z0b;9XwM_6pvd+2Ku#mt}cKn?^L09U1CZpJK)WDl?OOoCateR7xNg?C>6nv1#+tVye z6{RfexWtOwr|rF1&y87-fvncbo>Q(zbH34g4wE&oIn04sH6$<_G<^J>W?fTz*Zi%G zD?Jj!!K#=ssgLUeH}q6PT|L!{C0>n55JqV5rUG;F0C-e)1!BUnWEe0sHJ zJP)jH^VPl^cCRJ~Uqux2m=pd-X#q4jBu7ug1Z}75M0mS08eK{L(S|Td^xU~e+!_MOD0z& z)Q_e9o}ZoRnoE8Ce-xc}Jk|df$3J&i*X3SU_PV%6Rz_r8T-juXjOf}~g(5=kz1EdI zqr{c0LMWnn)wOR?t`RCBm7*kje1D(c-}mvj5aHZ>>T)1J6SIAjxS6))b8^UpD^|c50EhciQ5*EUdARY)H2;Z4%gj6ILBj z(yi@A3@mfggT13(7GK?cNqamNa@vWadSH)THWA-|xVH~pTc}lyHV++9G>c-!B#vhX zxsy5a7(fu)vp(H?Y3C~ErkO??AeDl9g& zr>%WtejZA@KG7+fTe6vJgRCt=kuu%7IXumW@-ceMd!NUOPvbZ$Yrd$@acYvlJn(lG#&>GH&$u#0mH@S|`cT@HXtw~PBQ=o6Arb#*4u-Gu*u9~GI9TqNND1>$D(9X$ zPB1!Io3k}@`X3anLzm8_;peFW}@{H zGGgv=3Ph0}cm;S1l|QYGrI<+Uk-3%5m>!#?=3e^~DU8w_7=EqEk=cq}EOU{U?%?b# zVBDW^Ae#M-UsD{pIGlltB!EpXgX3DFRoXVw=w1GOM3M7PDkKJf4axP8H(4UyPXjLg&g=~>`& zE^67uZNTPzi#Y7xD+w^F(2H=>%wAXg1=c?l6yU#u9G_8iaeHx!6UJ(8|B=s{C=pcG z6kyz~4?HYUecZVHuzbiAM>sY05cP-Hzc#Y#B{M#N|q? z1F|SEPniFPzaQ5+Gr!Ud@s8G6Yogtta4QN7&WT3~q|0bN=-3yQTt^fhAy~xc6hHY& zuvF-GQmL0RN}{VLDvCNkee;5VJzV$w_ayz+X2BVace0VOFns>E?wXC8o-ge$4>Twj zWjcNFpk({?rfIW812CK-^uG#*wE{66u}cY0_APj2WX$p7ETOOB!f*p>)T+->B0+G4 zk4deGFn*_f+_+&acyc<(Fz->s*QPm>qB@8ij8w}Rd&(F1bPlb1wCgS^3e0*bkaQ@o zH8%YZxETC&uaqLZ&=x`KIzkDgWe4 zacbEVZ^B!{;m*1P?@gXk%Q9*(#3;2oV!N$iR{3;LsJh;Uuq61tnO>aLt?==0zp<1n zUh~`<0eSX5Gl(pl57M;Ml;m}Au!+L z*C$QLNCQ`EdlDhwdhUK7Fw>JH{DM%3kHMPBm~u=}a4n|-h!S9D5T)K{^am(VC}5pO zTgk4>niU0I+A5mm4!oYy6-S-#=VrNkcMZMTr^f=~f^sfrLLxQ2JC@qF?1fmI4E~HADpHUA zCNVJUf^mo4#v|>^%BJ^t-#*lM|MYh##^qC*(fv@WiRVn1^O#Oa{*i@v&)UwY zD60k=Yi+3w59@;EClp^aO|lI~%%b>0xxJRmO;N(pfL#5mqh|4C_*v0HD;2bHS7E!M zg-XcHLKH8d$*##d{M&D6WVWwHR|$7o^h-4Qccn%-2$-CB3SmpEDlZ#pAQ0au*YQ24 zn(As{or*aXWYLBa#|~6}p7(Oj=CxR5e9^xGrOTZvl;1V>YObxj9Ohd&+wX!_a)yK6 zD#boT#2tuE{N?>L*VQ_NA4>TnQmqO6o7tXEood?f-IE(v1>S*Zqp^R4k!n%{(spmrmc%xaC; zaC_JBd)MW-LEC0Ux6!Fl%+y0%V6T@aX$6Pj+ar`hdafaZrU=&JLk(iBD^A<_f(BXB z?1D0b_W<7;%8s5HzWxJ=14b0mPoiEJU9&N`Hq`S$tEcn%o<)`7att6h0N(X4=!e4#CN6Mw1mE@JNN<)=1OM6Z?H3$?H5`9T-~T9V$_ zMR*3FJ!J@H=o>`F6{!Lyuy|toMpWJL^I?85BC|pmBbQdZq?xy)X9e?(r>ESoWSQ# zf2^D$+i(PsO?MC}f~35rkp1e${qC+Tz79DKTAZk7uZ!lQy2N97^~q)*5QS0nHR%Wb zjE525Vsevbz3e)4NFsO`)E~PdNPJOg=C@P|7oW^LhNH*);%5>1lzzcPRyB2|NG6sA zvxtZ^1C7I*Eg=Jjui4WR2bWizwydGGz)_NwZn3VFpJRSN{xcgmJZyyD^S0F3b8yJg zYdasLv`xyfYM164Aj|aNI7H^1svCCP>@o%mjWLu*I;M($ID)LPb13E$)~Z)p!bNJD zU2-fA(Qx_2`wbnR4bd2Fx`^Q*0leHQcey_q=f%IOEYSDtb~ldFzxME_u@9Zk3z0f$ z^i8`V%qubZq7EDLckpNTlLRlMo~rJ!+<$=jO!gmX-c22~-kFz9qEj05HMJ@XCoUlm zdaH>mQP?f0vwpRaV=84a0>wNQ=Cy^n_SeozaXa#Q$D1^hx1*`~wteDp`-)|Rz$=i2 zE_GA^KW2^TvPV=|D|6rMw+6CjGm8;)HLe;Rs3 z2VfmRDkr!|)T-yTNgyufE}rHN@i+2QxfWdWuXEStK>Fb942^?5>a5G`9V@+gFL(&z z)_wLrA}3{{%_DW4$pTM#cyWJ|21Ld6Q3TPa)q=eP?SrA#nP$1_p0Z8K(w&%t#G*MD4lxgAx{|zpvc;%&PW;yC$HpB?*_l zROpWd_<~m$0TB-yeQBpucn}@1bBDstFl51IE=cFmoW1WtQf(bmth{@>p7fk>HMS%C z=YYtK*6HyhjUO-65g|dDP0#&SZKeg`$U&7INjaC(|2{UESLIgM+x6ptw=ShtXCEx1 z%NOd|b@JPH((GbA#$Tvxm)M^Ex8g+^S&^-Q5j~g zD!sT{_^!eEVOrO8Pw*iQr+&5ribb(|H*s+kLJP0*kO8MTzEwi+73~Q>1InIn9CiIw zUQ%<$Pf)8s4L1t5csX|3{>}#Lz^0&(gTJ`w8+Gd=U)Nn~5}`=KQ{IVyJy)&-Yx&r{ zxJfgz5=T9{Tzz6@=ns+omwu|jD#W>rK)Lc>4uY zDeWfla=^nS7;Ef9(p`$aEJNA(B&5ZGjBXQTTZ~*+>IB@|kG-GQ#{hzZ{f(EaSzXOG z@q1R;aj1pG;idV9@jpQxi>Bhe$Zkh#HVRxe6H8-97=y-x7myw-B$x3fRO^a6$ z0{k^x_=y}~EyWkH3KCpbIYjO}57OL#nN?YK}^N5scC24!c_ra3QT**#@B#=hfT zEFxd?X*pUF{^7(c5$0_g+Ugq3VwPrH{(K`w`QO6H+Q~xvsa_MXlDvh$HY+X5iv7NR zfvWpyi}X(m#289Bv-^DW!Xyp?Swua;H86%@($Gk&JH#uG#GL&UW314 zNxDjrF!rzM_{-B`o=ZXgvu!0q*A)e&160YpcjVasPAoKH8Ea>Y@!un0N6ms1IFIli z@eod7fRlc-utp&#)D$Z)n~(`y)+JpfFKPK%#IGaj3yIi=QX10@&;+K*1|azr(Ym`X z@0uya7i35{a#5TfSt(;wZK8SBc9z|icubuXrHGLcQS-J2p*E4c#FSO%w;G~bGSxQj z*}GXIWgHNzw(N3tg05mMCx97X5X=+)NjpX$D$F~E>&j)R(#Z1a?RlRZfxpIO8-Rov zhTSFMgg7$3sOnkhyWyVK`@an%h4&a-?$9zA+oGi)0r%>lNX}>N$EZduKH&xLv;(Yestf;BeAyta#DxG ziEuP@%7wHt_FImz>e2FR%_v(BoPV$Q6+#ZN7YN7zpik0!Ch5I#=IW5@Rya z*kJ%P3Qb>#&C6nNzG6GX+v>FTON9u-2G<}XQsm>;8y{~!3zo1s!P3z)XyV&MGL1N* zzrWIcJX{$^%85AL*&`Jlw5eZpx^dm$LAcgZ0Pp1K{e*1ZItF63-`Qy`^Xg5@Q&2lA zyv)4Rez=u5Jzwe2>`)fUAY$|w!527(zW%v37U9q^X6#_6AM&epiM|dK<@0jMSHZ`p z6|~7_D3yp(7C+HgM9IVVO5kVeT*c&A{^+6n5kETxXnYE& z0QbZ?qY9GvlXO@L);!MqvVStNaBv>(o@nJ@9Pe3tyseRY5_Ii<S(S{t{0H$c#eAPtNsS;f*bPIAbatubiWyQ2u0A$ zWCCQvuEIEw^Nukbm*BZ``ajN{j;HB(;H=$v>stcPf7&HZ*YcveW4ouZa zO-Zh+E6LP?vmV^CJ@bf(9gJ3~gJxrG0-xtZ-^5%z`2^=9@&KQBg>8q<1tGTVOFcz}z_|cT zqJGZ3MUW4%4sw)o9xgB~;UxEL_o5=YDT@aC`e@;|&h8t;_t2GQG8{%(!t!}D&BCoo z;s-VG9SAZZ6Qvlx&W#SIo6-W+}9^&+!f`u%2EI@6};TERV+ihIo+CHV@ApGalbFBFOJgc%L|Ti zpbf=Vz}9?-N$u{L6Cb;-jrWu%<|kS>-N!v&X3OBm?mMf6gRk8KS+B6M*h{e(fvGf)$EyxV2GKx>G&*P3k(>8}6~el;B9=ur zs)H9=D`?V14hYdkxcD>^La~2y6J**(SIHVofih{4^gW^&dr{7%gvb2ZN~`Pu0(`Fi zy)n0+_^>RUZ;eDTU~C6Z(m9B2`vffY+vhSZKil9U2wPVt{Bm3EeWDXv%86Y&(F2pt zGWhb$W+|yG^h{V|!o4$%m%bnKPY^5ou%s-y=yLnH?!AF2U3o$HSyr7!CTzMXbN|hM zz?RsH8~==CI#dLT^wzW27*{$T1c#S#26Ir=&S26yQF*I|{hqfRWvfsP+`i2wShPK= z?4>Zexf5+lY)!Oj)vvZ*LKi)z4j{V=}pQ27GroQyVE(!d5wk+sLhUbN801a>e5BuP1yCl!C+ zJ4$;9h9fl2VqD|&piX*_tVp8pzc1dm(l?(v&CSKHvbn_#s=R5o=)qfG9;2@v^Jd~4NO|qhc4~n3|GHC963R75*pm2e zeg&hosw}|wHcnFBg*W=ll-UP}RHWnr)Ev49bL@4HUdI5J{aFpoCE+UgK@vDhRkCK- z7_|~(s}7zU6;h>GdY5t;bDD&CW%n&67r%0~-&5wi|vjne}U72R*@MZw(1C zJ^vyro>0cEXCqUO_k;Vs>!Zd2%pOQ$sM3BVQN+WWj}tb52UjaBSiHIpBnVDW24PG3-v( zzP+&#*18SX?hqvH6(J|_g6L>l@wQp)c7*;9L`vx4Y&2eExc>2#p@AzB+N!o$j(2or zJR(Cj^xfW#YqK5<7anVcH{%rxpaPpj)7DaEF%L9$P z+|d{@u1FQK;|{%rI7SUD*J*zAD^C_~(~(0GGmlLpReiE*6~LzNtsNss@uyy!hdv!7 z031Pv{{d1y_`!H4T;A#gP5p^?FLwO~qcVe#Z#vho z!J4aFJLn2Rv?Z{GElTz0K*ic4@36m({&S>I3hEdg#p~PK9lvOi6out9kvvE3(N;0t z_u7D-v`H^t1SNJv*uV@Q2E>@b6eOp-?eu*1=3KKH5SEkP3H<)bT zvG5;oiTILFI1{-~0O#6}Px{4F?Tsq zR5XqX0Cywg8|g>lmaPpf z0NL3)*~FH`EHU{wgsaj8R}%#qRycm1yG#)&3?P@(MvDz_Cyv0~xk@mlP?c*)i-wv! zbu0(PMW=W|wAjKSN_20Z;FS7&JJUus0+j0z?2-{ErqSQV#|f-37N@q1_?i@uKFiKM zG7rdMyRR3Yz@4G}_45@JTVSyZ`O?<`7cAabMxV@YDo!Uvxqo9gs-A#k6lCYl|JJYs zvx)v3?V0^^)?Q&2=Sp#ychoJ<^kJ}{vWE}qI36{t@LQ!xZ>3V~{N|ksozi6e(d-k> zX(G4WC?yxm5I2pPpE{;BWbK*zrR?ZiF8*?HWaaZo%odNEvm~MNf|e+#6Pf!NwU1Xi zG%fR_U|Y*X?BBXrsiVzGxpAu&4bZQC&vgmB9yiZyZfMo=P@7HV-8%&hPZrqNrR6RD zk+0hm*`E6J0(3Vs`yO{_vyrj6D5}U5+O<0^^!2N-a?jF^2Vq`dgcW6RE&B>*k)yD} z;;4mjrrMOGk}fs(j||EGqTM>X6`@!TX8E_#2U4hF3gnA9O56)QeHg`$TkQ5MWsS4s zH$MgrYFgtcE|9oAI=1YZnQ=@Ts588mPfpqF@S=wc4U3vyoTJn>CMn zn>QeYUGZGYNl7m%r)7gzPY*q^>6Fcj6wp~V0=>I`qmxg~OVmsKq z@t$pfnce zQW(`Q!_FWknrh};QHcCI>(bCcGRxg1wT5c^%`NU|XXgkq{beB%vX}3z{DOXb}WB9^BptsrpBMRk*na@{E!? z<%nIk<_Y83WT!^&2-~wfq(A!QZm*itum1DH<|Z(oj>aJW8kg7RQf1FSfj`!2@2R!o zKBkuireDXwJdi>{QFr~!_1FM>u1pTU1tnxlFw}~4LA8Bg$%(7?qqsLbaRtCyF1P5<07(q33e)>PBI81=FM`AlDbr1*HGT%-^r-MmUZfO1iPv~v zgR))}jLof8fmKC!aJ6z2ebOx=znh1u^!A%pE+|x!zMlC?5nf+dhYDMp>@e@M-i@Y4 zMr$eXG{up6xq$Si$|-6~FKgYn+J5~rv_7!CDY|N4!wB9SpOwm!+E20p?JO(xHlMeg zUxQDy5L2D!zE}1O#><0=<`)&`#mIH|fzIbEHFla7(~ExkB7eLV@}j2S?zMe454(V? zS{DAj3r3T28kt_NzFjw1rVLNa4uW9;ttAMtiJ$@-ScS`&qUQ||t1_MbcZf$Hk0lw^ zv(81ZFU>9=!$U{! z@hXepGtNDZJrb*t?UwoHKyKgu>o!njIQKGYKep7m^-Cnp+5uuAY-r9xkdDSwvy@U6 zlNnaXC}CU_ldbYdJR}M@BZHcQKz23&;wZ&(S}eN4)+liK?39bZ8mA&Aj$4>o^)!Vp zcIKrzkZ(gI7O^-2!vsiWvjM3zp`Z|(tcU?*Q<+Fns_}vUYqPmnxzIC#D+H4ttkwWU z-kK}Kq%V8n!u|*SsY)sy#=d;9SjZ-6*-ouzz)<9B-}D5>`2cn0(KXpq*Ux&=C2Cg; z88KW>rO;EbhS8j?#y@B(r&N0m+5jB5H9!rx+#}7P{hwgCz@)Dct^pV>0u?cUV8y&O zAS3rnqO$ES-m$M*{_$ff&KdVcXoP*IU}PIUz(qC7^&&?NwpH1!1R|0LH?(ciS&jl%Zzh zX2!k_a;T7!M6g9bQcv#oh6r7kd6VpyYcyJCSa#^98h!f5V4DIi60P1Gagl2DPE%&6 zc`Z2AeO~jLLA>{dfDh>RyKF6RaI!GXNiU2Azc(2*t^9=HD~vHe*Sqr9|D(hE>E`ag zYp}i8?Y9AFw$fzvlt3yG%D)smtOeQ|U0WZn9KC5yXg2t4wOX5FbBZuN842In5Xk4$ zswAq=j=Ct`*r0LuU>g_;Vl8oXZ%{x- z4op((`sp0ek(evZc~I*$7xpO2w^UbS`TRM{(?K-gKL6bg9d6D>fn1%I zMUhy<6hp_82@W%=88V#agi1M4xqP4a;(j=6@-UG9Z#S+q>2-*}Cr&$y*t^C>Jcb6L z{9v%f8Wbi6QR)aJCVhn}N5)b(EWD4Nw&lMEu~YMBKUvoc41OmNTU}_R9yRCyhTI=1 zs6xR$E0VjDyaXwv<-@n2{!$E{b{lkasEJN{A9RVJ6(GsM7sa~o$b#n1L?-ryMc{hG zGLrI~so`JCs;q}ve`8J_YlJnlcwn23sm~C>;9OeqJ)ap>0)#_BQqGisijtgfewVx^ zg@;fbm7jE~K%8a^fd_iB4awa<l^DmndkT4DgIFS5t^5R2QuRI|FIvj=_sIJ~Gl6 zjXbn4AsWASVA?2Mphyxt3sgOxSJV(`CacI*46u(nF1=BF^Vl7u4&^6wijxwLT1+R~ z)&B=P2D4l&6l6)W570IH~ z5-q@g1nbcEsZ_ivJ}&bbpMLA=|3fSFmz?zW zt$(Wv&i{(d6%xh}f}7&=*8T&^(ClZ_k+eQTLa7J!;0uIwj>iU^p4o+N@m6=fw(>{| zS5N?d{7IE69K&6?I}l5-{4HDNigsMtm_LQ3otD4PH?c%ZK+(M(6dZfX?Z{iH4({pBZr7Rp4ZAG4?*njNBJn<7= z=9I12&IEU1BBspx&M91O9;drKq6vi;P;aVW4AMR8@a2Y+g*pOb(M>H&>C&p!}&=a?WuK5oh8=(G$%Lt5$An2u5&sGCj$f5$6bK^1QqlDi$wGmC}VV zMBMSOgci2Rum)`j!8t4cHmKRysejhfr82Ez*M*mD*AS0jg*GJxOfD#VufUHP)F*<4 zM(Uywb~4Qg#qjH9y5Xztd}NsZ`@T7@=RZ7IfXA<1M<2agpKV^%qb}l3c7Nx{|I8n% zndhv;*B9s*1o3?`SiJaa{oqYs`6bi4R>ATv(W0eDZv4_^F9+6$cB^awOeQ-kxx1Mx zSF6>!jx9LttO=S=-o)l+>B<=DUy$h-CX0B}2e#Fpo7?zJEyie1+4f+O%wIXN*VDn$ zd!C})s_^tB#zXd^sf;7+hV+$r4s)Z@$*}`lo<}ep$XmZ7KkCOr^XfYDjk(?u@3t=X zqZZbcc%9DeWMKZ?19^hEqYhg2KOg-&{@e41J27COMXfuVgRN}Jw9FLEW*z-za1jay zGb`%g*aP}>uS3bYHhjXSuabJ=e^V=U_xnWm2%wJPTiGA$qo}WD7IBVfIfWzlS|dF* zoA1Ba?4Y|X0(JS$%R{{`^TUkWb@Ul|T0O^UGoLU0)F-5_y&)aNY(C%FBF0hgNdb89 z!!$$yJbHMI>18dJ!K3E}PAEV;fV$GLy`}ZTQBX-0uFhu|qa!8On#$m+Bs)_ULREN0N0Nr(avhXh5!JAMude zO$)zIBpiFlQWCK$T4uX7<3dg-aU|=Vw0;efQ7RchUy~C!Rpd?}8MiwMWi2Su zhXEO4Z=7n^MVtzdvSqRFK7{4VBt(!nau;AR_ka;TbjanC*gII%B2P(%GPP1OZeGK` zbsTORrop<)W#FI$RleBmQrjWO}QwL90N2H*G5kQC)ER9 zDzIwyob)&{aRt7qmQWjsqMLO$N@Uw@Rrp>(_N->XpYKo)pbPGOdnDGHLxY7DXQjT&BKo6W` znWsL0y7*y(8~ztH4dio+&l5anGCT5y5BhCN`3>5rq&S#{cD@tIU$(pXvg*b9&ej83 zjg}b+8lN-8^FWez>d8mf*r;+W^rYWSyaUfhcAbK!h3NB*t|KrE%!j#=7FPs-edLi9A; zMW;aWma_OaVUEI#^NfLr~b{f53rO>7%s%aw)ZoO4E z@O#uc2shI`-|?V+F(X6y--XM`9*LsY76m!1hCU@*jTcWBi~1*}@uZpO$t$t=i%6IF zNyMZ@2`Q%}<%!bwv}$2cwX9XvIh0#pDv9qea3P@ZL5kMnZC`ZBua?8=E~l4lv2IDt zR3Zlm{#tfP`XMUA%3a?W_krvI|FF7ZmPa zCAs8uHvZ1Oa^$H;zLNwSwfXc}abY$$h{2_b7&QC?gvqTo(8AQ410_t#XY6+^|NVA} z&vJ15@#%538(J1Qwfg67M7bvKP%dnmUjl9pwRCTyPN$`iBT z{x#I{v6d3P`^Ee!nCqLGfJVnYd@XOl`Z3GO?^E{;y-Bm$H~&O*(vj8a$FK8A&q?#C zX@;~#$c)?oOfc@?*!5q=C*v}oeC-RB41%Ob{_SnNvG}X4Jb{%>Ham~0CfElozoQvB_}w#yYq4% zGAiWy%T2fwO|Y@JfrrV z>%3R@`b7d&qV{H1(i|iu$?q%r%q?$n$vh8MuFT8&aAnnR?9M|`b?U|<_FhTRF`~*ljsdj9T!~6qIoC+ zBPQF=cXO-H=$*c8=f8uwI7N3uFO~6o-U@);AEZ(^@m=V) zZ?im2=amkztst1gVuOe6N?TaIvrg!TRtF=Ed6F(KORmu{%7QZGliMIT$9egI47HY9IAkh-Eqs zwIWQ!FLA%lkS5&83+z+;5vG3scUfW+Ab^b3E9B%!zgmoE=M1hG2hf=;#qWj*0Z6Z4J<`(iOod|)Fgq+?{vO3Y`{+5 zZ_$j5{=b2c`cCGD|A1WM*;}aO^Da=X$C62}N~{C}H0DoqVZt@?o&o;>br)11YzjpJ z0Rt$9}vY};a!6AP^1z?TmoiA5VE5}8z1fQa)Y^yh|r&Bk0`V6?I2ih%gMVvKsJtk*6 zJQs|Xpn0S$%XVdFi&KSc#JB^nB24J|rZdoEBpXM1i-{-49EG-?iMpb!4ZOHotnAjK zZi=E3jplXa-xTdoE7WM3d@0s(Ob8iX0P4guyoccoR32V9+WI#gjq8B_meM$xqKLGnW_x5&#gq^CW7=QZ?guWEk^ybm=utr&lhzL8gS1~TYhJQMd52?bx3Z+rp zxf?A*9wfZ11;mZ{CTOhNA0*<74(yIo4+!DKC4P3GRg)U<7yfhicVk^wb6B17BUxQ~ zAEZzfHOPEl`hMz4me^$z8(H5`@uTuI*Jm%}^L2%A7$nV?^RDcS-=s;ISpakka7hU3 z$igHZRdafg+x-qV-j22ivfUe4b=-h}tl6}Gzx}UHo}c?00CDD>H~GP(URN98x|sBo z3OD6!($zdmwvm(-mb&J*3OSz|d+ey$UCt6d9K%dCO)&;oKQ53ja@rot$Lj4`!5%@$ zGGn9!^VILZDz;)UD-_exA%}Mby%g5fz?}#XAQjDazrfGRU6y%WYKg<1CeZCBxG5LH z3{BSZ)bt27` zAuC#aGu4-1Xp+$-wp9~v7&Pk0*;gqHr_^;IcJb0?D$a`G1mdw!>JTR1+$#*}UP{r= zDRPVcHTZ*xuI5lH?FT>xme^T!!9|mO&UhlAYFYiemC2d}Uo9L6hPvFs)0Uv3#os^N_! zVHMrPu9MOq-QaCy5UKvhzk5tS?ZV7t0XAP)JYHS@u;`3M`uOCSPNNj#^%;KyUX*R7 zKJn8WtT3p?qGs9H!EMIWY`fS$l{CDhUtpUvE_gPBIq6nXw;Yo5WqzLsqLycsb9rUy zD|=h4a1N{y?wAO*K35J(^|n%)Y`!PJ7Op4T4aCNg=F&zYNuCY)Jw8ZK(UM!kI{;`1 z70tt@%^}m#@#{iqJiQ8eXtWeBbU+3oi4?JIP(%sdqsz9(7b3{TV1UG_v506dk7D^@ zmA+^rX|@kb4hq8Ac?JDp?1Yz^4Qy2Q*Oe%0I@fCuZ@QN=_;~dMp-v`tbXI_&8vd%xFfpZr!GF}JR>5WBK?gjr4IWhKJ>=w zp_^V$rhnAHLK)>3cv6W7`>&U)V^+LNpe*gS0fjb*i&kNc;FXWWDY`H-BTaH%x97_) z*|p=L<0bzavt}ncN(Kw#zrH!4v@Z--4lXz2^)pj9dvY$KiX-E#(K{oE?y8Amy|&QR zpt4w%srAkBNshxmVdRw|wP_(}ui>+Td>ksETK~~u-RmE!ckVSM23^8f349mkOc`-z1bBArj$pWa0mq3;`5X1bkHd=TIL;$&$(0YMoLUqc|&lYSJfND9Z1;+1PsRR6h zPf7FB3-73s@x@2|PRMSR+^;*n;@fq^d0hYmc)Aw0Lgol&(=7PmXcYP=3m3@>fvUc< zW`y&`$)-WX1xCqlTKVTVyYXF63o}HsyB>shk1T@hI@3n#S7;y^>CLlw6=q4gRBWGqTdWC!O)w<*=IN4< z{PPkgE64pHVQoNJVr-4TWe~sT*0VLs{sOmgxWHa_e>0!^Sh>sb7uBB{UFqQVzTg|9 zK|DB>T}(1yuYVe}XCkINvn#phP0DbBdU?@}u-0s|?N#JmdpMBN9f930IavwmJNvw( zgJ&xPj7#~Nv_ue8dIx&9%s$D;Kiose=%+2N$v(^C?B*4~esuf~HqjE@9@p~J%9K&OFBTyK82fP`r=pVV{CPf@D`bQ5 zd{d_LleOek{^KJDU#p*D%DDnn?*Z>VvPz7uT_n|M}HUd}mn^W{q? zcT$>_aw~uCU4g-e3oMGD9^Wm`!9wE6cHA*1XxBF;VyxxBR8e$1JnjN}?7naE1Q-|wa#&eP{aa&9w?Hp{99*o3>!-0wykGF;ayJjp-CD`#iUb-GH1>TP?kshB0TYAeSF-SB~B2J2#kK- zr(&*?i&AeHpDA`#is1=!ayrmcs1R|RR(d)3mmA@ByYu$I5d*YL!xVSavXeldu|44b z=L^xoxB+u1cmBB*F9W(=O!`)So5~JT__`Kt_dNLVtf*QO2URAGs$^1^bGbQc_l69~ zNIq6J3T&Oo(?e`&m3RCg+GAqBJwLsAuEiQCWsl?glV>>+32M&>DiUv%r)Qkx#2;va zW*+1P|4OX=OazWyc~HVE6W$_U^8WdcB%74Zm)$W~7|~St?J1t)$J07uXVoVVBTiu< zx0NLfRLAitJirE<&CZcQ`j+JLSf6na%dYMPqMtv@5LP(z`aVlF+9u1WWU?&(} z50|agwLLlPhbBc+GJ48W5D100pD9TswqH%%yddEjEJhs2<0?gsOh#a`wKF>S%WBS#&ng0roqbCI?W0L}- z%(+_iC@k&?=a$Y8lLmFzX%UcU%P4WekKL+!qKm5f<7}DQ6VUO_TDF0&Ad2zT{YYYI za=A;_C%bzps7f%PPKSMI=H%KaRbs1!V}?owC~=2=L7fqN^Crpv`dZv;RFL^H=VZ>0 z4zHnGO-00SFrUmuTMl2^*tZe9`PrL6`fI7NJn@Lt+PM91r=-bbT&MBi!| zi5>EhneLgqhg9Mt`4U>Ul(h3zS*S@r$2u13^A+)BVBcoe$~%sHHl>^x!9iKmA{?>D zXZI1B->EACkzP5@uNYIVDC*gvx>25T`T9R*s-Co8y1v0{$7M>V%_%s^?VE0W{a-I6 zXtL#i*D^let>{N8cAJNFJr_nWN)N8wRRnsz1~5}B7jix4U7Kv`j0|(XbiHR_uO91m z!g7nx#TOqR7U)NnW3P|yo5V5QRJGEw310Xh&6>GuqikKc4uBk%r!I?6c05$Zd!954uH2QnK1*sIFY?9vUCH2W;q1;`wW{3MEa ztD!YM;9B63ZrsadrKt(}HeQ(bbscJ2kOr&TfAyot(HvC7zIpO7cQ@5WWMpO*@ncOf zEtSi-gvVy$ZbVnB^g@GkqX2$xUVjQ!TFRI8)yH@sX^|=+dR%|98PxPFmYa!Ar4$-# ziRSYm%TKjheWMBxRk*ZdoJ<>O2g8h%Ghbd{ZLar{(A;ga9l2)3BwVUZza{|QJ3d9u zS;1Gn%vJi4Uyg+(uYmB5v>RL6yCe6&7}wB4T0{N*TXj=Q$*&NK`!}k$BiLFzEI-rz zyd1Jd#_?6QaRQ|#E#m3zS}LNyhINwDpb7s0kK&bC)?8+kYq}frP+*G0Z!{OrXJiF5>ze$eg1*FJC$tsJ+5k&t5W8io7A|)Mdfj7{wPaM=@+gwWtDB zLW@1~%<4^z4KMnxKUqpqCj&&Xd6>hp!sNYLdZaZ=D`{f9hlI{dpa41X{w6ke4dTAK zesl2Qn+{}6mEK|@!><*4{(Wm1oaZn3;>KOqr=Fc{b?th>sr(_Ay6avvHaz#%?xt^Y zU3ZFdaAWviPMw3xieAoi*ARXcq-EF?7u{*XmHANddnx)pM{zxI9;EHT#%3DDrwHLu zGk>LwqXsT>UWI>F+2QFAOkw~yV>BQUkX%Qityx6?+dBAJ<`ef#)#sTBe@wL^8)Q$* zsb=E>Y1YP*ks|%zwjeXv5c_4v^GS&LoRn8VP>>meWlk^XY+5O}h~8X+0)E;N3n#j} zBgw6`p3_kkSV^bn`|``2sX0(5Z5QBGFk$Lq0B=K(U$9;jFhpR^YT1VM{&v(Yzuaw~ z2=jGB*TZVY_#zfyuBEsIDXth7m{Gam9O!u`j*GGEf;30(E&E!&g765l#Z(Y^q3%;jHs zfJB@A0Lq>2Upbv&k=HT=*QPkYM#Q$|np8d`3Ch+jM0Z5o4nJ62avQ5wCZ3492}$`m z^i0WK0V+FYB%N)%{HGV+Q%i3-@*j$j?v|zu18#DBr!kqjvA5D(t&rnZVXgA++}SxZ z9MjJ_=UqB0lv{{dVcMLqISQuP94N(rpD zUKPFkd8xr6mH4h)5As0>_9`|P2LUJl?J+&PKgo ze&>blZU%QW>vB8g1}+mfPAMxGIq6A2hpb9XS8c z7JClojkM%m>Uhsg^rdFjnjg+ia?@aS&1?P{Mf9r2rXB_>n^&&K+^Fa?Fr=-h-x(rE zDp9T(msqTh7AsWGbBnCLeARHI_+?|px!Q{jdUm7G(THC%VrmP6y$!>6~AfuExTjHNM5VrkG>>N9UrB8-{ql zCWxuq(T$4Yu=Ov@&daAqmNGZ;NEIrBXG~J)nrBCS+e_1ryzWL~rpjD(8;-q6YX@oR ziwk}DuPnLi=YJ?-P^>zsF|YI!(iGkHx?cCLBQs9S`NlI{2r1l&Q~;4^HW4UsAnXMd zk53*bxqZp%!+|T3=dWo%WQjwF)!V0X3|Pw~pQ_9ql_BFlnNKw1$*1mqUUB;EAnYPt zz&_p!Ot|Z@d_5(d@eCHRc>Ucg=FMvfrQjkac?B(ff;t=2EGrBjb@J8@f zRNbURoO7O;6OqXNmX1r&mXs+lQibT{xUp$=k zy_~GYNe##39!q)~&sT|QaDG?a0nKGqFJ}dv2V9O4D_L`W8maJ*1b1tu$2`+4BwXG0 z;}?oH8PK)kDb<3uGZTp$Z$H-e*_m+_?LHLE;<^7O*UtX6drIhq6wX4Y65Q#}J^Zj> zd%C+`4kQmI+O8)s?e2bQ`t1TKzw3cBH(UHSYF?i_56D7xmYEI=>zWC)KRpt;&^ApP z`v6WHv#f*kchrDppAlIX6Y?uYNLz%#oNTkK`;7{PU>$Ki%8$$~36 zv*2XUvb&U*R_NV8xlGsUCdCW4Vi`**Uv|;F)HSLu!e@f-BS@&NEqF}AA%G=`xp6=Y zLF>N6zAwef^N)XEW}6)9z1|j|sCvyEcukMMK5uQ?%S9~Iyr&rt;Nr|^RZGKaKdDM7 zQE9UMk(^s^>2D0oTIqkQo(ws12UyKmiz`Obrvm|f>!Hys6xl~@j6jNXq{#Q4``auS zfwW`&XBKB6<)}o%g%XW3Oh)M>LaMi2ao73&*Lus1g-6z&Zw&908oTgM{R61z zKS*JPs{tUVLgCR3p4>GYQdYV)vA>o$P-QMRwOAEhqRKkPqv&rJ2<~19tK!B%J?UIurP>@qEGXbX7U;u)M>qZhH*~F&_ zV6(q=uN>L5Zl6M?ab_KybH=wHroXG}c|m4)oC#!me0}Nzmmwj? ze+cC{esPDMp9&g`$&)@u0YN`VW~A>_R4G{D8<{W6&L8T+Y;W6dab^M~@yYvxOdMF-bVQ`?!GUD@El+pnv@tBR-z^bW+p$UolClM?m)eVn+TDsS#i~ zJY>+81%^%(DRt54sB7AJ0Nx#WQBaSb$znDN~OIGIa2Wi7n(aWBDdQftHJ@nhn~ zNAqH*xt>%}U^isokGa~iCo>fts+}v)w&4C{yz@QxpJ6JE!0Y(%gnB{wlcU8rR^%8twRy41wqP@SInIlhDbFACLE z2Qoi4)quhf>w!$9l>7os&m;}r+G3I$DaZ={7u=dj z1{so~rjEn$$wTppmO^?)TW4CUs_ZVm%4E?KL~}q$cM4V?n5*rom1RP9fX-#_Q?g;4 z>k{N8s7>{DGjj>X>7|cu%c*K*`~#HQSM}xQ(hSCPRyqBj3GwsasKy5?OF0|oBa{Kw z-V|IQ1Md}7i~vGkUY1v))tEf;YTNx06i8!-i{v~|UScwTE$L@IBv~WQLn&P3%$L%F z_yGL}6+a(&aAGuoipu$u3dF%VP!guB;1nUO$Ydm;d}WJ2wyo_#9F0ZTm=viux$SXA zV>Gt1kF>97xs-MO`nA*AfGRTzuMTt%1pC}0a1{LWpn%VN9hHxka49DI?=pPVN9exSSGA_|H*M z-ac@PdRpr;n$WWsko?M?BrvXj!F6mFR}-<2M^LcoB29k6#ehcLvsNnAEki$~tgwIL zHKM(k=hfX-4?V?RxB~^*J3G_cuU@YcSZp+6NFHWT-ZCK*r$j-R zUqT2z|I8_BlmRUU&^;H)L7K<^)FFwG^Lk8GFN`ZqX&&9v*?8~Dpw;YPtkuBM(9DO; zi*9i};WCBW!A_%gT>1RUxvG}!Eh0>wVpTKeL8uz5y`j35WuC=-xhZbCj)k`mF79BAaOvAC(s;NaZ^*czfuBkVkuzd zWgN3e87cRA)7~9HV2c}0rV3B)iQk7vJLT>aWCc=ra^cZUp-dt9kh21vXVpHErydZh zPSIIy=`d!l-y^5l>(F%>7Xk)5*fd3+`1%_ki4&w;RbQzaS|sEvia+3vemAIHZP70w9L2uL}Zr z8^;$ZKVO7ijU3j>7O--D&3DsI%0Ywmm-equ`Qr=rfQ=`Kb6NGZXTq;55<##Q$#txs zx1gZjnCol9;JWY~N^mhs!3mW|7<-*GA@U0nf|&%=tgDg; zVfsw@={V`NLEC_=(#k7JQK(v-u>5^i^F&&hOJ(#oj#C6MA)Zg)PoTAxhgSURvd^gv z(K6z^Gi#&TH0`HF5~WN=o|`!`u=XCPZ0s9YIYnJuZZe374kvx~x zbWENnk?Ku-Hli+3q-faVytZWV&y(n%tM(Q^JzS(v6mM+v-7@=odh^iPPq6HY!5z4w zyhQ)zY;$RCQ%zlLRT#HO`QWw}_AIk2wxzz_a`qS6EmK(YciXSBQ=Vn~ZC+s(YoE73 zSCsH|XEPixa|IaHUwR91sDv0o{{WthBIIv1 zi-#3YTBfQFmU^;tcq;pYKbO&O>U;cMe|qq+tF5P*8Ydt&%^`^xLkaMZKJfQ#cxIq- z%}TH76uo6#o+thTWGx$Q4%}zXo>2*hhWeaZxh(m~uT?FjmtmpV6Fhl!Y;KkPSOl(( zCNR--O%Kd#CKCkKWkx`fIU*de5DZ`$r87HQzv$>{xhd^rFKoQ-*lC95;JzOQ>}rx* z2g#RfY=;ob-Zu9|ek>JenV>Jfh}k!AT+!611M*QsP8D1}m=3n3stJk*3_RSba^|WI zV44HGZ_mncU>}ToCq>qyT9e3Iu^vDwE4%a_%nO5)dPMF~7y;~S^wz&{vA5_-oSutB zn4cbaG_z1?&bI+`ZIocf_U&w?XIye-fGj1DjW>OL(GvhxL$C# z_%Obez3O)!G*UyUKy~RX!lx;N=4$voq$wVxMkMN^5i7mM;?8}i7CHqUE^@m?+d35Y zY_t3jR7I)wt@!rcj^81FCE)>sn`Z{cv0{&jm3dN-aE1B!v}TLIC+gh?3Qg5JdJH@? z8e4B10ih$w{H7q4qkNcs`M%EIO7DvszIPR_a@#qvliDx;TGtn|5==y3z6jR0aU6(0 zD1Tyq2iy5}D|*ezdeb}WaUm5-;S1Oi#!Z-T$et<=A9AGqxpvMRotlbzN^Ue>@yw@>74hYFF)`osa|~`Z2FC!lMl2)e~Vq~$&8X(uU|iyk#jTbnHhQ$*9S^#D~^wr-fqyVy8Ri9 z6(fe(;9LG1>W5p9mr2GoiBI481uL^SSVi77c3@&4s%XbgG)Muz#HEP7E4!o zqwOe0%)aL;K7ae^YgP1bPhx0Z7M##@J96%z7!J6AA3AqcfrMOG#6xq|69s4=-F(Z6 zz&{%>s!s=`U^9TlweXrj12P1&8_N8-_H7_$uu-Q#fd|E3|bB1^*)b z%8E?&*a2>#K{R=m?+yVS;&$XzG{iPeZ1}&t^f=NRxp2Jp@V0M7@jlC-Z6o*PQUTWS z1NOta*A3_&&76sVvpkN|M^bbhH*h7*t#6@0!3=#>N5AH)Qgeij*+gqX%R=C3Kc7)I z;egUhKk&j(?Qg$tH>HTb$>iQpQ=C#@A~SF zl$pPY_o7IUUz&j{r-2(hrmDx!N{u_$?J;WJuCS6dXPuqjCB{t(m~rc?I)8IFPv5sa z;sEKEQx}GKsf>&A!{EKMW9mMq44gcPmo(URgyv3cVxHH5{Ld&w!11f~x+dnGWNBJ7 zqrLsC)B{x0$LKFgK67uCi@!0o0eqVVEN;zu3b=kbq`8}Z-bGh0iLYWDa|fE&S72v$ z2gQ~A1mGOEuDjKFj~ME^OINh{91d)=14%EJrRWQ=G0uif&l1i1k2&Dv(-|kG zv57fJN8~IuYlVg(cAdqL0L?FlaAVxR2#`~FD@NYSX>c#X0mQR?ptXN ze%;|Bd~ef!SXr4d-R2E`vyB4=vJ;Ab=b~QhKd!C00(;lIgvg$j;B)n3we`C<*+1@Y zFxtXuC0P&lLE^=l{8ctp3mHH<)*h_7-KjdhLP;Lk2I>8%Rqtq)(q1;4)zn5)BixLp zr>!{SB3NSbDaZoz2pxo1%C7o&^w_=cUPP5!lbZsWii|jfTws(k-MIBu!2of550+;y zxxB|Ixef`Y@qqQ1J$5Xk<#z06+=S0jfhCSb^3?bu%_3GFN%)A6hPfUhn`R1L$Gz;akp z>slR^%bT67f)w6zT3Wp54zfvRAo4tJV5@x-Ev2P}5zZio(-q7`^{?-s@0UVL>x?+_ zegp|HYo);k0E%Q`S ztw7em_~drgzbg~m4q6^+aoJOC^=|-9Dw@T7zTQ=A?ZSEI*k%$!K5lGShCF`P7oYD@ zhY)b*spA8t;8+5-_>#!HDG|cb-N0;Gr0w~hBPC-% zwk&~&!6^0TW^IC&SnOe4E1F9lliz;lr*X4#X6dR4-r4MW1=8u6>=Ld<)o(F-CA4@+EG zF)YM_k2?VMJnE_zS(*Y|x3BL8RCbhD1de;5aNA&Cbz$n4o(47)XCcE8RXg+-WiFqy zY{#rbfArPcEBqn}dhzeNabRQeQk@JJ9kjpv!^|-<4rZ*K=eDi%xxhN6{+Z?Kg;;;F zp3Ug!Hqfr4L!#=)g1&u6v40zd2)Cq1 zVpH!&BuPA?_nb4hucPrs>U(s#gd;J=ybiyw-dw!^SiQQ=#6evCHa*c*+ss+uT^(SL zYrh_!^?WR$m{aONGCP2>MMT&uC@||5Xg;?-0}S7F-hc!K*=Ho)ApB_WHxlhJq88&c z7ic6?qwjQ3QCBqp`o*kk;o8l_WcOj3?0)i9Rzz->v>-(y>ZJ+?GT$s9;;Ri?o?(7#sy1`1xR_X2TjtQ!BSnJ@g6 zeTN3P_E$#w!?{v@b)`zolzJ*h?(~D4NMpkfP)YL#ZoUL9$smV$9_Y=?=LKqpJb(Sb zY?$BKAI2}rY*FKrg_>>bOu(ISt8tu0VY>lPs4 zm1@jV02=2|j?WdNmRBAoyRel@*gtCsbvXZABpPTk#V?yal1%2gEb7Uu;l-maXVCmA z$)_t0)4q0OtQ#@x zhsGn%oo9N_X2!Z_?s>s^JYawt962m^luUtMx>)K@1`S=0BeT^K+l}&_3N9=D zN`VLLAq<<=c2J8vOnm2(Nl$Ul-KUybY4zcac|-u$4w^UW>)}m-AwkI5Oy_|YZb3$7 zACEf+l@d~b8NF?1Y!T$T z(s`wb%!a;G2vV&W;~|5}PA}&=S#8cP_@@-tu?#HxJB|FIdabg_FfpetKery@+9%?a zfk(3^1~ZUv;f4>&1GuzNqTCxC4`1NE`UG*_>X`u@I>+;*9mXoF%*&(mb**jEt#O&l_zC2K~*j9B4jeI35 z07&j&^3<0so)}!h-UNFGxjxLSiLEyw^zf13FxlSY$;aoAaYZr{3?9H0*%Do=dik|{ zRLS{@K+x&qV*9hKY+}hvUytk_H8*#L6q3v(p*l(X=R~h-cE+6ca~u1R&7(RO-+4ox z@d*1=E=qy63P>p!+YNiA7k?-8mg69MHil;#qVy`4h+1! zNpQjhP|L2{aF;x5aQ6m9%ev||jyS$C8Kj`|v&Wg2tNmx@-KHvU2RClpJo1y5hyq}^ z9L|2#GZ(IIm3@E$YLf{B?C#nI@uRh8G0t0xcD|l)(U7%YKn3qpMFp(NH{guZ@qdgM z=KtkcDR|K9>iDbbS#Ie~sGlrkqh9SOhU2^T@`s<3&#&dXy_Y%{y6K+m?~-)!hYX;) zvjDT2%ZoQI=r^^mB7D~l+y{uZNx-PX~at%fqJ=9hlA} zknCx`e%n=zLryeP=$$WM0?pCEW^agdRxTv-1I)d8=I!q1t|@x<=@r4|&WMOmQjhxJ z*Mau3r~cI%^u3r)g)r{?9uAc|8bRnfdC5Fu)0$Aw_(um2K9=+PS~flFE;9i+J^Wzr z%*>2V%2?;9ksK{Yn=^?wZL*n8+R4BO5TB+Hb&xXmMem4G@Oxk zR$s1!CIEu(dB^BtEPRony>5ZI zS2!!knU?%MtCP^q8~9765;<{5GH(<52k;LT4UPmZ?u`HDUJneGJG>`Yb!L@iJrLiL zS3TUF>znBjbQ7wBXpV zk!{?5N6Z=XQ>1j^((GNV%w18yB-%oHk6qJ~T-N572`DjD&z^dsY1e|Kx3$TR$K*z4 zvhA`4#51e9>x>I|*M!(>#xUb@-^Cv`wRomP*^?|R1pHcs3a1s6LRTsyh18M({Gwv} zg5l>4!+$=#@~*RcbM~&0XkXriY?g!D@JLu%Ggl_=!ZL1Q4qafOEeo1VDN=XJjX>S` zosg{HF@r*8^QZ-N(fZ|P{(JU~{VXnWn zRH;(pGOE@6R$V1|h!o6xaO$lQng%uh09|bN+$s${SXmzsZW?o$>-nFheWRIsJRr+Kfo*&hkWw4N~r-W6X9a6yu&B%XPwQtKj(CR(2aO<`nAC7 z9yW~oPNXy-l|omJ5_~iKd>wncoyPos8c%<9ESA1-5TNCxkb04yQepE@gc=4OvYY z3lK>=k89RWwei~l8I-yj)OmcS!vc|nk!V`b@F0VY7lC^3H;fTLywf|asiEsOJ}GOH zxJDKVwOE%LnoelM2Y#l&DkEINENH313CWV{tQp$UypKEHmw-2=#HE4ek52_|csczs z)ut@?q~wK#wPX3K{Y-|&2!rGob`_Gm1; zLjp?Sa;i9~47DN_jJcExTb^PHyChCvG3R~3Aa8YLxCxL}^_5t*_p3;ObSse{KLTTJ zzpa0NE>?JuGGqz{&g=hnB!NCE>*kbY*o8FRT8qQJlb!v~e=DrCBrlO$%2;~j_HyoF z!387RMPg)PF~VM4+Aigr9Xm+eiTpm9A_$!H8NJt14XTh)!y2k%12oZ3K$++#6k~36 zF}x;#vk;JBtLr>FR;#)^nQzBKw}TkU<0*{YX&Jz0to5*zAVD5(re`TrMLIwSftzlJ z4WWMXHoltNjeZp^!(KQRT_qn=$%H;rSs_o8SCUaU?rF25+wGPT7oQf%AEll){E!0Y z?n?$-1xOG%iUAjtYh?B))xcr-VefUkMqqV890Fw0TG=z90q8&4l+~=vN$hn{Yo6p@ zY*k;O$1>|#s0=A>jKuFW>4I_I&D*vjV2;0m^LJHzA?K*#0fZDg6|xJ6E0rf#t>eoj z0*JF3$d8-HP=A}Gr5}?71$8X~XsqGcdh%v=GbbjY)%CUEI`i|17ONuD46tIat0sH5 zL^lTw@V)vuOOnIshfLZ?)4q+>2rn<&VS0>o4~bCo%GdwpYhNB)-(%0tI`GQ8NV0U)O0Vf+?nGt( zGsXEC$COTtnw{e%S6n@Gij*Fv7{DAGY!qf0i!Gj8kk5afS?4U9G==47l)BAm%m@k! zA`7%7;zU-MSG-F>4jwAK67hJ5Wp_Rtdceyz4zHG)*Vc-Vdz+$|32rsMKhEt+5t4Xl zF3z@$vv;3cOJ%l*ch3+*oIT%3buE{gYIc$r!py}iWfvZHB7Xp=1-Ed)bc$dYk&8ER zAdm|E2lxsxAumj<}yl}&T_saPHWe{SEx^k%FI$pf#ZMloiiQMmf=q}4>%Zh`ZbVPR)b!!Id~lf6Q#h0tKL`H>X4~ya1?m~DwUFz)*<737o}Y*uFGa5P2RX|+UJ$PZVKkE~+DdirIl>IPG;|-o zs^n!QL-_T`jleEI-H)Z1f&ZpCB49mD`G9sPR4krc`}b4Xd-uR-P9zi;W_yZ9?E)~5 z4S0Zn?T%MsML3J_AYmhsZ!gZ+TzUSks+CC}{|D&RGHYQ4G$T(0+CD`wH0p23k)Kq~=$j!e_B=A=QrvGDrn@0Pbu86fih3s{Quoe%q%Tz*=Wk zrfbD5A!pmqD(azP#;Xqju^i{tLwheoEsfFif_DHSDAP)h9U;h^M10$uQ(j!(V4c1k z_SqI2tK|t{E9yOkAsNe^|fzDdx zm{Kjhcsz=`RHvX|p~pVS^XoV1+2i_w2PxbBT6q#JNe8sNoUV($s?{j~? zTtQ<$758YnnNhlILR_@D#eV0b`kofzV2JnSUio@6^eV|OVZ=)HI@n`ws@bG z%+7goMyRvpC}Y)2r8i$X#||Suyk^kfw7eOi0nsF4QDNc!=8#Iq2F=zL!NthfTfjHS zDLFqRG75Fm^*aNPzFHamra>EWly2gSz(UH^YVq!stwNL`U}~wLNWM$xT`3aYUm1Fo z)^$s)kIbwq^0~RKF!Eqoik($Qpa)c;wJ!O5==k{zuyC0ffBugNyI5PW92aKFr(Ye3 ziQImk+g;T7bIX=eKU*IQppts?yFjZ#y5T>Mo>tn%oFBJ7JsiFxEwYc|(N@_4;rH27 z@aJH&!VLJpo93EM8@_M)*Y1XdG)dQmDH8vrg^7Ps=KRK8v8Bu2C9+EXnNu7Cql<2m zp}Es9#~HI0Yt%@K^TDT-7jfE4T1}OF%9ackbqaxZ?D~YfJBg?UGdApb*EuSCaHICXp8!p+^m%?k%t|`wRuK-!Yk7`G?VD0p zMs4<}gI&p|(8S26`fC?mAFkYZ&2(bpJ+Gp&%0R%_G3yV^^{(x`q52aq$=-i}+{_6N zG-=??6Jk~YXazZzliGLT%0SfuDTqR&-K*W;1yJ?)Q0cBK2dcoXkw{b$?P4pwwzN%O zk1BTd7<1z@?3iVc_S?VNIs@vNyK$hCDZY;dxxSE4*?WV!Ledzt6_%vxGYbmIX^ z)yPXV;6L+~?`W?70(XR)zQMrRG*OQ~hGmOWmr%Rt{9Ttorq8nh(YNL^)c(6{({=s+ zqEb110K&=6lDwm*u8`74>dg6wvV3-t#Uw&>(lY4DG?xbV-NOj&Z~L;IH}IfC+9Cob46v%CZ5^r9Jxp#JxEBT+;mh8V7M4CvZqvHJ zEhFlEOLRWpamQsEc*x0br>=|WdD15yY+BKrcNA*B(N}mYuGrzBOYPF!<*IQJ%36mT zWs6`7b*%A=EYvn2kM3awzwFBk`97?*4vR=AjAk+E2HE+_dQHgbQ47bTsyBq%8hV06%LO)#a{97-eL4}rEJi{17y2s}_G4m~F>+7_+O?M4d9pta(Mn^{}?!e{U zPYvEc16zkMh%|8B&n|`KR#(5etso-MPHb{$rSQbU_=#}N{fAWE*k8D`;&5WhCX>1r zI;6!4QO^C~2stXeoR=aI4_@yl#Tg3DEPBo_3@TS5bhd<1{iQ0}40})|%UGEC(Lz{Xc448jduHS9Q^PLcU4#F$^I1G{Eg`A2>QvEvboEV> zzGCn9&b)TKtZ*y2Zsjt=U;MR?L%n{WmplhW+lZe;B>OEvFmzn*RT@}^A%?3C)@VRq zk(GX3qy)Zxo$u!XXrgFX)%8~`dz%W3pwOq!kBhCrK2-z92#;Kc+}jpIN%U0RTwe7t z*^Cq(km(#KOvr$aC#@}1MS5GL!Hm_`wpg2L7`DC_==^`CWaN`YYtNTMr0bB4JDV)c z(W#zt*-VEs}Cp?3!Ba={A3~bh-qHxt4xJtu(zDSd@u9>6J#RvRyw7hU;Annc?@FdSzN#lr8s6ZbyaGuPge8;6Vp^HW zS&;H6f!mfKyr@GFB+i}{gasPTOQQxi0mW&*i|`l#} zn4?JE4DfehhBPxpIQd(T20>{$OY(G~fn-x+1Bb|0nqz9+#NnVEr8mP8lx|!@b$~(P z_S8?omemUVTU*Y5)D2~LcQlb5UxJ%~z921u*rXiQ*OTaSOJROEu zU!_2l)Q9+F^llst17K3JXh}W1Hm0vt*TMBonPGn1bgs;HnMQw^v6T+^koP2$FRS&p zmYb$02<6u3n2Wi7LUS=XfPSZ4ndxdG*8!mgZ7Ac6Vdx{7Pe$= zvsNZDAfJ57-M6?N#Yy-b4c!;^ZamzSJV4^A{X7vJqT)&nxh3zhFsp;9vGmJ(nyq?qY`@8SKw^CpevB7os-sO^{o{jLdDt8ZV#VbkO(?FpS)vTKyCjL@* zi-EoAORE@*S2E^jPi$09m`5As#OC8uf(QhBxW~79jWj9ZNP6hxqs3_=*0}dE6PVj^ zC05sSCsPi}^1O=ceKsLi?WRrFyB&J@e7U;Fu}LYo=_-;l@{h48TL8=T6;^r|8${SW z2U>ERd`;)z&3|n{47`9 znV1TC?PG@sq6L82g!l7%$5OV2bnUi7+d?v}6x^BIWcnKRecBo2u9uMy&NU9e%4F}u z<~F%YYH$A>d;R)RJ>{eh%$z?Q!ev_?);hfLq?V<$I^229RCqO5ezm7|+~mNKht7!@ zKa_8-C6F8fkGzF7%}ou!X8$nXwydm-kX0bgUONA))^~aS zRDblR@P(3C$;AN~!(awrxs}t!>lS2rC-a$prRPzwXH~v0ZR%;PbW8?K;CH@DxX-(q zx|r{;J}8+)9pzM4F1lxkTHr?`75&@AIjdbbm=%@&>K&af<;L-^)bb#mQfO54?@is; zBxMB?jO`pqK^fPjSI2wF?>rUcAU0Lc1n4)IewGoUv4uDTQFJf6e}D+Q=84U`*l7yt z!u64L(PW8keSd8&67MDmcy;~Cb!D=Ft|)=|g%k84D${NaEMmj8swhZX+o4cOx7QPX+#APmqh< z57=*-Gy6Kx;&=+O(3lQYfH2f}HDqNc{sUF00???GbK?%73hxT8A#SG(r4rgtO)Cai zaoCrY3~vHG7v==E8mS!490@~3EV)bq=g`9h)oXje?SBBi;PZ~r0bt1#?% z2uc6j)i)WeKKX&l*OrZm4xgBnbko^-7RQ#uN`tB>?r4K0vX(Zh1CphfhXSIV8v;c$ z1Z7{W^S^Lh(KCEMArYnM2OxSrc(=E1B}2UugSqjE_OKzUa0x>+iJc>gC_NFf&eo78 zd`f!7du_=t(30n`e_N}l+dhi**;gxjuN4AWT?XTJ;i_*VV&?$f)QG{e*JQw4!O3%% zZC2@brGGnN*^+{Jx(G7zf&jEL_n%2f>Q~y^8oQt0!UKBXBqW(H?Pa1xw}N_jmo6KV zY!%yA8`{A#^o?3Du}p|TsFc{1x>UEu0re=GswA7rebD0o8-4}6%=TrJ=qvZK@NvIg zDPR|yqKKt^!;3JGPbK{DZ|TI+q5W!s*=EWVkiZZf>x`ZcFVo{&#v$1Uf;Rs;j2+@qy015CjPoE#Q_{NKrB2Zhws9Ca^- zTfRPciZ4X%29>3!cfR*|zkHTYN0EBW4);^{?BN1_QlGqB+)L(t7^XZjk}H%i z++kpE>X-M-Ua+6PT0H{`{Rj3aZdbPg54UxQo;PdrZgGuim@g0kowl%bAGTY1W?sB3 zmPS$*D&G~BxgLO2QBM-SX+#We2DJ{Q-I5oCvY7RhHNpU0rqG+U#1P+(rlw=1T>^1qem?C{P|@&%+2!_$VeP{Hq+)j<;CK&csKCMfpH*F(mFs%9 zNQ?UWIr^LKzjr-vH6}R?ONa(yIjduiH_fF*G9zm*?`Qy-C3Mk^<|x%1SgxDpf>{Wv zKxDx?i`kLW-2L{8m-R-9vaoE_dAG<;qN@MuWA4YoWYs3mx~~X4}M2rsIm2s?V;QByoP7`eos4}RGp8W(90{0zeoXtT%mk29*-FbJ4h9R>!_6jCjd@lu7W>5IAZ49R-LjVE10< z@Abho!Y!~v%>3}hh4CnGH;})-V#)gjh<`<|R}RC#k#R!PxMpc!t`UWI6H4aCgcBlc zGGwh|a9v5f7SZXP4W9JYPTQF`ylfYqS0UfG*z45)eERh0?A&^%_MY|xpyKb3QzcC{ zq5cZ-+;;0Ye@Oc)RV3slfrJPDPChSnR$^E6#%1`rnvmLUmIeiFxi)&ZkjI_qWFv|o zZs9l?*H+mdG`6-VEBFcXI~lzwac1Qorlp821m^YEwo|Kj*v+-u(J zX3vXjgk(gvYp-z4>^(BBjI6ACja-twlkBcC%eYdxxMqrSlThgzMNyJb()V|Nf5N@@ zaX+8;`<&P7`Ru(#)J-Dfbn~usX=xH3b&8*%#y^lvjgi7&R{viBS1-#kxl75zvof6! z)OouYPVXId3m{8ir)W*_aU@5Z|8bdH**GNEWv)A?UBLzw9BGhP%yd7O`qsXs|AK~Y zw#pUCqT@Dp#c>BJZSWu~JQOyqYijF4(B?vYGRfb|2@o$hLWwjXH2zY`@+J&cV&!IT zJXY#vUld>GtaD4df`f2t%&Me0=;>m-=kW8nqXV|&Joax&<}%*`PO5p(G22}7TzQ8r zrS0bEl5q&<9TQg?oHCVV&czSp^&pH15HWtb!$C+Kutrouid~rM%3l1pirLO*;LR^1 z%=YDj>hIJwVZusRxn{chpU(NyFb@4iPHA*DK9dCvqzg~>_^dOQbPQ0FMgjZvGFU#n ztXSL7G82HD+nVOpvt>oGtQvCv$-u(`$^5Jf(lhrCi9hzhUu)@7#mN-i(UPMAo58m3 z-^5Qu4nO%AA{b_17#3__P}OoPEZU@(3ABD=Glc)gBL5z1@F+0`3aG(n^0H7-{JSD+ zM7?^TX*XX&J`iTaNTML1S$t7h%XWb4Cz=NH)WBRosA{1<`5noq)k{MKg(!=;`~z}% zrFK=%Z&wFeahQvUg_%vL$iiw$B?yXC1}?Rkfw(fLzGCJB9F7#GJH-d4m9wa%S6qNb zh_W2;(iOgDfI>&u;ks0K9wuy~WHu6p_=&PofH##1Q}H9%Kk`erR_f|-nlh06|a(JwzVhYm;< z0ZFP6X{4!TymtwItJ()a{%(TsF+X8VL*)=;sH@_U&xZiHfG5bHyX3F9=0A4qbr3N5 z8_w^dYNp<+*VHJtWs!XG*482HJ6sB9Gn?82V;#Lx%-=Y<8;QEc7HE~IQ3gL%{EvW`PO>nEi9)AG$>V@`MQFbmUYQNIG z2Cw&Oz1$`-2qg7mt=T#k{7>A^y2{|V*gz~IkNIJa-7;G;{4xk4QPgsRSf$q0xg&t8GGx@qQ&XsCeyc6zw@}X5cjf7s zeWyaeQvToNZN~dz#R)6s4K%s9MPZ&z(8+i%TC4yZO%TUN=`49TZ^-;E3?`Cb(-WV3?LUNVrOo68;`Ho+@CJLkYh z2>B?%AcBOeyoy$}Go$&p(~>=zQ3a=CQvXjVWf|AXA9>Rrp76*!q;vktyw`~}BP}Iz z7!*{evo|pSi2)_pw;4QC?|ZwFzYi+2{yCNsFyX1~;WCGWb~Hh?whnk+z2?au zxbDsTxh&4gz|Z}YE}MJ$tNlKd%6+N$O0I`RIwRFOPtytzDU*G2<5Q#2g9mPo$py~> zmYTdMnFe&G499q<2>P_#xEigQ5dLwb%E1ZB}Dyn@(jG z+%a@B+Sh;WN9OZL7AE-eRPMspdl1Xyv{pU4vJ&~f-Xg=nQgAu20Hak9sgTb{=T>r+ zTKq{D$74hhn@S+%hTBH2~>8}5!R<|@%o zG~{kdo9_b>BQ>*bT!i-4^K%4?`WoDyT%EXQ5N-O&L*0+uYu;X~mBrd6%bg%jvD*RA zZl=s;sJrRkBU$`k#P}beHT#KGkhmCwczfCWn!n^p)(vRwIzX-o)KyW13c~7upzFrz zN5I^!Kf+ZVJ9Tf$7*;=dGat{P5Mp4T?V}Yoo%1d;H<4D#`47eWc+iqHrwyMF!}|)T zsMC=bKWY;Q5(`XDa6^mMC5D(G1mhm!3RaT$Q#;=XD>OfCOT z*8BNAIC?|}04lUFuYoCOaPN<6XS1(%SGgHodcAxEzSYET9Pj)TA9X|!e-Z;2hIY#e z+3)t5P2%DFKWCsgDqCrejxknaGW}S!Ky;PGimj4eh_y|!QemT@r#>CDc5?gFrdN$a zeJgi|O=MchOeSj<+b#f*{os1Ff5ng|sQf~E-(Q1E77~MdgI6yF;Zhu~-fK2DY-XRS z=C>unLjWaS`mOx!Z=M-FWM_n&-928v<$;zcJyl;M6amx0{)|(zWr#aAnR#7Qt5W4* zaQ&|#uWR?i+#I{ok(}~#8Pwthvt+BM`7O-_0wq?sUVM9m4NwVjlIs7W4JbKEK-FV0 zR<-NBV2Ad!`BUAGTr@n!qMLVZWDOsP*v9R#(KA`+jWv7u2rJYxJUqU^ zA1u<*9O~8oXug92<&?zA>R}c)IG_Ds&4|U^h_pRr>?V09x`APWxp{9^E%tW7T>$n+ zQ+5G``q{F8M)w0AIq<3;3Kc3BFPvZh^((&^FJbzp}n6<|6s) zZ(|MmJ2#bL?Bh;{z60SsaRRcpp88iJL2Tc5`P9(3j+Ml4%InWof%29OciL>F1APsz z`UXHjqtYrb3{Z8Ng?6pyN=_|77M&qSn-Ug0DG-z)Ak`-{)b1;lut15y8i-7b?kyFv z>K4(lVn~Zwq6kCc{)_g9!3?nPWn+&1aNC-KYD@X#Kqw*PoMY^CX5_5f^Y$i4-*KPg zz6yz2=u{c@nNm{U$p(~L&=EHb-1~=g4gbWp3PmW6$}$*ty+oe(w;m8V()(JO7c?NT zAO$XC2`O$M&m$)0%sBt|Jv(pnscx1z8zU&z(#uhP1jpx=vfj z{Bg2}4h1%abRn(YFO~p(?d*!rF(lR2z30M3wM508!bHaOX6?<@WmV@0%?G##!M@HJ zsI$wz%(gDP7;mZPy&$(n*p6hq91;)c{0{&rOwMM682fr(R&4F+w=5!oCLo^f+DsQ- zd(i*ZWYl+%=Hgp&-}Rt%<{uPZ%fm_4*AtqkwC+b~}C5GVD5{E&j|QPu#}Gd%+Yc>q19$drwvtV>pFp z)J|{$E`&IpRHz*q1%?DpHLq3O z&?A&1t0x^za>{rJCiAubI(+r!*`3Mu2dcof0)c7~976$sjd)5%@2Ns07?9Z9oO8uV zIaVYFrZ2^e6l&eauFkT_!|!Uxw8CL-+eMA-TL$+av~(vC(oJHAD7Tr$A~M|jN@X_( zQ??u^KDhoZu_jm&yz4h|eoq3g;g4w5BN(&xq&2wylY80{&%S?BYRX|8XHKH zZYNJ`#L96&AAO}YrqO8XG)+w@!$0MZ)lr3r6Ej1t>MPauBTHo~z|&^|JedsO?0BRt z@eb7A!Ova<&c)*RZgBJPPYIyRCoC|+CvJzW_7sD+5j+CQ@>7H?5)%+tYg)mr69es5 z!@_9}f)6ok)YtbU!wxt2LNm1(Kcm|5vaWznUWUXP6%5%|pI5Kvo%H{GrpDT2aVB?R zArLP$?=@O@?pFPQ=GZhUGO<)4Um292Is&O{Xn%1IFGf}dzAYS%p5(YRY%=`-RhtQb zm45|5HAGj#y)^NsGn6YCwZH*-Zm| z1-|p&)NznY_g;`{V{%2@;|_*GW*O)9z|093bRVg z>GYzQ-DP$A9}G~LZODYG_QR;T@&HjEl#LJDt-5Ta`OC;;%>9ya*pXydHTQ_d5w9kJ z@tU%nkkHkY57lktVXp)juYrFTl$88dRT<7h*iNqX0+baU>`E4V9r7qXt$J%{sgHl~ z5(6J2>g&zt_D0x=V3BM`l8yl3?6WDl3mHjsUS|q&-~^Qxer9S@C@&RG!*<) zE5}@9_=zKkys;HQeDHT>`)vS;`z->@uj5<51yihpR#J!DYOz}0fDc?#iu9_1 zWpa&SXMDj_*^whoGkv0aDdW~7RY5o;2-iXC-MO}=d7M!>mphi&(|=}TRhCON@xUAN zGjR%J!RDV#+4*(6JiOXgaCkR3<|l)-ksxCH7BL__R^*qI2`D@_BOrOTj~>!s%z}PY z?1Oa=hXpslxnlDr&u8$F_!_ToF@~Y-(-ghrshuKl@p0L`W}FqSPF)Ye@$dFluiD40 zx3OWR*J}=$JDLI+oUGnwl`HntYeDMTH}z*AK%SNE(IWr`m7O260yDS?u9X=7R&yO+ zAdq2_!GCy6<)g*`7qc9&rd)@9qyT^zsk-bjb@$4e4n|ErbQw1c@fB^_h-<0%_<;1y zy4`jDA@ve%Q$yLw+F@kcPgO979-bRNb)Gn9pg{SW@-C(j3Kext(U@9lJ= z&f6b6guHXE1NyE^oj>MUeVt)*d%P9hnLocWxd|!vRxVb@%h%3UvcG<#4uN{boar02 zJ8@U$n)Qk2Ljv0v^bz~}X1_sZcA$aDJwO_gvCV3+5E&Ip)Y)TQq99nIm2h8MK*}n7 z>IXS{A{ZL8G1{TIi@jWkt65Jhl_%%sA)T)m1C}f_Ppp}kirNXjwSAQ0UmfHw9irFf z(M43iM3PV{eGEtFiP$J00%GXr*;#tGykE7CH$KgI??m+(t20df6sGn? z5rqf#9UlP1)?2~t#PQ3-0YtC0rTp(Q&%v@B#_XNJsSCBr|48o2a|R%R{s>v7!V z-UnpP`sccpRimp>T6(wLt&0u>nhn(09w~gU$H$%x7zcK%i3Ee}JGX=uCL$ktHL1WR zH3}hIvrA54?oL2|QY3(Gs6)5_y^Q%pD>cCPEizXezvy8)-yt8mG)j@*P*Q(CrC;@| z3^@0+Z)u@5K?CHP!C_gw?c!b-!v=f`CVW)pJy%j?eoN*NM?_(;sIIV4M$vHw`n=8w zetHBVUY?X?K3hUH-;@Fow5>6zw73o$OyWKHzCyUXN6B2-gRo`n9Ybrfq8`MX7tLvh zH1}kTI*P+hEp&o-S2&lWl@GH31raJ=%yoVk*C_nc9Z%O>D~LQZA;9p6vK=e``wERn zQbuI|9pP+*L@CY=;w9x-Bq0Y6bQig8k{=`uj|O)X><5MfP+#*ksWUXx_-=EmiGo)DNPgj>eue?|e{qp0}@T7?p zfQVWqWXrOw7@=!dIS9Yz2CbU^xHR;Nxf)dD<@Zzlt@ifjHj^>_eef)b*1#oV^|Uo~ z&Uw&W0R7Xq-NF4>X1P$~>K^ckgg+A)e|@H?q`3L=A_0?}%s+{0blR41J9nTU*MymFk63#*zh`*gvHdM0pLM81fazI;`DNZ^wx04YL7x3GWH%wqU>}eZ zo$l?SJ=xq{Z3C+TIe_9t$HKAeDi+C{s|G81PLNv6p)b2|fabOCdb5mIGw!guhpa1n z=L==k>k^CH-M_}3tGi%u49eB3v&j}dMEB+w*k`o?*>j61 zWhB|NR?gq;Kav$-#zOCq(cvn#erCdtWOwD7ODKhrmVYsIJO*m=3_$OA+MZ(dP+wnM zb4>4~j0_u%In9UTXo8DCzF}shjPog)dtOjHJ0Sw&i3TqBC?)Q*xiwk?+&ArBrL`~( z_h#q7;^E5qLrhF>P) z3)sXGw%k{4X=$sB8T*Y7bg-Io)B4J?dcKAEmZK!H4f3SquYeOKy-`Ye#$`Xn$o-qP zvVf<*OSRs)*23kk*qsi|M$30e^Y36{ie?ca?SGH>wecOwY}n7jG22Q^SMI+kko{yX zw~TA{vL0vC-!{SUu~!o+WOta`ig_>FVc#C;UAo+{YMt}+E_%A-j=INoD6UIPuw}*> zz`VakO;_CnC1y)&zr~fMOIA77kx{9;cn*q{P=8yf1Eih8?vk?;fQtxt{D}$;U`i4gh?v=af$}Wr56id>GIg zJ!5cz@*CEYpS+Aw68ed-eyY@#h_dgq7D}`Z1*5fiIYvM~1l8=5>eU=tPfC?&?6#-( z)jt}6)^W4wKJx)Axuswn^XjVcrVOO_0g#4w1+)bzW-9|MDAG=$IA5%aB?2iiy?8=| zE=YOZOJrZnPr?Hj{Gc=VE}NZtH~tsx#QIC31sdo>bnnh_n@0DdF@fjKcf= z#4I)N^1qg)-0X2}yz@s!o@Qq;!zW+jVQ-mST7~w((68t7m{3j~Tb+VppOK_ z=w~jB=B<2W*evQ#T;hn9~tpqqYW zzmDY+UmY-l+|Ae8M}sNC)6Aq@NbOBJb1CYTU-oyIl1&O6Y-t}!-yGHn z5>0QSs8P2;**Rz(Mh^bwxZeBeR^WHY!J(2?tf0inaJT%`9Qg4!tIAvIt~80Ai2>95 z)THeIg_~m8Wf$fZO|ZiC==_Z;-AR!oy@o^$F52Bfk$sUbVK+hW0Sqjw`xTd?pNb3M z2O4{88ltuVR@RGAW6s(|Gi7c1MMufW-OlK>MW|0E9I>tj0YDxsecq{`FneJ*u`4cI zhlQ@l+}_6!#3mm1CA;Qj)Th*7-`D+L77n{!o|#Dp#_fR|!OIex2G&1)N7RO^f|Sz~ z?XJ#3t8^(ftK=w92a^S8Cb4i$AsYd& zLu7{~YYSo6AOT%>y_86jl|&he{LafbsqfiY$^A6V&1~cMU70X-3C1c``GMO7|FBWV zcop_s>^Kw5JIT!TIAe4o%J&FZ8%4aKOBvQf$x=qQr7B_U{Op+gN@ae*`Ac3|Vuf3= z5`bC=GyB=1%!a?3eGJZrYXlF33EyIAFn5h3!X(`*O685(QmyyFc?a(VZI+c|Pn*=l z>N;cLEbt7_x2I*oM21&AuQ)j&OM5x`7q{{GCwjXV&ZO*t zdbT<8ZTUxoB*WZ#?~93nyo%;OdeiFFgz?UhAPvhXpI}8=8`(Wt#2C-((3C|&cE(hdpBJgRXn1(w|&<3 z9Jux*r?)0y4`rShDX9>}&$u3VOiK*4><=`c%v*J!hk5Mkx}59lLAp(%Dc!(_QT*VC zsXs_pQK)yjc9+Ra4q)^&%CRKpy1SnHxAbvM70Z!nQAtwV=*c9PRn4&5V73VV<7z>z zn~raF@Cl`+dYjwn@TQLGGwm4N#T4d%SQ23 z6b&3LX+{1Ts5r{;2fatP}9H?(k$1Odv^f}pNH&KEXZ|Ba1oZFH=(JWG>`VW zYmm*o8WZt6&WrFA>ubI3_0MjHT70|lY+nBS-j(=G6tH#m{H_UmvFrLUE?Jbo4D%g| zWY1W8gwkI%jl0RwRP?T7R{2*HBLT(Ca=_d+o~)sB9>LF!U>t?yu1%?HX9Ht^p}AS! zm6|eHhb1%fW;RRZJonV)m_ylw$_4L;IsNMY<7wSrbNHocqS8SCQc_e?DTIvibA<0e z91CP-d~;W`!ubtT-O9te-I2V``bdz>`eiyGSc$nU?h~CIAG&xlj(x`biO#F9`=;a7 z+#V2tT>IyzCLRz>O^_P;OfJ?rt>ba^WgMFyznUv~yD#0i4m=yLt6%r_&-E)Fp@49s z8TpsJT%hLFGusx%Dlu!5)nDsd{oSfFUKKUT<1h+X85t@|_j^A}1dsX^WQMA>r>@ra zhu%S+)egUIb%BlZRMMR%fx*ujp6gD0`b^V6o<%5E0>0rRlp+(nR$ma$GoY%=_FrED zlP!jK_$Q}KDERb8<7Pxd{%PoU`6%@5fLgz$=xEH2vEDYoP=8N09mXW=f6h3>$9ySj z#xrRT)N#ZW^^@38p$H1qyKTQDgLR^b`uLf?HrNC#W&hKm(LM}Dys@wIjS!vLuATP*B+2jX0It_AXwvs*m!*3R_Pu-r8Ii>SqnI|^1k=^w+E6V zetv8JApFLp9y^EYa<|^-#^@E9Bb1rUfKbkT8R2oZ)>&c82lvLxO?kDe-oeAukV9^7 zU>&?>4!Upjo>H9YHae7tGuH$lfdOkdh+$On{cS%$4PdSN81V70**$-w$9=|;foB5t z{*{6+k#oKY_sdO0tyi2*D!BYBgrw_;nk_-E06;Jl(#*~U6d4LyHE}fOm9>=J>1eE% zZcI16bHw42J-rKu=olag8c2Bw-A%hdAyHFFwe@^Sod$zLajxuj3?C7Z7u(&*c8p(E z*!1*1zfTXGtHw63*4!WvV*AHjm|lUExTTJP!;GZ;PD-!bJ%_O4-K8$NQ2Dx&W3X&O zMNeu`pHlMrq(qNQ&SmM9a<7z`qarHP(;)0DaVvD8oVktRCqjj$Md>FvraR?|R2p11 zR5XJB&YOF`;%MLW4`Sjr8}C73qOmO1#NK0H=zN%PM@y@xIh;c--scSMGkNNpVOcxQ zwu)s92pfhy^H!CNc${Jh>k`bok_uINR>#nTIMo89yd4f$)LAF8s57b~_=262ikZ9f zy;;N#Ie~)wWS%*o)lD4(H2($ixp|c{R7$*wNDQdp(QvYbR0V)C_*io6k}p2AN`(`5 zp_zkmI?2txYKW;aeip@=eRT!;L3TUr4mHo0a}~S%C+_`8E!qhweiy3b%wYZQ@FQfG zNPxFezq6R)mSb2?kPSOwS0F;Ja4tWt)le?Kxz7j|{oYguGLZqRtX<}2I*iEnlnc|4{gx5Q#Kbda7=bE|c9&Ex z?0TqUMSInIu0MoVIAbO~tVgbKgK}+v`A+Xj8KTmbiAHz8-J=h@@(T} zPh4o)wpRb2s3x1_XZJV?a;{%b@1fNLcKPLVs`Z53>rF8XuDuc}Ptk{KSbh%`H0=9m zN||flN&3T@Ch!*@7c=wfWsgm4ZD5fdA^5nM$sGMoG=0-4PI4g6H<94%M8fE?+_a%r zFw=Nj#d@bY7A$q3jPgctXf2>#u}Rpf?g_V{sQ69i&5mA-DQ zk%eNBjS)y73gejrB?Lx8G+>>x#O-;0J1#(lW?@(g+q~uDa;WcViy!gC>LMCAw{4*L zGH_r|qAc#Ao!tZ0GwI5A&uD;V&Yo`ex75DSb}XKlOi&h)#D0VMzFn*?xJT>AioK-= zsSBj~-3oIE$dh-7(A*RBc>db(H#&*&tjF~@6Z4ec6^3pUO%vf2e`N)P`G3sjHw)ff z(R&>iQ^;4v{D+ZbPH}r(&I2L^I(J(4B2=)!0IZib+rz3k~xNmoww>pp++9ej}g)60j65Xl6Uo65B41444_k!Y>?9)&KfK=|U^5WBW;tX_A%qu0k>3#QNF&rMQLOo(FwR zs|i&RBUEU(sCrQbI_cJdTwPj)sAGDhCSD1>sEG9@4k=xLa@~|zDr?1^aSLxBtC%ca zndu^U7?R2bsRr?9Mxc8jGuwS&PDjyicFmiR;{*O4&ZoH0ZSOTZyVXlCQ!Z_rMYsfL z%H461p*`?e97F~HFeygYpi|!45|#o~m6*8<0w20&5Q^ya^W$W8+rzB!4D0Ql21nT&hv*qhg@I#Fdd*hd;Ylw8HQGFNjH+ zAHf}M94RbL(y2N#@2!`C1SBB(8{}HY7CZ862=N+q6`u< zQX#-Vq^h7NnW!Jj^gqB{8wi z%8olIhEzS6T!Dc6g^9l-$QJ$w*axUE;(H!qIZAph{bU*j3sO?gsoKw*R-_J927Hch z6^S||FsTCl_?h&4RKmj2uiVF@;(4|nuIr)TQ-!A(m8caEV$tG4i(|g*@>jiXz_fdFTD$o3;)bE_gF?ZW5 z@5zY2>(i|*%QXB&bRxFpHKRc|wv<>U8Uw^n1Bw$6!Y8FR&;J9w?iTM3$h*zsck>9G zVoO35HDPt$Nrq&M*tdItKwrkMb(|&Ba%(qs8@M)-GT}O=1x84@tQ+6{;wjs>_UoYz zHa+u;W}3s5DBw%8{59r=H)tWJ00BD`5-V`V+S(qvHIH4&P+?6qF6Pb!-d7x|d;t?8 zGN8GM#rxY~xTIy%$J);TU8n$Cpd{z1;rBR0N!oq4y1%W1`>2J-LjTH_2JuVLVyetK z);Q1G4^n8pG_IL(Hv!4N-Yet$3cGA2bl%RyzhkI2NATXGuTB!K6C?aI63=k9YDN0`*&gUt)Ujf-|DBBc5w_x zFHmiAcvsGTAt`JSiJ3*iRUd3UYdcl^gjFziUA2NLGjY01sD!_RR>hO0I*T@WdD;yJ zyVn)b0{eJXb=v&Api}QT@}h3z-yliGW6=c!{exHiTpPQzl1n_{;CDul`(5Q9Eb#)M&ECNX$T5*io(83qidt>@xVLelb(C^Y3--y@9Epfg>sl0_?*;UxfDI9Gj6Vb zRPLb^!1tH`MQD`0o}|>j?>%?-pz+COe#-#9xk5#+gte8p=GLA?!LEq`#}*MHpy$%< zP`Bq%E9r0&TSlcRl83~5{_ZjHVHY#6Hokdl>-NF|grjxCV)=$GR#>?6H=&`|`o3w{ zOi6^n^e29N*8{Vw%$L~c%{Pu!vJ6|rvx>aTK5%#OJOa;iT8&bENx{PmpA@~@GV+TNnEuk!UThaY>Crb;}#dyKg`}$!e@B)Ypy7rWL;#-aQG=OVdoz8n>S^m z$1!!)G65gT(JvX<-whCKPc<%}tA@Fi38jUxv)oO7ZY2C1g3Q;Q8fcZgA}J7Ac=bW> zeHW6;@gC1L9EqhlVg0y@@dmF;r!G7`oNs?%Xo7paZuRB)WvjsQy>OqmDv83Sr3*uY z(a`Vk*NKFD%j$*lWo&{}j$fUqSf|Q4pEJ@XE*tP3j{BVOB|j^@>cfDc5|3Cg&f0Qu z6{mY#C3J?X8wKj#X67<>MHZI~3NsE5XU)P4ABcK@qt-}FgOr@Vu&v{KMkF+GpT_2& zz-T#14#anLwJ>2_gik67h4RHw=WSXRmdsnd*B$E=Nv5Lp2}o1JOyPG`@fEvuOaQu30e~zCbNg+=AnvW0 z0~pHC44j;|W??O0VW2KdFLZ4F)aZlb-v-W6~fPun^*9iX)?!B#m}BO7}X zBGr6Qfv(O}5bOY*cW{gcde*JKTff%$SrU9|%nYw>1k+=v0K#{gfI^vHlClKr1{K1} zCw(%XwG#Y7GB{26w+b>u1hKYcEgf_ z?`A4FIuf&kL`{%6hsyzg4G`@qBij%f-X8CA4ZT1OsZNiM)+(?WDGw+*RLQU(=DFAV z!+?(IGSBaNGX1pQV_mGv4ser6tcSqHd%cW&Klip0w^M6GeW(4F)dzZSt9n0x)5m1w zAYy{(JXniyJ$b<>1U0wG*?hY3SWntVtE3>0DfA;FSIhj&SRssHhgV4+p%w$>SLBOB zVQ?}J&cPRZnTpD`A8wtN|E@e{PSHzwamd(<;j9*RsTJPH98h|8NyJm*GFOjgIf`@r z&y-1-0kHH(GIBy{&Int-kxT^)z<1@m2G=UifbW~g|@MNsY8F0Y>-{x6K zBIy8WuOF+cwSVKdHswy6QOzrxXzj(d}qY^|xLJ6NS9L#$Ihra=9s#>G8R5A+C3q zd3@~dwpQ-$Z%_fNw_X4Iwu6<;=2GlHmr?xROBR8Q|I^!8HQqT}*b%=!|L{LaC-HQu z?}bTdapS=6<&D9QRp??>R8a3FJ?&k&bT#wX^T$gFxx2EqpirV0sj~b1S;np(@IIKP;p-Y0=@BB#J_SF0211@ zK-a7v20G@JSN`yUNaR>bXc+T9F4wp6i~G3#1Em!?=GtMKr3IyhxIG?v&~$5DeHE-3 zbvUsvx|!geu$NHvL)K6)b3?Se-TKekx@AMYw{|V5=RKP7%am}c zz_yi3g0mGCgly1!Pv5S8!x-t9UX3#FTx7b3vZvMw+z$ET?&x-MUp>3H=IN^f^pna_ zpx=ee*yj`fP>Sq8<5hh<)BuO&63cOVMKnwyyB9i>VIL0oKC|q5a@rEV$sAl#KnKLd z2ug|*Ex7=D1$H+=6R8PH<=!e75i)$F^j3i~4geZX?r6RV!jS$0%&;s%BUD>p!{=A# z9HTX}2#LD}`6ECdGCszg*@bSwrX*80OBZHL^a+0_Mk(k2;BS}tJ6IAN&7}6ZfWoJZ zJS*p}{*%-sXn2y}8P%BlrgG!}uA#Jw*|5g3{8LjrH_U_EFn-xoW6_PRmDeM0hWF1r z*UZ8|_++2`zJY}ckJeWJ<1+*xsh<`kH(7Xq3plHt_8W5+EXS4jmxz3mkO87#2G(7- z0C`D6hoVBOD>Wt(@cikV4#hrdpagz4E^c0TF{+Y}SCLT0nYnvk{-wYCtTT66A2 z&DO~7>#cM@NH^^(A%{lS0CTN~p7$60aFb47*X7-HMTd zMGK?UGoNna=NR4&QRx6iRH?`@p=2r_Q0Rg;1R-DsCICXF4cDbY`Mh{^v>4YD6WNBl zq*A4N2_g=^sbRpAL3aQ=Z9A_l%)ZY`oIs?PfijXulyoUYGvEHC)jxZ7=Ns(!rT5Pm zPu(#4mIf+##-QxRYcpb_&X`0xuTsFW6eGdyNi`OSJon8r8TZ!^rpCx|3*<`-8wUZ8 zviwPq4&|wv4Aw06(wO4oxZZQVV~H~?y>VTMOkC0oNB}C}9*1Al#DYSA66v_=9z z7}|0%JxMsp4zj8Wsyn}i;L~pj{jrp(|L2FWL}DI(TH{E-J<_5-Rbrf1hhnN$OwLo` ze6p<^@doD$>PbI9Ju9O7c-tno~FPCgvkyG@vY$aGoCa z;q$3s%Y}USx@ocrAW!K!0&Db=0Ybpp-h0z>OHF}uIZ6qYDJnhmAj!#XhBGI3Df`!W zEsQC>h4dViO6NmtRsOuBsbdbtEuO!^FWeg2zSwRM5G4uBVlWQ;Hp_X{pREsn62K^g zau}RkFVs5QYQ*@mqN+=9km)PVFv|JLFYCxL@9~z%WTAlC1rlE z0Sd}1=Bve;<|C}>Heds)DgPRoxfY{L(@{*qKRyseZoG&clase}JmVFiU8zInhA&ea z!(2F2Fg#M`T@sMpet=$PqxU_*xHn)g>g7jZOOa*s{{Y)346)pV?)VUy71wDV{ zzgLFC1s&cY@)zsy;aQR(I#~W z!r;B62haWyI=b}&=W1`*-Fqtw#_m6av=To!BDAYzo%0KE*Q)z-q~d`=8whNRqvmZW zu1ka6qt)ACZhvB5GrfMIuZm)dh=&rt$lb*GyciE@KaHYa-m0f={lUrj@TR=%y#Gf# zcrsAAz%X12L=(REVukC7;{E@D0s+QkD$Pkfd!muSL0yF44^6O<>V~7l3s#8Puq}19-$dt|qr=l~>b3i>G{`E-{wF2c&oI{(~MpzA9_*20XSjTWWyfzOHD1Xcu zVhzTfA@R=H%{aHB-f@z3EaCu)8>0C6KUe<)RP447ePyqC33Ay5@XW3x+{XQ%G8FM4 z&FSAqdwJ0O>}kEdX&4>Sy9eYP%uB9B6W)G6)FM`?gC-`9|4d--gbRkVw0>fe6AB`i z0Q}!qjOEf{vvz`AQkZ|QmRjx#0VXn#C}cO)5c414Idq?6VJ(WGWI;!rB%-V@GYuh`r1AtP9M-|Oko#ZMG$xD7b<6HND(X-;HDUgoQ z0n%N0m+d1JB2VxfR!%tCe5z?5z=iQ~xRAC|ZN{@z+&k`$MLq_?Wc;jt<&mrV(?!Kg z;)hQx8}yNwfPj4Tw2*=GCw~&sdHBW5+Z! zoY`{k{5I#E-tcQZhx4NqbY=Nn+e)*C%YCbN0TjpDCeFuk0}mlPa1mqkr|%$om!tnV z`e=0#i-D6@(q>o$C5?iSbD{Vz3Q6?G;0v zEVlMgwiDn+q=y+sAONDhEA#Ra>l@7dn~tbq-6>=E5mCGnO4ec*mnoV;W*6sOZe#Cv)mvI&hN8afK<@_?aX_ zva&8v`wJn4bgA$(>J`;GkWEU3<-JwYOR-6UBnrHgNnzgZGN=r_f?xrX_(5&3C1;Jz z5S;S83QvRH)gPPA03R?nAO<-5!LD;hy*ZdeuPDWa=;PTRr7>yVwsDRsc_xNLsg{(}*h^8(KWUc;%+T!mNS zJ`7qt7a+RiaiZC`-A2l~V@XCdS00aNR38-;sNHSH&}5dSk{*_)9jOlg9|Z}MCz z{nR%ym~O_!Hx_=%qLUW`%y>vyE&8k^+wDE5d{rA`z$s-v_)Qj&qEcreiZVZKjQc41 z$)Dgf5v4R3%?emeZ>K&zch1w=v$Xxzgi+NU3v_P!Yyt9DtlHW5rttIYF|wx3P4Rl@ z<#X%Le0KcbDf{oEURP)tBjgwlY}6W!_H@h6e~$@YdMo4Chi}JrAY09e=$qO^J~h1p zdrqtEt7&iM=jU6ydd*kl7SEh(A~py=o+~LU996z^fthPx@o{kcq*~d!x%9*Fc?UA$ zx`a3u0}!DeQO$s=Gxb5#2t_3Y!!Hz2V8>Jts2y`ovpu00?nw!#Y0|Ia-WBkX4TqmI z<&=t>jHp@)g|_xK++Gor_tOdz_No? z#~kH?*Bg;YF-4tgsOxgk*pu(9#@b+>j{ zri77Hm>JDtH6GPaXr?=U*klK-5^rz%;U~FHNZk;8J$AI~A~9ccMh$XpT@WXhqfV0H zD%KgBk%K*l?}Hgav#H5aGrF?pB>Q4%T~Nlm zz^tAZI$O!KGd-$@nL$s@oE2dkqeK}hYq!vpXc94)1FpwV;VBnHHo>6clE?OG5)Ms&d97la?@;^abdYMRe6U?TdppMpu5%w(5>C`HUX!m-3tS~gH_+% zj)%#!NE>!BhfCR_Tj*gT&tuL@(LiE#R#OFNtb6yODsn2!>Co0Hfs1OnKnk_!{|yGKDDx&Hg85(>cIwGF^ z5Z&0er|F||IE~I?>R9drVrD8Bu&A8aE_MJ+JeX7h)eykvCWPGsS2nVU=^BD`&8xjO zH&%KOh5HkGK+|vv%%5i0J5dQ!n}JC}&N?l{N1%D~qW#o0erhYRE-uW(@QOgKV7;+@qT(d^&Z_!$T*8@02ai&N4i3nA(wStv`~)ljK( z?Km}*_t0y(_vN7PCMyyhvi%Kw#W`*8ZO(k_!I8f8p9_?41NEag>i;M@?|7>JFOGli zaPPIRYed%NUL)HT*{;2^XGX4_8H&uhmvHSZBr`H1vK3w2>{7ZRR6>-ZkdpBI-QS-c z4}ZAV9q0W%uh;VlbLJJQZFza`d8#q$R9U#|-5+X!gY_9TIp~(#*5$c2mOE))siCXm zw!eN6dtR(jcZBty7`R3^pvy~yLO50Lbml8gzX}M*Qo2fmQGV9D6pyM3s*c#1&-D{O zJZWComtZNPW4PXMFKF%vPy-#;M>Zs#tX2_1t1X5*S;XxU;W164pr66l#v&MbgF3f+0E|9~_zfi6 zwd2VaSwb)bB5tL&D}5l7ZNLhJm)-{(xA0BK^;V~Vew%fmFj;G4KUI|cD#`2NsM z2^Mw&yVPZSm+T_(5f!a-4MpAAeXW=MJ&*1tn6}7;Yt}>+GU`vy_BW&N$aUnnejB`N zZbqbi4%c+IW_@+fasC9aF9R=q(GVDwYpQjW>>maIEZJ72EFtL3U;aje16R$`t?h|f zPhUphgkgRU<$G|$*t_va${%jYP|H{0<%U;3#2oK4eK~SBw{r`$*2pKS6&&b|T&5kM8<ogp`+-UXOXuf*+{O0Us|eT)vNtU~%xNp3u}w4AJ{%8w^1tWmoAc01Ah<>0uWK z5WD7B5Wjsy3gnAkO4Vlhejc(>#iF+hGMR~yL2kEn#yJVaDOL!;M>q%r=2!r-iizPLM64?aghOZw(umY!Zpd#kAHnxLXQ|SK7sH1#(kI zmvrnR+wI;G48Mm2xt{vLi~ahGfxH|Dr|9L2g>v3E*LVOnGChqa7TO^9plg~42%u6+ zBs~5Dl+FmO2K^eXbxB!U-LoQd|625DZ0@w)lBqAB9CCi7pfiRsM@RO`|PFC8m*}#Y2QJ`-|JqoQ&)P<)-%^x9K(0^RUSQ zl`5PCQIJja(vWyiljKBgi^sNRqp}CCIWHxeSS(FIe67S;@M3YsB%&Cwz&Exi`)*>A zgbC%xJhORvkC=JOMm$idfM)!M!#4G)33sBZoO;$=gM0}Iov6l_+I9`}F?6ks!zq<^ zDOz(9pG%@s_(rEfjN!c~r42aU7OPb+3_{TUl-BVGq&A!%G6mKMnxNvrH!NBcir8Sd#)#hR&W*C$p5i&8$f ziUSpV@$8+m-G}?!L^>7aQ#n2t!E)0?L8FOt-Or@4WAQAT(m$86QZS>>BO4Nce4n^r zlN@SBdhO2fpw>Nhi}r5yX|BI^m2%Ix&xU*2TN-4|tP`|yvE-+sWHaH|=C`OD4Dx-# zUz&|)efKa|yTUnlDn{cz7?7`L59BtzDV=;?wR`)IIXiER8Mf(vuHZ^@~~M z`jRbo;-40qVe~I3@V)Rd9Cv*uz&pM8%y_tjFZs;HgkwEc3-iD&{^iGBzM|8*QR>tI zX{5|qPvK6)jFfwWprLGU-n=n2uNdYV!Y}3Q{}G8oZ}7N5Z8quOMNual2@ir?`y(vE z*ey80HoThb99g*QFDQ~+8*g9n^tRGRhPDSrk6s0`$}ZvgaG#Ya7wp@N3@&bNms`kN zbiVxLKg4Sje8_yYf#K8UzBr)8c+hC03zU7$`H;#}eDtU>R zMX+*v03DF4)eUFe1@HX7EQSWurkiqk(WhwH0nQYfPa+b5Uy8h!I6R8ofN<&E=eZnc zkYoA_U0AC3RbXU+aTICXb*2nA?W)QgjIwawdQ{PMn+n@YEeArWeqp$392 zgh_^!I>)NaiBTAX1TH)9#>*nbuqPhmTU}OSc@?$T7sXAS??&WK8KlHe&sa&WT>vPFe zC1h3~7nn>gK&0iFy-^CD#36290KAArT%Q?59Xw6SM*&g8zU1JH+<=bW7xq%lUeMuk z-f#$ql)cT`!{;zl{{jS~w%WI4yg1!SlIcSl`+)op_`jsQJuIJ;knF| zWm>2jhR7kW5-&_Ec!`7UCHb6hlK_IZ4IYDXQQVho$SMyKn7BA9)$Azn$~uq4ttS9|DPE5&1KUlBfWSAaaEQg_U zKmB-Soy_?Xv%^aVX9HX=@YkupZfVq_W9&Oi1%;H_D?`#POTL6sTw zjrM3u6bCVBI0s7b|H16M(82I^l_6k`nm&IwoEa?JxyNK{tHp~HRsbbUw?PV0)AXmA z5l88Ya(7|dl-=YFqta1N@b^>&u?_~Q2J725v=a>4rI_*oAHq*x54+R4^d>D(nhL+( z)#cnLL6pKES4`sPH!3ri{V>1xv}cps^JlEpe?7k}j5~+~HMUr-QCH8z`2Gj<_T(E8 zF7*>Yx%Zb*s?zmt1frXvP?c_769XClGk!uaM|%_RidUA*^zTguNv;hGQpSeHn88Y! zJk(|mIvOgVLI}$uSXDb+P=UTy!Xm^>Bnz*;RASiu?Y;O?gT$eR4?oOz*4`*{>3O4~ zjE;Boi*t7ss9Pq*5!L9rhn}x^wi}Qw24bXKB6LNvd%M4FW!>1W?I+@=*RYJAb&jTF zoO5O|Nq^am2umYk_#52RFT2ub8Wq@t5^b_~@6JuH_xCmK!3L=|ifAKe8D zWWX~cOY(chg?mu&UZ>ytORK!rXns0>qVq;bJD+CdA4$@#BjH8YY0cudRTxB{I{C%* z%1T@q`#2(@_K;qAJGCj+7AxU7iHHpgz6gL2`k<4{=I+BCOPFit)Q%4mNHXYn`Rs~*Y_CialhETaH+c$TaU8M$ywcAGg@X0Gwzak0sd6q>+_)! zIWLu{q}bE7Ms#~3GYllELmuT^1%*&|WGkj)qs|WmGx9K;)Tg>F;RBE=iK9wNZJ)rr zG31uh4*S5MyR>}7=JasyRDQ%$JR90tL)S{-eB11qr9`_tp;d>=>TKYVUA{i7u`TQy zk_`#7Fbc}6v`+6(Zo~+3PdfnJ*Iw=UPzaQ{Bd`9rXSPpBFEmh$uquY~@^C@vBrirF z#n{#kn@PDS*0V23OMg7V%Ul9xwVk;`tK9>Xviays)!cu71g~~etHO^BJ*md6gRi8m zL;87m#zam2g-x)QsNb7gL_rVSo%;QPiTs(nQuMnO7!Y1q4no5{4J1mT4_FKRiqqcBD@81f0&`5>SYOt`0k(QQqQ>pzk;pc%?m7K=F3%dr{oba z1ICA4E8~p@xLceyM}C#P8H0zSHs=XBDWBYO2_Y^8of4<@{i2l*8V(ST^=dP2`awff zpzG07q^P>iah=Wu1#zGJ@5FthSX~q;4ukuC>qI%_>D?`|YYq zUMDi&N;9BcOPpa+stXKEcMIt-q+3Zj_`KWsYxsNkZ#ab zZufyS3Lz1*0#z@nhmEC}v8P>VUE)}S|ByGfyaS19x$+Uc%Khj~;A!!LEp%DM%;}~< zg53M0>wmY(I{F6haC*$qnjIxR;wDQTHPSxD0l>aO%UcpRG-pSe$Cq>zXSovOS(Fby zS-0Q%-ZcoY_=fY8I<)g}w+Z}CFi=Su5j1OgAr+L!p0|t%od3H0>$bC7(9T#pPFcsQ z>B8H^r?VrC@JMr&zmU&#;$gc=_o}Ic3}tRK^R!{n}OuVRE_iXsTX-+g;>kmj9-#;-QtDg!mgWs)z`S>|4tW~U z$ZTs~Tr#}Ha5ni61Ei8*D?Gb)xqXwE9AQt)gex}UG+(eYLU=*GgH;%F+gjDOXhp{d^BW$D z0tYn2V`zw2+!nyF<0ORPcBj96hNf6`Qyi@{Tms)dtIKG@zE=# zV3~(UX~V=rVQN0^v#J*~VNG!rz~h{D0n8E`S}wx#ch&?Bj-^ceBEZhsUSzx-CNRm1 zN?WoMG?;Pz%m}?I7vz#OJ$yYuwFg zLDKtT6*YyI>l{_e%5n-cCyXw*S7G|rd#jm{x6hezz$rUO0TBdrwp;WzB!e)$MqDa1 z$m3I`5XmvAV^{bRD7>8IW<&>fEv zwFaNTHCTo`!8EGWsw$@65SMFROgWy;W_jzMx^B`o?fGyTtXaA0KrAfee^ zRk4aY2)gZpnp)z3kVLFp3{=1eYnm2;jUe0PmF&56qS7&yH1v7Ye4I)C56D^c?mt7x zm0Sbqp5ruOvYwfMp%6TVq&3=m+mZqF1X!=wMYd#_0@V{FnGW7|E@db&<|P^mdj70Y zx19^gSbk2IroBGv4~!Zxb#bpq+1#Ho$t?*_$cIbM6nLs{x|Np^>q7Z~rQ&69 zE}ri|#y(UPdtIQ}&1HRim=bSDs|iNbs!pQV0rT@Si?A+0qF3PXwrO))i{)y(K?XWo zt*Dc80<7p{>kN(D(3OBDVlbNLqyiU!_%PvK#;lfeN-l}AKlLamxA8V1Uq*Qw8jYD5 zW-?YQ*RNhy<~V0rwO*j)Eu%Ew000k38&G5fTZDkgO3FrY1DrKi4TtDxT$AD_UP(yX zf@}T1fCqbNOy*4D3m)|5ZbR3lh-8h)&=D^(-mlVa5t`ursRHoOBBBF+lBT6fY4;V* z(XKl&{FY!BsK9PKU8Atzt#s=FO~DLUAJWuMT0arMG8&A|GG$t)9An2}JuG$wy zKv>#7WYtOaq>hZCn>^cSDW4zTz4j%(%Y`S-hGb<3gw`ayt_ zO(gtu(H58?eXof7!QD?l%!nYVhe5_$v7a!>;$d`r)M(5 zqV-EDb26$nmv9JddBF}B%jUmTs|`aw#B<&xH6a2t@npDt|kX1<@#y z3B-75hVlIeJau@<3yu{w{pHcvXyDv!yl6ww^%$lQ3Fj1}YxCXe19uq|+{-wAqOaILu3zOEkff|Eo z8a`o$0k@0erxs**#|$ej*6^YI)9M}t(Ly`)`AFi=FDa%<{gbwFWK_GUg&#*>YNoA5QNSl(@wLDNKufGr$TC$Krz?rC3K*c) zv_)_9!E8w&<}v<(!ufY=3eFFzj3$ z?t*rZpn(ypTh>mYD~p$=`(0KmAGiwVv0RTgJ^wB;0{$CY${@HHTg(v3Kwr6MMQ_#$ zO7{;}At(Zg2y2cBY`%x$D>`I1Z`zRp=ldc=$G0>-x#*Z-W!W5A9PGvNrlnhKtwSW9 zU>Tm%6Mj#>!~gI?&+@ssZmu)cQzqBW>zKxV4Q*pCAh-yLN4`~VYg6MhSdID*I3CZb z>&^<&@AXNq+oFF@F+{K2n$B!}RYboc;NNAYy~23@=DRInquW{FJ+63s%Y-HLCVg0m z%Kv7oW&C(1;Q3PlJbt^&Ow?3xEHEEWSojo8f;|(`q<9Tw8<%VeW;=DDR3aNxfTxHQ zKtV?E!CHQJ9=+b6+|q2(sR^4uspnHOnCj}1wyS>?oMw;+no5WzF`pW=sL$Jel-|}h zDe$_%5n=kvhdqIQ;t#=4%oMH$C+ZJrnYMmger&4s;!%Ta%{go7b@n}NUx9s>dm2nX z-aEW}O-m;4sg82kGQF7_EZ%N(4w2Ek__r)R5YhHGHaWYbw+p6oSW$&OO z-@x;&I*mJN3gm=gL7LY_7Bv0omtX-xL3cNzz zMvy*TOwKW0ztP}i-p1h5#gf6F+1>R2;<_ID)8I(#>Gv}#kKTMZ;+X?N9x0|zjP6RD zdl>d<9>=7je1L3Er#wvtkcD>95N$U)-qgkzZQ!Mgn%O|}O;@$56}gsW0Pra|2MnS3 zP?aT|4LefGVBZW`mGol$1%*Lm027BE#M*u2b*eQ&wQ9wVTq-9{ zg_+p830O-ScybW~&lzEsIxf*R!u%$TxgY z^bfavn1t1vl?=B$Yq$Hc!cMVeXXl|-GRKyF&uk8a8^TFy6A_YPB@}oYR(DuhQFqwd z$f~499E7O7t-5MW{KOK8un}&ky^W+dv5zMdB(qmnCFr-xRU7F(wEjC%;4x%GLB1}G zYiRnlVp`^GG1UOAr0gNUhP``EBP+cXS{rW7{ycBT8Ym|RbnW1_^n~-2MeSXm`)sqK zfbWN81r%FZeVVh`=%Iv+rmzyGw7ZT`)D*!z)|YYC%ZqM#zc_9%fmD1eA0{^_z@k56 z^FWk*P3SG(jAo`8YJ{wdnC*~Aw~8nrH2)&Up&ZQiw3-qk zSO2~Q!+(IDf>_|!bf!GdkfF5()S0U^b$0_MKQdcJ}NVnQ*KFo;&r!8Ku1 zY1O+@+%<*@H(x)bf)M4}VvdGE52}NHVn1GdQ~K^#rQMMVFZ_qXQHxDugp-oHml`?U z#yr=je7ac_WSX79fz>Cr^I(sk_S!SMo-kUUugh4toaLQ)k*FdG|D6+XF);_maCuJs zexb}!&Vk$o(Mm~^#hZJNEbh9K{twjVzUD)Uo_>{8WME&AtGntaN8;CoiXpXqS&H}R zag7Kle#4GA@#6tHaH8fisL1BXcd<)GK?#CbuJ0`p6z zh(lB+Wp43qsQiXuT32cDNA%;kJB_+#Nh!L71BiOSk2d}$VSgrzoXmt;9+?Vu8;;#3 znG(G^Q`ODort;5^Y-8y`>7nMo+~4uW?=sYkQFnp59oVJ~YZWSXBp0|>6^h?OOX+^j z5w$20y}x^+A0f2jEJlQRccs0-t0zth@X;HLNf#ZT3q2i98Y$FoY+DgfDlOfd$mDX~ z;BeUdv2EZ4(O%6|Ur(qyhxdLkT<|*w;F-W2DxBT-S#7a+*u?i!q-+U;sTI_fWD$M} zv?(onTsa2cs;H9Pj~;u7AGi?iIkhQi3R;-&AiHPqkhBn^-;mPdyJ>n2d@3t!XT=>@ zgKXWCk1!1_?)Q_%hclPUn7C5Y{Ph?k4Z@chZm8gOPd){<4#kjU*T!(rxwtah!Y(kW^BL9*Lk}_M|DXIIvJNg&ru=W z;}uU&?!VLI!896c#u7n$ds@aRw>HEA-{l&nctJNc_eC2D!wU0n2qU-HX~5DoiHbtt zu>4f>xuoBH0;v2Cq9W`zV}f~0K%n#88W_B!+32RBQ@%ap$$gX#yjP$?Wh}_$Teuih z`<3$qkxNx3j;sxhyb3xZx$8_bzoB)7^gjrBO2_&^H^cTfxY@JgjdF=B#V-2*8u9~0 z?CQ1$Tj^O-F3|VeIy=(#bCc6&=(1}I83dMNNXX}I=tSHTaj;0{wNt9S)C=%#$!ihz z9e{0`G!MK_GxWC!BN{n9?149#CE}C2HnP~ zlLrm`JBEsGKDBGTpmNHdjrVjjlt*(FOk0%CB*yJvJbMDF80haDj(2a*TT{!52y|+V z{gqpm{c$1sM_E0zdvlLl9wyVBn&Qi!+4X?q(!UAo5ZBa_CeS*OJ)Gx`H5@7R{BVWk z2G)4~V+n<^;Lb2HRD?9d@yW{ym|RXa*JwV$yOLW!48D3lW?<|Y2Z@7C-dtfrpaCl> zaD%^2nooQhtm~I3^w`=U%pht7Wu!kuZ%M2pAy_Jqb@ubxxB^rgETHPZz8G-_GToFB z=+f1o(jy#m%jEiKRcqT}KHrYxVAUfU|A|J6E}=1;PnxdgO>9HS2#?eGWC{Zca&JUhepLj@YP4JR2JD$2Gg-{w%)LM`(_upH~{n zSl2d%fN(sq_jJq;bZY%ei4%U0PViWwM%DEM~tv%UccKe1FhhIo8}ScH-T!9G1K~ z&x=c2_caRXf9DfcX~SH%`-oX*$Nkp}sS5*RIZVLyEM-HP%3AFGFxRm~QIEyT_g(}v zAdQ+up{(_F?V;`GU$-FoXg(oBkiJUpZ`$=`H{My)KX*QEhA6G`z8F;I9pl~nq287A z`rbc=Z={|dYQVA`MDTgyqn@a(1(sHwKAuV5U$wlBXn~)rc=$4N7prV%W?F04w}i6+ z^B3*s3*IR)t@}-c?^r*H+l!|>M~3rCgwAK%FTMph{A5T>-r?mYLYvbBWZI8Ld9V$3 z&xK^T4F^A{@*Esasd?_aPQMq6;uG3sk^5*ZGe^34FD?G5WMjkisaAw$l2|^+lsp-2 zaf=#eg-h?QYq?76Q<1O4IgnMpm2^87f;P^ajA1wXz;JCsjKqK)lno`jU6r=+kS+kt^a*Ln9?{bH)IOwz-i{w%KduW%^`D$9 zv;{aO_E#>oeV?;|xWX%7T?@Ym=9O4ZpAVm!Ad>XARa%QIHmmgEH6mX`?U3Ie*7F_qbs6kh+lS`N59T_Dv zrd`LXA*j@p{mMo`y!-sPyT|oI$++O3O$FFWQAaH7OLiZmP_%xBiDD zM-=>=8Q$AqA37MLjfE{C=j+>rzbroMzkfr<7tI&STEVk{EbnmfC? zL_fmt3;`k^nC~<&$OmRH1GmC6#8T}7Zwq1o(p$gb|PL>rkL zg+)7O!ExrdmvVm9Ho$qW>~plYM`24&u`3*3DN;gKf+gdE0#pStp|d2FN8`0Q;%1lW z>yBJzt#cBUVS=Gjfl-;l8yX%7-%Yr&KNX+`IL34P&I!thhGc`|z9v{!xFg>bl9T>HK-&62Y@?XHP^zwDe4SzGFyg zFEX@*P$^CdYQdadG06bL_686iLniK0Va$T&O)Bpj(+l#&^h_dFQKswyYH!WxqQ&j3 z?OS)BpV28PFuHhum!(uOjf)zsUBlv|2m(NbxYd871|k6FbhanY76#ffJH;gPrz;D0 z77t8p*)l);mrPkE5yC-2F*jE@l0f-VV0_HHJU?euY|+&WoRw_qBrs+yMi0g`HS zfs>~^}qGJpSkqnGR>;%6X*z{IE@#U%js zcY0-KW&1A@AsjR5Qy|(u*nF0wrV7HXp*l; z?|ve+zfMY-S^)ijYapCN%eSx6AYJz0_{!iFOM2m)%p^If{C0cM;WYpT`O6D})T7=t4|zp+&m8^_Iw z`+1sK7f9mUsSQnHG$2ACy<`ppX0j( zK3jSJu2NHs>YdBjfMCkMbR)|8(6CDjZQd_{s!e(O->9%8@7`F5}sAknFpB$I(fm z&9zX|KT?gkQR@-0B#C7n^-P%^KgfT;$SNq2b1HF?FEh#2H5&VS7fC-EQv~b6aQ_llGaB#?&=tFqmG@8MuKda7Up0)>HX}OH!D0#Zm>#bzjUbe)egGCn? z7kKEbg_D4l&t)(kF@xLy@5Wwa+M3b@SP`sP(++7P; zgiHqrX{f(4T=ikN`p(zql}ct?i#;u07(ye==i374lo$r7dh7t@(PqsplGykXd29rM0a->CM6rBryi8JzhrSDPHaC(0ut z>bypa_iq&;a5mo5MJ0tfOWYvrG9hIy0LGyv6KhC;_3B09(C2Wf8hfo6i=TtBU=E}d z{5Y_kh6-cUl01-hd1pUazh)QcoZ*xo{4CAjeQt0tb9ekWuudW^`|`(oJOE_(+Rnx0 zO00n-)1c5ZC9`4&w1P1O#3&2!g=K0{@~VZ|y=9i41XEds!Pi`>iU;{-D+ZV3r(sch z0=0H}fhIGO6URkTMay^~KOQdy>e5~7b1AX_lXgrrf|;|ak6&78e@5W}e~G+RO98)& ziAlzaOO^*fu0gD;AxUC~Yy0S9v#^azz}Gi{RCX=sWdx~ltY8P~Td6?l)<@Rg)Dhr{ zNx4U_3^kSP30z`GLFiE9Tn)H{!V#?I`yWJ7klLTWe)G7PVPj9!w+-+y#jo`uI&t*3 zBST`2ZG%iG1Eg(Qu;Y6N*}>J4_NKmm<-+-FgOnz6*nuG13tcbJB?Ej?$@t>XbJ8b# z?u4i)O7hVkM70;=I^<vLvr}{_*w5a zy@yBBwaO(!FFgrKVOW%fv(P&GK=)cNXHpq`*fW?-HTP73-?)tS2|wR3@Ivw<@nWKp z{bHHMudB^LL}TN-2E66B7SC19$}lI{MhJU34rbSkRK<=C!jOew&6{RFfvMCGN z*-e#&J?-3SbXj1~)|PF}@AuZ=10@v=yThM~(~$#TyS&?|HO@;b|M!pXlat*|338PR zA$LlFJ;kv<=LeFTUHL;Fo8DY#@$UIGWB8);Kj8P8(bD^e#?L+Z8nV61cK;SKFiPK` zpU?7DC73j6j-$Q5)$*KlA9!6dSB5A3$@3+){rx_s>q9{l&e#T<8}zcYW$SW~Y&pC> z_%apL%RPTwFtaP(-(9W2X!#n_IA-W~k5#3ya4;<90K2fwy=-A@gWy2`;)or9UjZcX$c7&r z#>Ea2ss2QnjwF+j1UXj2Aj&6W%n$WxIMPR z#K*!IHk0{e+HVIc?K+r^79wYIfukIV#W7tVfMM7hnS5Qz=em#lMw{17 zF8vf20l$I&wSC3Rl$2r>J~xm4Ov=ZS?0P$U;k}|H5ePk3oz0oJr(ZB+^H_H62O7Yx zmFk=#gw#-^CXomYO5>c5zt;T#C}mz} zeXO(G(PSA6La){vn&C)!etW8-a=VpJ@5{^zP7TQF1?IEV&{raiJnFF}hPU>FcbS(3 zMcnCG$7h{yTo#=)I=}gMDnwt?s`{EA3=&{hP?F%dyO7*l>Qd%d7v!Z&XWB~ej{O0D zb#+{fn(b3*`{EA-0!z;Y9 zM(QrmY9hecTGwbnoBiu>x~hb00B~%+f^!Y5bA#%|Zm5g5*2XupSEU>135Gvt&yXM2 z+vAvm-|wo4TBNtmn!52h(OMoNs#;-C#$L_b%yvCVWmdg}3cpI5TMyc*W+TVO%QvpY zO%}R4{s$BrOY&(<0Jv0SL)S~CM6Z@MV_-jX9OM&zn6>wh-bS$EP(2IPo7yrRGQe<7 z`O{|0;wGYQh|nTd^bI(NKI20+&-wpAv5Wa}x2`syl&~x$9;R!6jP1H-+KVL6$E1I} zEG2)0+++|Em|fHe5jXkWz$Mejyb17@??u7<=v&2Hu3G{nFn0j=0Jv zE7BH}=$uB0BN;e`Mf0Qbd|p8OtESxXGF-w zWvb`12`g|a%W%by+Ud8Bg){9)lS#nf&7V!EJgU)sriCimQSa7^a7OGX^91f3ZzkGM zS0q2y&5ZQ>lPyA~Q5=-_1>bN31onX=`REg}_p}~R3o7U3ht`a*^%9AHR8`63mA{47 zBI`Px)+{`t?YWpruowcwM2NoQ$PCA1uh;RZh4HGc$(IOt3C5*^!@@Z9B$oh@?Bj98 z=S;X_6slXGY7OAA>P$YQXr~0F<$+Tqn`PR1~Gnw+*8z}}ttL=s6)C@l} zPz0Npt2GDpr8KvA(`ZYBVnE%^24=9{WeE|S+m!?9gU-P^UEV$a+QvqYS*SCPclvMJ zwF|G`YNV`E_T{&Rja&8y=#II|%s-_dIO=iKC>l=w9SDK&~lo(Nm-=+yi z$g?`r1XYrz&taAq*X`{i^(^y{J_oJR(X(g)A>TKSG#M0oiJ*r=^#k*J_b&-S*Ulp< zJ~Byf@n72Kc-yYlZhJeZ+)rGX_veb~@kAJD!&;1Urca)Tzn%Ehz>cbx(*^wNk!tR! z+(4Uj1eg11?^9tKcP__|A5T4ENn#qTs%gy0?BmKbV`HoiQ?3B6dvykvNgyT>|o9JNmsy@9flz>$<4A1rATMBDm)a8$ue->+We+oOsk_7xu5 z2HK2!w}ZTxd6NTP>L-i@wL!2Ibzi(I6WUgbzLfn~I=$;-_9S-0S9+tguIP_2h?6nCMl9`>v189#f~( zLczn^b=0vb2C zX!O8ALu*P`Fy5|W^tQdV;MC`ei_U2D9dVnlx3)aoJsR5s+FQTNKdta#msgGW8U%1q zRB_=+URDOt$c8A<#4)-+WAP4+R@K+848OYQb*;i60VV>qtl6#ETrw#mpScLCf_!+PO0B}rxAM~ zLbGPt`S`Bjc9@54dUtgXm9s5O7-g=e^*b)JJl9<4HsLPGE{wrQ*cNI_LH{e1nQDVG zZ`1D-wRVMrQm3omX`VSOOnH?Zhl*zA)g+Hg{_58pe-Kzkv@ymkPw$t;eFr9_b8MZ8 zKjQ@xqfz9g)RN@9aa2>_`{b+yUPOBE_k~JIexTtc-hDphN#U#3&D;|jF`!i_;)OXy z$tB&|k(z;eA8ps+v~{!OMDYAqtGm;^W&6agmd?})Y+hmb`K~X@J+t-IZJ@P%j7rD% z%^#wzMHhNSDVK=2x&-_{Iu z*N1y-L)Q_no*75#)@@kIQH;iD*Yd8(=l3SV;SAJwnXP@o%ZNyov6B^xXFHV9DPXdE=UjjTXAG~Ss**#C6+3&I4YcOile0na-*TvP^TjhI9`j9uZ zMdNHd3H?hqQN`!XmkJ*g@rTZi`h1MhaP0&U5)gloR$pUyYG_9fKCppBKEN>IQ1s@Z-+q9=OU zrM1|r@1j)K)F6fjG*1;CUKQXa6Wf;To`#Wl0uWF37IJFIB@ww%?)1bCsw?E_%B)Mf zX}&GC<)2-ZigaFih^lbS#YJ8y4Fy#9h*y*c3e%La-7JE`@%~W6nxS_$W_O z53PUUc8$<5e0aTN`@Z14EA)S})uZIdsQ_)~9aq4N* zF#1WJ0;jmlP?z>ElkDHz4|C1JL1_@!BdQAL?Vd}lYV!<;TGm63u7;&Tu^I0>Mx%3o z@A8NZA+YrE;?~}^DM-GApNM-JC5cSf%OnX4bvVe-KjJ^SCe&@R<zOI#s>H$-@&a&FE4`$NN82(>lPlLrfYz(Hi6nB7!B+D|;h zd~JJ|6FLs>!Dyikv2zMk@%A63H{_`Ip7|^#A$hE$<(9`7P+JmqX{+L5P;LpjQe}wZ zDQ3cBJVZ>qQ>i-lr!MGtLhS^l=?t{%QBVkzA{jBqe+6{H^ zx6e%1USzb*hDkC~% z>iMYE%xq_OljP^Q)`oAtw(QTWtxi}F5o@NgSpkx}87||I4DN>O6CI_%BUS~3r{mB0u+7r79R~ATlgk(*(MZNIJCX?!&;#68i2tr`weNi!m2q5i_*ch z6ffP-cGG<`AB%+QQS=V{-IQny0=lX2_~vzWEewnSU{pA_IG;h{GE#=!6qU}nW)G;! zB5AR*1$%hjwg}=FoHo4dpqnm7ub@McktV;YIrwX`5&YHsXl)~ap8VA*SNT!jm}`D~*L%Atsnnb(pT%uL@FAKi%D^v>>p*OrMGD-;yfmmZ zakqechfHPuo0|i3B2tmU3&d)X6e*UP0m6)^aVvYek6W{9!eS48V7; zw(=>D6iB$Bu!M*p&j@q6Clvw|vvKJ#(R>?@0#E^_9Pv^``UJG34vC@4Iu8}11G`Gk zDf-K%3pkLAr9gSYOulS~^Pm(%AK7v$JBOh79=bCA|KnW<1}46NPBbRuG4pS?rB{(Rwzti!gCzvMX zD?+~;NlkMXr^Rse&M9vxz$-((W0V*wpa0H{44aaS>DQ1V2AA)w>1w(F z184gIw#XYO_~3<-H^mj>kc})di2z&~SF==FGLXZw8-F+Bd+RG7&1U?KDe(7Yjs)iT z_anP{Vrw0FR$T@^btlx$M?kt}O6vZ%An%TzCasUJBGSK@TCmnrphsfHaJD;ipZgRr z8fwDvDL6znZ27LODT$9oXX46p!sl&sC2Zv;%o+!^3ho}!%;o7obLOF8O0n-nKMB>H z^ePkfB&cMscGklg5eXW3SPM&4=?R7DK#OYTU>S!|g&$DBM@t&8#Oq;0R~7UmSQv6q}OBPO{@#yZF_}j zh-K(4TASZVqN^J!=uN9+Y?9op9}7wfc|)XY2c0|FachAEf$uhT9~gdukgLmbmAHwM z;4qayNBR=aT41ME*D{mV)rK}Lp|^)>zjkG!`IO>c+WRlIzj#bOv<-s4?>;9*JUF!M z7HVs4XsJeWL34J{R;bj}(08rB;>hLHl8>dh97QODfxZwXisA^M$oV=3Zyx#8}%C*9Gu_wQ=;g!{q{M zzTOtw8vEV!j&uKh>kWMUqKsA@aF1X)1Ui=VLL@LxI)jypKuL4w;?7;oaeRagDK99+ z7P(JVmoKW;$g*9z)r_`Vu*4K#Ueco2G|rduD~R`3i-EI98ob?Z)>oL!ot4F!C?G~U{pq<+2KlTr z@w+n6tZwMdHX0Ocu0(G_8#p%i++vkj%PRo(C4iZkGna|uWCMUAubWl!gx5PBP0={#yul}}y6CRI{^c!KcM`uhDm94MP*Kj&R%w^~wCZ|b30N(u21iT`g zX0^i5ar27550d&dGP)%Sx%D4Qtx3JZmx9-viRS1ukwCkTg~L2}dgy+5qT86v;4&DR zEpsyBa6fAUoWd1;hqc3Wlb2&JyWWxi!s@K@{po?f0hkJ(mQ%DqAhKXL)j|IHD8@(T ztqg>X6`pM9YYO?@JomhTOJ`8*?QPzN9mV(ltii@g$MVeF^RbV3S&bD%q*l<9zF#>{ z4h4Fc6Z`Mdm$W-GX^)?!ShjWizmwm?P@zKVU>guM9wf1}49->o3^L$dzDky7g)gLm zcZZ!l!Um`P+7fnI)^9(3V{RE@Q{a;F(aC$K$#mVa9$-C2ag>UA&S``{+Ls|)Ke`OIXL)&_wuCjfS-k!(C&gRTG2E$U4)DL z-aTN+>pEe6xM4Or+g>D}1A2V^x?=O-9c2jOVtYeqLu|Y2cvl(JwY42Mviqk z6I(@>(KkHUo0C(!*H?QcD@O~YE+ z60p_`qrdz<_rS6F5n*U-t{!|nHM`&T2FC26R*#+^PhA2?~;MfRy70f=>DbA$AxhTtJZvH`iq6T2QD!ld!OuWrJ4# z=n4tx8XYs%z^`JU(8ZPfH~rhrW{7XiwIHCC@pkcj$@ZX%g0r}~PXs4~o~XqAI8B{~ z1GL8yFH6U~H6XLX7OlIPo6woOse_?xusvAaQISV|69&a1=cwFE&2tLx+f0N+;B1xQ zV#Qk!D+tTV2Po=pS_6pFKw?*VYx8)5-h$dOJ44A>9QA}=KNU2DVT~ywqBs$~9hP-9 z7muzH1K;0hJ?EKUo}VCH^RiO4Do7_HMxRDPn4{CrHP0nM1Ag+vMf`A728kR{j9Ll4 zGWl_2K!^SM<-jBD=BB9O_CaXaiovRyZA`?1bWS9})z7!Ih4FP;^YqOK$jq`*;B>7l zL|q;mH6Y~}Y)Eixk8{n3Ls7y^5mp;?pgmIa&&bCUcI;d8G}Lc@5|* zqBL9$=Dht>cB2Kwh7Gbmx1yq1_w+}#57w+6?3ulkP<_N_K71)%TSjaI!wIB!UI_=S z%}&=w=Qd0~#9b&AkVS`aWe+Z%^9j$rLCz|`TZmIP_VM~vf#02MgF^im^JQ43=Y+Jc z_Hm+Kx6+X6m8-ohrNO?@V|7OTLi2vp1xoJ*z8Kom8hM-u!l-{FQ(1sIi=eN&Y2#*2 zxU4rCe|Vly+BM!NZr#G92H1YkeQh^=@BSdg_6+d^rK>*v#=&qMHdN!4->-v01=C@) zGbA_hkPdGOi8$e6so>(>TsqO+TxSjP`{mOfVjA=`=7ibKWIMm;@X?qY{^goSh=?Zd z)pYk)CKFL1iHysWpANg$qZGAVi#$)Ej$M$9d9T?*b4$|pmMhkvv{Ft>F4zez;3zOK zhggmyTM>8J9Kos;KnOe+E-?w1j3d>p?z_ib!D@00oj7sln8-P8lhD663dXdJKnfUP z8DV|Dva;PfR?}-eX)#c$=c}uCL5fs-8G^-ww>U`~WUbWd_DBY3knk^`;Q==ly`sUc zkv2eco!S#LyV2Ct<&56X$DKeO6t$z?i>a36UtofJ70_+@x*6?S3K8)Gz^94Cl4q$( zpQ`6h$cPkMFY%(Hi8pf)$>A{uv_|jAxJQH|XIcmh(wgUGe@e9$tI~+a^10)}RBE zzc9QY;>ogV%+u^ttfc0)K>hH&oa`lz{S*f#;F_V8l-}Qvkr8oS|BS=+H6Z&{3M_TN z=hiX;u3!W@WsP5*b>*)&p~A%_9kvBOcKj%(OI(Eift3pZ904>hGbyOtGk1B%PEB+O z_Y-wiA-S4DBLA%~mQMrHSm#T0KF9Y+Z2D!wpi?%+N_fa1-N9R!sPL5ci=2(`RO*?* zF9h%R<=3R4X+4}cLnD=qT}cMVCQK)b$!dgVhK~#_T5_MtyP4jvIG=r4X9B(Ql@K|%%r1#%&JsLv(OoIGq8%J=bS&ZL}9QO zDn_z`-6~=ri`in^Y*c_$@0=&hn|A*JjV~uI7$p_4KIRX~IM$rdt=arH{MALl+r)AfX-fGJ&>s2z-ZoNdQR2CgQf5?o)3)tv(?EFfS;b)PY>M4YBhvqcxfm!&O74oYxNCap5i*2jKH#-{qd zY`AJiKzryWbxB`(sAY2{PuRYM7fjKW_zJ$BxLP>T&cYsG--2@3y-q#V>m`#mjx6@w zzkJZ)0%9waYlP(5B}l35${}6(OL81~BS<+~z8jg)?Y1mHNd4!UD}6zy$m)Vif4gV~ zHRHn`5|4iyi*HKjtny{~0B>n8K%`WL$*O$@bRdTKcllM=;Eph8sTw$@Z=({EZP*HEM8v9}IiDUfZ|D6*7g89@FV7_=w=8^-OtOeT`7_ z_^csmfAy&IM<}=nG&|TE33Tv)v&wR*qeH7E!B6jeGh-ub3X9zVu}(wsuIg2pQ*xT) zV_l$Abqe@0_g6}}XCxLL9!S)=3>`137<23s1jK|yaOg})nhPMA?o0RE>4e5E;OZP_ zLa{;EXL_dNRDGK~aJTlR3frSRi4^Z=TgXFd&_J(gT-KL?9!rI|1*ewpJ`bYTKh4MF zwtmGUFa-WzmyV|ZY?YfP0oinRfZ_sOsTD}VoLXkJWS{_<0*0daJBT*D`rZfl;wjY5 zs`#1ne}>S9kM>Gq;O0i=5;1DW4Bt0D5zrckB`5iLe0w$zOnxkdKDJyc=?7JQez%6N z;J=9763@c|lEw|0+K}B`RGNxk?U=(Bcdf?pYt%O8a5~k+C6HO z8O*l;eeT!06}jlk?nV2-It7}Oqx4E=skZkuMPy~sF$3NoA{|0Dz{Dk!AgEEN+9 zvxwaRuW#f(FEMo)xbJ>Hb!zS8gFidDpT50*XTCW<{7V+a>t&YwC;n9^$3^(S&uQH? z9C=3^_a7jQvr+!$K)Qqv&o@V45Xps>Vpb;p53&~^#BdF*u7>KPs;4Fy+2k>}X(6O| z#1c|+JHf($4%@0<NQORLyOnx}C z*WK6*fOLv~gvjXHtEF?`Q94+E2hH|}?==PC2S}DxRCuLS3q4hqa)w7^4DEwMKFx(2 z1U6~>`TKSIWY84MGs53!AO)eOx6B$ZUVj@=+!kmu?1&g7-!6^blMM5xiL>r^O}B@p zy&?>Ajl%OMQU4ZSloB|T?^TUzRPDzvvn&{iK5I}{WC1baOxSQ8P;*js*60(j6ng)* z81j|TV3&}Op#h(x>P4wTlJErvyrcfXe}Ixm-H%{aZ3(SVeZfIAT}w+eV`Z?*WeNH8 zcxusXbi2`U|Dmjxs?v7vVi&(QfR0wKLLZTvE_szKD?zO}uGxTe@xOO-1;>T~Jvah3 zgdF1(NeI6sanJN_*FzS&%w)>o->3B3&jaWxOfGAf^T^6Qk;+vzKGXQ#b6DWBAEKzUiZ}brwR*v><09BB zSmmPB>_-p$T43gM`)8j7dwHf>A6xlLgxrh;91%wkpkhbP9ch6GOWShoP~sI>r6V*l z+ZQgGt53TuI-l|Kx%pB=M4SrS?{k+ITxubqpX;CRg*6DtNZ-#r8$aLZb*EK6Jh6vf zBceBW5Vj|7{*=$b#d2%;4Bn$WjwH-yd)#HZD#+F4`4KIuuEpmX<-pjJa#uo!RQKJk zlu_mGGptAdaTh3+)31|qZ06AsQ{b6Pb~nffWQt&N@;lz$x@`KG%5^-?sZUS1b?;&# zLP8WkzRS3O^)2XZ)Nvdt5ebdMD=yy;X*hb3eMCPxajp4>Jf7Wc0fV+$w?@xklAMxu zQ^&plZJj6DLGRS_Q~o66n02C6B)j{S>Mv_;9@%~6ORWFU@VNbNYEu2~6R($Ee`+ld zaP11aI@<)Sq_@2HOGW}^nz{7W&?giekI+&3Ed{1HM$hLCs-0*IS`#-p8CqHS^hPI! zlUPAqW9^I>jGNsrI?GccjL8si?H^L%LxsgvbCxW9rqd|FI?P_4_AtMl#EyM za9#_ZaSAd14uzJv_YC~9^>$8=642Tc?^?pmvdrQe+qlUGe}>=KK06qi6gpCTxG|0? zV~ug8{1d&+KO$h8dMBc%qLei@f*3rfzETpn8w-lV)9af$$8V(|AgSsbl=|C0>aih) z*HipNKC;!zPIk0CJ_aigxZP|lPYr9`_EGZ^b*d#j<5>I0)e@8vg><#jgepNFM2!- z`$dqZ+QUxt0WjDoJO9*)^b8t`b)+w~vrnu5pII z#0$H7S9ay|q(s4|rQX^YBbS!FQ04`~2UZQyOFUa(FpWq#$-`vN0{lZ-YBa8`tz$!l z1@z*-71;W7EWcXx9m%(dnWsu-$jlTB=ek_6l9=y_x;L!mkfW)@Dux>H^lQByAU=#N zG)^RQ$cXg$q8hD(P-ggL%LQL3};!g@V;I!Ub9O_2zvafu}@aSqr%va{2ZQhFe_ z!bLHPxYdh^E2>ZjH>Q}QX&%bZBzHWW^v=1Um&W!k!gtzyr6HV*FQp!uBn+9or{!M+ z{Z{3Q{G0K?ROJGBM7BzQJQ<^zErwQ4s{tx>n7{!pNnbX{ObMNUDaUE-Z^7?76(SZ7 z3Y@n}O|bklh48Yn-~1&@PH25NjGQH{BBYYSjm`?QGbmL}COcuu^B2it3Uf$Yt1~|u zKQ}l|GcR$N)k!ge{F3@2#rs^Ea#tF^zFQD{jg^))Euhlt^N4gDA4!#o{W0Oluw2&;W)^+nu}A!w=tXu*xQ*z-C4FU(YG@uCBZ$bd&fkQ6uwEtybaqG;VKX2>)g4H*Lnk!dB zKK*99YgV#ovQp{fe!=GZbaC~Un2w*j`9Yv9DQUftG}P#yTDC3rV=f*EwfvIxAzdmi zU%pYnS>qc|@TdJiYTF9Rps-U7lB!$?A%{@&G(8JGc@#+#=dAj*6u6bgK1A}kZK17H ziz$yQYOp2CRYheliQ&xdhhjp^lOh2}w`7dqu#PGix%=cj6TZ%BIq+CjdJr^OB_S9f z8+58?3Cw$TKjZILVggzcT0pirq3T`Qch&%&T+K=GY;2I0hTt{5QVM-`phTR#4S%BOJ&;PS-8OL zGoShy>U5YM{afJbjLS@*Q?Nt|C*ws+`~d9_2UBVR-a^NVVquuMfia02D<`XAt?8th%a18q5{_gbGdw9MX3&@JQ#DTegrs^>z4FzB!U$QrG~D&Y zI$nfuCpAfQt`{Aiqz>qNM-G;_CRu@dtIpESfpL1b=*C}QCD#nd5za8&_48LZV+JGb z8@@z^c)a&4HX1Eujhr`>y$0&W)~4=;p6LCyi+&FIh?FW$L_HGZ9r%#(yyK2=1UqW+ z<>v+UB;$lb+B#VbHFRsR##(${n5Rm@Lc)jo<7^i;0v$WL1E6Jxe@hL)!{7S${RSTl zKJfZz%PR-Ecq7#xrZBv4dWjke2@4(~PP2u@BEuxq8Hy}=U%tJ!Pp3Q=gZ-|yIBQMy zBgk|5z}5`B?B55Vg)r9@A4CoO#%W_>h$XWYR3@i*-GjxS;>0=Sv35Y1HIaJfM5I_x zb3%qtVIx=`seJsfN-zt*ZD>T?*yCQ>Cnp~i^RoG1YfHWunSlC;V!3bQ!oj}%T%|Y4 z?%wtaW^xHfWDP#9g_fYsa4|RtP}oZ~uDaL9EV%!|X+A6A^1RgoP0yaX6P$g;kLcA6 z!L=b;BrJ>NR+J4EQw}hHe`N4u4X_X?Zz>)xV|=x6nR_tcbHnB9xoR(QW1OM4+!;TY z?Jwen3&-!YKe8qHpZn9XIyvwve7Io=e&4RUX`7?YG$@8QJrBmjE~&5v*)zpQeDz7P z?WOEdeJ~}4jWRlR9xg!$zVM*?{gG!#a5;U40M-BJ!<~2jFOLmR!M1y4&9&F$mRo8a z)!O|M&^zOJL~Z!zu1m3W)5>CYN7Nh3VYJk2u5OBYoZ!&n)dhP6AA|n@eI|o6d6NoA zlKJDUnv6{H0(S2_aR2hkAklID(Ii@8PCnpcyvqBj;0EPEFFSQ>y_Cb(CDzrAzGIPI z9``)%x;|O<2enQ^%D#WUcb;X@QfUz5j}hzdVsqu88w75HgDeBYLBN=?T5g-%>lot# zOmd3s>gpQmnCW9ypx?5sDTKO3&0qkvS=TvdE|JzHxLYV6&+Om5jnnT*xwP-1(e$LP zrL9y#o-w&{zxuaIWzonYnr$Gcm`P`*DFMv^8q{O|~peVt!`cmdYeG;-@U_;wn z*54WnoOkS8V#RP}x|-}Oro~y+z!3S1(^`eGBKg9yF>7Zy+irg`N3`F*0}*AtpO4@t zq;+!YxBjMnSGshV!!9hIr~>R~@pWZe4)`6_5(@bmg|=+OP3t3?^Au=lXx32M zzFHVpLzbyTu#GhUdkWEu-I#)iNj>dOl;M>u*aDk)ksw#N3>y{@bHC&4k9w$?tHLP@KovV={ z|GeSNz?=34(39CB^52)!oJ8JDwd;OT~rVs;Q7F47^)8m5So(1S1NeY6yJvW8S}6<|!WX zEl=6J0n89vNc&rkftd75DE+Og@4Lq3mLT3Id@E_MV+>+V@nw?(RfsUxu!bhr9(^Ru ztcn%&-#%p{ZhhDcvYm!{vYT4A!b&P!xfr^4TK|E~v~dSX;YZ{6{-nmu7@P_QV%-p~-Vk)4B-RAue>*;ZIUS2cUrF(liH z>QAMsyGM20lSQ+GsWc7=ndOG_S-lLFW8=PNY9RC6p5F3BYdKz6z7AgC(N!O-F*0Xs zBsF$ZcjJqxu(RbT6+;^Se6#HHgaDr^#}{h4=t3&6kB(@jxfZ%yia?CS5OPlsLIB zv-|DFdV2I@WtmY%EG}LiMEz~donS8Kn?Z89VC>L1c)Sfj$Ho>I_RiS7JJ80b+!$rS zRE_@w3M74Hf)ZnKD7R)kxKMX49zspcUd91DDI87Ya{}JFBv>vthv7>0w>5NhN@Jfz z<#VNu4$4e-1TV_Yk{BbyMN?0fKyV<3lVqE#q{oIHkLmmTVfQtGa(L|%eMgDh*9_;Ar;tf{Bcc!4 zlI`Hdz@nN2A?ka)OZ~m8R-FFxFHkU7m(cnVX_0Vz+>CJlz;%oKzzD3909 zFu7pjU?L-oR4AM#)Kx{3&e?#qJY~5baR);xPV#-pNN&9wY4> zGs+TNxuF&kJr16LQ7cv(w1%h3i}iB}Cu@(1SqR7D@^Jy=XGEgaBCPc6C|gbkT1ECI zj^&TUMaKk}n(Bo!P6%{n?d5;e$tt((Yv@bdM7Yejn=VSDF3u490Er8xBfbPcd`!;d z#YyA3@Gy{kgD*ySGxEzkdnJniQus>;E$D4;C;^I7t+8m6s9?7Ydfi$EQX~$%a%uW+%#&qgGUTTaC79_cR_=U3+FT; zpyRn{8HWZ2R7pb&XHHF(A)-0;UH*lx){GwC}AMSMfav8kk^&)P3e zI2c!;J&vUc{q-;Nuj%;gMN3hqaSt(Rj%0cPI&qP4oQux6X2bdR{IYad;T5+{*}eQr z$NVpoHMQr{?^&`Xk;|MySE9`ck!asso5{P^!8zUc3?X6E`8NtYpFeBL*dk>?rT3DN z1$=pK$WolLuLAq;-Mp89zNKM7!|Ou~En`*3ucdXj6Xco>QX;32bo1vx{Y!_2sP@xS zfW6VBe(BFvscR~F3BJJ89vM8RA#x$Q(7pR8|2L z28_eT;xmv4=CQsQl>=?(Ti>DtaVzZllG|(>G3STDR<@p{#)(Jary`^Xds(@T!rQZK z)yBaOryQx0d5X4wHk?Bo*}9lW?W_8-Yr$V#8DFJqFaJUdPRu;$M(yfj+}kN=PggnW zPuk4+HOu`Qm!0p`%6}^P*)sfLldE4foX?SsBqQFyw(l&h=`^k0k|RNiRRw_6lRu8s&SXz{o=of}x!Rox5oDh$dtQq^eTHZU z1KX)oirk6Ub-wpOBNqHcx`hU6kg(!}uJJOa{Rm2}z!J&dMRjD3%3Fl+!OVnRzjmu{9$((ur z%r}G_aBV)nw?;O(KcW=?Tl+^e$PQ@kKVShZRs|Y{I>*sJS{rq~V=&GXQ631aQ-?wX zbxXN8rBPU+BV4hy>Rojv9MerCnMho6@2I=&p?`lTZ_r_SfEG}thkIcgytbM#1WCNa?JqlF9@}mcCfRx8 zyU4R#FohUU>Y8?>n0G#G8P z0g^QKtG51LJBKC(?bm`L>vn9!h-4jK_j(md2ubl~N3+T2`cg!>^uqLp3186}`Z{=a z2&QBBuYVDR5Hc*jquy*)#yNjg;yjt{?ZT*v=Bw2PQM7U2zXkclVODn}c+%%#Rml4F zojjjV+ic5WRpOQKN_^8xmhPyy2`u4Km(`uA?N=nF1&upc3gm{fkj&z>4(xQ?C>>kM`?yF&uyTwBK zG84)}`JmiD``bUB)q#h8%O<=?O&^!bD(5I#x2>qgFy$i*B(+sCw4poib4v-5H2={m zLlKl1CjpYQFHeywbq3?NX9w|8=82vL8NRh-&_G+w#XeN@v8g!+Bu3l7@Od_ z0CjAhLr|AA`QEC?qV3Q)XmVv6>7*M&;i0WHOeWpq!VDb_oyP@4k>vGl?1#deI$TC} zQ1ht71)x{&IvvJ#olI7G&J^Bd6um{C5x?~fPhPhT^aAbYI6qrX;hptoAIrCze?2j% zhwI^^#838M)NIb}xoNNtUZ-5Gm)->7$BSbnkm%?Dx(OVPwN^zS*q#gm*qR_wSUJM z$t}z?aNjv#SZ`RlOPf~JlW(zsv&{1A&y@av*{+bLwWLEIvryTb%_Um8S5&E;kq^!r zJ>7S|z~UY(R55iLneEmhi!4Q23z|E`+`KIFYH8qP&)hlOP=b#je=n{TCPObEFtcNF z&$+RI&ntvugdd&@$(K-xJ$MxjXnXpw0oNn@NPV7?5r&5%*9Ge9L-vW;X6j%Zbml}N z%eh zD1#00N2kNIc8OuWY*8gF3ZS_=s)=CAVFxYfE+|;W5M>dG4eO>+Jd;7Z5n=XZ(ZI4m z&!D!D4!Fep_A|!h{@tKJqGANm>S6@EK|HbqyaxJ_WpT>drKsn_#PK3aO^y8sr3Z~c zUy7c+wskWIJbokTnaj8aW!8M?H)gq`RS@{_kAQnDl_p_cdZGTxhI`SEhQ^R8<_2qE zpY>cl#uuT{cNupVzdAoTbIUD*@##udw&9lYAITc*v2Gkvu0wOEBay+`)Dmxf!LFu3 z(^E>WPD|fQ5{YjF;|yZmJDRpnUUb0O0du$}!`8`S0;^`{tYsJb%GHe+viRWA5DRr2 zU+oOq<6M4T;?fG7SW8@eX8VJqgAjPIKTmk9Rlz`=r|C6p!F z$&Pg~aG!(grgybTte!uF@u8!mx;{l6i$pJG(8&_zBo7mR6;n!_sYU;-aCht(kOJwp=FT5@Q7llU;;Wn1I;c z`f%bUE_u(4re2GeJ78_l2=5tTAEF6cvD9|>Qq5#+S>&E$w2+a_T1|3{8Jqr~%=D6V|cM+ zg5V?EGJEOsIKfEJsPKR)CifSjP@A}*)n8=jL^v5zI}*VoWv!#4Z7(f;x&*nCf>l<> zj@R0_dW!NL+_c1l!JByD@LWBGNCz6!+Af6h@Txn0vVB?yQd+2!s-8?YLlE`LwZ;6! z75Z7toE*482#o}G$#-He}Lm7W*iS&#loC#AA8>lQ9F&YHr)|ee`|A`cc`52Z^4p}3j4Ti9&_1J z{~Jy-#J$WQ9ZMdl5kFe!Zpxvddvei%!LBG(d5H*C@}>78>I$DMj=yUjy7(sylUZp=^hhHb4#J&3?Ds?Nn54z$`#SnAi_D zQct#uai`{?vmrn0*n3t=HVEE2o6@cz-j^kyVd||bLg!3y(2U&O1| zv7*PG5m;??w8h+rkpBaR=~_4|ZH)#!qX1FQlx5meo2^)z17%jA3(5g4y07D6xPrAu`5u_BQR-@f z_chyxJhHy6Kvb~hOQqL%%eiwF&>RaQBgf2+%O86Cft0zY4x0`KgCTgpf_2h2)2@qZ zrY?gIQjb${-&W|Rkb}xD^rtrjgg6nex9l>m^c-eZN+z_%@RB)@$wUIX`d7qQ#GgMc zjX{$|SE@ImM9aS69n?X!_*$T^(|ZSox&i^APP0V3?Eb!bq?NvJ?L8@aEBzJ4t1h~{ zGaJ*;!7*eI*j&;6=lU^SpFWZNO~=KmxIFtEzob3=8U;uauRV=x+WOV}uwDfdbQpcT z`yW3XdT8G4K@RKFM&?@%<9TA22vS(-5@SYk>WSp1=klNIb=vg=Cb(o`0Il{z8 zWO53`m~5oQhBnBng!{+zrD4e2Ji#lMqU0KTt6XMP2m%p_WNO=l7J;>pQo~_L$$P{; z2`R(h)Np;o_6`Z^hTSEZxSkIO7z>sPAvmD|2x)OB&D28ku%b#3Tjl;LCy-6}p?L1n z0QZUQ@}s#BrU9~oBR$t6U5^QV7@;k)eAdSMgU{>V+WE(#F)T75&Zmz5*K;b%_a8fg zHh6Av&Fuh}Z$Di0p6I%g_bpkXwBgBP>ttDdwfQ$ihNp5=h$}yNbDsRoOfKo0c15>r zLMQ_0TrA8^Nr;FD!`8QvA+NZ3x=6k*+u&-5H?NOv%ku)?N`0Ff*RHgkE8mfyg$!Y> z+awRqY+9IoRi5LeB^NNb-hDWu^@YdWyjyFu73y4)!<}}J6aQK(R5#Whq1=C`Ng&gT z_6y?)gzfS`TT_j1lF8^A^#!~V09O1YvEZ51CvNUBeP5{T*M8c9{iqsTUiBSUgeh(l ziWWXF6Av<%ekXn!jB5|>T>84NX4&S~&f50wQt@-K@%m_y7bMx|K4)&)wsL;ok)wi1 z7h|%ki^{1{y7mfti1zH|h~JaNUJ>FE&CtDVz_w z3$j3B3crL~>4=*sm@2}Xo$t^Bl!Sy;QXX;8AEu1~$fiIh=va@lIyMB8qWB*QX#}R!> z0t}3xQ3Elk9hDpTZwfpWh9AZb0z1Ggj8{fYf7aZl@O6C2O;>2HE)5d#-8d|PE%@(-&g=MOm`s~v$qKZ);`6pv`OK=P;ayHFlM}c=^ZYy2w4N;5# z@~=Z{K~{KE5EgcnN!lUZvxJ3>AZ8tqpqWwHL&o&$#m7r1UfTR33uq~5tuKqv`Y57$ zyov)ZfmQ;NPKl&iP$&UYq*HS2#n6JuOgSstnDkG!=M1Su z9H>ZCeEzBjb=pF>4t^0b`wuvtn`TIAo@V5lt>^f#mp$z$p6EJW{w`@@&oyHT^i^yy z`0AUMF6WSjZ8QXrHO-r&&Rke!RZ1;0UZggYMD66zsXvcczo3VHD zzxO>Y&W+gKZda}QoT&y~QUiUn)yRHhHG_c^Nsor(h`;6lMqt@GJ8j_$CR{^PzzxQu zbS`lkTt{wq(`>jS}FpC zux$_lzMJ%X2LMjs2unV4vd;ejup(*F@f^|YNthjiA1>i5-t|=0Lcf)iuv2EQ#%!82v_hM960Nb>`pw9Lj_NUgL)m zHp74^PWZ+q;e78kf(bVJIi2tponY%rBN0QLAe)3pf7QP^g^KF4Mh?~zwFt^`Pf@J? z;+m-xHYIW_U3EXt@IN2|>nmqSR1)^~F=NFqdsneEQ@c1Vs+32Oa{LhMb9_S?7 z$@6Z4zDLAnwu=PP)WM{!5=aTjf>9$)KL(bk<=-?l?*Wwzx$03tg9xg`g73!PEFn7E z(~Wpdkv23>8oRVX42SUwCEVq4H;p)t#Ej^f?9mj!uQ!+_Sid^j*VXN}X-8EzA3hcv z_@s6MB%TE9EyypN_0kQz5Yn$N>zBi-4s-xJ7IAV01bb=M=DTnIkD~K%gz|sj_;bsh zeRoD=opVN3oQSNmS2(gVazMozPczE4Ol9Z^6W9fI?M80&9#yJ#zdzk2!w0* zy22a!NPcn-7rK^Mgi7@{DRJK~Qc`fXL`!9ORtj3{m|#yg=g1mK!r-vgi4=~{?-&`S z(w`4yU*EvFQBKUm1FRU##4wlg-yGtP!$zvWL2t76wUM!mC*cprRWIwbKE0aN3zb<7a>_5#msa<%_n z5%l*0P?6Ihi}K5HvahvHO%gdS>Sg9WlzCRIUV|=d-~Y}cawe_b<#Et9Oe+h6*e#}< z6~B%3;YZQ_R@Rp?>w4UdCXrwKR1-FuIGk5DLRLMnHG^LNx7?l?qd2`do%eLjRepiX z&Y{8Xwf5g(PW*F}0KRqQJ%Ct{;}w4SQU7sszZ#6Gl?U-I-LuC`-vs!aIAtV1O`O-B z;@&_Hi_$cKX*J7Va>eXkBcZ-mTve&pt-HQ7ZRPJ<$`pMzR;Zkh@{Y8n$2$FF{gp>gJTL#Mt4JF%Cb9@jS03uyUEUP9B+toV(&x@Z3$(!G0c&~VIQ`gI4-V8lESG_7C8!3AfohZ}K?Ge;0D_KE3JBt4f zESCPh3Bs9Un!9i=%ytEVGd&NhY0r|gW0#4%UY1`b$%K^tzt+N^mN+FFj;?AU;Xb4v zdy~zt-@Sfw)ZIf1ZeKP!eR`2Duudvokc@xA@j=qymx~Y&Wr@ULEgs-({eSf>_5Yq8 zeREE6$%q7I)SY!DAR7ajb5oo~-&a5Pj@`FlNIUN8GE?vVC2~XhuW@L!LWhdjO85zp z<^aJC=Zv9Q;CmV?Z`gR^X1rzD!#bAU5DXK6IGYPT1O~x*7`PM$VMfxU?W*S1c9A;%44W$a51pp3^&#d)NHlbhjup zyvld7pE#7;Gqi8%a13(oNhD?*_2_y2BpD%Jh{mCVhgVB)pK+ucmeLs@<@UtUzS-W^ zoh&Kbw0xNeDUowr?dEBjCN?Q7n>YAjBrvKFR#kGERxus`2ZJE9rT=eEHr3}o>FFK1r-j)yj00yw(5 zYDH!E*_UL23D_PD39CF$RcW-@<$J(X8eH2+TPTYK?=J}3@WRRF(T-ND7Th%2W*H_F z=21_v9ADyp5Q|KwgJ1aiusN@JlJYgr{^8obd2buKL(+4M zA)zF>3kx_86BzOF!m>L8Km1lPB2k;@n2uEHi=~PrS0on7)Z?u&dna~XV*K)Bx*s8N z8F6&#LYE&qkErw4Hf^Af`s$7lPYUt$xO8*@@+@_LkoMqd6GuBValkOcMHuduTs1SM zCNKs=j;Z0$p=kbeVQ(qARy3r*`g}WT1=3LlP#h< zl>b&W{%ow&g?BEH_(F-k>w}!K=W}=lze*^%ZbEchN7U4%13A>9dH+(b;k!F8rAQ&0 z1&vVHQt(}@x0fNfr$1_`hk)djYCF&#a!uimRQflZ`}naL_m@9H;d&nqe)TwgCHTZR z?q@7sqb1D9I&UilO&3Im{%VkzDWACtwj&xEnrb^aESDql{<(d|Cdn9=Q>~Jqt7aRj zp5fgT=|T&!KY!+Xmd$M#o<>Yp{;lDoqPk8w;>-E2KE;(Bw8l#&9pxvR2JRH88IKqDy7c)iO_kC*ndVo? z(`J{Iu>*OyfiHR@m$NN;u9RQ+cG&O)0#u$9ltpFU&KL`~e4aNyvKTh5{ena?`F1vWlAfU~DNQlU z`T3^;_G4jLO~PH_+9K~Gb@#%+QJuUX*H-glh-tTDTz>G;LJ!2n2b`L^#yCk=b*v?; zMmjC-Mp&b!@&$uqkWi+C`AXi-zL|%zc#0|f>9WBM{=a4u>p+fno`Z+EfqjYQ!|!`S zEm}v54I0!cnRJ6yntNG^TF*CaZg(^4zW36oJUcZ-RQl%!b3 zqW&QWIl)L(9H(x&wDW+XCQH)Ezoxka(%rTYO#iJqAd#sQe4RNZpKET)e|y1;Z`fH& zcZ|cOva+$^_?`OK19w&|`;2hny~_^WJmi{d!8}Q*?&e?G$>Tamw%-M0bb>;7;4*J9 z`6*fAM6c!#GxG)gao7?f^J#pu6K*c1yVHn_rWBki|9Pt1dRy^P-<=>*496l_K-KDt zIH}ew{5u($T;|#v+Sh&V(oWuyXk%c8V~%f-`f`qA-Xfpf`U5q)#G$pD#f=Hq{N!(3 z+70BY0onO@aD5Xp++eP^)K`h9#mQ&=n%#&lmsbSAP zFG$f8#}aN)0UikbRW54m`Q3HNy^<%Eo|P1@WG(RG6R%W|9^mYJ&a&&1aW8g@i|tlk zu(Kuv)d_e|`?rRk1biA7yb>%cL6cgCL;@KT=ROIT&;|J|1NUeLPi{zU5WKh%`$_v2 zChK=)udb1woSi6kpLqwZlc#rFEuZJgJGG{w@8QTux~3yptskcJ&F$Uhj73@A#4SUI z+hHDJ!5&v+>V_-YBTH7u6YCt4imEku(cZpHNe7|(XRT7Hetrn)&0)+fJGAF8c8BKO9pea>YH#hAXoZ1i=mLQdsl=2=kJz7l3 z9RMo*RQ?X6p6xz%BZ=w(nuvd7;BcSt`KLSa_Bk~oa2b#|fvL*%0dICQV<$hHP@n8K z3!;TUda6tc(>RM!uGtBG{A!Q|s%sZ#D^K>1q z&ER1qY3yRsDC&)29&WPUa;H+yQIO4Z$LOnP zJi@f`D$mdeDo&Fy)t#q%osnnsoyqm4b3Y6vMQ9NYRM+NV5TgsKt&|J-5=?6Z6>WLb zVWlY$hmDH;)MNiA`y^Rq{lil#bl)qCSmJg>oIb}z^c2UPL_v$r6!U5}5`ktla}fotH30|7^MD}#Y%`Y(@`!>pbvIIZ!I5@|lirFrFQ1D^>t8vI zEX@H^7z++Han2O~z{B;+b9j68q}>Q6v4kw*RrS}%|H%hK%ocb@rueh&s^dMG#c=*I zUCx#}jN#&t>%Bs~I4F7nr(@F2 zc&MAX;xa~i#-}6@7!EgQw%lj=1Cj2s1Pg-B9227u3%@-Zk96hdE zb@I=Sa~Pco3mbg#L5^^jZQ246PfECwlXDM2^_FkWH-AhMxi>B*sax)kMvM#pTOq^> zXgM({!!%tl0NE;GWBSX0J$=Qh`*-{kvOQ#5wcO>N=rw}V8sXZ<$~1#0^auy3*BYF zFs{iW+4EuEP zC64P|dnK|I3(+F*X^6rG z7>%^2XCpjg_geq*PC;IbUesr^>%ni`@5js?F^FevW6vtB0yZ(C`{p5D?c!UqTn%V* z6ety)8tBbgxMJW7q=28yKICigX;sU!d3fH4VDD~)m)S>eO^n>X*YfW`@x+SUdqO{= zHPaL`PUq>Fa_q7q)XWu_DAA#T#fnSex+EBz5Bhis1J;@(k&$9z!d7y6SYiI01%F{4 zSjl9IX@MBlvvp18BJf53DP-~B`JaDs8d^mbD5$gHpnUuGH&5|nzOHo_YYy}kSGe-7 zNPfAsSw8jd?WHfd5B`9Mx=r30X!~Nz(ua41B#kZB+kg;V#Pl`%==+8zW)P%&o&^^9 ztR#o|B>af&A%4Z>gC%~rX6aBmkZP%rh=peuiAd_uPv-b+QTK{n`$6h_g%u@2>Vy8Y zGRU-i^niD$$}}W+70Lfd;P&^!%t!X*5TB~(EEA{K!^q0U{{XL!y}p=_cXLb11{Pcu zTDrR7@$r?uxUQ!W8MVW#r_JQ@q$7zL_ud@1bf*1$(=C=3z|FJ$c#WUQ{jZ;&@0F;D zH>aFWdn;GUDLSI?oa+lPi;;-4<{C+6cem8}LGwWD`@zNW{b&7e1Ush&|5gd$qYzf- z<};4bfG_<*kF)O>O(Z=Hhb}QcI#dYsbk<4UsL%=4(FVSevsAX!`#;O;UUL$(}V0I0vF(*Wmo3}rrXAQq<9%)y`-u#oO+IQ1%ZK^q8PI_6C^qac3H!Q*N47cisfZQ3QmVI+2|2qrV?>z}q$obawMxCCd# zeR(|Jn+%*p1CyN#Gl@B-NR?rCR`eWKL*J_WXY;L6`sk-Q65Qxwb3d)7qr*6&C8<_k z*^Nj{$2ir#G>lYe3uq49Vvw-rAMCjl%3{@b<{1}R+>U9te(pmCPA_H%_tJp^vsg)- zNNjP^HD&&&Pyoo%GNi9NiV8nAIUog$;pOgdt;_Z^zD%01xcVA@|Iql}@Ame3`xPRG z<;aQys>sMIgGAamqPF6)43mLCa9;C9=fxA|b3aZOXHg#ht2)__9XdYepZgkcyAwso z%Rn0XiS9}vQ{dGW7w!x*V`uUx8*_>$DeT2!mMP+f$}F|91gz@4X<4o@bmYwdB>Sm4 zA-^bqMlR-$wa5z5Tr!^Srkpf<_>iRH7k;P@2p(a2R5Vj5%QgJVI9Cps;UES(A*aR< zEAa6NV@g`6VMfIpjV?iM&sgBW$8NFv!X4{1Qob~ecKnRvO#Q{~JAk2M*cqpHCfK$( zUM04)qsi~{s3d5tM5SSdJTlKa!_@8XP0MKEC|B`ujF?*&Zj8+N>|8ClC_H`f2?@#O zdzv5#I%{TnIo|3mazusg;yizXk?vc~V}BCslI)NzUv7pENT;ywEA zK7EbXwK+kxYcI@eKj{41!NQKVun;U6MwQDiomi-;jJE-E8fZj6_tgJ$dRwLYJw9(g?P89; zQY^4$B0Rt`OFR9kL2a*!bHAKOar0%a8KzjJD@cTffsH`Nmcm0l!=lqiIil2{D}pr- zp9G5%mE6zfL11h68NJ6rEiS{kxbpl`$7WFACs~aweFaa#V6SKL9~es?BTb*elP{Pi zkYEEmk~q6iE0w1v;pe^_Sp4=lCxyur@N>UD#)caZ1i3bZa=v3pJe!PMP?cza%#ka< zdikxkSRr!~a()y%vNH3z%$uq$F;M_Bf&=ZwRR9U;|H1Jp`!}Aga@XEi|RBk6jL_%$IAc6mZ>`~k^NqvUG-K4NrNczf?duaX( z+mOD#2|sqgpta#R5&EpC;xv^sKQgD?f9$D(pb=?L%`a%w(|H&{D^n#+P+5v3)3*on z5K2xwrwNP|o5@_WM1AZm%1p4Job$Jay(2&$XTMocR_0!cO#-c3b{`D;{{#5WWL$=r zn$RYgl7a~KMIDwyGmklbMVq@Io#?05GUJZ;ha$8o<)Eipw~Q|V$?ts{ zj~^29=GqJO?!3;}OHsx+(*EpHm+f@vmYSNjZ^CHviQIJXFslY4CY z=wd&kn507CwC7!iMq)l&-}{(tIzjloUW!U_0DlS0v-g;J6)?ba2*Nk)=X8twnf3LwHi`ZoEChs#MY+#3e zFeaR$Q*^hKRD2XXo>B}Z9mIuLNv8|su2a!WQ{y{$D*;DBK8nTZtBC;64x=0tSrN== z4T+Z9jKWqom_|?lbG6urSO*3_(WyFG3c%_tz^QfQVulyV$`mBIrDzvl2TvH2&3XYg zWIo&nylfR(>-@Sx=;4PdG%-QcyBL_$YCpK2F(D_9YJ(~pasJ~6UT-wpamq(Xu02<~Q!Rm!D>X-{WguT=6`XF?TK`GMj483=jB1omGF77f`F>g& zlI0q}z7h#3y#cSbTwH~gbIHzUsJeeaW5+%Sw|(C!=Sn&yVbyDi#=WbhX6fps64qaw z7X59H`|P#2wNi6`igGgQR~$`?p-(bZrM%+efDhe;WWR^fvI>(K)OTNgMXS55 zB4jw%jYoKxR%G}vm)r{|tJe7O*1S;{4ggH5KoKG05{7wfe-yI6uJyL#uzWOWc;*p- zUMzxTQJMw&CnLUI#@`2r{M5M>w;Io*X{)u{GWXUGX2N5u}AL)-)uzvmi>N< zsP)Y?LiB^NMtM^W>!sTk#K;B%o+est6EDK6)LrVE*yVR=RT@neR@u)jpSOpZ%3Vl5 zm~{MTbM@O#&7I1G7ZPFm)%lF_2a)nB6gLY|bo}b!qV|?v3zGfC!{G~`?Dx`P%g@^a z=YJ)TIL}v%x&O72jm>1uDy?&i<07}$NSTJwqTLCpW6fN*`lRFN9NK~H4Bu^Wth(Hj zD)rQXjt}*Pvn&oZ6NE@MC*jUn^&*t!;XFKB@%C(Xn|=lO93 z?446YDvteGgpGes_;T>%rc@xaZB?D!RS+tO4P2$yi61iE?!FD z?)Ps^b)8C$bO}4%0A^l$G?Q~_H0RBVR9f|K7sv{bH*qMPbL#tC>w8RpxFpZj3*u9e zU$wdJ^{T3z>B(WX-rCxA`&?jOM#yq2u#{pc+6v|UeJTosJ?65v;(u`d1fSlh&V{uB5OFoa!7ZyZfu#{B4AUX64vN+)JkPj_`=E6J>^Vb{8W$zTgMlgJ6*iIT6 zG{F2w^XU&WJwMNEIE!VRYruN@0zN&D28;)DEF~9btY(HiHE>i>Fzae_at;?ZRhP6K zGTo7LZu4R~b@6d7J>~kQG!;4PcqL-0A*3z%o5WjWX|Y+X?xW^!el{*|Q8|A{?&=(e zv5$hy7h(UjtEq0vY8Fu_n8JKQ9fVq_mvJuQfQhqvlP$i^*PsT{CUSg|<0%4%UZmvj zxshKgK;Prsnl>f>6erMIWYT72P`;u?E4EB=X|hk1uU+T!{{YDOpJfVH_I=@T0ptlG-_#@>{Mn92Tbr`iDi_qBl@;aX44R$g zc+$Y;wD6lvXL0@#IIKSN`0ulplg%~K&Ux!F0}N`)zT@@nHR(buyN}l!!V3}++rmv;~_rX+dcbV3oMhzmBof(V++ioe)Juvu2I`RF*?X-of+ajd}m!I++4L2!wmzoI^rAMC6JTF-Ti{>?1hr}v z+DyB@1)SL3xcogzm`mX2<>SV|Cj|`$yxYQhIt}3Y8EDuGWE2O*fgc#cokZRnz4r3O z$4NEG?@qty+&?968F9QLK<0H$%(*rD@6jgYrF;}tKK=oFK7@|F!AD$CW!^o4Zu50Q zBpF$uY?71W9BjL|*A@3AS@=>r&kn22eX7HVkeO{z9YEGDiQX%ovkL|ml)}VPOku&hLzHTb%^KsjuS2FcE;d2o~4t(OUCLLakCPBJbw^I{_= zLzu>)F{8uoj=c)(*}Fh<)n!rj^xU;{_dF=l{MwqwDb{{?P9&_Yv->v7NTC?}q zcTW5VkivR%YIGzZ_}km)VMatNz8>b7kPI5RaM){$6b=)8lF1|***_7VUz!6&fQhkL z)aqhCcfKQpw1Mu(IwzVNdqPMM*jRzECdAU#b`y4WT@^mz7yC9A`_9POs8URn3%O#8XG-OQ%upH7I@Yx1|zH99`2rGg4S5QjoK{$?#r zdza1Mf}4;L&&zLnR}dKrID6v&7Jl?r#~B~TkaL#erXd~|H5sBj%g!+ut=)?U1c&&O z@jY612(IrH$UaRdP+`?Z9XXu|!7V0&&mqV6jL>yTb_dwJs@IKC$_ zQN7ZxhYa5p{AKhbRjXyPi4Jw-oZ&JWm$|m0TCJ|2(j>Y;5R!6)N{a&q>Rf`RDf_>g zT&S;3ol2W>g)JP>DEM%m`DQHMQcI;j%hne;0WM}gW6ga{x762k(T^ySJhn$%41QDN z78FV%v$t^#-f#XLT-wjg19mt=%p)}=34hz6n;w5+%$}Q-SPUe)(R54< zFSy+3A{0+b*2Wgt{E~+BPfb8SW)OCAs?k<=aC+O&p;rmnw_d0Ne@*>pUY6Jln%9>i~Y+!dDBvd1r;I!yJKs`oO7DIXZ_$$eN?oyY$ zNLKrX6o4r;Rx|x2uDyU-^`o&6#ap@A(OY!l)UupWgvyC^Y^=l+BpYJjN8{+z>~+{? zhu+wg6HNa0G&C;hf*KBv^wM>29I2;Gtb;8ckE3j`ZMfk5>D>~}Q!KVSoGsu!SVgR1DBmeEighb=ge7G+p{*?@2{ zQUve7VMaqkCGSJ z2){F-PP9)0?r~@PYQ}O{HvvFI{ss?r>G%UkA$7`_$fBqL;^6wNp;W=6eO*%LzqYe@3$xW>J2y~LBT%+LB=JXd4Yv18pA+aLbnC^p%* z*El!Z?tAjYfY3d04DsO|8~gl8bRgGT1k~z}qdVYls+&hY!0b#ft$QmQ6cKM0Mt%E;- zD47;`Ub+MmJ*RAIJ&Lp3#ZLC)RGwkL<*zb8HEDt3`)BNzRo~RL6G0x4*D;_#7{hU;Pb z=^8$_{r-Hc38A^H$O(53efN-Ok%%UcIO^k0qjM;AJ=F(sMd6lry;ZHLLc%Tm-7OQ} zck*n@bik02!ap8?yFt?R>wD)w;1jPk{xoW5Jys09We{^o9Z^AK*D*%HIN~x(%uoh+ zWwb?cdB&?Avo5RSa$qYR>=9$eAY3UMaAEh-wYs|@$Rb&;`Xpi0t*iHEkl%vr-xxM? zcSq-;IrEL|H!IN(6mvxst%nlQ>f85mbdRR0{gChTFHvrlj7SI)8bg?e^NO6@!7x)q$=R)A*yE#>h7 zS4W#6A(-G>j4$GczTIz5Gy_>lmj&{#rWdK&%l#W&5F@dE#PZP@_u#|ITg?b%l-);q)#T-LA6q7c|LU_D#aqhxkV3Z`HRqn;?s5W=Q;9fB;T$? z6Za|UF-9waA>?>XzI_9&C%04NAfvr6g@)vaU_7U%vwRu?WZ^i$?Naw(xb z2UDc`p|62d-2#&ZIlDk6<{m=QGx?*S}-^p_DrX$ub+irQ{?xA-_SNU{ z397__d;w+GTnDJ_8At%EHyCm0eb;0i`brVP*4{;GuHXTk6UrGBBN65>K73e5slF;w zP)!V0`85vm8b#U7!p+V22`rIt>4h({R#qr#b>A$`7@nVmUNTj75Pw7-%Rrz7F8n#7 z{`TD44tn#ao!rweb4%xkuC7aOg49xG4~}BLtjWKJUpbzRp%K>i3;J z=Rh-l*TDCzn9?qumm2ol%`+Nm1>g{I5>KDExpRl3Zat8J9_xAU)>>&Dtl`+z*Mmnc zy_6rx5hJSjYs2@G80Je&pu2=G`sF)|$|8E@Uu%1H?KyZf;;Z{`=j3Co$M(w$+; z@W;~*jWdQg&QHZ$vvkAc*^CXyMu~xcEkdD2%$V+m)FfXCk?*NK{uJEV3klU87ONus z@7ERC&L4}|@CzjPFB8lU{9rDk#r@<_|GC`aSh%`|mj6=)c6k=u8yrp-zvnR?91tl2 z@2k%4TMBTb-vAeIZc))y;a*0ez8a1w0v7b{i9)8-SN*w?CijZ~aHR=bN?ry?9md0F zuX%4u=TohhgH8+hDjQE=LmDl$r1~E0W#ZV>2&dLx5?j?{2i1tE)h%kx-5E}p8oEXL zIpP{$uigd}=<4P49w`s&wa~st8gF?YOdUbW%vpO``@c;Y8WoxT;Ee_eqEsZ@gZXae zA0e%dR#mPU;=#llP2t_O*$>n0){miZuA6=l`{wx;*fvM5`St)jCodg%*;IjqM!elP8?aNmnwf@gH`ZRRZAW=w@uQyj=ofJ%?F(NyW%IDoFIS4Y-<^FSY4P1eOf$nL8!tn zhhhX@3kR&Tnh97Ax&HvWv}!FL13Bjr;`b$xzy5abR+!RPNF$&`us`t)w+;O~wUylO z*V4hUu+=?pJJGK5+(1-;PoJf#CwWESCHsvG+%C*k`>wE8)U-@CBT0u+*3c^Y^$($T zRD^5D(~ElZG} zt0Gd;y^kK;8qm%sXDB+G&+1`$8cG&qQaqtOT7e=g7gBW{N89mr0xjjB|7g(4Q6=ZB zq*bVU)RqPVd1w<{~RI9`({_d_)6EWcL zmy8e$%PvJ(LyDQ8I3WfIq5G$0QUP`)^QFfb>r%$U#C&uBzp)JSiuX_KWx+G?jFSI= zZ?FSWdgu|}r}fg6pMY^0^jU?&(@KZcL1FDFrxKo`C!m0s2THrB9)N$&kpdg2Bv5hd z!w!fXcG;3X6V{P9(qyWHLFf0yZE-Bw&?#I#pSNlKSmIWZ1< zr0%5iu%q_Gu`ajZb1rkzD?(mY zvL+Iv8c@%uz76o<-ps?)maFs0_~&t^N@I$utBtY-EcE-s2n!@m3dFN;aD>jIu$uF+ zA4%j1-9TiJQ<^@iCqjYrGNa1+vv;sXrG%Il{(mSkDYc*Z^q=muC-Ij_jEE|4f;wuI zF>nb{P7Tm*(2ItgoFf}#lf?s(519OD!#NHjB_Ucw_dXx~?#F)a!pRNQ6m}M0Zj@8a z=xMI*IoocQcWDF|5(Ee`KbnxgO=Hxg0>ws5ecfE^Hoecq{L^+WqUomZi$rxd<}?hf zs@@U}?K>Fd-c`QT=-)rgb8^kh_mcLrkI{T)vfY+Dg? z>@jjG8YnoD$i{u6W7X0ncC*D~DkHa3TL;lHEhIH^@ClTxG(kOo4BhtnVBgv9hkx_! zR7Z?Bv*9rRK&It>OZ^7)SVCP;Kso`&GG>%#L3(1BCPJ67wVT1cLct`%o@lxR!^7?! zEGT56FyCvkM?(sRLoj4YIl-BLdOBBL7GhI%Ni6yp=E z%P-HkA$B%&PaNJ26VSsq*=bG|88!>O)^eE?sc`WaBII2yUpX*(bfv6FDLe1n&z-`O z5az9)p#`x5XR`f1Qd%SLI)CnGD2%!Hwc4FFG4vxzF=im4%JZ7L;v@Ae+Nzps}>%-K(Kyp_x;% zc8N3RuQgC-tj-ZGi63+OB0_G{;+AF9gN+dXNW4N`xK%TZp=LdpX`f!&E(}uca$%)> zH-zGn;Z|GG99h?IdJqEpIXHQ4M`+?Y@2j5_)BM?)4LFtDQ&N>n6!30(ec-WrVEu|? zHA7f#%lz>n&QiAERCbC9=kf_g1VauuY?33A{9um@+6v#eJrKehn3&ua?Xq|0!AJJ#zS19cGpwjh5``)iDb^{i} zhd7xQLjCTV$c4zy(abAbQvcoW9~3j)PN&cvxri zCx(|3o{N|;#2T6I=3mQN_D=Gwy(YZ@UWm#f$CoT6ww+x1q@x7Eh8I-oP()xI!l0b| zGLq?1rb$SGz(Bu=V(PaF{{$k_MzKZL*#A#)fy{g75L8P=7eoxa9 z!*xEHx+(m|IR{@%=s9GWFx>!Q{+5{MtwZ`miqIwLA`XKQRi0KSU4h`gFpIy9b{sS8 z&Rf)uC%>liM+lUOiLX!QxB{aI{Xe5a#5@SwLRKQJfqXbu8T2tVA~BJE?e!osA0Cp> zhuTpS;TzvU_Vd)`VMQmSBC18x$AbLVzAEsKuo4O^IUY*-X?6q~oX%UD%1vFz2FkFViB`9IUUMj`htj$S>k;obcDlt=JC&#nC{m$il9;sb$>d+(rI^6fiCMqPwF zKoTBvhmfRww!r?W>nd&v&gah~ac`Ha3Ou>JL7Go#!PflU2QPpDzqXEKeQs2m&F_a} zSIeg%J{RF4-|wAo4IdO4&I{{bCXJq^(AXZ9^6YAoo0b$4dG7*{6J1IV%^fI$^k&Gb z_>VB0@}@Tx@7~$QFy|cZD7Oxr5yC6pR1UwG?RQ}f4;6+dR2tEVB$PI~%RK(6g!ykT zs=?BYsPi*71dqrdle!61)K6AY97sczoM))`)o@L-yMbeISwIp*W||q7A6QwdrQ?Qd z23k%E!2>_wVTwFqHpfd>v=;!<`A9KoK%-)p*3#yq&Gks0kBnuU2X7RtDkG-)^(w48 z&gvZ0FicZ`r_35hn_kP?u?tpyaDHOy&*0EG%Xn?X3VH_WIg~JRufK0)+KKJgO#dY5 z%iRrWzxPoM4x6~xoI9g-D}Ea%DlfmfX7xOgn0ozktO21y(rBMVqI$z4aK>N)3Tl+R z>chGFIdsECwc92g>RzyMwnnIH@eH@vU@sN-_cMbd3znw-H1N?9$R^#-5)T)ey%AxW zBt(y#nH?t-hEJ>s&U6fP87Q&fc8G}djDPyybkG_?L(w3L^Lj&i`uhdp&eyrbH0o^~ zI(F9KUE>p|l-dmWIIM~cvTaKzH!(Wu$qtUZXTJ{Nfu;o`j}8h6zC{V5M5Xz4uJ{W$ zP=*%Ft%{smGay3K<-sf5LGOy=%pLS3mmpzDy%v|i=-FCW8aBKF)$Ap~#g|XzJ{7l; zA2yJMT9Tv}5UV7o_qSKn)P+ok)bV-yHOG=0%_d?F>RJ$ze3W5=TTwj8|6At^{taBg zFmjdSMYIA?!F9C!Cb)q2Mj!C!EJi>sL^FNsE|3c6+|8-e=hBw4&nt-5LV+W52uqzc zuggwqqXHQfuqiADsI$=)=f|d09FKs$!vQSrp_=aJrG+=BQOYJv#O)>@pX6~`Z-_~~ z-QvTJR*sV9mM(nXc*5gvF9zPQ57cZecZ-=>ZZ&5Dkl2>wTmPc)=36?8{Wrx?!!KZ) zINKbJ_vx#jgmuMD-_Qs=bnJO&S*WRPj^lS0o(A~;-xvK$N891UjRtD3t#<{f03L&{ z$BKL@ghWWWxNT$ewqeX z!*A_PmdORgBWsLDaIit5#+1p%aj;U~;bV*xy0?3J^&(rS89q%>Wme$l9b6_6j0!+l z&s5cn7Z6oxAAJg}Ln?MhInx(hZnb$Nh1|crRVo;2DRyBe%vu0m)>yker2<*F*DAlpy}6^X1bckTc`qwVtczdVE^wtBUUzAb3yc1x7E+8bJmD zO|uC*g~9pR=9Y+X_+zM0RN&YAl?`A3m;ZW0flHQ}PRF2`wIuU)5fl`-Gd%x<9W%^Z2bzAl;Ndt)|G1)v zhoe-P2!)(%JZFq)K^jiY+y~+rD@l>+|6_<*>#lB*NtbHdO?WZW_oS=^batN5|twyVnF6|9<96umYD4X`J*rNAC&H zKK#H&6JORfwlh#VqNb*Kit>(mt`BmRXy&B&vV7KV%zpF8lcqI&*UN_`pqxkeR10lx zVekIS5KN<6l#;KuBK`*}Gn<}K)U`w_Bg5?#t~eY?JC9D|ZliW|gmdbRNLYz}vLd#U zl#@&gClnoy8&uEl!usWRv;{%b9X z(}`^0qUfO~7TGSw>OSPis^b~FjDYE}8Qj8+8{)`wDOXdVW;T*e##St(+bcUoF!E0c zQ1Tt$#HZ889PQCaOj5=<|6+_9*uZJlmlgNYuB13JZ>m}9jn2E;Z!E*NQgl#JpZGp; zYsPM3_U|278!VMVV2J(FGp~rr!3N8(IduSLDQ zop*mR!})lxe7A@pR*z9_=fsWmyxc{=buSCH`#-vpenn}HkHpxglZdf@ZGcW>4gslo zyTDVi%~3z@2IC8nH*X;@F5Uw_xtA>zQrV4Labr7GoMaXl^R8V(biaKji;Tu#_AJfZm>kJW@M$73tb(yjhVXAboZOy$$}XbgzGm{T1otV?}D@0?oKH;+OpScwnG^2^it_AWOV^;#m6;tH%F z>zaKJSFK;pl}`bZjb;MrEAZ*JMY?MeCgIVLF@qu;LYOOE4I1>TvpBWwB0KgtVBJ1q z06knDssH90c3B`)_&f7EG3%2o397V8XKb{FM>HO9s+$QD32q2*u>Ew!m}0qS3o(tqfl} z`@!vghJ^^&jiO5V6Aw2E55m3aH!niwEC2_<4NtW|5vJ%&Q znjj)kx`|gT5QKzHOx{uNexU5rGq#{%&(WNH77Iypxl-)t7)#8Ub_0m9nQt|va8&{x zuDG{s)qqRq4Z3k9eT*rBq$QQ%pYU*a)rTW)9e_&P>O3#{OP0)4A`Jk0S>42n(N|$1-$35@VMUNr>3vtbb|- zJ%NdJA&h+0xjI}MCjT50ZunPy5q$6e^LSgK&0_(D=6g8Sv-%+^1jGB7AT(Ss?`0dM zaxU(Nsa0sjF1?$4YRPyS!0q}1UXlG$isI3ek$@$Eqi&8YPGe9r4)u)YDSlG1V>@fe zkQEI-uaWwrdHpN!S`m%9uRY(}nuFrrQFBf&=O&f@2lViU1y4CSRk7c6qV-rmqAXFd z@y2shNC?sW5Jw~re<`iWzCvxg1CNIOS+)IhK)RGWH;4%i`*7*uZ9W_?{kA*}0J`9M zzvh)e{MVl^X0w~yn0t%&Sj@xUN&L?ortjEq)j}ttcj%Dms1>_;pd;ce@yb3Qyc#%R zy?yGRp`wq*GmV>qH5-Ln6{Gc-H!se+jMEBqC4HgHaJddWZP#4KUS3XJ2<$%~+tU?( zP|vp|Mv_LK!t#r*LsG|PbX{u4y;7gj2uHh&;3L2n9f3M~57VIkRdn9*RQ-P(KX-7i z5!aQKb#ZaCy2#49_Rby|b?q|B$O^gFys~GgkkyqGg-E!##pRaLP3Ts>m-wbA$;kTt z?(g68IDehlDPp%vrNij4)_dvoy>ymRcw6h0)~_81n_pO^AB6!|Me}y z0|)j=M!`%*Nlyz|b}A<86`T7x{PFMVaV_Xi=wc(&JX1H7^2KxY(fx~YxQ=!wLEsEE zInqVFtau?UoMOC=Gh}{zV5UeADN-j~W_y`e?Li?rw{@R%e>DpJx8{iad3(E$h(^Tl z20sM6Zf*%TciT*V>ImpBG|%_`QC6pim3nm#^DtKU`{hHTO&0KkDZDIF68O-*75AZ~f|C@-Bl+6)Lz06~QH-}?hWJPSu;ab5s_%rt zZZMR2u;Y?8=-EMaMo`eBn|J9n#{^|XGG_E4a$pGrQ;#-3E@SVnshB{~=#^Wp; zKQmjqN$e-}t{}Y$#H$jI9yJ&TJEl$!biF$HxTQzBcQ8oqX@X-_F$JdJWQETF)(iwC z<8RERrxrGCd`7wMDsUN(lK@LD?G%hh{|&r!Okn}xF6u)9bOEP)&p$u~?z@1ZaVhVGEvB4{7P@i`Y(cutul{D(yXTh)QS56Ovq6mLqkOxtoOnmlx%v6@ z2%#mh_^d$CAK!lOky{C+eAbDj%Fib54$5;=7?9$#X##w)Dz{2JY#=wPVcR+9{}#LM zwm**vICd?H%=Ulb3-h@XMJJc_5jd^;D7kf{CU%E#QzjrOKW-uqFtH7bnF8yM}>$laUSnseC;hs(+A@pa;K6r*~ z1BF+PQ833eQqGbZDAA}_s0SVzybc^v9RkG zRQyFVPO|O(eJ3k5*DnS7M3Osk@w&vS$BVGZq7g~kX>#{>AIbXL71SZ}yN8wSt#<3= zg|T4(;GEg7ajEV_yWQx%yo_V{J>=^2{q?*4xPF8R@tmc*W{eGF9nFg?dFiX{;CgQ_ z2j9{5W8~whW@m3{M$*2$&5l+}XS=GiQ{Bh&64B0xx*H%_yV4{=oFgiyqxLptp92Pmu~%DKehjLXY`%iyH zEYnX_xdJ?}61BNbdCxBB)XU(IF&g#+T=+tO^d(gt$q26r4Nj0eJU^Az=|U{DRyY&+ zSqBN3kg!f;N+BgS!G)2l7`NNMBv3AH5wT;@(oV~=D9~*X-FLS<3SEUXOJYe{s)wc< zGY2%X22mZ4bu%rZOdQ{qi|LXUHc7ZdMa84QBT8wMKX;q5Z}EMue>M>3;zbvk;=oBo zvPFv1Yr902nal$S<4WYZ4B~Sxx(PaW*Hd5F=S|!DY%2uUDt?ULUq>NjDSad&8?N{wX#}f zSWR6)jqAqM&Ex1uSU$b4qJ;P5wH+20%ZbZ<7qdro2R$hfZd)k;Xg6+6L)70B`Mr@eY+V z@*@CJX_h4*#L_kv_@K>37E|URFRh}>nxW{fm(20{ZKWK#F9-Uh>Ic* z6Z1||(hYD@QNH@iLTEhiZ7V>4z%yZFz_u)mZE(+m_a$)m4^(>z&WHE<(*C?s4S4Yx zJW?%gRION*Hq~eLDkWXl2>pAKRBD=t_+HJyBdqUdMx){oxe_mL8c^=~Y8&E;ZbqRB zO$u8L$6{GR-PdoqZ0VeK|J@>f-A3=*p~!~vbCLKJuuS#b zpCOC1*5)-+zPHq`TIT6Exhm{^<^H7)t;R=i%Hi`R%KKZq97_`fX*mIW0-Kn!iZe!y zVJ)x|ou{1!!Jc12%uQpw$FHy9=G8Sowk)RdEz;=85%!-zI8a3l- zltTi8`)^H7pC^Q2u9UGt;wf=x7`vo0BTNi=zU^!Q*V3Zjio2 zQ7=o1Cy}ifu~Xo(N3u%@~i%!Ezh6kp0Lq9UwPrcL6`e+rliBg~6w{4kUJ@(IsZWb6lyHrNffXieJ z=at4DOqfIbJ&%ua(&&vMfHog6v;$7|xh)(vFlOU~tM$+8Sj$`W z7K6}4N>R3-;{jXotpGjBgBcl^zPQPK>~jX+XL&E~^Y2?l9`PoKqHdCI_PLWgo{occ zrTo)*lIx;GcJp}?nC6HWc;z7HtloK+BIL;mJ4%)PUjKfKtog=2W7mH4K^GZ<6k`%U zZ!zU}KvF6ts2*i{4!W}n39ZBOB;w~EJ<#Q?7$XUkN+Sex{o+LbMP|@dyu{F;FYF@o zLUZuaEpe1I90TiG(_Nwv_;|9;+87z&1UiHEVo2r!6XT*~ENJODJ))V@nwFmAwSp%b zl8MFazvuH@T(II_!dmJ_FAzt*uG^JfQD8!7utZx+8u>W6#LX6OtdZAusA_up;cA&^ zjAT~404+&C+J8U4l#Nav2KY(HsA%x!!~G=|sbOsMLHIpD_A1fgO3( z;1ND4%?S>FKv{Zx4$H=J>+Orail5En&6fi)L+S%1lJkacTFKfc9@t7oaLlzm`VSBh zF>2J>UH{&y(8OuZ4Hcvu1>kvkH>#ebOMeCmM~me}X*RWu{P95E-~t$X4f0_0A{v1U z4iJ9oP64GJ{ZdrB(sDY@bj4}*!U3>AUp02wY9FL0Af%%3e(^ta^`HG}FjJ9Z3}BDh zbo!)S`5d`*qS2RegL@VlpP%|wV&=6=F4sf4>=)59s| z!tnWC*b_)tvGo{_`mMTYAq;Up)t+XR`Ap-+T=KC`$htm=*zlI50|}*}r(_$fwL^H7 zr>mz2$(0ye@Klfh^Aez-g})h`qsj9ICTodH81I%Qp2S3roQ+fAE&8fdC5K}EHL+gp z1vd#9!Gzt~UmGBzUsG9aCp`&Mk}JbhBvNXatL~S=#8VvC3`OCpO~tW<{DxzLJ|1U~ zQNtIK?zwQe+VU0^&6Y9KgWdcyilezt$dQZIy$Z)vZRD0{us1{xFL7s4qoppm-w__v zX;ypJ$wozbh$K{Kav(az6k?{sm2^`>GD)@%kvq$?Y{hCsd2{yd*{Ki0d%w_34K6B9W{ zWA3gx-N*5IF7a?G&=iM|-;>=CYD#JX`!-O7CFP4Oq@B=y$7C!tSGK+)!qWP?7zwga z&EcK>Oy=V)p$kaMSFgMnyg5i%MybmU$_!P?5(Pg|YHP?r7gRIInA`vrW^zMA;SVrc zzOldtX>qdKD3=3yb$1E`Ms{H_1`LvTfUg>`Ja*AlJKq< zHu^Nt5sB*N(^pb8!%Dgk{F6trT+O(E_nnVN3~XfgJQij?#i>M0551aoYfv6Oc##^| z9vi+?JLQBrS~B5*Ph4SZ3NNd5m!}HtkxD}DGKkz1GpHtbg9aLF7PF@O9pVj)k|{Z4#%U&?zZkiL`7K5?98x0 zy6kiSB|UH1@6LmmsVeUG9gnr51zcm#LMa{-i9DiVy=B!zy*_=!c1IK)s#6&36f}K}*hG71Z*L}8 zjseeo_yisf?IaQDVeB&8Ebb=K0p$$Q`1lZ3@sTKr67-DVfy$oQ93krAF=In?F5ewB z_L&4cT0GXNxF&Y07c65uO59NDH)GE4KGKMA$Wv6T5>yHL1)B#7?X*)jfZIwG>$6i$ zZw~!%+_z0OwcpO130^_E#~ogIcTD`jbw#0BzM-QszboW3l_9a`sVf59s*cm$s$^2X zzQvQjRngSO+T|K=kv)Rt9l!fxkW!;}_Ky{#Zxhw9>SN1* ze5CKl^TDqwx=2WQCisShhN-}%>G@~r-D2tz6Kqt*Z8ka zKJ48}HPK<{Red7Y+;5K=?eC-rfO-0ed z*lYRl{(K2sXvpgw<0YG53}2v^80<*KN){?W$EVo5lm#t-=>UOk{+C~h5>byYG}?%= zRY@YWD_)#un>@AY?RH1)b7qnpO6Y_!fs@UV&dp&p;Mc0N#nJhq9Jb?;N2s$bd%xs- zmC_(yumGxYn8f8VP{0vk10k}k2}Ol0gR$XqFWM3X!~r4BkytN;4JM}N`ofS(DK@&{ zo4~5Nz?M>dqNkniGegEdX@PtZD=HD5MX2Zcpd2P{k5;#Sg z^Kp}OAh?%vF~DZsT{Uc=k4ME?7l_x>Ahfok?@URd96xI$QA01k0rUqqI4kuIC}870 zwmgrORsdG0z@tze@}HlP`s;T+Ho-BP7?j;#^T|-GE$+z)NfEKB&%kAr8`9B9BoUri z#87?9{9@EnG3Oc(qYIxvL9)IGJddtZ7Zq-D6%b}+X80L~f4e?;qN6Z~9RRVGp#9+t zcDpkiREU~>lG1xTY**94!MQay(3X%yrq(oOmF)*3o`+yFmi;1Il*4L}*25`c(C1Yh zGNu%!=9gU4{zo@9DFPtEI563ICcd4>Ujn~2MXIaX|GzoSVDdsPQeaVbUg?U8c*pHFZ@J~`4XivMAuVUVJMY1J_WaL zf91f5%)_nv>^<(f>68Ys{I()PBEp;i+{;8kht0Y2tcVARdM+N;VjF<_=W4Aj?h+qJHzCn* z%q4u-K2!qNFF-TERhk4MQzlU#6r~KQ+!m03DYf+x5r86uh~b=|EJGhpVYwrJq(0#h zi47=BB=E0&As0tMXd_cjM(oCHn^yJ-6bFsEK<1!fM#(D12>IKdB%$!UnQpCiYl_@a zP_UTE2UJm)xrUQj1wii3eq*|#?jFBr+~v-frqQi^zs4YhmprAMo zVtA8&tbJ1Vs9t@PUt&b2m?*Qg3{dKOe)*hlfMy%BQ`Jv*3H(e*S=rxwjr+i5=MJr) zAiNlQFo^)9Rh=mQ3_ocm69XDA_z9CC&v&Vr34T%m{Jn;jA^ zug9mJdh5ArbjxMT$?cuNYdN-6{;Tq-acowA=*Kr3N_+9r3UED+O_^i$rAD6>Y7&~S z{(RQNJeuAmY0~2r#$=>e=s_Eos=m&FNr=>v%L@8%gUZoiDzsVL{+Bn3pDdsDvpdCUhcTAEdoeZ>(lwZ1mZ7%*-I1>SO;IxEq@G(8%mo=t8la7T%B{h{91RT&OX^I2 z*e||dVa{oRWpsS$2G{{-tN;r`iLOImW%sPfG>3D)(dU#37Olk8qD$q|9quQ{k4jkU zE#nLj#MIrql69@O)cZHqc`H`IZGmj%oQFqw{qygo>B8Yyox#GEf~@YVwBM>s-c{h$ zlW&_U-tXU?9{==Ouj(d!rt^Eg7;U9+#{L~GoXij%EKBxuE$lR}g6mRcowaLqQa zNGgCF50o3d6(GSIDHp05c?+>}Ah4qZ&RUK2@Duyv89DGUIN*bco3x=t&N3+a!p3zb zK}!BnF6ua+|HC2YoQiQLxw!b^@Y*7hVcTW?81uVf9$yRITi|evJaIwxa513jka=f@ zjLJ_?XyPu${4hmtZIfo7&4ykn!I)KF$WD3TV5()&QERd=@fR5Z`kRPAx_Vzcza@{V z8q<_>bsIl59Lt7>yzBncr5W8{&ucOqsqX~A-=6YunZNlZ{Bq}V++qAc+?J7$S>IUY zv&)#1WaXGEehc~OArULg51wb|ul2_%=@{gY+H4D){Y*1xVpP;|{|{MnbigFQ`Rx05 zeD&qYvhv{0F7_kZ;Q>_B$L6tK^34J=J^$DeW=38PNr@q?MJ@Jf3Vgh{kq#zkx1{RK zIjWlrS|b(H7MT-ezRyl53Med63^HrsrwjhA z*b zb+{lT{!mF@2^xtGO8x3_YpO_|&9eKe0CKVp9}I2$V{98YbdkRKeJqxZZc=R?c7`5W z)_n^@xZSxzX4}#SK7}Fjy!U_DRn6|+u&j7@mpt&u*@Ltm5F1!Wt9($vZi94)@30yd zqC+{wYks^tVfyhX=;%GAI#06xDz7RWzoO}o`ArfBB0r90=XWlCS0^M+A?`24-lU$D zFY6^_DwjgJyCa>B-NzZI(@iyFubv9Xfqu2{si_2X&mkl^cD&v$b~1E=j+ZNMbm1B6 zaeAUtoM3b*drDDoSM92B4iOoTR@_i{;luKh5CWG186}6-hcod{4a&gh(pEJoe>E># zk<1&;K??Em8NH>JhJ0wkGs2Ei&7THEk`qpMF1>WPKt-NO zsYcYpm@z+78SUCAf#`7}JV)3YEw{*Q_u!4pq!s{qV5LV^h%gkQ* zHPkD7R>FKJhKrtD`2GV{IF`|F=-{Ag(qA)~TY#oss)t^EKUme#%tp``X{f&Dg`>pV$Z;V3D5UkrApJ2G@cqvz~ ztN?0@rM|JViX);}P>lZ)!qDsn zzxgE+(1VUK-|h`Gh<=}H)fTrk_z!3`>05&fEz8;h8w^O|Iuzl&ic3}}SRcGZVjc}e ze`Cy#++9JYj{@sKzeSK%8U>_42pvb|XqKM{20zzY@8>*}}5K%Z~L-z(lk9aq<8 z%(Ym3oAp%~X9c9#S-4?6-29_M29mN=QFR(Ga^q-=L{WJxJ8zu~qUj1q*`I8vGnE^SE{Z}iAS)Rl TiBnM=TVq(B!Q)W5|K|P&RgNfV literal 0 HcmV?d00001 diff --git a/Graph3D/SunSystem/sunmap.jpg b/Graph3D/SunSystem/sunmap.jpg new file mode 100644 index 0000000000000000000000000000000000000000..aa448cca7fc40fbe9bf536e1d3337a351b38d353 GIT binary patch literal 47642 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 begin + case k of + Key.Left: t.X += 1; + Key.Right: t.X -= 1; + Key.Down: t.Y += 1; + Key.Up: t.Y -= 1; + Key.PageUp: t.Z += 1; + Key.PageDown: t.Z -= 1; + end; + end; +end. \ No newline at end of file diff --git a/Graph3D/pr4_Planes.pas b/Graph3D/pr4_Planes.pas new file mode 100644 index 0000000..d19e5da --- /dev/null +++ b/Graph3D/pr4_Planes.pas @@ -0,0 +1,22 @@ +uses Graph3D; + +begin + View3D.ShowGridLines := False; + + Camera.Position := P3D(12,16,24); + Camera.LookDirection := Camera.Position.Multiply(-1).ToVector3D; + + var sz := 12; + var alpha := 100; + var planeXZ := Rectangle3D(0,0,0,sz,sz,V3D(0,1,0),Colors.Green.ChangeAlpha(alpha)); + var planeXY := Rectangle3D(0,0,0,sz,sz,V3D(0,0,1),Colors.Blue.ChangeAlpha(alpha)); + var planeYZ := Rectangle3D(0,0,0,sz,sz,V3D(1,0,0),V3D(0,1,0),Colors.Red.ChangeAlpha(alpha)); + BillboardText(sz/2,sz/2,0,'XY',20); + BillboardText(0,sz/2,sz/2,'YZ',20); + BillboardText(sz/2,0,sz/2,'XZ',20); + var len := 8; + CoordinateSystem(len,0.3); + BillboardText(len+0.5,0,0,'X',20); + BillboardText(0,len+0.5,0,'Y',20); + BillboardText(0,0,len+0.5,'Z',20); +end. \ No newline at end of file diff --git a/Graph3D/pr5_cam.pas b/Graph3D/pr5_cam.pas new file mode 100644 index 0000000..e3fe6c7 --- /dev/null +++ b/Graph3D/pr5_cam.pas @@ -0,0 +1,27 @@ +uses Graph3D; + +begin + Window.Title := 'Вращение камеры'; + var tp := Teapot(0,0,2,Colors.Green); + tp.Scale(2); + Camera.Position := P3D(8,16,20); + Camera.LookDirection := Camera.Position.Multiply(-1).ToVector3D; + var d := 26.0; + {loop 200 do + begin + Sleep(20); + Camera.SetDistanse(d); + d -= 0.05; + end;} + var t := 0.0; + while True do + begin + Sleep(10); + Camera.Position := P3D(15*cos(t),15*sin(t),10); + Camera.UpDirection := V3D(0,0,1); + Camera.LookDirection := Camera.Position.Multiply(-1).ToVector3D; + t += 2*Pi/360/2; + end; + + Camera.LookDirection := Camera.Position.Multiply(-1).ToVector3D; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Анимация по траектории/AnimMoveTrajectory2.pas b/Graph3D/Анимация/Анимация по траектории/AnimMoveTrajectory2.pas new file mode 100644 index 0000000..f43e204 --- /dev/null +++ b/Graph3D/Анимация/Анимация по траектории/AnimMoveTrajectory2.pas @@ -0,0 +1,10 @@ +uses Graph3D; + +function ParametricTrajectory(a,b: real; N: integer; fun: real->Point3D) := PartitionPoints(a,b,N).Select(fun); + +begin + var tr := ParametricTrajectory(0,2*Pi,100,t->P3D(8*cos(t),4*sin(t),0)); + Polyline3D(tr); + var b := Sphere(tr.First,1,Colors.Blue); + b.AnimMoveTrajectory(tr.Skip(1),5).Forever.Begin; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Анимация по траектории/AnimMoveTrajectoryPoints.pas b/Graph3D/Анимация/Анимация по траектории/AnimMoveTrajectoryPoints.pas new file mode 100644 index 0000000..50bcbd4 --- /dev/null +++ b/Graph3D/Анимация/Анимация по траектории/AnimMoveTrajectoryPoints.pas @@ -0,0 +1,10 @@ +uses Graph3D; + +begin + var b := Sphere(Origin,1,Colors.Blue); + + var (p1,p2,p3,p4) := (P3D(3,0,0),P3D(3,3,0),P3D(0,3,0),P3D(0,0,0)); + + b.MoveTo(p1); + b.AnimMoveTrajectory(Arr(p2,p3,p4,p1),3).Forever.Begin; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Декораторы Анимаций/AnimAccelerationRatio1.pas b/Graph3D/Анимация/Декораторы Анимаций/AnimAccelerationRatio1.pas new file mode 100644 index 0000000..56f1bba --- /dev/null +++ b/Graph3D/Анимация/Декораторы Анимаций/AnimAccelerationRatio1.pas @@ -0,0 +1,10 @@ +uses Graph3D; + +begin + var ss := Cube(0,0,0,1.5,Colors.Red); + var anim := ss.AnimMoveByX(10).AutoReverse.Forever.AccelerationRatio(0.5,0.5); + //var anim := ss.AnimScale(3).Forever.AutoReverse; + //var anim := ss.AnimRotate(OrtZ,360).Forever.AutoReverse; + //var anim := ss.AnimRotateAt(OrtZ,360,P3D(3,0,0),2).Forever; + anim.Begin; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Декораторы Анимаций/AnimAccelerationRatio2.pas b/Graph3D/Анимация/Декораторы Анимаций/AnimAccelerationRatio2.pas new file mode 100644 index 0000000..9475f57 --- /dev/null +++ b/Graph3D/Анимация/Декораторы Анимаций/AnimAccelerationRatio2.pas @@ -0,0 +1,11 @@ +uses Graph3D; + +begin + View3D.ShowGridLines := False; + var disc := Cylinder(0,0,0,0.2,6,Colors.DeepPink); + + var r := 5; + foreach var x in PartitionPoints(0,2*Pi,12) do + disc.AddChild(Sphere(r*cos(x),r*sin(x),0.2,0.1,Colors.White)); + disc.AnimRotate(OrtZ,360,2).AccelerationRatio(1,1).AutoReverse.Forever.Begin; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Декораторы Анимаций/AnimDecorators1.pas b/Graph3D/Анимация/Декораторы Анимаций/AnimDecorators1.pas new file mode 100644 index 0000000..49109a8 --- /dev/null +++ b/Graph3D/Анимация/Декораторы Анимаций/AnimDecorators1.pas @@ -0,0 +1,7 @@ +uses Graph3D; + +begin + var ss := Cube(0,0,0,1.5,Colors.Red); + var anim := ss.AnimScale(3).Forever.AutoReverse; + anim.Begin; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Декораторы Анимаций/AnimDecorators2.pas b/Graph3D/Анимация/Декораторы Анимаций/AnimDecorators2.pas new file mode 100644 index 0000000..16aacbd --- /dev/null +++ b/Graph3D/Анимация/Декораторы Анимаций/AnimDecorators2.pas @@ -0,0 +1,7 @@ +uses Graph3D; + +begin + var ss := Cube(0,0,0,1.5,Colors.Red); + var anim := ss.AnimRotate(OrtZ,360).Forever.AutoReverse; + anim.Begin; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Декораторы Анимаций/AnimDecorators3.pas b/Graph3D/Анимация/Декораторы Анимаций/AnimDecorators3.pas new file mode 100644 index 0000000..ed7a7e2 --- /dev/null +++ b/Graph3D/Анимация/Декораторы Анимаций/AnimDecorators3.pas @@ -0,0 +1,8 @@ +uses Graph3D; + +begin + Cylinder(Origin,6,0.3,Colors.Green); + var ss := Cube(-3,0,0,1.5,Colors.Red); + var anim := ss.AnimRotateAt(OrtZ,360,P3D(3,0,0),2).Forever; + anim.Begin; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Декораторы Анимаций/GroupAnimForever.pas b/Graph3D/Анимация/Декораторы Анимаций/GroupAnimForever.pas new file mode 100644 index 0000000..251cf63 --- /dev/null +++ b/Graph3D/Анимация/Декораторы Анимаций/GroupAnimForever.pas @@ -0,0 +1,8 @@ +uses Graph3D; + +begin + var c := Cube(-2,0,0,2,Colors.Beige); + var c1 := Cube(2,0,0,2,Colors.Green); + var a := c.AnimRotate(OrtZ,360,4).Forever * c1.AnimRotate(OrtZ,360,1).Forever; + a.Begin; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Декораторы Анимаций/ProbaGroup3.pas b/Graph3D/Анимация/Декораторы Анимаций/ProbaGroup3.pas new file mode 100644 index 0000000..eb354b6 --- /dev/null +++ b/Graph3D/Анимация/Декораторы Анимаций/ProbaGroup3.pas @@ -0,0 +1,7 @@ +uses Graph3D; + +begin + var bb := ArrGen(15,i -> Object3D(Box(0.5*i,0,0,0.1,6,2,RandomColor))); + var g := Group(bb).MoveByX(-5); + g.AnimRotateAt(ortZ,360,P3D(-1,0,0),2).Forever.Begin; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Простая Анимация/GroupAnimationAdd.pas b/Graph3D/Анимация/Простая Анимация/GroupAnimationAdd.pas new file mode 100644 index 0000000..fa946b9 --- /dev/null +++ b/Graph3D/Анимация/Простая Анимация/GroupAnimationAdd.pas @@ -0,0 +1,30 @@ +uses Graph3D; + +begin + View3D.ShowGridLines := False; + + var a := new GroupAnimation; + + var p := P3D(9,-3,0); + var sz := 1.3; + var h := 4; + for var n:=3 to 10 do + begin + var pr := Prism(p,n,sz,4,Colors.Beige); + var prw := PrismWireFrame(p,n,sz+0.01,4); + p := p.MoveX(-2*sz-0.3); + a += pr.AnimRotate(OrtZ,360,10).Forever; + a += prw.AnimRotate(OrtZ,360,10).Forever; + end; + + p := P3D(9,3,0); + for var n:=3 to 10 do + begin + var pr := Pyramid(p,n,sz,4,Colors.Beige); + var prw := PyramidWireFrame(p,n,sz+0.01,4); + p := p.MoveX(-2*sz-0.3); + a += pr.AnimRotate(OrtZ,360,10).Forever; + a += prw.AnimRotate(OrtZ,360,10).Forever; + end; + a.Begin; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Простая Анимация/ProbaGroup2.pas b/Graph3D/Анимация/Простая Анимация/ProbaGroup2.pas new file mode 100644 index 0000000..1e998d0 --- /dev/null +++ b/Graph3D/Анимация/Простая Анимация/ProbaGroup2.pas @@ -0,0 +1,9 @@ +uses Graph3D; + +begin + var b := Box(0,0,0,6,1,2,Colors.Blue); + var s := Sphere(0,0,2,1,Colors.Green); + + var g := Group(b,s); + g.AnimRotateAt(OrtZ,360,P3D(3,0,0),2).Begin; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Простая Анимация/animSequence.pas b/Graph3D/Анимация/Простая Анимация/animSequence.pas new file mode 100644 index 0000000..4f0c35b --- /dev/null +++ b/Graph3D/Анимация/Простая Анимация/animSequence.pas @@ -0,0 +1,10 @@ +uses Graph3D; + +begin + var s := Box(0,0,0,3,1,2,Colors.Blue); + var an := Animate.Sequence( + s.AnimMoveByY(5), + s.AnimMoveByX(5) + ); + an.Begin; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Составные Анимации/AnimJump.pas b/Graph3D/Анимация/Составные Анимации/AnimJump.pas new file mode 100644 index 0000000..361bd23 --- /dev/null +++ b/Graph3D/Анимация/Составные Анимации/AnimJump.pas @@ -0,0 +1,9 @@ +uses Graph3D; + +begin + var jmp := 0.3; + var time := 0.5; + var c := Box(0,0,2,1,2,4,Colors.Green); + var a := c.AnimMoveByZ(-0.4,time).AutoReverse.Forever * c.AnimScaleZ(0.95,time).AutoReverse.Forever * c.AnimMoveByX(1*10,time*10); + a.Begin; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Составные Анимации/PlanetsRotate.pas b/Graph3D/Анимация/Составные Анимации/PlanetsRotate.pas new file mode 100644 index 0000000..fe4cb48 --- /dev/null +++ b/Graph3D/Анимация/Составные Анимации/PlanetsRotate.pas @@ -0,0 +1,20 @@ +uses Graph3D; + +begin + Window.Title := 'Вращение планет'; + View3D.ShowCoordinateSystem := False; + View3D.ShowGridLines := False; + View3D.ShowViewCube := False; + View3D.BackgroundColor := Colors.Black; + + var s := Sphere(2,0,0,0.5,Colors.Red); + var ss := Sphere(0,0,0,1,Colors.Blue); + Sphere(0,0,0,2,DiffuseMaterial(Colors.Yellow)+SpecularMaterial(32)); + var g := Group(s,ss); + g.MoveBy(-7,0,0); + var anim := s.AnimRotateAt(OrtZ,360*100,P3D(-2,0,0),2*100) + * g.AnimRotateAt(OrtZ,360*100,P3D(7,0,0),10*100) + ; + + anim.Begin; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Составные Анимации/Platonic.pas b/Graph3D/Анимация/Составные Анимации/Platonic.pas new file mode 100644 index 0000000..bbd4cd1 --- /dev/null +++ b/Graph3D/Анимация/Составные Анимации/Platonic.pas @@ -0,0 +1,27 @@ +uses Graph3D; + +begin + Window.Title := 'Платоновы тела'; + var РисоватьОписанныеСферы := True; + var p := P3D(8,0,0); + var p1 := p; + var h := -4; + Icosahedron(p,2,Colors.Green); + p.Offset(h,0,0); + Dodecahedron(p,2,Colors.Blue); + p.Offset(h,0,0); + Tetrahedron(p,2,Colors.Red); + p.Offset(h,0,0); + Octahedron(p,2,Colors.Magenta); + p.Offset(h,0,0); + Cube(p,2*2/Sqrt(3),Colors.Brown); + + p := p1; + if РисоватьОписанныеСферы then + loop 5 do + begin + var s := Sphere(p,2.0,DiffuseMaterial(Colors.Gold.ChangeAlpha(64))+SpecularMaterial(64)); + s.BackMaterial := nil; + p.Offset(h,0,0); + end; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Составные Анимации/ThenAnimMove.pas b/Graph3D/Анимация/Составные Анимации/ThenAnimMove.pas new file mode 100644 index 0000000..2c54bb3 --- /dev/null +++ b/Graph3D/Анимация/Составные Анимации/ThenAnimMove.pas @@ -0,0 +1,9 @@ +uses Graph3D; + +begin + var s := Sphere(Origin,1,Colors.Green); + s.AnimMoveByX(5).WhenCompleted(procedure->s.AnimMoveByY(5).Begin).Begin; + var s1 := s.Clone; + s1.Color := Colors.Blue; + s1.AnimMoveByX(-5).WhenCompleted(procedure->s1.AnimMoveByY(-5).Begin).Begin; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Составные Анимации/animSequencePlus.pas b/Graph3D/Анимация/Составные Анимации/animSequencePlus.pas new file mode 100644 index 0000000..2332493 --- /dev/null +++ b/Graph3D/Анимация/Составные Анимации/animSequencePlus.pas @@ -0,0 +1,13 @@ +uses Graph3D; + +begin + Window.Title := 'a+b+c - последовательное выполнение, a*b - параллельное выполнение'; + var s := Box(0,0,0,3,1,2,Colors.Blue); + var p1 := P3D(5,0,0); + var p2 := P3D(5,5,0); + var OrtZ := V3D(0,0,1); + var an := s.AnimMoveTo(p1,1.Sec)*s.AnimScale(1.5,1.Sec) + + s.AnimMoveTo(p2,1.Sec)*s.AnimScale(1,1.Sec) + + s.AnimRotate(OrtZ,90,1.Sec); + an.Begin; +end. \ No newline at end of file diff --git a/Graph3D/Анимация/Составные Анимации/animWhenCompleted.pas b/Graph3D/Анимация/Составные Анимации/animWhenCompleted.pas new file mode 100644 index 0000000..1432de8 --- /dev/null +++ b/Graph3D/Анимация/Составные Анимации/animWhenCompleted.pas @@ -0,0 +1,8 @@ +uses Graph3D; + +begin + var t := Text3D(0,-7,1,'Начало анимации...',2); + var s := Box(0,0,0,3,1,2,Colors.Blue); + var an := s.AnimMoveTo(P3D(5,0,0),2).WhenCompleted(procedure -> t.Text := 'Конец!'); + an.Begin +end. \ No newline at end of file diff --git a/Graph3D/Группировка/Child.pas b/Graph3D/Группировка/Child.pas new file mode 100644 index 0000000..5abf90b --- /dev/null +++ b/Graph3D/Группировка/Child.pas @@ -0,0 +1,7 @@ +uses Graph3D; + +begin + var s := Sphere(0,1,2,2,Colors.Orchid); + s.AddChild(Sphere(0,2,1,0.5,Colors.White)); + s.Rotate(OrtZ,90); +end. \ No newline at end of file diff --git a/Graph3D/Группировка/GroupGroup.pas b/Graph3D/Группировка/GroupGroup.pas new file mode 100644 index 0000000..cce7286 --- /dev/null +++ b/Graph3D/Группировка/GroupGroup.pas @@ -0,0 +1,13 @@ +uses Graph3D; + +begin + var b := Box(0,0,0,3,1,2,Colors.Blue); + var s := Sphere(0,0,2,1,Colors.Green); + + var g := Group(b,s); + g.MoveByY(-4); + var g1 := g.Clone; + g.MoveByY(3); + var gg := Group(g,g1); + gg.MoveByX(3); +end. \ No newline at end of file diff --git a/Graph3D/Группировка/ReGroup2.pas b/Graph3D/Группировка/ReGroup2.pas new file mode 100644 index 0000000..e8dbd3f --- /dev/null +++ b/Graph3D/Группировка/ReGroup2.pas @@ -0,0 +1,16 @@ +uses Graph3D; +// ошибка! +begin + var b := Box(0,0,0,3,1,2,Colors.Blue); + var s := Sphere(0,0,2,1,Colors.Green); + var b1 := Box(0,-3,0,3,1,2,Colors.Blue); + var s1 := Sphere(0,-3,2,1,Colors.Green); + + var g := Group(b,s); + var g1 := Group(b1,s1); + g.AddChild(g1[0]);// он должен отсоединиться от g! + Sleep(1000); + g.MoveByX(3); + Sleep(1000); + g1.MoveByY(4); +end. \ No newline at end of file diff --git a/Graph3D/Клонирование/CloneAnim.pas b/Graph3D/Клонирование/CloneAnim.pas new file mode 100644 index 0000000..d991960 --- /dev/null +++ b/Graph3D/Клонирование/CloneAnim.pas @@ -0,0 +1,9 @@ +// Анимация клона + +uses Graph3D; +begin + var b := Box(0,0,1,1,3,2,RandomColor); + var b1 := b.Clone; + b1.MoveBy(3,0,0); + b1.AnimRotate(OrtZ,90).Begin; +end. \ No newline at end of file diff --git a/Graph3D/Клонирование/CloneWithChildren.pas b/Graph3D/Клонирование/CloneWithChildren.pas new file mode 100644 index 0000000..2aa820d --- /dev/null +++ b/Graph3D/Клонирование/CloneWithChildren.pas @@ -0,0 +1,15 @@ +uses Graph3D; + +begin + var s := Sphere(0,0,0,1,Colors.Red); + var c := Cube(0,0,1.5,1,Colors.Blue); + var p := Pyramid(0,0,0.5,4,0.5,1,Colors.LightGreen); + s.AddChild(c); + c.AddChild(p); + var s1 := s.Clone; + s1.MoveByX(2); + var g := Group(s,s1); + var g1 := g.Clone; + g.MoveByY(-4); + s1.AnimRotateAt(OrtZ,360,P3D(-2,0,0)).Begin; +end. \ No newline at end of file diff --git a/Graph3D/Клонирование/DuplicateByTrajectory.pas b/Graph3D/Клонирование/DuplicateByTrajectory.pas new file mode 100644 index 0000000..648a6b8 --- /dev/null +++ b/Graph3D/Клонирование/DuplicateByTrajectory.pas @@ -0,0 +1,26 @@ +uses Graph3D; + +function ParametricTrajectory(a,b: real; fun: real->Point3D; N: integer) := PartitionPoints(a,b,N).Select(fun); + +function ParametricCirve3D(a,b: real; fun: real->Point3D; N: integer := 200): SegmentsT; +begin + var tr := ParametricTrajectory(a,b,fun,N); + Result := Polyline3D(tr); +end; + +procedure DuplicateByTrajectory(c: Object3D; a,b: real; fun: real->Point3D; N: integer); +begin + c.MoveTo(fun(a)); + foreach var p in PartitionPoints(a,b,N).Skip(1).Select(fun) do + begin + var c1 := c.Clone.MoveTo(p); + c1.Rotate(OrtZ,3); + (c1 as CubeT).Color := RandomColor; + c := c1; + end; +end; + +begin + var c := Cube(0,0,0,0.7,Colors.Green); + DuplicateByTrajectory(c,0,4*Pi,t->P3D(4*cos(t),4*sin(t),0.5*t),40); +end. \ No newline at end of file diff --git a/Graph3D/Клонирование/MovRot.pas b/Graph3D/Клонирование/MovRot.pas new file mode 100644 index 0000000..439c95c --- /dev/null +++ b/Graph3D/Клонирование/MovRot.pas @@ -0,0 +1,9 @@ +uses Graph3D; + +begin + var b := Box(0,0,0,3,1,2,Colors.Blue); + var b1 := b.Clone.RotateAt(OrtZ,90,P3D(1.5,0,0)).MoveByX(-0.5); + b1 := b.Clone.RotateAt(OrtZ,-90,P3D(-1.5,0,0)).MoveByX(0.5); + View3D.BackgroundColor := Colors.Black; + View3D.ShowGridLines := False; +end. \ No newline at end of file diff --git a/Graph3D/Кривые/3DCirve1.pas b/Graph3D/Кривые/3DCirve1.pas new file mode 100644 index 0000000..78a7404 --- /dev/null +++ b/Graph3D/Кривые/3DCirve1.pas @@ -0,0 +1,15 @@ +uses Graph3D; + +function ParametricTrajectory(a,b: real; N: integer; fun: real->Point3D) := PartitionPoints(a,b,N).Select(fun); + +function ParametricCirve3D(a,b: real; fun: real->Point3D; N: integer := 200): SegmentsT; +begin + var tr := ParametricTrajectory(a,b,N,fun); + Result := Polyline3D(tr); +end; + +begin + //View3d.ShowGridLines := False; + ParametricCirve3D(0,20*Pi,t->P3D(0.04*t*cos(t),0.04*t*sin(t),0.1*t),1000); + //var p := ParametricCirve3D(0,20*Pi,t->P3D(3*cos(t),4*sin(1.4*t),4*cos(1.7*t)),1000); +end. \ No newline at end of file diff --git a/Graph3D/Кубик Рубика/Rubic3D.pas b/Graph3D/Кубик Рубика/Rubic3D.pas new file mode 100644 index 0000000..cde4f37 --- /dev/null +++ b/Graph3D/Кубик Рубика/Rubic3D.pas @@ -0,0 +1,250 @@ +uses Graph3D; + +var InnerColor := RGB(70,70,70); +var sec := 0.5; + +var g := new Object3D[3,3,3]; + +procedure CreateCube; +begin + var a := 1.03; + + for var x := 0 to 2 do + for var y := 0 to 2 do + for var z := 0 to 2 do + if (x,y,z) <> (1,1,1) then + begin + var b := Box(0+x*a-a,0+y*a-a,-0.5+z*a-a,1,1,0.01,z=0 ? Colors.White : InnerColor); + var b3 := Box(0+x*a-a,0+y*a-a,0.5+z*a-a,1,1,0.01,z=2 ? Colors.Yellow : InnerColor); + + var b1 := Box(0.5+x*a-a,0+y*a-a,0+z*a-a,0.01,1,1,x=2 ? Colors.Red : InnerColor); + var b4 := Box(-0.5+x*a-a,0+y*a-a,0+z*a-a,0.01,1,1,x=0 ? Colors.Orange : InnerColor); + + var b2 := Box(0+x*a-a,0.5+y*a-a,0+z*a-a,1,0.01,1,y=2 ? Colors.Green : InnerColor); + var b5 := Box(0+x*a-a,-0.5+y*a-a,0+z*a-a,1,0.01,1,y=0 ? Colors.Blue : InnerColor); + + g[x,y,z] := Group(b,b1,b2,b3,b4,b5); + end; +end; + +var IsAnimated := False; +var CountCompleted := 0; + +procedure ShiftLeft(var a,b,c,d: T); +begin + var v := a; + a := b; + b := c; + c := d; + d := v; +end; + +procedure ShiftRight(var a,b,c,d: T); +begin + var v := d; + d := c; + c := b; + b := a; + a := v; +end; + +procedure EndAnim; +begin + CountCompleted += 1; + if CountCompleted = 9 then + begin + IsAnimated := False; + CountCompleted := 0; + end; +end; + +procedure RightRotate(n: integer := 1); +begin + IsAnimated := True; + var y := 2; + if n = 0 then exit; + for var x := 0 to 2 do + for var z := 0 to 2 do + g[x,y,z].AnimRotateAtAbsolute(OrtY,-90*n,Origin,sec*Abs(n),EndAnim).Begin; + + if n>0 then + loop Abs(n) do + begin + ShiftLeft(g[1,y,0],g[0,y,1],g[1,y,2],g[2,y,1]); + ShiftLeft(g[2,y,0],g[0,y,0],g[0,y,2],g[2,y,2]); + end + else + loop Abs(n) do + begin + ShiftRight(g[1,y,0],g[0,y,1],g[1,y,2],g[2,y,1]); + ShiftRight(g[2,y,0],g[0,y,0],g[0,y,2],g[2,y,2]); + end +end; + +procedure LeftRotate(n: integer := 1); +begin + IsAnimated := True; + var y := 0; + if n = 0 then exit; + for var x := 0 to 2 do + for var z := 0 to 2 do + g[x,y,z].AnimRotateAtAbsolute(OrtY,90*n,Origin,sec*Abs(n),EndAnim).Begin; + + if n<0 then + loop Abs(n) do + begin + ShiftLeft(g[1,y,0],g[0,y,1],g[1,y,2],g[2,y,1]); + ShiftLeft(g[2,y,0],g[0,y,0],g[0,y,2],g[2,y,2]); + end + else + loop Abs(n) do + begin + ShiftRight(g[1,y,0],g[0,y,1],g[1,y,2],g[2,y,1]); + ShiftRight(g[2,y,0],g[0,y,0],g[0,y,2],g[2,y,2]); + end +end; + +procedure UpRotate(n: integer := 1); +begin + IsAnimated := True; + var z := 2; + if n = 0 then exit; + for var x := 0 to 2 do + for var y := 0 to 2 do + g[x,y,z].AnimRotateAtAbsolute(OrtZ,-90*n,Origin,sec*Abs(n),EndAnim).Begin; + + if n<0 then + loop Abs(n) do + begin + ShiftLeft(g[1,0,z],g[0,1,z],g[1,2,z],g[2,1,z]); + ShiftLeft(g[2,0,z],g[0,0,z],g[0,2,z],g[2,2,z]); + end + else + loop Abs(n) do + begin + ShiftRight(g[1,0,z],g[0,1,z],g[1,2,z],g[2,1,z]); + ShiftRight(g[2,0,z],g[0,0,z],g[0,2,z],g[2,2,z]); + end +end; + +procedure DownRotate(n: integer := 1); +begin + IsAnimated := True; + var z := 0; + if n = 0 then exit; + for var x := 0 to 2 do + for var y := 0 to 2 do + g[x,y,z].AnimRotateAtAbsolute(OrtZ,90*n,Origin,sec*Abs(n),EndAnim).Begin; + + if n>0 then + loop Abs(n) do + begin + ShiftLeft(g[1,0,z],g[0,1,z],g[1,2,z],g[2,1,z]); + ShiftLeft(g[2,0,z],g[0,0,z],g[0,2,z],g[2,2,z]); + end + else + loop Abs(n) do + begin + ShiftRight(g[1,0,z],g[0,1,z],g[1,2,z],g[2,1,z]); + ShiftRight(g[2,0,z],g[0,0,z],g[0,2,z],g[2,2,z]); + end +end; + +procedure FrontRotate(n: integer := 1); +begin + IsAnimated := True; + var x := 2; + if n = 0 then exit; + for var y := 0 to 2 do + for var z := 0 to 2 do + g[x,y,z].AnimRotateAtAbsolute(OrtX,-90*n,Origin,sec*Abs(n),EndAnim).Begin; + + if n<0 then + loop Abs(n) do + begin + ShiftLeft(g[x,1,0],g[x,0,1],g[x,1,2],g[x,2,1]); + ShiftLeft(g[x,2,0],g[x,0,0],g[x,0,2],g[x,2,2]); + end + else + loop Abs(n) do + begin + ShiftRight(g[x,1,0],g[x,0,1],g[x,1,2],g[x,2,1]); + ShiftRight(g[x,2,0],g[x,0,0],g[x,0,2],g[x,2,2]); + end +end; + +procedure BackRotate(n: integer := 1); +begin + IsAnimated := True; + var x := 0; + if n = 0 then exit; + for var y := 0 to 2 do + for var z := 0 to 2 do + g[x,y,z].AnimRotateAtAbsolute(OrtX,90*n,Origin,sec*Abs(n),EndAnim).Begin; + + if n>0 then + loop Abs(n) do + begin + ShiftLeft(g[x,1,0],g[x,0,1],g[x,1,2],g[x,2,1]); + ShiftLeft(g[x,2,0],g[x,0,0],g[x,0,2],g[x,2,2]); + end + else + loop Abs(n) do + begin + ShiftRight(g[x,1,0],g[x,0,1],g[x,1,2],g[x,2,1]); + ShiftRight(g[x,2,0],g[x,0,0],g[x,0,2],g[x,2,2]); + end +end; + + + +procedure InitScene; +begin + View3D.ShowGridLines := False; + Camera.Position := P3D(10,6,6); + Camera.LookDirection := V3D(-10,-6,-6); + Window.Title := 'Кубик Рубика'; + View3D.Title := 'Вращение граней:'; + View3D.SubTitle := 'F,B - передняя-задняя'#10'U,D - верхняя-нижняя'#10'L,R - левая-правая'; + Lights.AddDirectionalLight(Colors.DarkGray,V3D(-2.0,0,0)); + Lights.AddDirectionalLight(Colors.Gray,V3D(2.0,0,0)); + Lights.AddDirectionalLight(RGB(150,150,150),V3D(0,0,2)); + Lights.AddDirectionalLight(RGB(50,50,50),V3D(0,0,-2)); + Lights.AddDirectionalLight(Colors.Gray,V3D(0,2,0)); +end; + +procedure Mix; +begin + sec := 0.5; + loop 20 do + begin + case Random(6) of + 0: RightRotate; + 1: LeftRotate; + 2: UpRotate; + 3: DownRotate; + 4: FrontRotate; + 5: BackRotate; + end; + //Sleep(Round((sec+0.03)*1000)); + end; + sec := 0.5; +end; + +begin + InitScene; + CreateCube; + OnKeyDown := k -> begin + if IsAnimated then + exit; + case k of + Key.R: RightRotate; + Key.L: LeftRotate; + Key.U: UpRotate; + Key.D: DownRotate; + Key.F: FrontRotate; + Key.B: BackRotate; + Key.M: Mix; + end; + end; +end. \ No newline at end of file diff --git a/Graph3D/Материалы/Cells1.png b/Graph3D/Материалы/Cells1.png new file mode 100644 index 0000000000000000000000000000000000000000..4dd422612a1c11ed285860f4c1e06bb16e887dad GIT binary patch literal 178 zcmeAS@N?(olHy`uVBq!ia0vp^av;pX1SGcvS$+jljKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85o30K$!7fntTON(B0F;F~q|=Ib}xe^hPs=lrKKvsv7-O3bo&D z)ifrvC0xlcF~~BJk}#Fx?UCwbbL(|uUhKBGF>vw411m0OBxFeWZhof1%*=4Goqf>^ T;mQd>BN;qh{an^LB{Ts52>LQG literal 0 HcmV?d00001 diff --git a/Graph3D/Материалы/Cells2.png b/Graph3D/Материалы/Cells2.png new file mode 100644 index 0000000000000000000000000000000000000000..dae2af80f29b7a17bad5773456ed9b837271d9ad GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0vp^av;pX1SGcvS$+jljKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85o30K$!7fntTON(9YAvF~r0B?X``93<^Al4;=U>onn^8$ffmF zZ^vbRh3#@zR|i$SZJ0ebU*Uks47SS&Qa;U@2E5B2o-cXh7bg2RH}a_7hgFM!CNX%r L`njxgN@xNAG!!(N literal 0 HcmV?d00001 diff --git a/Graph3D/Материалы/Dog.jpg b/Graph3D/Материалы/Dog.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6ea685de1870aebd97830bc65db279178d3a1528 GIT binary patch literal 24636 zcmb5V1yGz#uqe7XfdoPz1b0br*M$v17DBKjxP>g5#oaXo3%f{w;O@S-JBz!!ySsDw z&pG$Kcm8+pt-4b+GhOrbbkA2c(=%<4Q;*Al4QXdHV*o%-js<`X001xmuTancC{NHo zl^X>WK=IUne5yQ8Fws;0gbW}={eN-H0?_{h*Y#=qpCTbCMf1hQ&fdtvjz-GN#LV8n zoJP*Vz{Jeb1i-_^#V^9eBf=vn#sk(%@r1b`X4a2kRSjx z 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 FFjySm~U) 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%0AK%J0mF|_)$Jkwdl)-S=+Iu_OGvoBr8Ls+D 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