├── .gitattributes ├── README.md ├── docs ├── about.md ├── advanced │ ├── Context_Managers.md │ ├── Python_Magic_Methods.md │ └── Python_Metaclasses.md ├── beginner │ ├── Conditions.md │ ├── Data_Types_In_Python_3.md │ ├── For_Loop.md │ ├── Functions.md │ ├── Python_Installation.md │ ├── Python_Programming_Lanuage.md │ ├── Scopes.md │ ├── Scopes_Namespaces_LEGB_rule.md │ ├── Start_Coding_With_Python.md │ └── Variables_And_Assignment.md ├── images │ ├── a1box.png │ ├── a1tag.png │ ├── a2box.png │ ├── a2tag.png │ ├── ab2tag.png │ ├── b2box.png │ ├── class-attribute-lookup.png │ ├── class-creation.png │ ├── compiler.PNG │ ├── instance-creation.png │ ├── instance-of.png │ ├── interpreter.PNG │ ├── logo.png │ ├── object-attribute-lookup.png │ ├── osx_atom.png │ ├── osx_terminal_ex1.png │ ├── py_execution_model.PNG │ ├── scope_resolution_1.png │ ├── stack-diagrams.PNG │ └── win_powershell_ex1.png ├── index.md └── questions │ └── questions.md ├── files └── dive into python 3 - datatypes.pdf ├── just.py ├── mkdocs.yml └── site ├── 404.html ├── About └── index.html ├── advanced ├── Context_Managers │ └── index.html ├── Python_Magic_Methods │ └── index.html └── Python_Metaclasses │ └── index.html ├── assets ├── images │ ├── favicon.png │ └── icons │ │ ├── bitbucket.4ebea66e.svg │ │ ├── github.a4034fb1.svg │ │ └── gitlab.d80e5efc.svg ├── javascripts │ ├── application.ce2ab4bf.js │ ├── lunr │ │ ├── lunr.da.js │ │ ├── lunr.de.js │ │ ├── lunr.du.js │ │ ├── lunr.es.js │ │ ├── lunr.fi.js │ │ ├── lunr.fr.js │ │ ├── lunr.hu.js │ │ ├── lunr.it.js │ │ ├── lunr.jp.js │ │ ├── lunr.multi.js │ │ ├── lunr.no.js │ │ ├── lunr.pt.js │ │ ├── lunr.ro.js │ │ ├── lunr.ru.js │ │ ├── lunr.stemmer.support.js │ │ ├── lunr.sv.js │ │ ├── lunr.tr.js │ │ └── tinyseg.js │ └── modernizr.1aa3b519.js └── stylesheets │ ├── application-palette.792431c1.css │ └── application.2a88008a.css ├── beginner ├── Conditions │ └── index.html ├── Data_Types_In_Python_3 │ └── index.html ├── For_Loop │ └── index.html ├── Functions │ └── index.html ├── Python_Installation │ └── index.html ├── Python_Programming_Lanuage │ └── index.html ├── Scopes │ └── index.html ├── Scopes_Namespaces_LEGB_rule │ └── index.html ├── Start_Coding_With_Python │ └── index.html └── Variables_And_Assignment │ └── index.html ├── images ├── a1box.png ├── a1tag.png ├── a2box.png ├── a2tag.png ├── ab2tag.png ├── b2box.png ├── class-attribute-lookup.png ├── class-creation.png ├── compiler.PNG ├── instance-creation.png ├── instance-of.png ├── interpreter.PNG ├── logo.png ├── object-attribute-lookup.png ├── osx_atom.png ├── osx_terminal_ex1.png ├── py_execution_model.PNG ├── scope_resolution_1.png ├── stack-diagrams.PNG └── win_powershell_ex1.png ├── index.html ├── search └── search_index.json └── sitemap.xml /.gitattributes: -------------------------------------------------------------------------------- 1 | site/* linguist-vendored 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ![python_synopsis_repo_poster](https://user-images.githubusercontent.com/2203893/29452419-61dfbeb2-8417-11e7-809b-3c66317fa3c7.jpg) 2 | Welcome to Python Synopsis! 3 | =================== 4 | 5 | 6 | ### Python Study Guide 7 | 8 | 9 | In this repository I want to share resources, that helped me understand python programing language deeply. 10 | It was not easy to find appropriate **books, articles, answers from Stackoverflow, online courses, videos from py conferences** and etc. 11 | 12 | So, after all I decided to share **top resources** for everyone about each topic, that you need to know about python, if you want to be senior python **Software Engineer**. 13 | 14 | Of course, it needs plenty of time to organize best resources based on the topics and it's hard for me to do it every day, but I want to do min 1 chapter each week and now I think, that there will be more than **30-40** chapters. 15 | 16 | So, You can start study from here: 17 | [Python Synopsis - https://entgriff.github.io/Python-Synopsis/site/ ](https://entgriff.github.io/Python-Synopsis/site/) 18 | 19 | - Beginner 20 | - [The Python Programming Language, Implementation and Adventages](https://entgriff.github.io/Python-Synopsis/site/beginner/Python_Programming_Lanuage) 21 | - [Python Installation](https://entgriff.github.io/Python-Synopsis/site/beginner/Python_Installation) 22 | - [Start Coding With Python](https://entgriff.github.io/Python-Synopsis/site/beginner/Start_Coding_With_Python) 23 | - [Data Types In Python 3](https://entgriff.github.io/Python-Synopsis/site/beginner/Data_Types_In_Python_3) 24 | - [Variables and Assignment](https://entgriff.github.io/Python-Synopsis/site/beginner/Variables_And_Assignment) 25 | - [Conditions](https://entgriff.github.io/Python-Synopsis/site/beginner/Conditions) 26 | - [For Loop](https://entgriff.github.io/Python-Synopsis/site/beginner/For_Loop) 27 | - [Scope](https://entgriff.github.io/Python-Synopsis/site/beginner/Scopes) 28 | - [Scopes, Namespaces and LEGB Rule](https://entgriff.github.io/Python-Synopsis/site/beginner/Scopes_Namespaces_LEGB_rule) 29 | - ... 30 | - [Functions](https://entgriff.github.io/Python-Synopsis/site/beginner/Functions) 31 | - ... 32 | - Intermediate 33 | - ... 34 | - Advanced 35 | - ... 36 | - [Context Managers](https://entgriff.github.io/Python-Synopsis/site/advanced/Context_Managers) 37 | - [Python Metaclasses](https://entgriff.github.io/Python-Synopsis/site/advanced/Python_Metaclasses) 38 | - ... 39 | 40 | 41 | ### Bibliography 42 | - Books : 43 | - **How To Code in Python 3** by Lisa Tagliaferri 44 | - **Dive into Python 3** by Mark Pilgrim 45 | - **Learning Python, Fourth Edition** by Mark Lutz 46 | - **Think Python** by Allen B. Downey 47 | - **Learn Python The Hard Way** by Zed A. Shaw 48 | - **Python In A Nutshell, Second Edition** by Alex Martelli 49 | - **Bioinformatics Programming Using Python** by Mitchell L Model 50 | - **Python 3 Object-oriented Programming, Second Edition** by Dusty Phillips 51 | - Sites: 52 | - **https://www.tutorialspoint.com/python3/** 53 | - **https://stackoverflow.com/** 54 | - **https://en.wikiversity.org/** 55 | - **http://pythoncentral.io** 56 | - **http://thepythonguru.com** 57 | - **https://code.tutsplus.com** 58 | - **https://www.scaler.com/topics/python/** 59 | - Articles : 60 | - **Assignment statements in Python are more interesting than you might think** by Dibya Chakravorty 61 | - **Understanding Python variables and Memory Management** by Sreejith Kesavan 62 | - **Quick Tip: What Is a Metaclass in Python?** by Abder-Rahman Ali 63 | - **Understanding Python metaclasses** by Ionel Cristian Mărieș 64 | - **How Exactly Do Context Managers Work?**by Evan Dempsey 65 | -------------------------------------------------------------------------------- /docs/about.md: -------------------------------------------------------------------------------- 1 | # I'll write later 2 | -------------------------------------------------------------------------------- /docs/advanced/Context_Managers.md: -------------------------------------------------------------------------------- 1 | ## How Exactly Do Context Managers Work? 2 | 3 | Context managers (PEP 343) are pretty important in Python. You probably use one every time you open a file: 4 | ```python 5 | with open('cake.txt') as c: 6 | gobble_gobble(c) 7 | ``` 8 | But how well do you understand what’s going on behind the scenes? 9 | 10 | ### CONTEXT MANAGER CLASSES 11 | It’s actually quite simple. A context manager is a class that implements an `__enter__` and an `__exit__` method. 12 | 13 | Let’s imagine you want to you print a line of text to the console surrounded with asterisks. Here’s a context manager to do it: 14 | 15 | ```python 16 | class asterisks(): 17 | def __enter__(self): 18 | print('*' * 32) 19 | 20 | def __exit__(self, exc_type, exc_val, exc_tb): 21 | print('*' * 32) 22 | ``` 23 | The `__exit__` method takes three arguments apart from `self`. Those arguments contain information about any errors that occurred inside the `with` block. 24 | 25 | You can use `asterisks` in the same way as any of the built-in context managers: 26 | ```python 27 | >>> with asterisks(): 28 | >>> print("Context Managers Rock!") 29 | ******************************** 30 | Context Managers Rock! 31 | ******************************** 32 | ``` 33 | 34 | ### ACCESSING THE CONTEXT INSIDE THE WITH BLOCK 35 | If you need to get something back and use it inside the with block – such as a file descriptor – you simply return it from `__enter__`: 36 | ```python 37 | class myopen(): 38 | def __init__(self, filename, filemode): 39 | self.filename = filename 40 | self.filemode = filemode 41 | 42 | def __enter__(self): 43 | self.file = open(self.filename, self.filemode) 44 | return self.file 45 | 46 | def __exit__(self, exc_type, exc_val, exc_tb): 47 | self.file.close() 48 | ``` 49 | `myopen` works identically to the built-in `open`: 50 | ```python 51 | with myopen("beer.txt") as b: 52 | guzzle_guzzle(b) 53 | ``` 54 | 55 | ### THE CONTEXTMANAGER DECORATOR 56 | 57 | Thankfully, you don’t have to implement a class every time. The `contextlib` package has a `contextmanager` decorator that you can apply to generators to automatically transform them into context managers: 58 | ```python 59 | from contextlib import contextmanager 60 | 61 | @contextmanager 62 | def spoiler(): 63 | print('') 64 | yield 65 | print('') 66 | ``` 67 | The code before `yield` corresponds to `__enter__` and the code after `yield` corresponds to `__exit__`. A context manager generator should have exactly one `yield` in it. 68 | 69 | It works the same as the class version: 70 | ```python 71 | >>> with spoiler(): 72 | >>> print("Jon Snow is Luke's father.") 73 | 74 | Jon Snow is Luke's father. 75 | 76 | ``` 77 | 78 | ### ROLL YOUR OWN CONTEXTMANAGER DECORATOR 79 | The implementation in `contextlib` is complicated, but it’s not hard to write something that works similarly with the exception of a few edge cases: 80 | ```python 81 | def contextmanager(gen): 82 | class CMWrapper(object): 83 | def __init__(self, wrapped): 84 | self.generator = wrapped 85 | 86 | def __enter__(self): 87 | return next(self.generator) 88 | 89 | def __exit__(self, ex_type, value, traceback): 90 | try: 91 | next(self.generator) 92 | except StopIteration: 93 | pass 94 | 95 | def inner(*args, **kwargs): 96 | return CMWrapper(gen(*args, **kwargs)) 97 | 98 | return inner 99 | ``` 100 | It’s not as robust as the real implementation, but it should be understandable. Here are the key points: 101 | - The inner function instantiates a copy of the nested CMWrapper class with a handle on the generator passed into the decorator. 102 | - `__enter__` calls next() on the generator and returns the yielded value so it can be used in the with block. 103 | - `__exit__` calls next() again and catches the StopIteration exception that the generator throws when it finishes. 104 | 105 | That’s it for now. If you want to learn more about context managers, I recommend you take a look at the code for `contextlib`. 106 | 107 | > **Source:** 108 | > :fa-link: https://www.smallsurething.com/how-exactly-do-context-managers-work/ 109 | 110 | 111 | ## Python Context Managers and the "with" Statement (__enter__ & __exit__) **VIDEO** 112 | [![IMAGE ALT TEXT HERE](https://img.youtube.com/vi/iba-I4CrmyA/0.jpg)](https://youtu.be/iba-I4CrmyA) 113 | 114 | 115 | -------------------------------------------------------------------------------- /docs/advanced/Python_Magic_Methods.md: -------------------------------------------------------------------------------- 1 | # All about Python magic methods: 2 | 3 | > :fa-link: https://rszalski.github.io/magicmethods/ 4 | -------------------------------------------------------------------------------- /docs/beginner/For_Loop.md: -------------------------------------------------------------------------------- 1 | ## How To Construct For Loops in Python 3 2 | 3 | Using loops in computer programming allows us to automate and repeat similar tasks multiple times. In this tutorial, we’ll be covering Python’s for loop. 4 | 5 | A for loop implements the repeated execution of code based on a loop counter or loop variable. This means that for loops are used most often when the number of iterations is known before entering the loop, unlike while loops which are conditionally based. 6 | 7 | ## For Loops 8 | In Python, for loops are constructed like so: 9 | 10 | ```python 11 | for [iterating variable] in [sequence]: 12 | [do something] 13 | ``` 14 | 15 | The something that is being done will be executed until the sequence is over. 16 | 17 | Let’s look at a for loop that iterates through a range of values: 18 | 19 | ```python 20 | for i in range(0,5): 21 | print(i) 22 | ``` 23 | When we run this program, the output looks like this: 24 | ```python 25 | Output 26 | 0 27 | 1 28 | 2 29 | 3 30 | 4 31 | ``` 32 | This for loop sets up i as its iterating variable, and the sequence exists in the range of 0 to 5. 33 | 34 | Then within the loop we print out one integer per loop iteration. Keep in mind that in programming we tend to begin at index 0, so that is why although 5 numbers are printed out, they range from 0-4. 35 | 36 | You’ll commonly see and use for loops when a program needs to repeat a block of code a number of times. 37 | 38 | ### For Loops using range() 39 | One of Python’s built-in immutable sequence types is range(). In loops, range() is used to control how many times the loop will be repeated. 40 | When working with range(), you can pass between 1 and 3 integer arguments to it: 41 | 42 | - start states the integer value at which the sequence begins, if this is not included then start begins at 0 43 | - stop is always required and is the integer that is counted up to but not included 44 | - step sets how much to increase (or decrease in the case of negative numbers) the next iteration, if this is omitted then step defaults to 1 45 | 46 | We’ll look at some examples of passing different arguments to `range()`. 47 | 48 | First, let’s only pass the stop argument, so that our sequence set up is `range(stop)`: 49 | 50 | ```python 51 | for i in range(6): 52 | print(i) 53 | ``` 54 | In the program above, the stop argument is 6, so the code will iterate from 0-6 (exclusive of 6): 55 | 56 | ```python 57 | Output 58 | 0 59 | 1 60 | 2 61 | 3 62 | 4 63 | 5 64 | ``` 65 | Next, we’ll look at range(start, stop), with values passed for when the iteration should start and for when it should stop: 66 | ```python 67 | for i in range(20,25): 68 | print(i) 69 | ``` 70 | 71 | Here, the range goes from 20 (inclusive) to 25 (exclusive), so the output looks like this: 72 | 73 | ```python 74 | Output 75 | 20 76 | 21 77 | 22 78 | 23 79 | 24 80 | ``` 81 | The step argument of range() is similar to specifying stride while slicing strings in that it can be used to skip values within the sequence. 82 | 83 | With all three arguments, step comes in the final position: range(start, stop, step). First, let’s use a step with a positive value: 84 | 85 | ```python 86 | for i in range(0,15,3): 87 | print(i) 88 | ``` 89 | In this case, the for loop is set up so that the numbers from 0 to 15 print out, but at a step of 3, so that only every third number is printed, like so: 90 | 91 | 92 | ```python 93 | Output 94 | 0 95 | 3 96 | 6 97 | 9 98 | 12 99 | ``` 100 | We can also use a negative value for our step argument to iterate backwards, but we’ll have to adjust our start and stop arguments accordingly: 101 | 102 | ```python 103 | for i in range(100,0,-10): 104 | print(i) 105 | ``` 106 | 107 | Here, 100 is the start value, 0 is the stop value, and -10 is the range, so the loop begins at 100 and ends at 0, decreasing by 10 with each iteration. We can see this occur in the output: 108 | 109 | ```python 110 | Output 111 | 100 112 | 90 113 | 80 114 | 70 115 | 60 116 | 50 117 | 40 118 | 30 119 | 20 120 | 10 121 | ``` 122 | When programming in Python, `for` loops often make use of the range() sequence type as its parameters for iteration. 123 | 124 | ### For Loops using Sequential Data Types 125 | Lists and other data sequence types can also be leveraged as iteration parameters in for loops. Rather than iterating through a range(), you can define a list and iterate through that list. 126 | 127 | We’ll assign a list to a variable, and then iterate through the list: 128 | 129 | ```python 130 | sharks = ['hammerhead', 'great white', 'dogfish', 'frilled', 'bullhead', 'requiem'] 131 | 132 | for shark in sharks: 133 | print(shark) 134 | ``` 135 | 136 | In this case, we are printing out each item in the list. Though we used the variable shark, we could have called the variable any other valid variable name and we would get the same output: 137 | 138 | ```python 139 | Output 140 | hammerhead 141 | great white 142 | dogfish 143 | frilled 144 | bullhead 145 | requiem 146 | ``` 147 | The output above shows that the for loop iterated through the list, and printed each item from the list per line. 148 | 149 | Lists and other sequence-based data types like strings and tuples are common to use with loops because they are iterable. You can combine these data types with range() to add items to a list, for example: 150 | 151 | 152 | ```python 153 | sharks = ['hammerhead', 'great white', 'dogfish', 'frilled', 'bullhead', 'requiem'] 154 | 155 | for item in range(len(sharks)): 156 | sharks.append('shark') 157 | 158 | print(sharks) 159 | ``` 160 | 161 | ```python 162 | Output 163 | ['hammerhead', 'great white', 'dogfish', 'frilled', 'bullhead', 'requiem', 'shark', 'shark', 'shark', 'shark', 'shark', 'shark'] 164 | ``` 165 | 166 | Here, we have added a placeholder string of 'shark' for each item of the length of the sharks list. 167 | 168 | You can also use a for loop to construct a list from scratch: 169 | 170 | ```python 171 | integers = [] 172 | 173 | for i in range(10): 174 | integers.append(i) 175 | 176 | print(integers) 177 | ``` 178 | 179 | In this example, the list integers is initialized empty, but the for loop populates the list like so: 180 | 181 | ```python 182 | Output 183 | [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 184 | ``` 185 | 186 | Similarly, we can iterate through strings: 187 | 188 | ```python 189 | sammy = 'Sammy' 190 | 191 | for letter in sammy: 192 | print(letter) 193 | ``` 194 | 195 | ```python 196 | Output 197 | S 198 | a 199 | m 200 | m 201 | y 202 | ``` 203 | 204 | Iterating through tuples is done in the same format as iterating through lists or strings above. 205 | 206 | When iterating through a dictionary, it’s important to keep the key : value structure in mind to ensure that you are calling the correct element of the dictionary. Here is an example that calls both the key and the value: 207 | 208 | ```python 209 | sammy_shark = {'name': 'Sammy', 'animal': 'shark', 'color': 'blue', 'location': 'ocean'} 210 | 211 | for key in sammy_shark: 212 | print(key + ': ' + sammy_shark[key]) 213 | ``` 214 | 215 | 216 | ```python 217 | Output 218 | name: Sammy 219 | animal: shark 220 | location: ocean 221 | color: blue 222 | ``` 223 | 224 | 225 | When using dictionaries with for loops, the iterating variable corresponds to the keys of the dictionary, and dictionary_variable[iterating_variable] corresponds to the values. In the case above, the iterating variable key was used to stand for key, and sammy_shark[key] was used to stand for the values. 226 | 227 | Loops are often used to iterate and manipulate sequential data types. 228 | 229 | ### Nested For Loops 230 | Loops can be nested in Python, as they can with other programming languages. 231 | 232 | A nested loop is a loop that occurs within another loop, structurally similar to nested if statements. These are constructed like so: 233 | 234 | 235 | ```python 236 | for [first iterating variable] in [outer loop]: # Outer loop 237 | [do something] # Optional 238 | for [second iterating variable] in [nested loop]: # Nested loop 239 | [do something] 240 | ``` 241 | 242 | 243 | The program first encounters the outer loop, executing its first iteration. This first iteration triggers the inner, nested loop, which then runs to completion. Then the program returns back to the top of the outer loop, completing the second iteration and again triggering the nested loop. Again, the nested loop runs to completion, and the program returns back to the top of the outer loop until the sequence is complete or a break or other statement disrupts the process. 244 | 245 | Let’s implement a nested for loop so we can take a closer look. In this example, the outer loop will iterate through a list of integers called num_list, and the inner loop will iterate through a list of strings called alpha_list. 246 | 247 | ```python 248 | num_list = [1, 2, 3] 249 | alpha_list = ['a', 'b', 'c'] 250 | 251 | for number in num_list: 252 | print(number) 253 | for letter in alpha_list: 254 | print(letter) 255 | ``` 256 | 257 | When we run this program, we’ll receive the following output: 258 | 259 | ```python 260 | Output 261 | 1 262 | a 263 | b 264 | c 265 | 2 266 | a 267 | b 268 | c 269 | 3 270 | a 271 | b 272 | c 273 | ``` 274 | The output illustrates that the program completes the first iteration of the outer loop by printing 1, which then triggers completion of the inner loop, printing a, b, c consecutively. Once the inner loop has completed, the program returns to the top of the outer loop, prints 2, then again prints the inner loop in its entirety (a, b, c), etc. 275 | 276 | Nested for loops can be useful for iterating through items within lists composed of lists. In a list composed of lists, if we employ just one for loop, the program will output each internal list as an item: 277 | 278 | ```python 279 | list_of_lists = [['hammerhead', 'great white', 'dogfish'],[0, 1, 2],[9.9, 8.8, 7.7]] 280 | 281 | for list in list_of_lists: 282 | print(list) 283 | ``` 284 | 285 | ```python 286 | Output 287 | ['hammerhead', 'great white', 'dogfish'] 288 | [0, 1, 2] 289 | [9.9, 8.8, 7.7] 290 | ``` 291 | In order to access each individual item of the internal lists, we’ll implement a nested for loop: 292 | 293 | ```python 294 | list_of_lists = [['hammerhead', 'great white', 'dogfish'],[0, 1, 2],[9.9, 8.8, 7.7]] 295 | 296 | for list in list_of_lists: 297 | for item in list: 298 | print(item) 299 | ``` 300 | 301 | ```python 302 | Output 303 | hammerhead 304 | great white 305 | dogfish 306 | 0 307 | 1 308 | 2 309 | 9.9 310 | 8.8 311 | 7.7 312 | ``` 313 | 314 | 315 | When we utilize a nested for loop we are able to iterate over the individual items contained in the lists. 316 | 317 | 318 | 319 | ### Conclusion 320 | 321 | This tutorial went over how for loops work in Python and how to construct them. For loops continue to loop through a block of code provided a certain number of times. 322 | 323 | From here, you can continue to learn about looping by reading tutorials on [while](https://www.digitalocean.com/community/tutorials/how-to-construct-while-loops-in-python-3) loops and [break, continue, and pass statements.](https://www.digitalocean.com/community/tutorials/how-to-use-break-continue-and-pass-statements-when-working-with-loops-in-python-3) 324 | -------------------------------------------------------------------------------- /docs/beginner/Python_Installation.md: -------------------------------------------------------------------------------- 1 | Python Download and Installation Instructions 2 | ------------- 3 | 4 | ### Install Python on Windows 5 | [![IMAGE ALT TEXT HERE](https://img.youtube.com/vi/dX2-V2BocqQ/0.jpg)](https://www.youtube.com/watch?v=dX2-V2BocqQ) 6 | 7 | ### Install Python on Ubuntu 8 | [![IMAGE ALT TEXT HERE](https://img.youtube.com/vi/YFNTNOnJeBo/0.jpg)](https://www.youtube.com/watch?v=YFNTNOnJeBo) 9 | 10 | ### Install Python on Mac 11 | [![IMAGE ALT TEXT HERE](https://img.youtube.com/vi/UP65XcttmbE/0.jpg)](https://www.youtube.com/watch?v=UP65XcttmbE) -------------------------------------------------------------------------------- /docs/beginner/Scopes.md: -------------------------------------------------------------------------------- 1 | ### Scopes - Python Scope Basics 2 | 3 | Now that you’re ready to start writing your own functions, we need to get more formal 4 | about what names mean in Python. When you use a name in a program, Python creates, 5 | changes, or looks up the name in what is known as a namespace—a place where names 6 | live. When we talk about the search for a name’s value in relation to code, the term 7 | scope refers to a namespace: that is, the location of a name’s assignment in your code 8 | determines the scope of the name’s visibility to your code. 9 | Just about everything related to names, including scope classification, happens at assignment 10 | time in Python. As we’ve seen, names in Python spring into existence when 11 | they are first assigned values, and they must be assigned before they are used. Because 12 | names are not declared ahead of time, Python uses the location of the assignment of a 13 | name to associate it with (i.e., bind it to) a particular namespace. In other words, the 14 | place where you assign a name in your source code determines the namespace it will 15 | live in, and hence its scope of visibility. 16 | Besides packaging code, functions add an extra namespace layer to your programs— 17 | by default, all names assigned inside a function are associated with that function’s 18 | namespace, and no other. This means that: 19 | 20 | 21 | - Names defined inside a def can only be seen by the code within that def. You cannot 22 | even refer to such names from outside the function. 23 | - Names defined inside a def do not clash with variables outside the def, even if the 24 | same names are used elsewhere. A name X assigned outside a given def (i.e., in a 25 | different def or at the top level of a module file) is a completely different variable 26 | from a name X assigned inside that def. 27 | 28 | 29 | In all cases, the scope of a variable (where it can be used) is always determined by where 30 | it is assigned in your source code and has nothing to do with which functions call which. 31 | In fact, as we’ll learn in this chapter, variables may be assigned in three different places, 32 | corresponding to three different scopes: 33 | - If a variable is assigned inside a def, it is local to that function. 34 | - If a variable is assigned in an enclosing def, it is nonlocal to nested functions. 35 | - If a variable is assigned outside all defs, it is global to the entire file. 36 | We call this lexical scoping because variable scopes are determined entirely by the locations 37 | of the variables in the source code of your program files, not by function calls. 38 | For example, in the following module file, the X = 99 assignment creates a global variable 39 | named X (visible everywhere in this file), but the X = 88 assignment creates a 40 | local variable X (visible only within the def statement): 41 | 42 | ```python 43 | X = 99 44 | def func(): 45 | X = 88 46 | ``` 47 | 48 | Even though both variables are named X, their scopes make them different. The net 49 | effect is that function scopes help to avoid name clashes in your programs and help to 50 | make functions more self-contained program units. 51 | 52 | #### Scope Rules 53 | Before we started writing functions, all the code we wrote was at the top level of a 54 | module (i.e., not nested in a def), so the names we used either lived in the module itself 55 | or were built-ins predefined by Python (e.g., open). Functions provide nested namespaces 56 | (scopes) that localize the names they use, such that names inside a function 57 | won’t clash with those outside it (in a module or another function). Again, functions 58 | define a local scope, and modules define a global scope. The two scopes are related as 59 | follows: 60 | - `The enclosing module is a global scope.` Each module is a global scope—that 61 | is, a namespace in which variables created (assigned) at the top level of the module 62 | file live. Global variables become attributes of a module object to the outside world 63 | but can be used as simple variables within a module file. 64 | - `The global scope spans a single file only.` Don’t be fooled by the word “global” 65 | here—names at the top level of a file are only global to code within that single file. 66 | There is really no notion of a single, all-encompassing global file-based scope in Python. Instead, names are partitioned into modules, and you must always import 67 | a module explicitly if you want to be able to use the names its file defines. When 68 | you hear “global” in Python, think “module.” 69 | - `Each call to a function creates a new local scope.` Every time you call a function, 70 | you create a new local scope—that is, a namespace in which the names created 71 | inside that function will usually live. You can think of each def statement (and 72 | lambda expression) as defining a new local scope, but because Python allows functions 73 | to call themselves to loop (an advanced technique known as recursion), the 74 | local scope in fact technically corresponds to a function call—in other words, each 75 | call creates a new local namespace. Recursion is useful when processing structures 76 | whose shapes can’t be predicted ahead of time. 77 | - `Assigned names are local unless declared global or nonlocal.` By default, all 78 | the names assigned inside a function definition are put in the local scope (the 79 | namespace associated with the function call). If you need to assign a name that 80 | lives at the top level of the module enclosing the function, you can do so by declaring 81 | it in a global statement inside the function. If you need to assign a name 82 | that lives in an enclosing def, as of Python 3.0 you can do so by declaring it in a 83 | nonlocal statement. 84 | - `All other names are enclosing function locals, globals, or built-ins.` Names 85 | not assigned a value in the function definition are assumed to be enclosing scope 86 | locals (in an enclosing def), globals (in the enclosing module’s namespace), or builtins 87 | (in the predefined __builtin__ module Python provides). 88 | 89 | 90 | There are a few subtleties to note here. First, keep in mind that code typed at the 91 | interactive command prompt follows these same rules. You may not know it yet, but 92 | code run interactively is really entered into a built-in module called __main__; this 93 | module works just like a module file, but results are echoed as you go. Because of this, 94 | interactively created names live in a module, too, and thus follow the normal scope 95 | rules: they are global to the interactive session. You’ll learn more about modules in the 96 | next part of this book. 97 | 98 | Also note that any type of assignment within a function classifies a name as local. This 99 | includes = statements, module names in import, function names in def, function argument 100 | names, and so on. If you assign a name in any way within a def, it will become a 101 | local to that function. 102 | 103 | Conversely, in-place changes to objects do not classify names as locals; only actual name 104 | assignments do. For instance, if the name L is assigned to a list at the top level of a 105 | module, a statement L = X within a function will classify L as a local, but L.append(X) 106 | will not. In the latter case, we are changing the list object that L references, not L itself— 107 | L is found in the global scope as usual, and Python happily modifies it without requiring 108 | a global (or nonlocal) declaration. As usual, it helps to keep the distinction between 109 | names and objects clear: changing an object is not an assignment to a name. 110 | 111 | 112 | 113 | 114 | 115 | > **Source:** 116 | > :fa-book: **Learning Python, Fourth Edition** by Mark Lutz - 2009 117 | 118 | good resource : http://sebastianraschka.com/Articles/2014_python_scope_and_namespaces.html -------------------------------------------------------------------------------- /docs/beginner/Scopes_Namespaces_LEGB_rule.md: -------------------------------------------------------------------------------- 1 | # A Beginner's Guide to Python's Namespaces, Scope Resolution, and the LEGB Rule 2 | 3 | 4 | ## Introduction to namespaces and scopes 5 | 6 | ## Namespaces 7 | 8 | Roughly speaking, namespaces are just containers for mapping names to objects. As you might have already heard, everything in Python - literals, lists, dictionaries, functions, classes, etc. - is an object. 9 | Such a “name-to-object” mapping allows us to access an object by a name that we’ve assigned to it. E.g., if we make a simple string assignment via a_string = "Hello string", we created a reference to the "Hello string" object, and henceforth we can access via its variable name a_string. 10 | 11 | We can picture a namespace as a Python dictionary structure, where the dictionary keys represent the names and the dictionary values the object itself (and this is also how namespaces are currently implemented in Python), e.g., 12 | 13 | ```python 14 | a_namespace = {'name_a':object_1, 'name_b':object_2, ... } 15 | ``` 16 | 17 | Now, the tricky part is that we have multiple independent namespaces in Python, and names can be reused for different namespaces (only the objects are unique, for example: 18 | 19 | 20 | ```python 21 | a_namespace = {'name_a':object_1, 'name_b':object_2, ...} 22 | b_namespace = {'name_a':object_3, 'name_b':object_4, ...} 23 | ``` 24 | 25 | For example, everytime we call a for-loop or define a function, it will create its own namespace. Namespaces also have different levels of hierarchy (the so-called “scope”), which we will discuss in more detail in the next section. 26 | 27 | 28 | ## Scope 29 | In the section above, we have learned that namespaces can exist independently from each other and that they are structured in a certain hierarchy, which brings us to the concept of “scope”. The “scope” in Python defines the “hierarchy level” in which we search namespaces for certain “name-to-object” mappings. 30 | For example, let us consider the following code: 31 | 32 | ```python 33 | i = 1 34 | 35 | def foo(): 36 | i = 5 37 | print(i, 'in foo()') 38 | 39 | print(i, 'global') 40 | 41 | foo() 42 | 43 | ''' 44 | output: 45 | 1 global 46 | 5 in foo() 47 | ''' 48 | 49 | ``` 50 | 51 | Here, we just defined the variable name i twice, once on the foo function. 52 | - foo_namespace = {'i':object_3, ...} 53 | - global_namespace = {'i':object_1, 'name_b':object_2, ...} 54 | 55 | So, how does Python know which namespace it has to search if we want to print the value of the variable i? This is where Python’s LEGB-rule comes into play, which we will discuss in the next section. 56 | 57 | #### Tip: 58 | If we want to print out the dictionary mapping of the global and local variables, we can use the the functions global() and local() 59 | 60 | ```python 61 | #print(globals()) # prints global namespace 62 | #print(locals()) # prints local namespace 63 | 64 | glob = 1 65 | 66 | def foo(): 67 | loc = 5 68 | print('loc in foo():', 'loc' in locals()) 69 | 70 | foo() 71 | print('loc in global:', 'loc' in globals()) 72 | print('glob in global:', 'foo' in globals()) 73 | 74 | ''' 75 | loc in foo(): True 76 | loc in global: False 77 | glob in global: True 78 | ''' 79 | ``` 80 | 81 | 82 | ### Scope resolution for variable names via the LEGB rule. 83 | 84 | We have seen that multiple namespaces can exist independently from each other and that they can contain the same variable names on different hierachy levels. The “scope” defines on which hierarchy level Python searches for a particular “variable name” for its associated object. Now, the next question is: “In which order does Python search the different levels of namespaces before it finds the name-to-object’ mapping?” 85 | To answer is: It uses the LEGB-rule, which stands for 86 | 87 | `Local -> Enclosed -> Global -> Built-in,` 88 | 89 | 90 | where the arrows should denote the direction of the namespace-hierarchy search order. 91 | 92 | - Local can be inside a function or class method, for example. 93 | - Enclosed can be its enclosing function, e.g., if a function is wrapped inside another function. 94 | - Global refers to the uppermost level of the executing script itself, and 95 | - Built-in are special names that Python reserves for itself. 96 | 97 | So, if a particular name:object mapping cannot be found in the local namespaces, the namespaces of the enclosed scope are being searched next. If the search in the enclosed scope is unsuccessful, too, Python moves on to the global namespace, and eventually, it will search the built-in namespace (side note: if a name cannot found in any of the namespaces, a NameError will is raised). 98 | 99 | Namespaces can also be further nested, for example if we import modules, or if we are defining new classes. In those cases we have to use prefixes to access those nested namespaces. Let me illustrate this concept in the following code block: 100 | 101 | ```python 102 | import numpy 103 | import math 104 | import scipy 105 | 106 | print(math.pi, 'from the math module') 107 | print(numpy.pi, 'from the numpy package') 108 | print(scipy.pi, 'from the scipy package') 109 | 110 | 111 | ''' 112 | 3.141592653589793 from the math module 113 | 3.141592653589793 from the numpy package 114 | 3.141592653589793 from the scipy package 115 | ''' 116 | ``` 117 | 118 | (This is also why we have to be careful if we import modules via “from a_module import *”, since it loads the variable names into the global namespace and could potentially overwrite already existing variable names) 119 | 120 | 121 | ![a2box.](../images/scope_resolution_1.png) 122 | 123 | ## 1. LG - Local and Global scopes 124 | As a warm-up exercise, let us first forget about the enclosed (E) and built-in (B) scopes in the LEGB rule and only take a look at LG - the local and global scopes. 125 | What does the following code print? 126 | 127 | 128 | ```python 129 | a_var = 'global variable' 130 | 131 | def a_func(): 132 | print(a_var, '[ a_var inside a_func() ]') 133 | 134 | a_func() 135 | print(a_var, '[ a_var outside a_func() ]') 136 | 137 | ''' 138 | answer: 139 | global value [ a_var inside a_func() ] 140 | global value [ a_var outside a_func() ] 141 | ''' 142 | ``` 143 | Here is why: 144 | 145 | We call a_func() first, which is supposed to print the value of a_var. According to the LEGB rule, the function will first look in its own local scope (L) if a_var is defined there. Since a_func() does not define its own a_var, it will look one-level above in the global scope (G) in which a_var has been defined previously. 146 | 147 | Example 1.2 148 | Now, let us define the variable a_var in the global and the local scope. 149 | Can you guess what the following code will produce? 150 | 151 | ```python 152 | a_var = 'global value' 153 | 154 | def a_func(): 155 | a_var = 'local value' 156 | print(a_var, '[ a_var inside a_func() ]') 157 | 158 | a_func() 159 | print(a_var, '[ a_var outside a_func() ]') 160 | ''' 161 | answer: 162 | local value [ a_var inside a_func() ] 163 | global value [ a_var outside a_func() ] 164 | ''' 165 | ``` 166 | 167 | Here is why: 168 | 169 | When we call a_func(), it will first look in its local scope (L) for a_var, since a_var is defined in the local scope of a_func, its assigned value local variable is printed. Note that this doesn’t affect the global variable, which is in a different scope. 170 | 171 | 172 | However, it is also possible to modify the global by, e.g., re-assigning a new value to it if we use the global keyword as the following example will illustrate: 173 | 174 | 175 | ```python 176 | a_var = 'global value' 177 | 178 | def a_func(): 179 | global a_var 180 | a_var = 'local value' 181 | print(a_var, '[ a_var inside a_func() ]') 182 | 183 | print(a_var, '[ a_var outside a_func() ]') 184 | a_func() 185 | print(a_var, '[ a_var outside a_func() ]') 186 | ''' 187 | output: 188 | global value [ a_var outside a_func() ] 189 | local value [ a_var inside a_func() ] 190 | local value [ a_var outside a_func() ] 191 | ''' 192 | ``` 193 | But we have to be careful about the order: it is easy to raise an UnboundLocalError if we don’t explicitly tell Python that we want to use the global scope and try to modify a variable’s value (remember, the right side of an assignment operation is executed first): 194 | 195 | 196 | ```python 197 | a_var = 1 198 | 199 | def a_func(): 200 | a_var = a_var + 1 201 | print(a_var, '[ a_var inside a_func() ]') 202 | 203 | print(a_var, '[ a_var outside a_func() ]') 204 | a_func() 205 | 206 | ''' 207 | output: 208 | --------------------------------------------------------------------------- 209 | UnboundLocalError Traceback (most recent call last) 210 | ''' 211 | ``` 212 | 213 | 214 | ## 2. LEG - Local, Enclosed, and Global scope 215 | 216 | Now, let us introduce the concept of the enclosed (E) scope. Following the order “Local -> Enclosed -> Global”, can you guess what the following code will print? 217 | 218 | Example 2.1 219 | 220 | ```python 221 | a_var = 'global value' 222 | 223 | def outer(): 224 | a_var = 'enclosed value' 225 | 226 | def inner(): 227 | a_var = 'local value' 228 | print(a_var) 229 | 230 | inner() 231 | 232 | outer() 233 | ''' 234 | output: 235 | local value 236 | ''' 237 | ``` 238 | 239 | Here is why: 240 | 241 | Let us quickly recapitulate what we just did: We called outer(), which defined the variable a_var locally (next to an existing a_var in the global scope). Next, the outer() function called inner(), which in turn defined a variable with of name a_var as well. The print() function inside inner() searched in the local scope first (L->E) before it went up in the scope hierarchy, and therefore it printed the value that was assigned in the local scope. 242 | 243 | Similar to the concept of the global keyword, which we have seen in the section above, we can use the keyword nonlocal inside the inner function to explicitly access a variable from the outer (enclosed) scope in order to modify its value. 244 | Note that the nonlocal keyword was added in Python 3.x and is not implemented in Python 2.x (yet). 245 | 246 | 247 | ```python 248 | a_var = 'global value' 249 | 250 | def outer(): 251 | a_var = 'local value' 252 | print('outer before:', a_var) 253 | def inner(): 254 | nonlocal a_var 255 | a_var = 'inner value' 256 | print('in inner():', a_var) 257 | inner() 258 | print("outer after:", a_var) 259 | outer() 260 | ''' 261 | output: 262 | outer before: local value 263 | in inner(): inner value 264 | outer after: inner value 265 | ''' 266 | ``` 267 | 268 | 269 | ## 3. LEGB - Local, Enclosed, Global, Built-in 270 | 271 | To wrap up the LEGB rule, let us come to the built-in scope. Here, we will define our “own” length-function, which happens to bear the same name as the in-built len() function. What outcome do you excpect if we’d execute the following code? 272 | 273 | ```python 274 | a_var = 'global variable' 275 | 276 | def len(in_var): 277 | print('called my len() function') 278 | l = 0 279 | for i in in_var: 280 | l += 1 281 | return l 282 | 283 | def a_func(in_var): 284 | len_in_var = len(in_var) 285 | print('Input variable is of length', len_in_var) 286 | 287 | a_func('Hello, World!') 288 | ''' 289 | output: 290 | called my len() function 291 | Input variable is of length 13 292 | ''' 293 | ``` 294 | 295 | Here is why: 296 | 297 | Since the exact same names can be used to map names to different objects - as long as the names are in different name spaces - there is no problem of reusing the name len to define our own length function (this is just for demonstration pruposes, it is NOT recommended). As we go up in Python’s L -> E -> G -> B hierarchy, the function a_func() finds len() already in the global scope (G) first before it attempts to search the built-in (B) namespace. 298 | 299 | 300 | ### Self-assessment exercise 301 | 302 | Now, after we went through a couple of exercises, let us quickly check where we are. So, one more time: What would the following code print out? 303 | 304 | ```python 305 | a = 'global' 306 | 307 | def outer(): 308 | 309 | def len(in_var): 310 | print('called my len() function: ', end="") 311 | l = 0 312 | for i in in_var: 313 | l += 1 314 | return l 315 | 316 | a = 'local' 317 | 318 | def inner(): 319 | global len 320 | nonlocal a 321 | a += ' variable' 322 | inner() 323 | print('a is', a) 324 | print(len(a)) 325 | 326 | 327 | outer() 328 | 329 | print(len(a)) 330 | print('a is', a) 331 | 332 | 333 | ''' 334 | output: 335 | a is local variable 336 | called my len() function: 14 337 | 6 338 | a is global 339 | ''' 340 | ``` 341 | 342 | 343 | 344 | ## Conclusion 345 | 346 | I hope this short tutorial was helpful to understand the basic concept of Python’s scope resolution order using the LEGB rule. I want to encourage you (as a little self-assessment exercise) to look at the code snippets again tomorrow and check if you can correctly predict all their outcomes. 347 | 348 | A rule of thumb 349 | 350 | In practice, it is usually a bad idea to modify global variables inside the function scope, since it often be the cause of confusion and weird errors that are hard to debug. 351 | If you want to modify a global variable via a function, it is recommended to pass it as an argument and reassign the return-value. 352 | For example: 353 | 354 | 355 | ```python 356 | a_var = 2 357 | 358 | def a_func(some_var): 359 | return 2**3 360 | 361 | a_var = a_func(a_var) 362 | print(a_var) 363 | 364 | ''' 365 | output: 366 | 8 367 | ''' 368 | ``` 369 | 370 | > **Source:** 371 | > :fa-link: http://sebastianraschka.com/Articles/2014_python_scope_and_namespaces.html 372 | -------------------------------------------------------------------------------- /docs/beginner/Start_Coding_With_Python.md: -------------------------------------------------------------------------------- 1 | What Is a Program? 2 | ------------- 3 | A program is a sequence of instructions that specifies how to perform a computation. 4 | The computation might be something mathematical, such as solving a system of equat 5 | ions or finding the roots of a polynomial, but it can also be a symbolic computation, 6 | such as searching and replacing text in a document or (strangely enough) compiling a 7 | program. 8 | The details look different in different languages, but a few basic instructions appear in 9 | just about every language: 10 | 11 | input: 12 | 13 | - Get data from the keyboard, a file, or some other device. 14 | 15 | output: 16 | 17 | - Display data on the screen or send data to a file or other device. 18 | 19 | math: 20 | 21 | - Perform basic mathematical operations like addition and 22 | multiplication. 23 | 24 | conditional execution: 25 | 26 | - Check for certain conditions and execute the appropriate code. 27 | 28 | repetition: 29 | 30 | - Perform some action repeatedly, usually with some variation. 31 | 32 | Believe it or not, that’s pretty much all there is to it. Every program you’ve ever used, no 33 | matter how complicated, is made up of instructions that look pretty much like these. So 34 | you can think of programming as the process of breaking a large, complex task into 35 | smaller and smaller subtasks until the subtasks are simple enough to be performed with 36 | one of these basic instructions. 37 | That may be a little vague, but we will come back to this topic when we talk about 38 | algorithms. 39 | 40 | 41 | > **Source:** 42 | > :fa-book: **Think Python** by Allen B. Downey - 2012 43 | 44 | 45 | ## Run Python Scripts 46 | If you can't execute or run a Python script, then programming is pointless. When you run a Python script, the interpreter converts a Python program into something that that the computer can understand. Executing a Python program can be done in two ways: calling the Python interpreter with a shebang line, and using the interactive Python shell. 47 | 48 | ## Run a Python Script as a File 49 | Generally programmers write stand alone scripts, that are independent to live environments. Then they save it with a ".py" extension, which indicates to the operating system and programmer that the file is actually a Python program. After the interpreter is invoked, it reads and interprets the file. The way Python scripts are run on Windows versus Unix based operating systems is very different. We'll show you the difference, and how to run a Python script on Windows and Unix platforms. 50 | 51 | ### Run a Python script under Windows with the Command Prompt 52 | 53 | Windows users must pass the path of the program as an argument to the Python interpreter. Such as follows: 54 | ```shell 55 | C:\Python27\python.exe C:\Users\Username\Desktop\my_python_script.py 56 | ``` 57 | Note that you must use the full path of the Python interpreter. If you want to simply type python.exe C:\Users\Username\Desktop\my_python_script.py you must add python.exe to your PATH environmental variable. 58 | Note that Windows comes with two Python executables - python.exe and pythonw.exe. If you want a terminal to pop-up when you run your script, use python.exe However if you don't want any terminal pop-up, use pythonw.exe. pythonw.exe is typically used for GUI programs, where you only want to display your program, not the terminal. 59 | 60 | ### Run a Python Script Under Mac, Linux, BSD, Unix, etc 61 | On platforms like Mac, BSD or Linux (Unix) you can put a "shebang" line as first line of the program which indicates the location of the Python interpreter on the hard drive. It's in the following format: 62 | ```shell 63 | #!/path/to/interpreter 64 | ``` 65 | A common shebang line used for the Python interpreter is as follows: 66 | ```shell 67 | #!/usr/bin/env python 68 | ``` 69 | You must then make the script executable, using the following command: 70 | ```shell 71 | chmod +x my_python_script.py 72 | ``` 73 | Unlike Windows, the Python interpreter is typically already in the $PATH environmental variable, so adding it is un-necessary. 74 | 75 | You can then run a program by invoking the Python interpreter manually as follows: 76 | ```shell 77 | python firstprogram.py 78 | ``` 79 | 80 | 81 | ##Python Execution with the Shell (Live Interpreter) 82 | Assuming that you already have Python installed and running well (if you're getting an error, see this post), open the terminal or console and type 'python' and hit the 'Enter' key. You will then be directed immediately to the Python live interpreter. Your screen will display a message something like: 83 | ```shell 84 | user@hostname:~ python 85 | Python 3.3.0 (default, Nov 23 2012, 10:26:01) 86 | [GCC 4.2.1 Compatible Apple Clang 4.1 ((tags/Apple/clang-421.11.66))] on darwin 87 | Type "help", "copyright", "credits" or "license" for more information. 88 | >>> 89 | ``` 90 | The Python programmer should keep in mind one thing: that while working with the live interpreter, everything is read and interpreted in real-time. For example loops iterate immediately, unless they are part of function. So it requires some mental planning. Using the Python shell is typically used to execute code interactively. If you want to run a Python script from the interpreter, you must either import it or call the Python executable. 91 | 92 | 93 | > **Source:** 94 | > :fa-link: http://pythoncentral.io/execute-python-script-file-shell/ 95 | 96 | 97 | 98 | 99 | ## A Good First Program 100 | 101 | Type the following text into a single file named **ex1.py**. Python works best with files ending in **.py**. 102 | 103 | ```python 104 | print "Hello World!" 105 | print "Hello Again" 106 | print "I like typing this." 107 | print "This is fun." 108 | print 'Yay! Printing.' 109 | print "I'd much rather you 'not'." 110 | print 'I "said" do not touch this.' 111 | ``` 112 | Your Atom text editor should look something like this on all platforms: 113 | 114 | 115 | ![ex1.py.](../images/osx_atom.PNG) 116 | 117 | Don't worry if your editor doesn't look exactly the same, it should be close though. You may have a slightly different window header, maybe slightly different colors, and the left side of your Atom window won't say "zedshaw" but will instead show the directory you used for saving your files. All of those differences are fine. 118 | 119 | When you create this file, keep in mind these points: 120 | 121 | 1. I did not type the line numbers on the left. Those are printed in the book so I can talk about specific lines by saying, "See line 5..." You do not type line numbers into Python scripts. 122 | 2. I have the print at the beginning of the line and it looks exactly the same as what I have in ex1.py. Exactly means exactly, not kind of sort of the same. Every single character has to match for it to work. Color doesn't matter, only the characters you type. 123 | 124 | In Terminal run the file by typing: 125 | ```shell 126 | python ex1.py 127 | ``` 128 | 129 | If you did it right then you should see the same output as I in the What You Should See section of this exercise. If not, you have done something wrong. No, the computer is not wrong. 130 | ### What You Should See 131 | On Mac OS X in the Terminal you should see this: 132 | ![osx_terminal_ex1.](../images/osx_terminal_ex1.PNG) 133 | On Windows in PowerShell you should see this: 134 | ![win_powershell_ex1.](../images/win_powershell_ex1.PNG) 135 | 136 | You may see different names, before the python ex1.py command, but the important part is that you type the command and see the output is the same as mine. 137 | 138 | 139 | 140 | 141 | If you have an error it will look like this: 142 | 143 | ```shell 144 | $ python ex/ex1.py 145 | File "ex/ex1.py", line 3 146 | print "I like typing this. 147 | ^ 148 | SyntaxError: EOL while scanning string literal 149 | ``` 150 | It's important that you can read these error messages because you will be making many of these mistakes. Even I make many of these mistakes. Let's look at this line by line. 151 | 152 | 1. We ran our command in the Terminal to run the ex1.py script. 153 | 2. Python tells us that the file ex1.py has an error on line 3. 154 | 3. It prints this line of code for us to see it. 155 | 4. Then it puts a ^ (caret) character to point at where the problem is. Notice the missing " (double-quote) character? 156 | 5. Finally, it prints out a "SyntaxError" and tells us something about what might be the error. Usually these are very cryptic, but if you copy that text into a search engine, you will find someone else who's had that error and you can probably figure out how to fix it. 157 | 158 | 159 | > **Source:** 160 | > :fa-book: **LEARN PYTHON THE HARD WAY** by Zed A. Shaw - 2013 161 | 162 | 163 | ## Debugging and Errors 164 | ### What Is Debugging? 165 | Programming is error-prone. For whimsical reasons, programming errors are called 166 | **bugs** and the process of tracking them down is called **debugging**. 167 | Three kinds of errors can occur in a program: syntax errors, runtime errors, and se 168 | mantic errors. It is useful to distinguish between them in order to track them down more 169 | quickly. 170 | ### Error Types : 171 | 172 | ####Syntax Errors 173 | Python can only execute a program if the syntax is correct; otherwise, the interpreter 174 | displays an error message. Syntax refers to the structure of a program and the rules 175 | about that structure.For example, parentheses have to come in matching pairs, so 176 | (1 + 2) is legal, but 8) is a **syntax error**. 177 | In English readers can tolerate most syntax errors, which is why we can read the poetry 178 | of e. e. cummings without spewing error messages. Python is not so forgiving. If there 179 | is a single syntax error anywhere in your program, Python will display an error message 180 | and quit, and you will not be able to run your program. During the first few weeks of 181 | your programming career, you will probably spend a lot of time tracking down syntax 182 | errors. As you gain experience, you will make fewer errors and find them faster. 183 | 184 | #### Runtime Errors 185 | The second type of error is a runtime error, so called because the error does not appear 186 | until after the program has started running. These errors are also called exceptions 187 | because they usually indicate that something exceptional (and bad) has happened. 188 | Runtime errors are rare in the simple programs you will see in the first few chapters, so 189 | it might be a while before you encounter one. 190 | 191 | #### Semantic Errors 192 | The third type of error is the semantic error. If there is a semantic error in your program, 193 | it will run successfully in the sense that the computer will not generate any error mess 194 | ages, but it will not do the right thing. It will do something else. Specifically, it will do 195 | what you told it to do. 196 | The problem is that the program you wrote is not the program you wanted to write. The 197 | meaning of the program (its semantics) is wrong. Identifying semantic errors can be 198 | tricky because it requires you to work backward by looking at the output of the program 199 | and trying to figure out what it is doing. 200 | 201 | 202 | > **Source:** 203 | > :fa-book: **Think Python** by Allen B. Downey - 2012 204 | 205 | 206 | ## Reserved Words 207 | The following list shows the Python keywords. These are reserved words and you cannot use them as constants or variables or any other identifier names. All the Python keywords contain lowercase letters only. 208 | 209 | 210 | []() | []() | []() 211 | ------|------|------ 212 | **and** | **exec**| **not** 213 | **as**| **finally**| **or** 214 | **assert**| **for** | **pass** 215 | **break**| **from**| **print** 216 | **class**| **global**| **raise** 217 | **continue**| **if**| **return** 218 | **def**| **import**| **try** 219 | **del**| **in**| **while** 220 | **elif**| **is**| **with** 221 | **else**| **lambda**| **yield** 222 | **except**| 223 | 224 | 225 | > **Source:** 226 | > :fa-link: https://www.tutorialspoint.com 227 | -------------------------------------------------------------------------------- /docs/images/a1box.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/a1box.png -------------------------------------------------------------------------------- /docs/images/a1tag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/a1tag.png -------------------------------------------------------------------------------- /docs/images/a2box.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/a2box.png -------------------------------------------------------------------------------- /docs/images/a2tag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/a2tag.png -------------------------------------------------------------------------------- /docs/images/ab2tag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/ab2tag.png -------------------------------------------------------------------------------- /docs/images/b2box.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/b2box.png -------------------------------------------------------------------------------- /docs/images/class-attribute-lookup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/class-attribute-lookup.png -------------------------------------------------------------------------------- /docs/images/class-creation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/class-creation.png -------------------------------------------------------------------------------- /docs/images/compiler.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/compiler.PNG -------------------------------------------------------------------------------- /docs/images/instance-creation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/instance-creation.png -------------------------------------------------------------------------------- /docs/images/instance-of.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/instance-of.png -------------------------------------------------------------------------------- /docs/images/interpreter.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/interpreter.PNG -------------------------------------------------------------------------------- /docs/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/logo.png -------------------------------------------------------------------------------- /docs/images/object-attribute-lookup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/object-attribute-lookup.png -------------------------------------------------------------------------------- /docs/images/osx_atom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/osx_atom.png -------------------------------------------------------------------------------- /docs/images/osx_terminal_ex1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/osx_terminal_ex1.png -------------------------------------------------------------------------------- /docs/images/py_execution_model.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/py_execution_model.PNG -------------------------------------------------------------------------------- /docs/images/scope_resolution_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/scope_resolution_1.png -------------------------------------------------------------------------------- /docs/images/stack-diagrams.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/stack-diagrams.PNG -------------------------------------------------------------------------------- /docs/images/win_powershell_ex1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/docs/images/win_powershell_ex1.png -------------------------------------------------------------------------------- /docs/index.md: -------------------------------------------------------------------------------- 1 | Welcome to Python Synopsis! 2 | =================== 3 | 4 | ### Python Study Guide 5 | 6 | 7 | In this repository I want to share resources, that helped me understand python programing language deeply. 8 | It was not easy to find appropriate **books, articles, answers from Stackoverflow, online courses, videos from py conferences** and etc. 9 | 10 | So, after all I decided to share **top resources** for everyone about each topic, that you need to know about python, if you want to be senior python **Software Engineer**. 11 | 12 | Of course, it needs plenty of time to organize best resources based on the topics and it's hard for me to do it every day, but I want to do min 1 chapter each week and now I think, that there will be more than **30-40** chapters. 13 | 14 | - Beginner 15 | - [The Python Programming Language, Implementation and Adventages](https://ent1c3d.github.io/Python-Synopsis/site/beginner/Python_Programming_Lanuage) 16 | - [Python Installation](https://ent1c3d.github.io/Python-Synopsis/site/beginner/Python_Installation) 17 | - [Start Coding With Python](https://ent1c3d.github.io/Python-Synopsis/site/beginner/Start_Coding_With_Python) 18 | - [Data Types In Python 3](https://ent1c3d.github.io/Python-Synopsis/site/beginner/Data_Types_In_Python_3) 19 | - [Variables and Assignment](https://ent1c3d.github.io/Python-Synopsis/site/beginner/Variables_And_Assignment) 20 | - [Conditions](https://ent1c3d.github.io/Python-Synopsis/site/beginner/Conditions) 21 | - [For Loop](https://ent1c3d.github.io/Python-Synopsis/site/beginner/For_Loop) 22 | - ... 23 | - [Functions](https://ent1c3d.github.io/Python-Synopsis/site/beginner/Functions) 24 | - [Scope](https://ent1c3d.github.io/Python-Synopsis/site/beginner/Scopes) 25 | - [Scopes, Namespaces and LEGB Rule](https://ent1c3d.github.io/Python-Synopsis/site/beginner/Scopes_Namespaces_LEGB_rule) 26 | - ... 27 | - Intermediate 28 | - ... 29 | - Advanced 30 | - ... 31 | - [Context Managers](https://ent1c3d.github.io/Python-Synopsis/site/advanced/Context_Managers) 32 | - [Python Metaclasses](https://ent1c3d.github.io/Python-Synopsis/site/advanced/Python_Metaclasses) 33 | - [Python Magic Methods](https://ent1c3d.github.io/Python-Synopsis/site/advanced/Python_Magic_Methods) 34 | - ... 35 | 36 | -------------------------------------------------------------------------------- /docs/questions/questions.md: -------------------------------------------------------------------------------- 1 | ## Difference between \__str__ and \__repr__ in Python 2 | 3 | Ever wondered what happens when you call Python’s built-in str(X), with X being any object you want? The return value of this function depends on the two magic methods \__str__ being the first choice and \__repr__ as a fallback. But what’s the difference between them? When having a look at the docs 4 | 5 | ```python 6 | >>> help(str) 7 | 'Create a new string object from the given object.' 8 | >>> help(repr) 9 | 'Return the canonical string representation of the object.' 10 | ``` 11 | they seem to be fairly similar. Let’s see them in action: 12 | ```python 13 | >>> str(123) 14 | '123' 15 | >>> repr(123) 16 | '123' 17 | ``` 18 | Alright no difference for now. 19 | ```python 20 | >>> str('Python') 21 | 'Python' 22 | >>> repr('Python') 23 | "'Python'" 24 | ``` 25 | A second pair of quotes around our string. Why? 26 | With the return value of repr() it should be possible to recreate our object using eval(). This function takes a string and evaluates it’s content as Python code. In our case passing “‘Python’“ to it works, whereas ‘Python’ leads to an error cause it’s interpreted as the variable Python which is of course undefined. Let’s move on… 27 | ```python 28 | >>> import datetime 29 | >>> now = datetime.datetime.now() 30 | >>> str(now) 31 | '2015-04-04 20:51:31.766862' 32 | >>> repr(now) 33 | 'datetime.datetime(2015, 4, 4, 20, 51, 31, 766862)' 34 | ``` 35 | 36 | This is some significant difference. While str(now) computes a string containing the value of now, repr(now) again returns the Python code needed to rebuild our now object. 37 | 38 | The following clues might help you to decide when to use which: 39 | 40 | 41 | str() | repr() | 42 | ------|------| 43 | **make object readable** | **need code that reproduces object**| 44 | **generate output for end user **| **generate output for developer**| 45 | 46 | These points should also be considered when writing __str__ or __repr__ for your classes. 47 | 48 | 49 | > **Source:** 50 | > :fa-link: http://brennerm.github.io/posts/python-str-vs-repr.html 51 | 52 | ### answers from stackoverflow : 53 | https://stackoverflow.com/questions/1436703/difference-between-str-and-repr-in-python 54 | https://stackoverflow.com/questions/18393701/the-difference-between-str-and-repr 55 | 56 | 57 | ## What is a Slot? 58 | A slot is nothing more than a memory management nicety: when you define __slots__ on a class, you’re telling the Python interpreter that the list of attributes described within are the only attributes this class will ever need, and a dynamic dictionary is not needed to manage the references to other objects within the class. This can save enormous amounts of space if you have thousands or millions of objects in memory. 59 | For example, if you define: 60 | ```python 61 | class Foo: 62 | __slots__ = ['x'] 63 | def __init__(self, n): 64 | self.x = n 65 | 66 | y = Foo(1) 67 | print y.x # prints "1" 68 | y.x = 2 69 | print y.x # prints "2" 70 | y.z = 4 # Throws exception. 71 | print y.z 72 | ``` 73 | Without the __slots__ definition, that last assignment would have worked. Without any other magic (say, overrides of getattr or setattr), you can always assign attributes to an object. But with a __slots__ definition, you can’t: python hasn’t allocated a dictionary for the object, so you’re stuck with what you’ve got and nothing more. 74 | Slots should only be used as a memory optimization tool; using it to constrain attribute management is silly, and breaks important features like static serialization. 75 | 76 | > **Source:** 77 | > :fa-link: http://www.elfsternberg.com/2009/07/06/python-what-the-hell-is-a-slot/ 78 | 79 | ### Avoiding Dynamically Created Attributes 80 | The attributes of objects are stored in a dictionary "__dict__". Like any other dictionary, a dictionary used for attribute storage doesn't have a fixed number of elements. In other words, you can add elements to dictionaries after they have been defined, as we have seen in our chapter on dictionaries. This is the reason, why you can dynamically add attributes to objects of classes that we have created so far: 81 | ```python 82 | >>> class A(object): 83 | ... pass 84 | ... 85 | >>> a = A() 86 | >>> a.x = 66 87 | >>> a.y = "dynamically created attribute" 88 | ``` 89 | The dictionary containing the attributes of "a" can be accessed like this: 90 | ```python 91 | >>> a.__dict__ 92 | {'y': 'dynamically created attribute', 'x': 66} 93 | ``` 94 | You might have wondered that you can dynamically add attributes to the classes, we have defined so far, but that you can't do this with built-in classes like 'int', or 'list': 95 | ```python 96 | >>> x = 42 97 | >>> x.a = "not possible to do it" 98 | Traceback (most recent call last): 99 | File "", line 1, in 100 | AttributeError: 'int' object has no attribute 'a' 101 | >>> 102 | >>> lst = [34, 999, 1001] 103 | >>> lst.a = "forget it" 104 | Traceback (most recent call last): 105 | File "", line 1, in 106 | AttributeError: 'list' object has no attribute 'a' 107 | ``` 108 | 109 | Using a dictionary for attribute storage is very convenient, but it can mean a waste of space for objects, which have only a small amount of instance variables. The space consumption can become critical when creating large numbers of instances. Slots are a nice way to work around this space consumption problem. Instead of having a dynamic dict that allows adding attributes to objects dynamically, slots provide a static structure which prohibits additions after the creation of an instance. 110 | 111 | When we design a class, we can use slots to prevent the dynamic creation of attributes. To define slots, you have to define a list with the name __slots__. The list has to contain all the attributes, you want to use. We demonstrate this in the following class, in which the slots list contains only the name for an attribute "val". 112 | 113 | ```python 114 | class S(object): 115 | 116 | __slots__ = ['val'] 117 | 118 | def __init__(self, v): 119 | self.val = v 120 | 121 | 122 | x = S(42) 123 | print(x.val) 124 | 125 | x.new = "not possible" 126 | ``` 127 | 128 | If we start this program, we can see, that it is not possible to create dynamically a new attribute. We fail to create an attribute "new": 129 | ```python 130 | 42 131 | Traceback (most recent call last): 132 | File "slots_ex.py", line 12, in 133 | x.new = "not possible" 134 | AttributeError: 'S' object has no attribute 'new' 135 | ``` 136 | 137 | We mentioned in the beginning that slots are preventing a waste of space with objects. Since Python 3.3 this advantage is not as impressive any more. With Python 3.3 Key-Sharing Dictionaries are used for the storage of objects. The attributes of the instances are capable of sharing part of their internal storage between each other, i.e. the part which stores the keys and their corresponding hashes. This helps to reduce the memory consumption of programs, which create many instances of non-builtin types. 138 | 139 | > **Source:** 140 | > :fa-link: http://www.python-course.eu/python3_slots.php 141 | 142 | ### answers from stackoverflow : 143 | https://stackoverflow.com/questions/472000/usage-of-slots 144 | 145 | ## what means name mangling in python 146 | http://radek.io/2011/07/21/private-protected-and-public-in-python/ 147 | ### answers from stackoverflow : 148 | https://stackoverflow.com/questions/7456807/python-name-mangling 149 | 150 | 151 | ## Python - dir() - how can I differentiate between functions/method and simple attributes? 152 | 153 | To show a list of the defined names in a module, for example the math module, and their types you could do: 154 | ```python 155 | [(name,type(getattr(math,name))) for name in dir(math)] 156 | ``` 157 | getattr(math,name) returns the object (function, or otherwise) from the math module, named by the value of the string in the variable "name". For example type(getattr(math,'pi')) is 'float' 158 | 159 | > **Source:** 160 | > :fa-link: https://stackoverflow.com/questions/26818007/python-dir-how-can-i-differentiate-between-functions-method-and-simple-att 161 | 162 | ## Why do we need wrapper function in decorators? 163 | ### answers from stackoverflow : 164 | https://stackoverflow.com/questions/45335580/why-do-we-need-wrapper-function-in-decorators 165 | -------------------------------------------------------------------------------- /files/dive into python 3 - datatypes.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/files/dive into python 3 - datatypes.pdf -------------------------------------------------------------------------------- /just.py: -------------------------------------------------------------------------------- 1 | SOMETHING_LIKE_CONST = { 2 | 'author': 'ent1c3d', 3 | } -------------------------------------------------------------------------------- /mkdocs.yml: -------------------------------------------------------------------------------- 1 | # Project information 2 | site_name: Python Synopsis 3 | site_description: Python Study Guide 4 | site_author: Goga Patarkatsishvili 5 | 6 | # Repository 7 | repo_name: ent1c3d/Python-Synopsis 8 | repo_url: https://ent1c3d.github.io/Python-Synopsis/site/ 9 | 10 | copyright: Copyright © 2017 Goga Patarkatsishvili 11 | 12 | # Pages 13 | pages: 14 | - Home : index.md 15 | - Beginner: 16 | - The Python Programming Language, Implementation and Adventages : beginner/Python_Programming_Lanuage.md 17 | - Python Installation : beginner/Python_Installation.md 18 | - Start Coding With Python : beginner/Start_Coding_With_Python.md 19 | - Data Types in Python 3 : beginner/Data_Types_In_Python_3.md 20 | - Variables and Assignment : beginner/Variables_And_Assignment.md 21 | - Conditions : beginner/Conditions.md 22 | - For Loop : beginner/For_Loop.md 23 | - Functions : beginner/Functions.md 24 | - Scope : beginner/Scopes.md 25 | - Scopes, Namespaces and LEGB Rule : beginner/Scopes_Namespaces_LEGB_rule.md 26 | 27 | - Advanced: 28 | - Context Managers : advanced/Context_Managers.md 29 | - Python Metaclasses : advanced/Python_Metaclasses.md 30 | - Python Magic Methods : advanced/Python_Magic_Methods.md 31 | - About: About.md 32 | 33 | # Documentation and theme 34 | theme: material 35 | markdown_extensions: 36 | - fontawesome_markdown 37 | - codehilite 38 | 39 | # Options 40 | extra: 41 | #logo: 'images/logo.PNG' 42 | palette: 43 | primary: 'blue grey' 44 | accent: 'light blue' 45 | # font: 46 | # text: 'Roboto' 47 | # code: 'Roboto Mono' 48 | social: 49 | - type: 'github' 50 | link: 'https://github.com/ent1c3d' 51 | - type: 'linkedin' 52 | link: 'https://www.linkedin.com/in/ent1c3d/' -------------------------------------------------------------------------------- /site/assets/images/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/entGriff/Python-Synopsis/76e34867a4adc7a1fe9f5ee84d5a7dec6bcbd12f/site/assets/images/favicon.png -------------------------------------------------------------------------------- /site/assets/images/icons/bitbucket.4ebea66e.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /site/assets/images/icons/github.a4034fb1.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /site/assets/images/icons/gitlab.d80e5efc.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /site/assets/javascripts/lunr/lunr.da.js: -------------------------------------------------------------------------------- 1 | !function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.da=function(){this.pipeline.reset(),this.pipeline.add(e.da.trimmer,e.da.stopWordFilter,e.da.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.da.stemmer))},e.da.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.da.trimmer=e.trimmerSupport.generateTrimmer(e.da.wordCharacters),e.Pipeline.registerFunction(e.da.trimmer,"trimmer-da"),e.da.stemmer=function(){var r=e.stemmerSupport.Among,i=e.stemmerSupport.SnowballProgram,n=new function(){function e(){var e,r=l.limit-l.cursor;l.cursor>=t&&(e=l.limit_backward,l.limit_backward=t,l.ket=l.cursor,l.find_among_b(a,4)?(l.bra=l.cursor,l.limit_backward=e,l.cursor=l.limit-r,l.cursor>l.limit_backward&&(l.cursor--,l.bra=l.cursor,l.slice_del())):l.limit_backward=e)}var n,t,s,o=[new r("hed",-1,1),new r("ethed",0,1),new r("ered",-1,1),new r("e",-1,1),new r("erede",3,1),new r("ende",3,1),new r("erende",5,1),new r("ene",3,1),new r("erne",3,1),new r("ere",3,1),new r("en",-1,1),new r("heden",10,1),new r("eren",10,1),new r("er",-1,1),new r("heder",13,1),new r("erer",13,1),new r("s",-1,2),new r("heds",16,1),new r("es",16,1),new r("endes",18,1),new r("erendes",19,1),new r("enes",18,1),new r("ernes",18,1),new r("eres",18,1),new r("ens",16,1),new r("hedens",24,1),new r("erens",24,1),new r("ers",16,1),new r("ets",16,1),new r("erets",28,1),new r("et",-1,1),new r("eret",30,1)],a=[new r("gd",-1,-1),new r("dt",-1,-1),new r("gt",-1,-1),new r("kt",-1,-1)],d=[new r("ig",-1,1),new r("lig",0,1),new r("elig",1,1),new r("els",-1,1),new r("løst",-1,2)],u=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,48,0,128],c=[239,254,42,3,0,0,0,0,0,0,0,0,0,0,0,0,16],l=new i;this.setCurrent=function(e){l.setCurrent(e)},this.getCurrent=function(){return l.getCurrent()},this.stem=function(){var r=l.cursor;return function(){var e,r=l.cursor+3;if(t=l.limit,0<=r&&r<=l.limit){for(n=r;;){if(e=l.cursor,l.in_grouping(u,97,248)){l.cursor=e;break}if(l.cursor=e,e>=l.limit)return;l.cursor++}for(;!l.out_grouping(u,97,248);){if(l.cursor>=l.limit)return;l.cursor++}(t=l.cursor)=t&&(r=l.limit_backward,l.limit_backward=t,l.ket=l.cursor,e=l.find_among_b(o,32),l.limit_backward=r,e))switch(l.bra=l.cursor,e){case 1:l.slice_del();break;case 2:l.in_grouping_b(c,97,229)&&l.slice_del()}}(),l.cursor=l.limit,e(),l.cursor=l.limit,function(){var r,i,n,s=l.limit-l.cursor;if(l.ket=l.cursor,l.eq_s_b(2,"st")&&(l.bra=l.cursor,l.eq_s_b(2,"ig")&&l.slice_del()),l.cursor=l.limit-s,l.cursor>=t&&(i=l.limit_backward,l.limit_backward=t,l.ket=l.cursor,r=l.find_among_b(d,5),l.limit_backward=i,r))switch(l.bra=l.cursor,r){case 1:l.slice_del(),n=l.limit-l.cursor,e(),l.cursor=l.limit-n;break;case 2:l.slice_from("løs")}}(),l.cursor=l.limit,function(){var e;l.cursor>=t&&(e=l.limit_backward,l.limit_backward=t,l.ket=l.cursor,l.out_grouping_b(u,97,248)?(l.bra=l.cursor,s=l.slice_to(s),l.limit_backward=e,l.eq_v_b(s)&&l.slice_del()):l.limit_backward=e)}(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return n.setCurrent(e),n.stem(),n.getCurrent()}):(n.setCurrent(e),n.stem(),n.getCurrent())}}(),e.Pipeline.registerFunction(e.da.stemmer,"stemmer-da"),e.da.stopWordFilter=e.generateStopWordFilter("ad af alle alt anden at blev blive bliver da de dem den denne der deres det dette dig din disse dog du efter eller en end er et for fra ham han hans har havde have hende hendes her hos hun hvad hvis hvor i ikke ind jeg jer jo kunne man mange med meget men mig min mine mit mod ned noget nogle nu når og også om op os over på selv sig sin sine sit skal skulle som sådan thi til ud under var vi vil ville vor være været".split(" ")),e.Pipeline.registerFunction(e.da.stopWordFilter,"stopWordFilter-da")}}); -------------------------------------------------------------------------------- /site/assets/javascripts/lunr/lunr.de.js: -------------------------------------------------------------------------------- 1 | !function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.de=function(){this.pipeline.reset(),this.pipeline.add(e.de.trimmer,e.de.stopWordFilter,e.de.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.de.stemmer))},e.de.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.de.trimmer=e.trimmerSupport.generateTrimmer(e.de.wordCharacters),e.Pipeline.registerFunction(e.de.trimmer,"trimmer-de"),e.de.stemmer=function(){var r=e.stemmerSupport.Among,n=e.stemmerSupport.SnowballProgram,i=new function(){function e(e,r,n){return!(!_.eq_s(1,e)||(_.ket=_.cursor,!_.in_grouping(w,97,252)))&&(_.slice_from(r),_.cursor=n,!0)}function i(){for(;!_.in_grouping(w,97,252);){if(_.cursor>=_.limit)return!0;_.cursor++}for(;!_.out_grouping(w,97,252);){if(_.cursor>=_.limit)return!0;_.cursor++}return!1}function s(){return u<=_.cursor}function t(){return c<=_.cursor}var o,c,u,a=[new r("",-1,6),new r("U",0,2),new r("Y",0,1),new r("ä",0,3),new r("ö",0,4),new r("ü",0,5)],d=[new r("e",-1,2),new r("em",-1,1),new r("en",-1,2),new r("ern",-1,1),new r("er",-1,1),new r("s",-1,3),new r("es",5,2)],l=[new r("en",-1,1),new r("er",-1,1),new r("st",-1,2),new r("est",2,1)],m=[new r("ig",-1,1),new r("lich",-1,1)],h=[new r("end",-1,1),new r("ig",-1,2),new r("ung",-1,1),new r("lich",-1,3),new r("isch",-1,2),new r("ik",-1,2),new r("heit",-1,3),new r("keit",-1,4)],w=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32,8],f=[117,30,5],b=[117,30,4],_=new n;this.setCurrent=function(e){_.setCurrent(e)},this.getCurrent=function(){return _.getCurrent()},this.stem=function(){var r=_.cursor;return function(){for(var r,n,i,s,t=_.cursor;;)if(r=_.cursor,_.bra=r,_.eq_s(1,"ß"))_.ket=_.cursor,_.slice_from("ss");else{if(r>=_.limit)break;_.cursor=r+1}for(_.cursor=t;;)for(n=_.cursor;;){if(i=_.cursor,_.in_grouping(w,97,252)){if(s=_.cursor,_.bra=s,e("u","U",i))break;if(_.cursor=s,e("y","Y",i))break}if(i>=_.limit)return void(_.cursor=n);_.cursor=i+1}}(),_.cursor=r,function(){u=_.limit,c=u;var e=_.cursor+3;0<=e&&e<=_.limit&&(o=e,i()||((u=_.cursor)=_.limit)return;_.cursor++}}}(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return i.setCurrent(e),i.stem(),i.getCurrent()}):(i.setCurrent(e),i.stem(),i.getCurrent())}}(),e.Pipeline.registerFunction(e.de.stemmer,"stemmer-de"),e.de.stopWordFilter=e.generateStopWordFilter("aber alle allem allen aller alles als also am an ander andere anderem anderen anderer anderes anderm andern anderr anders auch auf aus bei bin bis bist da damit dann das dasselbe dazu daß dein deine deinem deinen deiner deines dem demselben den denn denselben der derer derselbe derselben des desselben dessen dich die dies diese dieselbe dieselben diesem diesen dieser dieses dir doch dort du durch ein eine einem einen einer eines einig einige einigem einigen einiger einiges einmal er es etwas euch euer eure eurem euren eurer eures für gegen gewesen hab habe haben hat hatte hatten hier hin hinter ich ihm ihn ihnen ihr ihre ihrem ihren ihrer ihres im in indem ins ist jede jedem jeden jeder jedes jene jenem jenen jener jenes jetzt kann kein keine keinem keinen keiner keines können könnte machen man manche manchem manchen mancher manches mein meine meinem meinen meiner meines mich mir mit muss musste nach nicht nichts noch nun nur ob oder ohne sehr sein seine seinem seinen seiner seines selbst sich sie sind so solche solchem solchen solcher solches soll sollte sondern sonst um und uns unse unsem unsen unser unses unter viel vom von vor war waren warst was weg weil weiter welche welchem welchen welcher welches wenn werde werden wie wieder will wir wird wirst wo wollen wollte während würde würden zu zum zur zwar zwischen über".split(" ")),e.Pipeline.registerFunction(e.de.stopWordFilter,"stopWordFilter-de")}}); -------------------------------------------------------------------------------- /site/assets/javascripts/lunr/lunr.du.js: -------------------------------------------------------------------------------- 1 | !function(r,e){"function"==typeof define&&define.amd?define(e):"object"==typeof exports?module.exports=e():e()(r.lunr)}(this,function(){return function(r){if(void 0===r)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===r.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");r.du=function(){this.pipeline.reset(),this.pipeline.add(r.du.trimmer,r.du.stopWordFilter,r.du.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(r.du.stemmer))},r.du.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",r.du.trimmer=r.trimmerSupport.generateTrimmer(r.du.wordCharacters),r.Pipeline.registerFunction(r.du.trimmer,"trimmer-du"),r.du.stemmer=function(){var e=r.stemmerSupport.Among,i=r.stemmerSupport.SnowballProgram,n=new function(){function r(r){return v.cursor=r,r>=v.limit||(v.cursor++,!1)}function n(){for(;!v.in_grouping(g,97,232);){if(v.cursor>=v.limit)return!0;v.cursor++}for(;!v.out_grouping(g,97,232);){if(v.cursor>=v.limit)return!0;v.cursor++}return!1}function o(){return l<=v.cursor}function t(){return a<=v.cursor}function s(){var r=v.limit-v.cursor;v.find_among_b(_,3)&&(v.cursor=v.limit-r,v.ket=v.cursor,v.cursor>v.limit_backward&&(v.cursor--,v.bra=v.cursor,v.slice_del()))}function u(){var r;m=!1,v.ket=v.cursor,v.eq_s_b(1,"e")&&(v.bra=v.cursor,o()&&(r=v.limit-v.cursor,v.out_grouping_b(g,97,232)&&(v.cursor=v.limit-r,v.slice_del(),m=!0,s())))}function c(){var r;o()&&(r=v.limit-v.cursor,v.out_grouping_b(g,97,232)&&(v.cursor=v.limit-r,v.eq_s_b(3,"gem")||(v.cursor=v.limit-r,v.slice_del(),s())))}var a,l,m,d=[new e("",-1,6),new e("á",0,1),new e("ä",0,1),new e("é",0,2),new e("ë",0,2),new e("í",0,3),new e("ï",0,3),new e("ó",0,4),new e("ö",0,4),new e("ú",0,5),new e("ü",0,5)],f=[new e("",-1,3),new e("I",0,2),new e("Y",0,1)],_=[new e("dd",-1,-1),new e("kk",-1,-1),new e("tt",-1,-1)],w=[new e("ene",-1,2),new e("se",-1,3),new e("en",-1,2),new e("heden",2,1),new e("s",-1,3)],b=[new e("end",-1,1),new e("ig",-1,2),new e("ing",-1,1),new e("lijk",-1,3),new e("baar",-1,4),new e("bar",-1,5)],p=[new e("aa",-1,-1),new e("ee",-1,-1),new e("oo",-1,-1),new e("uu",-1,-1)],g=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],h=[1,0,0,17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],k=[17,67,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],v=new i;this.setCurrent=function(r){v.setCurrent(r)},this.getCurrent=function(){return v.getCurrent()},this.stem=function(){var e=v.cursor;return function(){for(var e,i,n,o=v.cursor;;){if(v.bra=v.cursor,e=v.find_among(d,11))switch(v.ket=v.cursor,e){case 1:v.slice_from("a");continue;case 2:v.slice_from("e");continue;case 3:v.slice_from("i");continue;case 4:v.slice_from("o");continue;case 5:v.slice_from("u");continue;case 6:if(v.cursor>=v.limit)break;v.cursor++;continue}break}for(v.cursor=o,v.bra=o,v.eq_s(1,"y")?(v.ket=v.cursor,v.slice_from("Y")):v.cursor=o;;)if(i=v.cursor,v.in_grouping(g,97,232)){if(n=v.cursor,v.bra=n,v.eq_s(1,"i"))v.ket=v.cursor,v.in_grouping(g,97,232)&&(v.slice_from("I"),v.cursor=i);else if(v.cursor=n,v.eq_s(1,"y"))v.ket=v.cursor,v.slice_from("Y"),v.cursor=i;else if(r(i))break}else if(r(i))break}(),v.cursor=e,l=v.limit,a=l,n()||((l=v.cursor)<3&&(l=3),n()||(a=v.cursor)),v.limit_backward=e,v.cursor=v.limit,function(){var r,e,i,n,a,l,d=v.limit-v.cursor;if(v.ket=v.cursor,r=v.find_among_b(w,5))switch(v.bra=v.cursor,r){case 1:o()&&v.slice_from("heid");break;case 2:c();break;case 3:o()&&v.out_grouping_b(k,97,232)&&v.slice_del()}if(v.cursor=v.limit-d,u(),v.cursor=v.limit-d,v.ket=v.cursor,v.eq_s_b(4,"heid")&&(v.bra=v.cursor,t()&&(e=v.limit-v.cursor,v.eq_s_b(1,"c")||(v.cursor=v.limit-e,v.slice_del(),v.ket=v.cursor,v.eq_s_b(2,"en")&&(v.bra=v.cursor,c())))),v.cursor=v.limit-d,v.ket=v.cursor,r=v.find_among_b(b,6))switch(v.bra=v.cursor,r){case 1:if(t()){if(v.slice_del(),i=v.limit-v.cursor,v.ket=v.cursor,v.eq_s_b(2,"ig")&&(v.bra=v.cursor,t()&&(n=v.limit-v.cursor,!v.eq_s_b(1,"e")))){v.cursor=v.limit-n,v.slice_del();break}v.cursor=v.limit-i,s()}break;case 2:t()&&(a=v.limit-v.cursor,v.eq_s_b(1,"e")||(v.cursor=v.limit-a,v.slice_del()));break;case 3:t()&&(v.slice_del(),u());break;case 4:t()&&v.slice_del();break;case 5:t()&&m&&v.slice_del()}v.cursor=v.limit-d,v.out_grouping_b(h,73,232)&&(l=v.limit-v.cursor,v.find_among_b(p,4)&&v.out_grouping_b(g,97,232)&&(v.cursor=v.limit-l,v.ket=v.cursor,v.cursor>v.limit_backward&&(v.cursor--,v.bra=v.cursor,v.slice_del())))}(),v.cursor=v.limit_backward,function(){for(var r;;)if(v.bra=v.cursor,r=v.find_among(f,3))switch(v.ket=v.cursor,r){case 1:v.slice_from("y");break;case 2:v.slice_from("i");break;case 3:if(v.cursor>=v.limit)return;v.cursor++}}(),!0}};return function(r){return"function"==typeof r.update?r.update(function(r){return n.setCurrent(r),n.stem(),n.getCurrent()}):(n.setCurrent(r),n.stem(),n.getCurrent())}}(),r.Pipeline.registerFunction(r.du.stemmer,"stemmer-du"),r.du.stopWordFilter=r.generateStopWordFilter(" aan al alles als altijd andere ben bij daar dan dat de der deze die dit doch doen door dus een eens en er ge geen geweest haar had heb hebben heeft hem het hier hij hoe hun iemand iets ik in is ja je kan kon kunnen maar me meer men met mij mijn moet na naar niet niets nog nu of om omdat onder ons ook op over reeds te tegen toch toen tot u uit uw van veel voor want waren was wat werd wezen wie wil worden wordt zal ze zelf zich zij zijn zo zonder zou".split(" ")),r.Pipeline.registerFunction(r.du.stopWordFilter,"stopWordFilter-du")}}); -------------------------------------------------------------------------------- /site/assets/javascripts/lunr/lunr.es.js: -------------------------------------------------------------------------------- 1 | !function(e,s){"function"==typeof define&&define.amd?define(s):"object"==typeof exports?module.exports=s():s()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.es=function(){this.pipeline.reset(),this.pipeline.add(e.es.trimmer,e.es.stopWordFilter,e.es.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.es.stemmer))},e.es.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.es.trimmer=e.trimmerSupport.generateTrimmer(e.es.wordCharacters),e.Pipeline.registerFunction(e.es.trimmer,"trimmer-es"),e.es.stemmer=function(){var s=e.stemmerSupport.Among,r=e.stemmerSupport.SnowballProgram,n=new function(){function e(){if(C.out_grouping(q,97,252)){for(;!C.in_grouping(q,97,252);){if(C.cursor>=C.limit)return!0;C.cursor++}return!1}return!0}function n(){var s,r=C.cursor;if(function(){if(C.in_grouping(q,97,252)){var s=C.cursor;if(e()){if(C.cursor=s,!C.in_grouping(q,97,252))return!0;for(;!C.out_grouping(q,97,252);){if(C.cursor>=C.limit)return!0;C.cursor++}}return!1}return!0}()){if(C.cursor=r,!C.out_grouping(q,97,252))return;if(s=C.cursor,e()){if(C.cursor=s,!C.in_grouping(q,97,252)||C.cursor>=C.limit)return;C.cursor++}}l=C.cursor}function i(){for(;!C.in_grouping(q,97,252);){if(C.cursor>=C.limit)return!1;C.cursor++}for(;!C.out_grouping(q,97,252);){if(C.cursor>=C.limit)return!1;C.cursor++}return!0}function a(){return l<=C.cursor}function t(){return c<=C.cursor}function o(e,s){if(!t())return!0;C.slice_del(),C.ket=C.cursor;var r=C.find_among_b(e,s);return r&&(C.bra=C.cursor,1==r&&t()&&C.slice_del()),!1}function u(e){return!t()||(C.slice_del(),C.ket=C.cursor,C.eq_s_b(2,e)&&(C.bra=C.cursor,t()&&C.slice_del()),!1)}function w(){var e;if(C.ket=C.cursor,e=C.find_among_b(p,46)){switch(C.bra=C.cursor,e){case 1:if(!t())return!1;C.slice_del();break;case 2:if(u("ic"))return!1;break;case 3:if(!t())return!1;C.slice_from("log");break;case 4:if(!t())return!1;C.slice_from("u");break;case 5:if(!t())return!1;C.slice_from("ente");break;case 6:if(!(m<=C.cursor))return!1;C.slice_del(),C.ket=C.cursor,(e=C.find_among_b(_,4))&&(C.bra=C.cursor,t()&&(C.slice_del(),1==e&&(C.ket=C.cursor,C.eq_s_b(2,"at")&&(C.bra=C.cursor,t()&&C.slice_del()))));break;case 7:if(o(h,3))return!1;break;case 8:if(o(v,3))return!1;break;case 9:if(u("at"))return!1}return!0}return!1}var c,m,l,d=[new s("",-1,6),new s("á",0,1),new s("é",0,2),new s("í",0,3),new s("ó",0,4),new s("ú",0,5)],b=[new s("la",-1,-1),new s("sela",0,-1),new s("le",-1,-1),new s("me",-1,-1),new s("se",-1,-1),new s("lo",-1,-1),new s("selo",5,-1),new s("las",-1,-1),new s("selas",7,-1),new s("les",-1,-1),new s("los",-1,-1),new s("selos",10,-1),new s("nos",-1,-1)],f=[new s("ando",-1,6),new s("iendo",-1,6),new s("yendo",-1,7),new s("ándo",-1,2),new s("iéndo",-1,1),new s("ar",-1,6),new s("er",-1,6),new s("ir",-1,6),new s("ár",-1,3),new s("ér",-1,4),new s("ír",-1,5)],_=[new s("ic",-1,-1),new s("ad",-1,-1),new s("os",-1,-1),new s("iv",-1,1)],h=[new s("able",-1,1),new s("ible",-1,1),new s("ante",-1,1)],v=[new s("ic",-1,1),new s("abil",-1,1),new s("iv",-1,1)],p=[new s("ica",-1,1),new s("ancia",-1,2),new s("encia",-1,5),new s("adora",-1,2),new s("osa",-1,1),new s("ista",-1,1),new s("iva",-1,9),new s("anza",-1,1),new s("logía",-1,3),new s("idad",-1,8),new s("able",-1,1),new s("ible",-1,1),new s("ante",-1,2),new s("mente",-1,7),new s("amente",13,6),new s("ación",-1,2),new s("ución",-1,4),new s("ico",-1,1),new s("ismo",-1,1),new s("oso",-1,1),new s("amiento",-1,1),new s("imiento",-1,1),new s("ivo",-1,9),new s("ador",-1,2),new s("icas",-1,1),new s("ancias",-1,2),new s("encias",-1,5),new s("adoras",-1,2),new s("osas",-1,1),new s("istas",-1,1),new s("ivas",-1,9),new s("anzas",-1,1),new s("logías",-1,3),new s("idades",-1,8),new s("ables",-1,1),new s("ibles",-1,1),new s("aciones",-1,2),new s("uciones",-1,4),new s("adores",-1,2),new s("antes",-1,2),new s("icos",-1,1),new s("ismos",-1,1),new s("osos",-1,1),new s("amientos",-1,1),new s("imientos",-1,1),new s("ivos",-1,9)],g=[new s("ya",-1,1),new s("ye",-1,1),new s("yan",-1,1),new s("yen",-1,1),new s("yeron",-1,1),new s("yendo",-1,1),new s("yo",-1,1),new s("yas",-1,1),new s("yes",-1,1),new s("yais",-1,1),new s("yamos",-1,1),new s("yó",-1,1)],k=[new s("aba",-1,2),new s("ada",-1,2),new s("ida",-1,2),new s("ara",-1,2),new s("iera",-1,2),new s("ía",-1,2),new s("aría",5,2),new s("ería",5,2),new s("iría",5,2),new s("ad",-1,2),new s("ed",-1,2),new s("id",-1,2),new s("ase",-1,2),new s("iese",-1,2),new s("aste",-1,2),new s("iste",-1,2),new s("an",-1,2),new s("aban",16,2),new s("aran",16,2),new s("ieran",16,2),new s("ían",16,2),new s("arían",20,2),new s("erían",20,2),new s("irían",20,2),new s("en",-1,1),new s("asen",24,2),new s("iesen",24,2),new s("aron",-1,2),new s("ieron",-1,2),new s("arán",-1,2),new s("erán",-1,2),new s("irán",-1,2),new s("ado",-1,2),new s("ido",-1,2),new s("ando",-1,2),new s("iendo",-1,2),new s("ar",-1,2),new s("er",-1,2),new s("ir",-1,2),new s("as",-1,2),new s("abas",39,2),new s("adas",39,2),new s("idas",39,2),new s("aras",39,2),new s("ieras",39,2),new s("ías",39,2),new s("arías",45,2),new s("erías",45,2),new s("irías",45,2),new s("es",-1,1),new s("ases",49,2),new s("ieses",49,2),new s("abais",-1,2),new s("arais",-1,2),new s("ierais",-1,2),new s("íais",-1,2),new s("aríais",55,2),new s("eríais",55,2),new s("iríais",55,2),new s("aseis",-1,2),new s("ieseis",-1,2),new s("asteis",-1,2),new s("isteis",-1,2),new s("áis",-1,2),new s("éis",-1,1),new s("aréis",64,2),new s("eréis",64,2),new s("iréis",64,2),new s("ados",-1,2),new s("idos",-1,2),new s("amos",-1,2),new s("ábamos",70,2),new s("áramos",70,2),new s("iéramos",70,2),new s("íamos",70,2),new s("aríamos",74,2),new s("eríamos",74,2),new s("iríamos",74,2),new s("emos",-1,1),new s("aremos",78,2),new s("eremos",78,2),new s("iremos",78,2),new s("ásemos",78,2),new s("iésemos",78,2),new s("imos",-1,2),new s("arás",-1,2),new s("erás",-1,2),new s("irás",-1,2),new s("ís",-1,2),new s("ará",-1,2),new s("erá",-1,2),new s("irá",-1,2),new s("aré",-1,2),new s("eré",-1,2),new s("iré",-1,2),new s("ió",-1,2)],y=[new s("a",-1,1),new s("e",-1,2),new s("o",-1,1),new s("os",-1,1),new s("á",-1,1),new s("é",-1,2),new s("í",-1,1),new s("ó",-1,1)],q=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,1,17,4,10],C=new r;this.setCurrent=function(e){C.setCurrent(e)},this.getCurrent=function(){return C.getCurrent()},this.stem=function(){var e=C.cursor;return function(){var e=C.cursor;l=C.limit,m=l,c=l,n(),C.cursor=e,i()&&(m=C.cursor,i()&&(c=C.cursor))}(),C.limit_backward=e,C.cursor=C.limit,function(){var e;if(C.ket=C.cursor,C.find_among_b(b,13)&&(C.bra=C.cursor,(e=C.find_among_b(f,11))&&a()))switch(e){case 1:C.bra=C.cursor,C.slice_from("iendo");break;case 2:C.bra=C.cursor,C.slice_from("ando");break;case 3:C.bra=C.cursor,C.slice_from("ar");break;case 4:C.bra=C.cursor,C.slice_from("er");break;case 5:C.bra=C.cursor,C.slice_from("ir");break;case 6:C.slice_del();break;case 7:C.eq_s_b(1,"u")&&C.slice_del()}}(),C.cursor=C.limit,w()||(C.cursor=C.limit,function(){var e,s;if(C.cursor>=l&&(s=C.limit_backward,C.limit_backward=l,C.ket=C.cursor,e=C.find_among_b(g,12),C.limit_backward=s,e)){if(C.bra=C.cursor,1==e){if(!C.eq_s_b(1,"u"))return!1;C.slice_del()}return!0}return!1}()||(C.cursor=C.limit,function(){var e,s,r,n;if(C.cursor>=l&&(s=C.limit_backward,C.limit_backward=l,C.ket=C.cursor,e=C.find_among_b(k,96),C.limit_backward=s,e))switch(C.bra=C.cursor,e){case 1:r=C.limit-C.cursor,C.eq_s_b(1,"u")?(n=C.limit-C.cursor,C.eq_s_b(1,"g")?C.cursor=C.limit-n:C.cursor=C.limit-r):C.cursor=C.limit-r,C.bra=C.cursor;case 2:C.slice_del()}}())),C.cursor=C.limit,function(){var e,s;if(C.ket=C.cursor,e=C.find_among_b(y,8))switch(C.bra=C.cursor,e){case 1:a()&&C.slice_del();break;case 2:a()&&(C.slice_del(),C.ket=C.cursor,C.eq_s_b(1,"u")&&(C.bra=C.cursor,s=C.limit-C.cursor,C.eq_s_b(1,"g")&&(C.cursor=C.limit-s,a()&&C.slice_del())))}}(),C.cursor=C.limit_backward,function(){for(var e;;){if(C.bra=C.cursor,e=C.find_among(d,6))switch(C.ket=C.cursor,e){case 1:C.slice_from("a");continue;case 2:C.slice_from("e");continue;case 3:C.slice_from("i");continue;case 4:C.slice_from("o");continue;case 5:C.slice_from("u");continue;case 6:if(C.cursor>=C.limit)break;C.cursor++;continue}break}}(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return n.setCurrent(e),n.stem(),n.getCurrent()}):(n.setCurrent(e),n.stem(),n.getCurrent())}}(),e.Pipeline.registerFunction(e.es.stemmer,"stemmer-es"),e.es.stopWordFilter=e.generateStopWordFilter("a al algo algunas algunos ante antes como con contra cual cuando de del desde donde durante e el ella ellas ellos en entre era erais eran eras eres es esa esas ese eso esos esta estaba estabais estaban estabas estad estada estadas estado estados estamos estando estar estaremos estará estarán estarás estaré estaréis estaría estaríais estaríamos estarían estarías estas este estemos esto estos estoy estuve estuviera estuvierais estuvieran estuvieras estuvieron estuviese estuvieseis estuviesen estuvieses estuvimos estuviste estuvisteis estuviéramos estuviésemos estuvo está estábamos estáis están estás esté estéis estén estés fue fuera fuerais fueran fueras fueron fuese fueseis fuesen fueses fui fuimos fuiste fuisteis fuéramos fuésemos ha habida habidas habido habidos habiendo habremos habrá habrán habrás habré habréis habría habríais habríamos habrían habrías habéis había habíais habíamos habían habías han has hasta hay haya hayamos hayan hayas hayáis he hemos hube hubiera hubierais hubieran hubieras hubieron hubiese hubieseis hubiesen hubieses hubimos hubiste hubisteis hubiéramos hubiésemos hubo la las le les lo los me mi mis mucho muchos muy más mí mía mías mío míos nada ni no nos nosotras nosotros nuestra nuestras nuestro nuestros o os otra otras otro otros para pero poco por porque que quien quienes qué se sea seamos sean seas seremos será serán serás seré seréis sería seríais seríamos serían serías seáis sido siendo sin sobre sois somos son soy su sus suya suyas suyo suyos sí también tanto te tendremos tendrá tendrán tendrás tendré tendréis tendría tendríais tendríamos tendrían tendrías tened tenemos tenga tengamos tengan tengas tengo tengáis tenida tenidas tenido tenidos teniendo tenéis tenía teníais teníamos tenían tenías ti tiene tienen tienes todo todos tu tus tuve tuviera tuvierais tuvieran tuvieras tuvieron tuviese tuvieseis tuviesen tuvieses tuvimos tuviste tuvisteis tuviéramos tuviésemos tuvo tuya tuyas tuyo tuyos tú un una uno unos vosotras vosotros vuestra vuestras vuestro vuestros y ya yo él éramos".split(" ")),e.Pipeline.registerFunction(e.es.stopWordFilter,"stopWordFilter-es")}}); -------------------------------------------------------------------------------- /site/assets/javascripts/lunr/lunr.fi.js: -------------------------------------------------------------------------------- 1 | !function(i,e){"function"==typeof define&&define.amd?define(e):"object"==typeof exports?module.exports=e():e()(i.lunr)}(this,function(){return function(i){if(void 0===i)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===i.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");i.fi=function(){this.pipeline.reset(),this.pipeline.add(i.fi.trimmer,i.fi.stopWordFilter,i.fi.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(i.fi.stemmer))},i.fi.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",i.fi.trimmer=i.trimmerSupport.generateTrimmer(i.fi.wordCharacters),i.Pipeline.registerFunction(i.fi.trimmer,"trimmer-fi"),i.fi.stemmer=function(){var e=i.stemmerSupport.Among,r=i.stemmerSupport.SnowballProgram,n=new function(){function i(){for(var i;;){if(i=C.cursor,C.in_grouping(j,97,246))break;if(C.cursor=i,i>=C.limit)return!0;C.cursor++}for(C.cursor=i;!C.out_grouping(j,97,246);){if(C.cursor>=C.limit)return!0;C.cursor++}return!1}function n(){var i,e;if(C.cursor>=u)if(e=C.limit_backward,C.limit_backward=u,C.ket=C.cursor,i=C.find_among_b(c,10)){switch(C.bra=C.cursor,C.limit_backward=e,i){case 1:if(!C.in_grouping_b(q,97,246))return;break;case 2:if(!(a<=C.cursor))return}C.slice_del()}else C.limit_backward=e}function t(){return C.find_among_b(b,7)}function s(){return C.eq_s_b(1,"i")&&C.in_grouping_b(v,97,246)}var o,l,a,u,c=[new e("pa",-1,1),new e("sti",-1,2),new e("kaan",-1,1),new e("han",-1,1),new e("kin",-1,1),new e("hän",-1,1),new e("kään",-1,1),new e("ko",-1,1),new e("pä",-1,1),new e("kö",-1,1)],m=[new e("lla",-1,-1),new e("na",-1,-1),new e("ssa",-1,-1),new e("ta",-1,-1),new e("lta",3,-1),new e("sta",3,-1)],w=[new e("llä",-1,-1),new e("nä",-1,-1),new e("ssä",-1,-1),new e("tä",-1,-1),new e("ltä",3,-1),new e("stä",3,-1)],_=[new e("lle",-1,-1),new e("ine",-1,-1)],k=[new e("nsa",-1,3),new e("mme",-1,3),new e("nne",-1,3),new e("ni",-1,2),new e("si",-1,1),new e("an",-1,4),new e("en",-1,6),new e("än",-1,5),new e("nsä",-1,3)],b=[new e("aa",-1,-1),new e("ee",-1,-1),new e("ii",-1,-1),new e("oo",-1,-1),new e("uu",-1,-1),new e("ää",-1,-1),new e("öö",-1,-1)],d=[new e("a",-1,8),new e("lla",0,-1),new e("na",0,-1),new e("ssa",0,-1),new e("ta",0,-1),new e("lta",4,-1),new e("sta",4,-1),new e("tta",4,9),new e("lle",-1,-1),new e("ine",-1,-1),new e("ksi",-1,-1),new e("n",-1,7),new e("han",11,1),new e("den",11,-1,s),new e("seen",11,-1,t),new e("hen",11,2),new e("tten",11,-1,s),new e("hin",11,3),new e("siin",11,-1,s),new e("hon",11,4),new e("hän",11,5),new e("hön",11,6),new e("ä",-1,8),new e("llä",22,-1),new e("nä",22,-1),new e("ssä",22,-1),new e("tä",22,-1),new e("ltä",26,-1),new e("stä",26,-1),new e("ttä",26,9)],f=[new e("eja",-1,-1),new e("mma",-1,1),new e("imma",1,-1),new e("mpa",-1,1),new e("impa",3,-1),new e("mmi",-1,1),new e("immi",5,-1),new e("mpi",-1,1),new e("impi",7,-1),new e("ejä",-1,-1),new e("mmä",-1,1),new e("immä",10,-1),new e("mpä",-1,1),new e("impä",12,-1)],h=[new e("i",-1,-1),new e("j",-1,-1)],p=[new e("mma",-1,1),new e("imma",0,-1)],g=[17,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8],j=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32],v=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32],q=[17,97,24,1,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32],C=new r;this.setCurrent=function(i){C.setCurrent(i)},this.getCurrent=function(){return C.getCurrent()},this.stem=function(){var e=C.cursor;return u=C.limit,a=u,i()||(u=C.cursor,i()||(a=C.cursor)),o=!1,C.limit_backward=e,C.cursor=C.limit,n(),C.cursor=C.limit,function(){var i,e,r;if(C.cursor>=u)if(e=C.limit_backward,C.limit_backward=u,C.ket=C.cursor,i=C.find_among_b(k,9))switch(C.bra=C.cursor,C.limit_backward=e,i){case 1:r=C.limit-C.cursor,C.eq_s_b(1,"k")||(C.cursor=C.limit-r,C.slice_del());break;case 2:C.slice_del(),C.ket=C.cursor,C.eq_s_b(3,"kse")&&(C.bra=C.cursor,C.slice_from("ksi"));break;case 3:C.slice_del();break;case 4:C.find_among_b(m,6)&&C.slice_del();break;case 5:C.find_among_b(w,6)&&C.slice_del();break;case 6:C.find_among_b(_,2)&&C.slice_del()}else C.limit_backward=e}(),C.cursor=C.limit,function(){var i,e,r;if(C.cursor>=u)if(e=C.limit_backward,C.limit_backward=u,C.ket=C.cursor,i=C.find_among_b(d,30)){switch(C.bra=C.cursor,C.limit_backward=e,i){case 1:if(!C.eq_s_b(1,"a"))return;break;case 2:case 9:if(!C.eq_s_b(1,"e"))return;break;case 3:if(!C.eq_s_b(1,"i"))return;break;case 4:if(!C.eq_s_b(1,"o"))return;break;case 5:if(!C.eq_s_b(1,"ä"))return;break;case 6:if(!C.eq_s_b(1,"ö"))return;break;case 7:if(r=C.limit-C.cursor,!t()&&(C.cursor=C.limit-r,!C.eq_s_b(2,"ie"))){C.cursor=C.limit-r;break}if(C.cursor=C.limit-r,C.cursor<=C.limit_backward){C.cursor=C.limit-r;break}C.cursor--,C.bra=C.cursor;break;case 8:if(!C.in_grouping_b(j,97,246)||!C.out_grouping_b(j,97,246))return}C.slice_del(),o=!0}else C.limit_backward=e}(),C.cursor=C.limit,function(){var i,e,r;if(C.cursor>=a)if(e=C.limit_backward,C.limit_backward=a,C.ket=C.cursor,i=C.find_among_b(f,14)){if(C.bra=C.cursor,C.limit_backward=e,1==i){if(r=C.limit-C.cursor,C.eq_s_b(2,"po"))return;C.cursor=C.limit-r}C.slice_del()}else C.limit_backward=e}(),C.cursor=C.limit,o?(!function(){var i;C.cursor>=u&&(i=C.limit_backward,C.limit_backward=u,C.ket=C.cursor,C.find_among_b(h,2)?(C.bra=C.cursor,C.limit_backward=i,C.slice_del()):C.limit_backward=i)}(),C.cursor=C.limit):(C.cursor=C.limit,function(){var i,e,r,n,t,s;if(C.cursor>=u){if(e=C.limit_backward,C.limit_backward=u,C.ket=C.cursor,C.eq_s_b(1,"t")&&(C.bra=C.cursor,r=C.limit-C.cursor,C.in_grouping_b(j,97,246)&&(C.cursor=C.limit-r,C.slice_del(),C.limit_backward=e,n=C.limit-C.cursor,C.cursor>=a&&(C.cursor=a,t=C.limit_backward,C.limit_backward=C.cursor,C.cursor=C.limit-n,C.ket=C.cursor,i=C.find_among_b(p,2))))){if(C.bra=C.cursor,C.limit_backward=t,1==i){if(s=C.limit-C.cursor,C.eq_s_b(2,"po"))return;C.cursor=C.limit-s}return void C.slice_del()}C.limit_backward=e}}(),C.cursor=C.limit),function(){var i,e,r,n;if(C.cursor>=u){for(i=C.limit_backward,C.limit_backward=u,e=C.limit-C.cursor,t()&&(C.cursor=C.limit-e,C.ket=C.cursor,C.cursor>C.limit_backward&&(C.cursor--,C.bra=C.cursor,C.slice_del())),C.cursor=C.limit-e,C.ket=C.cursor,C.in_grouping_b(g,97,228)&&(C.bra=C.cursor,C.out_grouping_b(j,97,246)&&C.slice_del()),C.cursor=C.limit-e,C.ket=C.cursor,C.eq_s_b(1,"j")&&(C.bra=C.cursor,r=C.limit-C.cursor,C.eq_s_b(1,"o")?C.slice_del():(C.cursor=C.limit-r,C.eq_s_b(1,"u")&&C.slice_del())),C.cursor=C.limit-e,C.ket=C.cursor,C.eq_s_b(1,"o")&&(C.bra=C.cursor,C.eq_s_b(1,"j")&&C.slice_del()),C.cursor=C.limit-e,C.limit_backward=i;;){if(n=C.limit-C.cursor,C.out_grouping_b(j,97,246)){C.cursor=C.limit-n;break}if(C.cursor=C.limit-n,C.cursor<=C.limit_backward)return;C.cursor--}C.ket=C.cursor,C.cursor>C.limit_backward&&(C.cursor--,C.bra=C.cursor,l=C.slice_to(),C.eq_v_b(l)&&C.slice_del())}}(),!0}};return function(i){return"function"==typeof i.update?i.update(function(i){return n.setCurrent(i),n.stem(),n.getCurrent()}):(n.setCurrent(i),n.stem(),n.getCurrent())}}(),i.Pipeline.registerFunction(i.fi.stemmer,"stemmer-fi"),i.fi.stopWordFilter=i.generateStopWordFilter("ei eivät emme en et ette että he heidän heidät heihin heille heillä heiltä heissä heistä heitä hän häneen hänelle hänellä häneltä hänen hänessä hänestä hänet häntä itse ja johon joiden joihin joiksi joilla joille joilta joina joissa joista joita joka joksi jolla jolle jolta jona jonka jos jossa josta jota jotka kanssa keiden keihin keiksi keille keillä keiltä keinä keissä keistä keitä keneen keneksi kenelle kenellä keneltä kenen kenenä kenessä kenestä kenet ketkä ketkä ketä koska kuin kuka kun me meidän meidät meihin meille meillä meiltä meissä meistä meitä mihin miksi mikä mille millä miltä minkä minkä minua minulla minulle minulta minun minussa minusta minut minuun minä minä missä mistä mitkä mitä mukaan mutta ne niiden niihin niiksi niille niillä niiltä niin niin niinä niissä niistä niitä noiden noihin noiksi noilla noille noilta noin noina noissa noista noita nuo nyt näiden näihin näiksi näille näillä näiltä näinä näissä näistä näitä nämä ole olemme olen olet olette oli olimme olin olisi olisimme olisin olisit olisitte olisivat olit olitte olivat olla olleet ollut on ovat poikki se sekä sen siihen siinä siitä siksi sille sillä sillä siltä sinua sinulla sinulle sinulta sinun sinussa sinusta sinut sinuun sinä sinä sitä tai te teidän teidät teihin teille teillä teiltä teissä teistä teitä tuo tuohon tuoksi tuolla tuolle tuolta tuon tuona tuossa tuosta tuota tähän täksi tälle tällä tältä tämä tämän tänä tässä tästä tätä vaan vai vaikka yli".split(" ")),i.Pipeline.registerFunction(i.fi.stopWordFilter,"stopWordFilter-fi")}}); -------------------------------------------------------------------------------- /site/assets/javascripts/lunr/lunr.fr.js: -------------------------------------------------------------------------------- 1 | !function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.fr=function(){this.pipeline.reset(),this.pipeline.add(e.fr.trimmer,e.fr.stopWordFilter,e.fr.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.fr.stemmer))},e.fr.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.fr.trimmer=e.trimmerSupport.generateTrimmer(e.fr.wordCharacters),e.Pipeline.registerFunction(e.fr.trimmer,"trimmer-fr"),e.fr.stemmer=function(){var r=e.stemmerSupport.Among,s=e.stemmerSupport.SnowballProgram,i=new function(){function e(e,r,s){return!(!z.eq_s(1,e)||(z.ket=z.cursor,!z.in_grouping(v,97,251)))&&(z.slice_from(r),z.cursor=s,!0)}function i(e,r,s){return!!z.eq_s(1,e)&&(z.ket=z.cursor,z.slice_from(r),z.cursor=s,!0)}function n(){for(;!z.in_grouping(v,97,251);){if(z.cursor>=z.limit)return!0;z.cursor++}for(;!z.out_grouping(v,97,251);){if(z.cursor>=z.limit)return!0;z.cursor++}return!1}function t(){return w<=z.cursor}function u(){return l<=z.cursor}function o(){return a<=z.cursor}function c(){if(!function(){var e,r;if(z.ket=z.cursor,e=z.find_among_b(d,43)){switch(z.bra=z.cursor,e){case 1:if(!o())return!1;z.slice_del();break;case 2:if(!o())return!1;z.slice_del(),z.ket=z.cursor,z.eq_s_b(2,"ic")&&(z.bra=z.cursor,o()?z.slice_del():z.slice_from("iqU"));break;case 3:if(!o())return!1;z.slice_from("log");break;case 4:if(!o())return!1;z.slice_from("u");break;case 5:if(!o())return!1;z.slice_from("ent");break;case 6:if(!t())return!1;if(z.slice_del(),z.ket=z.cursor,e=z.find_among_b(_,6))switch(z.bra=z.cursor,e){case 1:o()&&(z.slice_del(),z.ket=z.cursor,z.eq_s_b(2,"at")&&(z.bra=z.cursor,o()&&z.slice_del()));break;case 2:o()?z.slice_del():u()&&z.slice_from("eux");break;case 3:o()&&z.slice_del();break;case 4:t()&&z.slice_from("i")}break;case 7:if(!o())return!1;if(z.slice_del(),z.ket=z.cursor,e=z.find_among_b(b,3))switch(z.bra=z.cursor,e){case 1:o()?z.slice_del():z.slice_from("abl");break;case 2:o()?z.slice_del():z.slice_from("iqU");break;case 3:o()&&z.slice_del()}break;case 8:if(!o())return!1;if(z.slice_del(),z.ket=z.cursor,z.eq_s_b(2,"at")&&(z.bra=z.cursor,o()&&(z.slice_del(),z.ket=z.cursor,z.eq_s_b(2,"ic")))){z.bra=z.cursor,o()?z.slice_del():z.slice_from("iqU");break}break;case 9:z.slice_from("eau");break;case 10:if(!u())return!1;z.slice_from("al");break;case 11:if(o())z.slice_del();else{if(!u())return!1;z.slice_from("eux")}break;case 12:if(!u()||!z.out_grouping_b(v,97,251))return!1;z.slice_del();break;case 13:return t()&&z.slice_from("ant"),!1;case 14:return t()&&z.slice_from("ent"),!1;case 15:return r=z.limit-z.cursor,z.in_grouping_b(v,97,251)&&t()&&(z.cursor=z.limit-r,z.slice_del()),!1}return!0}return!1}()&&(z.cursor=z.limit,!function(){var e,r;if(z.cursor=w){if(s=z.limit_backward,z.limit_backward=w,z.ket=z.cursor,e=z.find_among_b(g,7))switch(z.bra=z.cursor,e){case 1:if(o()){if(i=z.limit-z.cursor,!z.eq_s_b(1,"s")&&(z.cursor=z.limit-i,!z.eq_s_b(1,"t")))break;z.slice_del()}break;case 2:z.slice_from("i");break;case 3:z.slice_del();break;case 4:z.eq_s_b(2,"gu")&&z.slice_del()}z.limit_backward=s}}();z.cursor=z.limit,z.ket=z.cursor,z.eq_s_b(1,"Y")?(z.bra=z.cursor,z.slice_from("i")):(z.cursor=z.limit,z.eq_s_b(1,"ç")&&(z.bra=z.cursor,z.slice_from("c")))}var a,l,w,f=[new r("col",-1,-1),new r("par",-1,-1),new r("tap",-1,-1)],m=[new r("",-1,4),new r("I",0,1),new r("U",0,2),new r("Y",0,3)],_=[new r("iqU",-1,3),new r("abl",-1,3),new r("Ièr",-1,4),new r("ièr",-1,4),new r("eus",-1,2),new r("iv",-1,1)],b=[new r("ic",-1,2),new r("abil",-1,1),new r("iv",-1,3)],d=[new r("iqUe",-1,1),new r("atrice",-1,2),new r("ance",-1,1),new r("ence",-1,5),new r("logie",-1,3),new r("able",-1,1),new r("isme",-1,1),new r("euse",-1,11),new r("iste",-1,1),new r("ive",-1,8),new r("if",-1,8),new r("usion",-1,4),new r("ation",-1,2),new r("ution",-1,4),new r("ateur",-1,2),new r("iqUes",-1,1),new r("atrices",-1,2),new r("ances",-1,1),new r("ences",-1,5),new r("logies",-1,3),new r("ables",-1,1),new r("ismes",-1,1),new r("euses",-1,11),new r("istes",-1,1),new r("ives",-1,8),new r("ifs",-1,8),new r("usions",-1,4),new r("ations",-1,2),new r("utions",-1,4),new r("ateurs",-1,2),new r("ments",-1,15),new r("ements",30,6),new r("issements",31,12),new r("ités",-1,7),new r("ment",-1,15),new r("ement",34,6),new r("issement",35,12),new r("amment",34,13),new r("emment",34,14),new r("aux",-1,10),new r("eaux",39,9),new r("eux",-1,1),new r("ité",-1,7)],k=[new r("ira",-1,1),new r("ie",-1,1),new r("isse",-1,1),new r("issante",-1,1),new r("i",-1,1),new r("irai",4,1),new r("ir",-1,1),new r("iras",-1,1),new r("ies",-1,1),new r("îmes",-1,1),new r("isses",-1,1),new r("issantes",-1,1),new r("îtes",-1,1),new r("is",-1,1),new r("irais",13,1),new r("issais",13,1),new r("irions",-1,1),new r("issions",-1,1),new r("irons",-1,1),new r("issons",-1,1),new r("issants",-1,1),new r("it",-1,1),new r("irait",21,1),new r("issait",21,1),new r("issant",-1,1),new r("iraIent",-1,1),new r("issaIent",-1,1),new r("irent",-1,1),new r("issent",-1,1),new r("iront",-1,1),new r("ît",-1,1),new r("iriez",-1,1),new r("issiez",-1,1),new r("irez",-1,1),new r("issez",-1,1)],p=[new r("a",-1,3),new r("era",0,2),new r("asse",-1,3),new r("ante",-1,3),new r("ée",-1,2),new r("ai",-1,3),new r("erai",5,2),new r("er",-1,2),new r("as",-1,3),new r("eras",8,2),new r("âmes",-1,3),new r("asses",-1,3),new r("antes",-1,3),new r("âtes",-1,3),new r("ées",-1,2),new r("ais",-1,3),new r("erais",15,2),new r("ions",-1,1),new r("erions",17,2),new r("assions",17,3),new r("erons",-1,2),new r("ants",-1,3),new r("és",-1,2),new r("ait",-1,3),new r("erait",23,2),new r("ant",-1,3),new r("aIent",-1,3),new r("eraIent",26,2),new r("èrent",-1,2),new r("assent",-1,3),new r("eront",-1,2),new r("ât",-1,3),new r("ez",-1,2),new r("iez",32,2),new r("eriez",33,2),new r("assiez",33,3),new r("erez",32,2),new r("é",-1,2)],g=[new r("e",-1,3),new r("Ière",0,2),new r("ière",0,2),new r("ion",-1,1),new r("Ier",-1,2),new r("ier",-1,2),new r("ë",-1,4)],q=[new r("ell",-1,-1),new r("eill",-1,-1),new r("enn",-1,-1),new r("onn",-1,-1),new r("ett",-1,-1)],v=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,128,130,103,8,5],h=[1,65,20,0,0,0,0,0,0,0,0,0,0,0,0,0,128],z=new s;this.setCurrent=function(e){z.setCurrent(e)},this.getCurrent=function(){return z.getCurrent()},this.stem=function(){var r=z.cursor;return function(){for(var r,s;;){if(r=z.cursor,z.in_grouping(v,97,251)){if(z.bra=z.cursor,s=z.cursor,e("u","U",r))continue;if(z.cursor=s,e("i","I",r))continue;if(z.cursor=s,i("y","Y",r))continue}if(z.cursor=r,z.bra=r,!e("y","Y",r)){if(z.cursor=r,z.eq_s(1,"q")&&(z.bra=z.cursor,i("u","U",r)))continue;if(z.cursor=r,r>=z.limit)return;z.cursor++}}}(),z.cursor=r,function(){var e=z.cursor;if(w=z.limit,l=w,a=w,z.in_grouping(v,97,251)&&z.in_grouping(v,97,251)&&z.cursor=z.limit){z.cursor=w;break}z.cursor++}while(!z.in_grouping(v,97,251))}w=z.cursor,z.cursor=e,n()||(l=z.cursor,n()||(a=z.cursor))}(),z.limit_backward=r,z.cursor=z.limit,c(),z.cursor=z.limit,function(){var e=z.limit-z.cursor;z.find_among_b(q,5)&&(z.cursor=z.limit-e,z.ket=z.cursor,z.cursor>z.limit_backward&&(z.cursor--,z.bra=z.cursor,z.slice_del()))}(),z.cursor=z.limit,function(){for(var e,r=1;z.out_grouping_b(v,97,251);)r--;if(r<=0){if(z.ket=z.cursor,e=z.limit-z.cursor,!z.eq_s_b(1,"é")&&(z.cursor=z.limit-e,!z.eq_s_b(1,"è")))return;z.bra=z.cursor,z.slice_from("e")}}(),z.cursor=z.limit_backward,function(){for(var e,r;r=z.cursor,z.bra=r,e=z.find_among(m,4);)switch(z.ket=z.cursor,e){case 1:z.slice_from("i");break;case 2:z.slice_from("u");break;case 3:z.slice_from("y");break;case 4:if(z.cursor>=z.limit)return;z.cursor++}}(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return i.setCurrent(e),i.stem(),i.getCurrent()}):(i.setCurrent(e),i.stem(),i.getCurrent())}}(),e.Pipeline.registerFunction(e.fr.stemmer,"stemmer-fr"),e.fr.stopWordFilter=e.generateStopWordFilter("ai aie aient aies ait as au aura aurai auraient aurais aurait auras aurez auriez aurions aurons auront aux avaient avais avait avec avez aviez avions avons ayant ayez ayons c ce ceci celà ces cet cette d dans de des du elle en es est et eu eue eues eurent eus eusse eussent eusses eussiez eussions eut eux eûmes eût eûtes furent fus fusse fussent fusses fussiez fussions fut fûmes fût fûtes ici il ils j je l la le les leur leurs lui m ma mais me mes moi mon même n ne nos notre nous on ont ou par pas pour qu que quel quelle quelles quels qui s sa sans se sera serai seraient serais serait seras serez seriez serions serons seront ses soi soient sois soit sommes son sont soyez soyons suis sur t ta te tes toi ton tu un une vos votre vous y à étaient étais était étant étiez étions été étée étées étés êtes".split(" ")),e.Pipeline.registerFunction(e.fr.stopWordFilter,"stopWordFilter-fr")}}); -------------------------------------------------------------------------------- /site/assets/javascripts/lunr/lunr.hu.js: -------------------------------------------------------------------------------- 1 | !function(e,n){"function"==typeof define&&define.amd?define(n):"object"==typeof exports?module.exports=n():n()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.hu=function(){this.pipeline.reset(),this.pipeline.add(e.hu.trimmer,e.hu.stopWordFilter,e.hu.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.hu.stemmer))},e.hu.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.hu.trimmer=e.trimmerSupport.generateTrimmer(e.hu.wordCharacters),e.Pipeline.registerFunction(e.hu.trimmer,"trimmer-hu"),e.hu.stemmer=function(){var n=e.stemmerSupport.Among,r=e.stemmerSupport.SnowballProgram,i=new function(){function e(){return s<=_.cursor}function i(){var e=_.limit-_.cursor;return!!_.find_among_b(w,23)&&(_.cursor=_.limit-e,!0)}function a(){if(_.cursor>_.limit_backward){_.cursor--,_.ket=_.cursor;var e=_.cursor-1;_.limit_backward<=e&&e<=_.limit&&(_.cursor=e,_.bra=e,_.slice_del())}}function t(){_.ket=_.cursor,_.find_among_b(u,44)&&(_.bra=_.cursor,e()&&(_.slice_del(),function(){var n;if(_.ket=_.cursor,(n=_.find_among_b(o,2))&&(_.bra=_.cursor,e()))switch(n){case 1:_.slice_from("a");break;case 2:_.slice_from("e")}}()))}var s,c=[new n("cs",-1,-1),new n("dzs",-1,-1),new n("gy",-1,-1),new n("ly",-1,-1),new n("ny",-1,-1),new n("sz",-1,-1),new n("ty",-1,-1),new n("zs",-1,-1)],o=[new n("á",-1,1),new n("é",-1,2)],w=[new n("bb",-1,-1),new n("cc",-1,-1),new n("dd",-1,-1),new n("ff",-1,-1),new n("gg",-1,-1),new n("jj",-1,-1),new n("kk",-1,-1),new n("ll",-1,-1),new n("mm",-1,-1),new n("nn",-1,-1),new n("pp",-1,-1),new n("rr",-1,-1),new n("ccs",-1,-1),new n("ss",-1,-1),new n("zzs",-1,-1),new n("tt",-1,-1),new n("vv",-1,-1),new n("ggy",-1,-1),new n("lly",-1,-1),new n("nny",-1,-1),new n("tty",-1,-1),new n("ssz",-1,-1),new n("zz",-1,-1)],l=[new n("al",-1,1),new n("el",-1,2)],u=[new n("ba",-1,-1),new n("ra",-1,-1),new n("be",-1,-1),new n("re",-1,-1),new n("ig",-1,-1),new n("nak",-1,-1),new n("nek",-1,-1),new n("val",-1,-1),new n("vel",-1,-1),new n("ul",-1,-1),new n("nál",-1,-1),new n("nél",-1,-1),new n("ból",-1,-1),new n("ról",-1,-1),new n("tól",-1,-1),new n("bõl",-1,-1),new n("rõl",-1,-1),new n("tõl",-1,-1),new n("ül",-1,-1),new n("n",-1,-1),new n("an",19,-1),new n("ban",20,-1),new n("en",19,-1),new n("ben",22,-1),new n("képpen",22,-1),new n("on",19,-1),new n("ön",19,-1),new n("képp",-1,-1),new n("kor",-1,-1),new n("t",-1,-1),new n("at",29,-1),new n("et",29,-1),new n("ként",29,-1),new n("anként",32,-1),new n("enként",32,-1),new n("onként",32,-1),new n("ot",29,-1),new n("ért",29,-1),new n("öt",29,-1),new n("hez",-1,-1),new n("hoz",-1,-1),new n("höz",-1,-1),new n("vá",-1,-1),new n("vé",-1,-1)],m=[new n("án",-1,2),new n("én",-1,1),new n("ánként",-1,3)],k=[new n("stul",-1,2),new n("astul",0,1),new n("ástul",0,3),new n("stül",-1,2),new n("estül",3,1),new n("éstül",3,4)],f=[new n("á",-1,1),new n("é",-1,2)],b=[new n("k",-1,7),new n("ak",0,4),new n("ek",0,6),new n("ok",0,5),new n("ák",0,1),new n("ék",0,2),new n("ök",0,3)],d=[new n("éi",-1,7),new n("áéi",0,6),new n("ééi",0,5),new n("é",-1,9),new n("ké",3,4),new n("aké",4,1),new n("eké",4,1),new n("oké",4,1),new n("áké",4,3),new n("éké",4,2),new n("öké",4,1),new n("éé",3,8)],g=[new n("a",-1,18),new n("ja",0,17),new n("d",-1,16),new n("ad",2,13),new n("ed",2,13),new n("od",2,13),new n("ád",2,14),new n("éd",2,15),new n("öd",2,13),new n("e",-1,18),new n("je",9,17),new n("nk",-1,4),new n("unk",11,1),new n("ánk",11,2),new n("énk",11,3),new n("ünk",11,1),new n("uk",-1,8),new n("juk",16,7),new n("ájuk",17,5),new n("ük",-1,8),new n("jük",19,7),new n("éjük",20,6),new n("m",-1,12),new n("am",22,9),new n("em",22,9),new n("om",22,9),new n("ám",22,10),new n("ém",22,11),new n("o",-1,18),new n("á",-1,19),new n("é",-1,20)],h=[new n("id",-1,10),new n("aid",0,9),new n("jaid",1,6),new n("eid",0,9),new n("jeid",3,6),new n("áid",0,7),new n("éid",0,8),new n("i",-1,15),new n("ai",7,14),new n("jai",8,11),new n("ei",7,14),new n("jei",10,11),new n("ái",7,12),new n("éi",7,13),new n("itek",-1,24),new n("eitek",14,21),new n("jeitek",15,20),new n("éitek",14,23),new n("ik",-1,29),new n("aik",18,26),new n("jaik",19,25),new n("eik",18,26),new n("jeik",21,25),new n("áik",18,27),new n("éik",18,28),new n("ink",-1,20),new n("aink",25,17),new n("jaink",26,16),new n("eink",25,17),new n("jeink",28,16),new n("áink",25,18),new n("éink",25,19),new n("aitok",-1,21),new n("jaitok",32,20),new n("áitok",-1,22),new n("im",-1,5),new n("aim",35,4),new n("jaim",36,1),new n("eim",35,4),new n("jeim",38,1),new n("áim",35,2),new n("éim",35,3)],p=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,1,17,52,14],_=new r;this.setCurrent=function(e){_.setCurrent(e)},this.getCurrent=function(){return _.getCurrent()},this.stem=function(){var n=_.cursor;return function(){var e,n=_.cursor;if(s=_.limit,_.in_grouping(p,97,252))for(;;){if(e=_.cursor,_.out_grouping(p,97,252))return _.cursor=e,_.find_among(c,8)||(_.cursor=e,e<_.limit&&_.cursor++),void(s=_.cursor);if(_.cursor=e,e>=_.limit)return void(s=e);_.cursor++}if(_.cursor=n,_.out_grouping(p,97,252)){for(;!_.in_grouping(p,97,252);){if(_.cursor>=_.limit)return;_.cursor++}s=_.cursor}}(),_.limit_backward=n,_.cursor=_.limit,function(){var n;if(_.ket=_.cursor,(n=_.find_among_b(l,2))&&(_.bra=_.cursor,e())){if((1==n||2==n)&&!i())return;_.slice_del(),a()}}(),_.cursor=_.limit,t(),_.cursor=_.limit,function(){var n;if(_.ket=_.cursor,(n=_.find_among_b(m,3))&&(_.bra=_.cursor,e()))switch(n){case 1:_.slice_from("e");break;case 2:case 3:_.slice_from("a")}}(),_.cursor=_.limit,function(){var n;if(_.ket=_.cursor,(n=_.find_among_b(k,6))&&(_.bra=_.cursor,e()))switch(n){case 1:case 2:_.slice_del();break;case 3:_.slice_from("a");break;case 4:_.slice_from("e")}}(),_.cursor=_.limit,function(){var n;if(_.ket=_.cursor,(n=_.find_among_b(f,2))&&(_.bra=_.cursor,e())){if((1==n||2==n)&&!i())return;_.slice_del(),a()}}(),_.cursor=_.limit,function(){var n;if(_.ket=_.cursor,(n=_.find_among_b(d,12))&&(_.bra=_.cursor,e()))switch(n){case 1:case 4:case 7:case 9:_.slice_del();break;case 2:case 5:case 8:_.slice_from("e");break;case 3:case 6:_.slice_from("a")}}(),_.cursor=_.limit,function(){var n;if(_.ket=_.cursor,(n=_.find_among_b(g,31))&&(_.bra=_.cursor,e()))switch(n){case 1:case 4:case 7:case 8:case 9:case 12:case 13:case 16:case 17:case 18:_.slice_del();break;case 2:case 5:case 10:case 14:case 19:_.slice_from("a");break;case 3:case 6:case 11:case 15:case 20:_.slice_from("e")}}(),_.cursor=_.limit,function(){var n;if(_.ket=_.cursor,(n=_.find_among_b(h,42))&&(_.bra=_.cursor,e()))switch(n){case 1:case 4:case 5:case 6:case 9:case 10:case 11:case 14:case 15:case 16:case 17:case 20:case 21:case 24:case 25:case 26:case 29:_.slice_del();break;case 2:case 7:case 12:case 18:case 22:case 27:_.slice_from("a");break;case 3:case 8:case 13:case 19:case 23:case 28:_.slice_from("e")}}(),_.cursor=_.limit,function(){var n;if(_.ket=_.cursor,(n=_.find_among_b(b,7))&&(_.bra=_.cursor,e()))switch(n){case 1:_.slice_from("a");break;case 2:_.slice_from("e");break;case 3:case 4:case 5:case 6:case 7:_.slice_del()}}(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return i.setCurrent(e),i.stem(),i.getCurrent()}):(i.setCurrent(e),i.stem(),i.getCurrent())}}(),e.Pipeline.registerFunction(e.hu.stemmer,"stemmer-hu"),e.hu.stopWordFilter=e.generateStopWordFilter("a abban ahhoz ahogy ahol aki akik akkor alatt amely amelyek amelyekben amelyeket amelyet amelynek ami amikor amit amolyan amíg annak arra arról az azok azon azonban azt aztán azután azzal azért be belül benne bár cikk cikkek cikkeket csak de e ebben eddig egy egyes egyetlen egyik egyre egyéb egész ehhez ekkor el ellen elsõ elég elõ elõször elõtt emilyen ennek erre ez ezek ezen ezt ezzel ezért fel felé hanem hiszen hogy hogyan igen ill ill. illetve ilyen ilyenkor ismét ison itt jobban jó jól kell kellett keressünk keresztül ki kívül között közül legalább legyen lehet lehetett lenne lenni lesz lett maga magát majd majd meg mellett mely melyek mert mi mikor milyen minden mindenki mindent mindig mint mintha mit mivel miért most már más másik még míg nagy nagyobb nagyon ne nekem neki nem nincs néha néhány nélkül olyan ott pedig persze rá s saját sem semmi sok sokat sokkal szemben szerint szinte számára talán tehát teljes tovább továbbá több ugyanis utolsó után utána vagy vagyis vagyok valaki valami valamint való van vannak vele vissza viszont volna volt voltak voltam voltunk által általában át én éppen és így õ õk õket össze úgy új újabb újra".split(" ")),e.Pipeline.registerFunction(e.hu.stopWordFilter,"stopWordFilter-hu")}}); -------------------------------------------------------------------------------- /site/assets/javascripts/lunr/lunr.it.js: -------------------------------------------------------------------------------- 1 | !function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.it=function(){this.pipeline.reset(),this.pipeline.add(e.it.trimmer,e.it.stopWordFilter,e.it.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.it.stemmer))},e.it.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.it.trimmer=e.trimmerSupport.generateTrimmer(e.it.wordCharacters),e.Pipeline.registerFunction(e.it.trimmer,"trimmer-it"),e.it.stemmer=function(){var r=e.stemmerSupport.Among,n=e.stemmerSupport.SnowballProgram,i=new function(){function e(e,r,n){return!(!z.eq_s(1,e)||(z.ket=z.cursor,!z.in_grouping(h,97,249)))&&(z.slice_from(r),z.cursor=n,!0)}function i(e){if(z.cursor=e,!z.in_grouping(h,97,249))return!1;for(;!z.out_grouping(h,97,249);){if(z.cursor>=z.limit)return!1;z.cursor++}return!0}function o(){var e,r=z.cursor;if(!function(){if(z.in_grouping(h,97,249)){var e=z.cursor;if(z.out_grouping(h,97,249)){for(;!z.in_grouping(h,97,249);){if(z.cursor>=z.limit)return i(e);z.cursor++}return!0}return i(e)}return!1}()){if(z.cursor=r,!z.out_grouping(h,97,249))return;if(e=z.cursor,z.out_grouping(h,97,249)){for(;!z.in_grouping(h,97,249);){if(z.cursor>=z.limit)return z.cursor=e,void(z.in_grouping(h,97,249)&&z.cursor=z.limit)return;z.cursor++}m=z.cursor}function t(){for(;!z.in_grouping(h,97,249);){if(z.cursor>=z.limit)return!1;z.cursor++}for(;!z.out_grouping(h,97,249);){if(z.cursor>=z.limit)return!1;z.cursor++}return!0}function s(){return m<=z.cursor}function a(){return w<=z.cursor}function u(){var e;if(z.ket=z.cursor,!(e=z.find_among_b(p,51)))return!1;switch(z.bra=z.cursor,e){case 1:if(!a())return!1;z.slice_del();break;case 2:if(!a())return!1;z.slice_del(),z.ket=z.cursor,z.eq_s_b(2,"ic")&&(z.bra=z.cursor,a()&&z.slice_del());break;case 3:if(!a())return!1;z.slice_from("log");break;case 4:if(!a())return!1;z.slice_from("u");break;case 5:if(!a())return!1;z.slice_from("ente");break;case 6:if(!s())return!1;z.slice_del();break;case 7:if(!(l<=z.cursor))return!1;z.slice_del(),z.ket=z.cursor,(e=z.find_among_b(_,4))&&(z.bra=z.cursor,a()&&(z.slice_del(),1==e&&(z.ket=z.cursor,z.eq_s_b(2,"at")&&(z.bra=z.cursor,a()&&z.slice_del()))));break;case 8:if(!a())return!1;z.slice_del(),z.ket=z.cursor,(e=z.find_among_b(g,3))&&(z.bra=z.cursor,1==e&&a()&&z.slice_del());break;case 9:if(!a())return!1;z.slice_del(),z.ket=z.cursor,z.eq_s_b(2,"at")&&(z.bra=z.cursor,a()&&(z.slice_del(),z.ket=z.cursor,z.eq_s_b(2,"ic")&&(z.bra=z.cursor,a()&&z.slice_del())))}return!0}function c(){!function(){var e=z.limit-z.cursor;z.ket=z.cursor,z.in_grouping_b(q,97,242)&&(z.bra=z.cursor,s()&&(z.slice_del(),z.ket=z.cursor,z.eq_s_b(1,"i")&&(z.bra=z.cursor,s())))?z.slice_del():z.cursor=z.limit-e}(),z.ket=z.cursor,z.eq_s_b(1,"h")&&(z.bra=z.cursor,z.in_grouping_b(C,99,103)&&s()&&z.slice_del())}var w,l,m,f=[new r("",-1,7),new r("qu",0,6),new r("á",0,1),new r("é",0,2),new r("í",0,3),new r("ó",0,4),new r("ú",0,5)],v=[new r("",-1,3),new r("I",0,1),new r("U",0,2)],b=[new r("la",-1,-1),new r("cela",0,-1),new r("gliela",0,-1),new r("mela",0,-1),new r("tela",0,-1),new r("vela",0,-1),new r("le",-1,-1),new r("cele",6,-1),new r("gliele",6,-1),new r("mele",6,-1),new r("tele",6,-1),new r("vele",6,-1),new r("ne",-1,-1),new r("cene",12,-1),new r("gliene",12,-1),new r("mene",12,-1),new r("sene",12,-1),new r("tene",12,-1),new r("vene",12,-1),new r("ci",-1,-1),new r("li",-1,-1),new r("celi",20,-1),new r("glieli",20,-1),new r("meli",20,-1),new r("teli",20,-1),new r("veli",20,-1),new r("gli",20,-1),new r("mi",-1,-1),new r("si",-1,-1),new r("ti",-1,-1),new r("vi",-1,-1),new r("lo",-1,-1),new r("celo",31,-1),new r("glielo",31,-1),new r("melo",31,-1),new r("telo",31,-1),new r("velo",31,-1)],d=[new r("ando",-1,1),new r("endo",-1,1),new r("ar",-1,2),new r("er",-1,2),new r("ir",-1,2)],_=[new r("ic",-1,-1),new r("abil",-1,-1),new r("os",-1,-1),new r("iv",-1,1)],g=[new r("ic",-1,1),new r("abil",-1,1),new r("iv",-1,1)],p=[new r("ica",-1,1),new r("logia",-1,3),new r("osa",-1,1),new r("ista",-1,1),new r("iva",-1,9),new r("anza",-1,1),new r("enza",-1,5),new r("ice",-1,1),new r("atrice",7,1),new r("iche",-1,1),new r("logie",-1,3),new r("abile",-1,1),new r("ibile",-1,1),new r("usione",-1,4),new r("azione",-1,2),new r("uzione",-1,4),new r("atore",-1,2),new r("ose",-1,1),new r("ante",-1,1),new r("mente",-1,1),new r("amente",19,7),new r("iste",-1,1),new r("ive",-1,9),new r("anze",-1,1),new r("enze",-1,5),new r("ici",-1,1),new r("atrici",25,1),new r("ichi",-1,1),new r("abili",-1,1),new r("ibili",-1,1),new r("ismi",-1,1),new r("usioni",-1,4),new r("azioni",-1,2),new r("uzioni",-1,4),new r("atori",-1,2),new r("osi",-1,1),new r("anti",-1,1),new r("amenti",-1,6),new r("imenti",-1,6),new r("isti",-1,1),new r("ivi",-1,9),new r("ico",-1,1),new r("ismo",-1,1),new r("oso",-1,1),new r("amento",-1,6),new r("imento",-1,6),new r("ivo",-1,9),new r("ità",-1,8),new r("istà",-1,1),new r("istè",-1,1),new r("istì",-1,1)],k=[new r("isca",-1,1),new r("enda",-1,1),new r("ata",-1,1),new r("ita",-1,1),new r("uta",-1,1),new r("ava",-1,1),new r("eva",-1,1),new r("iva",-1,1),new r("erebbe",-1,1),new r("irebbe",-1,1),new r("isce",-1,1),new r("ende",-1,1),new r("are",-1,1),new r("ere",-1,1),new r("ire",-1,1),new r("asse",-1,1),new r("ate",-1,1),new r("avate",16,1),new r("evate",16,1),new r("ivate",16,1),new r("ete",-1,1),new r("erete",20,1),new r("irete",20,1),new r("ite",-1,1),new r("ereste",-1,1),new r("ireste",-1,1),new r("ute",-1,1),new r("erai",-1,1),new r("irai",-1,1),new r("isci",-1,1),new r("endi",-1,1),new r("erei",-1,1),new r("irei",-1,1),new r("assi",-1,1),new r("ati",-1,1),new r("iti",-1,1),new r("eresti",-1,1),new r("iresti",-1,1),new r("uti",-1,1),new r("avi",-1,1),new r("evi",-1,1),new r("ivi",-1,1),new r("isco",-1,1),new r("ando",-1,1),new r("endo",-1,1),new r("Yamo",-1,1),new r("iamo",-1,1),new r("avamo",-1,1),new r("evamo",-1,1),new r("ivamo",-1,1),new r("eremo",-1,1),new r("iremo",-1,1),new r("assimo",-1,1),new r("ammo",-1,1),new r("emmo",-1,1),new r("eremmo",54,1),new r("iremmo",54,1),new r("immo",-1,1),new r("ano",-1,1),new r("iscano",58,1),new r("avano",58,1),new r("evano",58,1),new r("ivano",58,1),new r("eranno",-1,1),new r("iranno",-1,1),new r("ono",-1,1),new r("iscono",65,1),new r("arono",65,1),new r("erono",65,1),new r("irono",65,1),new r("erebbero",-1,1),new r("irebbero",-1,1),new r("assero",-1,1),new r("essero",-1,1),new r("issero",-1,1),new r("ato",-1,1),new r("ito",-1,1),new r("uto",-1,1),new r("avo",-1,1),new r("evo",-1,1),new r("ivo",-1,1),new r("ar",-1,1),new r("ir",-1,1),new r("erà",-1,1),new r("irà",-1,1),new r("erò",-1,1),new r("irò",-1,1)],h=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,128,128,8,2,1],q=[17,65,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,8,2],C=[17],z=new n;this.setCurrent=function(e){z.setCurrent(e)},this.getCurrent=function(){return z.getCurrent()},this.stem=function(){var r=z.cursor;return function(){for(var r,n,i,o,t=z.cursor;;){if(z.bra=z.cursor,r=z.find_among(f,7))switch(z.ket=z.cursor,r){case 1:z.slice_from("à");continue;case 2:z.slice_from("è");continue;case 3:z.slice_from("ì");continue;case 4:z.slice_from("ò");continue;case 5:z.slice_from("ù");continue;case 6:z.slice_from("qU");continue;case 7:if(z.cursor>=z.limit)break;z.cursor++;continue}break}for(z.cursor=t;;)for(n=z.cursor;;){if(i=z.cursor,z.in_grouping(h,97,249)){if(z.bra=z.cursor,o=z.cursor,e("u","U",i))break;if(z.cursor=o,e("i","I",i))break}if(z.cursor=i,z.cursor>=z.limit)return void(z.cursor=n);z.cursor++}}(),z.cursor=r,function(){var e=z.cursor;m=z.limit,l=m,w=m,o(),z.cursor=e,t()&&(l=z.cursor,t()&&(w=z.cursor))}(),z.limit_backward=r,z.cursor=z.limit,function(){var e;if(z.ket=z.cursor,z.find_among_b(b,37)&&(z.bra=z.cursor,(e=z.find_among_b(d,5))&&s()))switch(e){case 1:z.slice_del();break;case 2:z.slice_from("e")}}(),z.cursor=z.limit,u()||(z.cursor=z.limit,function(){var e,r;z.cursor>=m&&(r=z.limit_backward,z.limit_backward=m,z.ket=z.cursor,(e=z.find_among_b(k,87))&&(z.bra=z.cursor,1==e&&z.slice_del()),z.limit_backward=r)}()),z.cursor=z.limit,c(),z.cursor=z.limit_backward,function(){for(var e;z.bra=z.cursor,e=z.find_among(v,3);)switch(z.ket=z.cursor,e){case 1:z.slice_from("i");break;case 2:z.slice_from("u");break;case 3:if(z.cursor>=z.limit)return;z.cursor++}}(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return i.setCurrent(e),i.stem(),i.getCurrent()}):(i.setCurrent(e),i.stem(),i.getCurrent())}}(),e.Pipeline.registerFunction(e.it.stemmer,"stemmer-it"),e.it.stopWordFilter=e.generateStopWordFilter("a abbia abbiamo abbiano abbiate ad agl agli ai al all alla alle allo anche avemmo avendo avesse avessero avessi avessimo aveste avesti avete aveva avevamo avevano avevate avevi avevo avrai avranno avrebbe avrebbero avrei avremmo avremo avreste avresti avrete avrà avrò avuta avute avuti avuto c che chi ci coi col come con contro cui da dagl dagli dai dal dall dalla dalle dallo degl degli dei del dell della delle dello di dov dove e ebbe ebbero ebbi ed era erano eravamo eravate eri ero essendo faccia facciamo facciano facciate faccio facemmo facendo facesse facessero facessi facessimo faceste facesti faceva facevamo facevano facevate facevi facevo fai fanno farai faranno farebbe farebbero farei faremmo faremo fareste faresti farete farà farò fece fecero feci fosse fossero fossi fossimo foste fosti fu fui fummo furono gli ha hai hanno ho i il in io l la le lei li lo loro lui ma mi mia mie miei mio ne negl negli nei nel nell nella nelle nello noi non nostra nostre nostri nostro o per perché più quale quanta quante quanti quanto quella quelle quelli quello questa queste questi questo sarai saranno sarebbe sarebbero sarei saremmo saremo sareste saresti sarete sarà sarò se sei si sia siamo siano siate siete sono sta stai stando stanno starai staranno starebbe starebbero starei staremmo staremo stareste staresti starete starà starò stava stavamo stavano stavate stavi stavo stemmo stesse stessero stessi stessimo steste stesti stette stettero stetti stia stiamo stiano stiate sto su sua sue sugl sugli sui sul sull sulla sulle sullo suo suoi ti tra tu tua tue tuo tuoi tutti tutto un una uno vi voi vostra vostre vostri vostro è".split(" ")),e.Pipeline.registerFunction(e.it.stopWordFilter,"stopWordFilter-it")}}); -------------------------------------------------------------------------------- /site/assets/javascripts/lunr/lunr.jp.js: -------------------------------------------------------------------------------- 1 | !function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");var r="2"==e.version[0];e.jp=function(){this.pipeline.reset(),this.pipeline.add(e.jp.stopWordFilter,e.jp.stemmer),r?this.tokenizer=e.jp.tokenizer:(e.tokenizer&&(e.tokenizer=e.jp.tokenizer),this.tokenizerFn&&(this.tokenizerFn=e.jp.tokenizer))};var t=new e.TinySegmenter;e.jp.tokenizer=function(n){if(!arguments.length||null==n||void 0==n)return[];if(Array.isArray(n))return n.map(function(t){return r?new e.Token(t.toLowerCase()):t.toLowerCase()});for(var i=n.toString().toLowerCase().replace(/^\s+/,""),o=i.length-1;o>=0;o--)if(/\S/.test(i.charAt(o))){i=i.substring(0,o+1);break}return t.segment(i).filter(function(e){return!!e}).map(function(t){return r?new e.Token(t):t})},e.jp.stemmer=function(e){return e},e.Pipeline.registerFunction(e.jp.stemmer,"stemmer-jp"),e.jp.wordCharacters="一二三四五六七八九十百千万億兆一-龠々〆ヵヶぁ-んァ-ヴーア-ン゙a-zA-Za-zA-Z0-90-9",e.jp.stopWordFilter=function(t){if(-1===e.jp.stopWordFilter.stopWords.indexOf(r?t.toString():t))return t},e.jp.stopWordFilter=e.generateStopWordFilter("これ それ あれ この その あの ここ そこ あそこ こちら どこ だれ なに なん 何 私 貴方 貴方方 我々 私達 あの人 あのかた 彼女 彼 です あります おります います は が の に を で え から まで より も どの と し それで しかし".split(" ")),e.Pipeline.registerFunction(e.jp.stopWordFilter,"stopWordFilter-jp")}}); -------------------------------------------------------------------------------- /site/assets/javascripts/lunr/lunr.multi.js: -------------------------------------------------------------------------------- 1 | !function(e,i){"function"==typeof define&&define.amd?define(i):"object"==typeof exports?module.exports=i():i()(e.lunr)}(this,function(){return function(e){e.multiLanguage=function(){for(var i=Array.prototype.slice.call(arguments),t=i.join("-"),r="",n=[],s=[],p=0;p=u.limit)return;u.cursor=r+1}for(;!u.out_grouping(a,97,248);){if(u.cursor>=u.limit)return;u.cursor++}(i=u.cursor)=i&&(r=u.limit_backward,u.limit_backward=i,u.ket=u.cursor,e=u.find_among_b(t,29),u.limit_backward=r,e))switch(u.bra=u.cursor,e){case 1:u.slice_del();break;case 2:n=u.limit-u.cursor,u.in_grouping_b(m,98,122)?u.slice_del():(u.cursor=u.limit-n,u.eq_s_b(1,"k")&&u.out_grouping_b(a,97,248)&&u.slice_del());break;case 3:u.slice_from("er")}}(),u.cursor=u.limit,function(){var e,r=u.limit-u.cursor;u.cursor>=i&&(e=u.limit_backward,u.limit_backward=i,u.ket=u.cursor,u.find_among_b(o,2)?(u.bra=u.cursor,u.limit_backward=e,u.cursor=u.limit-r,u.cursor>u.limit_backward&&(u.cursor--,u.bra=u.cursor,u.slice_del())):u.limit_backward=e)}(),u.cursor=u.limit,function(){var e,r;u.cursor>=i&&(r=u.limit_backward,u.limit_backward=i,u.ket=u.cursor,(e=u.find_among_b(s,11))?(u.bra=u.cursor,u.limit_backward=r,1==e&&u.slice_del()):u.limit_backward=r)}(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return i.setCurrent(e),i.stem(),i.getCurrent()}):(i.setCurrent(e),i.stem(),i.getCurrent())}}(),e.Pipeline.registerFunction(e.no.stemmer,"stemmer-no"),e.no.stopWordFilter=e.generateStopWordFilter("alle at av bare begge ble blei bli blir blitt både båe da de deg dei deim deira deires dem den denne der dere deres det dette di din disse ditt du dykk dykkar då eg ein eit eitt eller elles en enn er et ett etter for fordi fra før ha hadde han hans har hennar henne hennes her hjå ho hoe honom hoss hossen hun hva hvem hver hvilke hvilken hvis hvor hvordan hvorfor i ikke ikkje ikkje ingen ingi inkje inn inni ja jeg kan kom korleis korso kun kunne kva kvar kvarhelst kven kvi kvifor man mange me med medan meg meget mellom men mi min mine mitt mot mykje ned no noe noen noka noko nokon nokor nokre nå når og også om opp oss over på samme seg selv si si sia sidan siden sin sine sitt sjøl skal skulle slik so som som somme somt så sånn til um upp ut uten var vart varte ved vere verte vi vil ville vore vors vort vår være være vært å".split(" ")),e.Pipeline.registerFunction(e.no.stopWordFilter,"stopWordFilter-no")}}); -------------------------------------------------------------------------------- /site/assets/javascripts/lunr/lunr.pt.js: -------------------------------------------------------------------------------- 1 | !function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.pt=function(){this.pipeline.reset(),this.pipeline.add(e.pt.trimmer,e.pt.stopWordFilter,e.pt.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.pt.stemmer))},e.pt.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.pt.trimmer=e.trimmerSupport.generateTrimmer(e.pt.wordCharacters),e.Pipeline.registerFunction(e.pt.trimmer,"trimmer-pt"),e.pt.stemmer=function(){var r=e.stemmerSupport.Among,s=e.stemmerSupport.SnowballProgram,n=new function(){function e(){if(j.out_grouping(q,97,250)){for(;!j.in_grouping(q,97,250);){if(j.cursor>=j.limit)return!0;j.cursor++}return!1}return!0}function n(){var r,s,n=j.cursor;if(j.in_grouping(q,97,250))if(r=j.cursor,e()){if(j.cursor=r,function(){if(j.in_grouping(q,97,250))for(;!j.out_grouping(q,97,250);){if(j.cursor>=j.limit)return!1;j.cursor++}return l=j.cursor,!0}())return}else l=j.cursor;if(j.cursor=n,j.out_grouping(q,97,250)){if(s=j.cursor,e()){if(j.cursor=s,!j.in_grouping(q,97,250)||j.cursor>=j.limit)return;j.cursor++}l=j.cursor}}function i(){for(;!j.in_grouping(q,97,250);){if(j.cursor>=j.limit)return!1;j.cursor++}for(;!j.out_grouping(q,97,250);){if(j.cursor>=j.limit)return!1;j.cursor++}return!0}function o(){return l<=j.cursor}function a(){return m<=j.cursor}function t(){var e;if(j.ket=j.cursor,!(e=j.find_among_b(h,45)))return!1;switch(j.bra=j.cursor,e){case 1:if(!a())return!1;j.slice_del();break;case 2:if(!a())return!1;j.slice_from("log");break;case 3:if(!a())return!1;j.slice_from("u");break;case 4:if(!a())return!1;j.slice_from("ente");break;case 5:if(!(c<=j.cursor))return!1;j.slice_del(),j.ket=j.cursor,(e=j.find_among_b(v,4))&&(j.bra=j.cursor,a()&&(j.slice_del(),1==e&&(j.ket=j.cursor,j.eq_s_b(2,"at")&&(j.bra=j.cursor,a()&&j.slice_del()))));break;case 6:if(!a())return!1;j.slice_del(),j.ket=j.cursor,(e=j.find_among_b(p,3))&&(j.bra=j.cursor,1==e&&a()&&j.slice_del());break;case 7:if(!a())return!1;j.slice_del(),j.ket=j.cursor,(e=j.find_among_b(_,3))&&(j.bra=j.cursor,1==e&&a()&&j.slice_del());break;case 8:if(!a())return!1;j.slice_del(),j.ket=j.cursor,j.eq_s_b(2,"at")&&(j.bra=j.cursor,a()&&j.slice_del());break;case 9:if(!o()||!j.eq_s_b(1,"e"))return!1;j.slice_from("ir")}return!0}function u(e,r){if(j.eq_s_b(1,e)){j.bra=j.cursor;var s=j.limit-j.cursor;if(j.eq_s_b(1,r))return j.cursor=j.limit-s,o()&&j.slice_del(),!1}return!0}function w(){if(!t()&&(j.cursor=j.limit,!function(){var e,r;if(j.cursor>=l){if(r=j.limit_backward,j.limit_backward=l,j.ket=j.cursor,e=j.find_among_b(b,120))return j.bra=j.cursor,1==e&&j.slice_del(),j.limit_backward=r,!0;j.limit_backward=r}return!1}()))return j.cursor=j.limit,void function(){var e;j.ket=j.cursor,(e=j.find_among_b(g,7))&&(j.bra=j.cursor,1==e&&o()&&j.slice_del())}();j.cursor=j.limit,j.ket=j.cursor,j.eq_s_b(1,"i")&&(j.bra=j.cursor,j.eq_s_b(1,"c")&&(j.cursor=j.limit,o()&&j.slice_del()))}var m,c,l,f=[new r("",-1,3),new r("ã",0,1),new r("õ",0,2)],d=[new r("",-1,3),new r("a~",0,1),new r("o~",0,2)],v=[new r("ic",-1,-1),new r("ad",-1,-1),new r("os",-1,-1),new r("iv",-1,1)],p=[new r("ante",-1,1),new r("avel",-1,1),new r("ível",-1,1)],_=[new r("ic",-1,1),new r("abil",-1,1),new r("iv",-1,1)],h=[new r("ica",-1,1),new r("ância",-1,1),new r("ência",-1,4),new r("ira",-1,9),new r("adora",-1,1),new r("osa",-1,1),new r("ista",-1,1),new r("iva",-1,8),new r("eza",-1,1),new r("logía",-1,2),new r("idade",-1,7),new r("ante",-1,1),new r("mente",-1,6),new r("amente",12,5),new r("ável",-1,1),new r("ível",-1,1),new r("ución",-1,3),new r("ico",-1,1),new r("ismo",-1,1),new r("oso",-1,1),new r("amento",-1,1),new r("imento",-1,1),new r("ivo",-1,8),new r("aça~o",-1,1),new r("ador",-1,1),new r("icas",-1,1),new r("ências",-1,4),new r("iras",-1,9),new r("adoras",-1,1),new r("osas",-1,1),new r("istas",-1,1),new r("ivas",-1,8),new r("ezas",-1,1),new r("logías",-1,2),new r("idades",-1,7),new r("uciones",-1,3),new r("adores",-1,1),new r("antes",-1,1),new r("aço~es",-1,1),new r("icos",-1,1),new r("ismos",-1,1),new r("osos",-1,1),new r("amentos",-1,1),new r("imentos",-1,1),new r("ivos",-1,8)],b=[new r("ada",-1,1),new r("ida",-1,1),new r("ia",-1,1),new r("aria",2,1),new r("eria",2,1),new r("iria",2,1),new r("ara",-1,1),new r("era",-1,1),new r("ira",-1,1),new r("ava",-1,1),new r("asse",-1,1),new r("esse",-1,1),new r("isse",-1,1),new r("aste",-1,1),new r("este",-1,1),new r("iste",-1,1),new r("ei",-1,1),new r("arei",16,1),new r("erei",16,1),new r("irei",16,1),new r("am",-1,1),new r("iam",20,1),new r("ariam",21,1),new r("eriam",21,1),new r("iriam",21,1),new r("aram",20,1),new r("eram",20,1),new r("iram",20,1),new r("avam",20,1),new r("em",-1,1),new r("arem",29,1),new r("erem",29,1),new r("irem",29,1),new r("assem",29,1),new r("essem",29,1),new r("issem",29,1),new r("ado",-1,1),new r("ido",-1,1),new r("ando",-1,1),new r("endo",-1,1),new r("indo",-1,1),new r("ara~o",-1,1),new r("era~o",-1,1),new r("ira~o",-1,1),new r("ar",-1,1),new r("er",-1,1),new r("ir",-1,1),new r("as",-1,1),new r("adas",47,1),new r("idas",47,1),new r("ias",47,1),new r("arias",50,1),new r("erias",50,1),new r("irias",50,1),new r("aras",47,1),new r("eras",47,1),new r("iras",47,1),new r("avas",47,1),new r("es",-1,1),new r("ardes",58,1),new r("erdes",58,1),new r("irdes",58,1),new r("ares",58,1),new r("eres",58,1),new r("ires",58,1),new r("asses",58,1),new r("esses",58,1),new r("isses",58,1),new r("astes",58,1),new r("estes",58,1),new r("istes",58,1),new r("is",-1,1),new r("ais",71,1),new r("eis",71,1),new r("areis",73,1),new r("ereis",73,1),new r("ireis",73,1),new r("áreis",73,1),new r("éreis",73,1),new r("íreis",73,1),new r("ásseis",73,1),new r("ésseis",73,1),new r("ísseis",73,1),new r("áveis",73,1),new r("íeis",73,1),new r("aríeis",84,1),new r("eríeis",84,1),new r("iríeis",84,1),new r("ados",-1,1),new r("idos",-1,1),new r("amos",-1,1),new r("áramos",90,1),new r("éramos",90,1),new r("íramos",90,1),new r("ávamos",90,1),new r("íamos",90,1),new r("aríamos",95,1),new r("eríamos",95,1),new r("iríamos",95,1),new r("emos",-1,1),new r("aremos",99,1),new r("eremos",99,1),new r("iremos",99,1),new r("ássemos",99,1),new r("êssemos",99,1),new r("íssemos",99,1),new r("imos",-1,1),new r("armos",-1,1),new r("ermos",-1,1),new r("irmos",-1,1),new r("ámos",-1,1),new r("arás",-1,1),new r("erás",-1,1),new r("irás",-1,1),new r("eu",-1,1),new r("iu",-1,1),new r("ou",-1,1),new r("ará",-1,1),new r("erá",-1,1),new r("irá",-1,1)],g=[new r("a",-1,1),new r("i",-1,1),new r("o",-1,1),new r("os",-1,1),new r("á",-1,1),new r("í",-1,1),new r("ó",-1,1)],k=[new r("e",-1,1),new r("ç",-1,2),new r("é",-1,1),new r("ê",-1,1)],q=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,3,19,12,2],j=new s;this.setCurrent=function(e){j.setCurrent(e)},this.getCurrent=function(){return j.getCurrent()},this.stem=function(){var e=j.cursor;return function(){for(var e;;){if(j.bra=j.cursor,e=j.find_among(f,3))switch(j.ket=j.cursor,e){case 1:j.slice_from("a~");continue;case 2:j.slice_from("o~");continue;case 3:if(j.cursor>=j.limit)break;j.cursor++;continue}break}}(),j.cursor=e,function(){var e=j.cursor;l=j.limit,c=l,m=l,n(),j.cursor=e,i()&&(c=j.cursor,i()&&(m=j.cursor))}(),j.limit_backward=e,j.cursor=j.limit,w(),j.cursor=j.limit,function(){var e;if(j.ket=j.cursor,e=j.find_among_b(k,4))switch(j.bra=j.cursor,e){case 1:o()&&(j.slice_del(),j.ket=j.cursor,j.limit,j.cursor,u("u","g")&&u("i","c"));break;case 2:j.slice_from("c")}}(),j.cursor=j.limit_backward,function(){for(var e;;){if(j.bra=j.cursor,e=j.find_among(d,3))switch(j.ket=j.cursor,e){case 1:j.slice_from("ã");continue;case 2:j.slice_from("õ");continue;case 3:if(j.cursor>=j.limit)break;j.cursor++;continue}break}}(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return n.setCurrent(e),n.stem(),n.getCurrent()}):(n.setCurrent(e),n.stem(),n.getCurrent())}}(),e.Pipeline.registerFunction(e.pt.stemmer,"stemmer-pt"),e.pt.stopWordFilter=e.generateStopWordFilter("a ao aos aquela aquelas aquele aqueles aquilo as até com como da das de dela delas dele deles depois do dos e ela elas ele eles em entre era eram essa essas esse esses esta estamos estas estava estavam este esteja estejam estejamos estes esteve estive estivemos estiver estivera estiveram estiverem estivermos estivesse estivessem estivéramos estivéssemos estou está estávamos estão eu foi fomos for fora foram forem formos fosse fossem fui fôramos fôssemos haja hajam hajamos havemos hei houve houvemos houver houvera houveram houverei houverem houveremos houveria houveriam houvermos houverá houverão houveríamos houvesse houvessem houvéramos houvéssemos há hão isso isto já lhe lhes mais mas me mesmo meu meus minha minhas muito na nas nem no nos nossa nossas nosso nossos num numa não nós o os ou para pela pelas pelo pelos por qual quando que quem se seja sejam sejamos sem serei seremos seria seriam será serão seríamos seu seus somos sou sua suas são só também te tem temos tenha tenham tenhamos tenho terei teremos teria teriam terá terão teríamos teu teus teve tinha tinham tive tivemos tiver tivera tiveram tiverem tivermos tivesse tivessem tivéramos tivéssemos tu tua tuas tém tínhamos um uma você vocês vos à às éramos".split(" ")),e.Pipeline.registerFunction(e.pt.stopWordFilter,"stopWordFilter-pt")}}); -------------------------------------------------------------------------------- /site/assets/javascripts/lunr/lunr.ro.js: -------------------------------------------------------------------------------- 1 | !function(e,i){"function"==typeof define&&define.amd?define(i):"object"==typeof exports?module.exports=i():i()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.ro=function(){this.pipeline.reset(),this.pipeline.add(e.ro.trimmer,e.ro.stopWordFilter,e.ro.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.ro.stemmer))},e.ro.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.ro.trimmer=e.trimmerSupport.generateTrimmer(e.ro.wordCharacters),e.Pipeline.registerFunction(e.ro.trimmer,"trimmer-ro"),e.ro.stemmer=function(){var i=e.stemmerSupport.Among,r=e.stemmerSupport.SnowballProgram,n=new function(){function e(e,i){h.eq_s(1,e)&&(h.ket=h.cursor,h.in_grouping(k,97,259)&&h.slice_from(i))}function n(){if(h.out_grouping(k,97,259)){for(;!h.in_grouping(k,97,259);){if(h.cursor>=h.limit)return!0;h.cursor++}return!1}return!0}function t(){var e,i,r=h.cursor;if(h.in_grouping(k,97,259)){if(e=h.cursor,!n())return void(f=h.cursor);if(h.cursor=e,!function(){if(h.in_grouping(k,97,259))for(;!h.out_grouping(k,97,259);){if(h.cursor>=h.limit)return!0;h.cursor++}return!1}())return void(f=h.cursor)}h.cursor=r,h.out_grouping(k,97,259)&&(i=h.cursor,n()&&(h.cursor=i,h.in_grouping(k,97,259)&&h.cursor=h.limit)return!1;h.cursor++}for(;!h.out_grouping(k,97,259);){if(h.cursor>=h.limit)return!1;h.cursor++}return!0}function o(){return l<=h.cursor}function s(){var e,i=h.limit-h.cursor;if(h.ket=h.cursor,(e=h.find_among_b(b,46))&&(h.bra=h.cursor,o())){switch(e){case 1:h.slice_from("abil");break;case 2:h.slice_from("ibil");break;case 3:h.slice_from("iv");break;case 4:h.slice_from("ic");break;case 5:h.slice_from("at");break;case 6:h.slice_from("it")}return w=!0,h.cursor=h.limit-i,!0}return!1}function c(){var e,i;for(w=!1;;)if(i=h.limit-h.cursor,!s()){h.cursor=h.limit-i;break}if(h.ket=h.cursor,(e=h.find_among_b(v,62))&&(h.bra=h.cursor,m<=h.cursor)){switch(e){case 1:h.slice_del();break;case 2:h.eq_s_b(1,"ţ")&&(h.bra=h.cursor,h.slice_from("t"));break;case 3:h.slice_from("ist")}w=!0}}function u(){var e;h.ket=h.cursor,(e=h.find_among_b(g,5))&&(h.bra=h.cursor,f<=h.cursor&&1==e&&h.slice_del())}var w,m,l,f,p=[new i("",-1,3),new i("I",0,1),new i("U",0,2)],d=[new i("ea",-1,3),new i("aţia",-1,7),new i("aua",-1,2),new i("iua",-1,4),new i("aţie",-1,7),new i("ele",-1,3),new i("ile",-1,5),new i("iile",6,4),new i("iei",-1,4),new i("atei",-1,6),new i("ii",-1,4),new i("ului",-1,1),new i("ul",-1,1),new i("elor",-1,3),new i("ilor",-1,4),new i("iilor",14,4)],b=[new i("icala",-1,4),new i("iciva",-1,4),new i("ativa",-1,5),new i("itiva",-1,6),new i("icale",-1,4),new i("aţiune",-1,5),new i("iţiune",-1,6),new i("atoare",-1,5),new i("itoare",-1,6),new i("ătoare",-1,5),new i("icitate",-1,4),new i("abilitate",-1,1),new i("ibilitate",-1,2),new i("ivitate",-1,3),new i("icive",-1,4),new i("ative",-1,5),new i("itive",-1,6),new i("icali",-1,4),new i("atori",-1,5),new i("icatori",18,4),new i("itori",-1,6),new i("ători",-1,5),new i("icitati",-1,4),new i("abilitati",-1,1),new i("ivitati",-1,3),new i("icivi",-1,4),new i("ativi",-1,5),new i("itivi",-1,6),new i("icităi",-1,4),new i("abilităi",-1,1),new i("ivităi",-1,3),new i("icităţi",-1,4),new i("abilităţi",-1,1),new i("ivităţi",-1,3),new i("ical",-1,4),new i("ator",-1,5),new i("icator",35,4),new i("itor",-1,6),new i("ător",-1,5),new i("iciv",-1,4),new i("ativ",-1,5),new i("itiv",-1,6),new i("icală",-1,4),new i("icivă",-1,4),new i("ativă",-1,5),new i("itivă",-1,6)],v=[new i("ica",-1,1),new i("abila",-1,1),new i("ibila",-1,1),new i("oasa",-1,1),new i("ata",-1,1),new i("ita",-1,1),new i("anta",-1,1),new i("ista",-1,3),new i("uta",-1,1),new i("iva",-1,1),new i("ic",-1,1),new i("ice",-1,1),new i("abile",-1,1),new i("ibile",-1,1),new i("isme",-1,3),new i("iune",-1,2),new i("oase",-1,1),new i("ate",-1,1),new i("itate",17,1),new i("ite",-1,1),new i("ante",-1,1),new i("iste",-1,3),new i("ute",-1,1),new i("ive",-1,1),new i("ici",-1,1),new i("abili",-1,1),new i("ibili",-1,1),new i("iuni",-1,2),new i("atori",-1,1),new i("osi",-1,1),new i("ati",-1,1),new i("itati",30,1),new i("iti",-1,1),new i("anti",-1,1),new i("isti",-1,3),new i("uti",-1,1),new i("işti",-1,3),new i("ivi",-1,1),new i("ităi",-1,1),new i("oşi",-1,1),new i("ităţi",-1,1),new i("abil",-1,1),new i("ibil",-1,1),new i("ism",-1,3),new i("ator",-1,1),new i("os",-1,1),new i("at",-1,1),new i("it",-1,1),new i("ant",-1,1),new i("ist",-1,3),new i("ut",-1,1),new i("iv",-1,1),new i("ică",-1,1),new i("abilă",-1,1),new i("ibilă",-1,1),new i("oasă",-1,1),new i("ată",-1,1),new i("ită",-1,1),new i("antă",-1,1),new i("istă",-1,3),new i("ută",-1,1),new i("ivă",-1,1)],_=[new i("ea",-1,1),new i("ia",-1,1),new i("esc",-1,1),new i("ăsc",-1,1),new i("ind",-1,1),new i("ând",-1,1),new i("are",-1,1),new i("ere",-1,1),new i("ire",-1,1),new i("âre",-1,1),new i("se",-1,2),new i("ase",10,1),new i("sese",10,2),new i("ise",10,1),new i("use",10,1),new i("âse",10,1),new i("eşte",-1,1),new i("ăşte",-1,1),new i("eze",-1,1),new i("ai",-1,1),new i("eai",19,1),new i("iai",19,1),new i("sei",-1,2),new i("eşti",-1,1),new i("ăşti",-1,1),new i("ui",-1,1),new i("ezi",-1,1),new i("âi",-1,1),new i("aşi",-1,1),new i("seşi",-1,2),new i("aseşi",29,1),new i("seseşi",29,2),new i("iseşi",29,1),new i("useşi",29,1),new i("âseşi",29,1),new i("işi",-1,1),new i("uşi",-1,1),new i("âşi",-1,1),new i("aţi",-1,2),new i("eaţi",38,1),new i("iaţi",38,1),new i("eţi",-1,2),new i("iţi",-1,2),new i("âţi",-1,2),new i("arăţi",-1,1),new i("serăţi",-1,2),new i("aserăţi",45,1),new i("seserăţi",45,2),new i("iserăţi",45,1),new i("userăţi",45,1),new i("âserăţi",45,1),new i("irăţi",-1,1),new i("urăţi",-1,1),new i("ârăţi",-1,1),new i("am",-1,1),new i("eam",54,1),new i("iam",54,1),new i("em",-1,2),new i("asem",57,1),new i("sesem",57,2),new i("isem",57,1),new i("usem",57,1),new i("âsem",57,1),new i("im",-1,2),new i("âm",-1,2),new i("ăm",-1,2),new i("arăm",65,1),new i("serăm",65,2),new i("aserăm",67,1),new i("seserăm",67,2),new i("iserăm",67,1),new i("userăm",67,1),new i("âserăm",67,1),new i("irăm",65,1),new i("urăm",65,1),new i("ârăm",65,1),new i("au",-1,1),new i("eau",76,1),new i("iau",76,1),new i("indu",-1,1),new i("ându",-1,1),new i("ez",-1,1),new i("ească",-1,1),new i("ară",-1,1),new i("seră",-1,2),new i("aseră",84,1),new i("seseră",84,2),new i("iseră",84,1),new i("useră",84,1),new i("âseră",84,1),new i("iră",-1,1),new i("ură",-1,1),new i("âră",-1,1),new i("ează",-1,1)],g=[new i("a",-1,1),new i("e",-1,1),new i("ie",1,1),new i("i",-1,1),new i("ă",-1,1)],k=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,2,32,0,0,4],h=new r;this.setCurrent=function(e){h.setCurrent(e)},this.getCurrent=function(){return h.getCurrent()},this.stem=function(){var i=h.cursor;return function(){for(var i,r;i=h.cursor,h.in_grouping(k,97,259)&&(r=h.cursor,h.bra=r,e("u","U"),h.cursor=r,e("i","I")),h.cursor=i,!(h.cursor>=h.limit);)h.cursor++}(),h.cursor=i,function(){var e=h.cursor;f=h.limit,l=f,m=f,t(),h.cursor=e,a()&&(l=h.cursor,a()&&(m=h.cursor))}(),h.limit_backward=i,h.cursor=h.limit,function(){var e,i;if(h.ket=h.cursor,(e=h.find_among_b(d,16))&&(h.bra=h.cursor,o()))switch(e){case 1:h.slice_del();break;case 2:h.slice_from("a");break;case 3:h.slice_from("e");break;case 4:h.slice_from("i");break;case 5:i=h.limit-h.cursor,h.eq_s_b(2,"ab")||(h.cursor=h.limit-i,h.slice_from("i"));break;case 6:h.slice_from("at");break;case 7:h.slice_from("aţi")}}(),h.cursor=h.limit,c(),h.cursor=h.limit,w||(h.cursor=h.limit,function(){var e,i,r;if(h.cursor>=f){if(i=h.limit_backward,h.limit_backward=f,h.ket=h.cursor,e=h.find_among_b(_,94))switch(h.bra=h.cursor,e){case 1:if(r=h.limit-h.cursor,!h.out_grouping_b(k,97,259)&&(h.cursor=h.limit-r,!h.eq_s_b(1,"u")))break;case 2:h.slice_del()}h.limit_backward=i}}(),h.cursor=h.limit),u(),h.cursor=h.limit_backward,function(){for(var e;;){if(h.bra=h.cursor,e=h.find_among(p,3))switch(h.ket=h.cursor,e){case 1:h.slice_from("i");continue;case 2:h.slice_from("u");continue;case 3:if(h.cursor>=h.limit)break;h.cursor++;continue}break}}(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return n.setCurrent(e),n.stem(),n.getCurrent()}):(n.setCurrent(e),n.stem(),n.getCurrent())}}(),e.Pipeline.registerFunction(e.ro.stemmer,"stemmer-ro"),e.ro.stopWordFilter=e.generateStopWordFilter("acea aceasta această aceea acei aceia acel acela acele acelea acest acesta aceste acestea aceşti aceştia acolo acord acum ai aia aibă aici al ale alea altceva altcineva am ar are asemenea asta astea astăzi asupra au avea avem aveţi azi aş aşadar aţi bine bucur bună ca care caut ce cel ceva chiar cinci cine cineva contra cu cum cumva curând curînd când cât câte câtva câţi cînd cît cîte cîtva cîţi că căci cărei căror cărui către da dacă dar datorită dată dau de deci deja deoarece departe deşi din dinaintea dintr- dintre doi doilea două drept după dă ea ei el ele eram este eu eşti face fata fi fie fiecare fii fim fiu fiţi frumos fără graţie halbă iar ieri la le li lor lui lângă lîngă mai mea mei mele mereu meu mi mie mine mult multă mulţi mulţumesc mâine mîine mă ne nevoie nici nicăieri nimeni nimeri nimic nişte noastre noastră noi noroc nostru nouă noştri nu opt ori oricare orice oricine oricum oricând oricât oricînd oricît oriunde patra patru patrulea pe pentru peste pic poate pot prea prima primul prin puţin puţina puţină până pînă rog sa sale sau se spate spre sub sunt suntem sunteţi sută sînt sîntem sînteţi să săi său ta tale te timp tine toate toată tot totuşi toţi trei treia treilea tu tăi tău un una unde undeva unei uneia unele uneori unii unor unora unu unui unuia unul vi voastre voastră voi vostru vouă voştri vreme vreo vreun vă zece zero zi zice îi îl îmi împotriva în înainte înaintea încotro încât încît între întrucât întrucît îţi ăla ălea ăsta ăstea ăştia şapte şase şi ştiu ţi ţie".split(" ")),e.Pipeline.registerFunction(e.ro.stopWordFilter,"stopWordFilter-ro")}}); -------------------------------------------------------------------------------- /site/assets/javascripts/lunr/lunr.ru.js: -------------------------------------------------------------------------------- 1 | !function(e,n){"function"==typeof define&&define.amd?define(n):"object"==typeof exports?module.exports=n():n()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.ru=function(){this.pipeline.reset(),this.pipeline.add(e.ru.trimmer,e.ru.stopWordFilter,e.ru.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.ru.stemmer))},e.ru.wordCharacters="Ѐ-҄҇-ԯᴫᵸⷠ-ⷿꙀ-ꚟ︮︯",e.ru.trimmer=e.trimmerSupport.generateTrimmer(e.ru.wordCharacters),e.Pipeline.registerFunction(e.ru.trimmer,"trimmer-ru"),e.ru.stemmer=function(){var n=e.stemmerSupport.Among,r=e.stemmerSupport.SnowballProgram,t=new function(){function e(){for(;!g.in_grouping(h,1072,1103);){if(g.cursor>=g.limit)return!1;g.cursor++}return!0}function t(){for(;!g.out_grouping(h,1072,1103);){if(g.cursor>=g.limit)return!1;g.cursor++}return!0}function w(e,n){var r,t;if(g.ket=g.cursor,r=g.find_among_b(e,n)){switch(g.bra=g.cursor,r){case 1:if(t=g.limit-g.cursor,!g.eq_s_b(1,"а")&&(g.cursor=g.limit-t,!g.eq_s_b(1,"я")))return!1;case 2:g.slice_del()}return!0}return!1}function i(e,n){var r;return g.ket=g.cursor,!!(r=g.find_among_b(e,n))&&(g.bra=g.cursor,1==r&&g.slice_del(),!0)}function u(){return!!i(l,26)&&(w(f,8),!0)}function s(){var e;g.ket=g.cursor,(e=g.find_among_b(_,2))&&(g.bra=g.cursor,o<=g.cursor&&1==e&&g.slice_del())}var o,c,m=[new n("в",-1,1),new n("ив",0,2),new n("ыв",0,2),new n("вши",-1,1),new n("ивши",3,2),new n("ывши",3,2),new n("вшись",-1,1),new n("ившись",6,2),new n("ывшись",6,2)],l=[new n("ее",-1,1),new n("ие",-1,1),new n("ое",-1,1),new n("ые",-1,1),new n("ими",-1,1),new n("ыми",-1,1),new n("ей",-1,1),new n("ий",-1,1),new n("ой",-1,1),new n("ый",-1,1),new n("ем",-1,1),new n("им",-1,1),new n("ом",-1,1),new n("ым",-1,1),new n("его",-1,1),new n("ого",-1,1),new n("ему",-1,1),new n("ому",-1,1),new n("их",-1,1),new n("ых",-1,1),new n("ею",-1,1),new n("ою",-1,1),new n("ую",-1,1),new n("юю",-1,1),new n("ая",-1,1),new n("яя",-1,1)],f=[new n("ем",-1,1),new n("нн",-1,1),new n("вш",-1,1),new n("ивш",2,2),new n("ывш",2,2),new n("щ",-1,1),new n("ющ",5,1),new n("ующ",6,2)],a=[new n("сь",-1,1),new n("ся",-1,1)],p=[new n("ла",-1,1),new n("ила",0,2),new n("ыла",0,2),new n("на",-1,1),new n("ена",3,2),new n("ете",-1,1),new n("ите",-1,2),new n("йте",-1,1),new n("ейте",7,2),new n("уйте",7,2),new n("ли",-1,1),new n("или",10,2),new n("ыли",10,2),new n("й",-1,1),new n("ей",13,2),new n("уй",13,2),new n("л",-1,1),new n("ил",16,2),new n("ыл",16,2),new n("ем",-1,1),new n("им",-1,2),new n("ым",-1,2),new n("н",-1,1),new n("ен",22,2),new n("ло",-1,1),new n("ило",24,2),new n("ыло",24,2),new n("но",-1,1),new n("ено",27,2),new n("нно",27,1),new n("ет",-1,1),new n("ует",30,2),new n("ит",-1,2),new n("ыт",-1,2),new n("ют",-1,1),new n("уют",34,2),new n("ят",-1,2),new n("ны",-1,1),new n("ены",37,2),new n("ть",-1,1),new n("ить",39,2),new n("ыть",39,2),new n("ешь",-1,1),new n("ишь",-1,2),new n("ю",-1,2),new n("ую",44,2)],d=[new n("а",-1,1),new n("ев",-1,1),new n("ов",-1,1),new n("е",-1,1),new n("ие",3,1),new n("ье",3,1),new n("и",-1,1),new n("еи",6,1),new n("ии",6,1),new n("ами",6,1),new n("ями",6,1),new n("иями",10,1),new n("й",-1,1),new n("ей",12,1),new n("ией",13,1),new n("ий",12,1),new n("ой",12,1),new n("ам",-1,1),new n("ем",-1,1),new n("ием",18,1),new n("ом",-1,1),new n("ям",-1,1),new n("иям",21,1),new n("о",-1,1),new n("у",-1,1),new n("ах",-1,1),new n("ях",-1,1),new n("иях",26,1),new n("ы",-1,1),new n("ь",-1,1),new n("ю",-1,1),new n("ию",30,1),new n("ью",30,1),new n("я",-1,1),new n("ия",33,1),new n("ья",33,1)],_=[new n("ост",-1,1),new n("ость",-1,1)],b=[new n("ейше",-1,1),new n("н",-1,2),new n("ейш",-1,1),new n("ь",-1,3)],h=[33,65,8,232],g=new r;this.setCurrent=function(e){g.setCurrent(e)},this.getCurrent=function(){return g.getCurrent()},this.stem=function(){return c=g.limit,o=c,e()&&(c=g.cursor,t()&&e()&&t()&&(o=g.cursor)),g.cursor=g.limit,!(g.cursor=i&&(e-=i,t[e>>3]&1<<(7&e)))return this.cursor++,!0}return!1},in_grouping_b:function(t,i,s){if(this.cursor>this.limit_backward){var e=r.charCodeAt(this.cursor-1);if(e<=s&&e>=i&&(e-=i,t[e>>3]&1<<(7&e)))return this.cursor--,!0}return!1},out_grouping:function(t,i,s){if(this.cursors||e>3]&1<<(7&e)))return this.cursor++,!0}return!1},out_grouping_b:function(t,i,s){if(this.cursor>this.limit_backward){var e=r.charCodeAt(this.cursor-1);if(e>s||e>3]&1<<(7&e)))return this.cursor--,!0}return!1},eq_s:function(t,i){if(this.limit-this.cursor>1),f=0,l=o0||e==s||c)break;c=!0}}for(;;){if(o>=(_=t[s]).s_size){if(this.cursor=n+_.s_size,!_.method)return _.result;var b=_.method();if(this.cursor=n+_.s_size,b)return _.result}if((s=_.substring_i)<0)return 0}},find_among_b:function(t,i){for(var s=0,e=i,n=this.cursor,u=this.limit_backward,o=0,h=0,c=!1;;){for(var a=s+(e-s>>1),f=0,l=o=0;_--){if(n-l==u){f=-1;break}if(f=r.charCodeAt(n-1-l)-m.s[_])break;l++}if(f<0?(e=a,h=l):(s=a,o=l),e-s<=1){if(s>0||e==s||c)break;c=!0}}for(;;){var m=t[s];if(o>=m.s_size){if(this.cursor=n-m.s_size,!m.method)return m.result;var b=m.method();if(this.cursor=n-m.s_size,b)return m.result}if((s=m.substring_i)<0)return 0}},replace_s:function(t,i,s){var e=s.length-(i-t),n=r.substring(0,t),u=r.substring(i);return r=n+s+u,this.limit+=e,this.cursor>=i?this.cursor+=e:this.cursor>t&&(this.cursor=t),e},slice_check:function(){if(this.bra<0||this.bra>this.ket||this.ket>this.limit||this.limit>r.length)throw"faulty slice operation"},slice_from:function(r){this.slice_check(),this.replace_s(this.bra,this.ket,r)},slice_del:function(){this.slice_from("")},insert:function(r,t,i){var s=this.replace_s(r,t,i);r<=this.bra&&(this.bra+=s),r<=this.ket&&(this.ket+=s)},slice_to:function(){return this.slice_check(),r.substring(this.bra,this.ket)},eq_v_b:function(r){return this.eq_s_b(r.length,r)}}}},r.trimmerSupport={generateTrimmer:function(r){var t=new RegExp("^[^"+r+"]+"),i=new RegExp("[^"+r+"]+$");return function(r){return"function"==typeof r.update?r.update(function(r){return r.replace(t,"").replace(i,"")}):r.replace(t,"").replace(i,"")}}}}}); -------------------------------------------------------------------------------- /site/assets/javascripts/lunr/lunr.sv.js: -------------------------------------------------------------------------------- 1 | !function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.sv=function(){this.pipeline.reset(),this.pipeline.add(e.sv.trimmer,e.sv.stopWordFilter,e.sv.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.sv.stemmer))},e.sv.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.sv.trimmer=e.trimmerSupport.generateTrimmer(e.sv.wordCharacters),e.Pipeline.registerFunction(e.sv.trimmer,"trimmer-sv"),e.sv.stemmer=function(){var r=e.stemmerSupport.Among,n=e.stemmerSupport.SnowballProgram,t=new function(){var e,t,i=[new r("a",-1,1),new r("arna",0,1),new r("erna",0,1),new r("heterna",2,1),new r("orna",0,1),new r("ad",-1,1),new r("e",-1,1),new r("ade",6,1),new r("ande",6,1),new r("arne",6,1),new r("are",6,1),new r("aste",6,1),new r("en",-1,1),new r("anden",12,1),new r("aren",12,1),new r("heten",12,1),new r("ern",-1,1),new r("ar",-1,1),new r("er",-1,1),new r("heter",18,1),new r("or",-1,1),new r("s",-1,2),new r("as",21,1),new r("arnas",22,1),new r("ernas",22,1),new r("ornas",22,1),new r("es",21,1),new r("ades",26,1),new r("andes",26,1),new r("ens",21,1),new r("arens",29,1),new r("hetens",29,1),new r("erns",21,1),new r("at",-1,1),new r("andet",-1,1),new r("het",-1,1),new r("ast",-1,1)],s=[new r("dd",-1,-1),new r("gd",-1,-1),new r("nn",-1,-1),new r("dt",-1,-1),new r("gt",-1,-1),new r("kt",-1,-1),new r("tt",-1,-1)],a=[new r("ig",-1,1),new r("lig",0,1),new r("els",-1,1),new r("fullt",-1,3),new r("löst",-1,2)],o=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,24,0,32],u=[119,127,149],c=new n;this.setCurrent=function(e){c.setCurrent(e)},this.getCurrent=function(){return c.getCurrent()},this.stem=function(){var r=c.cursor;return function(){var r,n=c.cursor+3;if(t=c.limit,0<=n||n<=c.limit){for(e=n;;){if(r=c.cursor,c.in_grouping(o,97,246)){c.cursor=r;break}if(c.cursor=r,c.cursor>=c.limit)return;c.cursor++}for(;!c.out_grouping(o,97,246);){if(c.cursor>=c.limit)return;c.cursor++}(t=c.cursor)=t&&(c.limit_backward=t,c.cursor=c.limit,c.ket=c.cursor,e=c.find_among_b(i,37),c.limit_backward=r,e))switch(c.bra=c.cursor,e){case 1:c.slice_del();break;case 2:c.in_grouping_b(u,98,121)&&c.slice_del()}}(),c.cursor=c.limit,function(){var e=c.limit_backward;c.cursor>=t&&(c.limit_backward=t,c.cursor=c.limit,c.find_among_b(s,7)&&(c.cursor=c.limit,c.ket=c.cursor,c.cursor>c.limit_backward&&(c.bra=--c.cursor,c.slice_del())),c.limit_backward=e)}(),c.cursor=c.limit,function(){var e,r;if(c.cursor>=t){if(r=c.limit_backward,c.limit_backward=t,c.cursor=c.limit,c.ket=c.cursor,e=c.find_among_b(a,5))switch(c.bra=c.cursor,e){case 1:c.slice_del();break;case 2:c.slice_from("lös");break;case 3:c.slice_from("full")}c.limit_backward=r}}(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return t.setCurrent(e),t.stem(),t.getCurrent()}):(t.setCurrent(e),t.stem(),t.getCurrent())}}(),e.Pipeline.registerFunction(e.sv.stemmer,"stemmer-sv"),e.sv.stopWordFilter=e.generateStopWordFilter("alla allt att av blev bli blir blivit de dem den denna deras dess dessa det detta dig din dina ditt du där då efter ej eller en er era ert ett från för ha hade han hans har henne hennes hon honom hur här i icke ingen inom inte jag ju kan kunde man med mellan men mig min mina mitt mot mycket ni nu när någon något några och om oss på samma sedan sig sin sina sitta själv skulle som så sådan sådana sådant till under upp ut utan vad var vara varför varit varje vars vart vem vi vid vilka vilkas vilken vilket vår våra vårt än är åt över".split(" ")),e.Pipeline.registerFunction(e.sv.stopWordFilter,"stopWordFilter-sv")}}); -------------------------------------------------------------------------------- /site/assets/javascripts/lunr/lunr.tr.js: -------------------------------------------------------------------------------- 1 | !function(r,i){"function"==typeof define&&define.amd?define(i):"object"==typeof exports?module.exports=i():i()(r.lunr)}(this,function(){return function(r){if(void 0===r)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===r.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");r.tr=function(){this.pipeline.reset(),this.pipeline.add(r.tr.trimmer,r.tr.stopWordFilter,r.tr.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(r.tr.stemmer))},r.tr.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",r.tr.trimmer=r.trimmerSupport.generateTrimmer(r.tr.wordCharacters),r.Pipeline.registerFunction(r.tr.trimmer,"trimmer-tr"),r.tr.stemmer=function(){var i=r.stemmerSupport.Among,e=r.stemmerSupport.SnowballProgram,n=new function(){function r(r,i,e){for(;;){var n=fr.limit-fr.cursor;if(fr.in_grouping_b(r,i,e)){fr.cursor=fr.limit-n;break}if(fr.cursor=fr.limit-n,fr.cursor<=fr.limit_backward)return!1;fr.cursor--}return!0}function n(){var i,e;i=fr.limit-fr.cursor,r(cr,97,305);for(var n=0;nfr.limit_backward&&(fr.cursor--,e=fr.limit-fr.cursor,i()))?(fr.cursor=fr.limit-e,!0):(fr.cursor=fr.limit-n,r()?(fr.cursor=fr.limit-n,!1):(fr.cursor=fr.limit-n,!(fr.cursor<=fr.limit_backward)&&(fr.cursor--,!!i()&&(fr.cursor=fr.limit-n,!0))))}function u(r){return t(r,function(){return fr.in_grouping_b(cr,97,305)})}function o(){return u(function(){return fr.eq_s_b(1,"n")})}function s(){return u(function(){return fr.eq_s_b(1,"y")})}function c(){return fr.find_among_b(D,10)&&t(function(){return fr.in_grouping_b(lr,105,305)},function(){return fr.out_grouping_b(cr,97,305)})}function l(){return n()&&fr.in_grouping_b(lr,105,305)&&u(function(){return fr.eq_s_b(1,"s")})}function a(){return fr.find_among_b(G,2)}function m(){return n()&&fr.find_among_b(I,4)&&o()}function d(){return n()&&fr.find_among_b(M,4)}function f(){return n()&&fr.find_among_b(N,2)}function b(){return n()&&fr.find_among_b(V,4)&&s()}function w(){return n()&&fr.find_among_b(X,4)}function _(){return n()&&fr.find_among_b(Y,4)&&s()}function k(){return fr.find_among_b($,4)}function p(){return n()&&fr.find_among_b(rr,2)}function g(){return n()&&fr.find_among_b(er,8)}function y(){return n()&&fr.find_among_b(tr,32)&&s()}function z(){return fr.find_among_b(ur,8)&&s()}function v(){return n()&&fr.find_among_b(or,4)&&s()}function h(){var r=fr.limit-fr.cursor;return!(v()||(fr.cursor=fr.limit-r,y()||(fr.cursor=fr.limit-r,z()||(fr.cursor=fr.limit-r,fr.eq_s_b(3,"ken")&&s()))))}function q(){if(fr.find_among_b(nr,2)){var r=fr.limit-fr.cursor;if(k()||(fr.cursor=fr.limit-r,p()||(fr.cursor=fr.limit-r,b()||(fr.cursor=fr.limit-r,w()||(fr.cursor=fr.limit-r,_()||(fr.cursor=fr.limit-r))))),v())return!1}return!0}function C(){if(!n()||!fr.find_among_b(ir,4))return!0;var r=fr.limit-fr.cursor;return!y()&&(fr.cursor=fr.limit-r,!z())}function P(){var r,i=fr.limit-fr.cursor;if(fr.ket=fr.cursor,Z=!0,h()&&(fr.cursor=fr.limit-i,q()&&(fr.cursor=fr.limit-i,function(){if(p()){fr.bra=fr.cursor,fr.slice_del();var r=fr.limit-fr.cursor;return fr.ket=fr.cursor,g()||(fr.cursor=fr.limit-r,y()||(fr.cursor=fr.limit-r,z()||(fr.cursor=fr.limit-r,v()||(fr.cursor=fr.limit-r)))),Z=!1,!1}return!0}()&&(fr.cursor=fr.limit-i,C()&&(fr.cursor=fr.limit-i,function(){var r,i=fr.limit-fr.cursor;return!(k()||(fr.cursor=fr.limit-i,_()||(fr.cursor=fr.limit-i,w()||(fr.cursor=fr.limit-i,b()))))||(fr.bra=fr.cursor,fr.slice_del(),r=fr.limit-fr.cursor,fr.ket=fr.cursor,v()||(fr.cursor=fr.limit-r),!1)}()))))){if(fr.cursor=fr.limit-i,!g())return;fr.bra=fr.cursor,fr.slice_del(),fr.ket=fr.cursor,r=fr.limit-fr.cursor,k()||(fr.cursor=fr.limit-r,p()||(fr.cursor=fr.limit-r,b()||(fr.cursor=fr.limit-r,w()||(fr.cursor=fr.limit-r,_()||(fr.cursor=fr.limit-r))))),v()||(fr.cursor=fr.limit-r)}fr.bra=fr.cursor,fr.slice_del()}function F(){var r,i,e,n;if(fr.ket=fr.cursor,fr.eq_s_b(2,"ki")){if(r=fr.limit-fr.cursor,d())return fr.bra=fr.cursor,fr.slice_del(),i=fr.limit-fr.cursor,fr.ket=fr.cursor,p()?(fr.bra=fr.cursor,fr.slice_del(),F()):(fr.cursor=fr.limit-i,c()&&(fr.bra=fr.cursor,fr.slice_del(),fr.ket=fr.cursor,p()&&(fr.bra=fr.cursor,fr.slice_del(),F()))),!0;if(fr.cursor=fr.limit-r,m()){if(fr.bra=fr.cursor,fr.slice_del(),fr.ket=fr.cursor,e=fr.limit-fr.cursor,a())fr.bra=fr.cursor,fr.slice_del();else{if(fr.cursor=fr.limit-e,fr.ket=fr.cursor,!c()&&(fr.cursor=fr.limit-e,!l()&&(fr.cursor=fr.limit-e,!F())))return!0;fr.bra=fr.cursor,fr.slice_del(),fr.ket=fr.cursor,p()&&(fr.bra=fr.cursor,fr.slice_del(),F())}return!0}if(fr.cursor=fr.limit-r,f()){if(n=fr.limit-fr.cursor,a())fr.bra=fr.cursor,fr.slice_del();else if(fr.cursor=fr.limit-n,l())fr.bra=fr.cursor,fr.slice_del(),fr.ket=fr.cursor,p()&&(fr.bra=fr.cursor,fr.slice_del(),F());else if(fr.cursor=fr.limit-n,!F())return!1;return!0}}return!1}function S(r){if(fr.ket=fr.cursor,!f()&&(fr.cursor=fr.limit-r,!n()||!fr.find_among_b(K,2)))return!1;var i=fr.limit-fr.cursor;if(a())fr.bra=fr.cursor,fr.slice_del();else if(fr.cursor=fr.limit-i,l())fr.bra=fr.cursor,fr.slice_del(),fr.ket=fr.cursor,p()&&(fr.bra=fr.cursor,fr.slice_del(),F());else if(fr.cursor=fr.limit-i,!F())return!1;return!0}function W(r){if(fr.ket=fr.cursor,!(n()&&fr.find_among_b(Q,2)||(fr.cursor=fr.limit-r,n()&&fr.find_among_b(H,4))))return!1;var i=fr.limit-fr.cursor;return!(!l()&&(fr.cursor=fr.limit-i,!a()))&&(fr.bra=fr.cursor,fr.slice_del(),fr.ket=fr.cursor,p()&&(fr.bra=fr.cursor,fr.slice_del(),F()),!0)}function L(){var r,i=fr.limit-fr.cursor;return fr.ket=fr.cursor,!!(m()||(fr.cursor=fr.limit-i,n()&&fr.find_among_b(R,2)&&s()))&&(fr.bra=fr.cursor,fr.slice_del(),r=fr.limit-fr.cursor,fr.ket=fr.cursor,!(!p()||(fr.bra=fr.cursor,fr.slice_del(),!F()))||(fr.cursor=fr.limit-r,fr.ket=fr.cursor,!(c()||(fr.cursor=fr.limit-r,l()||(fr.cursor=fr.limit-r,F())))||(fr.bra=fr.cursor,fr.slice_del(),fr.ket=fr.cursor,p()&&(fr.bra=fr.cursor,fr.slice_del(),F()),!0)))}function x(){var r,i,e=fr.limit-fr.cursor;if(fr.ket=fr.cursor,!(d()||(fr.cursor=fr.limit-e,n()&&fr.in_grouping_b(lr,105,305)&&s()||(fr.cursor=fr.limit-e,n()&&fr.find_among_b(J,2)&&s()))))return!1;if(fr.bra=fr.cursor,fr.slice_del(),fr.ket=fr.cursor,r=fr.limit-fr.cursor,c())fr.bra=fr.cursor,fr.slice_del(),i=fr.limit-fr.cursor,fr.ket=fr.cursor,p()||(fr.cursor=fr.limit-i);else if(fr.cursor=fr.limit-r,!p())return!0;return fr.bra=fr.cursor,fr.slice_del(),fr.ket=fr.cursor,F(),!0}function A(){var r,i,e=fr.limit-fr.cursor;if(fr.ket=fr.cursor,p())return fr.bra=fr.cursor,fr.slice_del(),void F();if(fr.cursor=fr.limit-e,fr.ket=fr.cursor,n()&&fr.find_among_b(U,2)&&o())if(fr.bra=fr.cursor,fr.slice_del(),r=fr.limit-fr.cursor,fr.ket=fr.cursor,a())fr.bra=fr.cursor,fr.slice_del();else{if(fr.cursor=fr.limit-r,fr.ket=fr.cursor,!c()&&(fr.cursor=fr.limit-r,!l())){if(fr.cursor=fr.limit-r,fr.ket=fr.cursor,!p())return;if(fr.bra=fr.cursor,fr.slice_del(),!F())return}fr.bra=fr.cursor,fr.slice_del(),fr.ket=fr.cursor,p()&&(fr.bra=fr.cursor,fr.slice_del(),F())}else if(fr.cursor=fr.limit-e,!S(e)&&(fr.cursor=fr.limit-e,!W(e))){if(fr.cursor=fr.limit-e,fr.ket=fr.cursor,n()&&fr.find_among_b(O,4))return fr.bra=fr.cursor,fr.slice_del(),fr.ket=fr.cursor,i=fr.limit-fr.cursor,void(c()?(fr.bra=fr.cursor,fr.slice_del(),fr.ket=fr.cursor,p()&&(fr.bra=fr.cursor,fr.slice_del(),F())):(fr.cursor=fr.limit-i,p()?(fr.bra=fr.cursor,fr.slice_del(),F()):(fr.cursor=fr.limit-i,F())));if(fr.cursor=fr.limit-e,!L()){if(fr.cursor=fr.limit-e,a())return fr.bra=fr.cursor,void fr.slice_del();fr.cursor=fr.limit-e,F()||(fr.cursor=fr.limit-e,x()||(fr.cursor=fr.limit-e,fr.ket=fr.cursor,(c()||(fr.cursor=fr.limit-e,l()))&&(fr.bra=fr.cursor,fr.slice_del(),fr.ket=fr.cursor,p()&&(fr.bra=fr.cursor,fr.slice_del(),F()))))}}}function E(r,i,e){if(fr.cursor=fr.limit-r,function(){for(;;){var r=fr.limit-fr.cursor;if(fr.in_grouping_b(cr,97,305)){fr.cursor=fr.limit-r;break}if(fr.cursor=fr.limit-r,fr.cursor<=fr.limit_backward)return!1;fr.cursor--}return!0}()){var n=fr.limit-fr.cursor;if(!fr.eq_s_b(1,i)&&(fr.cursor=fr.limit-n,!fr.eq_s_b(1,e)))return!0;fr.cursor=fr.limit-r;var t=fr.cursor;return fr.insert(fr.cursor,fr.cursor,e),fr.cursor=t,!1}return!0}function j(r,i,e){for(;!fr.eq_s(i,e);){if(fr.cursor>=fr.limit)return!0;fr.cursor++}return(B=i)!=fr.limit||(fr.cursor=r,!1)}function T(){var r=fr.cursor;return!function(){var r=fr.cursor;return!j(r,2,"ad")||(fr.cursor=r,!j(r,5,"soyad"))}()&&(fr.limit_backward=r,fr.cursor=fr.limit,function(){var r=fr.limit-fr.cursor;(fr.eq_s_b(1,"d")||(fr.cursor=fr.limit-r,fr.eq_s_b(1,"g")))&&E(r,"a","ı")&&E(r,"e","i")&&E(r,"o","u")&&E(r,"ö","ü")}(),fr.cursor=fr.limit,function(){var r;if(fr.ket=fr.cursor,r=fr.find_among_b(sr,4))switch(fr.bra=fr.cursor,r){case 1:fr.slice_from("p");break;case 2:fr.slice_from("ç");break;case 3:fr.slice_from("t");break;case 4:fr.slice_from("k")}}(),!0)}var Z,B,D=[new i("m",-1,-1),new i("n",-1,-1),new i("miz",-1,-1),new i("niz",-1,-1),new i("muz",-1,-1),new i("nuz",-1,-1),new i("müz",-1,-1),new i("nüz",-1,-1),new i("mız",-1,-1),new i("nız",-1,-1)],G=[new i("leri",-1,-1),new i("ları",-1,-1)],H=[new i("ni",-1,-1),new i("nu",-1,-1),new i("nü",-1,-1),new i("nı",-1,-1)],I=[new i("in",-1,-1),new i("un",-1,-1),new i("ün",-1,-1),new i("ın",-1,-1)],J=[new i("a",-1,-1),new i("e",-1,-1)],K=[new i("na",-1,-1),new i("ne",-1,-1)],M=[new i("da",-1,-1),new i("ta",-1,-1),new i("de",-1,-1),new i("te",-1,-1)],N=[new i("nda",-1,-1),new i("nde",-1,-1)],O=[new i("dan",-1,-1),new i("tan",-1,-1),new i("den",-1,-1),new i("ten",-1,-1)],Q=[new i("ndan",-1,-1),new i("nden",-1,-1)],R=[new i("la",-1,-1),new i("le",-1,-1)],U=[new i("ca",-1,-1),new i("ce",-1,-1)],V=[new i("im",-1,-1),new i("um",-1,-1),new i("üm",-1,-1),new i("ım",-1,-1)],X=[new i("sin",-1,-1),new i("sun",-1,-1),new i("sün",-1,-1),new i("sın",-1,-1)],Y=[new i("iz",-1,-1),new i("uz",-1,-1),new i("üz",-1,-1),new i("ız",-1,-1)],$=[new i("siniz",-1,-1),new i("sunuz",-1,-1),new i("sünüz",-1,-1),new i("sınız",-1,-1)],rr=[new i("lar",-1,-1),new i("ler",-1,-1)],ir=[new i("niz",-1,-1),new i("nuz",-1,-1),new i("nüz",-1,-1),new i("nız",-1,-1)],er=[new i("dir",-1,-1),new i("tir",-1,-1),new i("dur",-1,-1),new i("tur",-1,-1),new i("dür",-1,-1),new i("tür",-1,-1),new i("dır",-1,-1),new i("tır",-1,-1)],nr=[new i("casına",-1,-1),new i("cesine",-1,-1)],tr=[new i("di",-1,-1),new i("ti",-1,-1),new i("dik",-1,-1),new i("tik",-1,-1),new i("duk",-1,-1),new i("tuk",-1,-1),new i("dük",-1,-1),new i("tük",-1,-1),new i("dık",-1,-1),new i("tık",-1,-1),new i("dim",-1,-1),new i("tim",-1,-1),new i("dum",-1,-1),new i("tum",-1,-1),new i("düm",-1,-1),new i("tüm",-1,-1),new i("dım",-1,-1),new i("tım",-1,-1),new i("din",-1,-1),new i("tin",-1,-1),new i("dun",-1,-1),new i("tun",-1,-1),new i("dün",-1,-1),new i("tün",-1,-1),new i("dın",-1,-1),new i("tın",-1,-1),new i("du",-1,-1),new i("tu",-1,-1),new i("dü",-1,-1),new i("tü",-1,-1),new i("dı",-1,-1),new i("tı",-1,-1)],ur=[new i("sa",-1,-1),new i("se",-1,-1),new i("sak",-1,-1),new i("sek",-1,-1),new i("sam",-1,-1),new i("sem",-1,-1),new i("san",-1,-1),new i("sen",-1,-1)],or=[new i("miş",-1,-1),new i("muş",-1,-1),new i("müş",-1,-1),new i("mış",-1,-1)],sr=[new i("b",-1,1),new i("c",-1,2),new i("d",-1,3),new i("ğ",-1,4)],cr=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,8,0,0,0,0,0,0,1],lr=[1,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,1],ar=[65],mr=[65],dr=[["a",[1,64,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],97,305],["e",[17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,130],101,252],["ı",[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],97,305],["i",[17],101,105],["o",ar,111,117],["ö",mr,246,252],["u",ar,111,117]],fr=new e;this.setCurrent=function(r){fr.setCurrent(r)},this.getCurrent=function(){return fr.getCurrent()},this.stem=function(){return!!(function(){for(var r,i=fr.cursor,e=2;;){for(r=fr.cursor;!fr.in_grouping(cr,97,305);){if(fr.cursor>=fr.limit)return fr.cursor=r,!(e>0||(fr.cursor=i,0));fr.cursor++}e--}}()&&(fr.limit_backward=fr.cursor,fr.cursor=fr.limit,P(),fr.cursor=fr.limit,Z&&(A(),fr.cursor=fr.limit_backward,T())))}};return function(r){return"function"==typeof r.update?r.update(function(r){return n.setCurrent(r),n.stem(),n.getCurrent()}):(n.setCurrent(r),n.stem(),n.getCurrent())}}(),r.Pipeline.registerFunction(r.tr.stemmer,"stemmer-tr"),r.tr.stopWordFilter=r.generateStopWordFilter("acaba altmış altı ama ancak arada aslında ayrıca bana bazı belki ben benden beni benim beri beş bile bin bir biri birkaç birkez birçok birşey birşeyi biz bizden bize bizi bizim bu buna bunda bundan bunlar bunları bunların bunu bunun burada böyle böylece da daha dahi de defa değil diye diğer doksan dokuz dolayı dolayısıyla dört edecek eden ederek edilecek ediliyor edilmesi ediyor elli en etmesi etti ettiği ettiğini eğer gibi göre halen hangi hatta hem henüz hep hepsi her herhangi herkesin hiç hiçbir iki ile ilgili ise itibaren itibariyle için işte kadar karşın katrilyon kendi kendilerine kendini kendisi kendisine kendisini kez ki kim kimden kime kimi kimse kırk milyar milyon mu mü mı nasıl ne neden nedenle nerde nerede nereye niye niçin o olan olarak oldu olduklarını olduğu olduğunu olmadı olmadığı olmak olması olmayan olmaz olsa olsun olup olur olursa oluyor on ona ondan onlar onlardan onları onların onu onun otuz oysa pek rağmen sadece sanki sekiz seksen sen senden seni senin siz sizden sizi sizin tarafından trilyon tüm var vardı ve veya ya yani yapacak yapmak yaptı yaptıkları yaptığı yaptığını yapılan yapılması yapıyor yedi yerine yetmiş yine yirmi yoksa yüz zaten çok çünkü öyle üzere üç şey şeyden şeyi şeyler şu şuna şunda şundan şunları şunu şöyle".split(" ")),r.Pipeline.registerFunction(r.tr.stopWordFilter,"stopWordFilter-tr")}}); -------------------------------------------------------------------------------- /site/assets/javascripts/lunr/tinyseg.js: -------------------------------------------------------------------------------- 1 | !function(_,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():t()(_.lunr)}(this,function(){return function(_){function t(){var _={"[一二三四五六七八九十百千万億兆]":"M","[一-龠々〆ヵヶ]":"H","[ぁ-ん]":"I","[ァ-ヴーア-ン゙ー]":"K","[a-zA-Za-zA-Z]":"A","[0-90-9]":"N"};this.chartype_=[];for(var t in _){var H=new RegExp;H.compile(t),this.chartype_.push([H,_[t]])}return this.BIAS__=-332,this.BC1__={HH:6,II:2461,KH:406,OH:-1378},this.BC2__={AA:-3267,AI:2744,AN:-878,HH:-4070,HM:-1711,HN:4012,HO:3761,IA:1327,IH:-1184,II:-1332,IK:1721,IO:5492,KI:3831,KK:-8741,MH:-3132,MK:3334,OO:-2920},this.BC3__={HH:996,HI:626,HK:-721,HN:-1307,HO:-836,IH:-301,KK:2762,MK:1079,MM:4034,OA:-1652,OH:266},this.BP1__={BB:295,OB:304,OO:-125,UB:352},this.BP2__={BO:60,OO:-1762},this.BQ1__={BHH:1150,BHM:1521,BII:-1158,BIM:886,BMH:1208,BNH:449,BOH:-91,BOO:-2597,OHI:451,OIH:-296,OKA:1851,OKH:-1020,OKK:904,OOO:2965},this.BQ2__={BHH:118,BHI:-1159,BHM:466,BIH:-919,BKK:-1720,BKO:864,OHH:-1139,OHM:-181,OIH:153,UHI:-1146},this.BQ3__={BHH:-792,BHI:2664,BII:-299,BKI:419,BMH:937,BMM:8335,BNN:998,BOH:775,OHH:2174,OHM:439,OII:280,OKH:1798,OKI:-793,OKO:-2242,OMH:-2402,OOO:11699},this.BQ4__={BHH:-3895,BIH:3761,BII:-4654,BIK:1348,BKK:-1806,BMI:-3385,BOO:-12396,OAH:926,OHH:266,OHK:-2036,ONN:-973},this.BW1__={",と":660,",同":727,"B1あ":1404,"B1同":542,"、と":660,"、同":727,"」と":1682,"あっ":1505,"いう":1743,"いっ":-2055,"いる":672,"うし":-4817,"うん":665,"から":3472,"がら":600,"こう":-790,"こと":2083,"こん":-1262,"さら":-4143,"さん":4573,"した":2641,"して":1104,"すで":-3399,"そこ":1977,"それ":-871,"たち":1122,"ため":601,"った":3463,"つい":-802,"てい":805,"てき":1249,"でき":1127,"です":3445,"では":844,"とい":-4915,"とみ":1922,"どこ":3887,"ない":5713,"なっ":3015,"など":7379,"なん":-1113,"にし":2468,"には":1498,"にも":1671,"に対":-912,"の一":-501,"の中":741,"ませ":2448,"まで":1711,"まま":2600,"まる":-2155,"やむ":-1947,"よっ":-2565,"れた":2369,"れで":-913,"をし":1860,"を見":731,"亡く":-1886,"京都":2558,"取り":-2784,"大き":-2604,"大阪":1497,"平方":-2314,"引き":-1336,"日本":-195,"本当":-2423,"毎日":-2113,"目指":-724,"B1あ":1404,"B1同":542,"」と":1682},this.BW2__={"..":-11822,11:-669,"――":-5730,"−−":-13175,"いう":-1609,"うか":2490,"かし":-1350,"かも":-602,"から":-7194,"かれ":4612,"がい":853,"がら":-3198,"きた":1941,"くな":-1597,"こと":-8392,"この":-4193,"させ":4533,"され":13168,"さん":-3977,"しい":-1819,"しか":-545,"した":5078,"して":972,"しな":939,"その":-3744,"たい":-1253,"たた":-662,"ただ":-3857,"たち":-786,"たと":1224,"たは":-939,"った":4589,"って":1647,"っと":-2094,"てい":6144,"てき":3640,"てく":2551,"ては":-3110,"ても":-3065,"でい":2666,"でき":-1528,"でし":-3828,"です":-4761,"でも":-4203,"とい":1890,"とこ":-1746,"とと":-2279,"との":720,"とみ":5168,"とも":-3941,"ない":-2488,"なが":-1313,"など":-6509,"なの":2614,"なん":3099,"にお":-1615,"にし":2748,"にな":2454,"によ":-7236,"に対":-14943,"に従":-4688,"に関":-11388,"のか":2093,"ので":-7059,"のに":-6041,"のの":-6125,"はい":1073,"はが":-1033,"はず":-2532,"ばれ":1813,"まし":-1316,"まで":-6621,"まれ":5409,"めて":-3153,"もい":2230,"もの":-10713,"らか":-944,"らし":-1611,"らに":-1897,"りし":651,"りま":1620,"れた":4270,"れて":849,"れば":4114,"ろう":6067,"われ":7901,"を通":-11877,"んだ":728,"んな":-4115,"一人":602,"一方":-1375,"一日":970,"一部":-1051,"上が":-4479,"会社":-1116,"出て":2163,"分の":-7758,"同党":970,"同日":-913,"大阪":-2471,"委員":-1250,"少な":-1050,"年度":-8669,"年間":-1626,"府県":-2363,"手権":-1982,"新聞":-4066,"日新":-722,"日本":-7068,"日米":3372,"曜日":-601,"朝鮮":-2355,"本人":-2697,"東京":-1543,"然と":-1384,"社会":-1276,"立て":-990,"第に":-1612,"米国":-4268,"11":-669},this.BW3__={"あた":-2194,"あり":719,"ある":3846,"い.":-1185,"い。":-1185,"いい":5308,"いえ":2079,"いく":3029,"いた":2056,"いっ":1883,"いる":5600,"いわ":1527,"うち":1117,"うと":4798,"えと":1454,"か.":2857,"か。":2857,"かけ":-743,"かっ":-4098,"かに":-669,"から":6520,"かり":-2670,"が,":1816,"が、":1816,"がき":-4855,"がけ":-1127,"がっ":-913,"がら":-4977,"がり":-2064,"きた":1645,"けど":1374,"こと":7397,"この":1542,"ころ":-2757,"さい":-714,"さを":976,"し,":1557,"し、":1557,"しい":-3714,"した":3562,"して":1449,"しな":2608,"しま":1200,"す.":-1310,"す。":-1310,"する":6521,"ず,":3426,"ず、":3426,"ずに":841,"そう":428,"た.":8875,"た。":8875,"たい":-594,"たの":812,"たり":-1183,"たる":-853,"だ.":4098,"だ。":4098,"だっ":1004,"った":-4748,"って":300,"てい":6240,"てお":855,"ても":302,"です":1437,"でに":-1482,"では":2295,"とう":-1387,"とし":2266,"との":541,"とも":-3543,"どう":4664,"ない":1796,"なく":-903,"など":2135,"に,":-1021,"に、":-1021,"にし":1771,"にな":1906,"には":2644,"の,":-724,"の、":-724,"の子":-1e3,"は,":1337,"は、":1337,"べき":2181,"まし":1113,"ます":6943,"まっ":-1549,"まで":6154,"まれ":-793,"らし":1479,"られ":6820,"るる":3818,"れ,":854,"れ、":854,"れた":1850,"れて":1375,"れば":-3246,"れる":1091,"われ":-605,"んだ":606,"んで":798,"カ月":990,"会議":860,"入り":1232,"大会":2217,"始め":1681,"市":965,"新聞":-5055,"日,":974,"日、":974,"社会":2024,"カ月":990},this.TC1__={AAA:1093,HHH:1029,HHM:580,HII:998,HOH:-390,HOM:-331,IHI:1169,IOH:-142,IOI:-1015,IOM:467,MMH:187,OOI:-1832},this.TC2__={HHO:2088,HII:-1023,HMM:-1154,IHI:-1965,KKH:703,OII:-2649},this.TC3__={AAA:-294,HHH:346,HHI:-341,HII:-1088,HIK:731,HOH:-1486,IHH:128,IHI:-3041,IHO:-1935,IIH:-825,IIM:-1035,IOI:-542,KHH:-1216,KKA:491,KKH:-1217,KOK:-1009,MHH:-2694,MHM:-457,MHO:123,MMH:-471,NNH:-1689,NNO:662,OHO:-3393},this.TC4__={HHH:-203,HHI:1344,HHK:365,HHM:-122,HHN:182,HHO:669,HIH:804,HII:679,HOH:446,IHH:695,IHO:-2324,IIH:321,III:1497,IIO:656,IOO:54,KAK:4845,KKA:3386,KKK:3065,MHH:-405,MHI:201,MMH:-241,MMM:661,MOM:841},this.TQ1__={BHHH:-227,BHHI:316,BHIH:-132,BIHH:60,BIII:1595,BNHH:-744,BOHH:225,BOOO:-908,OAKK:482,OHHH:281,OHIH:249,OIHI:200,OIIH:-68},this.TQ2__={BIHH:-1401,BIII:-1033,BKAK:-543,BOOO:-5591},this.TQ3__={BHHH:478,BHHM:-1073,BHIH:222,BHII:-504,BIIH:-116,BIII:-105,BMHI:-863,BMHM:-464,BOMH:620,OHHH:346,OHHI:1729,OHII:997,OHMH:481,OIHH:623,OIIH:1344,OKAK:2792,OKHH:587,OKKA:679,OOHH:110,OOII:-685},this.TQ4__={BHHH:-721,BHHM:-3604,BHII:-966,BIIH:-607,BIII:-2181,OAAA:-2763,OAKK:180,OHHH:-294,OHHI:2446,OHHO:480,OHIH:-1573,OIHH:1935,OIHI:-493,OIIH:626,OIII:-4007,OKAK:-8156},this.TW1__={"につい":-4681,"東京都":2026},this.TW2__={"ある程":-2049,"いった":-1256,"ころが":-2434,"しょう":3873,"その後":-4430,"だって":-1049,"ていた":1833,"として":-4657,"ともに":-4517,"もので":1882,"一気に":-792,"初めて":-1512,"同時に":-8097,"大きな":-1255,"対して":-2721,"社会党":-3216},this.TW3__={"いただ":-1734,"してい":1314,"として":-4314,"につい":-5483,"にとっ":-5989,"に当た":-6247,"ので,":-727,"ので、":-727,"のもの":-600,"れから":-3752,"十二月":-2287},this.TW4__={"いう.":8576,"いう。":8576,"からな":-2348,"してい":2958,"たが,":1516,"たが、":1516,"ている":1538,"という":1349,"ました":5543,"ません":1097,"ようと":-4258,"よると":5865},this.UC1__={A:484,K:93,M:645,O:-505},this.UC2__={A:819,H:1059,I:409,M:3987,N:5775,O:646},this.UC3__={A:-1370,I:2311},this.UC4__={A:-2643,H:1809,I:-1032,K:-3450,M:3565,N:3876,O:6646},this.UC5__={H:313,I:-1238,K:-799,M:539,O:-831},this.UC6__={H:-506,I:-253,K:87,M:247,O:-387},this.UP1__={O:-214},this.UP2__={B:69,O:935},this.UP3__={B:189},this.UQ1__={BH:21,BI:-12,BK:-99,BN:142,BO:-56,OH:-95,OI:477,OK:410,OO:-2422},this.UQ2__={BH:216,BI:113,OK:1759},this.UQ3__={BA:-479,BH:42,BI:1913,BK:-7198,BM:3160,BN:6427,BO:14761,OI:-827,ON:-3212},this.UW1__={",":156,"、":156,"「":-463,"あ":-941,"う":-127,"が":-553,"き":121,"こ":505,"で":-201,"と":-547,"ど":-123,"に":-789,"の":-185,"は":-847,"も":-466,"や":-470,"よ":182,"ら":-292,"り":208,"れ":169,"を":-446,"ん":-137,"・":-135,"主":-402,"京":-268,"区":-912,"午":871,"国":-460,"大":561,"委":729,"市":-411,"日":-141,"理":361,"生":-408,"県":-386,"都":-718,"「":-463,"・":-135},this.UW2__={",":-829,"、":-829,"〇":892,"「":-645,"」":3145,"あ":-538,"い":505,"う":134,"お":-502,"か":1454,"が":-856,"く":-412,"こ":1141,"さ":878,"ざ":540,"し":1529,"す":-675,"せ":300,"そ":-1011,"た":188,"だ":1837,"つ":-949,"て":-291,"で":-268,"と":-981,"ど":1273,"な":1063,"に":-1764,"の":130,"は":-409,"ひ":-1273,"べ":1261,"ま":600,"も":-1263,"や":-402,"よ":1639,"り":-579,"る":-694,"れ":571,"を":-2516,"ん":2095,"ア":-587,"カ":306,"キ":568,"ッ":831,"三":-758,"不":-2150,"世":-302,"中":-968,"主":-861,"事":492,"人":-123,"会":978,"保":362,"入":548,"初":-3025,"副":-1566,"北":-3414,"区":-422,"大":-1769,"天":-865,"太":-483,"子":-1519,"学":760,"実":1023,"小":-2009,"市":-813,"年":-1060,"強":1067,"手":-1519,"揺":-1033,"政":1522,"文":-1355,"新":-1682,"日":-1815,"明":-1462,"最":-630,"朝":-1843,"本":-1650,"東":-931,"果":-665,"次":-2378,"民":-180,"気":-1740,"理":752,"発":529,"目":-1584,"相":-242,"県":-1165,"立":-763,"第":810,"米":509,"自":-1353,"行":838,"西":-744,"見":-3874,"調":1010,"議":1198,"込":3041,"開":1758,"間":-1257,"「":-645,"」":3145,"ッ":831,"ア":-587,"カ":306,"キ":568},this.UW3__={",":4889,1:-800,"−":-1723,"、":4889,"々":-2311,"〇":5827,"」":2670,"〓":-3573,"あ":-2696,"い":1006,"う":2342,"え":1983,"お":-4864,"か":-1163,"が":3271,"く":1004,"け":388,"げ":401,"こ":-3552,"ご":-3116,"さ":-1058,"し":-395,"す":584,"せ":3685,"そ":-5228,"た":842,"ち":-521,"っ":-1444,"つ":-1081,"て":6167,"で":2318,"と":1691,"ど":-899,"な":-2788,"に":2745,"の":4056,"は":4555,"ひ":-2171,"ふ":-1798,"へ":1199,"ほ":-5516,"ま":-4384,"み":-120,"め":1205,"も":2323,"や":-788,"よ":-202,"ら":727,"り":649,"る":5905,"れ":2773,"わ":-1207,"を":6620,"ん":-518,"ア":551,"グ":1319,"ス":874,"ッ":-1350,"ト":521,"ム":1109,"ル":1591,"ロ":2201,"ン":278,"・":-3794,"一":-1619,"下":-1759,"世":-2087,"両":3815,"中":653,"主":-758,"予":-1193,"二":974,"人":2742,"今":792,"他":1889,"以":-1368,"低":811,"何":4265,"作":-361,"保":-2439,"元":4858,"党":3593,"全":1574,"公":-3030,"六":755,"共":-1880,"円":5807,"再":3095,"分":457,"初":2475,"別":1129,"前":2286,"副":4437,"力":365,"動":-949,"務":-1872,"化":1327,"北":-1038,"区":4646,"千":-2309,"午":-783,"協":-1006,"口":483,"右":1233,"各":3588,"合":-241,"同":3906,"和":-837,"員":4513,"国":642,"型":1389,"場":1219,"外":-241,"妻":2016,"学":-1356,"安":-423,"実":-1008,"家":1078,"小":-513,"少":-3102,"州":1155,"市":3197,"平":-1804,"年":2416,"広":-1030,"府":1605,"度":1452,"建":-2352,"当":-3885,"得":1905,"思":-1291,"性":1822,"戸":-488,"指":-3973,"政":-2013,"教":-1479,"数":3222,"文":-1489,"新":1764,"日":2099,"旧":5792,"昨":-661,"時":-1248,"曜":-951,"最":-937,"月":4125,"期":360,"李":3094,"村":364,"東":-805,"核":5156,"森":2438,"業":484,"氏":2613,"民":-1694,"決":-1073,"法":1868,"海":-495,"無":979,"物":461,"特":-3850,"生":-273,"用":914,"町":1215,"的":7313,"直":-1835,"省":792,"県":6293,"知":-1528,"私":4231,"税":401,"立":-960,"第":1201,"米":7767,"系":3066,"約":3663,"級":1384,"統":-4229,"総":1163,"線":1255,"者":6457,"能":725,"自":-2869,"英":785,"見":1044,"調":-562,"財":-733,"費":1777,"車":1835,"軍":1375,"込":-1504,"通":-1136,"選":-681,"郎":1026,"郡":4404,"部":1200,"金":2163,"長":421,"開":-1432,"間":1302,"関":-1282,"雨":2009,"電":-1045,"非":2066,"駅":1620,"1":-800,"」":2670,"・":-3794,"ッ":-1350,"ア":551,"グ":1319,"ス":874,"ト":521,"ム":1109,"ル":1591,"ロ":2201,"ン":278},this.UW4__={",":3930,".":3508,"―":-4841,"、":3930,"。":3508,"〇":4999,"「":1895,"」":3798,"〓":-5156,"あ":4752,"い":-3435,"う":-640,"え":-2514,"お":2405,"か":530,"が":6006,"き":-4482,"ぎ":-3821,"く":-3788,"け":-4376,"げ":-4734,"こ":2255,"ご":1979,"さ":2864,"し":-843,"じ":-2506,"す":-731,"ず":1251,"せ":181,"そ":4091,"た":5034,"だ":5408,"ち":-3654,"っ":-5882,"つ":-1659,"て":3994,"で":7410,"と":4547,"な":5433,"に":6499,"ぬ":1853,"ね":1413,"の":7396,"は":8578,"ば":1940,"ひ":4249,"び":-4134,"ふ":1345,"へ":6665,"べ":-744,"ほ":1464,"ま":1051,"み":-2082,"む":-882,"め":-5046,"も":4169,"ゃ":-2666,"や":2795,"ょ":-1544,"よ":3351,"ら":-2922,"り":-9726,"る":-14896,"れ":-2613,"ろ":-4570,"わ":-1783,"を":13150,"ん":-2352,"カ":2145,"コ":1789,"セ":1287,"ッ":-724,"ト":-403,"メ":-1635,"ラ":-881,"リ":-541,"ル":-856,"ン":-3637,"・":-4371,"ー":-11870,"一":-2069,"中":2210,"予":782,"事":-190,"井":-1768,"人":1036,"以":544,"会":950,"体":-1286,"作":530,"側":4292,"先":601,"党":-2006,"共":-1212,"内":584,"円":788,"初":1347,"前":1623,"副":3879,"力":-302,"動":-740,"務":-2715,"化":776,"区":4517,"協":1013,"参":1555,"合":-1834,"和":-681,"員":-910,"器":-851,"回":1500,"国":-619,"園":-1200,"地":866,"場":-1410,"塁":-2094,"士":-1413,"多":1067,"大":571,"子":-4802,"学":-1397,"定":-1057,"寺":-809,"小":1910,"屋":-1328,"山":-1500,"島":-2056,"川":-2667,"市":2771,"年":374,"庁":-4556,"後":456,"性":553,"感":916,"所":-1566,"支":856,"改":787,"政":2182,"教":704,"文":522,"方":-856,"日":1798,"時":1829,"最":845,"月":-9066,"木":-485,"来":-442,"校":-360,"業":-1043,"氏":5388,"民":-2716,"気":-910,"沢":-939,"済":-543,"物":-735,"率":672,"球":-1267,"生":-1286,"産":-1101,"田":-2900,"町":1826,"的":2586,"目":922,"省":-3485,"県":2997,"空":-867,"立":-2112,"第":788,"米":2937,"系":786,"約":2171,"経":1146,"統":-1169,"総":940,"線":-994,"署":749,"者":2145,"能":-730,"般":-852,"行":-792,"規":792,"警":-1184,"議":-244,"谷":-1e3,"賞":730,"車":-1481,"軍":1158,"輪":-1433,"込":-3370,"近":929,"道":-1291,"選":2596,"郎":-4866,"都":1192,"野":-1100,"銀":-2213,"長":357,"間":-2344,"院":-2297,"際":-2604,"電":-878,"領":-1659,"題":-792,"館":-1984,"首":1749,"高":2120,"「":1895,"」":3798,"・":-4371,"ッ":-724,"ー":-11870,"カ":2145,"コ":1789,"セ":1287,"ト":-403,"メ":-1635,"ラ":-881,"リ":-541,"ル":-856,"ン":-3637},this.UW5__={",":465,".":-299,1:-514,E2:-32768,"]":-2762,"、":465,"。":-299,"「":363,"あ":1655,"い":331,"う":-503,"え":1199,"お":527,"か":647,"が":-421,"き":1624,"ぎ":1971,"く":312,"げ":-983,"さ":-1537,"し":-1371,"す":-852,"だ":-1186,"ち":1093,"っ":52,"つ":921,"て":-18,"で":-850,"と":-127,"ど":1682,"な":-787,"に":-1224,"の":-635,"は":-578,"べ":1001,"み":502,"め":865,"ゃ":3350,"ょ":854,"り":-208,"る":429,"れ":504,"わ":419,"を":-1264,"ん":327,"イ":241,"ル":451,"ン":-343,"中":-871,"京":722,"会":-1153,"党":-654,"務":3519,"区":-901,"告":848,"員":2104,"大":-1296,"学":-548,"定":1785,"嵐":-1304,"市":-2991,"席":921,"年":1763,"思":872,"所":-814,"挙":1618,"新":-1682,"日":218,"月":-4353,"査":932,"格":1356,"機":-1508,"氏":-1347,"田":240,"町":-3912,"的":-3149,"相":1319,"省":-1052,"県":-4003,"研":-997,"社":-278,"空":-813,"統":1955,"者":-2233,"表":663,"語":-1073,"議":1219,"選":-1018,"郎":-368,"長":786,"間":1191,"題":2368,"館":-689,"1":-514,"E2":-32768,"「":363,"イ":241,"ル":451,"ン":-343},this.UW6__={",":227,".":808,1:-270,E1:306,"、":227,"。":808,"あ":-307,"う":189,"か":241,"が":-73,"く":-121,"こ":-200,"じ":1782,"す":383,"た":-428,"っ":573,"て":-1014,"で":101,"と":-105,"な":-253,"に":-149,"の":-417,"は":-236,"も":-206,"り":187,"る":-135,"を":195,"ル":-673,"ン":-496,"一":-277,"中":201,"件":-800,"会":624,"前":302,"区":1792,"員":-1212,"委":798,"学":-960,"市":887,"広":-695,"後":535,"業":-697,"相":753,"社":-507,"福":974,"空":-822,"者":1811,"連":463,"郎":1082,"1":-270,"E1":306,"ル":-673,"ン":-496},this}t.prototype.ctype_=function(_){for(var t in this.chartype_)if(_.match(this.chartype_[t][0]))return this.chartype_[t][1];return"O"},t.prototype.ts_=function(_){return _||0},t.prototype.segment=function(_){if(null==_||void 0==_||""==_)return[];var t=[],H=["B3","B2","B1"],s=["O","O","O"],h=_.split("");for(K=0;K0&&(t.push(i),i="",N="B"),I=O,O=B,B=N,i+=H[K]}return t.push(i),t},_.TinySegmenter=t}}); -------------------------------------------------------------------------------- /site/assets/javascripts/modernizr.1aa3b519.js: -------------------------------------------------------------------------------- 1 | !function(e,t){for(var n in t)e[n]=t[n]}(window,function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};return t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=4)}({4:function(e,t,n){"use strict";n(5)},5:function(e,t){!function(t){!function(e,t,n){function r(e,t){return typeof e===t}function o(e){var t=_.className,n=C._config.classPrefix||"";if(T&&(t=t.baseVal),C._config.enableJSClass){var r=new RegExp("(^|\\s)"+n+"no-js(\\s|$)");t=t.replace(r,"$1"+n+"js$2")}C._config.enableClasses&&(t+=" "+n+e.join(" "+n),T?_.className.baseVal=t:_.className=t)}function i(e,t){if("object"==typeof e)for(var n in e)b(e,n)&&i(n,e[n]);else{e=e.toLowerCase();var r=e.split("."),s=C[r[0]];if(2==r.length&&(s=s[r[1]]),void 0!==s)return C;t="function"==typeof t?t():t,1==r.length?C[r[0]]=t:(!C[r[0]]||C[r[0]]instanceof Boolean||(C[r[0]]=new Boolean(C[r[0]])),C[r[0]][r[1]]=t),o([(t&&0!=t?"":"no-")+r.join("-")]),C._trigger(e,t)}return C}function s(){return"function"!=typeof t.createElement?t.createElement(arguments[0]):T?t.createElementNS.call(t,"http://www.w3.org/2000/svg",arguments[0]):t.createElement.apply(t,arguments)}function a(){var e=t.body;return e||(e=s(T?"svg":"body"),e.fake=!0),e}function u(e,n,r,o){var i,u,l,f,c="modernizr",d=s("div"),p=a();if(parseInt(r,10))for(;r--;)l=s("div"),l.id=o?o[r]:c+(r+1),d.appendChild(l);return i=s("style"),i.type="text/css",i.id="s"+c,(p.fake?p:d).appendChild(i),p.appendChild(d),i.styleSheet?i.styleSheet.cssText=e:i.appendChild(t.createTextNode(e)),d.id=c,p.fake&&(p.style.background="",p.style.overflow="hidden",f=_.style.overflow,_.style.overflow="hidden",_.appendChild(p)),u=n(d,e),p.fake?(p.parentNode.removeChild(p),_.style.overflow=f,_.offsetHeight):d.parentNode.removeChild(d),!!u}function l(e,t){return!!~(""+e).indexOf(t)}function f(e){return e.replace(/([A-Z])/g,function(e,t){return"-"+t.toLowerCase()}).replace(/^ms-/,"-ms-")}function c(t,n,r){var o;if("getComputedStyle"in e){o=getComputedStyle.call(e,t,n);var i=e.console;if(null!==o)r&&(o=o.getPropertyValue(r));else if(i){var s=i.error?"error":"log";i[s].call(i,"getComputedStyle returning null, its possible modernizr test results are inaccurate")}}else o=!n&&t.currentStyle&&t.currentStyle[r];return o}function d(t,r){var o=t.length;if("CSS"in e&&"supports"in e.CSS){for(;o--;)if(e.CSS.supports(f(t[o]),r))return!0;return!1}if("CSSSupportsRule"in e){for(var i=[];o--;)i.push("("+f(t[o])+":"+r+")");return i=i.join(" or "),u("@supports ("+i+") { #modernizr { position: absolute; } }",function(e){return"absolute"==c(e,null,"position")})}return n}function p(e){return e.replace(/([a-z])-([a-z])/g,function(e,t,n){return t+n.toUpperCase()}).replace(/^-/,"")}function h(e,t,o,i){function a(){f&&(delete j.style,delete j.modElem)}if(i=!r(i,"undefined")&&i,!r(o,"undefined")){var u=d(e,o);if(!r(u,"undefined"))return u}for(var f,c,h,m,v,g=["modernizr","tspan","samp"];!j.style&&g.length;)f=!0,j.modElem=s(g.shift()),j.style=j.modElem.style;for(h=e.length,c=0;h>c;c++)if(m=e[c],v=j.style[m],l(m,"-")&&(m=p(m)),j.style[m]!==n){if(i||r(o,"undefined"))return a(),"pfx"!=t||m;try{j.style[m]=o}catch(e){}if(j.style[m]!=v)return a(),"pfx"!=t||m}return a(),!1}function m(e,t){return function(){return e.apply(t,arguments)}}function v(e,t,n){var o;for(var i in e)if(e[i]in t)return!1===n?e[i]:(o=t[e[i]],r(o,"function")?m(o,n||t):o);return!1}function g(e,t,n,o,i){var s=e.charAt(0).toUpperCase()+e.slice(1),a=(e+" "+k.join(s+" ")+s).split(" ");return r(t,"string")||r(t,"undefined")?h(a,t,o,i):(a=(e+" "+A.join(s+" ")+s).split(" "),v(a,t,n))}function y(e,t,r){return g(e,n,n,t,r)}var w=[],S={_version:"3.5.0",_config:{classPrefix:"",enableClasses:!0,enableJSClass:!0,usePrefixes:!0},_q:[],on:function(e,t){var n=this;setTimeout(function(){t(n[e])},0)},addTest:function(e,t,n){w.push({name:e,fn:t,options:n})},addAsyncTest:function(e){w.push({name:null,fn:e})}},C=function(){};C.prototype=S,C=new C;var b,x=[],_=t.documentElement,T="svg"===_.nodeName.toLowerCase();!function(){var e={}.hasOwnProperty;b=r(e,"undefined")||r(e.call,"undefined")?function(e,t){return t in e&&r(e.constructor.prototype[t],"undefined")}:function(t,n){return e.call(t,n)}}(),S._l={},S.on=function(e,t){this._l[e]||(this._l[e]=[]),this._l[e].push(t),C.hasOwnProperty(e)&&setTimeout(function(){C._trigger(e,C[e])},0)},S._trigger=function(e,t){if(this._l[e]){var n=this._l[e];setTimeout(function(){var e;for(e=0;e 2 | 3 | 4 | 5 | 6 | / 7 | 2018-04-29 8 | daily 9 | 10 | 11 | 12 | 13 | 14 | 15 | /beginner/Python_Programming_Lanuage/ 16 | 2018-04-29 17 | daily 18 | 19 | 20 | 21 | /beginner/Python_Installation/ 22 | 2018-04-29 23 | daily 24 | 25 | 26 | 27 | /beginner/Start_Coding_With_Python/ 28 | 2018-04-29 29 | daily 30 | 31 | 32 | 33 | /beginner/Data_Types_In_Python_3/ 34 | 2018-04-29 35 | daily 36 | 37 | 38 | 39 | /beginner/Variables_And_Assignment/ 40 | 2018-04-29 41 | daily 42 | 43 | 44 | 45 | /beginner/Conditions/ 46 | 2018-04-29 47 | daily 48 | 49 | 50 | 51 | /beginner/For_Loop/ 52 | 2018-04-29 53 | daily 54 | 55 | 56 | 57 | /beginner/Functions/ 58 | 2018-04-29 59 | daily 60 | 61 | 62 | 63 | /beginner/Scopes/ 64 | 2018-04-29 65 | daily 66 | 67 | 68 | 69 | /beginner/Scopes_Namespaces_LEGB_rule/ 70 | 2018-04-29 71 | daily 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | /advanced/Context_Managers/ 80 | 2018-04-29 81 | daily 82 | 83 | 84 | 85 | /advanced/Python_Metaclasses/ 86 | 2018-04-29 87 | daily 88 | 89 | 90 | 91 | /advanced/Python_Magic_Methods/ 92 | 2018-04-29 93 | daily 94 | 95 | 96 | 97 | 98 | 99 | 100 | /About/ 101 | 2018-04-29 102 | daily 103 | 104 | 105 | 106 | --------------------------------------------------------------------------------