Search.setIndex({"docnames": ["AlgorithmAnalysis/AnAnagramDetectionExample", "AlgorithmAnalysis/BigONotation", "AlgorithmAnalysis/DiscussionQuestions", "AlgorithmAnalysis/Glossary", "AlgorithmAnalysis/HashTableAnalysis", "AlgorithmAnalysis/Objectives", "AlgorithmAnalysis/PerformanceofCppDataCollections", "AlgorithmAnalysis/ProgrammingExercises", "AlgorithmAnalysis/StringAnalysis", "AlgorithmAnalysis/VectorAnalysis", "AlgorithmAnalysis/WhatIsAlgorithmAnalysis", "AlgorithmAnalysis/toctree", "Graphs/AnAdjacencyList", "Graphs/AnAdjacencyMatrix", "Graphs/AnalysisofDijkstrasAlgorithm", "Graphs/BreadthFirstSearchAnalysis", "Graphs/BuildingtheKnightsTourGraph", "Graphs/BuildingtheWordLadderGraph", "Graphs/DepthFirstSearchAnalysis", "Graphs/DijkstrasAlgorithm", "Graphs/DiscussionQuestions", "Graphs/GeneralDepthFirstSearch", "Graphs/Glossary", "Graphs/Implementation", "Graphs/ImplementingBreadthFirstSearch", "Graphs/ImplementingKnightsTour", "Graphs/KnightsTourAnalysis", "Graphs/Objectives", "Graphs/PrimsSpanningTreeAlgorithm", "Graphs/ProgrammingExercises", "Graphs/ShortestPathProblems", "Graphs/StronglyConnectedComponents", "Graphs/Summary", "Graphs/TheGraphAbstractDataType", "Graphs/TheKnightsTourProblem", "Graphs/TheWordLadderProblem", "Graphs/TopologicalSorting", "Graphs/VocabularyandDefinitions", "Graphs/toctree", "Introduction/CollectionData", "Introduction/DefiningFunctions", "Introduction/DiscussionQuestions", "Introduction/GettingStarted", "Introduction/GettingStartedwithData", "Introduction/Glossary", "Introduction/Graphics", "Introduction/ObjectOrientedProgrammingDefiningClasses", "Introduction/ObjectOrientedProgrammingDerivedClasses", "Introduction/Objectives", "Introduction/ProgrammingExercises", "Introduction/ReviewofBasicCpp", "Introduction/Summary", "Introduction/WhatIsComputerScience", "Introduction/WhatIsProgramming", "Introduction/WhyStudyAlgorithms", "Introduction/WhyStudyDataStructuresandAbstractDataTypes", "Introduction/toctree", "LinearBasic/BalancedSymbolsGeneralCase", "LinearBasic/ConvertingDecimalNumberstoBinaryNumbers", "LinearBasic/DiscussionQuestions", "LinearBasic/Glossary", "LinearBasic/ImplementingaDequeCpp", "LinearBasic/ImplementingaQueueCpp", "LinearBasic/ImplementingaStackCpp", "LinearBasic/InfixPrefixandPostfixExpressions", "LinearBasic/Objectives", "LinearBasic/PalindromeChecker", "LinearBasic/ProgrammingExercises", "LinearBasic/SimpleBalancedParentheses", "LinearBasic/SimulationHotPotato", "LinearBasic/SimulationPrintingTasks", "LinearBasic/Summary", "LinearBasic/TheDequeAbstractDataType", "LinearBasic/TheQueueAbstractDataType", "LinearBasic/TheStackAbstractDataType", "LinearBasic/WhatAreLinearStructures", "LinearBasic/WhatIsaDeque", "LinearBasic/WhatIsaQueue", "LinearBasic/WhatisaStack", "LinearBasic/toctree", "LinearBasic3/WhatIsaQueue", "LinearLinked/DiscussionQuestions", "LinearLinked/Glossary", "LinearLinked/ImplementinganOrderedList", "LinearLinked/ImplementinganUnorderedListLinkedLists", "LinearLinked/Objectives", "LinearLinked/ProgrammingExercises", "LinearLinked/Summary", "LinearLinked/TheOrderedListAbstractDataType", "LinearLinked/TheUnorderedArrayAbstractDataType", "LinearLinked/WhatAreLinkedStructures", "LinearLinked/toctree", "Recursion/ComplexRecursiveProblems", "Recursion/DiscussionQuestions", "Recursion/DynamicProgramming", "Recursion/ExploringaMaze", "Recursion/Glossary", "Recursion/Objectives", "Recursion/StackFramesImplementingRecursion", "Recursion/TheThreeLawsofRecursion", "Recursion/TowerofHanoi", "Recursion/WhatIsRecursion", "Recursion/pythondsCalculatingtheSumofaListofNumbers", "Recursion/pythondsConvertinganIntegertoaStringinAnyBase", "Recursion/pythondsProgrammingExercises", "Recursion/pythondsSierpinskiTriangle", "Recursion/pythondsintro-VisualizingRecursion", "Recursion/toctree", "SearchHash/DiscussionQuestions", "SearchHash/Glossary", "SearchHash/Hashing", "SearchHash/Objectives", "SearchHash/ProgrammingExercises", "SearchHash/Summary", "SearchHash/TheBinarySearch", "SearchHash/TheSequentialSearch", "SearchHash/searching", "SearchHash/toctree", "Sort/DiscussionQuestions", "Sort/Glossary", "Sort/Objectives", "Sort/ProgrammingExercises", "Sort/Summary", "Sort/TheBubbleSort", "Sort/TheInsertionSort", "Sort/TheMergeSort", "Sort/TheQuickSort", "Sort/TheSelectionSort", "Sort/TheShellSort", "Sort/sorting", "Sort/toctree", "Trees/AVLTreeImplementation", "Trees/AVLTreePerformance", "Trees/BalancedBinarySearchTrees", "Trees/BinaryHeapImplementation", "Trees/BinaryHeapOperations", "Trees/BinaryHeapPriorityQExample", "Trees/BinarySearchTrees", "Trees/DiscussionQuestions", "Trees/ExamplesofTrees", "Trees/Glossary", "Trees/ListofListsRepresentation", "Trees/NodesandReferences", "Trees/Objectives", "Trees/ParseTree", "Trees/PriorityQueueswithBinaryHeaps", "Trees/ProgrammingExercises", "Trees/SearchTreeAnalysis", "Trees/SearchTreeImplementation", "Trees/SearchTreeOperations", "Trees/Summary", "Trees/SummaryofMapADTImplementations", "Trees/TreeTraversals", "Trees/VocabularyandDefinitions", "Trees/toctree", "_static/theme/default.css", "_static/theme/elegant.css", "_static/theme/neat.css", "_static/theme/night.css", "_static/visualization_code/bubble_sort.cpp", "_static/visualization_code/dfs.cpp", "_static/visualization_code/insertion_sort.cpp", "_static/visualization_code/maze.cpp", "_static/visualization_code/merge_sort.cpp", "_static/visualization_code/quick_sort.cpp", "_static/visualization_code/sel_sort.cpp", "_static/visualization_code/shell_sort.cpp", "assignments", "index"], "filenames": ["AlgorithmAnalysis/AnAnagramDetectionExample.rst", "AlgorithmAnalysis/BigONotation.rst", "AlgorithmAnalysis/DiscussionQuestions.rst", "AlgorithmAnalysis/Glossary.rst", "AlgorithmAnalysis/HashTableAnalysis.rst", "AlgorithmAnalysis/Objectives.rst", "AlgorithmAnalysis/PerformanceofCppDataCollections.rst", "AlgorithmAnalysis/ProgrammingExercises.rst", "AlgorithmAnalysis/StringAnalysis.rst", "AlgorithmAnalysis/VectorAnalysis.rst", "AlgorithmAnalysis/WhatIsAlgorithmAnalysis.rst", "AlgorithmAnalysis/toctree.rst", "Graphs/AnAdjacencyList.rst", "Graphs/AnAdjacencyMatrix.rst", "Graphs/AnalysisofDijkstrasAlgorithm.rst", "Graphs/BreadthFirstSearchAnalysis.rst", "Graphs/BuildingtheKnightsTourGraph.rst", "Graphs/BuildingtheWordLadderGraph.rst", "Graphs/DepthFirstSearchAnalysis.rst", "Graphs/DijkstrasAlgorithm.rst", "Graphs/DiscussionQuestions.rst", "Graphs/GeneralDepthFirstSearch.rst", "Graphs/Glossary.rst", "Graphs/Implementation.rst", "Graphs/ImplementingBreadthFirstSearch.rst", "Graphs/ImplementingKnightsTour.rst", "Graphs/KnightsTourAnalysis.rst", "Graphs/Objectives.rst", "Graphs/PrimsSpanningTreeAlgorithm.rst", "Graphs/ProgrammingExercises.rst", "Graphs/ShortestPathProblems.rst", "Graphs/StronglyConnectedComponents.rst", "Graphs/Summary.rst", "Graphs/TheGraphAbstractDataType.rst", "Graphs/TheKnightsTourProblem.rst", "Graphs/TheWordLadderProblem.rst", "Graphs/TopologicalSorting.rst", "Graphs/VocabularyandDefinitions.rst", "Graphs/toctree.rst", "Introduction/CollectionData.rst", "Introduction/DefiningFunctions.rst", "Introduction/DiscussionQuestions.rst", "Introduction/GettingStarted.rst", "Introduction/GettingStartedwithData.rst", "Introduction/Glossary.rst", "Introduction/Graphics.rst", "Introduction/ObjectOrientedProgrammingDefiningClasses.rst", "Introduction/ObjectOrientedProgrammingDerivedClasses.rst", "Introduction/Objectives.rst", "Introduction/ProgrammingExercises.rst", "Introduction/ReviewofBasicCpp.rst", "Introduction/Summary.rst", "Introduction/WhatIsComputerScience.rst", "Introduction/WhatIsProgramming.rst", "Introduction/WhyStudyAlgorithms.rst", "Introduction/WhyStudyDataStructuresandAbstractDataTypes.rst", "Introduction/toctree.rst", "LinearBasic/BalancedSymbolsGeneralCase.rst", "LinearBasic/ConvertingDecimalNumberstoBinaryNumbers.rst", "LinearBasic/DiscussionQuestions.rst", "LinearBasic/Glossary.rst", "LinearBasic/ImplementingaDequeCpp.rst", "LinearBasic/ImplementingaQueueCpp.rst", "LinearBasic/ImplementingaStackCpp.rst", "LinearBasic/InfixPrefixandPostfixExpressions.rst", "LinearBasic/Objectives.rst", "LinearBasic/PalindromeChecker.rst", "LinearBasic/ProgrammingExercises.rst", "LinearBasic/SimpleBalancedParentheses.rst", "LinearBasic/SimulationHotPotato.rst", "LinearBasic/SimulationPrintingTasks.rst", "LinearBasic/Summary.rst", "LinearBasic/TheDequeAbstractDataType.rst", "LinearBasic/TheQueueAbstractDataType.rst", "LinearBasic/TheStackAbstractDataType.rst", "LinearBasic/WhatAreLinearStructures.rst", "LinearBasic/WhatIsaDeque.rst", "LinearBasic/WhatIsaQueue.rst", "LinearBasic/WhatisaStack.rst", "LinearBasic/toctree.rst", "LinearBasic3/WhatIsaQueue.rst", "LinearLinked/DiscussionQuestions.rst", "LinearLinked/Glossary.rst", "LinearLinked/ImplementinganOrderedList.rst", "LinearLinked/ImplementinganUnorderedListLinkedLists.rst", "LinearLinked/Objectives.rst", "LinearLinked/ProgrammingExercises.rst", "LinearLinked/Summary.rst", "LinearLinked/TheOrderedListAbstractDataType.rst", "LinearLinked/TheUnorderedArrayAbstractDataType.rst", "LinearLinked/WhatAreLinkedStructures.rst", "LinearLinked/toctree.rst", "Recursion/ComplexRecursiveProblems.rst", "Recursion/DiscussionQuestions.rst", "Recursion/DynamicProgramming.rst", "Recursion/ExploringaMaze.rst", "Recursion/Glossary.rst", "Recursion/Objectives.rst", "Recursion/StackFramesImplementingRecursion.rst", "Recursion/TheThreeLawsofRecursion.rst", "Recursion/TowerofHanoi.rst", "Recursion/WhatIsRecursion.rst", "Recursion/pythondsCalculatingtheSumofaListofNumbers.rst", "Recursion/pythondsConvertinganIntegertoaStringinAnyBase.rst", "Recursion/pythondsProgrammingExercises.rst", "Recursion/pythondsSierpinskiTriangle.rst", "Recursion/pythondsintro-VisualizingRecursion.rst", "Recursion/toctree.rst", "SearchHash/DiscussionQuestions.rst", "SearchHash/Glossary.rst", "SearchHash/Hashing.rst", "SearchHash/Objectives.rst", "SearchHash/ProgrammingExercises.rst", "SearchHash/Summary.rst", "SearchHash/TheBinarySearch.rst", "SearchHash/TheSequentialSearch.rst", "SearchHash/searching.rst", "SearchHash/toctree.rst", "Sort/DiscussionQuestions.rst", "Sort/Glossary.rst", "Sort/Objectives.rst", "Sort/ProgrammingExercises.rst", "Sort/Summary.rst", "Sort/TheBubbleSort.rst", "Sort/TheInsertionSort.rst", "Sort/TheMergeSort.rst", "Sort/TheQuickSort.rst", "Sort/TheSelectionSort.rst", "Sort/TheShellSort.rst", "Sort/sorting.rst", "Sort/toctree.rst", "Trees/AVLTreeImplementation.rst", "Trees/AVLTreePerformance.rst", "Trees/BalancedBinarySearchTrees.rst", "Trees/BinaryHeapImplementation.rst", "Trees/BinaryHeapOperations.rst", "Trees/BinaryHeapPriorityQExample.rst", "Trees/BinarySearchTrees.rst", "Trees/DiscussionQuestions.rst", "Trees/ExamplesofTrees.rst", "Trees/Glossary.rst", "Trees/ListofListsRepresentation.rst", "Trees/NodesandReferences.rst", "Trees/Objectives.rst", "Trees/ParseTree.rst", "Trees/PriorityQueueswithBinaryHeaps.rst", "Trees/ProgrammingExercises.rst", "Trees/SearchTreeAnalysis.rst", "Trees/SearchTreeImplementation.rst", "Trees/SearchTreeOperations.rst", "Trees/Summary.rst", "Trees/SummaryofMapADTImplementations.rst", "Trees/TreeTraversals.rst", "Trees/VocabularyandDefinitions.rst", "Trees/toctree.rst", "_static/theme/default.css", "_static/theme/elegant.css", "_static/theme/neat.css", "_static/theme/night.css", "_static/visualization_code/bubble_sort.cpp", "_static/visualization_code/dfs.cpp", "_static/visualization_code/insertion_sort.cpp", "_static/visualization_code/maze.cpp", "_static/visualization_code/merge_sort.cpp", "_static/visualization_code/quick_sort.cpp", "_static/visualization_code/sel_sort.cpp", "_static/visualization_code/shell_sort.cpp", "assignments.rst", "index.rst"], "titles": ["2.4. An Anagram Detection Example", "2.3. Big-O Notation", "2.11. Discussion Questions", "2.13. Glossary", "2.8. Analysis of Hash Tables", "2.1. Objectives", "2.5. Performance of C++ Data Collections", "2.12. Programming Exercises", "2.7. Analysis of String Operators", "2.6. Analysis of Array and Vector Operators", "2.2. What Is Algorithm Analysis?", "2. Analysis", "9.5. An Adjacency List", "9.4. An Adjacency Matrix", "9.21. Analysis of Dijkstra\u2019s Algorithm", "9.10. Breadth First Search Analysis", "9.12. Building the Knight\u2019s Tour Graph", "9.8. Building the Word Ladder Graph", "9.16. Depth First Search Analysis", "9.20. Dijkstra\u2019s Algorithm", "9.24. Discussion Questions", "9.15. General Depth First Search", "9.26. Glossary", "9.6. Implementation", "9.9. Implementing Breadth First Search", "9.13. Implementing Knight\u2019s Tour", "9.14. Knight\u2019s Tour Analysis", "9.1. Objectives", "9.22. Prim\u2019s Spanning Tree Algorithm", "9.25. Programming Exercises", "9.19. Shortest Path Problems", "9.18. Strongly Connected Components", "9.23. Summary", "9.3. The Graph Abstract Data Type", "9.11. The Knight\u2019s Tour Problem", "9.7. The Word Ladder Problem", "9.17. Topological Sorting", "9.2. Vocabulary and Definitions", "9. Graphs and Graph Algorithms", "1.10. Collections", "1.11. Defining C++ Functions", "1.16. Discussion Questions", "1.2. Getting Started", "1.8. Getting Started with Data", "1.18. Glossary", "1.14. Optional: Graphics in C++", "1.12. Object-Oriented Programming in C++: Defining Classes", "1.13. Inheritance in C++", "1.1. Objectives", "1.17. Programming Exercises", "1.7. Reviewing Basic C++", "1.15. Summary", "1.3. What Is Computer Science?", "1.4. What Is Programming?", "1.6. Why Study Algorithms?", "1.5. Why Study Data Structures and Abstract Data Types?", "1. Introduction", "3.7. Balanced Symbols - A General Case", "3.8. Converting Decimal Numbers to Binary Numbers", "3.20. Discussion Questions", "3.22. Glossary", "3.17. Using a Deque in C++", "3.12. Using a Queue in C++", "3.5. Using a Stack in C++", "3.9. Infix, Prefix and Postfix Expressions", "3.1. Objectives", "3.18. Palindrome-Checker", "3.21. Programming Exercises", "3.6. Simple Balanced Parentheses", "3.13. Simulation: Hot Potato", "3.14. Simulation: Printing Tasks", "3.19. Summary", "3.16. The Deque Abstract Data Type", "3.11. The Queue Abstract Data Type", "3.4. The Stack Abstract Data Type", "3.2. What Are Linear Structures?", "3.15. What Is a Deque?", "3.10. What Is a Queue?", "3.3. What is a Stack?", "3. Linear Structures", "What Is a Queue?", "4.9. Discussion Questions", "4.11. Glossary", "4.6. Implementing an Ordered Linked List", "4.3. Implementing an Unordered Linked List", "4.1. Objectives", "4.10. Programming Exercises", "4.8. Summary", "4.7. The Ordered List Abstract Data Type", "The Unordered Array Abstract Data Type", "4.2. What Are Linked Structures?", "4. Linear Linked Structures", "5.9. Complex Recursive Problems", "5.15. Discussion Questions", "5.12. Dynamic Programming", "5.11. Exploring a Maze", "5.17. Glossary", "5.1. Objectives", "5.6. Stack Frames: Implementing Recursion", "5.4. The Three Laws of Recursion", "5.10. Tower of Hanoi", "5.2. What Is Recursion?", "5.3. Calculating the Sum of a Vector of Numbers", "5.5. Converting an Integer to a String in Any Base", "5.16. Programming Exercises", "5.8. Sierpinski Triangle", "5.7. Introduction: Visualizing Recursion", "5. Recursion", "6.8. Discussion Questions", "6.10. Glossary", "6.5. Hashing", "6.1. Objectives", "6.9. Programming Exercises", "6.7. Summary", "6.4. The Binary Search", "6.3. The Sequential Search", "6.2. Searching", "6. Searching and Hashing", "7.11. Discussion Questions", "7.13. Glossary", "7.1. Objectives", "7.12. Programming Exercises", "7.10. Summary", "7.3. The Bubble Sort", "7.5. The Insertion Sort", "7.7. The Merge Sort", "7.8. The Quick Sort", "7.4. The Selection Sort", "7.6. The Shell Sort", "7.2. Sorting", "7. Sorting", "8.17. AVL Tree Implementation", "8.16. AVL Tree Performance", "8.15. Balanced Binary Search Trees", "8.10. Binary Heap Implementation", "8.9. Binary Heap Operations", "8.8. Priority Queues with Binary Heaps Example", "8.11. Binary Search Trees", "8.20. Discussion Questions", "8.2. Examples of Trees", "8.22. Glossary", "List of Lists Representation", "8.4. Nodes and References", "8.1. Objectives", "8.5. Parse Tree", "8.7. Priority Queues with Binary Heaps", "8.21. Programming Exercises", "8.14. Search Tree Analysis", "8.13. Search Tree Implementation", "8.12. Search Tree Operations", "8.19. Summary", "8.18. Summary of Map ADT Implementations", "8.6. Tree Traversals", "8.3. Vocabulary and Definitions", "8. Trees and Tree Algorithms", "<no title>", "<no title>", "<no title>", "<no title>", "<no title>", "<no title>", "<no title>", "<no title>", "<no title>", "<no title>", "<no title>", "<no title>", "Class Assignments", "Problem Solving with Algorithms and Data Structures using C++"], "terms": {"A": [0, 1, 3, 4, 9, 10, 12, 13, 17, 21, 22, 24, 25, 26, 27, 28, 31, 32, 36, 37, 39, 40, 43, 44, 45, 47, 51, 56, 58, 59, 64, 66, 67, 69, 70, 72, 73, 74, 76, 77, 78, 79, 80, 84, 87, 90, 94, 96, 99, 100, 102, 103, 110, 112, 113, 114, 116, 121, 122, 123, 125, 126, 128, 129, 131, 134, 139, 141, 142, 144, 145, 146, 147, 148, 150, 151, 153, 159, 160, 164, 165, 168], "good": [0, 1, 3, 9, 10, 13, 24, 27, 39, 45, 46, 54, 70, 84, 86, 94, 95, 99, 103, 104, 106, 124, 134], "problem": [0, 1, 3, 4, 7, 10, 13, 15, 16, 17, 19, 20, 24, 25, 26, 27, 28, 29, 32, 36, 37, 38, 40, 42, 43, 46, 48, 51, 52, 53, 54, 55, 57, 58, 60, 64, 65, 66, 67, 68, 69, 75, 81, 84, 93, 94, 95, 96, 97, 99, 100, 101, 102, 103, 104, 106, 107, 110, 114, 115, 116, 131, 144, 148, 167], "show": [0, 1, 6, 9, 10, 16, 17, 20, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 35, 36, 37, 39, 40, 43, 45, 46, 47, 55, 57, 59, 64, 67, 69, 70, 72, 73, 74, 76, 77, 78, 80, 81, 83, 84, 89, 94, 99, 100, 102, 103, 105, 106, 110, 114, 115, 118, 123, 124, 125, 126, 127, 128, 131, 132, 133, 134, 138, 139, 141, 144, 148, 152, 153], "algorithm": [0, 1, 3, 4, 5, 7, 11, 15, 16, 17, 20, 21, 22, 24, 25, 26, 27, 29, 30, 31, 32, 34, 35, 36, 40, 42, 44, 46, 48, 52, 53, 55, 56, 58, 59, 60, 64, 66, 67, 68, 70, 71, 75, 77, 80, 88, 92, 93, 94, 95, 98, 99, 100, 102, 103, 104, 105, 108, 109, 110, 112, 114, 115, 116, 118, 121, 122, 123, 124, 125, 126, 127, 129, 131, 134, 138, 144, 145, 148, 150, 152, 153, 160], "differ": [0, 1, 4, 6, 8, 9, 10, 16, 17, 19, 27, 28, 30, 31, 33, 34, 39, 40, 41, 43, 44, 45, 46, 47, 52, 53, 54, 55, 57, 58, 69, 70, 76, 77, 80, 83, 85, 88, 90, 94, 95, 96, 100, 106, 112, 115, 116, 121, 124, 125, 126, 128, 133, 137, 138, 139, 140, 141, 144, 148, 152], "order": [0, 1, 3, 7, 10, 19, 21, 22, 25, 27, 31, 32, 36, 39, 40, 43, 44, 45, 46, 47, 51, 52, 53, 57, 60, 64, 66, 67, 68, 69, 71, 72, 73, 74, 75, 76, 77, 78, 80, 81, 82, 84, 85, 86, 87, 90, 91, 95, 103, 105, 106, 109, 110, 112, 113, 114, 119, 123, 124, 125, 126, 127, 128, 129, 131, 135, 136, 138, 140, 144, 145, 147, 148, 152, 153, 154, 168], "magnitud": [0, 1, 3], "i": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 33, 34, 35, 36, 37, 39, 40, 42, 43, 44, 45, 46, 47, 49, 50, 51, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 66, 67, 68, 69, 70, 72, 73, 74, 75, 79, 81, 82, 83, 84, 86, 87, 88, 89, 90, 92, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 118, 119, 121, 122, 123, 124, 125, 126, 127, 128, 129, 131, 132, 133, 134, 135, 136, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 152, 153, 161, 162, 163, 166, 168], "classic": [0, 34, 66, 94, 145], "string": [0, 6, 11, 16, 24, 40, 43, 44, 46, 47, 51, 53, 56, 57, 58, 60, 64, 66, 68, 74, 77, 80, 89, 95, 96, 98, 104, 107, 108, 110, 131, 144, 148, 152, 155, 156, 157, 158, 160, 162, 168], "One": [0, 4, 10, 13, 17, 19, 24, 30, 31, 34, 39, 43, 46, 47, 54, 64, 69, 78, 84, 94, 104, 110, 112, 114, 121, 124, 141, 145, 148, 153], "anoth": [0, 1, 3, 4, 9, 10, 16, 17, 21, 22, 23, 27, 30, 31, 34, 35, 37, 39, 40, 41, 43, 44, 45, 46, 47, 52, 54, 58, 64, 67, 69, 75, 78, 83, 84, 88, 90, 100, 104, 105, 106, 110, 114, 115, 116, 123, 129, 131, 134, 137, 139, 140, 141, 142, 146, 148, 153], "second": [0, 1, 4, 9, 10, 16, 19, 24, 25, 26, 28, 31, 34, 39, 40, 42, 43, 45, 46, 64, 70, 84, 99, 100, 102, 103, 110, 112, 114, 121, 123, 125, 126, 127, 129, 131, 134, 139, 141, 142, 148, 153, 159, 160, 161, 163, 164, 165, 166], "simpli": [0, 1, 10, 21, 23, 28, 40, 43, 46, 47, 52, 54, 57, 58, 64, 68, 69, 70, 83, 84, 94, 98, 100, 103, 110, 114, 115, 116, 125, 126, 132, 134, 136, 141, 142, 144, 147, 148, 152, 160], "rearrang": [0, 132, 136], "first": [0, 1, 9, 10, 14, 16, 17, 19, 20, 22, 23, 25, 26, 28, 29, 30, 31, 32, 35, 36, 38, 39, 40, 42, 43, 45, 46, 47, 53, 58, 60, 64, 66, 67, 68, 69, 70, 71, 73, 77, 78, 80, 82, 83, 84, 86, 88, 89, 92, 94, 95, 99, 100, 102, 103, 105, 106, 110, 112, 114, 115, 119, 121, 123, 124, 125, 126, 127, 128, 129, 131, 134, 139, 141, 142, 144, 145, 147, 148, 152, 153, 159, 160, 161, 163, 164, 165, 166, 168], "For": [0, 1, 4, 9, 17, 19, 24, 25, 26, 28, 31, 35, 37, 39, 40, 45, 46, 47, 53, 57, 58, 67, 70, 74, 75, 78, 83, 84, 88, 94, 95, 96, 103, 104, 106, 110, 115, 116, 118, 126, 128, 129, 133, 134, 139, 142, 153, 160, 167], "heart": 0, "earth": 0, "ar": [0, 1, 3, 4, 6, 7, 8, 9, 10, 12, 13, 14, 16, 17, 18, 19, 21, 22, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36, 37, 39, 40, 43, 44, 45, 46, 47, 49, 50, 51, 52, 53, 54, 55, 57, 58, 60, 61, 62, 63, 64, 65, 67, 68, 70, 71, 72, 73, 74, 76, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, 91, 92, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 108, 109, 110, 112, 114, 115, 116, 119, 121, 122, 123, 124, 125, 126, 128, 129, 131, 132, 134, 135, 136, 137, 139, 140, 141, 142, 144, 145, 147, 148, 152, 153, 162, 167, 168], "The": [0, 1, 4, 9, 10, 12, 13, 14, 15, 16, 17, 18, 19, 21, 22, 23, 24, 25, 26, 28, 30, 31, 36, 37, 38, 39, 40, 42, 44, 45, 46, 47, 49, 50, 51, 52, 53, 55, 57, 58, 59, 63, 64, 66, 67, 68, 69, 70, 71, 75, 77, 78, 79, 80, 81, 83, 86, 91, 94, 95, 96, 97, 98, 100, 102, 103, 104, 105, 106, 107, 109, 110, 112, 117, 121, 129, 130, 131, 135, 137, 139, 141, 142, 144, 145, 147, 148, 150, 152, 153, 154, 168], "python": [0, 1, 23, 28, 31, 33, 40, 45, 46, 57, 68, 76, 77, 78, 89, 98, 100, 103, 105, 106, 114, 115, 116, 123, 125, 134, 141, 142, 148, 152, 168], "typhon": 0, "well": [0, 1, 21, 33, 39, 40, 43, 46, 47, 51, 52, 57, 62, 63, 77, 80, 83, 84, 86, 88, 90, 99, 106, 110, 114, 128, 131, 141, 142, 144, 147], "sake": 0, "simplic": [0, 100], "we": [0, 1, 4, 6, 8, 9, 10, 12, 13, 14, 15, 16, 17, 19, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36, 37, 39, 40, 42, 43, 45, 46, 47, 49, 50, 52, 53, 54, 55, 57, 58, 61, 62, 63, 64, 66, 68, 69, 70, 72, 73, 75, 77, 78, 80, 83, 84, 86, 88, 90, 92, 94, 95, 98, 99, 100, 102, 103, 105, 106, 108, 110, 114, 115, 116, 123, 124, 125, 126, 127, 128, 129, 131, 132, 133, 134, 135, 136, 137, 138, 139, 141, 142, 144, 145, 147, 148, 149, 150, 151, 152, 153, 160, 168], "assum": [0, 25, 28, 49, 52, 58, 61, 63, 64, 68, 69, 72, 73, 76, 78, 83, 84, 88, 93, 95, 105, 110, 114, 115, 124, 125, 152, 162], "two": [0, 1, 4, 9, 10, 13, 15, 16, 17, 21, 22, 23, 24, 25, 26, 28, 29, 31, 33, 34, 37, 39, 40, 42, 43, 44, 45, 46, 47, 49, 54, 55, 57, 58, 60, 64, 67, 70, 75, 76, 83, 84, 86, 94, 95, 100, 102, 103, 104, 105, 109, 110, 112, 116, 119, 121, 123, 125, 126, 129, 131, 132, 134, 137, 138, 139, 140, 141, 142, 144, 145, 147, 148, 151, 152, 153], "question": [0, 10, 11, 17, 19, 38, 39, 43, 45, 46, 49, 56, 67, 70, 71, 79, 83, 84, 91, 107, 116, 117, 125, 130, 131, 139, 147, 154, 168], "equal": [0, 22, 28, 30, 39, 40, 43, 46, 64, 70, 84, 94, 109, 110, 115, 125, 126, 132, 134, 140, 153], "length": [0, 17, 24, 25, 34, 37, 39, 40, 66, 70, 78, 86, 95, 99, 102, 106, 112, 121, 125, 126, 129, 148, 149, 162], "thei": [0, 1, 6, 8, 9, 10, 13, 18, 19, 22, 24, 27, 28, 36, 39, 40, 41, 45, 46, 47, 52, 54, 55, 58, 60, 64, 66, 67, 68, 69, 70, 75, 77, 78, 80, 83, 84, 88, 89, 94, 95, 99, 100, 110, 115, 116, 123, 125, 128, 129, 144], "made": [0, 25, 47, 94, 99, 105, 123, 139], "up": [0, 1, 4, 10, 25, 26, 36, 39, 40, 45, 46, 51, 52, 67, 69, 70, 76, 83, 84, 86, 90, 92, 94, 95, 96, 99, 100, 103, 106, 110, 112, 114, 121, 123, 124, 125, 126, 131, 134, 136, 144, 146, 152, 160], "symbol": [0, 10, 39, 40, 43, 60, 64, 68, 79, 84, 168], "from": [0, 1, 4, 7, 8, 9, 10, 13, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 35, 36, 37, 39, 40, 41, 42, 44, 45, 46, 47, 49, 50, 52, 54, 55, 57, 58, 61, 64, 65, 66, 67, 68, 69, 70, 72, 73, 74, 75, 76, 77, 78, 80, 83, 84, 86, 88, 90, 94, 95, 96, 98, 100, 102, 103, 104, 105, 106, 110, 112, 114, 115, 118, 119, 121, 125, 129, 131, 134, 135, 136, 137, 138, 139, 140, 141, 144, 145, 146, 147, 148, 149, 152, 153, 160, 162, 163, 167], "set": [0, 1, 3, 4, 9, 17, 19, 21, 22, 24, 28, 37, 40, 43, 44, 45, 46, 47, 50, 51, 53, 56, 57, 58, 61, 70, 82, 83, 84, 89, 90, 94, 102, 105, 110, 112, 118, 121, 125, 127, 128, 131, 134, 138, 141, 142, 144, 146, 152, 153, 159, 164, 165, 168], "26": [0, 17, 21, 36, 40, 58, 83, 84, 88, 94, 110, 124, 125, 144], "lowercas": 0, "alphabet": [0, 21, 25, 40, 58, 129], "charact": [0, 8, 39, 40, 44, 51, 56, 58, 64, 66, 67, 77, 80, 95, 98, 103, 108, 110, 118, 144, 146, 168], "our": [0, 1, 4, 6, 9, 12, 16, 17, 19, 21, 23, 24, 25, 27, 28, 31, 35, 36, 37, 40, 45, 46, 47, 50, 53, 54, 55, 58, 61, 62, 63, 68, 69, 70, 75, 77, 83, 84, 94, 95, 98, 99, 100, 102, 103, 106, 110, 114, 115, 116, 125, 126, 127, 128, 131, 132, 133, 134, 135, 136, 139, 142, 144, 146, 148, 152, 168], "goal": [0, 1, 6, 9, 10, 15, 21, 22, 25, 40, 50, 52, 94, 97, 100, 110, 126, 136], "write": [0, 1, 7, 10, 15, 29, 31, 40, 42, 45, 46, 47, 48, 49, 50, 52, 64, 67, 68, 70, 71, 85, 94, 99, 101, 103, 104, 116, 131, 134, 141, 142, 144, 146, 148, 150, 152, 160, 167], "boolean": [0, 39, 44, 47, 51, 56, 57, 68, 70, 72, 73, 74, 83, 84, 88, 89, 115, 146, 168], "function": [0, 3, 4, 6, 9, 10, 15, 16, 17, 20, 21, 23, 24, 25, 26, 29, 39, 44, 45, 46, 47, 48, 49, 51, 52, 54, 55, 56, 57, 58, 64, 66, 67, 68, 69, 70, 84, 94, 95, 96, 98, 99, 100, 101, 102, 103, 104, 105, 106, 108, 109, 112, 114, 115, 116, 117, 123, 125, 126, 127, 128, 131, 134, 138, 141, 142, 144, 145, 146, 147, 148, 152, 165, 168], "take": [0, 1, 4, 8, 9, 10, 14, 16, 22, 24, 25, 27, 36, 37, 39, 40, 42, 43, 45, 46, 47, 52, 53, 54, 58, 59, 60, 64, 66, 67, 78, 83, 84, 86, 88, 90, 94, 95, 98, 99, 102, 103, 105, 106, 110, 114, 119, 123, 125, 129, 131, 132, 134, 139, 144, 146, 148, 152], "return": [0, 1, 4, 10, 16, 21, 23, 24, 25, 26, 33, 36, 39, 40, 43, 44, 45, 46, 47, 49, 51, 52, 54, 58, 64, 68, 69, 70, 72, 73, 74, 83, 84, 86, 88, 89, 95, 98, 99, 100, 102, 103, 105, 110, 115, 116, 131, 134, 135, 141, 142, 144, 148, 149, 152, 159, 160, 161, 162, 163, 164, 165, 166], "whether": [0, 4, 9, 10, 43, 45, 54, 58, 64, 66, 68, 70, 72, 73, 74, 83, 84, 88, 89, 95, 99, 110, 114, 115, 116, 131], "see": [0, 1, 4, 6, 8, 9, 10, 13, 15, 16, 17, 19, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 33, 36, 37, 39, 40, 43, 45, 46, 47, 52, 54, 57, 58, 61, 64, 66, 68, 69, 70, 72, 73, 74, 83, 84, 88, 90, 94, 95, 96, 98, 99, 100, 102, 104, 105, 106, 110, 114, 123, 125, 126, 127, 129, 131, 132, 134, 139, 141, 142, 143, 144, 145, 148, 151, 152], "each": [0, 1, 4, 6, 9, 10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 28, 29, 30, 31, 35, 36, 37, 39, 40, 43, 44, 45, 46, 47, 48, 57, 59, 60, 64, 66, 67, 68, 70, 78, 82, 83, 84, 86, 87, 88, 89, 90, 94, 95, 98, 99, 100, 102, 104, 105, 106, 109, 110, 112, 114, 115, 124, 125, 126, 127, 128, 131, 133, 134, 135, 139, 140, 144, 146, 147, 148, 151, 152, 153, 160], "actual": [0, 1, 10, 21, 39, 40, 43, 45, 46, 47, 55, 58, 64, 70, 78, 83, 84, 90, 115, 126, 128], "occur": [0, 35, 42, 47, 57, 60, 62, 63, 64, 70, 75, 77, 78, 80, 84, 95, 96, 110, 115, 126], "If": [0, 1, 4, 10, 16, 17, 21, 24, 25, 27, 31, 37, 40, 43, 44, 46, 47, 49, 50, 52, 57, 64, 66, 68, 70, 77, 78, 80, 83, 84, 90, 94, 95, 100, 102, 103, 104, 106, 110, 112, 114, 115, 123, 125, 126, 127, 128, 131, 132, 133, 134, 136, 139, 141, 144, 146, 147, 148, 149, 152, 153], "possibl": [0, 3, 6, 9, 16, 21, 23, 25, 26, 34, 35, 39, 43, 44, 46, 54, 57, 64, 67, 68, 70, 77, 80, 83, 84, 86, 89, 94, 106, 110, 114, 115, 125, 126, 129, 132, 134, 147, 159, 164, 165], "checkoff": 0, "must": [0, 1, 9, 13, 15, 16, 17, 19, 23, 24, 25, 27, 28, 29, 30, 31, 35, 36, 37, 39, 40, 42, 43, 44, 45, 46, 47, 51, 52, 53, 57, 64, 66, 67, 68, 77, 80, 83, 84, 94, 95, 96, 99, 100, 104, 106, 110, 112, 114, 115, 116, 123, 127, 131, 134, 138, 141, 142, 144, 148, 152, 153], "accomplish": [0, 35, 40, 46, 69, 84, 90, 152], "replac": [0, 17, 40, 45, 58, 84, 110, 131, 132, 136, 140, 144, 146, 148, 149, 152], "special": [0, 21, 27, 43, 44, 46, 66, 84, 87, 102, 112, 133, 148, 157, 158], "c": [0, 1, 3, 5, 10, 11, 13, 16, 17, 21, 22, 23, 24, 25, 26, 28, 30, 31, 42, 44, 48, 51, 52, 56, 57, 59, 64, 65, 68, 79, 84, 85, 86, 95, 98, 100, 102, 103, 105, 106, 110, 114, 115, 116, 131, 134, 139, 141, 142, 144, 148, 149, 152, 153, 159, 160, 164, 165], "0": [0, 1, 2, 4, 9, 10, 16, 17, 19, 22, 23, 24, 25, 26, 28, 30, 39, 40, 43, 45, 46, 47, 58, 61, 67, 70, 74, 84, 94, 95, 100, 102, 105, 110, 115, 116, 124, 126, 131, 132, 133, 134, 141, 144, 148, 152, 159, 160, 161, 162, 163, 164, 165, 166, 168], "step": [0, 1, 3, 10, 19, 20, 21, 24, 25, 28, 31, 34, 35, 36, 40, 45, 52, 53, 60, 64, 66, 79, 81, 83, 84, 94, 95, 100, 103, 106, 110, 115, 123, 124, 125, 126, 127, 128, 131, 134, 144, 148, 168], "process": [0, 4, 17, 24, 26, 36, 39, 42, 43, 44, 45, 46, 47, 48, 51, 52, 53, 55, 57, 58, 59, 60, 64, 66, 67, 68, 69, 70, 77, 80, 82, 83, 84, 94, 96, 103, 106, 109, 110, 114, 115, 116, 119, 122, 123, 124, 125, 126, 127, 128, 129, 134, 136, 144, 148], "convert": [0, 16, 43, 44, 59, 64, 65, 79, 81, 94, 107, 144, 152, 168], "local": [0, 30, 40, 43, 49, 98], "can": [0, 1, 3, 4, 7, 8, 9, 10, 15, 16, 17, 19, 21, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 39, 40, 42, 43, 44, 45, 46, 47, 51, 52, 53, 54, 55, 57, 58, 60, 61, 64, 66, 67, 68, 69, 70, 71, 72, 74, 75, 76, 77, 78, 80, 83, 84, 86, 90, 92, 93, 94, 95, 96, 98, 99, 100, 101, 102, 103, 104, 105, 106, 109, 110, 112, 113, 114, 115, 116, 121, 123, 124, 125, 126, 128, 129, 131, 132, 133, 134, 136, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 151, 152, 153, 160, 167], "against": [0, 23, 64, 69, 83, 114, 115, 124, 126], "found": [0, 4, 17, 19, 23, 25, 45, 49, 83, 84, 89, 95, 105, 109, 110, 115, 116, 131, 134, 140, 147, 148, 162], "activecod": [0, 10, 17, 24, 46, 57, 58, 62, 63, 64, 66, 68, 69, 70, 83, 84, 94, 95, 98, 99, 100, 102, 103, 105, 106, 110, 115, 123, 124, 125, 126, 127, 128, 134, 135, 141, 142, 144], "thi": [0, 1, 4, 6, 8, 9, 10, 13, 15, 16, 17, 19, 21, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 39, 40, 42, 43, 44, 45, 46, 47, 49, 50, 52, 53, 55, 57, 58, 59, 61, 64, 66, 67, 68, 69, 70, 76, 77, 78, 80, 81, 83, 84, 86, 88, 90, 92, 94, 95, 96, 97, 98, 99, 100, 102, 103, 104, 105, 106, 110, 112, 114, 115, 116, 118, 121, 123, 124, 125, 126, 127, 128, 129, 131, 132, 133, 134, 135, 136, 137, 139, 141, 142, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 159, 160, 164, 165, 167, 168], "To": [0, 5, 9, 10, 16, 17, 19, 24, 27, 28, 31, 35, 36, 39, 40, 43, 44, 45, 46, 47, 48, 51, 53, 55, 58, 64, 65, 68, 69, 70, 78, 83, 84, 85, 86, 94, 95, 96, 97, 99, 102, 106, 110, 111, 114, 115, 120, 123, 126, 131, 133, 134, 141, 142, 143, 144, 148, 151], "analyz": [0, 1, 4, 10, 15, 48, 83, 110, 114, 115, 123, 125, 126, 129], "need": [0, 1, 9, 11, 13, 17, 20, 21, 25, 28, 35, 39, 40, 42, 43, 44, 45, 46, 47, 49, 50, 51, 52, 53, 54, 58, 64, 68, 70, 72, 73, 74, 78, 83, 84, 88, 94, 95, 99, 100, 102, 103, 106, 110, 112, 114, 115, 123, 124, 125, 126, 128, 131, 133, 134, 136, 138, 141, 142, 144, 147, 148, 152, 160, 168], "note": [0, 1, 2, 4, 9, 10, 14, 19, 21, 26, 28, 30, 39, 40, 43, 45, 46, 47, 52, 64, 68, 69, 70, 72, 76, 78, 83, 84, 94, 95, 99, 110, 114, 115, 123, 124, 125, 126, 128, 131, 134, 141, 152], "n": [0, 1, 2, 3, 4, 7, 8, 9, 10, 16, 17, 23, 24, 25, 26, 30, 37, 39, 40, 45, 46, 47, 61, 67, 68, 83, 84, 86, 95, 99, 103, 104, 113, 114, 115, 118, 122, 123, 124, 125, 126, 127, 128, 131, 132, 133, 134, 145, 146, 147, 151, 153, 168], "s1": 0, "caus": [0, 49, 64, 83, 96, 110, 123, 124, 148], "iter": [0, 1, 4, 8, 9, 10, 16, 19, 21, 23, 24, 39, 40, 43, 45, 46, 53, 58, 64, 83, 84, 88, 92, 94, 95, 97, 102, 104, 110, 112, 124, 148], "through": [0, 4, 9, 10, 15, 19, 21, 22, 23, 24, 28, 30, 39, 42, 45, 49, 53, 58, 78, 83, 88, 94, 95, 100, 102, 103, 110, 114, 115, 119, 123, 124, 125, 126, 127, 131, 134, 144, 152, 159], "arrai": [0, 1, 3, 4, 5, 6, 7, 8, 11, 24, 37, 43, 44, 45, 47, 51, 56, 57, 61, 63, 69, 85, 88, 94, 102, 114, 115, 116, 123, 138, 142, 146, 151, 168], "s2": 0, "posit": [0, 4, 8, 9, 16, 19, 26, 28, 45, 46, 49, 58, 60, 61, 64, 75, 76, 78, 83, 84, 86, 87, 88, 89, 94, 95, 108, 109, 110, 115, 119, 123, 124, 126, 129, 131, 134, 139, 141, 148, 152], "visit": [0, 21, 25, 26, 34, 82, 84, 95, 109, 110, 115, 140, 148, 152, 160], "onc": [0, 10, 14, 15, 16, 17, 18, 19, 24, 25, 26, 27, 31, 34, 39, 43, 45, 47, 52, 57, 64, 67, 68, 70, 75, 83, 84, 94, 95, 105, 106, 110, 114, 123, 125, 126, 131, 133, 134, 141, 144, 148], "match": [0, 11, 17, 19, 38, 45, 46, 56, 57, 64, 66, 67, 68, 79, 84, 91, 94, 107, 117, 130, 148, 154, 168], "number": [0, 1, 3, 4, 7, 9, 10, 13, 16, 17, 19, 21, 22, 23, 25, 26, 28, 30, 34, 35, 37, 39, 40, 42, 43, 44, 45, 46, 47, 51, 54, 57, 64, 67, 69, 70, 71, 72, 73, 74, 77, 78, 79, 80, 83, 84, 86, 88, 89, 93, 94, 95, 99, 100, 103, 104, 105, 107, 108, 109, 110, 112, 114, 115, 121, 123, 124, 125, 126, 127, 128, 129, 131, 132, 134, 135, 140, 144, 146, 147, 149, 152, 153, 155, 156, 157, 158, 168], "becom": [0, 1, 42, 43, 47, 48, 53, 58, 64, 83, 84, 109, 110, 115, 123, 126, 127, 131, 132, 133, 142, 144, 148], "sum": [0, 1, 10, 28, 37, 40, 46, 98, 99, 107, 123, 124, 168], "integ": [0, 1, 2, 10, 23, 39, 40, 43, 44, 45, 46, 49, 51, 53, 58, 64, 67, 70, 72, 73, 74, 83, 84, 88, 89, 107, 110, 112, 114, 115, 118, 121, 123, 124, 134, 138, 144, 168], "state": [0, 10, 19, 21, 24, 30, 40, 43, 44, 46, 52, 67, 84, 94, 99, 103, 110, 136, 148, 161], "earlier": [0, 1, 10, 21, 22, 24, 46, 47, 54, 55, 64, 68, 70, 83, 84, 110, 115, 123, 126, 128, 145, 148, 152], "written": [0, 1, 3, 10, 40, 43, 46, 47, 50, 62, 63, 64, 68, 88, 94, 139, 141, 148, 152], "sum_": [0, 10], "frac": [0, 10, 40, 46, 70, 110, 114, 115, 123, 128, 132], "As": [0, 1, 4, 9, 10, 17, 19, 21, 24, 26, 27, 36, 42, 46, 47, 52, 53, 54, 55, 58, 61, 62, 63, 64, 68, 70, 72, 73, 77, 78, 80, 83, 84, 95, 99, 100, 106, 110, 124, 126, 127, 131, 133, 134, 136, 142, 144, 148, 152], "get": [0, 1, 4, 9, 10, 19, 22, 23, 25, 26, 27, 28, 29, 30, 39, 45, 46, 47, 52, 55, 56, 64, 70, 72, 77, 80, 84, 94, 95, 99, 101, 102, 103, 104, 105, 106, 109, 110, 112, 114, 115, 128, 129, 131, 132, 133, 134, 137, 139, 141, 142, 144, 147, 148, 149, 151, 152, 160, 168], "larg": [0, 1, 8, 9, 13, 17, 19, 31, 39, 42, 45, 70, 99, 105, 110, 114, 115, 125, 129, 152, 163], "term": [0, 1, 3, 16, 37, 39, 43, 46, 49, 53, 64, 94, 96, 102, 105, 131, 132], "domin": [0, 1, 4, 110], "ignor": [0, 1, 20, 40, 67, 105], "therefor": [0, 1, 19, 28, 39, 40, 53, 69, 70, 83, 95, 114, 127, 134, 136, 148, 152], "o": [0, 2, 3, 5, 6, 7, 11, 14, 15, 17, 18, 20, 26, 48, 59, 61, 67, 81, 83, 84, 86, 95, 110, 113, 114, 115, 118, 122, 123, 124, 125, 126, 127, 128, 131, 132, 133, 134, 145, 146, 147, 151, 162, 168], "make": [0, 1, 4, 9, 16, 19, 21, 24, 25, 26, 31, 35, 36, 39, 40, 43, 44, 45, 46, 47, 49, 53, 64, 66, 67, 68, 70, 74, 76, 77, 80, 84, 88, 93, 94, 95, 96, 98, 99, 100, 102, 103, 104, 105, 106, 109, 110, 112, 115, 119, 121, 123, 124, 125, 127, 128, 131, 132, 133, 134, 136, 140, 141, 142, 144, 146, 148, 152, 153, 159, 160, 164, 165, 168], "us": [0, 1, 3, 4, 5, 6, 8, 9, 10, 12, 13, 16, 17, 19, 20, 21, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 51, 52, 53, 54, 55, 57, 58, 59, 64, 65, 66, 67, 68, 69, 70, 71, 75, 76, 77, 78, 79, 80, 81, 83, 84, 86, 88, 89, 90, 92, 93, 94, 95, 96, 98, 99, 100, 102, 103, 104, 105, 106, 108, 109, 111, 112, 114, 116, 118, 119, 121, 123, 125, 126, 128, 129, 131, 132, 133, 134, 135, 136, 137, 138, 139, 141, 142, 143, 144, 145, 146, 148, 149, 150, 151, 152, 153, 159, 162, 164, 165, 167], "fact": [0, 1, 4, 10, 13, 27, 31, 39, 43, 46, 52, 53, 64, 83, 84, 92, 94, 99, 102, 110, 114, 131, 132, 134, 152, 153], "even": [0, 4, 9, 10, 13, 21, 27, 34, 40, 45, 54, 58, 66, 76, 94, 96, 98, 100, 106, 110, 114, 116, 125, 126, 131, 134, 148, 152], "though": [0, 40, 54, 76, 94, 98, 100, 110, 114, 116, 141], "onli": [0, 4, 9, 10, 14, 15, 16, 17, 18, 19, 21, 24, 26, 28, 39, 40, 43, 44, 45, 46, 47, 51, 52, 55, 57, 58, 64, 66, 67, 69, 70, 74, 75, 77, 78, 80, 81, 82, 83, 84, 90, 94, 95, 100, 104, 110, 114, 115, 116, 124, 127, 128, 133, 134, 136, 139, 140, 144, 145, 146, 148, 152, 153], "consist": [0, 3, 4, 9, 10, 39, 44, 45, 46, 47, 55, 76, 82, 83, 84, 90, 110, 124, 144, 153], "exactli": [0, 4, 16, 17, 25, 29, 34, 36, 40, 43, 64, 78, 83, 99, 104, 110, 115, 131, 152, 153], "same": [0, 1, 4, 8, 9, 10, 17, 22, 25, 28, 30, 31, 37, 39, 40, 43, 44, 45, 46, 47, 52, 58, 60, 63, 64, 66, 67, 69, 78, 83, 84, 88, 90, 94, 95, 98, 103, 104, 105, 106, 109, 110, 112, 115, 121, 126, 127, 131, 134, 140, 146, 147, 148, 152, 153, 162, 163], "so": [0, 1, 8, 10, 14, 17, 18, 19, 21, 23, 24, 25, 26, 27, 28, 29, 30, 31, 39, 40, 43, 44, 45, 46, 47, 49, 52, 53, 54, 58, 64, 67, 70, 73, 77, 80, 83, 84, 86, 90, 94, 95, 99, 100, 104, 105, 106, 110, 112, 114, 115, 125, 126, 127, 128, 131, 134, 139, 141, 144, 146, 147, 148, 152, 159, 164, 165], "begin": [0, 4, 8, 9, 10, 14, 16, 19, 21, 23, 24, 25, 28, 31, 33, 35, 37, 39, 45, 46, 54, 64, 67, 69, 70, 75, 78, 83, 84, 88, 94, 99, 100, 102, 105, 106, 110, 115, 116, 123, 124, 125, 126, 127, 128, 131, 134, 136, 139, 141, 144, 159, 160], "z": [0, 1, 19], "end": [0, 1, 4, 8, 9, 10, 16, 21, 22, 23, 24, 25, 34, 35, 37, 39, 40, 43, 45, 46, 47, 53, 54, 58, 59, 60, 62, 63, 64, 67, 68, 69, 70, 72, 73, 74, 75, 76, 77, 78, 80, 81, 83, 84, 86, 94, 95, 99, 100, 106, 110, 112, 114, 115, 116, 123, 124, 125, 126, 127, 128, 134, 148, 152, 160], "origin": [0, 1, 10, 31, 32, 40, 45, 64, 66, 84, 94, 95, 100, 103, 106, 110, 114, 125, 126, 128, 131, 142, 144, 148, 152, 160, 168], "At": [0, 1, 10, 16, 19, 25, 26, 35, 46, 47, 53, 64, 66, 68, 69, 84, 100, 108, 115, 123, 124, 126, 128, 131, 139, 144, 147, 148, 152], "glanc": [0, 10, 128, 147, 148], "you": [0, 1, 4, 6, 7, 8, 9, 10, 13, 15, 17, 19, 21, 23, 24, 25, 26, 27, 28, 29, 30, 31, 35, 36, 37, 39, 40, 42, 43, 45, 46, 47, 49, 50, 51, 52, 57, 58, 61, 62, 64, 66, 67, 68, 69, 70, 72, 75, 76, 77, 78, 80, 83, 84, 86, 88, 90, 93, 94, 95, 98, 99, 100, 101, 102, 103, 104, 105, 106, 108, 110, 112, 114, 115, 118, 123, 124, 125, 126, 127, 128, 131, 132, 134, 136, 139, 141, 142, 144, 145, 147, 148, 149, 152, 167], "mai": [0, 4, 9, 10, 19, 21, 22, 24, 26, 27, 28, 37, 39, 40, 43, 46, 52, 54, 64, 68, 70, 81, 83, 84, 90, 94, 95, 97, 99, 100, 101, 105, 106, 110, 114, 115, 116, 122, 123, 125, 126, 127, 128, 129, 132, 134, 145, 147, 148, 152, 153], "tempt": 0, "think": [0, 10, 26, 27, 40, 42, 46, 53, 57, 58, 64, 78, 83, 90, 95, 98, 100, 102, 105, 106, 108, 110, 128, 129, 131, 132, 134, 142, 145, 148], "sinc": [0, 1, 4, 10, 13, 14, 16, 17, 18, 19, 21, 25, 26, 28, 35, 37, 39, 42, 46, 47, 50, 55, 58, 64, 66, 68, 69, 70, 78, 83, 84, 88, 94, 95, 99, 103, 105, 110, 115, 123, 124, 126, 127, 128, 131, 134, 136, 142, 144, 147, 148, 152, 153], "three": [0, 1, 19, 24, 26, 28, 29, 31, 45, 46, 47, 64, 70, 93, 94, 95, 97, 100, 103, 104, 105, 107, 110, 112, 115, 119, 121, 123, 124, 126, 127, 128, 148, 152, 168], "consecut": 0, "simpl": [0, 1, 4, 5, 10, 13, 19, 25, 31, 36, 37, 40, 45, 47, 49, 53, 57, 58, 67, 71, 75, 77, 78, 79, 80, 94, 95, 97, 100, 102, 103, 105, 106, 125, 131, 134, 139, 141, 142, 144, 148, 152, 168], "char": [0, 16, 24, 39, 43, 44, 51, 64, 95, 100, 110, 142, 160, 161, 162, 163, 166], "last": [0, 4, 9, 21, 26, 27, 28, 39, 45, 46, 47, 49, 58, 60, 64, 66, 67, 68, 69, 71, 73, 77, 78, 80, 81, 84, 86, 88, 89, 94, 95, 110, 115, 119, 124, 125, 126, 127, 128, 134, 139, 148], "after": [0, 9, 10, 14, 21, 24, 26, 40, 43, 45, 46, 58, 60, 64, 67, 69, 70, 75, 83, 84, 88, 98, 99, 103, 106, 109, 110, 114, 115, 123, 124, 125, 126, 127, 128, 131, 134, 136, 148, 152], "howev": [0, 1, 4, 9, 10, 13, 16, 17, 19, 24, 25, 27, 28, 29, 30, 34, 39, 40, 43, 45, 46, 47, 53, 63, 64, 66, 70, 83, 84, 88, 94, 104, 106, 110, 114, 115, 123, 124, 126, 127, 128, 134, 136, 139, 145, 148, 152], "call": [0, 1, 9, 10, 14, 16, 18, 19, 21, 22, 23, 24, 25, 26, 28, 29, 31, 34, 35, 36, 37, 39, 40, 43, 44, 45, 46, 47, 50, 51, 52, 53, 55, 57, 58, 64, 68, 69, 73, 74, 75, 77, 78, 80, 82, 83, 84, 86, 90, 93, 94, 95, 96, 98, 99, 100, 101, 102, 103, 104, 105, 106, 110, 112, 114, 119, 121, 125, 126, 127, 128, 131, 133, 138, 139, 141, 144, 145, 146, 148, 152, 153], "without": [0, 1, 10, 21, 22, 43, 44, 45, 46, 52, 53, 55, 58, 64, 73, 83, 87, 88, 96, 102, 112, 119, 123, 131, 139, 148, 152], "own": [0, 24, 40, 45, 46, 47, 51, 54, 57, 148, 153, 160], "cost": [0, 6, 16, 19, 20, 22, 23, 24, 28, 30, 37, 39, 104, 114, 125, 131, 134], "later": [0, 4, 6, 21, 22, 24, 39, 46, 50, 57, 64, 68, 70, 77, 80, 84, 110, 134], "chapter": [0, 4, 6, 9, 10, 13, 16, 19, 27, 29, 31, 32, 35, 41, 42, 43, 45, 46, 49, 50, 62, 63, 64, 83, 84, 90, 94, 96, 97, 99, 103, 106, 108, 112, 116, 118, 121, 134, 142, 145, 148, 150, 151, 152], "typic": [0, 4, 8, 9, 10, 39, 46, 47, 51, 53, 58, 69, 70, 77, 80, 84, 88, 95, 99, 110, 115, 116, 123, 127], "either": [0, 29, 39, 40, 43, 44, 46, 47, 49, 60, 64, 66, 72, 75, 76, 83, 88, 94, 95, 104, 110, 114, 115, 116, 119, 126, 142, 144, 148, 153], "log": [0, 1, 7, 8, 9, 14, 30, 113, 114, 122, 125, 126, 132, 134, 145, 146, 153], "oper": [0, 1, 3, 5, 6, 7, 11, 16, 23, 24, 28, 31, 44, 45, 46, 47, 49, 51, 52, 53, 55, 57, 58, 59, 60, 61, 62, 63, 64, 67, 68, 69, 71, 76, 77, 80, 83, 86, 88, 89, 90, 95, 103, 106, 112, 114, 116, 123, 124, 125, 128, 129, 131, 132, 133, 139, 141, 144, 146, 147, 148, 151, 152, 154, 162, 168], "In": [0, 1, 4, 6, 9, 10, 12, 13, 15, 16, 17, 18, 19, 21, 23, 24, 25, 26, 27, 28, 32, 35, 39, 40, 43, 44, 45, 46, 47, 49, 50, 51, 53, 54, 58, 62, 64, 66, 67, 68, 69, 70, 76, 77, 80, 83, 84, 86, 90, 92, 93, 94, 95, 96, 98, 99, 100, 102, 103, 105, 106, 110, 112, 114, 115, 116, 123, 124, 125, 126, 127, 128, 129, 131, 133, 134, 136, 137, 139, 141, 142, 144, 145, 146, 147, 148, 150, 152, 153], "have": [0, 1, 4, 6, 8, 9, 10, 16, 17, 19, 21, 22, 23, 24, 25, 26, 27, 28, 29, 31, 32, 34, 37, 39, 40, 41, 42, 43, 44, 45, 46, 47, 49, 52, 53, 54, 55, 57, 58, 60, 61, 62, 63, 64, 67, 68, 69, 70, 75, 77, 78, 80, 83, 84, 86, 88, 89, 90, 93, 94, 95, 97, 99, 100, 102, 103, 104, 105, 106, 109, 110, 112, 114, 115, 121, 123, 124, 125, 126, 127, 128, 129, 131, 133, 134, 136, 137, 139, 140, 141, 142, 144, 146, 147, 148, 150, 151, 152, 153, 160, 167], "techniqu": [0, 1, 3, 9, 10, 40, 46, 48, 54, 58, 64, 67, 83, 84, 94, 104, 109, 110, 111, 112, 115, 121, 126, 129, 138, 141], "solv": [0, 1, 3, 10, 16, 17, 19, 20, 24, 25, 27, 28, 29, 30, 32, 34, 35, 37, 42, 43, 44, 46, 48, 49, 51, 52, 53, 54, 55, 58, 60, 66, 68, 75, 92, 94, 95, 96, 97, 99, 100, 101, 102, 103, 104, 106, 114, 115, 131, 132, 144], "tri": [0, 3, 40, 77, 80, 90, 95, 100, 109, 110], "exhaust": [0, 3, 25, 42, 110], "all": [0, 1, 3, 4, 8, 9, 12, 13, 14, 15, 16, 17, 19, 21, 22, 23, 24, 25, 26, 28, 29, 30, 31, 33, 36, 37, 39, 40, 42, 43, 44, 45, 46, 47, 49, 50, 51, 52, 53, 58, 60, 64, 67, 68, 69, 70, 71, 76, 77, 80, 83, 84, 88, 89, 90, 94, 95, 96, 99, 100, 102, 104, 105, 106, 110, 115, 126, 128, 131, 132, 133, 134, 139, 140, 142, 144, 145, 147, 148, 152, 153, 159, 160, 162, 164, 165], "gener": [0, 3, 4, 6, 10, 16, 18, 20, 25, 26, 27, 28, 29, 32, 38, 39, 40, 43, 47, 49, 58, 60, 69, 70, 71, 79, 98, 104, 105, 106, 108, 109, 110, 112, 114, 118, 121, 124, 128, 132, 138, 139, 141, 148, 152, 168], "difficulti": [0, 53, 110], "approach": [0, 9, 13, 17, 26, 28, 46, 70, 83, 84, 94, 104, 110, 141, 142, 148], "when": [0, 1, 3, 4, 9, 10, 13, 15, 17, 19, 21, 22, 23, 24, 25, 26, 27, 28, 30, 36, 39, 40, 43, 44, 45, 46, 47, 50, 51, 52, 57, 58, 63, 64, 68, 69, 70, 77, 78, 80, 81, 83, 84, 88, 90, 94, 95, 98, 99, 100, 102, 103, 105, 106, 108, 110, 111, 112, 114, 115, 124, 125, 126, 129, 131, 133, 134, 136, 138, 139, 142, 144, 145, 147, 148, 152, 160], "third": [0, 1, 31, 37, 40, 45, 46, 69, 100, 103, 110, 124, 127, 139, 141, 148, 159], "total": [0, 9, 18, 19, 30, 40, 45, 70, 94, 95, 100, 102, 104, 123, 125, 128, 129, 132, 134, 147, 160, 161, 163, 166], "candid": [0, 103], "which": [0, 1, 3, 4, 8, 9, 10, 13, 15, 21, 22, 23, 24, 25, 26, 27, 28, 30, 35, 36, 37, 39, 40, 42, 43, 44, 45, 46, 47, 49, 51, 60, 61, 62, 64, 66, 68, 73, 74, 75, 82, 84, 85, 86, 88, 90, 94, 95, 96, 98, 99, 103, 104, 105, 109, 110, 114, 116, 123, 124, 125, 126, 127, 128, 129, 131, 132, 134, 136, 139, 140, 141, 142, 144, 145, 147, 148, 152, 153], "although": [0, 1, 9, 21, 34, 39, 42, 43, 46, 52, 53, 64, 83, 94, 100, 110, 116, 124, 126, 128, 134, 141], "some": [0, 1, 4, 6, 8, 11, 15, 17, 21, 22, 24, 25, 27, 28, 31, 32, 34, 36, 37, 39, 43, 44, 45, 46, 47, 49, 50, 51, 52, 54, 55, 57, 58, 64, 68, 69, 70, 75, 83, 84, 88, 89, 90, 92, 94, 95, 98, 99, 103, 104, 106, 109, 110, 112, 114, 115, 116, 119, 121, 126, 129, 131, 135, 139, 141, 142, 144, 145, 146, 152, 167, 168], "duplic": [0, 39, 86, 94, 146, 148], "program": [0, 1, 5, 9, 10, 11, 26, 31, 34, 38, 39, 40, 42, 43, 44, 45, 47, 48, 50, 54, 55, 56, 57, 58, 62, 63, 64, 68, 69, 70, 77, 79, 80, 91, 92, 93, 95, 96, 97, 100, 101, 102, 105, 106, 107, 115, 117, 126, 130, 142, 154, 165, 167, 168], "cannot": [0, 26, 39, 42, 43, 44, 51, 52, 70, 88, 96, 102, 110, 123, 128], "know": [0, 9, 10, 17, 25, 27, 28, 36, 37, 40, 43, 46, 47, 52, 54, 61, 64, 68, 70, 83, 84, 94, 95, 100, 102, 103, 104, 106, 110, 114, 115, 123, 126, 131, 136, 144, 148, 153], "ahead": [0, 77, 80, 84], "time": [0, 1, 4, 5, 6, 8, 9, 10, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 26, 28, 30, 31, 34, 35, 36, 39, 40, 42, 43, 45, 46, 47, 49, 51, 52, 54, 58, 64, 65, 67, 68, 69, 70, 71, 77, 78, 80, 83, 84, 86, 88, 90, 94, 98, 99, 100, 102, 103, 105, 106, 109, 110, 113, 114, 123, 125, 126, 129, 131, 132, 133, 134, 135, 136, 138, 140, 146, 148, 152], "still": [0, 15, 16, 24, 28, 40, 58, 64, 70, 83, 84, 94, 99, 100, 106, 110, 115, 123, 124, 134, 139, 148, 152], "It": [0, 1, 4, 6, 9, 10, 19, 21, 22, 24, 26, 28, 30, 37, 39, 40, 45, 46, 47, 50, 51, 54, 57, 58, 64, 67, 69, 70, 72, 73, 74, 76, 77, 78, 80, 83, 84, 86, 88, 94, 95, 99, 103, 110, 114, 115, 116, 122, 123, 124, 125, 126, 128, 134, 153], "turn": [0, 1, 17, 24, 31, 35, 36, 40, 45, 47, 49, 55, 62, 63, 67, 68, 69, 83, 84, 102, 104, 106, 116, 125, 126, 128, 135, 148, 160], "out": [0, 1, 9, 13, 17, 21, 24, 28, 29, 30, 35, 40, 45, 52, 60, 66, 67, 68, 69, 70, 71, 72, 73, 74, 77, 78, 80, 81, 83, 84, 94, 95, 100, 103, 104, 105, 106, 114, 115, 116, 119, 123, 126, 128, 129, 131, 134, 136, 141, 142, 144, 145, 148, 152, 159], "grow": [0, 1, 3, 4, 9, 26, 28, 39, 42, 45, 63, 64, 146], "faster": [0, 4, 42, 43, 45, 54, 70, 127], "than": [0, 1, 4, 10, 12, 16, 17, 19, 21, 22, 25, 27, 28, 30, 31, 39, 40, 43, 44, 45, 46, 54, 58, 69, 70, 83, 88, 89, 94, 96, 100, 103, 106, 110, 114, 118, 119, 125, 126, 128, 129, 131, 133, 134, 136, 140, 141, 144, 146, 147, 148, 153], "were": [0, 10, 17, 43, 49, 64, 70, 78, 88, 94, 100, 102, 106, 110, 115, 129, 136, 137, 148], "20": [0, 17, 21, 40, 62, 70, 104, 106, 110, 124, 125, 126, 127, 128, 144, 159, 161, 163, 164, 165, 166], "long": [0, 1, 9, 15, 17, 25, 40, 43, 52, 53, 54, 57, 64, 68, 70, 83, 84, 100, 102], "would": [0, 1, 9, 10, 13, 15, 16, 17, 19, 21, 24, 28, 37, 39, 40, 43, 46, 49, 54, 58, 59, 64, 66, 69, 70, 74, 78, 81, 83, 84, 86, 90, 94, 95, 96, 98, 99, 100, 102, 103, 110, 115, 123, 124, 126, 134, 136, 139, 142, 147, 148, 152], "432": 0, "902": 0, "008": 0, "176": 0, "640": 0, "000": [0, 1, 4, 9, 10, 126], "one": [0, 1, 3, 4, 9, 10, 13, 15, 16, 17, 19, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 33, 34, 35, 36, 37, 39, 40, 41, 43, 44, 45, 46, 47, 51, 52, 54, 55, 58, 60, 64, 67, 69, 70, 73, 75, 77, 78, 80, 82, 83, 84, 85, 86, 88, 90, 94, 95, 99, 100, 102, 104, 105, 106, 109, 110, 112, 114, 115, 116, 119, 123, 124, 125, 126, 127, 128, 129, 131, 134, 136, 138, 139, 140, 141, 142, 144, 147, 148, 152, 153, 163], "everi": [0, 1, 10, 13, 14, 15, 17, 18, 19, 22, 26, 28, 29, 31, 34, 39, 40, 45, 46, 47, 68, 69, 70, 78, 83, 84, 95, 100, 104, 110, 115, 123, 127, 131, 134, 136, 139, 140, 144, 146, 153, 160], "u": [0, 1, 9, 10, 12, 14, 15, 19, 21, 25, 26, 27, 28, 30, 32, 36, 39, 40, 42, 46, 52, 53, 54, 55, 64, 70, 71, 83, 84, 92, 94, 95, 98, 100, 101, 103, 114, 115, 131, 132, 134, 136, 141, 142, 144, 145, 147, 148, 150, 152, 168], "77": [0, 83, 84, 88, 110, 124, 126, 127], "146": 0, "816": 0, "596": 0, "year": [0, 34, 42, 100], "go": [0, 4, 6, 13, 15, 19, 22, 24, 26, 28, 30, 35, 36, 37, 40, 43, 45, 46, 58, 64, 69, 70, 78, 84, 86, 94, 95, 99, 100, 103, 105, 106, 110, 131, 134, 139, 141, 144, 147, 148, 152], "entir": [0, 8, 9, 16, 21, 39, 43, 54, 57, 64, 84, 100, 106, 110, 114, 123, 131, 134, 139, 144, 148], "probabl": [0, 10, 46, 52, 58, 70, 99, 100, 110, 114, 115, 134, 139, 145, 147, 152], "final": [0, 1, 4, 14, 15, 19, 23, 24, 26, 29, 31, 36, 43, 64, 70, 84, 94, 95, 98, 99, 100, 102, 103, 104, 105, 106, 110, 123, 126, 127, 128, 129, 131, 139, 144, 148, 152, 159], "advantag": [0, 4, 10, 12, 13, 46, 48, 83, 84, 110, 114, 115, 123, 126, 129, 134], "ani": [0, 1, 4, 8, 9, 10, 17, 19, 21, 22, 24, 28, 30, 36, 39, 40, 43, 44, 45, 46, 47, 50, 52, 55, 57, 58, 62, 63, 64, 67, 68, 69, 70, 78, 83, 84, 88, 94, 95, 96, 100, 102, 104, 107, 110, 115, 131, 132, 134, 136, 139, 140, 141, 142, 147, 148, 152, 153, 167, 168], "": [0, 1, 3, 9, 10, 17, 20, 21, 24, 31, 32, 35, 36, 37, 38, 39, 40, 43, 44, 45, 46, 47, 52, 53, 55, 64, 69, 70, 74, 90, 94, 95, 99, 100, 102, 103, 104, 105, 106, 126, 129, 131, 132, 134, 139, 141, 142, 144, 147, 148, 149, 151, 152, 155, 156, 157, 158, 160, 162, 168], "b": [0, 1, 16, 21, 24, 25, 28, 31, 39, 44, 46, 47, 58, 59, 64, 131, 141, 142, 159, 160, 164, 165, 166], "decid": [0, 1, 19, 24, 36, 54, 68, 69, 70, 83, 94, 110, 112, 115, 118, 136], "counter": [0, 10, 26, 45, 69, 100, 127, 165], "particular": [0, 1, 10, 12, 16, 19, 21, 22, 25, 26, 32, 35, 39, 42, 44, 55, 67, 75, 86, 95, 109, 115, 116, 123, 126, 131, 144, 147], "increment": [0, 110, 112, 118, 119, 121, 122, 126, 127, 128], "ident": [0, 21, 39, 40, 43, 44, 51, 83, 100, 131, 152], "again": [0, 1, 4, 9, 10, 16, 19, 25, 26, 31, 34, 40, 43, 54, 57, 58, 61, 64, 69, 70, 78, 83, 84, 94, 95, 100, 103, 104, 105, 106, 110, 114, 115, 124, 125, 126, 134, 152], "ha": [0, 1, 4, 10, 17, 19, 21, 24, 25, 26, 27, 28, 29, 31, 34, 36, 39, 40, 42, 43, 44, 45, 46, 47, 50, 51, 57, 60, 62, 63, 64, 68, 69, 70, 72, 73, 74, 76, 77, 78, 80, 83, 84, 86, 88, 92, 95, 103, 104, 105, 106, 110, 114, 123, 125, 128, 131, 132, 134, 139, 140, 141, 142, 144, 145, 147, 148, 152, 153], "unlik": [0, 4, 9, 40, 43, 88, 148], "none": [0, 4, 24, 28, 47, 95, 110, 142, 144, 152], "them": [0, 17, 19, 22, 24, 28, 29, 36, 37, 39, 40, 41, 43, 45, 46, 47, 49, 54, 55, 57, 58, 64, 66, 70, 75, 78, 88, 90, 94, 95, 96, 98, 104, 105, 109, 110, 112, 115, 119, 125, 126, 129, 142, 147, 148, 152, 153, 160], "nest": [0, 1, 15, 23, 57, 60, 67, 68, 139], "both": [0, 6, 8, 9, 10, 17, 18, 19, 24, 28, 33, 34, 39, 40, 43, 44, 45, 46, 47, 49, 51, 52, 53, 54, 64, 66, 67, 68, 81, 84, 86, 88, 90, 94, 100, 103, 106, 110, 112, 115, 121, 125, 131, 132, 134, 138, 142, 144, 145, 148], "base": [0, 10, 19, 20, 25, 39, 43, 44, 45, 46, 47, 54, 58, 67, 69, 70, 77, 78, 80, 83, 84, 86, 88, 94, 95, 96, 99, 100, 105, 106, 107, 110, 112, 125, 126, 128, 131, 132, 136, 140, 144, 152, 158, 168], "alwai": [0, 4, 19, 28, 39, 40, 43, 46, 47, 51, 60, 62, 64, 78, 83, 84, 94, 100, 104, 105, 106, 110, 114, 124, 126, 132, 134, 136, 140, 144, 145], "ad": [0, 10, 14, 15, 16, 21, 23, 24, 28, 36, 39, 45, 46, 47, 60, 61, 62, 63, 64, 72, 73, 74, 75, 76, 77, 78, 80, 83, 84, 94, 102, 104, 109, 110, 131, 134, 141, 147, 159, 160, 164, 165], "give": [0, 1, 2, 15, 39, 42, 43, 45, 46, 49, 53, 55, 58, 63, 64, 70, 75, 90, 94, 95, 96, 98, 100, 103, 104, 106, 110, 114, 115, 125, 131, 134, 138, 144, 147, 152], "t": [0, 1, 3, 4, 16, 21, 23, 24, 26, 28, 31, 39, 43, 45, 64, 95, 99, 106, 118, 141, 142, 160], "2n": [0, 1], "That": [0, 17, 31, 43, 64, 70, 84, 106, 125, 136, 139, 146, 148], "linear": [0, 1, 3, 7, 9, 16, 22, 36, 60, 65, 71, 76, 82, 84, 90, 109, 110, 115, 139, 168], "befor": [0, 10, 15, 21, 22, 24, 25, 26, 31, 36, 37, 39, 43, 45, 46, 47, 51, 64, 69, 70, 75, 77, 80, 84, 88, 94, 100, 103, 105, 106, 110, 114, 115, 123, 127, 129, 131, 132, 136, 138, 139, 144, 147, 149, 152], "leav": [0, 15, 21, 26, 31, 46, 64, 77, 80, 83, 84, 98, 110, 125, 126, 131, 134, 135, 139, 140, 145, 148], "sai": [0, 1, 10, 13, 37, 47, 52, 70, 78, 95, 100, 102, 106, 115, 128, 131, 133, 136, 153], "someth": [0, 10, 32, 40, 45, 46, 47, 64, 70, 83, 96, 106, 115, 123, 128, 141, 148, 152], "about": [0, 1, 4, 6, 9, 10, 19, 24, 26, 27, 30, 36, 40, 42, 43, 46, 50, 53, 58, 64, 69, 70, 83, 88, 90, 94, 95, 99, 100, 105, 106, 110, 112, 114, 115, 124, 129, 132, 134, 139, 142, 144, 145, 147], "space": [0, 9, 10, 12, 39, 40, 43, 64, 66, 67, 88, 95, 103, 114, 119, 122, 125, 146], "requir": [0, 1, 8, 9, 10, 13, 15, 17, 23, 34, 36, 39, 40, 42, 43, 46, 47, 51, 53, 54, 55, 58, 64, 69, 70, 76, 83, 84, 87, 88, 94, 95, 96, 100, 110, 114, 115, 122, 123, 124, 125, 126, 127, 131, 132, 134, 144, 148], "wa": [0, 8, 9, 10, 15, 16, 19, 21, 23, 35, 39, 43, 45, 46, 47, 64, 66, 69, 70, 73, 78, 83, 84, 95, 99, 100, 103, 110, 112, 115, 124, 126, 131, 148, 168], "abl": [0, 3, 5, 9, 10, 40, 44, 46, 52, 54, 55, 65, 66, 88, 95, 103, 110, 111, 115, 120, 129, 148], "run": [0, 1, 4, 9, 10, 14, 15, 18, 19, 20, 24, 26, 30, 31, 39, 40, 43, 45, 50, 66, 70, 83, 95, 100, 102, 106, 112, 115, 121, 123, 124, 125, 126, 127, 128, 129, 131], "could": [0, 4, 10, 17, 26, 31, 40, 45, 46, 64, 70, 75, 83, 86, 88, 94, 95, 96, 100, 102, 106, 110, 114, 123, 129, 134, 138, 139, 148], "do": [0, 1, 4, 8, 9, 10, 13, 15, 17, 21, 26, 27, 28, 31, 36, 39, 40, 41, 43, 44, 45, 46, 47, 49, 52, 54, 57, 64, 67, 70, 77, 80, 83, 84, 86, 88, 90, 94, 95, 100, 102, 103, 106, 108, 110, 112, 115, 116, 119, 123, 127, 128, 131, 133, 134, 136, 141, 144, 145, 146, 147, 148, 150, 152, 153, 159, 160, 164, 165, 167], "addit": [0, 1, 19, 21, 22, 24, 25, 28, 30, 31, 37, 39, 43, 46, 47, 49, 53, 54, 58, 60, 70, 75, 76, 77, 78, 80, 83, 84, 86, 88, 93, 94, 100, 102, 105, 106, 110, 114, 115, 122, 123, 125, 126, 131, 144, 148, 152, 153], "storag": [0, 8, 9, 39, 44, 87, 88, 110, 123, 126, 141], "keep": [0, 9, 12, 19, 21, 22, 23, 24, 25, 28, 40, 43, 45, 58, 64, 66, 68, 70, 72, 84, 94, 100, 104, 110, 114, 131, 133, 134, 139, 141, 144, 146, 148], "other": [0, 1, 4, 6, 8, 9, 10, 12, 13, 15, 17, 19, 21, 22, 24, 26, 27, 28, 29, 30, 31, 36, 37, 39, 40, 43, 44, 45, 46, 47, 48, 49, 52, 54, 57, 60, 64, 68, 69, 70, 73, 75, 77, 78, 80, 82, 83, 84, 88, 89, 95, 102, 103, 104, 109, 110, 115, 125, 126, 128, 129, 131, 140, 141, 142, 146, 147, 148, 153], "word": [0, 1, 24, 38, 39, 40, 43, 44, 46, 49, 52, 64, 70, 83, 84, 95, 104, 110, 115, 128, 129, 146, 153, 168], "sacrif": [0, 131], "gain": [0, 44, 47, 92, 110, 114, 115, 126, 133], "common": [0, 5, 9, 10, 34, 41, 46, 47, 52, 53, 58, 61, 77, 80, 106, 110, 115, 116, 129, 139, 145, 152, 168], "occurr": [0, 39, 44], "On": [0, 26, 43, 52, 64, 70, 100, 106, 115, 116, 123, 124, 127, 128, 129], "mani": [0, 4, 9, 10, 13, 17, 21, 24, 25, 27, 28, 30, 31, 32, 34, 35, 36, 42, 45, 46, 49, 51, 53, 54, 55, 57, 61, 64, 68, 69, 70, 75, 76, 77, 78, 80, 83, 88, 94, 95, 99, 100, 103, 104, 106, 110, 114, 115, 116, 126, 128, 129, 139, 141, 144, 148, 150, 153], "occas": [0, 116], "decis": [0, 21, 26, 53, 148], "between": [0, 1, 3, 4, 6, 9, 10, 16, 17, 19, 21, 22, 24, 26, 27, 28, 30, 31, 35, 37, 39, 40, 43, 45, 47, 54, 58, 60, 64, 68, 70, 83, 86, 90, 94, 103, 104, 105, 106, 109, 110, 112, 115, 122, 128, 133, 134, 139, 140, 142, 146, 147, 152, 153, 160], "trade": [0, 33, 39, 54, 126], "case": [0, 1, 3, 4, 8, 9, 10, 15, 19, 21, 25, 26, 28, 39, 40, 42, 43, 45, 46, 47, 54, 64, 66, 67, 69, 70, 75, 79, 83, 84, 86, 87, 94, 95, 96, 99, 100, 103, 105, 106, 110, 113, 115, 123, 124, 125, 126, 128, 131, 132, 134, 137, 141, 142, 144, 147, 148, 152, 162, 163, 168], "amount": [0, 8, 9, 10, 29, 39, 40, 43, 52, 54, 70, 77, 80, 94, 99, 104, 106, 110, 129], "extra": [0, 10, 28, 39, 110, 114, 115, 119, 125, 146], "signific": [0, 1, 39, 44, 75, 78, 83, 114], "underli": [0, 4, 8, 9, 10, 31, 39, 47, 52, 83, 88, 109, 115, 116], "had": [0, 43, 84, 94, 95, 110, 115, 131], "million": [0, 1, 17], "more": [0, 4, 10, 12, 17, 21, 25, 26, 27, 28, 30, 31, 34, 37, 39, 40, 43, 44, 45, 46, 47, 50, 51, 54, 55, 57, 58, 64, 70, 77, 80, 83, 84, 86, 88, 89, 90, 94, 95, 99, 100, 106, 109, 110, 112, 114, 115, 116, 121, 125, 128, 129, 131, 132, 133, 139, 140, 141, 142, 144, 146, 147, 148, 152, 153], "concern": [0, 10, 30, 42, 55, 70, 116], "comput": [0, 1, 4, 9, 10, 26, 27, 30, 31, 34, 36, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 51, 53, 54, 55, 56, 57, 58, 64, 68, 70, 75, 77, 78, 80, 90, 94, 97, 99, 102, 104, 106, 108, 110, 115, 116, 125, 129, 134, 139, 168], "scientist": [0, 1, 34, 36, 42, 52, 53, 54, 55, 94, 104], "given": [0, 1, 3, 7, 9, 10, 24, 30, 33, 35, 39, 40, 43, 44, 45, 46, 47, 49, 52, 53, 54, 57, 61, 63, 70, 72, 73, 74, 75, 83, 84, 86, 89, 100, 106, 108, 109, 110, 112, 125, 126, 128, 131, 132, 133, 134, 138, 141, 144, 148, 149], "choic": [0, 39, 45, 46, 62, 63, 64, 114], "determin": [0, 1, 4, 9, 19, 21, 29, 39, 64, 82, 84, 95, 109, 140, 145], "best": [0, 1, 3, 39, 40, 46, 94, 110, 114, 115, 123, 124, 126, 152], "resourc": [0, 4, 10, 45, 50, 54, 90, 129], "q": [0, 1, 4, 10, 19, 25, 26, 28, 39, 40, 43, 45, 46, 47, 58, 62, 63, 64, 66, 73, 74, 83, 84, 94, 99, 100, 103, 110, 114, 115, 123, 124, 125, 126, 127, 128, 131, 134, 139, 141, 142, 144, 147, 148, 152, 153], "7": [0, 1, 4, 10, 19, 20, 25, 30, 37, 43, 46, 58, 64, 67, 68, 69, 70, 84, 94, 95, 102, 103, 106, 110, 114, 115, 118, 123, 126, 127, 128, 131, 132, 136, 138, 142, 144, 148, 152, 161, 163, 166], "follow": [0, 1, 2, 4, 9, 10, 15, 16, 17, 18, 19, 20, 21, 23, 24, 25, 28, 29, 31, 32, 33, 35, 36, 39, 40, 43, 44, 45, 46, 47, 50, 51, 52, 57, 59, 62, 63, 64, 68, 70, 72, 73, 74, 81, 83, 84, 90, 94, 95, 97, 102, 104, 105, 106, 109, 110, 114, 115, 118, 123, 124, 125, 126, 127, 128, 131, 132, 134, 135, 136, 138, 139, 140, 141, 142, 144, 148, 150, 152, 153], "code": [0, 1, 2, 9, 10, 16, 17, 19, 21, 23, 24, 26, 28, 31, 39, 40, 43, 44, 45, 46, 47, 49, 50, 52, 57, 58, 61, 64, 66, 68, 70, 84, 85, 86, 94, 95, 96, 98, 100, 103, 105, 106, 123, 129, 131, 134, 139, 141, 142, 144, 146, 148, 152, 160, 167], "fragment": [0, 1, 2, 40, 123], "what": [0, 1, 4, 6, 9, 11, 13, 17, 18, 19, 20, 21, 24, 25, 26, 27, 36, 39, 40, 41, 43, 44, 45, 46, 47, 55, 56, 58, 59, 62, 63, 64, 67, 69, 70, 71, 79, 81, 83, 84, 86, 91, 92, 94, 95, 99, 100, 103, 104, 105, 106, 107, 108, 110, 111, 112, 114, 115, 116, 118, 121, 126, 131, 134, 143, 144, 147, 148, 152, 168], "its": [0, 3, 8, 10, 19, 21, 22, 23, 24, 28, 31, 36, 37, 39, 40, 43, 44, 45, 46, 47, 51, 52, 57, 58, 64, 67, 68, 70, 77, 80, 84, 88, 89, 90, 94, 95, 96, 99, 100, 102, 103, 104, 105, 106, 109, 110, 119, 123, 125, 127, 128, 131, 132, 133, 134, 136, 139, 140, 146, 147, 148, 152, 153], "big": [0, 2, 3, 5, 6, 11, 20, 26, 48, 55, 59, 81, 94, 131, 132, 168], "int": [0, 1, 2, 4, 9, 10, 16, 23, 24, 39, 40, 43, 44, 45, 46, 47, 51, 62, 63, 70, 74, 83, 84, 89, 100, 110, 116, 131, 134, 144, 148, 152, 159, 160, 161, 162, 163, 164, 165, 166], "main": [0, 1, 4, 9, 16, 24, 31, 34, 36, 40, 44, 45, 46, 67, 79, 94, 110, 116, 144, 152, 159, 160, 161, 162, 163, 164, 165, 166, 168], "test": [0, 9, 21, 25, 41, 43, 72, 73, 74, 88, 89, 94, 95, 112, 165], "j": [0, 1, 2, 4, 24, 39, 123, 161, 163, 166], "8": [0, 10, 16, 19, 25, 26, 30, 37, 39, 40, 43, 45, 46, 47, 49, 58, 64, 68, 70, 83, 84, 93, 94, 99, 104, 110, 114, 115, 118, 123, 124, 125, 126, 127, 128, 131, 134, 136, 138, 139, 148, 152, 161, 163, 166], "9": [0, 4, 10, 25, 28, 30, 37, 45, 47, 58, 64, 67, 83, 84, 94, 102, 103, 104, 110, 118, 123, 125, 126, 128, 134, 138, 144, 148, 152, 161, 163, 166], "while": [0, 2, 9, 14, 15, 16, 19, 24, 25, 27, 28, 44, 45, 63, 70, 78, 83, 84, 88, 101, 102, 103, 105, 110, 125, 126, 131, 134, 140, 148, 152, 153, 160, 162, 163], "10": [0, 1, 4, 9, 10, 20, 21, 25, 26, 28, 30, 31, 34, 39, 40, 45, 47, 54, 58, 62, 64, 67, 70, 83, 84, 94, 98, 99, 103, 104, 106, 108, 110, 118, 123, 124, 125, 126, 131, 134, 136, 138, 144, 159, 161, 162, 163, 164, 165, 166, 167], "perform": [0, 1, 2, 3, 4, 7, 8, 9, 10, 11, 15, 20, 26, 36, 40, 44, 45, 46, 47, 52, 53, 58, 59, 64, 65, 67, 68, 70, 81, 86, 88, 94, 102, 103, 104, 108, 110, 112, 114, 115, 118, 121, 123, 124, 125, 126, 128, 131, 133, 134, 138, 147, 152, 154, 168], "input": [0, 1, 3, 10, 39, 40, 44, 45, 47, 49, 64, 66, 69, 109, 159, 164, 165], "worst": [0, 1, 3, 15, 54, 83, 113, 115, 123, 126, 132, 147], "scenario": [0, 54, 67, 115, 147], "correct": [0, 4, 39, 40, 46, 47, 52, 58, 64, 84, 94, 100, 114, 115, 119, 123, 127, 129, 131, 134, 136, 141, 147, 148, 160], "simplifi": [0, 3, 28, 31, 32, 131, 139, 144], "wrong": [0, 103, 126], "try": [0, 1, 10, 19, 26, 39, 40, 43, 45, 46, 70, 84, 94, 95, 96, 100, 103, 105, 115, 136, 141], "character": [1, 10, 142], "an": [1, 3, 4, 7, 8, 9, 10, 11, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 28, 29, 30, 31, 33, 34, 35, 36, 37, 38, 39, 40, 43, 44, 45, 46, 47, 49, 50, 51, 52, 53, 55, 58, 60, 62, 63, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 80, 82, 86, 88, 89, 90, 91, 92, 93, 94, 95, 96, 98, 99, 100, 102, 104, 105, 106, 107, 108, 109, 110, 112, 113, 114, 116, 119, 121, 122, 123, 124, 125, 126, 128, 129, 131, 132, 133, 134, 135, 138, 139, 140, 141, 142, 144, 145, 146, 147, 148, 152, 153, 168], "effici": [1, 6, 10, 12, 13, 28, 31, 35, 43, 47, 54, 55, 86, 88, 94, 99, 100, 110, 115, 126, 128, 129, 131, 134, 136, 137], "execut": [1, 5, 9, 10, 14, 15, 18, 40, 52, 53, 64, 70, 77, 80, 96, 112, 118, 121, 125, 127, 148], "independ": [1, 4, 9, 10, 52, 55, 70, 139], "import": [1, 4, 5, 6, 9, 10, 19, 21, 24, 25, 26, 28, 30, 37, 40, 42, 45, 46, 47, 48, 52, 53, 54, 57, 58, 61, 64, 68, 70, 72, 75, 76, 78, 84, 89, 94, 95, 99, 100, 106, 110, 114, 123, 124, 125, 129, 132, 134, 136, 139, 142, 145, 146, 148, 158], "quantifi": [1, 4], "consid": [1, 4, 10, 17, 21, 22, 28, 35, 36, 39, 40, 43, 45, 46, 49, 52, 54, 64, 67, 68, 69, 70, 75, 78, 80, 83, 84, 86, 88, 90, 94, 95, 103, 110, 114, 118, 123, 125, 126, 131, 132, 136, 138, 142, 144, 148], "basic": [1, 8, 9, 24, 28, 42, 44, 45, 46, 47, 52, 53, 56, 65, 84, 95, 106, 110, 115, 128, 131, 135, 152, 153, 168], "unit": [1, 39, 44, 45, 70, 106, 115], "express": [1, 20, 26, 46, 57, 58, 59, 60, 65, 68, 71, 79, 84, 94, 96, 98, 99, 102, 138, 144, 146, 148, 150, 152, 168], "appropri": [1, 17, 46, 47, 58, 65, 68, 99, 111, 112, 119, 121, 126, 131, 138, 147], "complic": [1, 45, 131, 146, 147, 148], "depend": [1, 6, 9, 10, 20, 26, 30, 43, 44, 45, 46, 47, 51, 64, 66, 75, 95, 99, 105, 131, 147], "how": [1, 5, 6, 8, 9, 10, 13, 16, 17, 24, 26, 27, 28, 29, 30, 40, 42, 43, 44, 45, 46, 47, 49, 52, 54, 55, 58, 64, 70, 75, 81, 83, 84, 85, 94, 95, 97, 98, 99, 100, 102, 103, 104, 105, 106, 109, 110, 112, 114, 115, 116, 118, 123, 125, 126, 131, 132, 133, 139, 143, 144, 147, 148], "implement": [1, 4, 5, 6, 8, 9, 10, 12, 13, 16, 17, 19, 21, 22, 26, 27, 28, 32, 33, 38, 39, 40, 43, 44, 46, 47, 48, 49, 51, 52, 54, 55, 57, 58, 59, 61, 62, 63, 64, 65, 67, 68, 69, 79, 81, 85, 86, 87, 88, 91, 95, 97, 99, 100, 103, 104, 107, 111, 112, 114, 115, 117, 118, 120, 121, 124, 125, 126, 133, 135, 136, 137, 138, 141, 142, 143, 144, 145, 146, 147, 149, 150, 152, 154, 168], "compar": [1, 4, 7, 10, 11, 17, 21, 39, 40, 45, 46, 54, 57, 64, 66, 68, 83, 84, 86, 104, 112, 114, 115, 116, 119, 121, 123, 124, 127, 128, 129, 134, 148, 168], "summat": [1, 10], "shown": [1, 4, 10, 16, 19, 20, 21, 23, 24, 25, 26, 28, 31, 36, 37, 39, 43, 45, 46, 47, 49, 57, 58, 64, 68, 69, 73, 83, 84, 88, 94, 95, 98, 100, 102, 104, 105, 106, 110, 114, 115, 123, 125, 126, 127, 128, 131, 134, 136, 139, 141, 142, 144, 147, 148, 152], "might": [1, 9, 17, 26, 27, 31, 35, 36, 37, 39, 45, 52, 54, 58, 64, 70, 75, 84, 100, 102, 103, 106, 110, 112, 115, 121, 131, 134, 139, 142, 147, 148], "count": [1, 2, 10, 11, 16, 18, 26, 39, 40, 67, 69, 84, 86, 110, 115, 160, 167, 168], "assign": [1, 4, 8, 9, 10, 39, 43, 46, 61, 70, 84, 96, 100, 112, 115, 121, 123, 124, 136, 161, 163, 166, 168], "statement": [1, 9, 10, 21, 33, 40, 42, 43, 45, 47, 52, 53, 68, 84, 95, 96, 98, 100, 106, 110, 125, 131, 141, 142, 144, 146, 149, 152], "sumofn": [1, 10], "thesum": [1, 10, 43, 102], "plu": [1, 40, 51, 94, 95, 103, 110, 146], "valu": [1, 3, 4, 10, 12, 13, 17, 19, 22, 24, 25, 28, 39, 44, 46, 47, 49, 51, 56, 58, 59, 64, 67, 68, 69, 70, 72, 73, 74, 81, 83, 84, 88, 89, 94, 95, 96, 98, 104, 106, 108, 109, 110, 112, 114, 115, 116, 118, 119, 121, 123, 124, 126, 127, 128, 129, 135, 137, 140, 141, 142, 144, 145, 148, 149, 152, 162, 168], "denot": [1, 43, 51, 64, 83, 84, 110, 131], "where": [1, 12, 21, 22, 25, 26, 30, 31, 34, 35, 37, 39, 40, 43, 44, 47, 54, 57, 60, 61, 64, 65, 67, 68, 69, 72, 74, 75, 77, 78, 80, 83, 84, 86, 87, 88, 89, 94, 95, 99, 100, 102, 103, 110, 114, 115, 116, 123, 125, 126, 128, 131, 134, 139, 141, 144, 147, 148, 152, 153, 167], "paramet": [1, 10, 23, 25, 29, 39, 44, 46, 47, 51, 52, 56, 58, 70, 72, 73, 74, 86, 88, 94, 95, 102, 103, 104, 106, 115, 123, 138, 144, 148, 152, 168], "often": [1, 10, 26, 39, 40, 42, 43, 45, 47, 53, 54, 55, 75, 84, 94, 96, 110, 123, 153], "refer": [1, 3, 10, 25, 42, 43, 44, 46, 47, 50, 51, 52, 55, 56, 63, 64, 75, 78, 81, 82, 83, 84, 89, 90, 95, 109, 110, 123, 131, 132, 134, 143, 144, 146, 148, 154, 168], "size": [1, 3, 4, 8, 9, 16, 23, 24, 26, 29, 39, 44, 45, 64, 66, 69, 70, 72, 73, 74, 83, 84, 88, 89, 103, 104, 109, 110, 112, 115, 116, 121, 123, 125, 126, 128, 134, 135, 146, 148, 161, 163, 166], "read": [1, 10, 19, 43, 44, 60, 64, 66, 67, 68, 83, 90, 95, 105, 144, 147, 152], "name": [1, 10, 21, 22, 23, 26, 33, 37, 39, 40, 43, 44, 45, 46, 47, 51, 52, 69, 75, 84, 95, 99, 108, 110, 133, 139, 142, 144, 152, 153], "abov": [1, 9, 10, 20, 21, 24, 26, 29, 31, 33, 35, 37, 39, 40, 43, 45, 46, 57, 59, 64, 70, 72, 73, 74, 83, 84, 86, 88, 89, 94, 95, 100, 103, 104, 105, 106, 110, 114, 123, 124, 125, 126, 128, 131, 133, 139, 141, 142, 144, 148, 153, 165], "sens": [1, 53, 64, 76, 84, 112, 115, 121, 136], "100": [1, 17, 39, 40, 43, 45, 89, 99, 110, 126, 159, 164, 165], "bigger": [1, 4, 126], "instanc": [1, 10, 21, 23, 24, 33, 43, 44, 46, 47, 52, 53, 70, 84, 94, 95, 142, 148], "becaus": [1, 4, 6, 8, 9, 10, 13, 15, 19, 24, 26, 28, 30, 39, 40, 43, 45, 46, 58, 64, 70, 86, 88, 90, 94, 95, 99, 103, 105, 106, 109, 123, 132, 134, 141, 144, 145, 147, 148, 152, 160], "seem": [1, 9, 10, 27, 64, 99, 101, 134, 147], "reason": [1, 9, 10, 15, 21, 26, 36, 39, 42, 43, 45, 47, 52, 54, 64, 68, 70, 84, 88, 102, 106, 110, 148, 152], "larger": [1, 4, 8, 9, 19, 26, 29, 31, 39, 70, 83, 100, 104, 119, 124, 125, 127, 129, 132, 136], "greater": [1, 22, 28, 39, 43, 46, 58, 69, 83, 114, 119, 124, 125, 126, 133, 140, 147, 148], "smaller": [1, 19, 94, 96, 99, 100, 101, 102, 103, 104, 105, 106, 114, 119, 123, 124, 125, 126, 127, 128, 129, 134, 136, 140], "chang": [1, 3, 4, 8, 9, 19, 24, 25, 26, 28, 35, 39, 40, 42, 43, 44, 45, 46, 55, 58, 64, 70, 84, 86, 93, 94, 95, 99, 100, 103, 106, 110, 128, 131, 132, 139, 147, 148, 152, 159, 164, 165, 168], "respect": [1, 4, 10, 19, 24, 39, 43, 47, 53, 55, 58, 64, 84, 89, 103, 110, 114, 115, 126, 129, 136, 144, 146, 148, 152, 161, 166], "prefer": [1, 43, 67, 136], "analysi": [1, 5, 38, 48, 52, 54, 70, 91, 112, 117, 121, 125, 128, 154, 168], "further": [1, 9, 10, 24, 40, 47, 83, 95, 96, 110, 114, 123, 131, 132, 134, 144], "exact": [1, 10, 46, 90, 94, 105, 137, 148], "most": [1, 4, 9, 10, 13, 15, 22, 26, 28, 39, 43, 45, 46, 47, 49, 52, 53, 58, 64, 67, 68, 70, 75, 77, 78, 80, 83, 84, 86, 90, 94, 99, 103, 110, 114, 116, 123, 125, 129, 131, 132, 134, 136, 146, 147, 148, 152], "part": [1, 3, 4, 8, 9, 14, 15, 22, 26, 28, 31, 37, 39, 45, 46, 47, 53, 67, 68, 84, 95, 110, 114, 119, 123, 127, 131, 134, 139, 140, 144, 153], "portion": [1, 43, 96, 109, 110, 123, 125], "tend": [1, 26, 42, 45, 70, 128], "overpow": 1, "rest": [1, 28, 42, 84, 100, 102, 105, 125, 134, 139, 144, 152], "comparison": [1, 4, 17, 43, 45, 46, 67, 86, 88, 108, 114, 124, 127, 128, 129, 147], "describ": [1, 3, 5, 17, 26, 31, 33, 39, 44, 46, 47, 52, 53, 55, 62, 63, 67, 69, 70, 72, 73, 74, 84, 89, 93, 94, 95, 105, 106, 110, 112, 121, 123, 126, 128, 131, 144, 148], "increas": [1, 3, 9, 10, 70, 100, 106, 110, 112, 131], "fastest": [1, 3, 45], "f": [1, 3, 16, 21, 23, 24, 25, 28, 59, 64, 96, 141, 159, 160, 164, 165], "provid": [1, 4, 9, 10, 19, 21, 23, 28, 31, 32, 41, 42, 44, 45, 46, 47, 50, 52, 53, 55, 61, 64, 67, 70, 71, 76, 78, 83, 84, 96, 98, 100, 104, 110, 113, 115, 116, 131, 137, 141, 144, 148, 149, 153], "approxim": [1, 40, 46, 110, 114, 115, 124, 132, 134], "represent": [1, 12, 13, 19, 24, 27, 33, 45, 46, 47, 53, 58, 70, 84, 86, 95, 103, 134, 142, 145], "exampl": [1, 9, 10, 11, 17, 21, 25, 26, 28, 30, 31, 35, 36, 37, 39, 40, 42, 43, 45, 46, 47, 50, 52, 53, 54, 57, 58, 66, 67, 68, 69, 70, 74, 75, 77, 78, 80, 83, 84, 88, 90, 94, 95, 98, 99, 100, 103, 104, 105, 106, 110, 114, 116, 118, 123, 125, 126, 128, 129, 131, 133, 134, 141, 142, 144, 147, 152, 153, 154, 167, 168], "constant": [1, 4, 9, 26, 42, 43, 44, 69, 88, 110, 113, 114, 132, 147], "less": [1, 26, 28, 43, 46, 54, 94, 103, 106, 114, 119, 125, 126, 133, 134, 140, 147, 148], "result": [1, 4, 10, 19, 21, 22, 26, 36, 39, 40, 43, 46, 47, 49, 52, 53, 54, 58, 64, 68, 70, 72, 73, 74, 81, 84, 94, 95, 96, 98, 103, 109, 110, 112, 114, 115, 125, 126, 132, 134, 138, 141, 144, 148, 152], "look": [1, 4, 8, 9, 10, 13, 14, 17, 19, 21, 22, 24, 25, 26, 27, 28, 31, 32, 37, 39, 40, 43, 44, 45, 46, 47, 51, 64, 70, 78, 83, 84, 92, 94, 95, 98, 99, 102, 103, 104, 105, 106, 110, 114, 115, 123, 124, 125, 126, 127, 131, 132, 133, 134, 139, 141, 142, 144, 145, 147, 148, 149, 150, 151, 152, 153], "drop": [1, 95, 146], "certainli": [1, 10, 53], "just": [1, 8, 9, 10, 17, 19, 23, 26, 28, 30, 36, 39, 40, 45, 46, 52, 64, 83, 84, 85, 90, 94, 95, 102, 103, 105, 106, 114, 123, 131, 133, 141, 142, 144, 147, 148, 152], "accur": [1, 9, 134], "suppos": [1, 17, 40, 51, 62, 70, 94, 95, 98, 99, 100, 102, 103, 104, 110, 114, 115, 123, 124, 127, 148, 152], "5n": 1, "2": [1, 2, 3, 4, 10, 11, 12, 13, 16, 17, 19, 20, 21, 23, 24, 26, 28, 30, 37, 39, 40, 43, 46, 47, 55, 58, 59, 66, 67, 69, 70, 73, 74, 78, 81, 82, 83, 84, 94, 95, 98, 99, 100, 102, 103, 104, 106, 110, 114, 116, 118, 122, 123, 124, 125, 126, 127, 128, 131, 132, 134, 136, 138, 139, 140, 141, 142, 144, 147, 148, 152, 153, 155, 156, 158, 160, 161, 162, 163, 166, 168], "27n": 1, "1005": 1, "small": [1, 13, 17, 21, 26, 28, 30, 31, 94, 99, 101, 102, 106, 108, 110, 112, 114, 121, 129, 134, 139, 141], "realli": [1, 10, 26, 36, 40, 84, 90, 92, 106, 134, 144, 148], "insignific": [1, 115], "role": [1, 48, 52, 84, 126], "plai": [1, 34, 48, 49, 52, 69, 84, 90, 104, 106], "focu": [1, 46, 55, 99], "coeffici": [1, 104, 115], "5": [1, 10, 17, 19, 20, 21, 23, 24, 25, 26, 30, 37, 43, 45, 46, 58, 59, 63, 64, 68, 70, 83, 84, 94, 95, 98, 99, 100, 102, 104, 106, 114, 115, 116, 118, 123, 124, 125, 126, 127, 128, 131, 132, 134, 136, 138, 142, 144, 148, 152, 160, 161, 162, 163, 166], "3n": 1, "sometim": [1, 10, 39, 43, 47, 52, 53, 55, 75, 77, 78, 80, 84, 87, 94, 105, 110, 128, 148], "data": [1, 3, 4, 5, 11, 13, 23, 27, 28, 32, 38, 39, 40, 42, 44, 46, 47, 48, 50, 51, 53, 56, 57, 58, 60, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 75, 76, 77, 79, 82, 83, 84, 85, 86, 90, 91, 95, 96, 99, 100, 109, 111, 115, 117, 118, 125, 133, 137, 139, 140, 141, 142, 143, 144, 145, 148, 150, 151, 152], "rather": [1, 4, 12, 21, 30, 39, 40, 45, 46, 47, 69, 70, 84, 94, 96, 106, 146], "kind": [1, 26, 27, 39, 45, 47, 57, 81, 106, 119, 129, 133, 142, 144, 148, 152], "averag": [1, 3, 4, 26, 40, 67, 70, 83, 86, 99, 108, 110, 115, 123], "extrem": [1, 31, 39, 47, 94], "poorli": [1, 3], "outstand": 1, "somewher": [1, 64, 84, 95, 128], "understand": [1, 5, 6, 10, 27, 28, 30, 34, 39, 42, 43, 44, 46, 47, 48, 52, 54, 64, 65, 84, 85, 94, 97, 106, 110, 111, 131, 134, 143, 144, 147], "distinct": [1, 39, 47, 125, 142], "misl": 1, "veri": [1, 10, 13, 17, 19, 26, 27, 28, 30, 31, 39, 40, 43, 45, 46, 47, 51, 52, 53, 55, 57, 58, 61, 64, 66, 67, 68, 71, 72, 75, 77, 80, 84, 92, 94, 95, 99, 100, 101, 103, 104, 106, 110, 115, 116, 123, 124, 126, 128, 131, 132, 134, 139, 141, 148, 149, 152, 153, 168], "come": [1, 10, 22, 29, 36, 39, 45, 47, 52, 53, 58, 60, 64, 67, 70, 77, 78, 80, 84, 88, 94, 95, 99, 104, 105, 106], "over": [1, 16, 19, 21, 24, 26, 30, 36, 40, 45, 54, 64, 83, 98, 99, 104, 134, 148, 151], "studi": [1, 24, 27, 30, 31, 34, 35, 42, 51, 52, 53, 56, 58, 70, 75, 116, 124, 125, 127, 129, 131, 137, 139, 145, 168], "These": [1, 40, 47, 52, 53, 55, 57, 64, 70, 75, 88, 94, 95, 110, 123, 131, 152], "logarithm": [1, 3, 110, 114, 134], "quadrat": [1, 3, 109, 110, 112], "3": [1, 4, 9, 10, 11, 13, 19, 20, 21, 24, 25, 26, 28, 29, 30, 31, 36, 37, 39, 40, 43, 45, 46, 47, 58, 59, 62, 63, 68, 69, 70, 73, 74, 78, 83, 84, 90, 94, 95, 99, 100, 102, 103, 104, 105, 110, 115, 116, 118, 123, 125, 126, 128, 131, 132, 134, 136, 138, 139, 141, 142, 144, 148, 152, 153, 158, 160, 161, 162, 163, 166, 168], "cubic": 1, "exponenti": [1, 3, 26, 43], "figur": [1, 4, 10, 12, 13, 16, 17, 19, 21, 23, 24, 25, 26, 27, 28, 30, 31, 35, 36, 37, 43, 45, 46, 47, 52, 55, 58, 64, 66, 68, 69, 70, 76, 77, 78, 80, 83, 84, 94, 95, 98, 100, 102, 103, 105, 106, 110, 114, 115, 123, 124, 125, 126, 128, 131, 132, 133, 134, 136, 139, 141, 142, 144, 147, 148, 152, 153], "graph": [1, 12, 13, 14, 15, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 94, 145, 160, 168], "notic": [1, 4, 9, 10, 13, 16, 17, 21, 23, 31, 40, 45, 49, 69, 70, 90, 94, 95, 98, 100, 102, 103, 106, 110, 115, 125, 131, 134, 135, 139, 141, 142, 147, 148, 149, 152], "defin": [1, 23, 28, 31, 33, 37, 43, 44, 45, 51, 52, 55, 56, 63, 64, 68, 72, 73, 74, 86, 88, 89, 95, 96, 99, 102, 106, 110, 132, 133, 134, 141, 142, 144, 148, 151, 152, 153, 159, 160, 161, 162, 163, 164, 165, 166, 168], "hard": [1, 26, 42, 95, 134], "tell": [1, 6, 10, 45, 84, 94, 100, 104], "definit": [1, 23, 31, 33, 38, 39, 40, 44, 45, 46, 49, 51, 52, 96, 99, 106, 125, 131, 133, 141, 142, 148, 154, 168], "relationship": [1, 3, 21, 22, 27, 35, 37, 44, 47, 57, 86, 110, 115, 134, 140, 147, 148, 153], "easi": [1, 10, 13, 23, 26, 27, 28, 45, 83, 92, 94, 95, 100, 103, 106, 109, 110, 116, 125, 131, 134, 141, 145, 148], "top": [1, 45, 46, 47, 57, 63, 64, 74, 75, 78, 94, 95, 98, 100, 105, 134, 139, 144, 160], "bottom": [1, 10, 36, 45, 46, 64, 75, 94, 95, 100, 105, 125, 134, 139, 140, 147, 160], "least": [1, 4, 15, 22, 28, 64, 66, 84, 88, 94, 146, 153], "list": [1, 3, 4, 9, 10, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 28, 33, 36, 38, 40, 46, 47, 48, 52, 57, 58, 60, 61, 64, 67, 70, 72, 74, 81, 82, 85, 86, 87, 89, 90, 91, 94, 95, 96, 98, 99, 100, 102, 104, 106, 108, 110, 112, 113, 114, 116, 118, 121, 122, 123, 124, 125, 126, 128, 129, 131, 134, 139, 140, 142, 143, 144, 148, 151, 152, 153, 160, 161, 163, 166, 168], "doe": [1, 10, 19, 24, 26, 40, 43, 45, 46, 47, 52, 53, 57, 64, 70, 74, 76, 84, 92, 94, 95, 96, 100, 104, 105, 106, 110, 112, 115, 116, 118, 121, 122, 125, 126, 128, 131, 144, 146, 147, 148], "anyth": [1, 24, 36, 40, 45, 84, 144], "instruct": [1, 3, 10, 42, 43, 44, 52, 60, 106, 152], "includ": [1, 4, 9, 16, 24, 27, 29, 36, 39, 40, 41, 43, 45, 46, 47, 48, 52, 57, 58, 64, 67, 84, 85, 86, 89, 90, 96, 103, 104, 116, 139, 142, 146, 159, 160, 161, 162, 163, 164, 165, 166, 167], "iostream": [1, 4, 9, 16, 24, 40, 46, 84, 142, 159, 164, 165], "namespac": [1, 4, 9, 16, 24, 40, 45, 46, 84, 142, 159, 160, 161, 162, 163, 164, 165, 166], "std": [1, 4, 9, 16, 24, 40, 46, 84, 116, 142, 159, 160, 161, 162, 163, 164, 165, 166], "6": [1, 4, 10, 19, 20, 24, 25, 28, 30, 43, 45, 46, 58, 64, 66, 68, 70, 84, 94, 95, 98, 99, 100, 102, 103, 104, 110, 114, 115, 118, 125, 126, 127, 128, 131, 134, 138, 142, 144, 147, 148, 152, 159, 160, 161, 163, 164, 165, 166], "x": [1, 3, 4, 16, 19, 24, 26, 43, 131, 134, 140, 141, 144, 148, 152, 160], "y": [1, 4, 16, 19, 24, 26, 45, 118, 144, 152, 160], "k": [1, 2, 24, 26, 39, 125, 128, 134, 135, 163], "w": [1, 13, 16, 19, 22, 24, 26, 31, 36, 37, 104, 159, 164, 165], "45": [1, 59, 81, 83, 104, 106, 125], "v": [1, 13, 14, 15, 18, 19, 22, 26, 28, 31, 36, 37], "d": [1, 4, 21, 24, 25, 28, 46, 58, 59, 64, 72, 131, 138, 141, 147, 159, 160, 164, 165], "33": [1, 31, 70, 93], "def": [1, 19, 24, 25, 26, 28, 46, 47, 95, 106, 110, 141, 142, 144, 148, 152, 158], "rang": [1, 4, 45, 70, 88, 104, 106, 110, 133], "four": [1, 17, 24, 25, 28, 45, 46, 47, 75, 94, 95, 100, 128, 144, 147, 153], "repres": [1, 3, 10, 12, 13, 16, 21, 22, 23, 26, 27, 30, 32, 34, 35, 37, 43, 44, 45, 46, 47, 49, 51, 53, 55, 58, 68, 70, 78, 83, 84, 95, 99, 109, 123, 124, 125, 126, 127, 134, 141, 142, 144, 147, 148, 152, 153], "start": [1, 9, 10, 15, 16, 17, 19, 21, 22, 24, 25, 26, 28, 31, 35, 36, 37, 39, 45, 46, 47, 49, 52, 56, 58, 64, 68, 70, 74, 77, 78, 80, 83, 84, 86, 93, 94, 95, 100, 102, 104, 105, 106, 110, 112, 114, 115, 123, 124, 125, 127, 131, 132, 134, 136, 138, 139, 140, 142, 144, 148, 152, 168], "due": [1, 8, 16, 23, 45, 52, 64, 70, 77, 80, 83, 90, 110, 127], "fourth": [1, 98, 100], "4": [1, 9, 10, 11, 12, 16, 19, 20, 21, 23, 24, 25, 26, 28, 29, 30, 36, 37, 40, 43, 46, 58, 59, 63, 67, 68, 70, 72, 73, 78, 83, 84, 94, 95, 98, 99, 103, 104, 105, 114, 116, 118, 124, 128, 131, 132, 134, 138, 142, 144, 148, 152, 153, 160, 161, 162, 163, 166, 168], "By": [1, 10, 30, 45, 46, 47, 54, 55, 64, 70, 94, 95, 110, 128, 131, 132, 139, 144, 153, 168], "expon": [1, 20], "easili": [1, 12, 26, 47, 57, 58, 64, 66, 94, 95, 100, 102, 103, 134], "few": [1, 13, 45, 64, 102, 110, 123, 126, 134, 139, 144, 148], "discuss": [1, 4, 11, 25, 37, 38, 43, 46, 55, 56, 64, 79, 83, 84, 91, 103, 107, 110, 117, 129, 130, 131, 134, 137, 148, 154, 168], "initi": [1, 10, 14, 15, 16, 19, 23, 24, 28, 39, 40, 43, 44, 46, 47, 68, 70, 83, 84, 95, 100, 102, 105, 106, 110, 114, 115, 123, 124, 125, 126, 127, 128, 134, 144, 161, 163], "quickli": [1, 21, 45, 77, 80, 110, 114], "overtak": 1, "continu": [1, 9, 10, 15, 21, 22, 24, 25, 28, 29, 49, 51, 57, 58, 66, 67, 69, 83, 84, 95, 104, 105, 112, 115, 121, 123, 125, 127, 131, 136, 142, 144, 148], "true": [1, 15, 16, 23, 24, 25, 33, 39, 43, 44, 46, 47, 51, 68, 70, 72, 73, 83, 84, 94, 95, 103, 110, 115, 116, 135, 139, 160, 161, 162, 166], "100n": 1, "find": [1, 4, 7, 8, 9, 10, 12, 16, 17, 19, 20, 22, 23, 24, 25, 27, 28, 29, 30, 31, 32, 33, 34, 35, 39, 43, 46, 49, 50, 54, 58, 69, 83, 84, 93, 94, 95, 104, 106, 109, 110, 114, 115, 116, 119, 123, 126, 134, 144, 147, 148, 160], "minimum": [1, 20, 28, 32, 53, 70, 94, 127, 134, 135, 148], "should": [1, 4, 19, 21, 23, 24, 30, 36, 39, 40, 43, 45, 46, 47, 49, 51, 52, 64, 67, 68, 70, 83, 84, 86, 95, 100, 102, 103, 104, 106, 110, 114, 123, 126, 129, 131, 141, 144, 146, 148, 152], "log_": 1, "complet": [1, 16, 19, 24, 25, 27, 39, 40, 44, 45, 46, 47, 63, 64, 66, 68, 70, 77, 80, 83, 84, 95, 99, 100, 106, 110, 114, 123, 124, 126, 127, 128, 131, 134, 136, 140, 144, 147], "1000": [1, 4, 9, 10, 40, 159, 160, 164, 165], "2000": 1, "1": [2, 4, 7, 8, 9, 10, 11, 16, 17, 19, 20, 21, 23, 24, 25, 26, 27, 28, 30, 34, 36, 37, 39, 40, 45, 46, 47, 52, 57, 58, 59, 61, 62, 63, 64, 66, 67, 68, 69, 70, 76, 77, 78, 80, 83, 84, 86, 94, 95, 98, 99, 100, 102, 103, 104, 105, 106, 114, 116, 118, 124, 125, 126, 127, 128, 131, 132, 133, 134, 135, 136, 138, 139, 141, 142, 144, 147, 148, 152, 153, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168], "divis": [2, 43, 44, 58, 64, 103, 126, 134], "certain": [3, 6, 45, 52, 61, 69, 70, 74, 94, 95], "circumst": [3, 67, 86, 112, 121, 148], "especi": [3, 10, 70, 114], "notat": [3, 4, 6, 11, 39, 46, 48, 53, 57, 60, 64, 168], "brute": [3, 11, 28, 168], "forc": [3, 11, 23, 28, 43, 64, 110, 168], "contain": [3, 4, 16, 19, 22, 23, 24, 25, 31, 36, 39, 44, 51, 67, 70, 74, 82, 83, 84, 86, 88, 89, 94, 95, 96, 110, 115, 116, 127, 148], "hash": [3, 6, 7, 11, 44, 51, 56, 64, 108, 109, 111, 112, 113, 137, 149, 151, 168], "check": [3, 11, 21, 23, 24, 39, 45, 49, 56, 57, 66, 67, 77, 80, 83, 102, 104, 107, 117, 130, 131, 134, 138, 139, 142, 144, 152, 168], "tabl": [3, 6, 7, 11, 44, 45, 47, 51, 56, 94, 108, 109, 112, 113, 137, 149], "specif": [3, 10, 23, 37, 39, 43, 45, 47, 57, 83, 84, 95, 103, 109, 129, 136, 139], "element": [3, 4, 8, 9, 39, 40, 44, 60, 63, 75, 77, 80, 82, 84, 88, 89, 94, 95, 96, 102, 115, 119, 123, 124, 125, 126, 127, 129, 134, 136, 139, 140, 141, 163], "contigu": [3, 4, 8, 9, 39, 51, 84, 85, 87, 128], "adjac": [3, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 28, 33, 38, 115, 119, 123, 168], "next": [3, 16, 19, 21, 23, 24, 25, 26, 28, 30, 31, 39, 40, 46, 47, 54, 57, 64, 68, 70, 77, 78, 80, 83, 84, 86, 88, 94, 95, 96, 100, 103, 105, 106, 109, 110, 114, 116, 119, 123, 126, 127, 128, 131, 134, 139, 140, 142, 144, 145, 147, 148, 152], "dynam": [3, 8, 9, 39, 44, 51, 89, 93, 96, 104, 107, 168], "automat": [3, 8, 9, 39, 45, 112, 133, 140], "being": [3, 9, 10, 21, 24, 26, 39, 40, 43, 44, 45, 46, 52, 53, 58, 64, 67, 77, 80, 109, 110, 115, 123, 124, 125, 127, 128, 129, 142], "rais": [3, 10, 43, 45, 49, 96, 144, 148], "power": [3, 31, 34, 39, 43, 46, 47, 50, 51, 70, 75, 148], "like": [3, 8, 9, 10, 13, 17, 25, 30, 31, 39, 40, 43, 44, 45, 46, 47, 54, 58, 61, 64, 66, 67, 68, 69, 70, 71, 77, 78, 80, 84, 85, 88, 90, 92, 94, 95, 96, 98, 99, 100, 101, 102, 103, 104, 106, 110, 114, 129, 133, 134, 139, 141, 142, 144, 145, 147, 148, 152], "get_item": 3, "retriev": [3, 39, 66, 70, 144, 148], "inform": [3, 4, 22, 28, 30, 37, 40, 44, 50, 55, 58, 64, 84, 86, 88, 95, 110, 140, 144, 153], "associ": [3, 4, 22, 30, 39, 43, 44, 46, 51, 53, 64, 109, 110, 148], "kei": [3, 4, 12, 16, 17, 19, 22, 23, 24, 26, 37, 39, 40, 43, 44, 46, 48, 51, 52, 57, 94, 96, 100, 102, 109, 110, 114, 115, 128, 131, 132, 134, 135, 137, 138, 140, 142, 144, 145, 146, 147, 148, 149, 151, 152, 153, 161], "collect": [3, 11, 17, 43, 44, 45, 47, 51, 55, 56, 60, 67, 72, 73, 74, 75, 76, 77, 78, 80, 82, 84, 87, 88, 89, 109, 110, 115, 116, 119, 129, 137, 168], "pair": [3, 16, 19, 21, 22, 29, 30, 31, 39, 44, 51, 60, 64, 68, 102, 109, 110, 123, 137, 139, 148, 149, 153, 161, 163, 166], "map": [3, 4, 16, 17, 19, 23, 24, 27, 39, 44, 47, 64, 94, 109, 111, 112, 117, 133, 137, 143, 144, 148, 149, 154, 160, 168], "invers": [3, 147], "usual": [3, 44, 55, 84, 93, 94, 99, 144], "present": [3, 45, 50, 84, 88, 100, 110, 115, 116, 144], "logn": 3, "who": [3, 26, 28, 39, 43, 52, 69, 95, 104, 168], "highest": [3, 78, 145], "squar": [3, 10, 16, 25, 26, 34, 40, 45, 51, 52, 54, 57, 68, 86, 95, 109, 162], "complex": [3, 4, 42, 43, 45, 51, 52, 53, 55, 64, 83, 84, 96, 97, 107, 110, 115, 125, 129, 131, 168], "ax": 3, "bx": 3, "set_item": 3, "add": [3, 10, 14, 19, 21, 23, 24, 28, 33, 37, 39, 40, 46, 47, 49, 66, 70, 72, 73, 74, 81, 83, 84, 88, 94, 95, 100, 103, 110, 131, 134, 135, 141, 142, 144, 146, 148, 149, 152], "item": [3, 4, 8, 9, 39, 43, 44, 47, 53, 58, 60, 61, 62, 63, 66, 69, 72, 73, 74, 75, 76, 77, 78, 80, 81, 82, 83, 84, 86, 87, 88, 89, 94, 95, 104, 109, 110, 112, 114, 115, 116, 118, 119, 123, 124, 125, 126, 127, 128, 129, 134, 135, 136, 137, 139, 145, 146, 161, 163, 166], "your": [3, 10, 13, 20, 24, 26, 29, 30, 36, 39, 40, 42, 43, 44, 45, 46, 47, 52, 58, 64, 66, 67, 78, 84, 90, 94, 95, 104, 106, 112, 118, 146, 153, 167], "vector": [3, 4, 6, 7, 8, 11, 16, 17, 19, 23, 24, 43, 44, 47, 51, 56, 57, 59, 64, 67, 70, 75, 85, 86, 88, 99, 107, 112, 114, 115, 116, 121, 124, 125, 127, 128, 134, 135, 137, 144, 145, 161, 162, 163, 166, 168], "sequenc": [3, 19, 21, 22, 27, 28, 34, 35, 37, 39, 44, 47, 57, 58, 63, 68, 72, 73, 74, 82, 86, 88, 96, 102, 103, 104, 110, 114, 115, 132], "store": [3, 4, 8, 13, 17, 19, 23, 36, 39, 40, 43, 44, 47, 51, 52, 58, 66, 67, 77, 78, 80, 84, 85, 86, 88, 89, 94, 96, 109, 110, 115, 131, 134, 141, 142, 144, 148, 149, 152], "singl": [3, 9, 15, 17, 21, 26, 28, 31, 34, 39, 40, 43, 44, 45, 46, 47, 51, 64, 70, 76, 77, 80, 84, 86, 95, 96, 100, 103, 105, 110, 125, 128, 134, 145, 148], "type": [3, 21, 22, 23, 26, 27, 32, 38, 39, 40, 41, 44, 46, 47, 49, 50, 51, 52, 53, 56, 57, 62, 63, 64, 65, 70, 71, 77, 79, 80, 81, 85, 90, 91, 94, 95, 96, 100, 109, 111, 115, 117, 123, 124, 125, 126, 127, 128, 133, 137, 139, 141, 151, 168], "alloc": [3, 9, 39, 44, 45, 51, 98], "major": [4, 27, 45, 104], "structur": [4, 6, 13, 27, 31, 39, 40, 42, 44, 46, 47, 48, 56, 57, 58, 60, 62, 63, 64, 65, 66, 67, 68, 71, 72, 73, 74, 76, 82, 83, 84, 85, 88, 89, 96, 99, 100, 109, 110, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 150, 151, 152, 154], "recal": [4, 19, 47, 57, 63, 64, 70, 83, 84, 102, 110, 112, 114, 115, 123, 125, 129, 132, 137, 144, 147], "access": [4, 8, 9, 39, 44, 46, 47, 78, 83, 84, 88, 89, 95, 98, 110, 141, 152], "mostli": 4, "empti": [4, 13, 19, 33, 58, 63, 64, 68, 70, 71, 72, 73, 74, 83, 84, 88, 89, 110, 125, 131, 134, 135, 141, 144, 148, 149, 153], "index": [4, 7, 8, 9, 10, 24, 39, 44, 47, 58, 84, 86, 88, 95, 110, 112, 115, 134, 141, 161, 163, 166, 168], "bucket": [4, 17, 24], "locat": [4, 8, 9, 16, 24, 26, 28, 30, 39, 40, 43, 44, 51, 52, 75, 83, 84, 88, 95, 110, 115, 123, 126, 127, 161, 163, 166], "ideal": [4, 83], "distribut": [4, 110, 147], "uniformli": 4, "uniqu": [4, 39, 44, 47, 51, 88, 109, 110, 128, 139, 153], "design": [4, 9, 28, 39, 40, 44, 45, 46, 47, 49, 52, 54, 67, 69, 70, 71, 86, 99, 110, 136, 144, 153], "handl": [4, 28, 46, 57, 64, 66, 67, 70, 84, 90, 95, 96, 98, 100, 110, 112, 115, 134, 142, 146, 148], "collis": [4, 109, 112, 117, 168], "depth": [4, 16, 22, 25, 26, 29, 30, 31, 32, 36, 38, 147, 168], "book": [4, 6, 78, 90, 94, 100, 134, 152, 167], "wai": [4, 9, 10, 12, 13, 19, 21, 22, 24, 26, 27, 33, 37, 39, 40, 42, 43, 44, 45, 46, 47, 49, 52, 53, 54, 55, 58, 64, 70, 71, 75, 77, 80, 83, 84, 89, 90, 94, 95, 96, 98, 99, 100, 102, 105, 106, 110, 112, 114, 115, 116, 121, 124, 125, 126, 128, 129, 131, 134, 136, 137, 139, 144, 145, 147, 148, 152], "thing": [4, 9, 10, 15, 21, 24, 26, 27, 28, 36, 39, 45, 46, 47, 52, 60, 61, 64, 69, 72, 90, 94, 95, 100, 105, 110, 131, 136, 139, 142, 144], "now": [4, 6, 8, 9, 10, 19, 21, 24, 28, 31, 36, 37, 43, 46, 47, 49, 55, 62, 63, 64, 66, 68, 70, 78, 83, 84, 88, 94, 95, 98, 100, 103, 106, 110, 123, 124, 125, 126, 128, 131, 134, 135, 136, 139, 142, 144, 147, 148, 152, 153], "also": [4, 6, 8, 9, 10, 12, 19, 21, 22, 23, 24, 25, 27, 28, 37, 39, 40, 42, 43, 44, 45, 46, 47, 50, 52, 53, 54, 58, 60, 61, 64, 68, 69, 70, 75, 76, 77, 80, 84, 86, 88, 94, 95, 98, 102, 103, 106, 110, 119, 123, 124, 125, 126, 127, 129, 131, 134, 136, 139, 144, 147, 148, 152, 153, 160], "summar": [4, 115, 151], "side": [4, 26, 29, 43, 62, 69, 103, 104, 105, 106, 119, 126, 131, 132], "below": [4, 16, 21, 23, 24, 25, 26, 30, 39, 40, 43, 45, 47, 64, 66, 70, 72, 73, 74, 84, 89, 95, 104, 106, 110, 114, 124, 148], "rare": [4, 152], "degener": 4, "talk": [4, 30, 90, 95, 99], "insert": [4, 7, 8, 9, 26, 39, 43, 52, 78, 84, 86, 88, 89, 104, 110, 112, 118, 119, 120, 121, 122, 128, 130, 131, 134, 135, 136, 138, 141, 142, 145, 147, 148, 168], "eras": [4, 7, 8, 9, 39, 89, 102], "speed": [4, 26, 39, 42, 45, 52, 70, 94, 112, 121, 159, 161, 162, 163, 164, 165, 166], "experi": [4, 6, 7, 9, 54, 67, 68, 86, 95, 112, 121, 139], "confirm": 4, "ll": [4, 9, 21, 40], "Then": [4, 17, 23, 64, 67, 94, 100, 105, 106, 114, 126, 144, 152], "pick": [4, 90, 118, 126], "random": [4, 7, 40, 69, 70, 71, 104, 106, 112, 118, 121, 126, 138, 147], "longer": [4, 9, 10, 49, 58, 64, 70, 83, 84, 106], "repeat": [4, 9, 10, 24, 49, 95, 114, 115, 126, 134], "much": [4, 8, 10, 17, 26, 39, 46, 47, 49, 54, 55, 66, 70, 84, 90, 95, 101, 106, 114, 116, 139, 148], "remain": [4, 9, 25, 28, 42, 46, 49, 55, 60, 64, 68, 69, 70, 76, 83, 84, 86, 100, 110, 114, 126, 127, 131, 133, 140, 163], "line": [4, 10, 21, 25, 26, 40, 43, 46, 47, 49, 57, 58, 64, 67, 68, 69, 70, 77, 78, 80, 83, 84, 94, 95, 98, 99, 100, 102, 103, 104, 106, 110, 123, 124, 125, 127, 131, 142, 144, 152, 155, 156, 157, 159, 160, 162, 164, 165], "ctime": [4, 9, 10], "unordered_map": [4, 39], "10000": [4, 166], "1000001": 4, "20000": [4, 39], "clock_t": 4, "clock": [4, 9, 10], "avector": [4, 125, 134], "push_back": [4, 8, 9, 16, 23, 24, 39, 70, 71, 72, 134, 160, 161, 162, 163, 166], "doubl": [4, 39, 40, 43, 44, 51, 70, 76, 147], "elapsed_sec": 4, "clocks_per_sec": 4, "begin_ht": 4, "null": [4, 16, 23, 24, 70, 83, 84, 131, 142, 148, 149, 152], "end_ht": 4, "elapsed_secs_ht": 4, "print": [4, 23, 24, 40, 45, 46, 77, 79, 80, 86, 94, 95, 100, 104, 125, 148, 152, 168], "output": [4, 10, 23, 30, 31, 39, 40, 43, 44, 46, 47, 49, 64, 70, 110, 159, 164, 165], "cout": [4, 16, 23, 24, 40, 43, 46, 47, 63, 70, 86, 95, 100, 110, 112, 116, 152], "endl": [4, 16, 23, 24, 40, 43, 46, 70, 100, 110, 116, 148, 152], "timeit": 4, "timer": [4, 9, 70], "randrang": [4, 70], "__main__": 4, "lst_time": 4, "d_time": 4, "3f": 4, "smallest": [4, 7, 19, 28, 30, 35, 88, 93, 94, 104, 105, 106, 119, 123, 125, 127, 134, 135, 136, 140, 145, 148], "89": [4, 138], "largest": [4, 22, 31, 88, 94, 100, 119, 123, 127, 134, 140, 145, 148], "990": 4, "11": [4, 8, 16, 21, 24, 25, 28, 30, 39, 40, 43, 47, 58, 64, 70, 84, 94, 100, 102, 110, 114, 115, 125, 126, 127, 138], "603": 4, "linearli": 4, "verifi": [4, 7, 9, 23, 110], "assert": [4, 134], "seen": [4, 8, 9, 10, 26, 32, 40, 46, 54, 64, 68, 83, 84, 100, 128, 129, 131, 134, 137, 152], "took": [4, 70], "004": 4, "millisecond": 4, "evolv": 4, "languag": [4, 10, 39, 40, 42, 43, 44, 45, 46, 47, 48, 50, 51, 53, 57, 62, 63, 67, 68, 70, 116], "behind": [4, 30, 45, 83, 84, 124], "scene": [4, 30], "latest": [4, 28], "websit": 4, "measur": [4, 8, 9, 10, 45, 129], "allow": [4, 9, 12, 19, 25, 34, 35, 39, 40, 44, 45, 46, 47, 49, 51, 52, 53, 54, 55, 64, 67, 69, 70, 71, 75, 83, 84, 86, 88, 95, 99, 100, 101, 105, 110, 123, 124, 125, 127, 131, 134, 136, 141, 142, 144, 145, 148, 152, 167, 168], "classifi": [4, 148], "factor": [4, 26, 30, 109, 110, 112, 125, 131, 132, 133, 134, 138, 140, 147], "mind": [4, 43, 84], "select": [4, 25, 26, 28, 45, 47, 53, 84, 94, 104, 106, 112, 118, 119, 120, 121, 122, 126, 130, 158, 165, 168], "appli": [4, 8, 9, 11, 20, 36, 39, 45, 46, 47, 51, 95, 97, 105, 106, 131, 144, 168], "descript": [4, 43, 45, 46, 53, 55, 95, 100, 110], "why": [5, 6, 9, 20, 21, 26, 39, 42, 43, 45, 56, 64, 90, 99, 100, 112, 121, 138, 148, 168], "dictionari": [5, 12, 23, 57, 96, 144, 148], "impact": [5, 10, 40, 86, 110], "benchmark": [5, 10, 67, 86, 112, 121, 124, 127], "idea": [6, 10, 16, 26, 28, 39, 42, 46, 47, 48, 50, 52, 55, 58, 69, 70, 78, 84, 95, 102, 104, 105, 106, 110, 111, 126, 131, 135], "section": [6, 25, 35, 39, 44, 46, 47, 50, 57, 61, 70, 84, 92, 94, 95, 103, 106, 110, 129, 133, 134, 136, 137, 139, 140, 144, 145, 147, 151, 152], "illustr": [6, 12, 13, 16, 20, 21, 28, 30, 34, 36, 37, 45, 85, 94, 98, 103, 105, 106, 125, 128, 131, 132, 134, 139, 141, 144, 148, 152, 153], "benefit": [6, 40, 45, 47, 110, 114, 129, 133], "build": [6, 14, 15, 24, 25, 38, 46, 53, 56, 58, 61, 70, 84, 86, 104, 105, 110, 133, 134, 135, 138, 142, 144, 148, 168], "block": [6, 10, 47, 53, 57, 84, 95, 96, 123], "remaind": [6, 31, 43, 46, 58, 59, 81, 83, 99, 103, 109, 142], "explain": [6, 7, 9, 10, 20, 33, 81, 83, 90, 108, 111, 112, 120], "devis": [7, 108, 118], "work": [7, 10, 17, 19, 21, 24, 28, 30, 39, 40, 43, 44, 45, 46, 47, 49, 52, 53, 54, 58, 60, 64, 70, 77, 80, 81, 83, 84, 86, 94, 95, 100, 102, 103, 105, 106, 110, 114, 115, 116, 123, 124, 125, 126, 131, 134, 141, 144, 147, 148, 152], "kth": 7, "improv": [7, 9, 40, 44, 46, 94, 110, 112, 115, 121, 122, 125, 127, 128, 129, 131, 136], "previou": [7, 10, 20, 25, 40, 50, 57, 61, 67, 83, 84, 88, 92, 94, 95, 98, 103, 106, 110, 124, 128, 131, 132, 133, 138, 147, 148], "prior": 8, "class": [8, 9, 12, 16, 19, 21, 23, 24, 27, 29, 30, 33, 37, 39, 40, 41, 43, 44, 45, 47, 49, 51, 56, 58, 62, 63, 68, 70, 83, 86, 91, 95, 110, 112, 134, 139, 141, 142, 143, 144, 146, 148, 152, 160, 162, 168], "act": [8, 44, 45, 46, 66, 67, 69, 145], "except": [8, 17, 21, 30, 39, 44, 45, 46, 47, 49, 67, 86, 95, 96, 131, 134, 140, 144, 152, 153], "optim": [8, 36, 94, 114], "minor": 8, "travers": [8, 9, 15, 16, 21, 24, 25, 39, 48, 82, 83, 84, 95, 134, 138, 140, 144, 146, 148, 153, 154, 168], "help": [8, 9, 10, 25, 26, 28, 31, 36, 37, 39, 42, 43, 46, 54, 62, 63, 64, 67, 92, 94, 95, 103, 104, 105, 106, 114, 141, 144, 148], "randomli": [8, 9, 39, 40, 67, 84, 115, 147], "mean": [8, 9, 10, 13, 21, 24, 39, 40, 43, 45, 46, 47, 49, 51, 53, 54, 55, 59, 64, 67, 68, 70, 81, 84, 86, 94, 95, 99, 106, 110, 114, 123, 139, 147, 148], "whenev": [8, 9, 46, 64, 95, 144], "new": [8, 9, 19, 21, 24, 25, 28, 33, 39, 40, 46, 47, 50, 51, 57, 58, 60, 62, 63, 64, 70, 72, 73, 74, 75, 76, 77, 78, 80, 83, 84, 88, 89, 94, 98, 103, 105, 106, 110, 114, 118, 124, 125, 127, 131, 132, 134, 135, 136, 141, 142, 144, 145, 146, 147, 148, 149], "delet": [8, 9, 39, 45, 88, 89, 104, 110, 112, 131, 136, 147, 148, 149], "realloc": [8, 9, 39], "exist": [8, 9, 39, 44, 45, 47, 49, 51, 52, 53, 54, 57, 58, 60, 67, 70, 76, 77, 78, 80, 83, 84, 106, 108, 110, 124, 142, 144, 148, 152, 159, 160], "alreadi": [8, 9, 19, 21, 24, 26, 37, 46, 51, 61, 62, 63, 64, 84, 88, 94, 95, 96, 100, 102, 110, 123, 124, 125, 126, 129, 131, 134, 137, 141, 144, 146, 148, 149, 152], "matter": [8, 9, 10, 43, 46, 64, 106, 115, 125, 135, 139, 148], "concret": [8, 9, 103], "strike": 8, "resembl": [8, 142], "similar": [8, 9, 10, 16, 19, 28, 30, 31, 40, 46, 47, 54, 55, 61, 76, 84, 89, 103, 105, 114, 125, 131, 132, 141, 148, 149], "pop_back": [8, 9, 39, 71, 72, 134], "srt": [8, 9], "stp": [8, 9], "reserv": [8, 9, 39, 43, 51], "unless": [8, 9, 39, 110, 131, 153], "inadequ": [8, 9], "capac": [8, 9, 39, 42], "move": [8, 9, 16, 19, 25, 26, 28, 34, 39, 45, 47, 64, 69, 72, 78, 83, 84, 99, 100, 103, 105, 106, 110, 112, 114, 115, 119, 121, 123, 124, 126, 128, 131, 134, 139, 144, 145, 152, 153, 160], "nevertheless": [9, 39], "remov": [9, 14, 24, 28, 36, 39, 40, 43, 57, 58, 60, 61, 64, 66, 67, 68, 69, 70, 72, 73, 74, 75, 76, 77, 78, 80, 81, 83, 84, 86, 88, 103, 125, 134, 135, 136, 145, 148, 152, 160], "resiz": [9, 112], "middl": [9, 16, 26, 64, 77, 80, 83, 84, 95, 100, 105, 110, 114, 118, 119, 122, 125, 126, 134, 160], "right": [9, 10, 26, 37, 43, 45, 46, 49, 58, 64, 66, 67, 68, 72, 73, 74, 75, 84, 88, 94, 95, 103, 105, 106, 110, 114, 124, 125, 126, 131, 132, 133, 134, 136, 140, 141, 142, 144, 147, 148, 152, 158, 162, 163], "shift": [9, 52, 124, 128, 134, 159, 164, 165], "creat": [9, 13, 16, 17, 19, 21, 22, 23, 25, 31, 33, 39, 40, 42, 43, 44, 45, 46, 47, 51, 53, 55, 58, 64, 70, 71, 72, 73, 74, 78, 82, 83, 84, 88, 89, 90, 94, 95, 98, 105, 106, 110, 112, 114, 116, 121, 128, 131, 134, 135, 138, 139, 141, 142, 144, 146, 148, 149, 159, 164, 165, 167], "method": [9, 10, 19, 21, 23, 25, 26, 29, 40, 44, 45, 46, 47, 48, 49, 51, 61, 62, 63, 64, 70, 81, 83, 84, 86, 94, 95, 101, 103, 105, 109, 112, 119, 121, 123, 126, 129, 131, 134, 135, 138, 142, 144, 146, 147, 148, 152], "adequ": 9, "void": [9, 16, 23, 24, 40, 44, 51, 70, 83, 84, 110, 131, 134, 142, 148, 152, 159, 160, 161, 162, 163, 164, 165, 166], "test1": 9, "num": [9, 40, 46, 69, 144, 152], "vect": 9, "captur": 9, "modul": [9, 52, 70, 104, 105, 106, 144, 168], "develop": [9, 10, 24, 25, 28, 42, 45, 47, 48, 52, 53, 54, 64, 104, 129], "cross": [9, 29, 46, 104], "platform": [9, 42], "environ": 9, "mechan": [9, 40, 52, 67], "across": [9, 10, 21, 26, 28, 29, 45, 64, 95, 104], "system": [9, 10, 27, 43, 44, 52, 58, 77, 80, 90, 97, 139], "object": [9, 11, 12, 19, 22, 23, 34, 38, 43, 44, 45, 47, 50, 51, 56, 62, 63, 70, 76, 77, 78, 79, 80, 84, 89, 91, 94, 95, 100, 107, 117, 126, 130, 142, 144, 148, 154, 168], "mark": [9, 29, 84, 95, 104], "current": [9, 10, 18, 19, 24, 25, 26, 47, 57, 64, 68, 70, 72, 73, 78, 83, 84, 88, 94, 95, 110, 124, 125, 126, 127, 128, 131, 134, 140, 141, 144, 148], "runtim": [9, 96], "subtract": [9, 46, 53, 64, 70, 94, 103, 104, 105, 106, 131, 144], "elaps": 9, "session": [9, 23, 39, 43, 47, 110], "within": [9, 14, 23, 40, 42, 44, 45, 47, 58, 64, 77, 80, 114, 152], "loop": [9, 10, 14, 15, 18, 19, 21, 23, 25, 31, 43, 64, 84, 94, 95, 102], "taken": [9, 14, 27], "Not": [9, 35, 40, 43, 47, 84, 115], "durat": 9, "bit": [9, 39, 49, 64, 72, 90, 94, 106, 131, 134, 141, 142, 148], "advanc": [9, 42, 56, 168], "memori": [9, 10, 39, 40, 42, 43, 44, 45, 51, 53, 54, 82, 84, 85, 110, 115, 123, 126, 168], "anywher": [9, 84], "li": [9, 28, 139], "choos": [9, 25, 28, 40, 45, 46, 47, 70, 94, 104, 106, 118, 119, 126, 128, 148], "front": [9, 16, 19, 24, 28, 40, 43, 60, 61, 62, 64, 66, 69, 70, 72, 73, 75, 76, 77, 80, 89, 140, 145, 152], "closer": [9, 43, 47, 64, 78, 128, 132], "silli": 9, "tradeoff": 9, "thought": [9, 52, 75, 110], "command": [9, 30, 45, 116, 159, 164, 165], "sort": [9, 11, 13, 20, 22, 26, 28, 29, 32, 38, 44, 48, 67, 88, 109, 112, 114, 115, 116, 118, 119, 120, 121, 122, 134, 145, 146, 147, 151, 159, 163, 164, 165, 168], "otherwis": [9, 27, 33, 39, 46, 68, 94, 95, 97, 101, 103, 110, 131, 135, 149], "demonstr": [9, 36, 43, 110, 131, 135, 139], "let": [9, 10, 14, 15, 17, 19, 24, 25, 26, 28, 31, 35, 36, 39, 40, 43, 46, 64, 69, 94, 95, 99, 100, 102, 103, 105, 106, 126, 131, 132, 136, 139, 141, 142, 144, 147, 149, 151, 152], "known": [9, 19, 33, 34, 35, 40, 46, 49, 52, 70, 76, 77, 78, 80, 84, 86, 88, 94, 110, 123], "pop": [9, 16, 17, 24, 25, 58, 62, 63, 64, 68, 70, 71, 73, 74, 77, 80, 84, 86, 88, 98, 141, 144], "want": [9, 10, 19, 28, 30, 36, 39, 40, 43, 46, 47, 58, 64, 70, 77, 80, 83, 84, 94, 95, 102, 103, 104, 105, 106, 110, 124, 129, 132, 144, 148, 152, 167, 168], "expect": [9, 28, 39, 43, 46, 53, 61, 64, 99, 106, 142], "stai": [9, 47, 64, 75, 126], "attempt": [9, 90, 95, 110, 126], "There": [9, 10, 13, 16, 19, 25, 26, 28, 29, 33, 35, 39, 43, 45, 46, 54, 64, 77, 80, 83, 94, 102, 104, 110, 114, 115, 123, 125, 128, 129, 132, 142, 144, 148, 152], "coupl": [9, 19, 46, 84, 95, 106, 141, 145], "point": [9, 10, 17, 21, 22, 24, 25, 26, 28, 39, 43, 44, 45, 46, 47, 49, 51, 52, 64, 66, 69, 83, 84, 94, 102, 103, 104, 105, 106, 108, 114, 115, 119, 122, 124, 126, 131, 134, 138, 140, 144, 148, 152, 159, 160, 164, 165], "decreas": [9, 22, 28, 31, 36, 70], "scienc": [10, 27, 31, 42, 45, 47, 48, 51, 53, 56, 57, 58, 68, 70, 75, 77, 80, 94, 129, 139, 168], "student": [10, 27, 41, 45, 70, 77, 80, 95, 110, 167], "ones": [10, 67, 78], "interest": [10, 21, 26, 27, 28, 31, 35, 66, 70, 77, 80, 92, 94, 100, 106, 110, 116, 128, 134, 137, 141, 145, 148, 150], "aris": [10, 52, 53, 54, 57, 70, 84, 116], "better": [10, 17, 28, 39, 40, 42, 45, 46, 47, 49, 54, 55, 70, 84, 88, 110, 114, 118, 126, 128, 132, 145, 148, 152, 159, 164, 165], "answer": [10, 46, 58, 64, 67, 70, 71, 83, 94, 99, 100, 114, 116, 125, 126, 128, 134, 139, 141, 147, 152], "rememb": [10, 21, 39, 46, 64, 70, 83, 84, 94, 95, 100, 103, 106, 110, 124, 131, 134, 142, 146, 147, 148], "produc": [10, 22, 26, 29, 31, 36, 40, 47, 49, 53, 64, 70, 115, 128], "desir": [10, 44, 45, 46, 51, 64], "hand": [10, 24, 26, 37, 43, 46, 52, 58, 64, 68, 83, 105, 125, 129, 131], "been": [10, 17, 21, 24, 25, 26, 31, 36, 44, 45, 55, 58, 64, 68, 69, 70, 72, 73, 74, 77, 78, 80, 83, 84, 95, 110, 115, 125, 128, 129, 131, 134, 148], "encod": [10, 53, 58], "programm": [10, 39, 43, 46, 51, 52, 55, 94, 99, 106], "explor": [10, 19, 21, 24, 25, 26, 31, 32, 47, 57, 77, 80, 106, 107, 148, 168], "familiar": [10, 30, 39, 52, 95, 110, 125, 132], "accumul": [10, 98, 102], "variabl": [10, 19, 21, 23, 24, 26, 39, 40, 43, 44, 46, 47, 51, 57, 64, 68, 83, 84, 95, 98, 102, 115, 131, 146, 155, 156, 157, 158], "solut": [10, 11, 17, 24, 26, 28, 29, 35, 42, 52, 53, 54, 58, 64, 66, 84, 92, 94, 97, 99, 100, 101, 102, 104, 114, 144, 168], "strang": [10, 64], "upon": [10, 39, 40, 43, 44, 47, 49, 54, 61, 64, 69, 70, 88, 105], "inspect": 10, "essenti": [10, 39, 44, 110, 131], "obviou": [10, 64], "poor": [10, 147], "did": [10, 43, 49, 52, 64, 84, 94, 103, 114], "identifi": [10, 31, 39, 43, 44, 54, 64, 94, 139, 144], "assist": [10, 53, 57, 64, 71, 126], "readabl": 10, "dure": [10, 45, 64, 70, 98, 119, 123, 124, 125, 127, 128, 148], "necessari": [10, 21, 26, 44, 45, 46, 49, 52, 53, 70, 77, 80, 83, 84, 108, 110, 112, 114, 121, 123, 125, 128, 129, 131], "ask": [10, 39, 40, 46, 47, 49, 84, 94, 116, 125, 139, 141, 152], "criteria": [10, 94, 118], "foo": 10, "introductori": 10, "cours": [10, 15, 26, 27, 31, 46, 58, 126, 134], "itself": [10, 21, 39, 40, 43, 45, 46, 52, 55, 84, 94, 96, 99, 101, 102, 105, 106, 112, 125, 141, 142, 148, 152], "hope": [10, 70], "strive": 10, "those": [10, 17, 21, 37, 39, 47, 52, 54, 57, 58, 68, 76, 78, 88, 94, 123, 124, 126, 136], "perhap": [10, 52, 54, 70, 78, 110], "fewer": [10, 16, 54, 110], "perspect": [10, 52, 55], "dictat": [10, 45, 64], "care": [10, 39, 84, 141], "variat": [10, 19, 35, 69, 70, 75, 109, 110, 112, 115, 121, 145], "altern": [10, 45, 52, 59, 81, 86, 94, 108, 110, 112, 118, 121], "track": [10, 19, 21, 23, 24, 25, 45, 58, 70, 72, 94, 100, 104, 114, 131, 133, 134, 141, 144, 146, 148], "librari": [10, 39, 40, 43, 45, 52, 61, 62, 63, 65, 70, 89, 105, 116, 159, 164, 165], "arbitrari": [10, 21, 45, 110], "twice": [10, 64, 70], "fraction": [10, 15, 26, 43, 49, 56, 94, 168], "embed": 10, "calcul": [10, 52, 67, 94, 96, 99, 107, 114, 146, 147, 168], "job": [10, 30, 94, 103], "No": [10, 21, 26, 28, 58, 95, 115, 123, 124, 125, 126, 127, 128], "carefulli": [10, 21, 64, 83, 147, 148, 152], "condit": [10, 25, 39, 43, 83, 84, 94, 95, 96, 99, 103, 132, 148], "incorrect": [10, 43, 49, 152], "pleas": [10, 43, 45, 100], "sigma": 10, "mathemat": [10, 39, 44, 45, 103, 106, 132, 134, 144, 146], "termin": [10, 96, 110], "ever": [10, 27, 29, 43, 83, 96, 104], "immedi": [10, 49, 64, 69, 94, 95, 103, 115, 125], "afterward": [10, 78], "plug": 10, "similarli": [10, 40, 45, 47, 84, 114, 134, 148], "blue": [10, 26, 124, 125, 126, 127, 157, 159, 161, 162, 163, 164, 165, 166], "area": [10, 30, 31, 32, 42, 43, 104, 129, 139], "rectangl": [10, 104], "learn": [10, 19, 27, 30, 42, 48, 54, 58, 67, 85, 86, 95, 97, 99, 105, 133, 139, 145], "multipli": [10, 26, 36, 46, 64], "height": [10, 26, 100, 131, 132, 133, 134, 140, 147, 153, 155, 156, 157, 161, 163, 166], "width": [10, 45, 106, 160], "half": [10, 26, 49, 70, 83, 106, 109, 114, 119, 123, 125, 126, 131, 147, 160], "henc": [10, 39, 40, 43, 46, 52, 144], "close": [10, 45, 46, 57, 60, 67, 68, 70, 95, 104, 106, 142, 152], "equat": [10, 40, 64, 102, 104, 131, 132, 138], "sumofn3": 10, "sum_n": 10, "formula": [10, 108, 132], "differnet": 10, "55": [10, 70, 110, 125, 127], "000000": 10, "000001": 10, "500500": 10, "50005000": 10, "record": 10, "shorter": [10, 24, 70, 99, 134], "appear": [10, 45, 46, 47, 57, 61, 64, 66, 68, 70, 75, 77, 80, 84, 90], "hardli": 10, "But": [10, 13, 26, 43, 45, 47, 58, 84, 95, 99, 100, 103, 131, 144, 147], "intuit": 10, "older": [10, 39, 70, 78], "machin": [10, 42, 43, 44, 45, 50, 52, 67, 94], "dai": [10, 26, 30, 69, 70, 100, 136, 139], "compil": [10, 24, 39, 40, 43, 44, 45, 50], "instead": [10, 23, 26, 39, 40, 43, 58, 64, 69, 84, 95, 98, 104, 106, 110, 114, 128, 152], "judg": 10, "alon": 10, "math": [11, 58, 132, 168], "anagram": [11, 110, 129, 168], "detect": [11, 39, 64, 100, 103, 168], "off": [11, 33, 39, 54, 67, 68, 95, 98, 100, 106, 126, 144, 148, 168], "summari": [11, 38, 39, 56, 79, 91, 107, 115, 117, 130, 154, 168], "self": [11, 21, 56, 105, 107, 117, 130, 142, 152, 168], "exercis": [11, 15, 21, 26, 31, 38, 46, 56, 64, 69, 79, 83, 84, 91, 106, 107, 110, 117, 125, 126, 130, 131, 134, 141, 145, 148, 152, 154, 168], "glossari": [11, 38, 56, 79, 91, 107, 117, 130, 154, 168], "spars": [12, 13, 16, 17], "connect": [12, 13, 16, 17, 20, 21, 22, 23, 24, 27, 28, 29, 30, 32, 33, 37, 38, 47, 88, 95, 105, 140, 153, 168], "master": [12, 22, 23], "vertic": [12, 13, 14, 15, 16, 17, 19, 21, 22, 23, 24, 25, 28, 31, 33, 36, 37, 128, 160], "vertex": [12, 13, 14, 15, 16, 17, 18, 19, 21, 22, 23, 24, 25, 26, 28, 29, 31, 33, 34, 36, 37, 160], "maintain": [12, 22, 40, 45, 49, 57, 67, 71, 73, 84, 87, 119, 124, 134, 136, 146], "weight": [12, 13, 16, 19, 20, 22, 23, 24, 28, 30, 32, 33, 37, 70, 104, 108, 110, 157], "compactli": 12, "link": [12, 15, 19, 21, 24, 28, 31, 48, 81, 82, 85, 86, 87, 88, 148, 155, 156, 157, 158, 168], "directli": [12, 19, 25, 39, 43, 45, 46, 47, 66, 88, 94, 99, 141, 148], "easiest": [13, 24, 27, 28, 34, 46, 83, 84, 134], "dimension": 13, "row": [13, 16, 22, 34, 70, 94, 95, 104, 162], "column": [13, 16, 22, 34, 95, 162], "cell": [13, 17], "intersect": [13, 39], "indic": [13, 21, 24, 25, 26, 36, 39, 40, 43, 44, 45, 55, 94, 95, 114, 124, 125, 148, 153], "edg": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 28, 30, 31, 33, 36, 37, 45, 95, 140, 147, 153], "node": [13, 15, 16, 19, 21, 22, 24, 25, 26, 28, 31, 37, 81, 82, 83, 85, 86, 90, 91, 94, 131, 132, 133, 134, 136, 138, 139, 140, 141, 144, 146, 147, 148, 152, 153, 154, 160, 168], "fill": [13, 17, 29, 45, 89, 94, 104, 105, 110, 134, 136, 148], "full": [13, 16, 26, 45, 49, 59, 108, 109, 110, 112, 128, 134, 148], "real": [13, 17, 19, 34, 39, 46, 67, 68, 69, 70, 71, 136, 144], "involv": [13, 40, 46, 94, 101, 103, 153], "prioriti": [14, 19, 28, 140, 143, 150, 154, 168], "queue": [14, 15, 16, 19, 21, 24, 25, 28, 45, 48, 59, 60, 61, 65, 66, 67, 69, 70, 71, 75, 76, 79, 81, 86, 103, 139, 140, 143, 150, 154, 168], "construct": [14, 17, 21, 24, 25, 28, 36, 41, 42, 45, 46, 47, 50, 53, 55, 57, 58, 66, 68, 70, 71, 78, 84, 88, 94, 96, 102, 103, 109, 110, 115, 134, 136, 141, 144, 147, 148], "delmin": [14, 19, 28, 134, 135], "togeth": [14, 23, 30, 31, 36, 39, 43, 44, 46, 47, 70, 82, 90, 102, 103, 109, 110, 125, 144], "decreasekei": [14, 19, 28], "e": [14, 15, 18, 21, 25, 28, 37, 43, 44, 53, 59, 64, 74, 95, 131, 133, 140, 141, 159, 160, 164, 165], "combin": [14, 15, 31, 43, 45, 47, 67, 94, 119, 125, 152], "observ": [15, 21, 31, 45, 61, 64, 68, 78, 90, 136], "white": [15, 16, 18, 21, 24, 25, 26, 43, 158, 159, 160, 164, 165], "examin": [15, 19, 24, 26, 28, 40, 95, 114, 124, 125, 131, 141, 144, 152], "insid": [15, 25, 30, 40, 45, 52, 57, 68, 138, 139, 145], "dequeu": [15, 24, 67, 69, 73, 86, 145, 146], "Of": [15, 26, 31, 46, 70, 134], "task": [15, 32, 39, 40, 44, 46, 54, 77, 79, 80, 90, 148, 168], "chain": [15, 109, 110, 112], "normal": [15, 21, 43, 159, 164, 165], "buildgraph": [15, 17, 20, 24], "chessboard": [16, 25, 34], "legal": [16, 25, 26, 34], "correspond": [16, 20, 24, 26, 40, 42, 57, 58, 60, 64, 67, 68, 94, 103, 106, 110, 131, 139, 141, 144], "12": [16, 21, 26, 28, 30, 45, 46, 47, 58, 63, 70, 73, 84, 110, 114, 115, 123, 124, 126, 127, 128, 144], "board": [16, 25, 26, 34], "knightgraph": 16, "pass": [16, 22, 23, 28, 44, 46, 49, 51, 56, 67, 69, 95, 112, 114, 115, 116, 119, 121, 124, 125, 127, 128, 144, 148, 159, 168], "helper": [16, 21, 46, 57, 64, 70, 131, 134, 148], "genlegalmov": 16, "coordtonum": 16, "bdsize": 16, "ktgraph": 16, "fals": [16, 23, 24, 25, 33, 39, 43, 44, 46, 47, 51, 57, 70, 72, 73, 83, 84, 94, 95, 103, 110, 115, 116, 135, 161, 162, 166], "col": 16, "nodeid": 16, "newposit": 16, "newid": 16, "addedg": [16, 23, 24, 33, 160], "eight": [16, 25, 26, 34], "legalcoord": 16, "sure": [16, 21, 40, 46, 49, 57, 64, 67, 84, 88, 94, 100, 106, 110, 131, 133, 136, 140, 144, 148], "id": [16, 23, 24, 31, 40, 45, 160], "numtocoord": 16, "make_pair": 16, "bool": [16, 23, 24, 43, 44, 46, 47, 51, 70, 83, 84, 110, 116, 148, 160, 162], "els": [16, 21, 23, 25, 47, 64, 83, 84, 95, 110, 131, 134, 136, 141, 142, 144, 148, 152, 160, 163], "coord": 16, "newmov": 16, "myvec": 16, "unsign": [16, 23, 24, 43, 116], "newx": 16, "newi": 16, "336": 16, "fulli": [16, 52, 60, 64, 102, 144, 152], "096": 16, "matrix": [16, 17, 20, 22, 33, 38, 168], "percent": 16, "ran": 16, "version": [16, 24, 25, 26, 28, 31, 39, 45, 69, 104, 106, 114, 144, 148, 152, 168], "previous": [16, 19, 26, 47, 83], "breadth": [16, 19, 20, 21, 22, 25, 29, 30, 32, 35, 38, 168], "search": [16, 19, 20, 22, 25, 26, 29, 30, 31, 32, 34, 35, 36, 38, 44, 83, 84, 88, 95, 109, 110, 111, 112, 113, 125, 129, 131, 132, 134, 138, 140, 146, 151, 154, 168], "df": [16, 18, 20, 21, 22, 25, 31, 36, 160], "fstream": [16, 24, 162], "public": [16, 23, 24, 44, 46, 47, 70, 84, 110, 134, 142, 144, 148, 152, 160, 162], "float": [16, 24, 43, 44, 46, 51, 70, 144], "connectedto": [16, 23, 24], "color": [16, 21, 24, 25, 26, 45, 104, 106, 125, 155, 156, 157, 158, 159, 164, 165], "dist": [16, 19, 24], "pred": [16, 24], "g": [16, 22, 24, 28, 31, 36, 37, 53, 64, 74, 95, 96, 133, 159, 164, 165], "grei": [16, 24, 160], "black": [16, 21, 24, 26, 52, 105, 127, 155, 156, 157, 160, 161, 162, 163, 164, 165], "addneighbor": [16, 23, 24], "nbr": [16, 23, 24], "getconnect": [16, 19, 23, 24, 25, 26, 28], "getid": [16, 23, 24], "getweight": [16, 19, 23, 24, 28], "friend": [16, 23, 24, 44, 46, 94], "ostream": [16, 23, 24], "stream": [16, 23, 24, 46], "vert": [16, 23, 24, 33], "vertlist": [16, 23, 24], "numvertic": [16, 23, 24], "direct": [16, 19, 21, 22, 24, 28, 31, 33, 36, 37, 39, 45, 49, 59, 67, 88, 95, 103, 112, 121, 131, 153, 160, 167], "addvertex": [16, 23, 24, 33, 160], "newvertex": [16, 23, 24], "getvertex": [16, 23, 24, 33, 160], "getvertic": [16, 23, 24, 33], "grph": [16, 23, 24], "bf": [16, 21, 22, 24], "vertqueu": [16, 24], "push": [16, 24, 26, 57, 58, 62, 63, 64, 68, 70, 71, 73, 74, 78, 98, 134, 136, 141, 142, 144], "currentvert": [16, 19, 24, 28], "kt": 16, "63": [16, 25, 94], "letter": [17, 24, 35, 39, 40, 66, 95, 104], "path": [17, 19, 21, 22, 24, 25, 26, 27, 28, 29, 31, 32, 34, 35, 37, 38, 94, 95, 139, 140, 153, 168], "puzzl": [17, 34, 35, 49, 100], "fool": [17, 24, 35], "sage": [17, 24, 35], "undirect": 17, "unweight": [17, 32, 37], "sever": [17, 24, 31, 33, 37, 45, 94, 129, 139, 148, 151, 153], "assumpt": [17, 67, 70, 115], "fine": [17, 58, 83, 94], "110": [17, 159, 164, 165], "roughli": [17, 134], "speak": 17, "huge": [17, 31, 39], "outsid": [17, 23, 43, 44, 45, 46, 95, 133], "label": [17, 30, 43, 47, 94, 160], "underscor": 17, "pop_": 17, "_": [17, 24], "wildcard": 17, "pope": [17, 24], "put": [17, 21, 46, 47, 64, 69, 70, 94, 109, 110, 112, 128, 131, 133, 136, 144, 147, 148, 149, 151, 152], "scheme": [17, 68, 94, 108], "built": [17, 39, 46, 47, 50, 51, 53, 55, 56, 58, 84, 110, 144, 168], "under": [17, 26, 46, 52, 74, 100, 110, 112, 118, 121, 132, 139, 148, 168], "world": [17, 27, 31, 39, 46, 67, 70, 95, 100, 144, 168], "wonder": [17, 27, 100, 152], "112": [17, 30], "53": 17, "286": 17, "inde": 17, "happen": [18, 24, 25, 26, 39, 40, 43, 45, 46, 52, 60, 64, 69, 77, 78, 80, 84, 90, 92, 99, 103, 106, 110, 115, 126, 128, 131, 152], "dfsvisit": [18, 21, 160], "recurs": [18, 21, 25, 29, 45, 48, 93, 94, 95, 96, 97, 100, 102, 103, 104, 105, 112, 114, 119, 125, 126, 131, 139, 140, 141, 142, 143, 144, 146, 148, 152, 153, 168], "maximum": [18, 45, 58, 70, 114, 124, 131, 140, 147, 153], "shortest": [19, 21, 22, 24, 27, 29, 32, 38, 94, 106, 168], "destin": [19, 84, 100], "control": [19, 39, 45, 46, 50, 52, 53, 77, 80, 84], "theoret": 19, "infin": [19, 28], "practic": [19, 42, 46, 110], "distanc": [19, 24, 28, 37, 95, 104], "finish": [19, 21, 22, 25, 26, 31, 36, 45, 70, 90, 92, 95, 100, 105, 128, 131, 134, 136, 144, 152], "correctli": [19, 45, 52, 57, 64, 68, 84, 86, 100, 103, 114], "predecessor": [19, 21, 24, 28], "pythond": [19, 24, 25, 28], "priorityqueu": [19, 28, 146], "agraph": 19, "pq": [19, 28], "setdist": [19, 24, 28], "buildheap": [19, 28, 134, 135, 138, 146], "getdist": [19, 24, 28], "isempti": [19, 28, 83, 84, 88, 135], "nextvert": [19, 28], "newdist": 19, "setpr": [19, 24, 28], "heap": [19, 138, 140, 143, 146, 150, 154, 168], "tree": [19, 20, 21, 22, 24, 25, 26, 27, 31, 32, 37, 38, 44, 48, 90, 94, 104, 106, 134, 136, 138, 140, 141, 142, 143, 145, 146, 150, 151, 153, 168], "tupl": [19, 37, 57, 96, 160], "secondli": 19, "thu": [19, 28, 39, 40, 45, 83, 95, 99, 145], "reduc": [19, 28, 31, 40, 46, 49, 94, 100, 103, 106, 110, 128, 131], "toward": [19, 77, 80, 94, 99, 100, 103, 105, 126, 131, 134, 144], "walk": [19, 40, 94, 144], "applic": [19, 36, 45, 47, 52, 69, 153], "guid": [19, 45, 148], "sy": [19, 28], "maxint": 19, "updat": [19, 28, 131, 138, 148, 161, 166], "lowest": [19, 28, 46, 49, 64, 78, 94, 119, 134, 145], "overal": [19, 103, 129], "bubbl": [19, 36, 112, 118, 119, 120, 121, 122, 127, 130, 136, 159, 168], "neighbor": [19, 21, 22, 24, 25, 26, 28, 69, 160], "obvious": [19, 46], "discov": [19, 24, 83, 84, 110, 115, 126, 148], "cheaper": 19, "adjust": [19, 28, 70, 131], "accordingli": 19, "exit": [19, 95], "trace": [19, 28, 31, 45, 94, 103, 131, 138, 144], "convinc": [19, 28, 131, 148], "yourself": [19, 26, 28, 30, 45, 70, 105, 131, 141, 148], "introduc": [19, 45, 46, 47, 111], "neg": [19, 45, 46, 49], "never": [19, 100, 110, 148], "rout": [19, 30], "messag": [19, 22, 28, 30, 32, 43], "internet": [19, 27, 28, 30, 31], "implic": 19, "router": [19, 22, 28, 30], "purpos": [19, 40, 46, 52, 96, 110, 116, 133], "serv": [19, 24, 70, 77, 80, 126], "draw": [20, 45, 93, 104, 105, 106, 138, 141, 144, 160], "15": [20, 21, 28, 39, 64, 67, 68, 83, 84, 94, 104, 106, 110, 114, 115, 116, 123, 124, 126, 128, 159, 164, 165], "13": [20, 21, 26, 28, 30, 47, 58, 70, 83, 84, 110, 115, 123, 126, 131], "deriv": [20, 44, 47, 131, 132, 134, 138, 139, 146], "topolog": [20, 22, 29, 32, 38, 168], "strongli": [20, 22, 29, 32, 38, 168], "compon": [20, 22, 26, 29, 32, 37, 38, 39, 44, 45, 95, 103, 125, 153, 168], "dijkstra": [20, 28, 32, 38, 168], "prim": [20, 38, 168], "span": [20, 22, 32, 38, 155, 156, 157, 158, 168], "send": [20, 22, 28, 30, 46, 52, 70], "email": [20, 30, 52], "knight": [20, 21, 38, 168], "tour": [20, 21, 38, 168], "suitabl": 20, "deepest": [21, 22, 25, 147], "branch": [21, 22, 25, 26, 96, 104, 106, 139, 140], "easier": [21, 40, 95, 96, 99, 148, 160], "Its": [21, 31, 109, 134], "deepli": [21, 25], "group": [21, 22, 39, 40, 44, 46, 51, 74, 96, 110, 114], "forest": [21, 22, 31, 36], "discoveri": [21, 22], "encount": [21, 64, 110, 124, 131], "properti": [21, 22, 44, 46, 47, 58, 65, 73, 78, 88, 105, 131, 139, 140, 141, 148, 153, 154, 168], "chose": 21, "inherit": [21, 44, 46, 56, 86, 168], "extend": [21, 24, 43, 44, 47, 49, 57, 58, 67, 94, 110, 146], "chosen": [21, 46, 67, 70, 94, 110, 112, 128], "left": [21, 29, 37, 43, 45, 46, 57, 58, 62, 64, 66, 67, 68, 69, 75, 84, 98, 104, 105, 106, 110, 114, 123, 124, 125, 126, 131, 132, 133, 134, 136, 140, 141, 142, 144, 147, 148, 152, 158, 160, 161, 163, 164, 166], "unusu": 21, "avertex": 21, "dfsgraph": [21, 160], "natur": [21, 26, 45, 70, 76, 94, 99, 106, 114, 134, 139, 144], "lead": [21, 84, 95, 134, 140], "back": [21, 24, 25, 28, 30, 45, 47, 49, 58, 61, 64, 67, 69, 73, 78, 84, 86, 89, 94, 95, 96, 103, 105, 106, 110, 119, 124, 125, 131, 133, 134, 136, 138, 144, 145, 152], "startvertex": 21, "almost": [21, 40, 45, 57, 78, 100, 110], "inner": [21, 45], "deeper": [21, 25, 55, 153], "level": [21, 24, 25, 26, 30, 31, 39, 44, 47, 52, 53, 55, 64, 100, 105, 106, 131, 134, 139, 140, 142, 144, 147, 148, 153], "wherea": [21, 25, 61, 138], "stack": [21, 25, 48, 57, 58, 59, 60, 61, 64, 65, 67, 68, 71, 75, 76, 77, 79, 80, 81, 86, 93, 96, 100, 103, 104, 107, 139, 144, 168], "don": [21, 43, 45, 64, 95], "implicit": 21, "action": [21, 25, 39, 45, 47, 49, 69, 94, 110, 123, 126, 127, 144, 148, 152], "dot": 21, "done": [21, 25, 28, 40, 43, 44, 45, 47, 61, 64, 77, 80, 94, 95, 106, 109, 110, 114, 124, 131, 134, 136, 144, 148], "non": [21, 35, 40, 46, 51, 131, 146, 148], "14": [21, 26, 28, 43, 45, 58, 84, 94, 114, 115, 124, 126, 127, 148], "grai": [21, 23, 24, 25, 105], "16": [21, 28, 39, 43, 57, 58, 64, 68, 83, 102, 103, 110, 114, 125, 126, 128, 131, 148], "bring": [21, 95, 131, 133, 138, 152, 159, 164, 165], "17": [21, 28, 39, 59, 64, 70, 72, 81, 83, 84, 88, 100, 110, 114, 115, 124, 126, 128, 131, 144], "18": [21, 30, 43, 64, 70, 100, 114, 115, 124, 127], "19": [21, 53, 58, 115, 123, 124, 126, 127, 128, 148], "recogn": [21, 47, 65, 68, 106, 123, 144], "noth": [21, 40, 43, 57, 64, 72, 73, 74, 88, 100], "reach": [21, 22, 25, 26, 28, 39, 58, 69, 70, 84, 96, 102, 105, 112, 124, 131, 148], "here": [21, 30, 35, 39, 40, 43, 45, 46, 50, 52, 64, 70, 84, 88, 95, 100, 104, 105, 106, 110, 115, 116, 125, 134, 144, 148], "21": [21, 43, 94, 102, 125], "25": [21, 26, 58, 72, 94, 102, 108, 110, 148], "22": [21, 43, 68, 70], "23": [21, 26, 43, 53, 144, 148], "24": [21, 26, 30, 102], "displai": [21, 23, 45, 77, 80, 86, 104], "parenthesi": [21, 22, 57, 64, 68, 144, 152], "children": [21, 22, 24, 26, 47, 69, 131, 134, 136, 139, 140, 141, 142, 144, 148, 152, 153], "parent": [21, 22, 47, 51, 131, 134, 136, 140, 144, 148, 153], "visual": [21, 24, 26, 44, 45, 46, 95, 105, 107, 123, 124, 125, 126, 127, 128, 159, 160, 164, 165, 168], "attach": [21, 40, 45, 47, 70, 84], "orang": [21, 26, 124, 125, 127, 159, 160, 161, 162, 163, 164, 165], "brown": [21, 26, 36, 125, 128, 160, 162, 163, 166], "mirror": 21, "support": [21, 26, 30, 39, 40, 43, 52, 95, 110, 123, 124, 125, 126, 127, 128], "video": [21, 26, 45, 90, 95, 123, 124, 125, 126, 127, 128], "acycl": [22, 28, 36, 37], "cycl": [22, 28, 37, 69, 90], "proce": [22, 24, 28, 84, 132, 148], "cyclic": 22, "digraph": [22, 37], "dag": [22, 37], "arc": [22, 37], "succinct": 22, "passag": 22, "subset": [22, 28, 31, 37, 119], "scc": [22, 31], "uncontrol": [22, 28], "flood": [22, 28], "live": [22, 28, 103], "ttl": [22, 28], "broadcast": [22, 28, 32], "host": [22, 28, 30, 31], "distant": [22, 26, 28], "listen": [22, 28, 90], "copi": [22, 24, 28, 39, 40, 44, 45, 86, 89, 104, 163], "until": [22, 24, 25, 28, 36, 39, 46, 47, 49, 58, 64, 68, 69, 77, 80, 83, 84, 94, 101, 102, 103, 105, 106, 109, 110, 112, 115, 119, 121, 123, 126, 134, 136, 139, 148], "fundament": [22, 37, 42, 47, 53, 71, 78, 125, 153], "payload": [22, 37, 146, 148, 153], "abstract": [23, 27, 32, 38, 43, 44, 45, 47, 48, 51, 52, 56, 62, 63, 65, 79, 85, 91, 111, 117, 133, 137, 141, 151, 168], "hold": [23, 29, 43, 51, 63, 64, 66, 69, 84, 87, 88, 89, 104, 109, 110, 125, 126, 140, 148], "constructor": [23, 44, 46, 47, 49, 51, 70, 84, 134, 142, 146, 148], "overload": [23, 44, 46, 51, 56, 86, 95, 110, 112, 168], "error": [23, 39, 43, 45, 46, 64, 67, 96, 144, 148, 155, 156, 158], "shade": [23, 31, 123, 124, 148], "box": [23, 40, 52, 103], "pntr": 23, "vpntr": 23, "six": [23, 37, 58, 69, 70, 94, 110, 124, 142, 148], "properli": [23, 46, 49, 57, 60, 67, 68, 84, 134, 146, 148], "With": [24, 25, 37, 53, 69, 70, 84, 94, 110, 134, 144, 147, 148, 152, 153], "attent": [24, 31, 47, 55, 62, 63, 68, 90, 116, 125, 135, 148], "ladder": [24, 38, 168], "prototyp": 24, "remark": 24, "imagin": [24, 45, 78], "grandchildren": 24, "progress": [24, 40, 45, 84, 94, 99, 103], "undiscov": 24, "crucial": [24, 84, 102], "place": [24, 25, 26, 27, 30, 44, 45, 46, 47, 52, 58, 59, 60, 64, 67, 70, 77, 78, 80, 83, 84, 94, 95, 98, 100, 110, 115, 119, 123, 124, 125, 126, 127, 129, 136, 144, 147, 148, 159], "systemat": [24, 82, 84, 94, 95, 109, 110, 129], "unexplor": 24, "effect": [24, 25, 40, 43, 45, 64, 84, 94, 114, 136, 144], "schedul": [24, 36, 77, 80, 148], "enqueu": [24, 67, 69, 86, 145, 146], "getcolor": [24, 25, 26], "setcolor": [24, 25], "pool": [24, 35], "foil": 24, "foul": 24, "cool": 24, "expand": [24, 25, 43, 95, 99], "along": [24, 30, 58, 64, 84, 94, 95, 103, 112, 114, 123, 125, 134, 144, 148, 152], "expans": 24, "poll": [24, 35], "fail": [24, 25, 83, 84, 90, 94, 95], "neither": [24, 29, 40, 45, 104], "comfort": [24, 48], "amaz": 24, "arrow": [24, 45, 94, 125, 126, 128, 139, 163, 164, 166], "root": [24, 26, 40, 44, 52, 54, 95, 131, 134, 136, 139, 140, 141, 142, 144, 147, 148, 152, 153], "syntact": [24, 46], "98": 24, "window": [24, 46, 106], "past": [24, 39, 84, 94, 134, 144, 151], "getblank": 24, "str": [24, 46, 144, 152, 162], "blank": [24, 64, 67], "arr": [24, 39], "pole": [24, 35, 100], "pall": 24, "fall": [24, 99, 122, 127, 128], "pale": [24, 35], "sale": [24, 35], "page": [24, 30, 31, 70, 78, 139, 160, 162, 168], "sizeof": 24, "explicitli": [25, 64, 84, 98, 100, 148], "forbid": 25, "subsequ": [25, 40, 119, 126, 131], "dead": [25, 34, 95], "knighttour": [25, 26], "wish": [25, 39, 83, 84, 95], "limit": [25, 31, 45, 112, 121, 132, 146, 147, 152], "64": [25, 30, 39, 100, 110], "statu": [25, 95], "success": [25, 84, 95, 109, 110], "enough": [25, 30, 99, 100, 101, 105, 114, 131], "unvisit": [25, 26], "yet": [25, 26, 28, 46, 47, 53, 64, 84, 94, 137, 144], "backtrack": 25, "implicitli": [25, 100], "nbrlist": 25, "append": [25, 26, 39, 58, 64, 70, 84, 86, 134], "len": [25, 95, 106, 110, 141], "prepar": [25, 28, 160], "elect": 25, "around": [25, 26, 45, 55, 83, 99, 102, 104, 106, 131, 146, 147, 152], "symmetr": [25, 106, 131, 142, 148], "modif": [25, 49, 83, 84, 87, 110, 112, 121, 123, 152], "circular": [25, 83, 90, 96, 99], "tile": 25, "topic": [26, 30, 42, 50], "regard": [26, 45, 55, 83], "sensit": 26, "five": [26, 66, 70, 94, 100, 124, 144, 153], "fast": [26, 39, 45, 51, 52, 69, 90, 94, 110], "wait": [26, 45, 57, 64, 68, 69, 70, 77, 80], "hour": [26, 40, 70], "far": [26, 39, 40, 46, 64, 74, 83, 95, 106, 134], "chess": [26, 34], "corner": [26, 105], "binari": [26, 46, 53, 59, 79, 81, 103, 109, 110, 111, 112, 113, 117, 125, 129, 131, 138, 140, 141, 142, 146, 147, 148, 150, 151, 152, 153, 154, 168], "estim": [26, 70], "rapidli": 26, "5x5": 26, "deep": [26, 95, 139], "6x6": 26, "regular": [26, 88, 133], "8x8": 26, "46": [26, 70, 110, 125], "multipl": [26, 27, 40, 44, 45, 51, 53, 64, 104, 116, 119, 123, 134, 144], "won": [26, 99, 160], "luckili": [26, 110, 114], "orderbyavail": 26, "critic": [26, 125, 153], "ensur": [26, 28, 40, 43, 64, 110, 131, 132, 134], "fewest": [26, 94], "avail": [26, 39, 45, 52, 64, 68, 105, 110, 168], "product": [26, 46], "reslist": 26, "revers": [26, 31, 40, 58, 64, 68, 71, 78, 81, 84, 103, 104, 110], "earli": [26, 123, 142], "strand": 26, "hop": [26, 30], "util": [26, 39, 45, 51, 52, 55, 67, 105, 110, 125, 160, 161, 163, 166], "knowledg": [26, 27, 52], "heurist": 26, "human": [26, 27, 42, 90, 153], "field": [26, 84], "artifici": 26, "intellig": 26, "warnsdorff": 26, "h": [26, 96, 110, 118, 132, 147, 159, 163, 164, 165], "publish": [26, 168], "hi": [26, 69, 95], "1823": 26, "depict": 26, "portrai": [26, 128], "spot": [26, 95, 160], "wherein": 26, "priorit": 26, "individu": [26, 28, 39, 45, 47, 95, 115, 119, 124, 125, 144], "shape": [26, 56, 104, 106, 159, 160, 161, 162, 163, 164, 165, 166, 168], "focus": [26, 44, 55], "circl": [26, 69, 99, 139, 160, 162], "higlight": 26, "hexagon": 26, "triangl": [26, 45, 93, 104, 107, 153, 168], "lambda": [26, 110], "intern": [27, 43, 46, 47, 70, 95, 145, 152, 168], "wide": [27, 31], "varieti": [27, 45, 75, 90], "road": [27, 37], "airlin": 27, "flight": 27, "citi": [27, 37, 129], "standard": [27, 39, 43, 45, 46, 48, 51, 61, 62, 63, 65, 70, 73, 84, 105, 106, 128, 141], "difficult": [27, 36, 52, 92, 97, 101, 106, 110, 131, 148], "rel": [27, 52, 60, 64, 75, 83, 84, 87, 88, 89, 92, 115, 153], "site": [27, 31], "quickest": 27, "prerequisit": [27, 37], "interdepend": 27, "among": [27, 39, 69], "luther": [27, 30, 31, 139, 168], "colleg": [27, 30, 31, 41, 45, 95, 168], "onlin": [28, 168], "game": [28, 45, 49, 52, 69], "radio": 28, "face": 28, "transfer": [28, 30, 100], "piec": [28, 34, 40, 46, 47, 84, 86, 90, 94, 95, 100, 102, 104, 105, 109, 110, 114, 142], "anyon": 28, "everyon": [28, 29, 104], "player": [28, 34], "tune": 28, "reconstruct": 28, "song": [28, 90], "appreci": [28, 85], "propos": 28, "receiv": [28, 46, 49, 52, 64], "simplest": [28, 77, 80, 100], "network": [28, 30, 42, 52, 77, 80, 139], "sent": [28, 40, 46, 95], "cheapest": 28, "hundr": [28, 67], "lot": [28, 30, 45, 68, 88, 94, 131, 145], "traffic": [28, 30], "strategi": [28, 83, 86, 94, 95, 114, 118, 125], "unnecessari": [28, 49], "formal": [28, 31, 33, 37, 40, 46, 94, 133, 141, 153], "minim": [28, 39, 110], "highlight": [28, 46, 125], "form": [28, 31, 33, 43, 46, 64, 67, 97, 103, 110, 128, 138, 149, 152], "forward": [28, 45, 49, 60, 66, 67, 82, 83, 91, 94, 103, 106, 123, 124, 125, 126, 127, 128, 160, 162, 168], "exclud": [28, 134, 148], "belong": [28, 44, 45, 83, 110, 123, 126, 128], "famili": [28, 47, 108], "greedi": [28, 94], "safe": [28, 29, 104], "trick": 28, "maxsiz": 28, "newcost": 28, "sampl": [28, 104], "infinit": [28, 40, 95, 96], "graft": 28, "modifi": [29, 39, 40, 43, 44, 45, 49, 58, 64, 67, 70, 72, 73, 74, 83, 84, 86, 88, 94, 96, 98, 99, 104, 106, 108, 110, 112, 116, 119, 121, 123, 142, 146, 152], "transpos": [29, 31], "revis": 29, "maze": [29, 107, 162, 168], "jug": [29, 104], "gallon": [29, 104], "pump": [29, 104], "water": [29, 104], "missionari": [29, 104], "cannib": [29, 104], "river": [29, 104], "boat": [29, 104], "peopl": [29, 41, 47, 52, 90, 104, 106], "journei": [29, 104], "outnumb": [29, 104], "bank": [29, 41, 67, 104], "eaten": [29, 104], "seri": [29, 62, 102, 103, 104, 134], "surf": [30, 52], "web": [30, 31, 52, 67, 78, 139], "laboratori": [30, 70, 77, 80], "campu": [30, 41], "flow": [30, 47], "primari": [30, 43, 99], "overview": 30, "high": [30, 42, 44, 45, 55, 64, 70, 100, 115, 129], "commun": [30, 45, 52], "browser": [30, 40, 78, 90], "request": [30, 39, 43, 46, 148], "server": 30, "travel": [30, 84], "onto": [30, 36, 58, 64, 98], "eventu": [30, 55, 66, 77, 80, 84, 96, 99, 110, 125, 126, 128], "arriv": [30, 67, 70, 94], "cloud": 30, "tracerout": 30, "text": [30, 40, 42, 45, 52, 95, 110, 112, 128, 132, 139, 158], "mail": 30, "univers": [30, 99], "minnesota": 30, "192": 30, "203": 30, "196": 30, "hilda": 30, "edu": [30, 139], "216": 30, "159": 30, "75": [30, 70, 108], "icn": 30, "ether": 30, "ia": 30, "207": 30, "165": [30, 70], "237": 30, "137": 30, "isp": 30, "209": 30, "56": [30, 63, 110], "255": 30, "p3": 30, "hsa1": 30, "chi1": 30, "bbnplanet": 30, "net": 30, "202": 30, "ae": 30, "54": [30, 83, 84, 88, 110, 114, 115, 124, 126], "bbr2": 30, "chicago1": 30, "level3": 30, "68": [30, 138], "101": [30, 112], "97": [30, 73, 110], "mpls2": 30, "minneapolis1": 30, "214": 30, "ge": [30, 132], "hsa2": 30, "p1": 30, "226": 30, "74": [30, 70], "telecomb": 30, "br": 30, "01": [30, 110], "v4002": 30, "ggnet": 30, "umn": 30, "42": [30, 94, 115], "152": 30, "37": [30, 31, 63, 94], "bn": 30, "vlan": 30, "3000": [30, 39], "128": 30, "58": 30, "cn": 30, "710": 30, "80": [30, 159, 164, 165], "158": 30, "baldrick": 30, "129": 30, "88": [30, 138], "631": 30, "m": [30, 46, 63, 103, 110, 133, 162], "volum": 30, "surpris": [30, 39, 45], "interconnect": [30, 31], "sound": [30, 95, 100, 103], "engin": [31, 46, 52], "googl": 31, "bing": 31, "exploit": 31, "transform": [31, 32, 35, 64, 104, 131, 160], "treat": [31, 100, 110, 142], "hyperlink": 31, "30": [31, 62, 64, 77, 80, 144, 148, 159, 160, 161, 163, 164, 165, 166], "home": 31, "awai": [31, 43, 94, 109], "iowa": 31, "liber": 31, "art": [31, 104], "conclud": [31, 151], "cluster": [31, 109, 110], "highli": [31, 45], "27": [31, 36, 63, 70, 110, 125], "31": [31, 68, 70, 83, 84, 88, 110, 124, 125, 126, 128, 148], "view": [31, 43, 45, 52, 55, 78], "32": [31, 39, 70, 115, 125], "tackl": 31, "transposit": 31, "34": [31, 125], "35": [31, 34, 165], "36": 31, "enabl": [32, 150], "adt": [33, 44, 55, 59, 65, 67, 70, 81, 86, 112, 137, 149, 154, 168], "fromvert": 33, "tovert": 33, "vertkei": 33, "option": [33, 39, 40, 43, 46, 56, 94, 106, 148, 168], "fascin": 34, "mathematician": [34, 43, 69, 100, 102], "alik": 34, "upper": [34, 64, 114], "bound": 34, "305": [34, 165], "clearli": [34, 37, 63, 94, 100, 110, 152], "brain": 34, "research": [34, 49, 104, 108], "gradual": 35, "invent": [35, 100, 104], "1878": 35, "lewi": 35, "carrol": 35, "author": [35, 159, 160, 164, 165], "alic": 35, "wonderland": 35, "pose": 35, "surprisingli": [35, 152], "outlin": [35, 45, 100, 103, 105, 144, 148], "stir": 36, "batch": 36, "pancak": 36, "recip": 36, "quit": [36, 54, 70, 104, 106], "egg": 36, "cup": 36, "mix": [36, 57], "tablespoon": 36, "oil": 36, "milk": 36, "heat": 36, "griddl": 36, "ingredi": 36, "spoon": 36, "hot": [36, 67, 79, 168], "cook": 36, "golden": [36, 132], "eat": 36, "syrup": 36, "precis": [36, 39, 43, 44], "preced": [36, 43, 60, 64, 86, 144], "event": [36, 70], "softwar": [36, 45], "project": [36, 136], "chart": 36, "databas": [36, 139], "queri": [36, 47, 49], "matric": 36, "adapt": 36, "28": [36, 40, 68, 70, 125], "29": [36, 39, 70, 125], "ambigu": [36, 64], "subgraph": 37, "v0": 37, "v1": 37, "v2": 37, "v3": 37, "v4": 37, "v5": 37, "nine": [37, 110, 128], "l": [37, 163, 168], "w_1": 37, "w_2": 37, "w_n": 37, "w_i": 37, "w_": 37, "le": 37, "vocabulari": [38, 106, 147, 154, 168], "numer": [39, 46, 49, 51, 53, 56, 110, 144, 168], "offer": 39, "possibli": [39, 44, 57, 131, 141], "zero": [39, 44, 47, 51, 70, 94, 95, 99, 106, 131, 133, 134, 153], "share": [39, 44, 70, 109], "technic": [39, 100], "arrang": [39, 69, 99, 100, 103, 104, 123], "address": [39, 44, 46, 51, 84, 109, 110, 112, 114], "static": [39, 43, 51, 110, 163], "fix": [39, 45, 46, 136, 148], "pointer": [39, 44, 51, 56, 82, 84, 85, 86, 90, 131, 160, 168], "modern": [39, 69], "situat": [39, 47, 57, 67, 69, 70, 71, 78, 84, 110, 131], "hardwar": [39, 45, 94], "constraint": [39, 49, 100], "flexibl": [39, 148], "permit": 39, "manipul": [39, 44, 55, 62, 63, 85, 141, 142], "entiti": 39, "low": [39, 52, 53, 70, 115, 134], "via": [39, 44, 46, 47, 64, 82, 84, 90], "processor": [39, 42, 44], "99": [39, 70, 108, 110], "20004": 39, "20008": 39, "20396": 39, "declar": [39, 40, 43, 46, 47, 51, 84, 89, 110], "darrai": 39, "iarrai": 39, "arr2": 39, "arr3": 39, "atom": [39, 44, 46, 56, 155, 156, 157, 158, 168], "ddoubl": 39, "Be": [39, 43, 64, 67, 84], "cautiou": 39, "danger": 39, "inher": [39, 46], "beyond": [39, 52, 58, 110, 115, 128, 134, 142], "catastroph": 39, "phrase": [39, 47, 103], "great": [39, 47, 99, 110, 114, 132], "everyth": [39, 40, 102, 110, 136], "perplex": 39, "otherdata": 39, "friendli": 39, "featur": [39, 40, 46, 56, 57, 128, 141, 168], "homogen": 39, "templat": [39, 44, 46, 61, 62, 63, 65, 152], "stl": [39, 46, 61, 62, 63, 88], "explan": [39, 42, 43, 131], "myvector": 39, "myvect": 39, "accommod": [39, 110], "growth": 39, "strictli": 39, "save": [39, 45, 64, 95, 152], "too": [39, 54, 70, 84, 94, 106, 108, 110, 129], "protect": [39, 44, 46, 47], "biggest": 39, "sequenti": [39, 44, 47, 51, 53, 109, 110, 111, 112, 113, 114, 117, 127, 168], "old": [39, 84, 94, 103, 110, 131, 141, 146, 148, 149], "style": [39, 92, 155, 156], "cppchar": 39, "quot": [39, 43, 51], "cppstring": 39, "hello": [39, 67, 110], "cstring": 39, "filenam": [39, 162], "onward": 39, "nicer": [39, 46], "recommend": [39, 50], "astr": 39, "string1": 39, "astring2": 39, "concaten": [39, 47, 98, 103], "syntax": [39, 40], "keyword": [39, 40, 43, 44, 46, 47, 51, 155, 156, 157, 158], "organ": [39, 44, 47, 51, 82, 90, 96, 136, 139], "odd": [39, 43, 58, 66], "mymap": 39, "entri": [39, 84, 94], "default": [39, 45, 70, 95, 148], "throw": [39, 46], "unordered_set": 39, "unorderd_set": 39, "immut": [39, 44, 96], "comma": 39, "delimit": [39, 64], "enclos": [39, 64], "curli": [39, 57], "brace": 39, "myset": 39, "78": 39, "union": 39, "set_union": 39, "set_intersect": 39, "set_differ": 39, "aset": 39, "clear": [39, 88, 89, 103, 144, 160], "checker": [39, 57, 79, 168], "hide": [40, 44, 46, 51, 55], "detail": [40, 42, 44, 45, 46, 47, 50, 51, 52, 54, 55, 61, 64, 77, 80, 95, 99, 105, 110, 124, 131, 144, 159, 164, 165], "bodi": [40, 51, 67, 139], "specifi": [40, 43, 44, 45, 55, 84, 94, 100, 105, 139], "timestwo": 40, "parenthes": [40, 43, 57, 59, 60, 67, 79, 102, 144, 146, 152, 168], "suggest": [40, 54, 84, 103, 104, 110, 129, 144], "hidden": [40, 52, 55], "invok": [40, 46, 47, 51, 84, 125, 126], "evalu": [40, 43, 54, 59, 65, 67, 71, 79, 84, 129, 144, 146, 150, 152, 168], "invoc": [40, 114, 125, 128], "timestwovoid": 40, "behav": [40, 44, 46, 77, 80, 84], "fruit": [40, 51], "newton": 40, "converg": [40, 126], "newguess": 40, "oldguess": 40, "repeatedli": [40, 43, 58, 109, 125], "guess": [40, 94, 95, 147], "accept": [40, 44, 46, 58, 104], "user": [40, 43, 44, 46, 47, 49, 52, 55, 77, 80], "intend": [40, 52, 53, 58, 67], "comment": [40, 155, 156, 157, 158], "marker": [40, 45, 84, 126, 128, 163, 166], "dogwalk": 40, "dog": [40, 74, 110], "content": [40, 43, 44, 46, 64, 72, 73, 74, 110, 125, 126, 128, 139, 144, 162], "argument": [40, 44, 46, 58, 68, 96, 105, 116], "referenc": [40, 44], "functionexampl": 40, "inputvar": 40, "nextvar": 40, "callingfunct": 40, "myvar": 40, "10x2": 40, "header": 40, "swap": [40, 96, 119, 123, 126, 128, 134], "swap_valu": 40, "nor": [40, 47, 49], "ampersand": [40, 43], "bracket": [40, 51, 57, 86, 158], "omit": 40, "decim": [40, 79, 103, 168], "privat": [40, 44, 46, 47, 70, 84, 134, 142, 148, 160], "perman": [40, 69], "add_list": 40, "prevent": [40, 96], "ourselv": [40, 54, 99, 116, 139], "accident": 40, "const": [40, 44, 46, 110, 160, 161, 162, 163, 166], "head": [40, 67, 82, 83, 84, 86, 87, 139], "potenti": [40, 110, 126], "abil": [40, 42, 44, 46, 47, 54, 58, 68, 84, 131], "distinguish": [40, 41, 47, 54, 75], "nice": [40, 61, 141], "cover": [40, 78, 110], "heard": 40, "monkei": 40, "theorem": 40, "hit": 40, "typewrit": 40, "keyboard": 40, "william": 40, "shakespear": 40, "sentenc": [40, 43, 144], "shoot": 40, "methink": 40, "weasel": 40, "re": [40, 45, 70, 94, 95, 96, 99, 112, 118, 121, 148], "fire": 40, "favorit": [40, 49], "simul": [40, 47, 49, 60, 65, 67, 71, 79, 168], "score": 40, "hint": [40, 43, 64, 83, 100, 103, 104], "whole": [40, 43, 46, 95, 102, 106, 114, 134, 144], "hill": 40, "climb": 40, "hierarchi": [41, 44, 47, 49, 51, 60, 86, 139, 140, 144], "faculti": 41, "staff": [41, 52], "account": [41, 84, 94], "interact": [41, 46, 52, 55, 58, 168], "circuit": [41, 49, 56, 168], "undergon": 42, "electron": [42, 47], "patch": 42, "cabl": 42, "switch": [42, 47, 55, 64, 70, 90, 162, 163], "convei": 42, "aspect": [42, 45, 46, 47, 125, 148], "societi": 42, "technologi": [42, 52], "tool": [42, 45, 51, 52, 106], "craft": 42, "spiral": [42, 106], "navig": [42, 78, 95], "throughout": [42, 95], "rapid": 42, "evolut": 42, "principl": [42, 46, 60, 77, 78, 80], "doubt": [42, 68], "spent": [42, 70], "consider": [42, 45, 114, 131], "hopefulli": 42, "feel": [42, 45, 94, 95], "confid": 42, "overshadow": 42, "relat": [42, 45, 46, 47, 49, 51, 78, 106, 129, 131], "emphas": 42, "review": [42, 48, 56, 84, 95, 136, 149, 168], "framework": [42, 46], "fit": [42, 94, 115, 153], "solver": [42, 46], "focal": 43, "orient": [43, 44, 47, 50, 51, 56, 62, 63, 142, 168], "paradigm": [43, 142], "behavior": [43, 44, 46, 47, 51, 70, 71, 128], "analog": 43, "compound": [43, 96], "futur": 43, "paragraph": [43, 95, 147], "categor": [43, 47], "arithmet": [43, 46, 49, 51, 53, 57, 64, 68, 110, 144], "divid": [43, 46, 58, 59, 81, 95, 103, 105, 109, 110, 114, 119, 125, 126, 134, 152], "quotient": 43, "pow": 43, "cmath": [43, 52], "modulo": [43, 58, 110], "short": [43, 104, 106, 119, 123], "5th": 43, "georg": 43, "english": [43, 100], "capit": [43, 66], "lower": [43, 45, 64, 94, 105, 110, 114, 124, 136, 139], "operand": [43, 46, 59, 60, 64, 67, 144], "negat": [43, 44], "truth": [43, 44, 47], "asid": 43, "characterist": [43, 46, 47, 54, 71, 76, 83, 88, 106], "pitfal": 43, "complain": 43, "thebool": 43, "worthi": 43, "varn": 43, "diagram": [43, 47, 85, 103, 105, 145], "consol": [43, 46, 50], "valuabl": 43, "hexadecim": [43, 58, 103], "0x7ffd93f25244": 43, "rule": [43, 44, 64, 93, 99, 100, 131, 132, 140, 144], "asterisk": 43, "variabletyp": 43, "ptrx": 43, "sometyp": 43, "variablenam": 43, "clearer": [43, 64], "ptrn": 43, "goe": [43, 47, 70, 99, 144, 148, 160], "dereferenc": 43, "_dereferenc": 43, "50": [43, 45, 108, 115, 138, 159, 160, 164, 165], "warn": 43, "forget": 43, "bad": [43, 134], "dangl": 43, "catch": [43, 84], "NOT": [43, 44, 47], "disast": 43, "segment": 43, "jump": [43, 77, 80], "fault": 43, "seg": 43, "elus": 43, "fairli": [43, 45, 131], "cap": 43, "therebi": [43, 110], "tip": [43, 45], "valid": [43, 74, 94, 167], "___": 43, "model": [44, 46, 55, 64, 70, 92, 106, 152], "disregard": 44, "irrelev": [44, 46], "unimport": [44, 46], "AND": [44, 47], "primit": [44, 45, 53, 55, 78], "logic": [44, 46, 52, 55, 56, 84, 87, 95, 99, 145, 148, 168], "gate": [44, 49, 56, 168], "broken": [44, 104, 136], "down": [44, 45, 70, 78, 84, 90, 94, 95, 99, 101, 106, 112, 121, 131, 134, 141, 142, 144, 160], "simpler": 44, "instanti": [44, 46, 160], "member": [44, 46, 47, 51, 108], "capabl": [44, 70, 76, 110, 123, 160], "copmut": 44, "unchang": 44, "reavl": 44, "classif": [44, 139], "variou": [44, 45, 47, 52, 70], "derefer": 44, "encapsul": [44, 55, 56, 168], "absolut": [44, 46], "scope": [44, 46, 52, 98, 110, 128, 134], "procedur": [44, 52, 55, 95, 105, 123, 129, 131, 133, 144, 152], "accord": [44, 69, 94, 110, 126, 136, 148], "ownership": 44, "unabl": 44, "invis": 44, "singli": [44, 82, 85, 86, 88], "interfac": [44, 52, 55, 141, 144, 148, 149], "boundari": 44, "exchang": [44, 119, 123, 124, 126, 127, 129], "cpu": 44, "mutabl": [44, 96], "invert": 44, "attribut": [44, 46, 128, 134, 142, 148, 158, 168], "java": 44, "OR": [44, 47], "polymorph": [44, 56, 168], "etc": [44, 46, 74, 106, 108, 139, 153], "unord": [44, 51, 56, 64, 82, 83, 85, 86, 88, 90, 91, 110, 111, 113, 168], "subclass": [44, 47, 131], "superclass": [44, 47], "secif": 44, "princip": 45, "safeti": 45, "restrict": [45, 46, 47, 77, 80, 147], "manag": [45, 51, 55, 69], "translat": [45, 50, 71, 106], "skip": [45, 110], "particularli": [45, 99, 106, 126, 152], "intens": 45, "heavili": [45, 105], "leverag": 45, "pixel": 45, "screen": [45, 77, 80, 95, 126, 159, 160, 161, 162, 163, 164, 165, 166], "creation": [45, 53, 63], "chunk": 45, "furthermor": [45, 131], "gpu": 45, "industri": 45, "movi": [45, 77, 80, 106], "popular": 45, "beginn": 45, "logo": 45, "walli": 45, "feurzeig": 45, "seymour": 45, "papert": 45, "cynthia": 45, "solomon": 45, "1967": 45, "digit": [45, 47, 51, 53, 58, 64, 67, 103, 110, 161, 166], "imag": [45, 52, 134], "fractal": [45, 104, 105, 106], "nearli": [45, 152], "backward": [45, 49, 60, 66, 67, 84, 94, 102, 103, 106, 123, 124, 125, 126, 127, 128, 160], "afford": [45, 70], "opportun": [45, 131], "facet": 45, "anxious": 45, "churn": 45, "concept": [45, 50, 75, 99, 131], "titl": [45, 67, 139], "equival": [45, 46, 58, 64, 69, 103, 105, 106, 144], "jess": [45, 159, 160, 164, 165], "walker": [45, 159, 160, 164, 165], "schadler": [45, 160], "berea": [45, 168], "summer": 45, "2019": 45, "github": [45, 105], "http": [45, 89, 105, 139], "com": [45, 89, 105], "walkerj": [45, 105], "ct": [45, 159, 160, 161, 162, 163, 164, 165, 166], "bye": [45, 159, 160, 161, 162, 163, 164, 165, 166], "hasn": 45, "textbook": [45, 168], "exitonclick": [45, 160, 163, 164], "premis": 45, "canva": 45, "pen": [45, 159, 164, 165], "tail": [45, 106], "commonli": [45, 53, 70, 77, 78, 80, 86, 94, 110, 126, 144, 152], "penup": [45, 159, 160, 161, 162, 163, 164, 165, 166], "paint": 45, "pendown": [45, 160], "fillcolor": [45, 159, 160, 161, 162, 163, 164, 165, 166], "beginfil": 45, "endfil": 45, "pencolor": [45, 160], "slower": [45, 70, 124], "hare": 45, "goto": [45, 160, 161, 162, 163, 166], "coordin": 45, "alongsid": 45, "latter": 45, "former": [45, 83], "slowest": 45, "ts_fastest": [45, 161, 162, 163, 166], "prefix": [45, 59, 60, 65, 71, 79, 168], "cturtl": [45, 95, 159, 160, 161, 162, 163, 164, 165, 166], "ts_fast": 45, "ts_normal": [45, 159, 162, 164, 165], "ts_slow": 45, "ts_slowest": 45, "annot": 45, "begin_fil": [45, 105, 162], "end_fil": [45, 105, 162], "pattern": [45, 47, 54, 58, 112, 121, 132, 152], "green": 45, "me": 45, "inhabit": 45, "custom": [45, 46, 67, 78, 94, 159, 164, 165, 167], "indented_triangl": 45, "polygon": [45, 159, 161, 163, 164, 165, 166], "clockwis": [45, 69], "abid": 45, "higher": [45, 64, 144], "0x": 45, "0y": 45, "indent": 45, "upsid": 45, "upside_down_triangl": 45, "free": [45, 95], "mess": 45, "clearstamp": 45, "placement": [45, 64, 82, 84, 137], "themselv": [45, 46, 47, 58, 69, 142, 144], "tracer": [45, 160, 161, 162, 163, 166], "undo": [45, 106], "mode": 45, "angl": [45, 104, 106], "rotat": [45, 131, 138, 140], "counterclockwis": 45, "sm_standard": 45, "east": [45, 95], "sm_logo": 45, "north": [45, 95], "degre": [45, 104, 105, 106], "radian": 45, "90": [45, 106, 108, 159, 160, 161, 162, 163, 164, 165, 166], "5708f": 45, "drawn": [45, 105, 106], "frame": [45, 70, 96, 107, 163, 168], "anim": [45, 104, 123, 139], "achiev": 45, "disabl": [45, 159, 164, 165], "movement": [45, 84, 104], "regardless": [45, 99, 123], "stop": [45, 69, 70, 83, 84, 86, 95, 99, 103, 105, 110, 115, 119, 123, 124, 125, 126, 127, 128], "hpp": [45, 159, 160, 161, 162, 163, 164, 165, 166], "60": [45, 70, 159, 164, 165], "period": [45, 70], "setundobuff": 45, "doesn": [45, 160], "editor": [45, 168], "turtl": [46, 56, 74, 104, 105, 106, 159, 160, 161, 162, 163, 164, 165, 166, 168], "airplan": [46, 67], "blueprint": 46, "denomin": [46, 49], "avoid": [46, 94, 96, 163], "slash": 46, "setup": [46, 83], "imposs": 46, "invalid": 46, "contructor": 46, "den": 46, "atribut": 46, "__init__": [46, 47, 95, 142], "likewis": [46, 64, 76, 83, 88, 110, 114], "myfract": 46, "fifth": [46, 94, 124], "context": 46, "discard": 46, "metaphor": [46, 106], "notion": [46, 64], "expos": [46, 54, 58, 94], "respond": 46, "proper": [46, 47, 64, 67, 77, 80, 84, 103, 110, 119, 123, 127, 134, 136, 147], "format": [46, 64, 65, 70, 95], "downsid": 46, "__str__": 46, "myf": 46, "ate": 46, "pizza": 46, "f1": 46, "f2": 46, "f3": 46, "traceback": 46, "recent": [46, 64, 68, 77, 78, 80], "file": [46, 57, 95, 139, 148, 167], "pyshel": 46, "173": 46, "toplevel": 46, "typeerror": 46, "unsupport": 46, "__add__": 46, "bd": 46, "cb": 46, "otherfrac": 46, "newnum": 46, "newden": 46, "otherfract": 46, "symmetri": 46, "rewrit": [46, 86, 102, 132, 152], "perfectli": [46, 133, 147], "greatest": 46, "divisor": 46, "gcd": [46, 49], "euclid": 46, "evenli": [46, 110, 125], "said": [46, 84, 100, 103, 106, 128, 131, 142, 153], "overridden": 46, "firstnum": 46, "secondnum": 46, "__eq__": 46, "vehicl": 46, "wheel": 46, "wing": 46, "oop": 46, "child": [47, 69, 131, 134, 136, 139, 141, 142, 144, 148, 152], "impli": 47, "repetit": [47, 53, 69], "hierarch": [47, 139, 140, 144], "fashion": [47, 68, 71, 136], "meet": [47, 100], "manner": [47, 69, 70, 110], "subject": 47, "virtual": [47, 95], "overwritten": [47, 123], "printtyp": 47, "algebra": [47, 131], "opposit": [47, 62, 78], "feed": 47, "logicg": 47, "break": [47, 94, 96, 99, 101, 103, 119, 128, 131, 144, 161, 162, 163], "yield": [47, 84, 125, 148], "identif": [47, 100], "getlabel": 47, "getoutput": 47, "performgatelog": 47, "reus": 47, "binaryg": 47, "unaryg": 47, "pin": 47, "terminologi": 47, "pinataken": 47, "pinbtaken": 47, "getpina": 47, "enter": [47, 77, 80], "cin": [47, 112], "pina": 47, "getpinb": 47, "pinb": 47, "pintaken": 47, "getpin": 47, "explicit": [47, 84], "extern": [47, 49, 83, 84, 148, 152], "andgat": 47, "super": 47, "gand1": 47, "orgat": 47, "notgat": 47, "gand2": 47, "gor2": 47, "g2": 47, "g3": 47, "connector": 47, "resid": [47, 84, 110], "fromgat": 47, "togat": 47, "setnextpin": 47, "circit": 47, "ganda": 47, "gnadb": 47, "gandc": 47, "gandd": 47, "flip": 47, "flop": 47, "professor": 47, "wear": 47, "feet": 47, "stabl": 47, "ti": 47, "norgat": 47, "reset": [47, 123], "toggl": 47, "convers": [48, 58, 59, 67, 79, 98, 144, 168], "disadvantag": [48, 53, 110], "getnum": 49, "getden": 49, "nand": 49, "xor": 49, "adder": 49, "card": 49, "deck": 49, "sudoku": 49, "newspap": 49, "consult": [50, 94, 132], "tutori": 50, "reacquaint": 50, "reinforc": 50, "central": [50, 153], "domain": [51, 55], "encas": 51, "nonsequenti": 51, "global": [51, 100], "overrid": [51, 131, 148], "unfortun": [52, 83, 84, 95, 110, 126, 147], "awar": 52, "disciplin": [52, 53], "finit": 52, "prove": [52, 153], "nonexist": 52, "pertain": 52, "separ": [52, 55, 57, 90], "physic": [52, 55, 63, 84, 87], "automobil": 52, "driven": 52, "school": 52, "todai": 52, "driver": [52, 165], "car": [52, 67], "brake": 52, "acceler": 52, "steer": 52, "drive": 52, "transport": 52, "repair": 52, "she": [52, 69], "carri": [52, 81, 114, 116], "grant": 52, "transmiss": 52, "gear": 52, "temperatur": 52, "hood": 52, "document": [52, 67], "music": 52, "administr": 52, "protocol": 52, "configur": [52, 70, 100], "script": 52, "client": [52, 55], "necessarili": 52, "someon": 52, "conveni": 53, "unambigu": 53, "interpret": [53, 58, 64, 95, 144], "654": 53, "particip": [53, 77, 80], "suffici": 53, "Being": 54, "challeng": [54, 68, 148], "recognit": 54, "sqrt": [54, 132], "contrast": 54, "sole": 54, "intract": 54, "realist": [54, 104, 106], "pictur": [55, 106], "lost": [55, 84], "abbrevi": 55, "shell": [55, 112, 118, 119, 120, 121, 122, 130, 148, 168], "versu": [56, 112, 124, 168], "graphic": [56, 92, 104, 106, 139, 159, 168], "turtlescreen": [56, 159, 160, 161, 162, 163, 164, 165, 166, 168], "geometri": [56, 168], "stamp": [56, 168], "open": [57, 60, 67, 68, 90, 95, 109, 110, 112, 124], "frequent": [57, 94], "mismatch": 57, "forth": 58, "awkward": 58, "233_": 58, "11101001_": 58, "times10": 58, "times2": 58, "signal": [58, 68], "divideby2": 58, "extract": [58, 110, 125], "octal": 58, "233": 58, "351_": 58, "e9_": 58, "times8": 58, "times16": 58, "baseconvert": 58, "slight": [58, 115], "ten": [58, 67, 94], "3x8": 58, "256": 58, "1x16": 58, "1x26": 58, "96": [59, 70, 81], "infix": [59, 60, 65, 67, 71, 79, 168], "postfix": [59, 60, 65, 67, 71, 79, 168], "rear": [59, 60, 61, 62, 66, 67, 72, 73, 75, 76, 77, 80, 81, 86], "balanc": [60, 67, 79, 131, 132, 134, 138, 140, 147, 150, 151, 154, 168], "dequ": [60, 65, 66, 71, 75, 79, 86, 168], "fifo": [60, 69, 71, 73, 76, 77, 80], "usag": [60, 152], "lifo": [60, 71, 74, 76, 78], "palindrom": [60, 67, 79, 103, 168], "imit": 60, "fortun": 62, "presenc": [64, 110], "troublesom": 64, "leftmost": [64, 148], "guarante": [64, 94, 110, 125, 126, 131, 134, 148], "confus": [64, 72, 99], "rewritten": 64, "preserv": [64, 88, 131, 134, 140, 148], "hoc": 64, "subexpress": 64, "clue": [64, 68], "virtu": 64, "scan": 64, "token": [64, 67, 144], "opstack": 64, "prec": 64, "arbitrarili": [64, 70, 105], "infixtopostfix": 64, "unsur": 64, "slightli": [64, 124, 131, 148], "shrink": 64, "commut": 64, "operandstack": 64, "ascii": [64, 95], "48": [64, 70], "domath": 64, "report": [64, 115], "intermedi": [64, 100], "radar": [66, 103], "toot": 66, "madam": [66, 103], "ordinari": 66, "dual": 66, "upgrad": 66, "potato": [66, 67, 79, 168], "rutabaga": 66, "avocado": 66, "squash": 66, "eggplant": 66, "life": [67, 71, 136], "formul": [67, 97, 103], "wash": 67, "groceri": [67, 77, 80], "land": 67, "runwai": 67, "teller": 67, "probabilist": [67, 70], "predict": [67, 95, 99], "radix": 67, "bin": 67, "534": 67, "667": 67, "hypertext": 67, "markup": [67, 139], "html": [67, 139], "tag": [67, 139, 158], "h1": [67, 139], "pi": 67, "lisp": 68, "defun": 68, "notori": 68, "differenti": 68, "unbalanc": [68, 131, 132, 133], "agre": [68, 100, 139], "straightforward": [68, 115, 148], "parcheck": 68, "clean": [68, 78, 146], "person": 69, "famou": 69, "josephu": 69, "legend": [69, 100], "centuri": 69, "historian": 69, "flaviu": 69, "stori": 69, "told": [69, 136], "jewish": 69, "revolt": 69, "rome": 69, "39": [69, 70, 125], "comrad": 69, "held": 69, "roman": 69, "cave": [69, 95], "defeat": [69, 110], "immin": 69, "die": 69, "slave": 69, "man": 69, "proceed": 69, "kill": [69, 95], "seventh": 69, "he": [69, 95, 100], "instantli": 69, "ought": 69, "sit": [69, 78], "came": [69, 75], "himself": 69, "join": 69, "escap": [69, 102], "hors": [69, 74], "her": 69, "hotpotato": 69, "susan": 69, "load": [69, 70, 109, 110, 112], "bill": [69, 94], "printer": [70, 77, 80], "miss": [70, 100], "lab": 70, "per": [70, 95, 100], "minut": [70, 102], "draft": 70, "qualiti": 70, "rate": [70, 100], "submit": 70, "paper": [70, 93, 100], "inclus": 70, "chanc": [70, 110, 115], "ratio": [70, 132], "twenti": 70, "180": [70, 161, 163, 166], "timestamp": 70, "currentsecond": 70, "busi": 70, "printqueu": 70, "tick": 70, "decrement": [70, 126], "idl": 70, "pagesperminut": 70, "pager": 70, "timeremain": 70, "startnext": 70, "newtask": 70, "currenttask": 70, "getpag": 70, "dummi": 70, "rand": 70, "srand": 70, "waittim": 70, "getstamp": 70, "currenttim": 70, "newprinttask": 70, "numsecond": 70, "labprint": 70, "waitingtim": 70, "nexttask": 70, "sec": 70, "trend": 70, "600": 70, "trial": 70, "3600": 70, "38": 70, "95": 70, "07": 70, "65": [70, 72, 110], "05": 70, "239": 70, "61": [70, 138], "376": 70, "122": 70, "09": 70, "00": [70, 159, 164, 165], "67": [70, 94], "vari": 70, "persuad": 70, "slow": [70, 90], "enrol": 70, "saturdai": 70, "robust": 70, "reflect": 70, "cut": [70, 94], "parameter": 70, "hybrid": [71, 76], "push_front": [71, 72, 88], "pop_front": [71, 72, 88], "datatyp": [72, 73, 74, 88], "dequenam": 72, "93": [72, 83, 84, 88, 110, 124, 126, 127, 148], "queuenam": 73, "cat": [74, 110], "whose": [75, 78, 82, 84, 140], "rise": [75, 96, 115], "unrestrict": 76, "enforc": [76, 132], "longest": [77, 78, 80], "cafeteria": [77, 78, 80], "trai": [77, 78, 80], "queu": [77, 80], "keystrok": [77, 80], "moment": [77, 80, 144], "buffer": [77, 80], "newer": 78, "everydai": 78, "plate": 78, "uncov": 78, "desk": 78, "visibl": 78, "desktop": 78, "button": 78, "url": 78, "click": [78, 88], "doubli": [82, 85, 86, 88], "orderedlist": [83, 86, 88], "deal": [83, 84, 110], "soon": [83, 100], "incorpor": [83, 94], "ongo": 83, "getdata": [83, 84], "getnext": [83, 84], "saw": [83, 103, 110], "newnod": [83, 142], "temp": [83, 84, 123, 166], "setnext": [83, 84], "constrain": 84, "Their": [84, 100], "suppli": 84, "initdata": 84, "setdata": 84, "newdata": 84, "newnext": 84, "ground": 84, "unorderedlist": [84, 86], "mylist": 84, "lose": 84, "singularli": 84, "late": 84, "dilemma": [84, 131], "inch": 84, "worm": 84, "someplac": 84, "rough": 84, "ii": 84, "reli": [85, 105, 134, 148], "slice": [86, 96, 112, 114, 125], "ascend": [88, 115, 119, 127], "occupi": [88, 95, 110], "descend": [88, 119, 144, 153], "meaning": 88, "po": [88, 89, 110], "oppos": 88, "forward_list": 88, "emplace_front": 88, "emplace_aft": 88, "insert_aft": 88, "erase_aft": 88, "val": [89, 110, 131, 148, 149], "integerlist": 89, "stringlist": 89, "elem": [89, 148], "www": [89, 139], "cplusplu": 89, "timeshar": 90, "multitask": 90, "sing": 90, "feat": 90, "simultan": [90, 106, 112, 121, 123], "hear": 90, "seamless": 90, "bunch": 90, "tab": 90, "mental": [92, 106], "eleg": [92, 96, 99, 101, 103, 152, 155, 156], "decept": 92, "tower": [93, 104, 107, 168], "hanoi": [93, 104, 107, 168], "disk": [93, 100, 104], "sierpinski": [93, 107, 168], "pencil": [93, 105], "coin": [93, 94], "cent": [93, 94], "subproblem": [94, 101], "satisfi": [94, 103], "vend": 94, "manufactur": 94, "compani": 94, "streamlin": 94, "effort": [94, 99], "transact": 94, "dollar": 94, "purchas": 94, "quarter": 94, "dime": 94, "penni": 94, "arsen": 94, "deploi": 94, "elbonia": 94, "minu": [94, 95], "nickel": 94, "numcoin": 94, "min": [94, 131, 136, 140, 145, 150], "eqn_changecpp": 94, "filter": 94, "comprehens": 94, "troubl": [94, 129], "ineffici": [94, 123], "716": 94, "925": 94, "fatal": 94, "flaw": 94, "377": 94, "recmc": 94, "got": 94, "recalcul": [94, 131], "52": 94, "wast": [94, 110, 123, 134, 148], "recomput": 94, "memoiz": 94, "demand": 94, "lookup": [94, 103, 144], "221": 94, "acitvecod": 94, "hack": 94, "knownresult": 94, "hole": 94, "cach": 94, "opportunist": 94, "truli": [94, 114], "tabul": 94, "Or": [94, 115], "eleven": 94, "dpmakechang": 94, "mincoin": 94, "realiz": 94, "bulk": 94, "printcoin": 94, "coinsus": 94, "coincount": 94, "42nd": 94, "computation": 94, "expens": [94, 114], "law": [94, 97, 103, 107, 168], "relev": [95, 114], "robot": [95, 99], "roomba": 95, "vacuum": 95, "cleaner": 95, "dorm": 95, "room": [95, 124, 134], "reprogram": 95, "pre": [95, 128, 160, 161, 163, 166], "greek": 95, "myth": 95, "theseu": 95, "minotaur": 95, "ball": 95, "thread": [95, 146], "him": 95, "beast": 95, "fair": 95, "wall": 95, "bump": 95, "northern": 95, "south": [95, 103], "west": 95, "pretti": [95, 106], "bag": 95, "bread": 95, "crumb": 95, "unsuccessfulli": 95, "stick": [95, 152], "readmazefil": 95, "findstartposit": 95, "isonedg": [95, 162], "searchfrom": [95, 162], "startrow": [95, 162], "startcolumn": [95, 162], "obstacl": 95, "maze_obstacl": [95, 162], "maze_tri": [95, 162], "maze_path": [95, 162], "cardin": 95, "maze_dead_end": [95, 162], "geograph": 95, "download": [95, 148], "mazelist": 95, "secondari": 95, "maze_start": [95, 162], "mazefilenam": 95, "totalrow": [95, 162], "totalcolumn": [95, 162], "And": 95, "split": [95, 114, 119, 122, 125, 126], "lastli": 95, "enumer": 95, "index_of_item": 95, "__getitem__": [95, 110], "maze1": [95, 162], "txt": [95, 162], "maze2": 95, "ve": [95, 148], "io": 95, "wrap": 96, "indirect": 96, "wherev": 96, "parallel": [96, 110], "tostr": [98, 103], "convertstr": [98, 103], "1010": [98, 103], "insight": [98, 106], "asimov": 99, "obei": [99, 100], "vectsum": [99, 102], "shorten": 99, "novic": 99, "unrealist": 99, "ackermann": 99, "wilhelm": 99, "proport": 99, "billion": [99, 110], "despit": 99, "factori": [99, 104], "french": 100, "edouard": 100, "luca": 100, "1883": 100, "inspir": 100, "hindu": 100, "templ": 100, "young": 100, "priest": 100, "gold": 100, "littl": [100, 131], "beneath": 100, "night": [100, 158], "crumbl": 100, "dust": 100, "vanish": 100, "worri": 100, "446": 100, "744": 100, "073": 100, "709": 100, "551": 100, "615": 100, "584": 100, "942": 100, "417": 100, "355": 100, "ey": 100, "peg": 100, "fanci": 100, "pile": 100, "knew": 100, "trivial": [100, 101, 102], "movetow": 100, "frompol": 100, "topol": 100, "withpol": 100, "movedisk": 100, "fp": 100, "tp": 100, "surfac": 101, "investig": 102, "pretend": 102, "redefin": 102, "Such": 102, "innermost": 102, "simplif": 102, "restat": 102, "numvect": 102, "claus": [102, 144], "topmost": [102, 105], "figure2": 102, "769": 103, "convstr": 103, "0123456789": 103, "unclear": 103, "76": [103, 138], "delai": [103, 159, 164, 165], "remind": 103, "substr": 103, "strindex1": 103, "strindex2": 103, "spell": [103, 104], "bonu": 103, "punctuat": 103, "adam": 103, "fun": 103, "kayak": 103, "aibohphobia": 103, "evil": 103, "revil": 103, "deliv": 103, "hang": 103, "salami": 103, "lasagna": 103, "hog": 103, "er": 103, "elba": 103, "kanakanak": 103, "town": 103, "alaska": 103, "wassamassaw": 103, "dakota": 103, "thick": [104, 106], "branchlen": [104, 106], "thinner": [104, 106], "leaf": [104, 106, 131, 136, 139, 140, 141, 144, 147, 148, 153], "mountain": [104, 106], "fibonacci": [104, 132], "hilbert": 104, "curv": 104, "koch": 104, "snowflak": [104, 106], "pascal": 104, "stagger": 104, "a_": 104, "nr": 104, "r": [104, 138, 141, 163], "binomi": 104, "diagon": 104, "thief": 104, "galleri": 104, "haul": 104, "stolen": 104, "knapsack": 104, "pound": 104, "maxim": 104, "profit": 104, "edit": 104, "allig": 104, "exhibit": 105, "midpoint": [105, 114], "indefinit": 105, "sharp": 105, "outer": [105, 148], "prompt": 105, "activ": 105, "inact": 105, "farther": [105, 134], "endpoint": 105, "halfwai": [105, 115, 134], "grasp": 106, "watch": 106, "cement": 106, "convent": 106, "artist": 106, "ink": 106, "dip": 106, "drawspir": 106, "impress": 106, "magnifi": 106, "coastlin": 106, "contin": 106, "shrub": 106, "phenomenon": 106, "sceneri": 106, "magnif": 106, "twig": 106, "trunk": 106, "mention": [106, 126, 136], "40": [106, 125, 148, 159, 162, 164, 165, 166], "cpp": [106, 168], "unfold": 106, "Will": 106, "halv": [106, 125, 126, 163], "hdc": 106, "introduct": [107, 168], "bias": 108, "perfect": [108, 109, 110], "classmat": 108, "deem": 109, "resolut": [109, 112, 117, 168], "slot": [109, 110], "conflict": 109, "resolv": [109, 110], "probe": [109, 110, 112], "fold": [109, 110], "mid": 109, "rehash": [109, 110, 112], "intial": [110, 125], "numberofitem": 110, "tables": 110, "44": [110, 125, 132], "clash": 110, "feasibl": 110, "social": 110, "secur": 110, "enorm": 110, "phone": 110, "436": 110, "555": [110, 155, 156, 157], "4601": 110, "43": [110, 125], "210": 110, "219": 110, "936": 110, "cast": 110, "104": 110, "ordin": 110, "remedi": [110, 114], "circularli": 110, "reveal": 110, "tendenc": 110, "surround": 110, "newhashvalu": 110, "oldhashvalu": 110, "sizeoft": 110, "unus": 110, "prime": 110, "130": [110, 159, 164, 165], "113": 110, "117": 110, "114": 110, "108": 110, "121": 110, "105": 110, "del": [110, 112, 147, 148, 149, 151], "hashtabl": [110, 112], "hashfunct": 110, "nonempti": 110, "hashvalu": 110, "nextslot": 110, "oldhash": 110, "__setitem__": 110, "startslot": 110, "lion": 110, "tiger": 110, "bird": 110, "cow": 110, "goat": 110, "pig": 110, "chicken": 110, "duck": 110, "65535": 110, "conceptu": 110, "unsuccess": 110, "sublist": [112, 122, 141], "predetermin": 112, "assess": 112, "500": [112, 121, 159, 161, 163, 166], "quick": [112, 118, 119, 120, 121, 122, 130, 147, 164, 168], "partit": [112, 119, 121, 126], "median": [112, 119, 121, 126], "pivot": [112, 118, 119, 121, 126, 131], "quicksort": [112, 121, 126, 164], "clever": 114, "elimin": 114, "codelen": [114, 115], "conquer": [114, 125, 126], "reassembl": 114, "issu": 114, "binarysearch": 114, "alist": [114, 116, 123], "strict": 114, "manual": 114, "worth": [114, 129], "nth": 115, "wich": 115, "enhanc": 115, "membership": 116, "awkwardli": 116, "myint": 116, "isin": 116, "myarr": 116, "merg": [118, 119, 120, 122, 126, 130, 163, 168], "p": [118, 134, 140, 153], "wors": 118, "gap": [119, 128, 166], "apart": [119, 128], "unsort": [119, 123], "degrad": [122, 133], "essenc": 123, "bubblesort": 123, "temporari": [123, 131], "ith": 123, "jth": 123, "th": [123, 132], "red": [123, 124, 125, 126, 127, 164], "bar": [123, 124, 125, 127, 128], "costli": [123, 129], "partial": [123, 124, 127, 128], "subvector": [124, 128], "insertionsort": 124, "pace": 124, "mergesort": 125, "respons": 125, "augment": [125, 131], "transcript": 125, "problemat": 125, "49": 125, "diminish": [126, 128], "leftmark": 126, "rightmark": 126, "quicksorthelp": 126, "yellow": [126, 127, 164], "skew": [126, 147], "uneven": 126, "overhead": [126, 129], "allevi": 126, "somewhat": [126, 146], "representedbi": 127, "thin": 127, "reduct": 127, "shellsort": 128, "popul": 129, "zip": 129, "substanti": 129, "affect": [131, 139], "grandpar": 131, "ancestor": 131, "subtre": [131, 133, 134, 139, 140, 141, 142, 144, 147, 148, 152, 153], "binarysearchtre": [131, 148], "_put": [131, 148], "updatebal": 131, "treenod": [131, 148], "currentnod": [131, 148], "hasleftchild": [131, 148], "leftchild": [131, 142, 148, 152], "hasrightchild": [131, 148], "rightchild": [131, 142, 148, 152], "balancefactor": [131, 133], "rebal": 131, "isleftchild": [131, 148], "isrightchild": [131, 148], "rebalanc": 131, "promot": [131, 148], "tricki": 131, "heavi": [131, 132, 133], "newroot": 131, "bookkeep": 131, "encourag": 131, "rotateright": 131, "rotateleft": 131, "rotroot": 131, "isroot": [131, 148], "max": [131, 136, 140, 145, 146], "unaffect": 131, "h_x": 131, "newbal": 131, "h_a": 131, "h_c": 131, "oldbal": 131, "h_d": 131, "h_e": 131, "hav": 131, "substitut": 131, "readili": 131, "elif": 131, "log_2": [131, 147, 151], "claim": 132, "n_h": 132, "n_": 132, "recurr": 132, "i_": 132, "f_0": 132, "f_1": 132, "f_i": 132, "f_": 132, "phi": 132, "avl": [133, 140, 150, 151, 154, 168], "inventor": 133, "adelson": 133, "velskii": 133, "landi": 133, "leftsubtre": 133, "rightsubtre": 133, "2p": 134, "currents": 134, "heaplist": 134, "binheap": 134, "heapvector": 134, "violat": 134, "regain": 134, "newli": 134, "percol": 134, "restor": 134, "sibl": [134, 140, 153], "percup": 134, "readi": [134, 144], "tmp": 134, "complianc": 134, "destroi": 134, "percdown": 134, "minchild": 134, "mc": 134, "retval": 134, "rightmost": 134, "mysteri": 134, "proof": 134, "whitespac": 134, "chp": 134, "binaryheap": [135, 146], "findmin": [135, 148], "swift": 136, "utmost": 136, "righmost": 136, "swape": 136, "lesser": 136, "agian": 136, "mainten": 136, "greatli": 136, "homework": [136, 167], "deadlin": 136, "rearang": 136, "earliest": 136, "closest": 136, "demostr": 136, "binarytre": [138, 141, 142, 144, 152], "insertleft": [138, 141, 142], "insertright": [138, 141, 142], "setrootv": [138, 141, 142], "94": [138, 148], "66": 138, "82": 138, "preorder": [138, 140, 152], "botan": 139, "cousin": 139, "biologi": 139, "biolog": 139, "layer": 139, "kingdom": 139, "phylum": 139, "taxonomi": 139, "chordat": 139, "arthropod": 139, "mammal": [139, 153], "stuck": 139, "primat": 139, "carnivor": 139, "genu": 139, "feli": [139, 153], "domestica": [139, 153], "leo": 139, "musca": 139, "speci": 139, "animalia": 139, "rightarrow": [139, 153], "carnivora": [139, 153], "felida": [139, 153], "directori": 139, "folder": 139, "unix": 139, "subdirectori": 139, "stare": 139, "detach": 139, "reattach": 139, "usr": [139, 153], "pathnam": 139, "httpd": 139, "xmln": 139, "w3": 139, "org": 139, "1999": 139, "xhtml": 139, "xml": 139, "lang": 139, "en": 139, "meta": [139, 155, 156, 157, 158], "equiv": 139, "charset": 139, "utf": 139, "ul": 139, "h2": 139, "href": 139, "sourc": 139, "accompani": 139, "sub": [140, 144, 152], "bst": [140, 148], "properi": 140, "incom": [140, 153], "inord": [140, 146, 148, 152], "postord": [140, 152], "reorgan": 140, "successor": [140, 146, 147, 148], "mytre": 141, "adher": 141, "newbranch": 141, "obtain": [141, 144], "instal": [141, 148], "splice": [141, 148], "round": [141, 142], "getrootv": [141, 142, 144, 152], "newval": 141, "getleftchild": [141, 142, 144, 152], "getrightchild": [141, 142, 144, 152], "buildtre": 141, "cstdlib": 142, "rootobj": 142, "accessor": 142, "obj": 142, "recov": [144, 152], "builder": 144, "valueerror": 144, "param1": 144, "param2": 144, "mul": [144, 152], "div": [144, 152, 158], "to_int": [144, 152], "stringstream": [144, 152], "to_str": [144, 152], "ostringstream": [144, 152], "parsetre": [144, 152], "leftc": [144, 152], "rightc": [144, 152], "truediv": [144, 152], "fn": 144, "buildparsetre": 146, "unari": 146, "findsuccessor": [146, 148], "printexp": [146, 152], "pars": [146, 150, 152, 154, 168], "70": [148, 159, 164, 165], "73": 148, "miscellan": 148, "isleaf": 148, "hasanychildren": 148, "hasbothchildren": 148, "replacenodedata": 148, "lc": 148, "rc": 148, "bug": 148, "lightli": 148, "_get": 148, "besid": 148, "nodetoremov": 148, "cerr": 148, "shortli": 148, "spliceout": 148, "interior": 148, "succ": 148, "caller": 148, "freez": 148, "__iter__": 148, "subsect": 152, "chapter1": 152, "wrote": 152, "t_string": 152, "postorderev": 152, "res1": 152, "res2": 152, "sval": 152, "outgo": 153, "spool": 153, "yp": 153, "var": 153, "filesystem": 153, "compris": 153, "chimpanze": 153, "arrowhead": 153, "cm": [155, 156, 157, 158], "762": [155, 156], "262": [155, 156], "font": [155, 156, 157], "ital": [155, 156], "1em": [155, 156, 157], "b11": [155, 156], "qualifi": [155, 156], "730": [155, 156], "builtin": [155, 156, 157, 158], "30a": [155, 156], "background": [155, 156, 158], "fdd": [155, 156], "neat": 157, "a86": 157, "bold": 157, "a22": 157, "077": 157, "0aa": 157, "3a3": 157, "loos": 158, "midnight": 158, "textmat": 158, "theme": 158, "0a001f": 158, "f8f8f8": 158, "codemirror": 158, "447": 158, "gutter": 158, "border": 158, "1px": 158, "solid": 158, "aaa": 158, "cursor": 158, "6900a1": 158, "845dc4": 158, "ffd500": 158, "599eff": 158, "37f14a": 158, "7678e2": 158, "99b2ff": 158, "9d1e15": 158, "8da6c": 158, "ff9e59": 158, "codi": [159, 164, 165], "auen": [159, 164, 165], "cturtle_headless": [159, 160, 161, 162, 163, 164, 165, 166], "cturtle_headless_width": [159, 160, 161, 162, 163, 164, 165, 166], "400": [159, 160, 161, 163, 164, 165, 166], "cturtle_headless_height": [159, 160, 161, 162, 163, 164, 165, 166], "cturtle_headless_no_html": [159, 160, 161, 162, 163, 164, 165], "bubble_sort": 159, "scr": [159, 164, 165], "200": [159, 165], "square1": [159, 164, 165], "square2": [159, 164, 165], "square3": [159, 164, 165], "square4": [159, 164, 165], "square5": [159, 164, 165], "square6": [159, 164, 165], "square7": [159, 164, 165], "square8": [159, 164, 165], "preset": [159, 164, 165], "150": [159, 164, 165, 166], "sleep": [159, 164, 165], "visul": [159, 164, 165], "lt": [159, 165], "rt": [159, 165], "detec": 159, "cppd": 160, "headless": [160, 163], "ifdef": [160, 163], "endif": [160, 163], "lib": [160, 161, 163, 166], "typedef": [160, 161, 163, 166], "vertex_t": 160, "graph_t": 160, "containsvertex": 160, "getvertexconnect": 160, "make_tupl": 160, "fromid": 160, "toid": 160, "visitedlist": 160, "auto": 160, "cur": 160, "neighborid": 160, "drawconnect": 160, "vertexpo": 160, "penstat": 160, "gettransl": 160, "neighborvertex": 160, "neighborturtl": 160, "neighborpo": 160, "argc": [160, 161, 162, 163, 166], "argv": [160, 161, 162, 163, 166], "node_turtl": 160, "lineturtl": 160, "node_radiu": 160, "pad": 160, "125": 160, "node_label": 160, "center": 160, "labeloffset": 160, "hideturtl": [160, 166], "paired_turtle_t": [161, 163, 166], "move_item": [161, 163, 166], "yoff": [161, 163, 166], "140": [161, 163, 166], "vis_insertion_sort": 161, "itemturtl": 161, "create_rectangl": [161, 163, 166], "halfwidth": [161, 163, 166], "assign_shap": [161, 163, 166], "sort_list": [161, 166], "880": 162, "440": 162, "square_s": 162, "ifstream": 162, "getlin": 162, "drawmaz": 162, "totalwidth": 162, "totalheight": 162, "movetospot": 162, "updateposit": 162, "250": [162, 163], "move_hidden_item": 163, "move_mark": [163, 166], "leftindex": 163, "middleindex": 163, "rightindex": 163, "constexpr": 163, "vis_merg": 163, "leftsiz": 163, "rightsiz": 163, "lefttemp": 163, "righttemp": 163, "subarrai": 163, "vis_merge_sort": 163, "overflow": 163, "skip_fram": 163, "grey25": 163, "grey75": 163, "marker_turtl": [163, 166], "turtlelist": 163, "_crt_secure_no_warn": 164, "ptr": 164, "fd": 164, "bk": 164, "120": 164, "sel_sort": 165, "ctr": 165, "135": 165, "move_gapp": 166, "vis_shell_sort": 166, "gapper": 166, "showturtl": 166, "gap_turtl": 166, "325": 166, "restructuredtext": 167, "c++": 168, "data structur": 168, "computer sci": 168, "brad": 168, "miller": 168, "david": 168, "ranum": 168, "jan": 168, "pearc": 168, "grate": 168, "franklin": 168, "beedl": 168, "freeli": 168, "dedic": 168, "jim": 168, "leisi": 168, "bradlei": 168, "janic": 168, "licens": 168, "creativ": 168, "noncommerci": 168, "sharealik": 168}, "objects": {}, "objtypes": {}, "objnames": {}, "titleterms": {"an": [0, 12, 13, 64, 83, 84, 103, 115], "anagram": 0, "detect": 0, "exampl": [0, 64, 72, 73, 136, 139], "solut": 0, "1": [0, 1, 43, 72, 73, 74, 110, 115, 123, 151], "check": [0, 1, 4, 19, 25, 26, 28, 40, 46, 47, 58, 62, 63, 64, 70, 84, 94, 95, 99, 103, 106, 110, 114, 115, 123, 124, 125, 126, 127, 128, 141, 148], "off": 0, "2": [0, 9, 64, 115], "sort": [0, 36, 123, 124, 125, 126, 127, 128, 129, 130], "compar": [0, 151], "3": [0, 8, 64, 114], "brute": 0, "forc": 0, "4": [0, 4, 39, 64, 110], "count": 0, "self": [0, 1, 4, 19, 25, 26, 28, 40, 46, 47, 58, 62, 63, 64, 70, 84, 94, 95, 99, 103, 106, 110, 114, 115, 123, 124, 125, 126, 127, 128, 141, 148], "big": [1, 4, 8, 9], "o": [1, 4, 8, 9], "notat": [1, 10], "tabl": [1, 4, 8, 9, 39, 43, 64, 72, 73, 74, 110, 114, 115, 123, 151, 168], "common": [1, 39], "function": [1, 40, 110], "discuss": [2, 20, 41, 59, 70, 81, 93, 108, 118, 138], "question": [2, 20, 41, 59, 81, 93, 108, 118, 138], "glossari": [3, 22, 44, 60, 82, 96, 109, 119, 140], "match": [3, 22, 39, 44, 60, 82, 96, 109, 119, 140], "analysi": [4, 8, 9, 10, 11, 14, 15, 18, 26, 83, 110, 114, 115, 147], "hash": [4, 39, 110, 117], "effici": [4, 8, 9], "c": [4, 6, 8, 9, 39, 40, 43, 45, 46, 47, 50, 61, 62, 63, 70, 168], "oper": [4, 8, 9, 39, 43, 72, 73, 74, 110, 134, 135, 149], "summari": [4, 32, 51, 71, 87, 94, 113, 122, 150, 151], "object": [5, 27, 46, 48, 65, 85, 97, 111, 120, 143], "perform": [6, 132, 151], "data": [6, 33, 43, 55, 72, 73, 74, 88, 89, 110, 168], "collect": [6, 39], "program": [7, 29, 46, 49, 53, 67, 86, 94, 104, 112, 121, 146], "exercis": [7, 29, 49, 67, 86, 104, 112, 121, 146], "string": [8, 39, 103], "arrai": [9, 39, 40, 89], "vector": [9, 39, 89, 102], "what": [10, 52, 53, 75, 76, 77, 78, 80, 90, 101], "i": [10, 52, 53, 76, 77, 78, 80, 101], "algorithm": [10, 14, 19, 28, 38, 54, 154, 168], "some": 10, "need": 10, "math": 10, "appli": 10, "adjac": [12, 13], "list": [12, 83, 84, 88, 115, 141], "matrix": 13, "dijkstra": [14, 19], "": [14, 16, 19, 25, 26, 28, 34], "breadth": [15, 24], "first": [15, 18, 21, 24], "search": [15, 18, 21, 24, 114, 115, 116, 117, 133, 137, 147, 148, 149], "build": [16, 17, 47], "knight": [16, 25, 26, 34], "tour": [16, 25, 26, 34], "graph": [16, 17, 33, 38], "word": [17, 35], "ladder": [17, 35], "depth": [18, 21], "gener": [21, 57, 64], "implement": [23, 24, 25, 70, 83, 84, 98, 110, 131, 134, 148, 151], "prim": 28, "span": 28, "tree": [28, 131, 132, 133, 137, 139, 144, 147, 148, 149, 152, 154], "shortest": 30, "path": 30, "problem": [30, 34, 35, 92, 168], "strongli": 31, "connect": 31, "compon": 31, "The": [33, 34, 35, 43, 72, 73, 74, 84, 88, 89, 99, 114, 115, 123, 124, 125, 126, 127, 128, 134], "abstract": [33, 46, 55, 72, 73, 74, 88, 89, 110], "type": [33, 43, 55, 72, 73, 74, 88, 89, 110], "topolog": 36, "vocabulari": [37, 153], "definit": [37, 153], "method": [39, 110], "provid": 39, "7": 39, "import": 39, "unord": [39, 84, 89, 115], "set": 39, "6": 39, "defin": [40, 46], "paramet": 40, "pass": [40, 123], "valu": [40, 43], "versu": 40, "refer": [40, 142], "overload": 40, "challeng": [40, 47], "get": [42, 43], "start": [42, 43], "built": 43, "atom": 43, "numer": 43, "boolean": 43, "relat": 43, "logic": [43, 47], "charact": 43, "pointer": 43, "syntax": 43, "address": 43, "access": 43, "from": 43, "null": 43, "option": 45, "graphic": 45, "introduct": [45, 56, 106], "turtl": 45, "turtlescreen": 45, "geometri": 45, "shape": 45, "stamp": 45, "advanc": 45, "featur": 45, "orient": 46, "class": [46, 84, 167], "A": [46, 57], "fraction": 46, "encapsul": 46, "polymorph": 46, "inherit": 47, "gate": 47, "circuit": 47, "review": 50, "basic": 50, "comput": 52, "scienc": 52, "why": [54, 55], "studi": [54, 55], "structur": [55, 75, 79, 90, 91, 134, 168], "balanc": [57, 68, 133], "symbol": 57, "case": 57, "convert": [58, 103], "decim": 58, "number": [58, 102], "binari": [58, 114, 133, 134, 135, 136, 137, 145], "us": [61, 62, 63, 110, 115, 168], "dequ": [61, 72, 76], "queue": [62, 73, 77, 80, 136, 145], "stack": [63, 74, 78, 98], "infix": 64, "prefix": 64, "postfix": 64, "express": 64, "parenthes": [64, 68], "addit": 64, "convers": 64, "evalu": 64, "palindrom": 66, "checker": 66, "simpl": [68, 110], "simul": [69, 70], "hot": 69, "potato": 69, "print": 70, "task": 70, "main": 70, "step": 70, "sampl": 74, "ar": [75, 90], "linear": [75, 79, 91], "order": [83, 88, 115, 134], "link": [83, 84, 90, 91], "node": [84, 142], "forward": 88, "complex": 92, "recurs": [92, 98, 99, 101, 106, 107], "dynam": 94, "explor": 95, "maze": 95, "frame": 98, "three": 99, "law": 99, "tower": 100, "hanoi": 100, "calcul": 102, "sum": 102, "integ": 103, "ani": 103, "base": 103, "sierpinski": 105, "triangl": 105, "visual": 106, "remaind": 110, "5": 110, "comparison": [110, 115, 123], "mid": 110, "squar": 110, "collis": 110, "resolut": 110, "map": [110, 151], "tabular": 114, "sequenti": 115, "bubbl": 123, "each": 123, "insert": 124, "merg": 125, "quick": 126, "select": 127, "shell": 128, "avl": [131, 132], "heap": [134, 135, 136, 145], "properti": 134, "prioriti": [136, 145], "represent": 141, "pars": 144, "adt": 151, "differ": 151, "travers": 152, "assign": 167, "solv": 168, "acknowledg": 168, "indic": 168}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 57}, "alltitles": {"An Anagram Detection Example": [[0, "an-anagram-detection-example"]], "Solution 1: Checking Off": [[0, "solution-1-checking-off"]], "Solution 2: Sort and Compare": [[0, "solution-2-sort-and-compare"]], "Solution 3: Brute Force": [[0, "solution-3-brute-force"]], "Solution 4: Count and Compare": [[0, "solution-4-count-and-compare"]], "Self Check": [[0, null], [1, null], [4, null], [4, "self-check"], [19, null], [25, null], [26, null], [28, null], [40, null], [40, null], [46, "self-check"], [58, null], [62, null], [63, null], [64, null], [70, null], [84, null], [95, null], [99, null], [103, null], [106, null], [110, null], [110, "self-check"], [114, null], [115, null], [123, null], [124, null], [125, null], [126, "self-check"], [127, null], [128, null], [141, null], [148, null]], "Big-O Notation": [[1, "big-o-notation"]], "Table 1: Common Big-O Functions": [[1, "id1"]], "Discussion Questions": [[2, "discussion-questions"], [20, "discussion-questions"], [41, "discussion-questions"], [59, "discussion-questions"], [81, "discussion-questions"], [93, "discussion-questions"], [108, "discussion-questions"], [118, "discussion-questions"], [138, "discussion-questions"]], "Glossary": [[3, "glossary"], [22, "glossary"], [44, "glossary"], [60, "glossary"], [82, "glossary"], [96, "glossary"], [109, "glossary"], [119, "glossary"], [140, "glossary"]], "Matching": [[3, "matching"], [22, "matching"], [39, "matching"], [39, "id1"], [39, "id2"], [39, "id3"], [44, "matching"], [60, "matching"], [82, "matching"], [96, "matching"], [109, "matching"], [119, "matching"], [140, "matching"]], "Analysis of Hash Tables": [[4, "analysis-of-hash-tables"]], "Table 4: Big-O Efficiency of C++ hash table Operations": [[4, "id1"]], "Summary": [[4, "summary"], [32, "summary"], [51, "summary"], [71, "summary"], [87, "summary"], [94, "summary"], [113, "summary"], [122, "summary"], [150, "summary"]], "Objectives": [[5, "objectives"], [27, "objectives"], [48, "objectives"], [65, "objectives"], [85, "objectives"], [97, "objectives"], [111, "objectives"], [120, "objectives"], [143, "objectives"]], "Performance of C++ Data Collections": [[6, "performance-of-c-data-collections"]], "Programming Exercises": [[7, "programming-exercises"], [29, "programming-exercises"], [49, "programming-exercises"], [67, "programming-exercises"], [86, "programming-exercises"], [104, "programming-exercises"], [112, "programming-exercises"], [121, "programming-exercises"], [146, "programming-exercises"]], "Analysis of String Operators": [[8, "analysis-of-string-operators"]], "Table 3: Big-O Efficiency of C++ String Operations": [[8, "id1"]], "Analysis of Array and Vector Operators": [[9, "analysis-of-array-and-vector-operators"]], "Table 2: Big-O Efficiency of C++ Vector Operators": [[9, "id1"]], "What Is Algorithm Analysis?": [[10, "what-is-algorithm-analysis"]], "Some Needed Math Notation": [[10, "some-needed-math-notation"]], "Applying the Math Notation": [[10, "applying-the-math-notation"]], "Analysis": [[11, "analysis"], [11, null]], "An Adjacency List": [[12, "an-adjacency-list"]], "An Adjacency Matrix": [[13, "an-adjacency-matrix"]], "Analysis of Dijkstra\u2019s Algorithm": [[14, "analysis-of-dijkstras-algorithm"]], "Breadth First Search Analysis": [[15, "breadth-first-search-analysis"]], "Building the Knight\u2019s Tour Graph": [[16, "building-the-knights-tour-graph"]], "Building the Word Ladder Graph": [[17, "building-the-word-ladder-graph"]], "Depth First Search Analysis": [[18, "depth-first-search-analysis"]], "Dijkstra\u2019s Algorithm": [[19, "dijkstras-algorithm"]], "General Depth First Search": [[21, "general-depth-first-search"]], "Implementation": [[23, "implementation"]], "Implementing Breadth First Search": [[24, "implementing-breadth-first-search"]], "Implementing Knight\u2019s Tour": [[25, "implementing-knights-tour"]], "Knight\u2019s Tour Analysis": [[26, "knights-tour-analysis"]], "Prim\u2019s Spanning Tree Algorithm": [[28, "prims-spanning-tree-algorithm"]], "Shortest Path Problems": [[30, "shortest-path-problems"]], "Strongly Connected Components": [[31, "strongly-connected-components"]], "The Graph Abstract Data Type": [[33, "the-graph-abstract-data-type"]], "The Knight\u2019s Tour Problem": [[34, "the-knights-tour-problem"]], "The Word Ladder Problem": [[35, "the-word-ladder-problem"]], "Topological Sorting": [[36, "topological-sorting"]], "Vocabulary and Definitions": [[37, "vocabulary-and-definitions"], [153, "vocabulary-and-definitions"]], "Graphs and Graph Algorithms": [[38, "graphs-and-graph-algorithms"], [38, null]], "Collections": [[39, "collections"]], "Arrays": [[39, "arrays"]], "Vectors": [[39, "vectors"], [89, "vectors"]], "Common C++ Vector Operators": [[39, "id4"]], "Strings": [[39, "strings"]], "Table 4: String Methods Provided in C++": [[39, "id5"]], "Hash Tables": [[39, "hash-tables"]], "Table 7: Important Hash Table Operators Provided in C++": [[39, "id6"]], "Unordered Sets": [[39, "unordered-sets"]], "Table 6: Methods Provided by Sets in C++": [[39, "id7"]], "Defining C++ Functions": [[40, "defining-c-functions"]], "Parameter Passing: by Value versus by Reference": [[40, "parameter-passing-by-value-versus-by-reference"]], "Arrays as Parameters in Functions": [[40, "arrays-as-parameters-in-functions"]], "Function Overloading": [[40, "function-overloading"]], "Self Check Challenge": [[40, null]], "Getting Started": [[42, "getting-started"]], "Getting Started with Data": [[43, "getting-started-with-data"]], "Built-in Atomic Data Types": [[43, "built-in-atomic-data-types"]], "Numeric Data": [[43, "numeric-data"]], "Boolean Data": [[43, "boolean-data"]], "Table 1: C++ Relational and Logical Operators": [[43, "id1"]], "Character Data": [[43, "character-data"]], "Pointers": [[43, "pointers"]], "Pointer Syntax": [[43, "pointer-syntax"]], "The address-of operator, &": [[43, "the-address-of-operator"]], "Accessing Values from Pointers": [[43, "accessing-values-from-pointers"]], "The NULL pointer": [[43, "the-null-pointer"]], "Optional: Graphics in C++": [[45, "optional-graphics-in-c"]], "Introduction to Turtles": [[45, "introduction-to-turtles"]], "Turtle & TurtleScreen": [[45, "turtle-turtlescreen"]], "Geometry, Shapes, and Stamps": [[45, "geometry-shapes-and-stamps"]], "Advanced Features": [[45, "advanced-features"]], "Object-Oriented Programming in C++: Defining Classes": [[46, "object-oriented-programming-in-c-defining-classes"]], "A Fraction Class": [[46, "a-fraction-class"]], "Abstraction and Encapsulation": [[46, "abstraction-and-encapsulation"]], "Polymorphism": [[46, "polymorphism"]], "Inheritance in C++": [[47, "inheritance-in-c"]], "Logic Gates and Circuits": [[47, "logic-gates-and-circuits"]], "Building Circuits": [[47, "building-circuits"]], "Self Check Challenge": [[47, null]], "Reviewing Basic C++": [[50, "reviewing-basic-c"]], "What Is Computer Science?": [[52, "what-is-computer-science"]], "What Is Programming?": [[53, "what-is-programming"]], "Why Study Algorithms?": [[54, "why-study-algorithms"]], "Why Study Data Structures and Abstract Data Types?": [[55, "why-study-data-structures-and-abstract-data-types"]], "Introduction": [[56, "introduction"]], "Balanced Symbols - A General Case": [[57, "balanced-symbols-a-general-case"]], "Converting Decimal Numbers to Binary Numbers": [[58, "converting-decimal-numbers-to-binary-numbers"]], "Using a Deque in C++": [[61, "using-a-deque-in-c"]], "Using a Queue in C++": [[62, "using-a-queue-in-c"]], "Using a Stack in C++": [[63, "using-a-stack-in-c"]], "Infix, Prefix and Postfix Expressions": [[64, "infix-prefix-and-postfix-expressions"]], "Table 2: Examples of Infix, Prefix, and Postfix": [[64, "id1"]], "Table 3: An Expression with Parentheses": [[64, "id2"]], "Table 4: Additional Examples of Infix, Prefix, and Postfix": [[64, "id3"]], "Conversion of Infix Expressions to Prefix and Postfix": [[64, "conversion-of-infix-expressions-to-prefix-and-postfix"]], "General Infix-to-Postfix Conversion": [[64, "general-infix-to-postfix-conversion"]], "Postfix Evaluation": [[64, "postfix-evaluation"]], "Palindrome-Checker": [[66, "palindrome-checker"]], "Simple Balanced Parentheses": [[68, "simple-balanced-parentheses"]], "Simulation: Hot Potato": [[69, "simulation-hot-potato"]], "Simulation: Printing Tasks": [[70, "simulation-printing-tasks"]], "Main Simulation Steps": [[70, "main-simulation-steps"]], "C++ Implementation": [[70, "c-implementation"]], "Discussion": [[70, "discussion"]], "The Deque Abstract Data Type": [[72, "the-deque-abstract-data-type"]], "Table 1: Examples of Deque Operations": [[72, "id1"]], "The Queue Abstract Data Type": [[73, "the-queue-abstract-data-type"]], "Table 1: Example Queue Operations": [[73, "id1"]], "The Stack Abstract Data Type": [[74, "the-stack-abstract-data-type"]], "Table 1: Sample Stack Operations": [[74, "id1"]], "What Are Linear Structures?": [[75, "what-are-linear-structures"]], "What Is a Deque?": [[76, "what-is-a-deque"]], "What Is a Queue?": [[77, "what-is-a-queue"], [80, "what-is-a-queue"]], "What is a Stack?": [[78, "what-is-a-stack"]], "Linear Structures": [[79, "linear-structures"], [79, null]], "Implementing an Ordered Linked List": [[83, "implementing-an-ordered-linked-list"]], "Analysis of Linked Lists": [[83, "analysis-of-linked-lists"]], "Implementing an Unordered Linked List": [[84, "implementing-an-unordered-linked-list"]], "The Node Class": [[84, "the-node-class"]], "The Unordered Linked List Class": [[84, "the-unordered-linked-list-class"]], "The Ordered List Abstract Data Type": [[88, "the-ordered-list-abstract-data-type"]], "Forward lists": [[88, "forward-lists"]], "Lists": [[88, "lists"]], "The Unordered Array Abstract Data Type": [[89, "the-unordered-array-abstract-data-type"]], "What Are Linked Structures?": [[90, "what-are-linked-structures"]], "Linear Linked Structures": [[91, "linear-linked-structures"], [91, null]], "Complex Recursive Problems": [[92, "complex-recursive-problems"]], "Dynamic Programming": [[94, "dynamic-programming"]], "Self-check": [[94, "self-check"]], "Exploring a Maze": [[95, "exploring-a-maze"]], "Stack Frames: Implementing Recursion": [[98, "stack-frames-implementing-recursion"]], "The Three Laws of Recursion": [[99, "the-three-laws-of-recursion"]], "Tower of Hanoi": [[100, "tower-of-hanoi"]], "What Is Recursion?": [[101, "what-is-recursion"]], "Calculating the Sum of a Vector of Numbers": [[102, "calculating-the-sum-of-a-vector-of-numbers"]], "Converting an Integer to a String in Any Base": [[103, "converting-an-integer-to-a-string-in-any-base"]], "Sierpinski Triangle": [[105, "sierpinski-triangle"]], "Introduction: Visualizing Recursion": [[106, "introduction-visualizing-recursion"]], "Recursion": [[107, "recursion"], [107, null]], "Hashing": [[110, "hashing"]], "Table 4: Simple Hash Function Using Remainders": [[110, "id2"]], "Hash Functions": [[110, "hash-functions"]], "Table 5: Comparison of Remainder and Mid-Square Methods": [[110, "id4"]], "Collision Resolution": [[110, "collision-resolution"]], "Implementing the Map Abstract Data Type": [[110, "implementing-the-map-abstract-data-type"]], "Table 1: Map Operations": [[110, "id12"]], "Analysis of Hashing": [[110, "analysis-of-hashing"]], "The Binary Search": [[114, "the-binary-search"]], "Analysis of Binary Search": [[114, "analysis-of-binary-search"]], "Table 3: Tabular Analysis for a Binary Search": [[114, "id2"]], "The Sequential Search": [[115, "the-sequential-search"]], "Analysis of Sequential Search": [[115, "analysis-of-sequential-search"]], "Table 1: Comparisons Used in a Sequential Search of an Unordered List": [[115, "id2"]], "Table 2: Comparisons Used in Sequential Search of an Ordered List": [[115, "id4"]], "Searching": [[116, "searching"]], "Searching and Hashing": [[117, "searching-and-hashing"], [117, null]], "The Bubble Sort": [[123, "the-bubble-sort"]], "Table 1: Comparisons for Each Pass of Bubble Sort": [[123, "id3"]], "The Insertion Sort": [[124, "the-insertion-sort"]], "The Merge Sort": [[125, "the-merge-sort"]], "The Quick Sort": [[126, "the-quick-sort"]], "The Selection Sort": [[127, "the-selection-sort"]], "The Shell Sort": [[128, "the-shell-sort"]], "Sorting": [[129, "sorting"], [130, "sorting"], [130, null]], "AVL Tree Implementation": [[131, "avl-tree-implementation"]], "AVL Tree Performance": [[132, "avl-tree-performance"]], "Balanced Binary Search Trees": [[133, "balanced-binary-search-trees"]], "Binary Heap Implementation": [[134, "binary-heap-implementation"]], "The Structure Property": [[134, "the-structure-property"]], "The Heap Order Property": [[134, "the-heap-order-property"]], "Heap Operations": [[134, "heap-operations"]], "Binary Heap Operations": [[135, "binary-heap-operations"]], "Priority Queues with Binary Heaps Example": [[136, "priority-queues-with-binary-heaps-example"]], "Binary Search Trees": [[137, "binary-search-trees"]], "Examples of Trees": [[139, "examples-of-trees"]], "List of Lists Representation": [[141, "list-of-lists-representation"]], "Nodes and References": [[142, "nodes-and-references"]], "Parse Tree": [[144, "parse-tree"]], "Priority Queues with Binary Heaps": [[145, "priority-queues-with-binary-heaps"]], "Search Tree Analysis": [[147, "search-tree-analysis"]], "Search Tree Implementation": [[148, "search-tree-implementation"]], "Search Tree Operations": [[149, "search-tree-operations"]], "Summary of Map ADT Implementations": [[151, "summary-of-map-adt-implementations"]], "Table 1: Comparing the Performance of Different Map Implementations": [[151, "id1"]], "Tree Traversals": [[152, "tree-traversals"]], "Trees and Tree Algorithms": [[154, "trees-and-tree-algorithms"], [154, null]], "Class Assignments": [[167, "class-assignments"]], "Problem Solving with Algorithms and Data Structures using C++": [[168, "problem-solving-with-algorithms-and-data-structures-using-c"]], "Acknowledgements": [[168, "acknowledgements"]], "Indices and tables": [[168, "indices-and-tables"]]}, "indexentries": {"big-o notation": [[3, "term-Big-O-notation"]], "algorithm": [[3, "term-algorithm"], [44, "term-algorithm"], [60, "term-algorithm"]], "average case": [[3, "term-average-case"]], "best case": [[3, "term-best-case"]], "brute force": [[3, "term-brute-force"]], "contains": [[3, "term-contains"]], "contiguous": [[3, "term-contiguous"]], "dynamic size": [[3, "term-dynamic-size"]], "exponential": [[3, "term-exponential"]], "get_item": [[3, "term-get_item"]], "hash table": [[3, "term-hash-table"], [44, "term-hash-table"], [109, "term-hash-table"]], "linear": [[3, "term-linear"]], "logarithmic": [[3, "term-logarithmic"]], "order of magnitude": [[3, "term-order-of-magnitude"]], "quadratic": [[3, "term-quadratic"]], "set_item": [[3, "term-set_item"]], "vector": [[3, "term-vector"], [44, "term-vector"]], "worst case": [[3, "term-worst-case"]], "acyclic graph": [[22, "term-acyclic-graph"]], "adjacency list": [[22, "term-adjacency-list"]], "adjacency matrix": [[22, "term-adjacency-matrix"]], "adjacent": [[22, "term-adjacent"]], "breadth first search (bfs)": [[22, "term-breadth-first-search-BFS"]], "cycle": [[22, "term-cycle"]], "cyclic graph": [[22, "term-cyclic-graph"]], "depth first forest": [[22, "term-depth-first-forest"]], "depth first search (dfs)": [[22, "term-depth-first-search-DFS"]], "digraph": [[22, "term-digraph"]], "directed acyclic graph (dag)": [[22, "term-directed-acyclic-graph-DAG"]], "directed graph": [[22, "term-directed-graph"]], "edge": [[22, "term-edge"], [140, "term-edge"]], "edge cost": [[22, "term-edge-cost"]], "parenthesis property": [[22, "term-parenthesis-property"]], "path": [[22, "term-path"], [140, "term-path"]], "shortest path": [[22, "term-shortest-path"]], "spanning tree": [[22, "term-spanning-tree"]], "strongly connected components (scc)": [[22, "term-strongly-connected-components-SCC"]], "topological sorting": [[22, "term-topological-sorting"]], "uncontrolled flooding": [[22, "term-uncontrolled-flooding"]], "vertex": [[22, "term-vertex"]], "weight": [[22, "term-weight"]], "and": [[44, "term-AND"]], "has-a relationship": [[44, "term-HAS-A-Relationship"]], "not": [[44, "term-NOT"]], "or": [[44, "term-OR"]], "abstract data type/adt": [[44, "term-abstract-data-type-ADT"]], "abstraction": [[44, "term-abstraction"]], "access keywords": [[44, "term-access-keywords"]], "address-of": [[44, "term-address-of"]], "argument": [[44, "term-argument"]], "array": [[44, "term-array"]], "array parameters": [[44, "term-array-parameters"]], "atomic data type": [[44, "term-atomic-data-type"]], "base class": [[44, "term-base-class"]], "bool": [[44, "term-bool"]], "char": [[44, "term-char"]], "class": [[44, "term-class"]], "class methods": [[44, "term-class-methods"]], "collection": [[44, "term-collection"]], "compiler": [[44, "term-compiler"]], "computable": [[44, "term-computable"]], "const": [[44, "term-const"]], "constructor": [[44, "term-constructor"]], "data abstraction": [[44, "term-data-abstraction"]], "data structure": [[44, "term-data-structure"], [96, "term-data-structure"]], "data types": [[44, "term-data-types"]], "dereference": [[44, "term-dereference"]], "derived class": [[44, "term-derived-class"]], "double": [[44, "term-double"]], "encapsulation": [[44, "term-encapsulation"]], "float": [[44, "term-float"]], "friend": [[44, "term-friend"]], "friend function": [[44, "term-friend-function"]], "function": [[44, "term-function"]], "function overloading": [[44, "term-function-overloading"]], "immutable": [[44, "term-immutable"], [97, "index-0"]], "information hiding": [[44, "term-information-hiding"]], "inheritance": [[44, "term-inheritance"]], "inheritance hierarchy": [[44, "term-inheritance-hierarchy"]], "instance": [[44, "term-instance"]], "int": [[44, "term-int"]], "int main()": [[44, "term-int-main"]], "interface": [[44, "term-interface"]], "machine code": [[44, "term-machine-code"]], "mutability": [[44, "term-mutability"]], "object": [[44, "term-object"]], "object attribute": [[44, "term-object-attribute"]], "object-oriented programming language": [[44, "term-object-oriented-programming-language"]], "operator overloading": [[44, "term-operator-overloading"]], "overloading": [[44, "term-overloading"]], "parameter": [[44, "term-parameter"]], "pass by reference": [[44, "term-pass-by-reference"]], "pass by value": [[44, "term-pass-by-value"]], "pointer": [[44, "term-pointer"]], "polymorphism": [[44, "term-polymorphism"]], "programming": [[44, "term-programming"]], "reference": [[44, "term-reference"]], "set": [[44, "term-set"]], "string": [[44, "term-string"]], "subclasses": [[44, "term-subclasses"]], "superclass": [[44, "term-superclass"]], "truth table": [[44, "term-truth-table"]], "unordered set": [[44, "term-unordered-set"]], "void": [[44, "term-void"]], "word": [[44, "term-word"]], "balanced parentheses": [[60, "term-balanced-parentheses"]], "deque": [[60, "term-deque"]], "first-in first-out (fifo)": [[60, "term-first-in-first-out-FIFO"]], "fully parenthesized": [[60, "term-fully-parenthesized"]], "infix": [[60, "term-infix"]], "last-in first-out (lifo)": [[60, "term-last-in-first-out-LIFO"]], "linear data structure": [[60, "term-linear-data-structure"]], "palindrome": [[60, "term-palindrome"]], "postfix": [[60, "term-postfix"]], "precedence": [[60, "term-precedence"]], "prefix": [[60, "term-prefix"]], "queue": [[60, "term-queue"]], "simulation": [[60, "term-simulation"]], "stack": [[60, "term-stack"]], "forward list": [[82, "term-forward-list"]], "head": [[82, "term-head"]], "linked data structure": [[82, "term-linked-data-structure"]], "linked list": [[82, "term-linked-list"]], "linked list traversal": [[82, "term-linked-list-traversal"]], "list": [[82, "term-list"]], "node": [[82, "term-node"], [140, "term-node"]], "ordered linked list": [[82, "term-ordered-linked-list"]], "ordered list": [[82, "term-ordered-list"]], "unordered linked list": [[82, "term-unordered-linked-list"]], "base case": [[96, "term-base-case"]], "dynamic programming": [[96, "term-dynamic-programming"]], "exception": [[96, "term-exception"]], "handle an exception": [[96, "term-handle-an-exception"]], "immutable data type": [[96, "term-immutable-data-type"]], "infinite recursion": [[96, "term-infinite-recursion"]], "mutable data type": [[96, "term-mutable-data-type"]], "raise": [[96, "term-raise"]], "recursion": [[96, "term-recursion"]], "recursive call": [[96, "term-recursive-call"]], "recursive definition": [[96, "term-recursive-definition"]], "stack frame": [[96, "term-stack-frame"]], "tuple": [[96, "term-tuple"], [97, "index-0"]], "tuple assignment": [[96, "term-tuple-assignment"]], "koch": [[97, "index-1"]], "koch fractal": [[97, "index-1"]], "fractal": [[97, "index-1"]], "mutable": [[97, "index-0"]], "binary search": [[109, "term-binary-search"]], "chaining": [[109, "term-chaining"]], "clustering": [[109, "term-clustering"]], "collision": [[109, "term-collision"]], "collision resolution": [[109, "term-collision-resolution"]], "folding method": [[109, "term-folding-method"]], "hash function": [[109, "term-hash-function"]], "hashing": [[109, "term-hashing"]], "linear probing": [[109, "term-linear-probing"]], "load factor": [[109, "term-load-factor"]], "map": [[109, "term-map"]], "mid-square method": [[109, "term-mid-square-method"]], "open addressing": [[109, "term-open-addressing"]], "perfect hash function": [[109, "term-perfect-hash-function"]], "quadratic probing": [[109, "term-quadratic-probing"]], "rehashing": [[109, "term-rehashing"]], "searching": [[109, "term-searching"]], "sequential search": [[109, "term-sequential-search"]], "slot": [[109, "term-slot"]], "bubble sort": [[119, "term-bubble-sort"]], "gap": [[119, "term-gap"]], "insertion sort": [[119, "term-insertion-sort"]], "median of three": [[119, "term-median-of-three"]], "merge": [[119, "term-merge"]], "merge sort": [[119, "term-merge-sort"]], "partition": [[119, "term-partition"]], "pivot value": [[119, "term-pivot-value"]], "quick sort": [[119, "term-quick-sort"]], "selection sort": [[119, "term-selection-sort"]], "shell sort": [[119, "term-shell-sort"]], "short bubble": [[119, "term-short-bubble"]], "sorting": [[119, "term-sorting"]], "split point": [[119, "term-split-point"]], "avl tree": [[140, "term-AVL-tree"]], "balance factor": [[140, "term-balance-factor"]], "binary heap": [[140, "term-binary-heap"]], "binary search tree": [[140, "term-binary-search-tree"]], "binary tree": [[140, "term-binary-tree"]], "bst propery": [[140, "term-bst-propery"]], "children": [[140, "term-children"]], "complete binary tree": [[140, "term-complete-binary-tree"]], "heap order property": [[140, "term-heap-order-property"]], "height": [[140, "term-height"]], "inorder": [[140, "term-inorder"]], "leaf node": [[140, "term-leaf-node"]], "level": [[140, "term-level"]], "max heap": [[140, "term-max-heap"]], "min heap": [[140, "term-min-heap"]], "parent": [[140, "term-parent"]], "postorder": [[140, "term-postorder"]], "preorder": [[140, "term-preorder"]], "priority queue": [[140, "term-priority-queue"]], "root": [[140, "term-root"]], "rotation": [[140, "term-rotation"]], "sibling": [[140, "term-sibling"]], "subtree": [[140, "term-subtree"]], "successor": [[140, "term-successor"]], "tree": [[140, "term-tree"]]}})