diff --git a/Assets/Packages/morelinq.3.4.2.meta b/Assets/Packages/morelinq.3.4.2.meta new file mode 100644 index 0000000000000000000000000000000000000000..7863f9630f6b7d18d109fe834e3e95af764e19e1 --- /dev/null +++ b/Assets/Packages/morelinq.3.4.2.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8ac5a9fb8f513cb45ac53b8b8108f5bc +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Packages/morelinq.3.4.2/.signature.p7s b/Assets/Packages/morelinq.3.4.2/.signature.p7s new file mode 100644 index 0000000000000000000000000000000000000000..03f3747c54baff21c9deb88e38beb77a8ba2ca9b Binary files /dev/null and b/Assets/Packages/morelinq.3.4.2/.signature.p7s differ diff --git a/Assets/Packages/morelinq.3.4.2/COPYING.txt b/Assets/Packages/morelinq.3.4.2/COPYING.txt new file mode 100644 index 0000000000000000000000000000000000000000..d9efc069c0dbb9f74c62dc4ec592b23f5284aaa9 --- /dev/null +++ b/Assets/Packages/morelinq.3.4.2/COPYING.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + +============================================================================== +The following notice applies to a small portion of the code: + +The MIT License (MIT) + +Copyright (c) Microsoft Corporation + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/Assets/Packages/morelinq.3.4.2/COPYING.txt.meta b/Assets/Packages/morelinq.3.4.2/COPYING.txt.meta new file mode 100644 index 0000000000000000000000000000000000000000..6612bd9e9f02f97721716ad1df8265e675a66655 --- /dev/null +++ b/Assets/Packages/morelinq.3.4.2/COPYING.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 301b7f85f7db42f43ba1de1eb9171df3 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Packages/morelinq.3.4.2/README.md b/Assets/Packages/morelinq.3.4.2/README.md new file mode 100644 index 0000000000000000000000000000000000000000..ece3287fc5066b4bf048aea1b39ae403e5dcbc61 --- /dev/null +++ b/Assets/Packages/morelinq.3.4.2/README.md @@ -0,0 +1,781 @@ +# MoreLINQ + +LINQ to Objects is missing a few desirable features. + +This project enhances LINQ to Objects with extra methods, in a manner which +keeps to the spirit of LINQ. + +MoreLINQ is available for download and installation as +[NuGet packages](https://www.nuget.org/packages/morelinq/). + +Documentation for the stable and beta releases can be found at +[morelinq.github.io](https://morelinq.github.io/). + + +## Usage + +MoreLINQ can be used in one of two ways. The simplest is to just import the +`MoreLinq` namespace and all extension methods become instantly available for +you to use on the types they extend (typically some instantiation of +`IEnumerable<T>`). In some very rare instances, however, doing so can cause +conflicts with other libraries you may be using that incidentally also extend +the same type with an identically named method and signature. This happened +with MoreLINQ, for example, when Microsoft .NET Framework 4.0 introduced +[`Zip`][netzip] and [MoreLINQ already had one][zip]. Starting with version 3.0 +of MoreLINQ, you can reduce the potential for present (or even future) +conflicts by individually importing just the extension methods you need using +the [static imports feature introduced in C# 6][using-static]: + +```c# +using static MoreLinq.Extensions.LagExtension; +using static MoreLinq.Extensions.LeadExtension; +``` + +In the example above, only the [`Lag`][lag] and [`Lead`][lead] extension +methods will be available in scope. + +Apart from extension methods, MoreLINQ also offers regular static method +that *generate* (instead of operating on) sequences, like `Unfold`, +`Random`, `Sequence` and others. If you want to use these while statically +importing other individual extension methods, you can do so via aliasing: + +```c# +using static MoreLinq.Extensions.LagExtension; +using static MoreLinq.Extensions.LeadExtension; +using MoreEnumerable = MoreLinq.MoreEnumerable; +``` + +In the example above, [`Lag`][lag] and [`Lead`][lead] will be available as +extension methods as well as all the regular static methods on +`MoreEnumerable` but _without_ any of the extension methods offered by +`MoreEnumerable`. + + +[lag]: https://morelinq.github.io/2.0/ref/api/html/Overload_MoreLinq_MoreEnumerable_Lag.htm +[lead]: https://morelinq.github.io/2.0/ref/api/html/Overload_MoreLinq_MoreEnumerable_Lead.htm +[using-static]: https://docs.microsoft.com/en-us/dotnet/articles/csharp/whats-new/csharp-6#using-static +[netzip]: https://docs.microsoft.com/en-us/dotnet/api/system.linq.enumerable.zip#System_Linq_Enumerable_Zip__3_System_Collections_Generic_IEnumerable___0__System_Collections_Generic_IEnumerable___1__System_Func___0___1___2__ +[zip]: https://morelinq.github.io/1.x/ref/api/html/M_MoreLinq_MoreEnumerable_Zip__3.htm +[unfold]: https://morelinq.github.io/2.3/ref/api/html/M_MoreLinq_MoreEnumerable_Unfold__3.htm +[random]: https://morelinq.github.io/2.0/ref/api/html/Overload_MoreLinq_MoreEnumerable_Random.htm +[sequence]: https://morelinq.github.io/2.2/ref/api/html/Overload_MoreLinq_MoreEnumerable_Sequence.htm + + +## Building + +Run either `build.cmd` if building on Windows or `build.sh` if building on macOS +or a [Linux distribution supported by .NET][dotnet-linux]. + +Some code in the project is generated using [T4][t4] templates. To regenerate +the code from modified templates, run `MoreLinq\tt.cmd` (Windows) or +`MoreLinq/tt.sh` depending on your platform. + +Building the documentation is supported on Windows only and requires +[Sandcastle Help File Builder (SHFB)][shfb]. Executing `builddocs.cmd` +generates the documentation in the `docs/api` directory. It can be browsed +locally using any HTTP server of static files, like +[dotnet-serve][dotnet-serve]. + +[dotnet-linux]: https://learn.microsoft.com/en-us/dotnet/core/install/linux +[shfb]: https://github.com/EWSoftware/SHFB/releases/tag/v2022.12.30.0 +[dotnet-serve]: https://www.nuget.org/packages/dotnet-serve +[t4]: https://docs.microsoft.com/en-us/visualstudio/modeling/code-generation-and-t4-text-templates + + +## Operators + +### Acquire + +Ensures that a source sequence of disposable objects are all acquired +successfully. If the acquisition of any one fails then those successfully +acquired till that point are disposed. + +### Aggregate + +Applies multiple accumulators sequentially in a single pass over a sequence. + +This method has 7 overloads. + +### AggregateRight + +Applies a right-associative accumulator function over a sequence. +This operator is the right-associative version of the Aggregate LINQ operator. + +This method has 3 overloads. + +### Append + +Returns a sequence consisting of the head element and the given tail elements. + +### Assert + +Asserts that all elements of a sequence meet a given condition otherwise +throws an exception. + +This method has 2 overloads. + +### AssertCount + +Asserts that a source sequence contains a given count of elements. + +This method has 2 overloads. + +### AtLeast + +Determines whether or not the number of elements in the sequence is greater +than or equal to the given integer. + +### AtMost + +Determines whether or not the number of elements in the sequence is lesser +than or equal to the given integer. + +### Backsert + +Inserts the elements of a sequence into another sequence at a +specified index from the tail of the sequence, where zero always represents +the last position, one represents the second-last element, two represents +the third-last element and so on. + +### Batch + +Batches the source sequence into sized buckets. + +This method has 4 overloads, 2 of which are experimental. + +### Cartesian + +Returns the Cartesian product of two or more sequences by combining each +element from the sequences and applying a user-defined projection to the +set. + +This method has 7 overloads. + +### Choose + +Applies a function to each element of the source sequence and returns a new +sequence of result elements for source elements where the function returns a +couple (2-tuple) having a `true` as its first element and result as the +second. + +### CompareCount + +Compares two sequences and returns an integer that indicates whether the +first sequence has fewer, the same or more elements than the second sequence. + +### ~~Concat~~ + +Returns a sequence consisting of the head element and the given tail elements. + +This method is obsolete and will be removed in a future version. Use `Append` +instead. + +### Consume + +Completely consumes the given sequence. This method uses immediate execution, +and doesn't store any data during execution + +### CountBetween + +Determines whether or not the number of elements in the sequence is between an +inclusive range of minimum and maximum integers. + +### CountBy + +Applies a key-generating function to each element of a sequence and returns a +sequence of unique keys and their number of occurrences in the original +sequence. + +This method has 2 overloads. + +### CountDown + +Provides a countdown counter for a given count of elements at the tail of the +sequence where zero always represents the last element, one represents the +second-last element, two represents the third-last element and so on. + +### DistinctBy + +Returns all distinct elements of the given source, where "distinctness" is +determined via a projection and the default equality comparer for the +projected type. + +This method has 2 overloads. + +### EndsWith + +Determines whether the end of the first sequence is equivalent to the second +sequence. + +This method has 2 overloads. + +### EquiZip + +Returns a projection of tuples, where each tuple contains the N-th +element from each of the argument sequences. An exception is thrown +if the input sequences are of different lengths. + +This method has 3 overloads. + +### Exactly + +Determines whether or not the number of elements in the sequence is equals +to the given integer. + +### ExceptBy + +Returns the set of elements in the first sequence which aren't in the second +sequence, according to a given key selector. + +This method has 2 overloads. + +### Exclude + +Excludes elements from a sequence starting at a given index + +### FallbackIfEmpty + +Returns the elements of a sequence and falls back to another if the original +sequence is empty. + +This method has 6 overloads. + +### FillBackward + +Returns a sequence with each null reference or value in the source replaced +with the following non-null reference or value in that sequence. + +This method has 3 overloads. + +### FillForward + +Returns a sequence with each null reference or value in the source replaced +with the previous non-null reference or value seen in that sequence. + +This method has 3 overloads. + +### Flatten + +Flattens a sequence containing arbitrarily-nested sequences. + +This method has 3 overloads. + +### Fold + +Returns the result of applying a function to a sequence with 1 to 16 elements. + +This method has 16 overloads. + +### ForEach + +Immediately executes the given action on each element in the source sequence. + +This method has 2 overloads. + +### From + +Returns a sequence containing the values resulting from invoking (in order) +each function in the source sequence of functions. + +This method has 4 overloads. + +### FullGroupJoin + +Performs a Full Group Join between the and sequences. + +This method has 4 overloads. + +### FullJoin + +Performs a full outer join between two sequences. + +This method has 4 overloads. + +### Generate + +Returns a sequence of values consecutively generated by a generator function + +### GenerateByIndex + +Returns a sequence of values based on indexes + +### GroupAdjacent + +Groups the adjacent elements of a sequence according to a specified key +selector function. + +This method has 6 overloads. + +### ~~Incremental~~ + +`Incremental` was redundant with `Pairwise` and so deprecated since version +[2.1][v2.1]. It was eventually removed in version [3.0][v3.0]. + +### Index + +Returns a sequence of where the key is the zero-based index of the value in +the source sequence. + +This method has 2 overloads. + +### IndexBy + + +Applies a key-generating function to each element of a sequence and returns +a sequence that contains the elements of the original sequence as well its +key and index inside the group of its key. An additional argument specifies +a comparer to use for testing equivalence of keys. + +This method has 2 overloads. + +### Insert + +Inserts the elements of a sequence into another sequence at a specified index. + +### Interleave + +Interleaves the elements of two or more sequences into a single sequence, +skipping sequences as they are consumed. + +### Lag + +Produces a projection of a sequence by evaluating pairs of elements separated +by a negative offset. + +This method has 2 overloads. + +### Lead + +Produces a projection of a sequence by evaluating pairs of elements separated +by a positive offset. + +This method has 2 overloads. + +### LeftJoin + +Performs a left outer join between two sequences. + +This method has 4 overloads. + +### MaxBy + +Returns the maxima (maximal elements) of the given sequence, based on the +given projection. + +This method has 2 overloads. + +### MinBy + +Returns the minima (minimal elements) of the given sequence, based on the +given projection. + +This method has 2 overloads. + +### Move + +Returns a sequence with a range of elements in the source sequence +moved to a new offset. + +### OrderBy + +Sorts the elements of a sequence in a particular direction (ascending, +descending) according to a key. + +This method has 2 overloads. + +### OrderedMerge + +Merges two ordered sequences into one. Where the elements equal in both +sequences, the element from the first sequence is returned in the resulting +sequence. + +This method has 7 overloads. + +### Pad + +Pads a sequence with default values if it is narrower (shorter in length) than +a given width. + +This method has 3 overloads. + +### PadStart + +Pads a sequence with default values in the beginning if it is narrower +(shorter in length) than a given width. + +This method has 3 overloads. + +### Pairwise + +Returns a sequence resulting from applying a function to each element in the +source sequence and its predecessor, with the exception of the first element +which is only returned as the predecessor of the second element + +### PartialSort + +Combines `OrderBy` (where element is key) and `Take` in a single operation. + +This method has 4 overloads. + +### PartialSortBy + +Combines `OrderBy` and `Take` in a single operation. + +This method has 4 overloads. + +### Partition + +Partitions a sequence by a predicate, or a grouping by Boolean keys or up to 3 +sets of keys. + +This method has 10 overloads. + +### Permutations + +Generates a sequence of lists that represent the permutations of the original +sequence + +### Pipe + +Executes the given action on each element in the source sequence and yields it + +### Prepend + +Prepends a single value to a sequence + +### PreScan + +Performs a pre-scan (exclusive prefix sum) on a sequence of elements + +### Random + +Returns an infinite sequence of random integers using the standard .NET random +number generator. + +This method has 6 overloads. + +### RandomDouble + +Returns an infinite sequence of random double values between 0.0 and 1.0. + +This method has 2 overloads. + +### RandomSubset + +Returns a sequence of a specified size of random elements from the original +sequence. + +This method has 2 overloads. + +### Rank + +Ranks each item in the sequence in descending ordering using a default +comparer. + +This method has 2 overloads. + +### RankBy + +Ranks each item in the sequence in descending ordering by a specified key +using a default comparer. + +This method has 2 overloads. + +### Repeat + +Repeats the sequence indefinitely or a specific number of times. + +This method has 2 overloads. + +### Return + +Returns a single-element sequence containing the item provided. + +### RightJoin + +Performs a right outer join between two sequences. + +This method has 4 overloads. + +### RunLengthEncode + +Run-length encodes a sequence by converting consecutive instances of the same +element into a `KeyValuePair<T, int>` representing the item and its occurrence +count. + +This method has 2 overloads. + +### Scan + +Peforms a scan (inclusive prefix sum) on a sequence of elements. + +This method has 2 overloads. + +### ScanBy + +Applies an accumulator function over sequence element keys, returning the keys +along with intermediate accumulator states. + +This method has 2 overloads. + +### ScanRight + +Peforms a right-associative scan (inclusive prefix) on a sequence of elements. +This operator is the right-associative version of the Scan operator. + +This method has 2 overloads. + +### Segment + +Divides a sequence into multiple sequences by using a segment detector based +on the original sequence. + +This method has 3 overloads. + +### Sequence + +Generates a sequence of integral numbers within the (inclusive) specified range. + +This method has 2 overloads. + +### Shuffle + +Returns a sequence of elements in random order from the original sequence. + +This method has 2 overloads. + +### SkipLast + +Bypasses a specified number of elements at the end of the sequence. + +### SkipUntil + +Skips items from the input sequence until the given predicate returns true +when applied to the current source item; that item will be the last skipped + +### Slice + +Extracts elements from a sequence at a particular zero-based starting index + +### SortedMerge + +Merges two or more sequences that are in a common order (either ascending or +descending) into a single sequence that preserves that order. + +This method has 2 overloads. + +### Split + +Splits the source sequence by a separator. + +This method has 12 overloads. + +### StartsWith + +Determines whether the beginning of the first sequence is equivalent to the +second sequence. + +This method has 2 overloads. + +### Subsets + +Returns a sequence of representing all of the subsets of any size that are +part of the original sequence. + +This method has 2 overloads. + +### TagFirstLast + +Returns a sequence resulting from applying a function to each element in the +source sequence with additional parameters indicating whether the element is +the first and/or last of the sequence + +### TakeEvery + +Returns every N-th element of a source sequence + +### TakeLast + +Returns a specified number of contiguous elements from the end of a sequence + +### TakeUntil + +Returns items from the input sequence until the given predicate returns true +when applied to the current source item; that item will be the last returned + +### ThenBy + +Performs a subsequent ordering of elements in a sequence in a particular +direction (ascending, descending) according to a key. + +This method has 2 overloads. + +### ToArrayByIndex + +Creates an array from an IEnumerable<T> where a function is used to determine +the index at which an element will be placed in the array. + +This method has 6 overloads. + +### ToDataTable + +Appends elements in the sequence as rows of a given object with a set of +lambda expressions specifying which members (property or field) of each +element in the sequence will supply the column values. + +This method has 4 overloads. + +### ToDelimitedString + +Creates a delimited string from a sequence of values. The delimiter used +depends on the current culture of the executing thread. + +This method has 15 overloads. + +### ToDictionary + +Creates a [dictionary][dict] from a sequence of [key-value pair][kvp] elements +or tuples of 2. + +This method has 4 overloads. + +### ToHashSet + +Returns a [hash-set][hashset] of the source items using the default equality +comparer for the type. + +This method has 2 overloads. + +### ToLookup + +Creates a [lookup][lookup] from a sequence of [key-value pair][kvp] elements +or tuples of 2. + +This method has 4 overloads. + +### Transpose + +Transposes the rows of a sequence into columns. + +### TraverseBreadthFirst + +Traverses a tree in a breadth-first fashion, starting at a root node and using +a user-defined function to get the children at each node of the tree. + +### TraverseDepthFirst + +Traverses a tree in a depth-first fashion, starting at a root node and using a +user-defined function to get the children at each node of the tree. + +### Trace + +Traces the elements of a source sequence for diagnostics. + +This method has 3 overloads. + +### Unfold + +Returns a sequence generated by applying a state to the generator function, +and from its result, determines if the sequence should have a next element and +its value, and the next state in the recursive call. + +### Window + +Processes a sequence into a series of subsequences representing a windowed +subset of the original + +### ~~Windowed~~ + +Processes a sequence into a series of subsequences representing a windowed +subset of the original + +This method is obsolete and will be removed in a future version. Use `Window` +instead. + +### WindowLeft + +Creates a left-aligned sliding window over the source sequence of a given size. + +### WindowRight + +Creates a right-aligned sliding window over the source sequence of a given size. + +### ZipLongest + +Returns a projection of tuples, where each tuple contains the N-th +element from each of the argument sequences. The resulting sequence +will always be as long as the longest of input sequences where the +default value of each of the shorter sequence element types is used +for padding. + +This method has 3 overloads. + +### ZipShortest + +Returns a projection of tuples, where each tuple contains the N-th +element from each of the argument sequences. The resulting sequence +is as short as the shortest input sequence. + +This method has 3 overloads. + + +## Experimental Operators + +THESE METHODS ARE EXPERIMENTAL. THEY MAY BE UNSTABLE AND UNTESTED. THEY MAY BE +REMOVED FROM A FUTURE MAJOR OR MINOR RELEASE AND POSSIBLY WITHOUT NOTICE. USE +THEM AT YOUR OWN RISK. THE METHODS ARE PUBLISHED FOR FIELD EXPERIMENTATION TO +SOLICIT FEEDBACK ON THEIR UTILITY AND DESIGN/IMPLEMENTATION DEFECTS. + +Use of experimental methods requires importing the `MoreLinq.Experimental` +namespace. + +### Aggregate + +Applies multiple accumulator queries sequentially in a single pass over a +sequence. + +This method has 8 overloads. + +### Await + +Creates a sequence query that streams the result of each task in the source +sequence as it completes asynchronously. + +This method has 2 overloads. + +### AwaitCompletion + +Awaits completion of all asynchronous evaluations irrespective of whether they +succeed or fail. An additional argument specifies a function that projects the +final result given the source item and completed task. + +### Memoize + +Creates a sequence that lazily caches the source as it is iterated for the +first time, reusing the cache thereafter for future re-iterations. If the +source is already cached or buffered then it is returned verbatim. + +### Merge + +Concurrently merges all the elements of multiple asynchronous streams into a +single asynchronous stream. An overload with an additional parameter specifies +the maximum concurrent operations that may be in flight at any give time. + +This method has 2 overloads. + +### TrySingle + +Returns the only element of a sequence that has just one element. If the +sequence has zero or multiple elements, then returns a user-defined value +that indicates the cardinality of the result sequence. + +This method has 2 overloads. + + +[#122]: https://github.com/morelinq/MoreLINQ/issues/122 +[dict]: https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.Dictionary-2 +[hashset]: https://docs.microsoft.com/en-us/dotnet/api/system.collections.generic.hashset-1 +[kvp]: https://docs.microsoft.com/en-us/dotnet/api/System.Collections.Generic.KeyValuePair-2 +[lookup]: https://docs.microsoft.com/en-us/dotnet/api/system.linq.lookup-2 +[v2.1]: https://github.com/morelinq/MoreLINQ/releases/tag/v2.1.0 +[v3.0]: https://github.com/morelinq/MoreLINQ/releases/tag/v3.0.0 diff --git a/Assets/Packages/morelinq.3.4.2/README.md.meta b/Assets/Packages/morelinq.3.4.2/README.md.meta new file mode 100644 index 0000000000000000000000000000000000000000..155e826df16cc4e5bb38bb092a16e50241464c65 --- /dev/null +++ b/Assets/Packages/morelinq.3.4.2/README.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 2c02eae7182b7b9439d234e0c3c468ce +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Packages/morelinq.3.4.2/lib.meta b/Assets/Packages/morelinq.3.4.2/lib.meta new file mode 100644 index 0000000000000000000000000000000000000000..8b0a0d80be0a724296d67c2dbdf20c36a86fd7f4 --- /dev/null +++ b/Assets/Packages/morelinq.3.4.2/lib.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 99aaade9aebe6fa4a89590d585727759 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Packages/morelinq.3.4.2/lib/netstandard2.1.meta b/Assets/Packages/morelinq.3.4.2/lib/netstandard2.1.meta new file mode 100644 index 0000000000000000000000000000000000000000..04de02c202b265756d049fee9783fc4f5c258633 --- /dev/null +++ b/Assets/Packages/morelinq.3.4.2/lib/netstandard2.1.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2a95cde6af78e274d8ad315bd4735054 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Packages/morelinq.3.4.2/lib/netstandard2.1/MoreLinq.dll b/Assets/Packages/morelinq.3.4.2/lib/netstandard2.1/MoreLinq.dll new file mode 100644 index 0000000000000000000000000000000000000000..ed40419a54dee5fc4c37a568448e3fb303adf430 --- /dev/null +++ b/Assets/Packages/morelinq.3.4.2/lib/netstandard2.1/MoreLinq.dll @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64f5675190dab38200ad7d1adf112e18356070817d4e668c8d0bcf0f4d295330 +size 341504 diff --git a/Assets/Packages/morelinq.3.4.2/lib/netstandard2.1/MoreLinq.dll.meta b/Assets/Packages/morelinq.3.4.2/lib/netstandard2.1/MoreLinq.dll.meta new file mode 100644 index 0000000000000000000000000000000000000000..8d7c65391b226809adb61a218c8cd00b601b50e6 --- /dev/null +++ b/Assets/Packages/morelinq.3.4.2/lib/netstandard2.1/MoreLinq.dll.meta @@ -0,0 +1,23 @@ +fileFormatVersion: 2 +guid: bb6220cc6a89fbd4da9723d767b62041 +labels: +- NuGetForUnity +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Any: + second: + enabled: 1 + settings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Packages/morelinq.3.4.2/lib/netstandard2.1/MoreLinq.xml b/Assets/Packages/morelinq.3.4.2/lib/netstandard2.1/MoreLinq.xml new file mode 100644 index 0000000000000000000000000000000000000000..dafea4c2d53ee0d8a15009b3288118e9978970bb --- /dev/null +++ b/Assets/Packages/morelinq.3.4.2/lib/netstandard2.1/MoreLinq.xml @@ -0,0 +1,13350 @@ +<?xml version="1.0"?> +<doc> + <assembly> + <name>MoreLinq</name> + </assembly> + <members> + <member name="T:MoreLinq.MoreEnumerable"> + <summary> + Provides a set of static methods for querying objects that + implement <see cref="T:System.Collections.Generic.IEnumerable`1" />. + </summary> + </member> + <member name="M:MoreLinq.MoreEnumerable.Acquire``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Ensures that a source sequence of <see cref="T:System.IDisposable"/> + objects are all acquired successfully. If the acquisition of any + one <see cref="T:System.IDisposable"/> fails then those successfully + acquired till that point are disposed. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <param name="source">Source sequence of <see cref="T:System.IDisposable"/> objects.</param> + <returns> + Returns an array of all the acquired <see cref="T:System.IDisposable"/> + objects in source order. + </returns> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Aggregate``4(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1},``2,System.Func{``2,``0,``2},System.Func{``1,``2,``3})"> + <summary> + Applies two accumulators sequentially in a single pass over a + sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TAccumulate1">The type of first accumulator value.</typeparam> + <typeparam name="TAccumulate2">The type of second accumulator value.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="seed1">The seed value for the first accumulator.</param> + <param name="accumulator1">The first accumulator.</param> + <param name="seed2">The seed value for the second accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Aggregate``5(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1},``2,System.Func{``2,``0,``2},``3,System.Func{``3,``0,``3},System.Func{``1,``2,``3,``4})"> + <summary> + Applies three accumulators sequentially in a single pass over a + sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TAccumulate1">The type of first accumulator value.</typeparam> + <typeparam name="TAccumulate2">The type of second accumulator value.</typeparam> + <typeparam name="TAccumulate3">The type of third accumulator value.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="seed1">The seed value for the first accumulator.</param> + <param name="accumulator1">The first accumulator.</param> + <param name="seed2">The seed value for the second accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="seed3">The seed value for the third accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Aggregate``6(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1},``2,System.Func{``2,``0,``2},``3,System.Func{``3,``0,``3},``4,System.Func{``4,``0,``4},System.Func{``1,``2,``3,``4,``5})"> + <summary> + Applies four accumulators sequentially in a single pass over a + sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TAccumulate1">The type of first accumulator value.</typeparam> + <typeparam name="TAccumulate2">The type of second accumulator value.</typeparam> + <typeparam name="TAccumulate3">The type of third accumulator value.</typeparam> + <typeparam name="TAccumulate4">The type of fourth accumulator value.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="seed1">The seed value for the first accumulator.</param> + <param name="accumulator1">The first accumulator.</param> + <param name="seed2">The seed value for the second accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="seed3">The seed value for the third accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="seed4">The seed value for the fourth accumulator.</param> + <param name="accumulator4">The fourth accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Aggregate``7(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1},``2,System.Func{``2,``0,``2},``3,System.Func{``3,``0,``3},``4,System.Func{``4,``0,``4},``5,System.Func{``5,``0,``5},System.Func{``1,``2,``3,``4,``5,``6})"> + <summary> + Applies five accumulators sequentially in a single pass over a + sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TAccumulate1">The type of first accumulator value.</typeparam> + <typeparam name="TAccumulate2">The type of second accumulator value.</typeparam> + <typeparam name="TAccumulate3">The type of third accumulator value.</typeparam> + <typeparam name="TAccumulate4">The type of fourth accumulator value.</typeparam> + <typeparam name="TAccumulate5">The type of fifth accumulator value.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="seed1">The seed value for the first accumulator.</param> + <param name="accumulator1">The first accumulator.</param> + <param name="seed2">The seed value for the second accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="seed3">The seed value for the third accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="seed4">The seed value for the fourth accumulator.</param> + <param name="accumulator4">The fourth accumulator.</param> + <param name="seed5">The seed value for the fifth accumulator.</param> + <param name="accumulator5">The fifth accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Aggregate``8(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1},``2,System.Func{``2,``0,``2},``3,System.Func{``3,``0,``3},``4,System.Func{``4,``0,``4},``5,System.Func{``5,``0,``5},``6,System.Func{``6,``0,``6},System.Func{``1,``2,``3,``4,``5,``6,``7})"> + <summary> + Applies six accumulators sequentially in a single pass over a + sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TAccumulate1">The type of first accumulator value.</typeparam> + <typeparam name="TAccumulate2">The type of second accumulator value.</typeparam> + <typeparam name="TAccumulate3">The type of third accumulator value.</typeparam> + <typeparam name="TAccumulate4">The type of fourth accumulator value.</typeparam> + <typeparam name="TAccumulate5">The type of fifth accumulator value.</typeparam> + <typeparam name="TAccumulate6">The type of sixth accumulator value.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="seed1">The seed value for the first accumulator.</param> + <param name="accumulator1">The first accumulator.</param> + <param name="seed2">The seed value for the second accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="seed3">The seed value for the third accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="seed4">The seed value for the fourth accumulator.</param> + <param name="accumulator4">The fourth accumulator.</param> + <param name="seed5">The seed value for the fifth accumulator.</param> + <param name="accumulator5">The fifth accumulator.</param> + <param name="seed6">The seed value for the sixth accumulator.</param> + <param name="accumulator6">The sixth accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Aggregate``9(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1},``2,System.Func{``2,``0,``2},``3,System.Func{``3,``0,``3},``4,System.Func{``4,``0,``4},``5,System.Func{``5,``0,``5},``6,System.Func{``6,``0,``6},``7,System.Func{``7,``0,``7},System.Func{``1,``2,``3,``4,``5,``6,``7,``8})"> + <summary> + Applies seven accumulators sequentially in a single pass over a + sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TAccumulate1">The type of first accumulator value.</typeparam> + <typeparam name="TAccumulate2">The type of second accumulator value.</typeparam> + <typeparam name="TAccumulate3">The type of third accumulator value.</typeparam> + <typeparam name="TAccumulate4">The type of fourth accumulator value.</typeparam> + <typeparam name="TAccumulate5">The type of fifth accumulator value.</typeparam> + <typeparam name="TAccumulate6">The type of sixth accumulator value.</typeparam> + <typeparam name="TAccumulate7">The type of seventh accumulator value.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="seed1">The seed value for the first accumulator.</param> + <param name="accumulator1">The first accumulator.</param> + <param name="seed2">The seed value for the second accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="seed3">The seed value for the third accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="seed4">The seed value for the fourth accumulator.</param> + <param name="accumulator4">The fourth accumulator.</param> + <param name="seed5">The seed value for the fifth accumulator.</param> + <param name="accumulator5">The fifth accumulator.</param> + <param name="seed6">The seed value for the sixth accumulator.</param> + <param name="accumulator6">The sixth accumulator.</param> + <param name="seed7">The seed value for the seventh accumulator.</param> + <param name="accumulator7">The seventh accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Aggregate``10(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1},``2,System.Func{``2,``0,``2},``3,System.Func{``3,``0,``3},``4,System.Func{``4,``0,``4},``5,System.Func{``5,``0,``5},``6,System.Func{``6,``0,``6},``7,System.Func{``7,``0,``7},``8,System.Func{``8,``0,``8},System.Func{``1,``2,``3,``4,``5,``6,``7,``8,``9})"> + <summary> + Applies eight accumulators sequentially in a single pass over a + sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TAccumulate1">The type of first accumulator value.</typeparam> + <typeparam name="TAccumulate2">The type of second accumulator value.</typeparam> + <typeparam name="TAccumulate3">The type of third accumulator value.</typeparam> + <typeparam name="TAccumulate4">The type of fourth accumulator value.</typeparam> + <typeparam name="TAccumulate5">The type of fifth accumulator value.</typeparam> + <typeparam name="TAccumulate6">The type of sixth accumulator value.</typeparam> + <typeparam name="TAccumulate7">The type of seventh accumulator value.</typeparam> + <typeparam name="TAccumulate8">The type of eighth accumulator value.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="seed1">The seed value for the first accumulator.</param> + <param name="accumulator1">The first accumulator.</param> + <param name="seed2">The seed value for the second accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="seed3">The seed value for the third accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="seed4">The seed value for the fourth accumulator.</param> + <param name="accumulator4">The fourth accumulator.</param> + <param name="seed5">The seed value for the fifth accumulator.</param> + <param name="accumulator5">The fifth accumulator.</param> + <param name="seed6">The seed value for the sixth accumulator.</param> + <param name="accumulator6">The sixth accumulator.</param> + <param name="seed7">The seed value for the seventh accumulator.</param> + <param name="accumulator7">The seventh accumulator.</param> + <param name="seed8">The seed value for the eighth accumulator.</param> + <param name="accumulator8">The eighth accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.AggregateRight``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0})"> + <summary> + Applies a right-associative accumulator function over a sequence. + This operator is the right-associative version of the + <see cref="M:System.Linq.Enumerable.Aggregate``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0})"/> LINQ operator. + </summary> + <typeparam name="TSource">The type of the elements of source.</typeparam> + <param name="source">Source sequence.</param> + <param name="func">A right-associative accumulator function to be invoked on each element.</param> + <returns>The final accumulator value.</returns> + <example> + <code><![CDATA[ + string result = Enumerable.Range(1, 5).Select(i => i.ToString()).AggregateRight((a, b) => $"({a}/{b})"); + ]]></code> + The <c>result</c> variable will contain <c>"(1/(2/(3/(4/5))))"</c>. + </example> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.AggregateRight``2(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``0,``1,``1})"> + <summary> + Applies a right-associative accumulator function over a sequence. + The specified seed value is used as the initial accumulator value. + This operator is the right-associative version of the + <see cref="M:System.Linq.Enumerable.Aggregate``2(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1})"/> LINQ operator. + </summary> + <typeparam name="TSource">The type of the elements of source.</typeparam> + <typeparam name="TAccumulate">The type of the accumulator value.</typeparam> + <param name="source">Source sequence.</param> + <param name="seed">The initial accumulator value.</param> + <param name="func">A right-associative accumulator function to be invoked on each element.</param> + <returns>The final accumulator value.</returns> + <example> + <code><![CDATA[ + var numbers = Enumerable.Range(1, 5); + string result = numbers.AggregateRight("6", (a, b) => $"({a}/{b})"); + ]]></code> + The <c>result</c> variable will contain <c>"(1/(2/(3/(4/(5/6)))))"</c>. + </example> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.AggregateRight``3(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``0,``1,``1},System.Func{``1,``2})"> + <summary> + Applies a right-associative accumulator function over a sequence. + The specified seed value is used as the initial accumulator value, + and the specified function is used to select the result value. + This operator is the right-associative version of the + <see cref="M:System.Linq.Enumerable.Aggregate``3(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1},System.Func{``1,``2})"/> LINQ operator. + </summary> + <typeparam name="TSource">The type of the elements of source.</typeparam> + <typeparam name="TAccumulate">The type of the accumulator value.</typeparam> + <typeparam name="TResult">The type of the resulting value.</typeparam> + <param name="source">Source sequence.</param> + <param name="seed">The initial accumulator value.</param> + <param name="func">A right-associative accumulator function to be invoked on each element.</param> + <param name="resultSelector">A function to transform the final accumulator value into the result value.</param> + <returns>The transformed final accumulator value.</returns> + <example> + <code><![CDATA[ + var numbers = Enumerable.Range(1, 5); + int result = numbers.AggregateRight("6", (a, b) => $"({a}/{b})", str => str.Length); + ]]></code> + The <c>result</c> variable will contain <c>21</c>. + </example> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Append``1(System.Collections.Generic.IEnumerable{``0},``0)"> + <summary> + Returns a sequence consisting of the head elements and the given tail element. + </summary> + <typeparam name="T">Type of sequence</typeparam> + <param name="head">All elements of the head. Must not be null.</param> + <param name="tail">Tail element of the new sequence.</param> + <returns>A sequence consisting of the head elements and the given tail element.</returns> + <remarks>This operator uses deferred execution and streams its results.</remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Concat``1(System.Collections.Generic.IEnumerable{``0},``0)"> + <summary> + Returns a sequence consisting of the head elements and the given tail element. + </summary> + <typeparam name="T">Type of sequence</typeparam> + <param name="head">All elements of the head. Must not be null.</param> + <param name="tail">Tail element of the new sequence.</param> + <returns>A sequence consisting of the head elements and the given tail element.</returns> + <remarks>This operator uses deferred execution and streams its results.</remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Assert``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean})"> + <summary> + Asserts that all elements of a sequence meet a given condition + otherwise throws an <see cref="T:System.Exception"/> object. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <param name="source">Source sequence.</param> + <param name="predicate">Function that asserts an element of the <paramref name="source"/> sequence for a condition.</param> + <returns> + Returns the original sequence. + </returns> + <exception cref="T:System.InvalidOperationException">The input sequence + contains an element that does not meet the condition being + asserted.</exception> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Assert``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean},System.Func{``0,System.Exception})"> + <summary> + Asserts that all elements of a sequence meet a given condition + otherwise throws an <see cref="T:System.Exception"/> object. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <param name="source">Source sequence.</param> + <param name="predicate">Function that asserts an element of the input sequence for a condition.</param> + <param name="errorSelector">Function that returns the <see cref="T:System.Exception"/> object to throw.</param> + <returns> + Returns the original sequence. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.AssertCount``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Asserts that a source sequence contains a given count of elements. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <param name="source">Source sequence.</param> + <param name="count">Count to assert.</param> + <returns> + Returns the original sequence as long it is contains the + number of elements specified by <paramref name="count"/>. + Otherwise it throws <see cref="T:System.Exception" />. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.AssertCount``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{System.Int32,System.Int32,System.Exception})"> + <summary> + Asserts that a source sequence contains a given count of elements. + A parameter specifies the exception to be thrown. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <param name="source">Source sequence.</param> + <param name="count">Count to assert.</param> + <param name="errorSelector"> + Function that receives a comparison (a negative integer if actual + count is less than <paramref name="count"/> and a positive integer + if actual count is greater than <paramref name="count"/>) and + <paramref name="count"/> as arguments and which returns the + <see cref="T:System.Exception"/> object to throw.</param> + <returns> + Returns the original sequence as long it is contains the + number of elements specified by <paramref name="count"/>. + Otherwise it throws the <see cref="T:System.Exception" /> object + returned by calling <paramref name="errorSelector"/>. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Backsert``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Inserts the elements of a sequence into another sequence at a + specified index from the tail of the sequence, where zero always + represents the last position, one represents the second-last + element, two represents the third-last element and so on. + </summary> + <typeparam name="T"> + Type of elements in all sequences.</typeparam> + <param name="first">The source sequence.</param> + <param name="second">The sequence that will be inserted.</param> + <param name="index"> + The zero-based index from the end of <paramref name="first"/> where + elements from <paramref name="second"/> should be inserted. + <paramref name="second"/>.</param> + <returns> + A sequence that contains the elements of <paramref name="first"/> + plus the elements of <paramref name="second"/> inserted at + the given index from the end of <paramref name="first"/>. + </returns> + <exception cref="T:System.ArgumentNullException"><paramref name="first"/> is null.</exception> + <exception cref="T:System.ArgumentNullException"><paramref name="second"/> is null.</exception> + <exception cref="T:System.ArgumentOutOfRangeException"> + Thrown if <paramref name="index"/> is negative. + </exception> + <exception cref="T:System.ArgumentOutOfRangeException"> + Thrown lazily if <paramref name="index"/> is greater than the + length of <paramref name="first"/>. The validation occurs when + the resulting sequence is iterated. + </exception> + <remarks> + This method uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Batch``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Batches the source sequence into sized buckets. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="size">Size of buckets.</param> + <returns>A sequence of equally sized buckets containing elements of the source collection.</returns> + <remarks> + <para> + This operator uses deferred execution and streams its results + (buckets are streamed but their content buffered).</para> + <para> + When more than one bucket is streamed, all buckets except the last + is guaranteed to have <paramref name="size"/> elements. The last + bucket may be smaller depending on the remaining elements in the + <paramref name="source"/> sequence.</para> + <para> + Each bucket is pre-allocated to <paramref name="size"/> elements. + If <paramref name="size"/> is set to a very large value, e.g. + <see cref="F:System.Int32.MaxValue"/> to effectively disable batching by just + hoping for a single bucket, then it can lead to memory exhaustion + (<see cref="T:System.OutOfMemoryException"/>). + </para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Batch``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Batches the source sequence into sized buckets and applies a projection to each bucket. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <typeparam name="TResult">Type of result returned by <paramref name="resultSelector"/>.</typeparam> + <param name="source">The source sequence.</param> + <param name="size">Size of buckets.</param> + <param name="resultSelector">The projection to apply to each bucket.</param> + <returns>A sequence of projections on equally sized buckets containing elements of the source collection.</returns> + <remarks> + <para> + This operator uses deferred execution and streams its results + (buckets are streamed but their content buffered).</para> + <para> + <para> + When more than one bucket is streamed, all buckets except the last + is guaranteed to have <paramref name="size"/> elements. The last + bucket may be smaller depending on the remaining elements in the + <paramref name="source"/> sequence.</para> + Each bucket is pre-allocated to <paramref name="size"/> elements. + If <paramref name="size"/> is set to a very large value, e.g. + <see cref="F:System.Int32.MaxValue"/> to effectively disable batching by just + hoping for a single bucket, then it can lead to memory exhaustion + (<see cref="T:System.OutOfMemoryException"/>). + </para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Cartesian``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``1,``2})"> + <summary> + Returns the Cartesian product of two sequences by enumerating all + possible combinations of one item from each sequence, and applying + a user-defined projection to the items in a given combination. + </summary> + <typeparam name="T1"> + The type of the elements of <paramref name="first"/>.</typeparam> + <typeparam name="T2"> + The type of the elements of <paramref name="second"/>.</typeparam> + <typeparam name="TResult"> + The type of the elements of the result sequence.</typeparam> + <param name="first">The first sequence of elements.</param> + <param name="second">The second sequence of elements.</param> + <param name="resultSelector">A projection function that combines + elements from all of the sequences.</param> + <returns>A sequence of elements returned by + <paramref name="resultSelector"/>.</returns> + <remarks> + <para> + The method returns items in the same order as a nested foreach + loop, but all sequences except for <paramref name="first"/> are + cached when iterated over. The cache is then re-used for any + subsequent iterations.</para> + <para> + This method uses deferred execution and stream its results.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Cartesian``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Func{``0,``1,``2,``3})"> + <summary> + Returns the Cartesian product of three sequences by enumerating all + possible combinations of one item from each sequence, and applying + a user-defined projection to the items in a given combination. + </summary> + <typeparam name="T1"> + The type of the elements of <paramref name="first"/>.</typeparam> + <typeparam name="T2"> + The type of the elements of <paramref name="second"/>.</typeparam> + <typeparam name="T3"> + The type of the elements of <paramref name="third"/>.</typeparam> + <typeparam name="TResult"> + The type of the elements of the result sequence.</typeparam> + <param name="first">The first sequence of elements.</param> + <param name="second">The second sequence of elements.</param> + <param name="third">The third sequence of elements.</param> + <param name="resultSelector">A projection function that combines + elements from all of the sequences.</param> + <returns>A sequence of elements returned by + <paramref name="resultSelector"/>.</returns> + <remarks> + <para> + The method returns items in the same order as a nested foreach + loop, but all sequences except for <paramref name="first"/> are + cached when iterated over. The cache is then re-used for any + subsequent iterations.</para> + <para> + This method uses deferred execution and stream its results.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Cartesian``5(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Collections.Generic.IEnumerable{``3},System.Func{``0,``1,``2,``3,``4})"> + <summary> + Returns the Cartesian product of four sequences by enumerating all + possible combinations of one item from each sequence, and applying + a user-defined projection to the items in a given combination. + </summary> + <typeparam name="T1"> + The type of the elements of <paramref name="first"/>.</typeparam> + <typeparam name="T2"> + The type of the elements of <paramref name="second"/>.</typeparam> + <typeparam name="T3"> + The type of the elements of <paramref name="third"/>.</typeparam> + <typeparam name="T4"> + The type of the elements of <paramref name="fourth"/>.</typeparam> + <typeparam name="TResult"> + The type of the elements of the result sequence.</typeparam> + <param name="first">The first sequence of elements.</param> + <param name="second">The second sequence of elements.</param> + <param name="third">The third sequence of elements.</param> + <param name="fourth">The fourth sequence of elements.</param> + <param name="resultSelector">A projection function that combines + elements from all of the sequences.</param> + <returns>A sequence of elements returned by + <paramref name="resultSelector"/>.</returns> + <remarks> + <para> + The method returns items in the same order as a nested foreach + loop, but all sequences except for <paramref name="first"/> are + cached when iterated over. The cache is then re-used for any + subsequent iterations.</para> + <para> + This method uses deferred execution and stream its results.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Cartesian``6(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Collections.Generic.IEnumerable{``3},System.Collections.Generic.IEnumerable{``4},System.Func{``0,``1,``2,``3,``4,``5})"> + <summary> + Returns the Cartesian product of five sequences by enumerating all + possible combinations of one item from each sequence, and applying + a user-defined projection to the items in a given combination. + </summary> + <typeparam name="T1"> + The type of the elements of <paramref name="first"/>.</typeparam> + <typeparam name="T2"> + The type of the elements of <paramref name="second"/>.</typeparam> + <typeparam name="T3"> + The type of the elements of <paramref name="third"/>.</typeparam> + <typeparam name="T4"> + The type of the elements of <paramref name="fourth"/>.</typeparam> + <typeparam name="T5"> + The type of the elements of <paramref name="fifth"/>.</typeparam> + <typeparam name="TResult"> + The type of the elements of the result sequence.</typeparam> + <param name="first">The first sequence of elements.</param> + <param name="second">The second sequence of elements.</param> + <param name="third">The third sequence of elements.</param> + <param name="fourth">The fourth sequence of elements.</param> + <param name="fifth">The fifth sequence of elements.</param> + <param name="resultSelector">A projection function that combines + elements from all of the sequences.</param> + <returns>A sequence of elements returned by + <paramref name="resultSelector"/>.</returns> + <remarks> + <para> + The method returns items in the same order as a nested foreach + loop, but all sequences except for <paramref name="first"/> are + cached when iterated over. The cache is then re-used for any + subsequent iterations.</para> + <para> + This method uses deferred execution and stream its results.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Cartesian``7(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Collections.Generic.IEnumerable{``3},System.Collections.Generic.IEnumerable{``4},System.Collections.Generic.IEnumerable{``5},System.Func{``0,``1,``2,``3,``4,``5,``6})"> + <summary> + Returns the Cartesian product of six sequences by enumerating all + possible combinations of one item from each sequence, and applying + a user-defined projection to the items in a given combination. + </summary> + <typeparam name="T1"> + The type of the elements of <paramref name="first"/>.</typeparam> + <typeparam name="T2"> + The type of the elements of <paramref name="second"/>.</typeparam> + <typeparam name="T3"> + The type of the elements of <paramref name="third"/>.</typeparam> + <typeparam name="T4"> + The type of the elements of <paramref name="fourth"/>.</typeparam> + <typeparam name="T5"> + The type of the elements of <paramref name="fifth"/>.</typeparam> + <typeparam name="T6"> + The type of the elements of <paramref name="sixth"/>.</typeparam> + <typeparam name="TResult"> + The type of the elements of the result sequence.</typeparam> + <param name="first">The first sequence of elements.</param> + <param name="second">The second sequence of elements.</param> + <param name="third">The third sequence of elements.</param> + <param name="fourth">The fourth sequence of elements.</param> + <param name="fifth">The fifth sequence of elements.</param> + <param name="sixth">The sixth sequence of elements.</param> + <param name="resultSelector">A projection function that combines + elements from all of the sequences.</param> + <returns>A sequence of elements returned by + <paramref name="resultSelector"/>.</returns> + <remarks> + <para> + The method returns items in the same order as a nested foreach + loop, but all sequences except for <paramref name="first"/> are + cached when iterated over. The cache is then re-used for any + subsequent iterations.</para> + <para> + This method uses deferred execution and stream its results.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Cartesian``8(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Collections.Generic.IEnumerable{``3},System.Collections.Generic.IEnumerable{``4},System.Collections.Generic.IEnumerable{``5},System.Collections.Generic.IEnumerable{``6},System.Func{``0,``1,``2,``3,``4,``5,``6,``7})"> + <summary> + Returns the Cartesian product of seven sequences by enumerating all + possible combinations of one item from each sequence, and applying + a user-defined projection to the items in a given combination. + </summary> + <typeparam name="T1"> + The type of the elements of <paramref name="first"/>.</typeparam> + <typeparam name="T2"> + The type of the elements of <paramref name="second"/>.</typeparam> + <typeparam name="T3"> + The type of the elements of <paramref name="third"/>.</typeparam> + <typeparam name="T4"> + The type of the elements of <paramref name="fourth"/>.</typeparam> + <typeparam name="T5"> + The type of the elements of <paramref name="fifth"/>.</typeparam> + <typeparam name="T6"> + The type of the elements of <paramref name="sixth"/>.</typeparam> + <typeparam name="T7"> + The type of the elements of <paramref name="seventh"/>.</typeparam> + <typeparam name="TResult"> + The type of the elements of the result sequence.</typeparam> + <param name="first">The first sequence of elements.</param> + <param name="second">The second sequence of elements.</param> + <param name="third">The third sequence of elements.</param> + <param name="fourth">The fourth sequence of elements.</param> + <param name="fifth">The fifth sequence of elements.</param> + <param name="sixth">The sixth sequence of elements.</param> + <param name="seventh">The seventh sequence of elements.</param> + <param name="resultSelector">A projection function that combines + elements from all of the sequences.</param> + <returns>A sequence of elements returned by + <paramref name="resultSelector"/>.</returns> + <remarks> + <para> + The method returns items in the same order as a nested foreach + loop, but all sequences except for <paramref name="first"/> are + cached when iterated over. The cache is then re-used for any + subsequent iterations.</para> + <para> + This method uses deferred execution and stream its results.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Cartesian``9(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Collections.Generic.IEnumerable{``3},System.Collections.Generic.IEnumerable{``4},System.Collections.Generic.IEnumerable{``5},System.Collections.Generic.IEnumerable{``6},System.Collections.Generic.IEnumerable{``7},System.Func{``0,``1,``2,``3,``4,``5,``6,``7,``8})"> + <summary> + Returns the Cartesian product of eight sequences by enumerating all + possible combinations of one item from each sequence, and applying + a user-defined projection to the items in a given combination. + </summary> + <typeparam name="T1"> + The type of the elements of <paramref name="first"/>.</typeparam> + <typeparam name="T2"> + The type of the elements of <paramref name="second"/>.</typeparam> + <typeparam name="T3"> + The type of the elements of <paramref name="third"/>.</typeparam> + <typeparam name="T4"> + The type of the elements of <paramref name="fourth"/>.</typeparam> + <typeparam name="T5"> + The type of the elements of <paramref name="fifth"/>.</typeparam> + <typeparam name="T6"> + The type of the elements of <paramref name="sixth"/>.</typeparam> + <typeparam name="T7"> + The type of the elements of <paramref name="seventh"/>.</typeparam> + <typeparam name="T8"> + The type of the elements of <paramref name="eighth"/>.</typeparam> + <typeparam name="TResult"> + The type of the elements of the result sequence.</typeparam> + <param name="first">The first sequence of elements.</param> + <param name="second">The second sequence of elements.</param> + <param name="third">The third sequence of elements.</param> + <param name="fourth">The fourth sequence of elements.</param> + <param name="fifth">The fifth sequence of elements.</param> + <param name="sixth">The sixth sequence of elements.</param> + <param name="seventh">The seventh sequence of elements.</param> + <param name="eighth">The eighth sequence of elements.</param> + <param name="resultSelector">A projection function that combines + elements from all of the sequences.</param> + <returns>A sequence of elements returned by + <paramref name="resultSelector"/>.</returns> + <remarks> + <para> + The method returns items in the same order as a nested foreach + loop, but all sequences except for <paramref name="first"/> are + cached when iterated over. The cache is then re-used for any + subsequent iterations.</para> + <para> + This method uses deferred execution and stream its results.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Choose``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.ValueTuple{System.Boolean,``1}})"> + <summary> + Applies a function to each element of the source sequence and + returns a new sequence of result elements for source elements + where the function returns a couple (2-tuple) having a <c>true</c> + as its first element and result as the second. + </summary> + <typeparam name="T"> + The type of the elements in <paramref name="source"/>.</typeparam> + <typeparam name="TResult"> + The type of the elements in the returned sequence.</typeparam> + <param name="source"> The source sequence.</param> + <param name="chooser">The function that is applied to each source + element.</param> + <returns>A sequence <typeparamref name="TResult"/> elements.</returns> + <remarks> + This method uses deferred execution semantics and streams its + results. + </remarks> + <example> + <code><![CDATA[ + var str = "O,l,2,3,4,S,6,7,B,9"; + var xs = str.Split(',').Choose(s => (int.TryParse(s, out var n), n)); + ]]></code> + The <c>xs</c> variable will be a sequence of the integers 2, 3, 4, + 6, 7 and 9. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.Consume``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Completely consumes the given sequence. This method uses immediate execution, + and doesn't store any data during execution. + </summary> + <typeparam name="T">Element type of the sequence</typeparam> + <param name="source">Source to consume</param> + </member> + <member name="M:MoreLinq.MoreEnumerable.CountBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Applies a key-generating function to each element of a sequence and returns a sequence of + unique keys and their number of occurrences in the original sequence. + </summary> + <typeparam name="TSource">Type of the elements of the source sequence.</typeparam> + <typeparam name="TKey">Type of the projected element.</typeparam> + <param name="source">Source sequence.</param> + <param name="keySelector">Function that transforms each item of source sequence into a key to be compared against the others.</param> + <returns>A sequence of unique keys and their number of occurrences in the original sequence.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.CountBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Applies a key-generating function to each element of a sequence and returns a sequence of + unique keys and their number of occurrences in the original sequence. + An additional argument specifies a comparer to use for testing equivalence of keys. + </summary> + <typeparam name="TSource">Type of the elements of the source sequence.</typeparam> + <typeparam name="TKey">Type of the projected element.</typeparam> + <param name="source">Source sequence.</param> + <param name="keySelector">Function that transforms each item of source sequence into a key to be compared against the others.</param> + <param name="comparer">The equality comparer to use to determine whether or not keys are equal. + If null, the default equality comparer for <typeparamref name="TSource"/> is used.</param> + <returns>A sequence of unique keys and their number of occurrences in the original sequence.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.CountDown``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,System.Nullable{System.Int32},``1})"> + <summary> + Provides a countdown counter for a given count of elements at the + tail of the sequence where zero always represents the last element, + one represents the second-last element, two represents the + third-last element and so on. + </summary> + <typeparam name="T"> + The type of elements of <paramref name="source"/></typeparam> + <typeparam name="TResult"> + The type of elements of the resulting sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="count">Count of tail elements of + <paramref name="source"/> to count down.</param> + <param name="resultSelector"> + A function that receives the element and the current countdown + value for the element and which returns those mapped to a + result returned in the resulting sequence. For elements before + the last <paramref name="count"/>, the countdown value is + <c>null</c>.</param> + <returns> + A sequence of results returned by + <paramref name="resultSelector"/>.</returns> + <remarks> + This method uses deferred execution semantics and streams its + results. At most, <paramref name="count"/> elements of the source + sequence may be buffered at any one time unless + <paramref name="source"/> is a collection or a list. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.AtLeast``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Determines whether or not the number of elements in the sequence is greater than + or equal to the given integer. + </summary> + <typeparam name="T">Element type of sequence</typeparam> + <param name="source">The source sequence</param> + <param name="count">The minimum number of items a sequence must have for this + function to return true</param> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null</exception> + <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="count"/> is negative</exception> + <returns><c>true</c> if the number of elements in the sequence is greater than + or equal to the given integer or <c>false</c> otherwise.</returns> + <example> + <code><![CDATA[ + var numbers = new[] { 123, 456, 789 }; + var result = numbers.AtLeast(2); + ]]></code> + The <c>result</c> variable will contain <c>true</c>. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.AtMost``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Determines whether or not the number of elements in the sequence is lesser than + or equal to the given integer. + </summary> + <typeparam name="T">Element type of sequence</typeparam> + <param name="source">The source sequence</param> + <param name="count">The maximum number of items a sequence must have for this + function to return true</param> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null</exception> + <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="count"/> is negative</exception> + <returns><c>true</c> if the number of elements in the sequence is lesser than + or equal to the given integer or <c>false</c> otherwise.</returns> + <example> + <code><![CDATA[ + var numbers = new[] { 123, 456, 789 }; + var result = numbers.AtMost(2); + ]]></code> + The <c>result</c> variable will contain <c>false</c>. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.Exactly``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Determines whether or not the number of elements in the sequence is equals to the given integer. + </summary> + <typeparam name="T">Element type of sequence</typeparam> + <param name="source">The source sequence</param> + <param name="count">The exactly number of items a sequence must have for this + function to return true</param> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null</exception> + <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="count"/> is negative</exception> + <returns><c>true</c> if the number of elements in the sequence is equals + to the given integer or <c>false</c> otherwise.</returns> + <example> + <code><![CDATA[ + var numbers = new[] { 123, 456, 789 }; + var result = numbers.Exactly(3); + ]]></code> + The <c>result</c> variable will contain <c>true</c>. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.CountBetween``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Int32)"> + <summary> + Determines whether or not the number of elements in the sequence is between + an inclusive range of minimum and maximum integers. + </summary> + <typeparam name="T">Element type of sequence</typeparam> + <param name="source">The source sequence</param> + <param name="min">The minimum number of items a sequence must have for this + function to return true</param> + <param name="max">The maximum number of items a sequence must have for this + function to return true</param> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null</exception> + <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="min"/> is negative or <paramref name="max"/> is less than min</exception> + <returns><c>true</c> if the number of elements in the sequence is between (inclusive) + the min and max given integers or <c>false</c> otherwise.</returns> + <example> + <code><![CDATA[ + var numbers = new[] { 123, 456, 789 }; + var result = numbers.CountBetween(1, 2); + ]]></code> + The <c>result</c> variable will contain <c>false</c>. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.CompareCount``2(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1})"> + <summary> + Compares two sequences and returns an integer that indicates whether the first sequence + has fewer, the same or more elements than the second sequence. + </summary> + <typeparam name="TFirst">Element type of the first sequence</typeparam> + <typeparam name="TSecond">Element type of the second sequence</typeparam> + <param name="first">The first sequence</param> + <param name="second">The second sequence</param> + <exception cref="T:System.ArgumentNullException"><paramref name="first"/> is null</exception> + <exception cref="T:System.ArgumentNullException"><paramref name="second"/> is null</exception> + <returns><c>-1</c> if the first sequence has the fewest elements, <c>0</c> if the two sequences have the same number of elements + or <c>1</c> if the first sequence has the most elements.</returns> + <example> + <code><![CDATA[ + var first = new[] { 123, 456 }; + var second = new[] { 789 }; + var result = first.CompareCount(second); + ]]></code> + The <c>result</c> variable will contain <c>1</c>. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.DistinctBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Returns all distinct elements of the given source, where "distinctness" + is determined via a projection and the default equality comparer for the projected type. + </summary> + <remarks> + This operator uses deferred execution and streams the results, although + a set of already-seen keys is retained. If a key is seen multiple times, + only the first element with that key is returned. + </remarks> + <typeparam name="TSource">Type of the source sequence</typeparam> + <typeparam name="TKey">Type of the projected element</typeparam> + <param name="source">Source sequence</param> + <param name="keySelector">Projection for determining "distinctness"</param> + <returns>A sequence consisting of distinct elements from the source sequence, + comparing them by the specified key projection.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.DistinctBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Returns all distinct elements of the given source, where "distinctness" + is determined via a projection and the specified comparer for the projected type. + </summary> + <remarks> + This operator uses deferred execution and streams the results, although + a set of already-seen keys is retained. If a key is seen multiple times, + only the first element with that key is returned. + </remarks> + <typeparam name="TSource">Type of the source sequence</typeparam> + <typeparam name="TKey">Type of the projected element</typeparam> + <param name="source">Source sequence</param> + <param name="keySelector">Projection for determining "distinctness"</param> + <param name="comparer">The equality comparer to use to determine whether or not keys are equal. + If null, the default equality comparer for <c>TSource</c> is used.</param> + <returns>A sequence consisting of distinct elements from the source sequence, + comparing them by the specified key projection.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.EndsWith``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0})"> + <summary> + Determines whether the end of the first sequence is equivalent to + the second sequence, using the default equality comparer. + </summary> + <typeparam name="T">Type of elements.</typeparam> + <param name="first">The sequence to check.</param> + <param name="second">The sequence to compare to.</param> + <returns> + <c>true</c> if <paramref name="first" /> ends with elements + equivalent to <paramref name="second" />. + </returns> + <remarks> + This is the <see cref="T:System.Collections.Generic.IEnumerable`1" /> equivalent of + <see cref="M:System.String.EndsWith(System.String)" /> and + it calls <see cref="M:System.Collections.Generic.IEqualityComparer`1.Equals(`0,`0)" /> using + <see cref="P:System.Collections.Generic.EqualityComparer`1.Default" /> on pairs of elements at + the same index. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.EndsWith``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Determines whether the end of the first sequence is equivalent to + the second sequence, using the specified element equality comparer. + </summary> + <typeparam name="T">Type of elements.</typeparam> + <param name="first">The sequence to check.</param> + <param name="second">The sequence to compare to.</param> + <param name="comparer">Equality comparer to use.</param> + <returns> + <c>true</c> if <paramref name="first" /> ends with elements + equivalent to <paramref name="second" />. + </returns> + <remarks> + This is the <see cref="T:System.Collections.Generic.IEnumerable`1" /> equivalent of + <see cref="M:System.String.EndsWith(System.String)" /> and it calls + <see cref="M:System.Collections.Generic.IEqualityComparer`1.Equals(`0,`0)" /> on pairs of + elements at the same index. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.EquiZip``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``1,``2})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. An exception is thrown + if the input sequences are of different lengths. + </summary> + <typeparam name="TFirst">Type of elements in first sequence.</typeparam> + <typeparam name="TSecond">Type of elements in second sequence.</typeparam> + <typeparam name="TResult">Type of elements in result sequence.</typeparam> + <param name="first">The first sequence.</param> + <param name="second">The second sequence.</param> + <param name="resultSelector"> + Function to apply to each pair of elements.</param> + <returns> + A sequence that contains elements of the two input sequences, + combined by <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.InvalidOperationException"> + The input sequences are of different lengths. + </exception> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, or <paramref + name="resultSelector"/> is <see langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var numbers = new[] { 1, 2, 3, 4 }; + var letters = new[] { "A", "B", "C", "D" }; + var zipped = numbers.EquiZip(letters, (n, l) => n + l); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield "1A", + "2B", "3C", "4D" in turn. + </example> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.EquiZip``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Func{``0,``1,``2,``3})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. An exception is thrown + if the input sequences are of different lengths. + </summary> + <typeparam name="T1">Type of elements in first sequence.</typeparam> + <typeparam name="T2">Type of elements in second sequence.</typeparam> + <typeparam name="T3">Type of elements in third sequence.</typeparam> + <typeparam name="TResult">Type of elements in result sequence.</typeparam> + <param name="first">The first sequence.</param> + <param name="second">The second sequence.</param> + <param name="third">The third sequence.</param> + <param name="resultSelector"> + Function to apply to each triplet of elements.</param> + <returns> + A sequence that contains elements of the three input sequences, + combined by <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.InvalidOperationException"> + The input sequences are of different lengths. + </exception> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, <paramref + name="third"/>, or <paramref name="resultSelector"/> is <see + langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var numbers = new[] { 1, 2, 3, 4 }; + var letters = new[] { "A", "B", "C", "D" }; + var chars = new[] { 'a', 'b', 'c', 'd' }; + var zipped = numbers.EquiZip(letters, chars, (n, l, c) => n + l + c); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield "1Aa", + "2Bb", "3Cc", "4Dd" in turn. + </example> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.EquiZip``5(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Collections.Generic.IEnumerable{``3},System.Func{``0,``1,``2,``3,``4})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. An exception is thrown + if the input sequences are of different lengths. + </summary> + <typeparam name="T1">Type of elements in first sequence</typeparam> + <typeparam name="T2">Type of elements in second sequence</typeparam> + <typeparam name="T3">Type of elements in third sequence</typeparam> + <typeparam name="T4">Type of elements in fourth sequence</typeparam> + <typeparam name="TResult">Type of elements in result sequence</typeparam> + <param name="first">The first sequence.</param> + <param name="second">The second sequence.</param> + <param name="third">The third sequence.</param> + <param name="fourth">The fourth sequence.</param> + <param name="resultSelector"> + Function to apply to each quadruplet of elements.</param> + <returns> + A sequence that contains elements of the four input sequences, + combined by <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.InvalidOperationException"> + The input sequences are of different lengths. + </exception> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, <paramref + name="third"/>, <paramref name="fourth"/>, or <paramref + name="resultSelector"/> is <see langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var numbers = new[] { 1, 2, 3, 4 }; + var letters = new[] { "A", "B", "C", "D" }; + var chars = new[] { 'a', 'b', 'c', 'd' }; + var flags = new[] { true, false, true, false }; + var zipped = numbers.EquiZip(letters, chars, flags, (n, l, c, f) => n + l + c + f); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield "1AaTrue", + "2BbFalse", "3CcTrue", "4DdFalse" in turn. + </example> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Evaluate``1(System.Collections.Generic.IEnumerable{System.Func{``0}})"> + <summary> + Returns a sequence containing the values resulting from invoking (in order) each function in the source sequence of functions. + </summary> + <remarks> + This operator uses deferred execution and streams the results. + If the resulting sequence is enumerated multiple times, the functions will be + evaluated multiple times too. + </remarks> + <typeparam name="T">The type of the object returned by the functions.</typeparam> + <param name="functions">The functions to evaluate.</param> + <returns>A sequence with results from invoking <paramref name="functions"/>.</returns> + <exception cref="T:System.ArgumentNullException">When <paramref name="functions"/> is <c>null</c>.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.ExceptBy``2(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Returns the set of elements in the first sequence which aren't + in the second sequence, according to a given key selector. + </summary> + <remarks> + This is a set operation; if multiple elements in <paramref name="first"/> have + equal keys, only the first such element is returned. + This operator uses deferred execution and streams the results, although + a set of keys from <paramref name="second"/> is immediately selected and retained. + </remarks> + <typeparam name="TSource">The type of the elements in the input sequences.</typeparam> + <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam> + <param name="first">The sequence of potentially included elements.</param> + <param name="second">The sequence of elements whose keys may prevent elements in + <paramref name="first"/> from being returned.</param> + <param name="keySelector">The mapping from source element to key.</param> + <returns>A sequence of elements from <paramref name="first"/> whose key was not also a key for + any element in <paramref name="second"/>.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.ExceptBy``2(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Returns the set of elements in the first sequence which aren't + in the second sequence, according to a given key selector. + </summary> + <remarks> + This is a set operation; if multiple elements in <paramref name="first"/> have + equal keys, only the first such element is returned. + This operator uses deferred execution and streams the results, although + a set of keys from <paramref name="second"/> is immediately selected and retained. + </remarks> + <typeparam name="TSource">The type of the elements in the input sequences.</typeparam> + <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam> + <param name="first">The sequence of potentially included elements.</param> + <param name="second">The sequence of elements whose keys may prevent elements in + <paramref name="first"/> from being returned.</param> + <param name="keySelector">The mapping from source element to key.</param> + <param name="keyComparer">The equality comparer to use to determine whether or not keys are equal. + If null, the default equality comparer for <c>TSource</c> is used.</param> + <returns>A sequence of elements from <paramref name="first"/> whose key was not also a key for + any element in <paramref name="second"/>.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Exclude``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Int32)"> + <summary> + Excludes a contiguous number of elements from a sequence starting + at a given index. + </summary> + <typeparam name="T">The type of the elements of the sequence</typeparam> + <param name="sequence">The sequence to exclude elements from</param> + <param name="startIndex">The zero-based index at which to begin excluding elements</param> + <param name="count">The number of elements to exclude</param> + <returns>A sequence that excludes the specified portion of elements</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.FallbackIfEmpty``1(System.Collections.Generic.IEnumerable{``0},``0)"> + <summary> + Returns the elements of the specified sequence or the specified + value in a singleton collection if the sequence is empty. + </summary> + <typeparam name="T">The type of the elements in the sequences.</typeparam> + <param name="source">The source sequence.</param> + <param name="fallback">The value to return in a singleton + collection if <paramref name="source"/> is empty.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <paramref name="fallback"/> + if <paramref name="source"/> is empty; otherwise, <paramref name="source"/>. + </returns> + <example> + <code><![CDATA[ + var numbers = new[] { 123, 456, 789 }; + var result = numbers.Where(x => x == 100).FallbackIfEmpty(-1).Single(); + ]]></code> + The <c>result</c> variable will contain <c>-1</c>. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.FallbackIfEmpty``1(System.Collections.Generic.IEnumerable{``0},``0,``0)"> + <summary> + Returns the elements of a sequence, but if it is empty then + returns an alternate sequence of values. + </summary> + <typeparam name="T">The type of the elements in the sequences.</typeparam> + <param name="source">The source sequence.</param> + <param name="fallback1">First value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <param name="fallback2">Second value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that containing fallback values + if <paramref name="source"/> is empty; otherwise, <paramref name="source"/>. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.FallbackIfEmpty``1(System.Collections.Generic.IEnumerable{``0},``0,``0,``0)"> + <summary> + Returns the elements of a sequence, but if it is empty then + returns an alternate sequence of values. + </summary> + <typeparam name="T">The type of the elements in the sequences.</typeparam> + <param name="source">The source sequence.</param> + <param name="fallback1">First value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <param name="fallback2">Second value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <param name="fallback3">Third value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that containing fallback values + if <paramref name="source"/> is empty; otherwise, <paramref name="source"/>. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.FallbackIfEmpty``1(System.Collections.Generic.IEnumerable{``0},``0,``0,``0,``0)"> + <summary> + Returns the elements of a sequence, but if it is empty then + returns an alternate sequence of values. + </summary> + <typeparam name="T">The type of the elements in the sequences.</typeparam> + <param name="source">The source sequence.</param> + <param name="fallback1">First value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <param name="fallback2">Second value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <param name="fallback3">Third value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <param name="fallback4">Fourth value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that containing fallback values + if <paramref name="source"/> is empty; otherwise, <paramref name="source"/>. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.FallbackIfEmpty``1(System.Collections.Generic.IEnumerable{``0},``0[])"> + <summary> + Returns the elements of a sequence, but if it is empty then + returns an alternate sequence from an array of values. + </summary> + <typeparam name="T">The type of the elements in the sequences.</typeparam> + <param name="source">The source sequence.</param> + <param name="fallback">The array that is returned as the alternate + sequence if <paramref name="source"/> is empty.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that containing fallback values + if <paramref name="source"/> is empty; otherwise, <paramref name="source"/>. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.FallbackIfEmpty``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0})"> + <summary> + Returns the elements of a sequence, but if it is empty then + returns an alternate sequence of values. + </summary> + <typeparam name="T">The type of the elements in the sequences.</typeparam> + <param name="source">The source sequence.</param> + <param name="fallback">The alternate sequence that is returned + if <paramref name="source"/> is empty.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that containing fallback values + if <paramref name="source"/> is empty; otherwise, <paramref name="source"/>. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.FillBackward``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Returns a sequence with each null reference or value in the source + replaced with the following non-null reference or value in + that sequence. + </summary> + <param name="source">The source sequence.</param> + <typeparam name="T">Type of the elements in the source sequence.</typeparam> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> with null references or values + replaced. + </returns> + <remarks> + This method uses deferred execution semantics and streams its + results. If references or values are null at the end of the + sequence then they remain null. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.FillBackward``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean})"> + <summary> + Returns a sequence with each missing element in the source replaced + with the following non-missing element in that sequence. An + additional parameter specifies a function used to determine if an + element is considered missing or not. + </summary> + <param name="source">The source sequence.</param> + <param name="predicate">The function used to determine if + an element in the sequence is considered missing.</param> + <typeparam name="T">Type of the elements in the source sequence.</typeparam> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> with missing values replaced. + </returns> + <remarks> + This method uses deferred execution semantics and streams its + results. If elements are missing at the end of the sequence then + they remain missing. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.FillBackward``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean},System.Func{``0,``0,``0})"> + <summary> + Returns a sequence with each missing element in the source replaced + with the following non-missing element in that sequence. Additional + parameters specify two functions, one used to determine if an + element is considered missing or not and another to provide the + replacement for the missing element. + </summary> + <param name="source">The source sequence.</param> + <param name="predicate">The function used to determine if + an element in the sequence is considered missing.</param> + <param name="fillSelector">The function used to produce the element + that will replace the missing one. Its first argument receives the + current element considered missing while the second argument + receives the next non-missing element.</param> + <typeparam name="T">Type of the elements in the source sequence.</typeparam> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> with missing values replaced. + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> with missing elements filled. + </returns> + <remarks> + This method uses deferred execution semantics and streams its + results. If elements are missing at the end of the sequence then + they remain missing. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.FillForward``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Returns a sequence with each null reference or value in the source + replaced with the previous non-null reference or value seen in + that sequence. + </summary> + <param name="source">The source sequence.</param> + <typeparam name="T">Type of the elements in the source sequence.</typeparam> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> with null references or values + replaced. + </returns> + <remarks> + This method uses deferred execution semantics and streams its + results. If references or values are null at the start of the + sequence then they remain null. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.FillForward``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean})"> + <summary> + Returns a sequence with each missing element in the source replaced + with the previous non-missing element seen in that sequence. An + additional parameter specifies a function used to determine if an + element is considered missing or not. + </summary> + <param name="source">The source sequence.</param> + <param name="predicate">The function used to determine if + an element in the sequence is considered missing.</param> + <typeparam name="T">Type of the elements in the source sequence.</typeparam> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> with missing values replaced. + </returns> + <remarks> + This method uses deferred execution semantics and streams its + results. If elements are missing at the start of the sequence then + they remain missing. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.FillForward``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean},System.Func{``0,``0,``0})"> + <summary> + Returns a sequence with each missing element in the source replaced + with one based on the previous non-missing element seen in that + sequence. Additional parameters specify two functions, one used to + determine if an element is considered missing or not and another + to provide the replacement for the missing element. + </summary> + <param name="source">The source sequence.</param> + <param name="predicate">The function used to determine if + an element in the sequence is considered missing.</param> + <param name="fillSelector">The function used to produce the element + that will replace the missing one. Its first argument receives the + current element considered missing while the second argument + receives the previous non-missing element.</param> + <typeparam name="T">Type of the elements in the source sequence.</typeparam> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> with missing values replaced. + </returns> + <remarks> + This method uses deferred execution semantics and streams its + results. If elements are missing at the start of the sequence then + they remain missing. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Flatten(System.Collections.IEnumerable)"> + <summary> + Flattens a sequence containing arbitrarily-nested sequences. + </summary> + <param name="source">The sequence that will be flattened.</param> + <returns> + A sequence that contains the elements of <paramref name="source"/> + and all nested sequences (except strings). + </returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Flatten(System.Collections.IEnumerable,System.Func{System.Collections.IEnumerable,System.Boolean})"> + <summary> + Flattens a sequence containing arbitrarily-nested sequences. An + additional parameter specifies a predicate function used to + determine whether a nested <see cref="T:System.Collections.IEnumerable"/> should be + flattened or not. + </summary> + <param name="source">The sequence that will be flattened.</param> + <param name="predicate"> + A function that receives each element that implements + <see cref="T:System.Collections.IEnumerable"/> and indicates if its elements should be + recursively flattened into the resulting sequence. + </param> + <returns> + A sequence that contains the elements of <paramref name="source"/> + and all nested sequences for which the predicate function + returned <c>true</c>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> is <c>null</c>.</exception> + <exception cref="T:System.ArgumentNullException"> + <paramref name="predicate"/> is <c>null</c>.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Flatten(System.Collections.IEnumerable,System.Func{System.Object,System.Collections.IEnumerable})"> + <summary> + Flattens a sequence containing arbitrarily-nested sequences. An + additional parameter specifies a function that projects an inner + sequence via a property of an object. + </summary> + <param name="source">The sequence that will be flattened.</param> + <param name="selector"> + A function that receives each element of the sequence as an object + and projects an inner sequence to be flattened. If the function + returns <c>null</c> then the object argument is considered a leaf + of the flattening process. + </param> + <returns> + A sequence that contains the elements of <paramref name="source"/> + and all nested sequences projected via the + <paramref name="selector"/> function. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> is <c>null</c>.</exception> + <exception cref="T:System.ArgumentNullException"> + <paramref name="selector"/> is <c>null</c>.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 1 element. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 1 element.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 2 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 2 elements.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 3 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 3 elements.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 4 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 4 elements.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 5 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 5 elements.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 6 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 6 elements.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 7 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 7 elements.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 8 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 8 elements.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 9 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 9 elements.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 10 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 10 elements.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 11 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 11 elements.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 12 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 12 elements.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 13 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 13 elements.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 14 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 14 elements.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 15 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 15 elements.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 16 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 16 elements.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Action{``0})"> + <summary> + Immediately executes the given action on each element in the source sequence. + </summary> + <typeparam name="T">The type of the elements in the sequence</typeparam> + <param name="source">The sequence of elements</param> + <param name="action">The action to execute on each element</param> + </member> + <member name="M:MoreLinq.MoreEnumerable.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Action{``0,System.Int32})"> + <summary> + Immediately executes the given action on each element in the source sequence. + Each element's index is used in the logic of the action. + </summary> + <typeparam name="T">The type of the elements in the sequence</typeparam> + <param name="source">The sequence of elements</param> + <param name="action">The action to execute on each element; the second parameter + of the action represents the index of the source element.</param> + </member> + <member name="M:MoreLinq.MoreEnumerable.From``1(System.Func{``0})"> + <summary> + Returns a single-element sequence containing the result of invoking the function. + </summary> + <remarks> + This operator uses deferred execution and streams the results. + If the resulting sequence is enumerated multiple times, the function will be + invoked multiple times too. + </remarks> + <typeparam name="T">The type of the object returned by the function.</typeparam> + <param name="function">The function to evaluate.</param> + <returns>A sequence with the value resulting from invoking <paramref name="function"/>.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.From``1(System.Func{``0},System.Func{``0})"> + <summary> + Returns a sequence containing the result of invoking each parameter function in order. + </summary> + <remarks> + This operator uses deferred execution and streams the results. + If the resulting sequence is enumerated multiple times, the functions will be + invoked multiple times too. + </remarks> + <typeparam name="T">The type of the object returned by the functions.</typeparam> + <param name="function1">The first function to evaluate.</param> + <param name="function2">The second function to evaluate.</param> + <returns>A sequence with the values resulting from invoking <paramref name="function1"/> and <paramref name="function2"/>.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.From``1(System.Func{``0},System.Func{``0},System.Func{``0})"> + <summary> + Returns a sequence containing the result of invoking each parameter function in order. + </summary> + <remarks> + This operator uses deferred execution and streams the results. + If the resulting sequence is enumerated multiple times, the functions will be + invoked multiple times too. + </remarks> + <typeparam name="T">The type of the object returned by the functions.</typeparam> + <param name="function1">The first function to evaluate.</param> + <param name="function2">The second function to evaluate.</param> + <param name="function3">The third function to evaluate.</param> + <returns>A sequence with the values resulting from invoking <paramref name="function1"/>, <paramref name="function2"/> and <paramref name="function3"/>.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.From``1(System.Func{``0}[])"> + <summary> + Returns a sequence containing the values resulting from invoking (in order) each function in the source sequence of functions. + </summary> + <remarks> + This operator uses deferred execution and streams the results. + If the resulting sequence is enumerated multiple times, the functions will be + invoked multiple times too. + </remarks> + <typeparam name="T">The type of the object returned by the functions.</typeparam> + <param name="functions">The functions to evaluate.</param> + <returns>A sequence with the values resulting from invoking all of the <paramref name="functions"/>.</returns> + <exception cref="T:System.ArgumentNullException">When <paramref name="functions"/> is <c>null</c>.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.FullGroupJoin``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2})"> + <summary> + Performs a Full Group Join between the <paramref name="first"/> and <paramref name="second"/> sequences. + </summary> + <remarks> + This operator uses deferred execution and streams the results. + The results are yielded in the order of the elements found in the first sequence + followed by those found only in the second. In addition, the callback responsible + for projecting the results is supplied with sequences which preserve their source order. + </remarks> + <typeparam name="TFirst">The type of the elements in the first input sequence</typeparam> + <typeparam name="TSecond">The type of the elements in the second input sequence</typeparam> + <typeparam name="TKey">The type of the key to use to join</typeparam> + <param name="first">First sequence</param> + <param name="second">Second sequence</param> + <param name="firstKeySelector">The mapping from first sequence to key</param> + <param name="secondKeySelector">The mapping from second sequence to key</param> + <returns>A sequence of elements joined from <paramref name="first"/> and <paramref name="second"/>. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.FullGroupJoin``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Collections.Generic.IEqualityComparer{``2})"> + <summary> + Performs a Full Group Join between the <paramref name="first"/> and <paramref name="second"/> sequences. + </summary> + <remarks> + This operator uses deferred execution and streams the results. + The results are yielded in the order of the elements found in the first sequence + followed by those found only in the second. In addition, the callback responsible + for projecting the results is supplied with sequences which preserve their source order. + </remarks> + <typeparam name="TFirst">The type of the elements in the first input sequence</typeparam> + <typeparam name="TSecond">The type of the elements in the second input sequence</typeparam> + <typeparam name="TKey">The type of the key to use to join</typeparam> + <param name="first">First sequence</param> + <param name="second">Second sequence</param> + <param name="firstKeySelector">The mapping from first sequence to key</param> + <param name="secondKeySelector">The mapping from second sequence to key</param> + <param name="comparer">The equality comparer to use to determine whether or not keys are equal. + If null, the default equality comparer for <c>TKey</c> is used.</param> + <returns>A sequence of elements joined from <paramref name="first"/> and <paramref name="second"/>. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.FullGroupJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``2,System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},``3})"> + <summary> + Performs a full group-join between two sequences. + </summary> + <remarks> + This operator uses deferred execution and streams the results. + The results are yielded in the order of the elements found in the first sequence + followed by those found only in the second. In addition, the callback responsible + for projecting the results is supplied with sequences which preserve their source order. + </remarks> + <typeparam name="TFirst">The type of the elements in the first input sequence</typeparam> + <typeparam name="TSecond">The type of the elements in the second input sequence</typeparam> + <typeparam name="TKey">The type of the key to use to join</typeparam> + <typeparam name="TResult">The type of the elements of the resulting sequence</typeparam> + <param name="first">First sequence</param> + <param name="second">Second sequence</param> + <param name="firstKeySelector">The mapping from first sequence to key</param> + <param name="secondKeySelector">The mapping from second sequence to key</param> + <param name="resultSelector">Function to apply to each pair of elements plus the key</param> + <returns>A sequence of elements joined from <paramref name="first"/> and <paramref name="second"/>. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.FullGroupJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``2,System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},``3},System.Collections.Generic.IEqualityComparer{``2})"> + <summary> + Performs a full group-join between two sequences. + </summary> + <remarks> + This operator uses deferred execution and streams the results. + The results are yielded in the order of the elements found in the first sequence + followed by those found only in the second. In addition, the callback responsible + for projecting the results is supplied with sequences which preserve their source order. + </remarks> + <typeparam name="TFirst">The type of the elements in the first input sequence</typeparam> + <typeparam name="TSecond">The type of the elements in the second input sequence</typeparam> + <typeparam name="TKey">The type of the key to use to join</typeparam> + <typeparam name="TResult">The type of the elements of the resulting sequence</typeparam> + <param name="first">First sequence</param> + <param name="second">Second sequence</param> + <param name="firstKeySelector">The mapping from first sequence to key</param> + <param name="secondKeySelector">The mapping from second sequence to key</param> + <param name="resultSelector">Function to apply to each pair of elements plus the key</param> + <param name="comparer">The equality comparer to use to determine whether or not keys are equal. + If null, the default equality comparer for <c>TKey</c> is used.</param> + <returns>A sequence of elements joined from <paramref name="first"/> and <paramref name="second"/>. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.FullJoin``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``0,``2},System.Func{``0,``0,``2})"> + <summary> + Performs a full outer join on two homogeneous sequences. + Additional arguments specify key selection functions and result + projection functions. + </summary> + <typeparam name="TSource"> + The type of elements in the source sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector function.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence to join fully.</param> + <param name="second"> + The second sequence to join fully.</param> + <param name="keySelector"> + Function that projects the key given an element of one of the + sequences to join.</param> + <param name="firstSelector"> + Function that projects the result given just an element from + <paramref name="first"/> where there is no corresponding element + in <paramref name="second"/>.</param> + <param name="secondSelector"> + Function that projects the result given just an element from + <paramref name="second"/> where there is no corresponding element + in <paramref name="first"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <returns>A sequence containing results projected from a full + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.FullJoin``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``0,``2},System.Func{``0,``0,``2},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Performs a full outer join on two homogeneous sequences. + Additional arguments specify key selection functions, result + projection functions and a key comparer. + </summary> + <typeparam name="TSource"> + The type of elements in the source sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector function.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence to join fully.</param> + <param name="second"> + The second sequence to join fully.</param> + <param name="keySelector"> + Function that projects the key given an element of one of the + sequences to join.</param> + <param name="firstSelector"> + Function that projects the result given just an element from + <paramref name="first"/> where there is no corresponding element + in <paramref name="second"/>.</param> + <param name="secondSelector"> + Function that projects the result given just an element from + <paramref name="second"/> where there is no corresponding element + in <paramref name="first"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <param name="comparer"> + The <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> instance used to compare + keys for equality.</param> + <returns>A sequence containing results projected from a full + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.FullJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``3},System.Func{``1,``3},System.Func{``0,``1,``3})"> + <summary> + Performs a full outer join on two heterogeneous sequences. + Additional arguments specify key selection functions and result + projection functions. + </summary> + <typeparam name="TFirst"> + The type of elements in the first sequence.</typeparam> + <typeparam name="TSecond"> + The type of elements in the second sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector functions.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence to join fully.</param> + <param name="second"> + The second sequence to join fully.</param> + <param name="firstKeySelector"> + Function that projects the key given an element from <paramref name="first"/>.</param> + <param name="secondKeySelector"> + Function that projects the key given an element from <paramref name="second"/>.</param> + <param name="firstSelector"> + Function that projects the result given just an element from + <paramref name="first"/> where there is no corresponding element + in <paramref name="second"/>.</param> + <param name="secondSelector"> + Function that projects the result given just an element from + <paramref name="second"/> where there is no corresponding element + in <paramref name="first"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <returns>A sequence containing results projected from a full + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.FullJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``3},System.Func{``1,``3},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})"> + <summary> + Performs a full outer join on two heterogeneous sequences. + Additional arguments specify key selection functions, result + projection functions and a key comparer. + </summary> + <typeparam name="TFirst"> + The type of elements in the first sequence.</typeparam> + <typeparam name="TSecond"> + The type of elements in the second sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector functions.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence to join fully.</param> + <param name="second"> + The second sequence to join fully.</param> + <param name="firstKeySelector"> + Function that projects the key given an element from <paramref name="first"/>.</param> + <param name="secondKeySelector"> + Function that projects the key given an element from <paramref name="second"/>.</param> + <param name="firstSelector"> + Function that projects the result given just an element from + <paramref name="first"/> where there is no corresponding element + in <paramref name="second"/>.</param> + <param name="secondSelector"> + Function that projects the result given just an element from + <paramref name="second"/> where there is no corresponding element + in <paramref name="first"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <param name="comparer"> + The <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> instance used to compare + keys for equality.</param> + <returns>A sequence containing results projected from a full + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Generate``1(``0,System.Func{``0,``0})"> + <summary> + Returns a sequence of values consecutively generated by a generator function. + </summary> + <typeparam name="TResult">Type of elements to generate.</typeparam> + <param name="initial">Value of first element in sequence</param> + <param name="generator"> + Generator function which takes the previous series element and uses it to generate the next element. + </param> + <returns>A sequence containing the generated values.</returns> + <remarks> + This function defers element generation until needed and streams the results. + </remarks> + <example> + <code><![CDATA[ + var result = MoreEnumerable.Generate(2, n => n * n).Take(5); + ]]></code> + The <c>result</c> variable, when iterated over, will yield 2, 4, 16, 256, and 65536, in turn. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.GenerateByIndex``1(System.Func{System.Int32,``0})"> + <summary> + Returns a sequence of values based on indexes. + </summary> + <typeparam name="TResult"> + The type of the value returned by <paramref name="generator"/> + and therefore the elements of the generated sequence.</typeparam> + <param name="generator"> + Generation function to apply to each index.</param> + <returns>A sequence of generated results.</returns> + <remarks> + <para> + The sequence is (practically) infinite where the index ranges from + zero to <see cref="F:System.Int32.MaxValue"/> inclusive.</para> + <para> + This function defers execution and streams the results.</para> + </remarks> + </member> + <member name="T:MoreLinq.MoreEnumerable.GlobalRandom"> + <remarks> + <see cref="T:System.Random"/> is not thread-safe so the following + implementation uses thread-local <see cref="T:System.Random"/> + instances to create the illusion of a global + <see cref="T:System.Random"/> implementation. For some background, + see <a href="https://blogs.msdn.microsoft.com/pfxteam/2009/02/19/getting-random-numbers-in-a-thread-safe-way/">Getting + random numbers in a thread-safe way</a>. + On .NET 6+, delegates to <c>Random.Shared</c>. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.GroupAdjacent``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Groups the adjacent elements of a sequence according to a + specified key selector function. + </summary> + <typeparam name="TSource">The type of the elements of + <paramref name="source"/>.</typeparam> + <typeparam name="TKey">The type of the key returned by + <paramref name="keySelector"/>.</typeparam> + <param name="source">A sequence whose elements to group.</param> + <param name="keySelector">A function to extract the key for each + element.</param> + <returns>A sequence of groupings where each grouping + (<see cref="T:System.Linq.IGrouping`2"/>) contains the key + and the adjacent elements in the same order as found in the + source sequence.</returns> + <remarks> + This method is implemented by using deferred execution and + streams the groupings. The grouping elements, however, are + buffered. Each grouping is therefore yielded as soon as it + is complete and before the next grouping occurs. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.GroupAdjacent``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Groups the adjacent elements of a sequence according to a + specified key selector function and compares the keys by using a + specified comparer. + </summary> + <typeparam name="TSource">The type of the elements of + <paramref name="source"/>.</typeparam> + <typeparam name="TKey">The type of the key returned by + <paramref name="keySelector"/>.</typeparam> + <param name="source">A sequence whose elements to group.</param> + <param name="keySelector">A function to extract the key for each + element.</param> + <param name="comparer">An <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> to + compare keys.</param> + <returns>A sequence of groupings where each grouping + (<see cref="T:System.Linq.IGrouping`2"/>) contains the key + and the adjacent elements in the same order as found in the + source sequence.</returns> + <remarks> + This method is implemented by using deferred execution and + streams the groupings. The grouping elements, however, are + buffered. Each grouping is therefore yielded as soon as it + is complete and before the next grouping occurs. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.GroupAdjacent``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2})"> + <summary> + Groups the adjacent elements of a sequence according to a + specified key selector function and projects the elements for + each group by using a specified function. + </summary> + <typeparam name="TSource">The type of the elements of + <paramref name="source"/>.</typeparam> + <typeparam name="TKey">The type of the key returned by + <paramref name="keySelector"/>.</typeparam> + <typeparam name="TElement">The type of the elements in the + resulting groupings.</typeparam> + <param name="source">A sequence whose elements to group.</param> + <param name="keySelector">A function to extract the key for each + element.</param> + <param name="elementSelector">A function to map each source + element to an element in the resulting grouping.</param> + <returns>A sequence of groupings where each grouping + (<see cref="T:System.Linq.IGrouping`2"/>) contains the key + and the adjacent elements (of type <typeparamref name="TElement"/>) + in the same order as found in the source sequence.</returns> + <remarks> + This method is implemented by using deferred execution and + streams the groupings. The grouping elements, however, are + buffered. Each grouping is therefore yielded as soon as it + is complete and before the next grouping occurs. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.GroupAdjacent``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Groups the adjacent elements of a sequence according to a + specified key selector function. The keys are compared by using + a comparer and each group's elements are projected by using a + specified function. + </summary> + <typeparam name="TSource">The type of the elements of + <paramref name="source"/>.</typeparam> + <typeparam name="TKey">The type of the key returned by + <paramref name="keySelector"/>.</typeparam> + <typeparam name="TElement">The type of the elements in the + resulting groupings.</typeparam> + <param name="source">A sequence whose elements to group.</param> + <param name="keySelector">A function to extract the key for each + element.</param> + <param name="elementSelector">A function to map each source + element to an element in the resulting grouping.</param> + <param name="comparer">An <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> to + compare keys.</param> + <returns>A sequence of groupings where each grouping + (<see cref="T:System.Linq.IGrouping`2"/>) contains the key + and the adjacent elements (of type <typeparamref name="TElement"/>) + in the same order as found in the source sequence.</returns> + <remarks> + This method is implemented by using deferred execution and + streams the groupings. The grouping elements, however, are + buffered. Each grouping is therefore yielded as soon as it + is complete and before the next grouping occurs. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.GroupAdjacent``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``1,System.Collections.Generic.IEnumerable{``0},``2})"> + <summary> + Groups the adjacent elements of a sequence according to a + specified key selector function. The keys are compared by using + a comparer and each group's elements are projected by using a + specified function. + </summary> + <typeparam name="TSource">The type of the elements of + <paramref name="source"/>.</typeparam> + <typeparam name="TKey">The type of the key returned by + <paramref name="keySelector"/>.</typeparam> + <typeparam name="TResult">The type of the elements in the + resulting sequence.</typeparam> + <param name="source">A sequence whose elements to group.</param> + <param name="keySelector">A function to extract the key for each + element.</param> + <param name="resultSelector">A function to map each key and + associated source elements to a result object.</param> + <returns>A collection of elements of type + <typeparamref name="TResult" /> where each element represents + a projection over a group and its key.</returns> + <remarks> + This method is implemented by using deferred execution and + streams the groupings. The grouping elements, however, are + buffered. Each grouping is therefore yielded as soon as it + is complete and before the next grouping occurs. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.GroupAdjacent``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``1,System.Collections.Generic.IEnumerable{``0},``2},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Groups the adjacent elements of a sequence according to a + specified key selector function. The keys are compared by using + a comparer and each group's elements are projected by using a + specified function. + </summary> + <typeparam name="TSource">The type of the elements of + <paramref name="source"/>.</typeparam> + <typeparam name="TKey">The type of the key returned by + <paramref name="keySelector"/>.</typeparam> + <typeparam name="TResult">The type of the elements in the + resulting sequence.</typeparam> + <param name="source">A sequence whose elements to group.</param> + <param name="keySelector">A function to extract the key for each + element.</param> + <param name="resultSelector">A function to map each key and + associated source elements to a result object.</param> + <param name="comparer">An <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> to + compare keys.</param> + <returns>A collection of elements of type + <typeparamref name="TResult" /> where each element represents + a projection over a group and its key.</returns> + <remarks> + This method is implemented by using deferred execution and + streams the groupings. The grouping elements, however, are + buffered. Each grouping is therefore yielded as soon as it + is complete and before the next grouping occurs. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Index``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Returns a sequence of <see cref="T:System.Collections.Generic.KeyValuePair`2"/> + where the key is the zero-based index of the value in the source + sequence. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <param name="source">The source sequence.</param> + <returns>A sequence of <see cref="T:System.Collections.Generic.KeyValuePair`2"/>.</returns> + <remarks>This operator uses deferred execution and streams its + results.</remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Index``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Returns a sequence of <see cref="T:System.Collections.Generic.KeyValuePair`2"/> + where the key is the index of the value in the source sequence. + An additional parameter specifies the starting index. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="startIndex"></param> + <returns>A sequence of <see cref="T:System.Collections.Generic.KeyValuePair`2"/>.</returns> + <remarks>This operator uses deferred execution and streams its + results.</remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.IndexBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Applies a key-generating function to each element of a sequence and + returns a sequence that contains the elements of the original + sequence as well its key and index inside the group of its key. + </summary> + <typeparam name="TSource">Type of the source sequence elements.</typeparam> + <typeparam name="TKey">Type of the projected key.</typeparam> + <param name="source">Source sequence.</param> + <param name="keySelector"> + Function that projects the key given an element in the source sequence.</param> + <returns> + A sequence of elements paired with their index within the key-group. + The index is the key and the element is the value of the pair. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.IndexBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Applies a key-generating function to each element of a sequence and + returns a sequence that contains the elements of the original + sequence as well its key and index inside the group of its key. + An additional parameter specifies a comparer to use for testing the + equivalence of keys. + </summary> + <typeparam name="TSource">Type of the source sequence elements.</typeparam> + <typeparam name="TKey">Type of the projected key.</typeparam> + <param name="source">Source sequence.</param> + <param name="keySelector"> + Function that projects the key given an element in the source sequence.</param> + <param name="comparer"> + The equality comparer to use to determine whether or not keys are + equal. If <c>null</c>, the default equality comparer for + <typeparamref name="TSource"/> is used.</param> + <returns> + A sequence of elements paired with their index within the key-group. + The index is the key and the element is the value of the pair. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Insert``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Inserts the elements of a sequence into another sequence at a + specified index. + </summary> + <typeparam name="T">Type of the elements of the source sequence.</typeparam> + <param name="first">The source sequence.</param> + <param name="second">The sequence that will be inserted.</param> + <param name="index"> + The zero-based index at which to insert elements from + <paramref name="second"/>.</param> + <returns> + A sequence that contains the elements of <paramref name="first"/> + plus the elements of <paramref name="second"/> inserted at + the given index. + </returns> + <exception cref="T:System.ArgumentNullException"><paramref name="first"/> is null.</exception> + <exception cref="T:System.ArgumentNullException"><paramref name="second"/> is null.</exception> + <exception cref="T:System.ArgumentOutOfRangeException"> + Thrown if <paramref name="index"/> is negative. + </exception> + <exception cref="T:System.ArgumentOutOfRangeException"> + Thrown lazily if <paramref name="index"/> is greater than the + length of <paramref name="first"/>. The validation occurs when + yielding the next element after having iterated + <paramref name="first"/> entirely. + </exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Interleave``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0}[])"> + <summary> + Interleaves the elements of two or more sequences into a single sequence, skipping + sequences as they are consumed. + </summary> + <typeparam name="T">The type of the elements of the source sequences.</typeparam> + <param name="sequence">The first sequence in the interleave group.</param> + <param name="otherSequences">The other sequences in the interleave group.</param> + <returns>A sequence of interleaved elements from all of the source sequences.</returns> + <remarks> + <para> + Interleave combines sequences by visiting each in turn, and returning the first element + of each, followed by the second, then the third, and so on. So, for example:</para> + <code><![CDATA[ + var xs = new[] { 1, 1, 1 }.Interleave(new[] { 2, 2, 2 }, new[] { 3, 3, 3 }); + // xs = { 1, 2, 3, 1, 2, 3, 1, 2, 3 } + ]]></code> + <para> + This operator behaves in a deferred and streaming manner.</para> + <para> + When sequences are of unequal length, this method will skip those sequences that have + been fully consumed and continue interleaving the remaining sequences.</para> + <para> + The sequences are interleaved in the order that they appear in the <paramref + name="otherSequences"/> collection, with <paramref name="sequence"/> as the first + sequence.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Lag``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,``0,``1})"> + <summary> + Produces a projection of a sequence by evaluating pairs of elements separated by a + negative offset. + </summary> + <typeparam name="TSource">The type of the elements of the source sequence.</typeparam> + <typeparam name="TResult">The type of the elements of the result sequence.</typeparam> + <param name="source">The sequence over which to evaluate lag.</param> + <param name="offset">The offset (expressed as a positive number) by which to lag each + value of the sequence.</param> + <param name="resultSelector">A projection function which accepts the current and lagged + items (in that order) and returns a result.</param> + <returns> + A sequence produced by projecting each element of the sequence with its lagged + pairing.</returns> + <remarks> + <para> + This operator evaluates in a deferred and streaming manner.</para> + <para> + For elements prior to the lag offset, <c>default(T)</c> is used as the lagged + value.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Lag``2(System.Collections.Generic.IEnumerable{``0},System.Int32,``0,System.Func{``0,``0,``1})"> + <summary> + Produces a projection of a sequence by evaluating pairs of elements separated by a + negative offset. + </summary> + <typeparam name="TSource">The type of the elements of the source sequence.</typeparam> + <typeparam name="TResult">The type of the elements of the result sequence.</typeparam> + <param name="source">The sequence over which to evaluate lag.</param> + <param name="offset">The offset (expressed as a positive number) by which to lag each + value of the sequence.</param> + <param name="defaultLagValue">A default value supplied for the lagged value prior to the + lag offset.</param> + <param name="resultSelector">A projection function which accepts the current and lagged + items (in that order) and returns a result.</param> + <returns> + A sequence produced by projecting each element of the sequence with its lagged + pairing.</returns> + <remarks> + This operator evaluates in a deferred and streaming manner. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Lead``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,``0,``1})"> + <summary> + Produces a projection of a sequence by evaluating pairs of elements separated by a + positive offset. + </summary> + <typeparam name="TSource">The type of the elements in the source sequence.</typeparam> + <typeparam name="TResult">The type of the elements in the result sequence.</typeparam> + <param name="source">The sequence over which to evaluate lead.</param> + <param name="offset">The offset (expressed as a positive number) by which to lead each + element of the sequence.</param> + <param name="resultSelector">A projection function which accepts the current and + subsequent (lead) element (in that order) and produces a result.</param> + <returns> + A sequence produced by projecting each element of the sequence with its lead + pairing.</returns> + <remarks> + <para> + This operator evaluates in a deferred and streaming manner.</para> + <para> + For elements of the sequence that are less than <paramref name="offset"/> items from the + end, <c>default(T)</c> is used as the lead value.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Lead``2(System.Collections.Generic.IEnumerable{``0},System.Int32,``0,System.Func{``0,``0,``1})"> + <summary> + Produces a projection of a sequence by evaluating pairs of elements separated by a + positive offset. + </summary> + <typeparam name="TSource">The type of the elements in the source sequence.</typeparam> + <typeparam name="TResult">The type of the elements in the result sequence.</typeparam> + <param name="source">The sequence over which to evaluate Lead.</param> + <param name="offset">The offset (expressed as a positive number) by which to lead each + element of the sequence.</param> + <param name="defaultLeadValue">A default value supplied for the leading element when + none is available.</param> + <param name="resultSelector">A projection function which accepts the current and + subsequent (lead) element (in that order) and produces a result.</param> + <returns> + A sequence produced by projecting each element of the sequence with its lead + pairing.</returns> + <remarks> + This operator evaluates in a deferred and streaming manner. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.LeftJoin``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``0,``0,``2})"> + <summary> + Performs a left outer join on two homogeneous sequences. + Additional arguments specify key selection functions and result + projection functions. + </summary> + <typeparam name="TSource"> + The type of elements in the source sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector function.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence of the join operation.</param> + <param name="second"> + The second sequence of the join operation.</param> + <param name="keySelector"> + Function that projects the key given an element of one of the + sequences to join.</param> + <param name="firstSelector"> + Function that projects the result given just an element from + <paramref name="first"/> where there is no corresponding element + in <paramref name="second"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <returns>A sequence containing results projected from a left + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.LeftJoin``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``0,``0,``2},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Performs a left outer join on two homogeneous sequences. + Additional arguments specify key selection functions, result + projection functions and a key comparer. + </summary> + <typeparam name="TSource"> + The type of elements in the source sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector function.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence of the join operation.</param> + <param name="second"> + The second sequence of the join operation.</param> + <param name="keySelector"> + Function that projects the key given an element of one of the + sequences to join.</param> + <param name="firstSelector"> + Function that projects the result given just an element from + <paramref name="first"/> where there is no corresponding element + in <paramref name="second"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <param name="comparer"> + The <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> instance used to compare + keys for equality.</param> + <returns>A sequence containing results projected from a left + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.LeftJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``3},System.Func{``0,``1,``3})"> + <summary> + Performs a left outer join on two heterogeneous sequences. + Additional arguments specify key selection functions and result + projection functions. + </summary> + <typeparam name="TFirst"> + The type of elements in the first sequence.</typeparam> + <typeparam name="TSecond"> + The type of elements in the second sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector functions.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence of the join operation.</param> + <param name="second"> + The second sequence of the join operation.</param> + <param name="firstKeySelector"> + Function that projects the key given an element from <paramref name="first"/>.</param> + <param name="secondKeySelector"> + Function that projects the key given an element from <paramref name="second"/>.</param> + <param name="firstSelector"> + Function that projects the result given just an element from + <paramref name="first"/> where there is no corresponding element + in <paramref name="second"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <returns>A sequence containing results projected from a left + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.LeftJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``3},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})"> + <summary> + Performs a left outer join on two heterogeneous sequences. + Additional arguments specify key selection functions, result + projection functions and a key comparer. + </summary> + <typeparam name="TFirst"> + The type of elements in the first sequence.</typeparam> + <typeparam name="TSecond"> + The type of elements in the second sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector functions.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence of the join operation.</param> + <param name="second"> + The second sequence of the join operation.</param> + <param name="firstKeySelector"> + Function that projects the key given an element from <paramref name="first"/>.</param> + <param name="secondKeySelector"> + Function that projects the key given an element from <paramref name="second"/>.</param> + <param name="firstSelector"> + Function that projects the result given just an element from + <paramref name="first"/> where there is no corresponding element + in <paramref name="second"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <param name="comparer"> + The <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> instance used to compare + keys for equality.</param> + <returns>A sequence containing results projected from a left + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.First``1(MoreLinq.IExtremaEnumerable{``0})"> + <summary> + Returns the first element of a sequence. + </summary> + <typeparam name="T"> + The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The input sequence.</param> + <exception cref="T:System.InvalidOperationException"> + The input sequence is empty.</exception> + <returns> + The first element of the input sequence. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.FirstOrDefault``1(MoreLinq.IExtremaEnumerable{``0})"> + <summary> + Returns the first element of a sequence, or a default value if the + sequence contains no elements. + </summary> + <typeparam name="T"> + The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The input sequence.</param> + <returns> + Default value of type <typeparamref name="T"/> if source is empty; + otherwise, the first element in source. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Last``1(MoreLinq.IExtremaEnumerable{``0})"> + <summary> + Returns the last element of a sequence. + </summary> + <typeparam name="T"> + The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The input sequence.</param> + <exception cref="T:System.InvalidOperationException"> + The input sequence is empty.</exception> + <returns> + The last element of the input sequence. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.LastOrDefault``1(MoreLinq.IExtremaEnumerable{``0})"> + <summary> + Returns the last element of a sequence, or a default value if the + sequence contains no elements. + </summary> + <typeparam name="T"> + The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The input sequence.</param> + <returns> + Default value of type <typeparamref name="T"/> if source is empty; + otherwise, the last element in source. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Single``1(MoreLinq.IExtremaEnumerable{``0})"> + <summary> + Returns the only element of a sequence, and throws an exception if + there is not exactly one element in the sequence. + </summary> + <typeparam name="T"> + The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The input sequence.</param> + <exception cref="T:System.InvalidOperationException"> + The input sequence contains more than one element.</exception> + <returns> + The single element of the input sequence. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.SingleOrDefault``1(MoreLinq.IExtremaEnumerable{``0})"> + <summary> + Returns the only element of a sequence, or a default value if the + sequence is empty; this method throws an exception if there is more + than one element in the sequence. + </summary> + <typeparam name="T"> + The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The input sequence.</param> + <returns> + The single element of the input sequence, or default value of type + <typeparamref name="T"/> if the sequence contains no elements. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.MaxBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Returns the maximal elements of the given sequence, based on + the given projection. + </summary> + <remarks> + This overload uses the default comparer for the projected type. + This operator uses deferred execution. The results are evaluated + and cached on first use to returned sequence. + </remarks> + <typeparam name="TSource">Type of the source sequence</typeparam> + <typeparam name="TKey">Type of the projected element</typeparam> + <param name="source">Source sequence</param> + <param name="selector">Selector to use to pick the results to compare</param> + <returns>The sequence of maximal elements, according to the projection.</returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> or <paramref name="selector"/> is null</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.MaxBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1})"> + <summary> + Returns the maximal elements of the given sequence, based on + the given projection and the specified comparer for projected values. + </summary> + <remarks> + This operator uses deferred execution. The results are evaluated + and cached on first use to returned sequence. + </remarks> + <typeparam name="TSource">Type of the source sequence</typeparam> + <typeparam name="TKey">Type of the projected element</typeparam> + <param name="source">Source sequence</param> + <param name="selector">Selector to use to pick the results to compare</param> + <param name="comparer">Comparer to use to compare projected values</param> + <returns>The sequence of maximal elements, according to the projection.</returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/>, <paramref name="selector"/> + or <paramref name="comparer"/> is null</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.MinBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Returns the minimal elements of the given sequence, based on + the given projection. + </summary> + <remarks> + This overload uses the default comparer for the projected type. + This operator uses deferred execution. The results are evaluated + and cached on first use to returned sequence. + </remarks> + <typeparam name="TSource">Type of the source sequence</typeparam> + <typeparam name="TKey">Type of the projected element</typeparam> + <param name="source">Source sequence</param> + <param name="selector">Selector to use to pick the results to compare</param> + <returns>The sequence of minimal elements, according to the projection.</returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> or <paramref name="selector"/> is null</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.MinBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1})"> + <summary> + Returns the minimal elements of the given sequence, based on + the given projection and the specified comparer for projected values. + </summary> + <remarks> + This operator uses deferred execution. The results are evaluated + and cached on first use to returned sequence. + </remarks> + <typeparam name="TSource">Type of the source sequence</typeparam> + <typeparam name="TKey">Type of the projected element</typeparam> + <param name="source">Source sequence</param> + <param name="selector">Selector to use to pick the results to compare</param> + <param name="comparer">Comparer to use to compare projected values</param> + <returns>The sequence of minimal elements, according to the projection.</returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/>, <paramref name="selector"/> + or <paramref name="comparer"/> is null</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Move``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Int32,System.Int32)"> + <summary> + Returns a sequence with a range of elements in the source sequence + moved to a new offset. + </summary> + <typeparam name="T">Type of the source sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="fromIndex"> + The zero-based index identifying the first element in the range of + elements to move.</param> + <param name="count">The count of items to move.</param> + <param name="toIndex"> + The index where the specified range will be moved.</param> + <returns> + A sequence with the specified range moved to the new position. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + var result = Enumerable.Range(0, 6).Move(3, 2, 0); + ]]></code> + The <c>result</c> variable will contain <c>{ 3, 4, 0, 1, 2, 5 }</c>. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.NestedLoops(System.Action,System.Collections.Generic.IEnumerable{System.UInt64})"> + <summary> + Produces a sequence from an action based on the dynamic generation of N nested loops + whose iteration counts are defined by a sequence of loop counts. + </summary> + <param name="action">Action delegate for which to produce a nested loop sequence</param> + <param name="loopCounts">A sequence of loop repetition counts</param> + <returns>A sequence of Action representing the expansion of a set of nested loops</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},MoreLinq.OrderByDirection)"> + <summary> + Sorts the elements of a sequence in a particular direction (ascending, descending) according to a key + </summary> + <typeparam name="T">The type of the elements in the source sequence</typeparam> + <typeparam name="TKey">The type of the key used to order elements</typeparam> + <param name="source">The sequence to order</param> + <param name="keySelector">A key selector function</param> + <param name="direction">A direction in which to order the elements (ascending, descending)</param> + <returns>An ordered copy of the source sequence</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1},MoreLinq.OrderByDirection)"> + <summary> + Sorts the elements of a sequence in a particular direction (ascending, descending) according to a key + </summary> + <typeparam name="T">The type of the elements in the source sequence</typeparam> + <typeparam name="TKey">The type of the key used to order elements</typeparam> + <param name="source">The sequence to order</param> + <param name="keySelector">A key selector function</param> + <param name="direction">A direction in which to order the elements (ascending, descending)</param> + <param name="comparer">A comparer used to define the semantics of element comparison</param> + <returns>An ordered copy of the source sequence</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.ThenBy``2(System.Linq.IOrderedEnumerable{``0},System.Func{``0,``1},MoreLinq.OrderByDirection)"> + <summary> + Performs a subsequent ordering of elements in a sequence in a particular direction (ascending, descending) according to a key + </summary> + <typeparam name="T">The type of the elements in the source sequence</typeparam> + <typeparam name="TKey">The type of the key used to order elements</typeparam> + <param name="source">The sequence to order</param> + <param name="keySelector">A key selector function</param> + <param name="direction">A direction in which to order the elements (ascending, descending)</param> + <returns>An ordered copy of the source sequence</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.ThenBy``2(System.Linq.IOrderedEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1},MoreLinq.OrderByDirection)"> + <summary> + Performs a subsequent ordering of elements in a sequence in a particular direction (ascending, descending) according to a key + </summary> + <typeparam name="T">The type of the elements in the source sequence</typeparam> + <typeparam name="TKey">The type of the key used to order elements</typeparam> + <param name="source">The sequence to order</param> + <param name="keySelector">A key selector function</param> + <param name="direction">A direction in which to order the elements (ascending, descending)</param> + <param name="comparer">A comparer used to define the semantics of element comparison</param> + <returns>An ordered copy of the source sequence</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.OrderedMerge``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0})"> + <summary> + Merges two ordered sequences into one. Where the elements equal + in both sequences, the element from the first sequence is + returned in the resulting sequence. + </summary> + <typeparam name="T">Type of elements in input and output sequences.</typeparam> + <param name="first">The first input sequence.</param> + <param name="second">The second input sequence.</param> + <returns> + A sequence with elements from the two input sequences merged, as + in a full outer join.</returns> + <remarks> + This method uses deferred execution. The behavior is undefined + if the sequences are unordered as inputs. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.OrderedMerge``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IComparer{``0})"> + <summary> + Merges two ordered sequences into one with an additional + parameter specifying how to compare the elements of the + sequences. Where the elements equal in both sequences, the + element from the first sequence is returned in the resulting + sequence. + </summary> + <typeparam name="T">Type of elements in input and output sequences.</typeparam> + <param name="first">The first input sequence.</param> + <param name="second">The second input sequence.</param> + <param name="comparer">An <see cref="T:System.Collections.Generic.IComparer`1"/> to compare elements.</param> + <returns> + A sequence with elements from the two input sequences merged, as + in a full outer join.</returns> + <remarks> + This method uses deferred execution. The behavior is undefined + if the sequences are unordered as inputs. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.OrderedMerge``2(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Merges two ordered sequences into one with an additional + parameter specifying the element key by which the sequences are + ordered. Where the keys equal in both sequences, the + element from the first sequence is returned in the resulting + sequence. + </summary> + <typeparam name="T">Type of elements in input and output sequences.</typeparam> + <typeparam name="TKey">Type of keys used for merging.</typeparam> + <param name="first">The first input sequence.</param> + <param name="second">The second input sequence.</param> + <param name="keySelector">Function to extract a key given an element.</param> + <returns> + A sequence with elements from the two input sequences merged + according to a key, as in a full outer join.</returns> + <remarks> + This method uses deferred execution. The behavior is undefined + if the sequences are unordered (by key) as inputs. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.OrderedMerge``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``0,``2},System.Func{``0,``0,``2})"> + <summary> + Merges two ordered sequences into one. Additional parameters + specify the element key by which the sequences are ordered, + the result when element is found in first sequence but not in + the second, the result when element is found in second sequence + but not in the first and the result when elements are found in + both sequences. + </summary> + <typeparam name="T">Type of elements in source sequences.</typeparam> + <typeparam name="TKey">Type of keys used for merging.</typeparam> + <typeparam name="TResult">Type of elements in the returned sequence.</typeparam> + <param name="first">The first input sequence.</param> + <param name="second">The second input sequence.</param> + <param name="keySelector">Function to extract a key given an element.</param> + <param name="firstSelector">Function to project the result element + when only the first sequence yields a source element.</param> + <param name="secondSelector">Function to project the result element + when only the second sequence yields a source element.</param> + <param name="bothSelector">Function to project the result element + when only both sequences yield a source element whose keys are + equal.</param> + <returns> + A sequence with projections from the two input sequences merged + according to a key, as in a full outer join.</returns> + <remarks> + This method uses deferred execution. The behavior is undefined + if the sequences are unordered (by key) as inputs. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.OrderedMerge``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``0,``2},System.Func{``0,``0,``2},System.Collections.Generic.IComparer{``1})"> + <summary> + Merges two ordered sequences into one. Additional parameters + specify the element key by which the sequences are ordered, + the result when element is found in first sequence but not in + the second, the result when element is found in second sequence + but not in the first, the result when elements are found in + both sequences and a method for comparing keys. + </summary> + <typeparam name="T">Type of elements in source sequences.</typeparam> + <typeparam name="TKey">Type of keys used for merging.</typeparam> + <typeparam name="TResult">Type of elements in the returned sequence.</typeparam> + <param name="first">The first input sequence.</param> + <param name="second">The second input sequence.</param> + <param name="keySelector">Function to extract a key given an element.</param> + <param name="firstSelector">Function to project the result element + when only the first sequence yields a source element.</param> + <param name="secondSelector">Function to project the result element + when only the second sequence yields a source element.</param> + <param name="bothSelector">Function to project the result element + when only both sequences yield a source element whose keys are + equal.</param> + <param name="comparer">An <see cref="T:System.Collections.Generic.IComparer`1"/> to compare keys.</param> + <returns> + A sequence with projections from the two input sequences merged + according to a key, as in a full outer join.</returns> + <remarks> + This method uses deferred execution. The behavior is undefined + if the sequences are unordered (by key) as inputs. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.OrderedMerge``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``3},System.Func{``1,``3},System.Func{``0,``1,``3})"> + <summary> + Merges two heterogeneous sequences ordered by a common key type + into a homogeneous one. Additional parameters specify the + element key by which the sequences are ordered, the result when + element is found in first sequence but not in the second and + the result when element is found in second sequence but not in + the first, the result when elements are found in both sequences. + </summary> + <typeparam name="TFirst">Type of elements in the first sequence.</typeparam> + <typeparam name="TSecond">Type of elements in the second sequence.</typeparam> + <typeparam name="TKey">Type of keys used for merging.</typeparam> + <typeparam name="TResult">Type of elements in the returned sequence.</typeparam> + <param name="first">The first input sequence.</param> + <param name="second">The second input sequence.</param> + <param name="firstKeySelector">Function to extract a key given an + element from the first sequence.</param> + <param name="secondKeySelector">Function to extract a key given an + element from the second sequence.</param> + <param name="firstSelector">Function to project the result element + when only the first sequence yields a source element.</param> + <param name="secondSelector">Function to project the result element + when only the second sequence yields a source element.</param> + <param name="bothSelector">Function to project the result element + when only both sequences yield a source element whose keys are + equal.</param> + <returns> + A sequence with projections from the two input sequences merged + according to a key, as in a full outer join.</returns> + <remarks> + This method uses deferred execution. The behavior is undefined + if the sequences are unordered (by key) as inputs. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.OrderedMerge``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``3},System.Func{``1,``3},System.Func{``0,``1,``3},System.Collections.Generic.IComparer{``2})"> + <summary> + Merges two heterogeneous sequences ordered by a common key type + into a homogeneous one. Additional parameters specify the + element key by which the sequences are ordered, the result when + element is found in first sequence but not in the second, + the result when element is found in second sequence but not in + the first, the result when elements are found in both sequences + and a method for comparing keys. + </summary> + <typeparam name="TFirst">Type of elements in the first sequence.</typeparam> + <typeparam name="TSecond">Type of elements in the second sequence.</typeparam> + <typeparam name="TKey">Type of keys used for merging.</typeparam> + <typeparam name="TResult">Type of elements in the returned sequence.</typeparam> + <param name="first">The first input sequence.</param> + <param name="second">The second input sequence.</param> + <param name="firstKeySelector">Function to extract a key given an + element from the first sequence.</param> + <param name="secondKeySelector">Function to extract a key given an + element from the second sequence.</param> + <param name="firstSelector">Function to project the result element + when only the first sequence yields a source element.</param> + <param name="secondSelector">Function to project the result element + when only the second sequence yields a source element.</param> + <param name="bothSelector">Function to project the result element + when only both sequences yield a source element whose keys are + equal.</param> + <param name="comparer">An <see cref="T:System.Collections.Generic.IComparer`1"/> to compare keys.</param> + <returns> + A sequence with projections from the two input sequences merged + according to a key, as in a full outer join.</returns> + <remarks> + This method uses deferred execution. The behavior is undefined + if the sequences are unordered (by key) as inputs. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Pad``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Pads a sequence with default values if it is narrower (shorter + in length) than a given width. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The sequence to pad.</param> + <param name="width">The width/length below which to pad.</param> + <returns> + Returns a sequence that is at least as wide/long as the width/length + specified by the <paramref name="width"/> parameter. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + int[] numbers = { 123, 456, 789 }; + var result = numbers.Pad(5); + ]]></code> + The <c>result</c> variable, when iterated over, will yield + 123, 456, 789 and two zeroes, in turn. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.Pad``1(System.Collections.Generic.IEnumerable{``0},System.Int32,``0)"> + <summary> + Pads a sequence with a given filler value if it is narrower (shorter + in length) than a given width. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The sequence to pad.</param> + <param name="width">The width/length below which to pad.</param> + <param name="padding">The value to use for padding.</param> + <returns> + Returns a sequence that is at least as wide/long as the width/length + specified by the <paramref name="width"/> parameter. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + int[] numbers = { 123, 456, 789 }; + var result = numbers.Pad(5, -1); + ]]></code> + The <c>result</c> variable, when iterated over, will yield + 123, 456, and 789 followed by two occurrences of -1, in turn. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.Pad``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{System.Int32,``0})"> + <summary> + Pads a sequence with a dynamic filler value if it is narrower (shorter + in length) than a given width. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The sequence to pad.</param> + <param name="width">The width/length below which to pad.</param> + <param name="paddingSelector">Function to calculate padding.</param> + <returns> + Returns a sequence that is at least as wide/long as the width/length + specified by the <paramref name="width"/> parameter. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + int[] numbers = { 0, 1, 2 }; + var result = numbers.Pad(5, i => -i); + ]]></code> + The <c>result</c> variable, when iterated over, will yield + 0, 1, 2, -3 and -4, in turn. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.PadStart``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Pads a sequence with default values in the beginning if it is narrower (shorter + in length) than a given width. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The sequence to pad.</param> + <param name="width">The width/length below which to pad.</param> + <returns> + Returns a sequence that is at least as wide/long as the width/length + specified by the <paramref name="width"/> parameter. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + int[] numbers = { 123, 456, 789 }; + var result = numbers.PadStart(5); + ]]></code> + The <c>result</c> variable will contain <c>{ 0, 0, 123, 456, 789 }</c>. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.PadStart``1(System.Collections.Generic.IEnumerable{``0},System.Int32,``0)"> + <summary> + Pads a sequence with a given filler value in the beginning if it is narrower (shorter + in length) than a given width. + An additional parameter specifies the value to use for padding. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The sequence to pad.</param> + <param name="width">The width/length below which to pad.</param> + <param name="padding">The value to use for padding.</param> + <returns> + Returns a sequence that is at least as wide/long as the width/length + specified by the <paramref name="width"/> parameter. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + int[] numbers = { 123, 456, 789 }; + var result = numbers.PadStart(5, -1); + ]]></code> + The <c>result</c> variable will contain <c>{ -1, -1, 123, 456, 789 }</c>. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.PadStart``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{System.Int32,``0})"> + <summary> + Pads a sequence with a dynamic filler value in the beginning if it is narrower (shorter + in length) than a given width. + An additional parameter specifies the function to calculate padding. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The sequence to pad.</param> + <param name="width">The width/length below which to pad.</param> + <param name="paddingSelector"> + Function to calculate padding given the index of the missing element. + </param> + <returns> + Returns a sequence that is at least as wide/long as the width/length + specified by the <paramref name="width"/> parameter. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + int[] numbers = { 123, 456, 789 }; + var result = numbers.PadStart(6, i => -i); + ]]></code> + The <c>result</c> variable will contain <c>{ 0, -1, -2, 123, 456, 789 }</c>. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.Pairwise``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``1})"> + <summary> + Returns a sequence resulting from applying a function to each + element in the source sequence and its + predecessor, with the exception of the first element which is + only returned as the predecessor of the second element. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <typeparam name="TResult">The type of the element of the returned sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="resultSelector">A transform function to apply to + each pair of sequence.</param> + <returns> + Returns the resulting sequence. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + var source = new[] { "a", "b", "c", "d" }; + var result = source.Pairwise((a, b) => a + b); + ]]></code> + The <c>result</c> variable, when iterated over, will yield + "ab", "bc" and "cd", in turn. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.PartialSort``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Combines <see cref="M:System.Linq.Enumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"/>, + where each element is its key, and <see cref="M:System.Linq.Enumerable.Take``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"/> + in a single operation. + </summary> + <typeparam name="T">Type of elements in the sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="count">Number of (maximum) elements to return.</param> + <returns>A sequence containing at most top <paramref name="count"/> + elements from source, in their ascending order.</returns> + <remarks> + This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.PartialSort``1(System.Collections.Generic.IEnumerable{``0},System.Int32,MoreLinq.OrderByDirection)"> + <summary> + Combines <see cref="M:MoreLinq.MoreEnumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1},MoreLinq.OrderByDirection)"/>, + where each element is its key, and <see cref="M:System.Linq.Enumerable.Take``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"/> + in a single operation. + An additional parameter specifies the direction of the sort + </summary> + <typeparam name="T">Type of elements in the sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="count">Number of (maximum) elements to return.</param> + <param name="direction">The direction in which to sort the elements</param> + <returns>A sequence containing at most top <paramref name="count"/> + elements from source, in the specified order.</returns> + <remarks> + This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.PartialSort``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Collections.Generic.IComparer{``0})"> + <summary> + Combines <see cref="M:System.Linq.Enumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1})"/>, + where each element is its key, and <see cref="M:System.Linq.Enumerable.Take``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"/> + in a single operation. An additional parameter specifies how the + elements compare to each other. + </summary> + <typeparam name="T">Type of elements in the sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="count">Number of (maximum) elements to return.</param> + <param name="comparer">A <see cref="T:System.Collections.Generic.IComparer`1"/> to compare elements.</param> + <returns>A sequence containing at most top <paramref name="count"/> + elements from source, in their ascending order.</returns> + <remarks> + This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.PartialSort``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Collections.Generic.IComparer{``0},MoreLinq.OrderByDirection)"> + <summary> + Combines <see cref="M:MoreLinq.MoreEnumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1},MoreLinq.OrderByDirection)"/>, + where each element is its key, and <see cref="M:System.Linq.Enumerable.Take``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"/> + in a single operation. + Additional parameters specify how the elements compare to each other and + the direction of the sort. + </summary> + <typeparam name="T">Type of elements in the sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="count">Number of (maximum) elements to return.</param> + <param name="comparer">A <see cref="T:System.Collections.Generic.IComparer`1"/> to compare elements.</param> + <param name="direction">The direction in which to sort the elements</param> + <returns>A sequence containing at most top <paramref name="count"/> + elements from source, in the specified order.</returns> + <remarks> + This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.PartialSortBy``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,``1})"> + <summary> + Combines <see cref="M:System.Linq.Enumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1})"/>, + and <see cref="M:System.Linq.Enumerable.Take``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"/> in a single operation. + </summary> + <typeparam name="TSource">Type of elements in the sequence.</typeparam> + <typeparam name="TKey">Type of keys.</typeparam> + <param name="source">The source sequence.</param> + <param name="keySelector">A function to extract a key from an element.</param> + <param name="count">Number of (maximum) elements to return.</param> + <returns>A sequence containing at most top <paramref name="count"/> + elements from source, in ascending order of their keys.</returns> + <remarks> + This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.PartialSortBy``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,``1},MoreLinq.OrderByDirection)"> + <summary> + Combines <see cref="M:MoreLinq.MoreEnumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},MoreLinq.OrderByDirection)"/>, + and <see cref="M:System.Linq.Enumerable.Take``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"/> in a single operation. + An additional parameter specifies the direction of the sort + </summary> + <typeparam name="TSource">Type of elements in the sequence.</typeparam> + <typeparam name="TKey">Type of keys.</typeparam> + <param name="source">The source sequence.</param> + <param name="keySelector">A function to extract a key from an element.</param> + <param name="count">Number of (maximum) elements to return.</param> + <param name="direction">The direction in which to sort the elements</param> + <returns>A sequence containing at most top <paramref name="count"/> + elements from source, in the specified order of their keys.</returns> + <remarks> + This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.PartialSortBy``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,``1},System.Collections.Generic.IComparer{``1})"> + <summary> + Combines <see cref="M:System.Linq.Enumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1})"/>, + and <see cref="M:System.Linq.Enumerable.Take``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"/> in a single operation. + An additional parameter specifies how the keys compare to each other. + </summary> + <typeparam name="TSource">Type of elements in the sequence.</typeparam> + <typeparam name="TKey">Type of keys.</typeparam> + <param name="source">The source sequence.</param> + <param name="keySelector">A function to extract a key from an element.</param> + <param name="count">Number of (maximum) elements to return.</param> + <param name="comparer">A <see cref="T:System.Collections.Generic.IComparer`1"/> to compare elements.</param> + <returns>A sequence containing at most top <paramref name="count"/> + elements from source, in ascending order of their keys.</returns> + <remarks> + This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.PartialSortBy``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,``1},System.Collections.Generic.IComparer{``1},MoreLinq.OrderByDirection)"> + <summary> + Combines <see cref="M:MoreLinq.MoreEnumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},MoreLinq.OrderByDirection)"/>, + and <see cref="M:System.Linq.Enumerable.Take``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"/> in a single operation. + Additional parameters specify how the elements compare to each other and + the direction of the sort. + </summary> + <typeparam name="TSource">Type of elements in the sequence.</typeparam> + <typeparam name="TKey">Type of keys.</typeparam> + <param name="source">The source sequence.</param> + <param name="keySelector">A function to extract a key from an element.</param> + <param name="count">Number of (maximum) elements to return.</param> + <param name="comparer">A <see cref="T:System.Collections.Generic.IComparer`1"/> to compare elements.</param> + <param name="direction">The direction in which to sort the elements</param> + <returns>A sequence containing at most top <paramref name="count"/> + elements from source, in the specified order of their keys.</returns> + <remarks> + This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Partition``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean})"> + <summary> + Partitions or splits a sequence in two using a predicate. + </summary> + <param name="source">The source sequence.</param> + <param name="predicate">The predicate function.</param> + <typeparam name="T">Type of source elements.</typeparam> + <returns> + A tuple of elements satisfying the predicate and those that do not, + respectively. + </returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is + <see langword="null"/>.</exception> + <example> + <code><![CDATA[ + var (evens, odds) = + Enumerable.Range(0, 10).Partition(x => x % 2 == 0); + ]]></code> + The <c>evens</c> variable, when iterated over, will yield 0, 2, 4, 6 + and then 8. The <c>odds</c> variable, when iterated over, will yield + 1, 3, 5, 7 and then 9. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.Partition``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean},System.Func{System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Partitions or splits a sequence in two using a predicate and then + projects a result from the two. + </summary> + <param name="source">The source sequence.</param> + <param name="predicate">The predicate function.</param> + <param name="resultSelector"> + Function that projects the result from sequences of elements that + satisfy the predicate and those that do not, respectively, passed as + arguments. + </param> + <typeparam name="T">Type of source elements.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/>, <paramref name="predicate"/>, or + <paramref name="resultSelector"/> is <see langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var (evens, odds) = + Enumerable.Range(0, 10) + .Partition(x => x % 2 == 0, ValueTuple.Create); + ]]></code> + The <c>evens</c> variable, when iterated over, will yield 0, 2, 4, 6 + and then 8. The <c>odds</c> variable, when iterated over, will yield + 1, 3, 5, 7 and then 9. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.Partition``2(System.Collections.Generic.IEnumerable{System.Linq.IGrouping{System.Boolean,``0}},System.Func{System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Partitions a grouping by Boolean keys into a projection of true + elements and false elements, respectively. + </summary> + <typeparam name="T">Type of elements in source groupings.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The source sequence.</param> + <param name="resultSelector"> + Function that projects the result from sequences of true elements + and false elements, respectively, passed as arguments. + </param> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="resultSelector"/> is + <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Partition``2(System.Collections.Generic.IEnumerable{System.Linq.IGrouping{System.Nullable{System.Boolean},``0}},System.Func{System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Partitions a grouping by nullable Boolean keys into a projection of + true elements, false elements and null elements, respectively. + </summary> + <typeparam name="T">Type of elements in source groupings.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The source sequence.</param> + <param name="resultSelector"> + Function that projects the result from sequences of true elements, + false elements and null elements, respectively, passed as + arguments. + </param> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="resultSelector"/> is + <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Partition``3(System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``0,System.Func{System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``2})"> + <summary> + Partitions a grouping and projects a result from group elements + matching a key and those groups that do not. + </summary> + <typeparam name="TKey">Type of keys in source groupings.</typeparam> + <typeparam name="TElement">Type of elements in source + groupings.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The source sequence.</param> + <param name="key">The key to partition.</param> + <param name="resultSelector"> + Function that projects the result from sequences of elements + matching <paramref name="key"/> and those groups that do not (in the + order in which they appear in <paramref name="source"/>), passed as + arguments. + </param> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="resultSelector"/> is + <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Partition``3(System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``0,System.Collections.Generic.IEqualityComparer{``0},System.Func{System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``2})"> + <summary> + Partitions a grouping and projects a result from group elements + matching a key and those groups that do not. An additional parameter + specifies how to compare keys for equality. + </summary> + <typeparam name="TKey">Type of keys in source groupings.</typeparam> + <typeparam name="TElement">Type of elements in source groupings.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The source sequence.</param> + <param name="key">The key to partition on.</param> + <param name="comparer">The comparer for keys.</param> + <param name="resultSelector"> + Function that projects the result from elements of the group + matching <paramref name="key"/> and those groups that do not (in + the order in which they appear in <paramref name="source"/>), + passed as arguments. + </param> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="resultSelector"/> is + <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Partition``3(System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``0,``0,System.Func{System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``2})"> + <summary> + Partitions a grouping and projects a result from elements of + groups matching a set of two keys and those groups that do not. + </summary> + <typeparam name="TKey">Type of keys in source groupings.</typeparam> + <typeparam name="TElement">Type of elements in source groupings.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The source sequence.</param> + <param name="key1">The first key to partition on.</param> + <param name="key2">The second key to partition on.</param> + <param name="resultSelector"> + Function that projects the result from elements of the group + matching <paramref name="key1"/>, elements of the group matching + <paramref name="key2"/> and those groups that do not (in the order + in which they appear in <paramref name="source"/>), passed as + arguments. + </param> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="resultSelector"/> is + <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Partition``3(System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``0,``0,System.Collections.Generic.IEqualityComparer{``0},System.Func{System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``2})"> + <summary> + Partitions a grouping and projects a result from elements of + groups matching a set of two keys and those groups that do not. + An additional parameter specifies how to compare keys for equality. + </summary> + <typeparam name="TKey">Type of keys in source groupings.</typeparam> + <typeparam name="TElement">Type of elements in source groupings.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The source sequence.</param> + <param name="key1">The first key to partition on.</param> + <param name="key2">The second key to partition on.</param> + <param name="comparer">The comparer for keys.</param> + <param name="resultSelector"> + Function that projects the result from elements of the group + matching <paramref name="key1"/>, elements of the group matching + <paramref name="key2"/> and those groups that do not (in the order + in which they appear in <paramref name="source"/>), passed as + arguments. + </param> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="resultSelector"/> is + <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Partition``3(System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``0,``0,``0,System.Func{System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``2})"> + <summary> + Partitions a grouping and projects a result from elements groups + matching a set of three keys and those groups that do not. + </summary> + <typeparam name="TKey">Type of keys in source groupings.</typeparam> + <typeparam name="TElement">Type of elements in source groupings.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The source sequence.</param> + <param name="key1">The first key to partition on.</param> + <param name="key2">The second key to partition on.</param> + <param name="key3">The third key to partition on.</param> + <param name="resultSelector"> + Function that projects the result from elements of groups + matching <paramref name="key1"/>, <paramref name="key2"/> and + <paramref name="key3"/> and those groups that do not (in the order + in which they appear in <paramref name="source"/>), passed as + arguments. + </param> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="resultSelector"/> is + <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Partition``3(System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``0,``0,``0,System.Collections.Generic.IEqualityComparer{``0},System.Func{System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``2})"> + <summary> + Partitions a grouping and projects a result from elements groups + matching a set of three keys and those groups that do not. An + additional parameter specifies how to compare keys for equality. + </summary> + <typeparam name="TKey">Type of keys in source groupings.</typeparam> + <typeparam name="TElement">Type of elements in source groupings.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The source sequence.</param> + <param name="key1">The first key to partition on.</param> + <param name="key2">The second key to partition on.</param> + <param name="key3">The third key to partition on.</param> + <param name="comparer">The comparer for keys.</param> + <param name="resultSelector"> + Function that projects the result from elements of groups + matching <paramref name="key1"/>, <paramref name="key2"/> and + <paramref name="key3"/> and those groups that do not (in + the order in which they appear in <paramref name="source"/>), + passed as arguments. + </param> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="resultSelector"/> is + <see langword="null"/>. + </exception> + </member> + <member name="T:MoreLinq.MoreEnumerable.PermutationEnumerator`1"> + <summary> + The private implementation class that produces permutations of a sequence. + </summary> + </member> + <member name="M:MoreLinq.MoreEnumerable.PermutationEnumerator`1.NextPermutation"> + <summary> + Transposes elements in the cached permutation array to produce the next permutation + </summary> + </member> + <member name="M:MoreLinq.MoreEnumerable.PermutationEnumerator`1.PermuteValueSet"> + <summary> + Creates a new list containing the values from the original + set in their new permuted order. + </summary> + <remarks> + The reason we return a new permuted value set, rather than reuse + an existing collection, is that we have no control over what the + consumer will do with the results produced. They could very easily + generate and store a set of permutations and only then begin to + process them. If we reused the same collection, the caller would + be surprised to discover that all of the permutations looked the + same. + </remarks> + <returns>List of permuted source sequence values</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Permutations``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Generates a sequence of lists that represent the permutations of the original sequence. + </summary> + <typeparam name="T">The type of the elements in the sequence.</typeparam> + <param name="sequence">The original sequence to permute.</param> + <returns> + A sequence of lists representing permutations of the original sequence.</returns> + <exception cref="T:System.OverflowException"> + Too many permutations (limited by <see cref="F:System.UInt64.MaxValue"/>); thrown during iteration + of the resulting sequence.</exception> + <remarks> + <para> + A permutation is a unique re-ordering of the elements of the sequence.</para> + <para> + This operator returns permutations in a deferred, streaming fashion; however, each + permutation is materialized into a new list. There are N! permutations of a sequence, + where N ⇒ <c>sequence.Count()</c>.</para> + <para> + Be aware that the original sequence is considered one of the permutations and will be + returned as one of the results.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Pipe``1(System.Collections.Generic.IEnumerable{``0},System.Action{``0})"> + <summary> + Executes the given action on each element in the source sequence + and yields it. + </summary> + <typeparam name="T">The type of the elements in the sequence</typeparam> + <param name="source">The sequence of elements</param> + <param name="action">The action to execute on each element</param> + <returns>A sequence with source elements in their original order.</returns> + <remarks> + The returned sequence is essentially a duplicate of + the original, but with the extra action being executed while the + sequence is evaluated. The action is always taken before the element + is yielded, so any changes made by the action will be visible in the + returned sequence. This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Prepend``1(System.Collections.Generic.IEnumerable{``0},``0)"> + <summary> + Prepends a single value to a sequence. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The sequence to prepend to.</param> + <param name="value">The value to prepend.</param> + <returns> + Returns a sequence where a value is prepended to it. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <code><![CDATA[ + int[] numbers = { 1, 2, 3 }; + var result = numbers.Prepend(0); + ]]></code> + The <c>result</c> variable, when iterated over, will yield + 0, 1, 2 and 3, in turn. + </member> + <member name="M:MoreLinq.MoreEnumerable.PreScan``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0},``0)"> + <summary> + Performs a pre-scan (exclusive prefix sum) on a sequence of elements. + </summary> + <remarks> + An exclusive prefix sum returns an equal-length sequence where the + N-th element is the sum of the first N-1 input elements (the first + element is a special case, it is set to the identity). More + generally, the pre-scan allows any commutative binary operation, + not just a sum. + The inclusive version of PreScan is <see cref="M:MoreLinq.MoreEnumerable.Scan``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0})"/>. + This operator uses deferred execution and streams its result. + </remarks> + <example> + <code><![CDATA[ + int[] values = { 1, 2, 3, 4 }; + var prescan = values.PreScan((a, b) => a + b, 0); + var scan = values.Scan((a, b) => a + b); + var result = values.EquiZip(prescan, ValueTuple.Create); + ]]></code> + <c>prescan</c> will yield <c>{ 0, 1, 3, 6 }</c>, while <c>scan</c> + and <c>result</c> will both yield <c>{ 1, 3, 6, 10 }</c>. This + shows the relationship between the inclusive and exclusive prefix sum. + </example> + <typeparam name="TSource">Type of elements in source sequence</typeparam> + <param name="source">Source sequence</param> + <param name="transformation">Transformation operation</param> + <param name="identity">Identity element (see remarks)</param> + <returns>The scanned sequence</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Random"> + <summary> + Returns an infinite sequence of random integers using the standard + .NET random number generator. + </summary> + <returns>An infinite sequence of random integers</returns> + <remarks> + <para> + The implementation internally uses a shared, thread-local instance of + <see cref="T:System.Random" /> to generate a random number on each + iteration. The actual <see cref="T:System.Random" /> instance used + therefore will depend on the thread on which a single iteration is + taking place; that is the call to + <see cref="M:System.Collections.IEnumerator.MoveNext" />. If the + overall iteration takes place on different threads (e.g. + via asynchronous awaits completing on different threads) then various + different <see cref="T:System.Random" /> instances will be involved + in the generation of the sequence of random numbers. Because the + <see cref="T:System.Random" /> instance is shared, if multiple sequences + are generated on the same thread, the order of enumeration affects the + resulting sequences.</para> + <para> + On .NET 6 or later, <c>System.Random.Shared</c> is used.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Random(System.Random)"> + <summary> + Returns an infinite sequence of random integers using the supplied + random number generator. + </summary> + <param name="rand">Random generator used to produce random numbers</param> + <returns>An infinite sequence of random integers</returns> + <exception cref="T:System.ArgumentNullException">Thrown if <paramref name="rand"/> is <see langword="null"/>.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Random(System.Int32)"> + <summary> + Returns an infinite sequence of random integers between zero and + a given maximum. + </summary> + <param name="maxValue">exclusive upper bound for the random values returned</param> + <returns>An infinite sequence of random integers</returns> + <remarks> + <para> + The implementation internally uses a shared, thread-local instance of + <see cref="T:System.Random" /> to generate a random number on each + iteration. The actual <see cref="T:System.Random" /> instance used + therefore will depend on the thread on which a single iteration is + taking place; that is the call to + <see cref="M:System.Collections.IEnumerator.MoveNext" />. If the + overall iteration takes place on different threads (e.g. + via asynchronous awaits completing on different threads) then various + different <see cref="T:System.Random" /> instances will be involved + in the generation of the sequence of random numbers. Because the + <see cref="T:System.Random" /> instance is shared, if multiple sequences + are generated on the same thread, the order of enumeration affects the + resulting sequences.</para> + <para> + On .NET 6 or later, <c>System.Random.Shared</c> is used.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Random(System.Random,System.Int32)"> + <summary> + Returns an infinite sequence of random integers between zero and a + given maximum using the supplied random number generator. + </summary> + <param name="rand">Random generator used to produce values</param> + <param name="maxValue">Exclusive upper bound for random values returned</param> + <returns>An infinite sequence of random integers</returns> + <exception cref="T:System.ArgumentNullException">Thrown if <paramref name="rand"/> is <see langword="null"/>.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Random(System.Int32,System.Int32)"> + <summary> + Returns an infinite sequence of random integers between a given + minimum and a maximum. + </summary> + <param name="minValue">Inclusive lower bound of the values returned</param> + <param name="maxValue">Exclusive upper bound of the values returned</param> + <returns>An infinite sequence of random integers</returns> + <remarks> + <para> + The implementation internally uses a shared, thread-local instance of + <see cref="T:System.Random" /> to generate a random number on each + iteration. The actual <see cref="T:System.Random" /> instance used + therefore will depend on the thread on which a single iteration is + taking place; that is the call to + <see cref="M:System.Collections.IEnumerator.MoveNext" />. If the + overall iteration takes place on different threads (e.g. + via asynchronous awaits completing on different threads) then various + different <see cref="T:System.Random" /> instances will be involved + in the generation of the sequence of random numbers. Because the + <see cref="T:System.Random" /> instance is shared, if multiple sequences + are generated on the same thread, the order of enumeration affects the + resulting sequences.</para> + <para> + On .NET 6 or later, <c>System.Random.Shared</c> is used.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Random(System.Random,System.Int32,System.Int32)"> + <summary> + Returns an infinite sequence of random integers between a given + minimum and a maximum using the supplied random number generator. + </summary> + <param name="rand">Generator used to produce random numbers</param> + <param name="minValue">Inclusive lower bound of the values returned</param> + <param name="maxValue">Exclusive upper bound of the values returned</param> + <returns>An infinite sequence of random integers</returns> + <exception cref="T:System.ArgumentNullException">Thrown if <paramref name="rand"/> is <see langword="null"/>.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.RandomDouble"> + <summary> + Returns an infinite sequence of random double values between 0.0 and 1.0 + </summary> + <returns>An infinite sequence of random doubles</returns> + <remarks> + <para> + The implementation internally uses a shared, thread-local instance of + <see cref="T:System.Random" /> to generate a random number on each + iteration. The actual <see cref="T:System.Random" /> instance used + therefore will depend on the thread on which a single iteration is + taking place; that is the call to + <see cref="M:System.Collections.IEnumerator.MoveNext" />. If the + overall iteration takes place on different threads (e.g. + via asynchronous awaits completing on different threads) then various + different <see cref="T:System.Random" /> instances will be involved + in the generation of the sequence of random numbers. Because the + <see cref="T:System.Random" /> instance is shared, if multiple sequences + are generated on the same thread, the order of enumeration affects the + resulting sequences.</para> + <para> + On .NET 6 or later, <c>System.Random.Shared</c> is used.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.RandomDouble(System.Random)"> + <summary> + Returns an infinite sequence of random double values between 0.0 and 1.0 + using the supplied random number generator. + </summary> + <param name="rand">Generator used to produce random numbers</param> + <returns>An infinite sequence of random doubles</returns> + <exception cref="T:System.ArgumentNullException">Thrown if <paramref name="rand"/> is <see langword="null"/>.</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.RandomImpl``1(System.Random,System.Func{System.Random,``0})"> + <summary> + This is the underlying implementation that all random operators use to + produce a sequence of random values. + </summary> + <typeparam name="T">The type of value returned (either Int32 or Double)</typeparam> + <param name="rand">Random generators used to produce the sequence</param> + <param name="nextValue">Generator function that actually produces the next value - specific to T</param> + <returns>An infinite sequence of random numbers of type T</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.RandomSubset``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Returns a sequence of a specified size of random elements from the + original sequence. + </summary> + <typeparam name="T">The type of source sequence elements.</typeparam> + <param name="source"> + The sequence from which to return random elements.</param> + <param name="subsetSize">The size of the random subset to return.</param> + <returns> + A random sequence of elements in random order from the original + sequence.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.RandomSubset``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Random)"> + <summary> + Returns a sequence of a specified size of random elements from the + original sequence. An additional parameter specifies a random + generator to be used for the random selection algorithm. + </summary> + <typeparam name="T">The type of source sequence elements.</typeparam> + <param name="source"> + The sequence from which to return random elements.</param> + <param name="subsetSize">The size of the random subset to return.</param> + <param name="rand"> + A random generator used as part of the selection algorithm.</param> + <returns> + A random sequence of elements in random order from the original + sequence.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Rank``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Ranks each item in the sequence in descending ordering using a default comparer. + </summary> + <typeparam name="TSource">Type of item in the sequence</typeparam> + <param name="source">The sequence whose items will be ranked</param> + <returns>A sequence of position integers representing the ranks of the corresponding items in the sequence</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Rank``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IComparer{``0})"> + <summary> + Rank each item in the sequence using a caller-supplied comparer. + </summary> + <typeparam name="TSource">The type of the elements in the source sequence</typeparam> + <param name="source">The sequence of items to rank</param> + <param name="comparer">A object that defines comparison semantics for the elements in the sequence</param> + <returns>A sequence of position integers representing the ranks of the corresponding items in the sequence</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.RankBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Ranks each item in the sequence in descending ordering by a specified key using a default comparer + </summary> + <typeparam name="TSource">The type of the elements in the source sequence</typeparam> + <typeparam name="TKey">The type of the key used to rank items in the sequence</typeparam> + <param name="source">The sequence of items to rank</param> + <param name="keySelector">A key selector function which returns the value by which to rank items in the sequence</param> + <returns>A sequence of position integers representing the ranks of the corresponding items in the sequence</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.RankBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1})"> + <summary> + Ranks each item in a sequence using a specified key and a caller-supplied comparer + </summary> + <typeparam name="TSource">The type of the elements in the source sequence</typeparam> + <typeparam name="TKey">The type of the key used to rank items in the sequence</typeparam> + <param name="source">The sequence of items to rank</param> + <param name="keySelector">A key selector function which returns the value by which to rank items in the sequence</param> + <param name="comparer">An object that defines the comparison semantics for keys used to rank items</param> + <returns>A sequence of position integers representing the ranks of the corresponding items in the sequence</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Repeat``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Repeats the sequence the specified number of times. + </summary> + <typeparam name="T">Type of elements in sequence</typeparam> + <param name="sequence">The sequence to repeat</param> + <param name="count">Number of times to repeat the sequence</param> + <returns>A sequence produced from the repetition of the original source sequence</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Repeat``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Repeats the sequence forever. + </summary> + <typeparam name="T">Type of elements in sequence</typeparam> + <param name="sequence">The sequence to repeat</param> + <returns>A sequence produced from the infinite repetition of the original source sequence</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Return``1(``0)"> + <summary> + Returns a single-element sequence containing the item provided. + </summary> + <typeparam name="T">The type of the item.</typeparam> + <param name="item">The item to return in a sequence.</param> + <returns>A sequence containing only <paramref name="item"/>.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.RightJoin``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``0,``0,``2})"> + <summary> + Performs a right outer join on two homogeneous sequences. + Additional arguments specify key selection functions and result + projection functions. + </summary> + <typeparam name="TSource"> + The type of elements in the source sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector function.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence of the join operation.</param> + <param name="second"> + The second sequence of the join operation.</param> + <param name="keySelector"> + Function that projects the key given an element of one of the + sequences to join.</param> + <param name="secondSelector"> + Function that projects the result given just an element from + <paramref name="second"/> where there is no corresponding element + in <paramref name="first"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <returns>A sequence containing results projected from a right + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.RightJoin``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``0,``0,``2},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Performs a right outer join on two homogeneous sequences. + Additional arguments specify key selection functions, result + projection functions and a key comparer. + </summary> + <typeparam name="TSource"> + The type of elements in the source sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector function.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence of the join operation.</param> + <param name="second"> + The second sequence of the join operation.</param> + <param name="keySelector"> + Function that projects the key given an element of one of the + sequences to join.</param> + <param name="secondSelector"> + Function that projects the result given just an element from + <paramref name="second"/> where there is no corresponding element + in <paramref name="first"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <param name="comparer"> + The <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> instance used to compare + keys for equality.</param> + <returns>A sequence containing results projected from a right + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.RightJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``1,``3},System.Func{``0,``1,``3})"> + <summary> + Performs a right outer join on two heterogeneous sequences. + Additional arguments specify key selection functions and result + projection functions. + </summary> + <typeparam name="TFirst"> + The type of elements in the first sequence.</typeparam> + <typeparam name="TSecond"> + The type of elements in the second sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector functions.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence of the join operation.</param> + <param name="second"> + The second sequence of the join operation.</param> + <param name="firstKeySelector"> + Function that projects the key given an element from <paramref name="first"/>.</param> + <param name="secondKeySelector"> + Function that projects the key given an element from <paramref name="second"/>.</param> + <param name="secondSelector"> + Function that projects the result given just an element from + <paramref name="second"/> where there is no corresponding element + in <paramref name="first"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <returns>A sequence containing results projected from a right + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.RightJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``1,``3},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})"> + <summary> + Performs a right outer join on two heterogeneous sequences. + Additional arguments specify key selection functions, result + projection functions and a key comparer. + </summary> + <typeparam name="TFirst"> + The type of elements in the first sequence.</typeparam> + <typeparam name="TSecond"> + The type of elements in the second sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector functions.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence of the join operation.</param> + <param name="second"> + The second sequence of the join operation.</param> + <param name="firstKeySelector"> + Function that projects the key given an element from <paramref name="first"/>.</param> + <param name="secondKeySelector"> + Function that projects the key given an element from <paramref name="second"/>.</param> + <param name="secondSelector"> + Function that projects the result given just an element from + <paramref name="second"/> where there is no corresponding element + in <paramref name="first"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <param name="comparer"> + The <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> instance used to compare + keys for equality.</param> + <returns>A sequence containing results projected from a right + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.RunLengthEncode``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Run-length encodes a sequence by converting consecutive instances of the same element into + a <c>KeyValuePair{T,int}</c> representing the item and its occurrence count. + </summary> + <typeparam name="T">The type of the elements in the sequence</typeparam> + <param name="sequence">The sequence to run length encode</param> + <returns>A sequence of <c>KeyValuePair{T,int}</c> where the key is the element and the value is the occurrence count</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.RunLengthEncode``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Run-length encodes a sequence by converting consecutive instances of the same element into + a <c>KeyValuePair{T,int}</c> representing the item and its occurrence count. This overload + uses a custom equality comparer to identify equivalent items. + </summary> + <typeparam name="T">The type of the elements in the sequence</typeparam> + <param name="sequence">The sequence to run length encode</param> + <param name="comparer">The comparer used to identify equivalent items</param> + <returns>A sequence of <c>KeyValuePair{T,int}</c> where they key is the element and the value is the occurrence count</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Scan``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0})"> + <summary> + Performs a scan (inclusive prefix sum) on a sequence of elements. + </summary> + <remarks> + An inclusive prefix sum returns an equal-length sequence where the + N-th element is the sum of the first N input elements. More + generally, the scan allows any commutative binary operation, not + just a sum. + The exclusive version of Scan is <see cref="M:MoreLinq.MoreEnumerable.PreScan``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0},``0)"/>. + This operator uses deferred execution and streams its result. + </remarks> + <example> + <code><![CDATA[ + int[] values = { 1, 2, 3, 4 }; + var prescan = values.PreScan((a, b) => a + b, 0); + var scan = values.Scan((a, b) => a + b); + var result = values.EquiZip(scan, ValueTuple.Create); + ]]></code> + <c>prescan</c> will yield <c>{ 0, 1, 3, 6 }</c>, while <c>scan</c> + and <c>result</c> will both yield <c>{ 1, 3, 6, 10 }</c>. This + shows the relationship between the inclusive and exclusive prefix sum. + </example> + <typeparam name="TSource">Type of elements in source sequence</typeparam> + <param name="source">Source sequence</param> + <param name="transformation">Transformation operation</param> + <returns>The scanned sequence</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Scan``2(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1})"> + <summary> + Like <see cref="M:System.Linq.Enumerable.Aggregate``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0})"/> except returns + the sequence of intermediate results as well as the final one. + An additional parameter specifies a seed. + </summary> + <remarks> + This operator uses deferred execution and streams its result. + </remarks> + <example> + <code><![CDATA[ + var result = Enumerable.Range(1, 5).Scan(0, (a, b) => a + b); + ]]></code> + When iterated, <c>result</c> will yield <c>{ 0, 1, 3, 6, 10, 15 }</c>. + </example> + <typeparam name="TSource">Type of elements in source sequence</typeparam> + <typeparam name="TState">Type of state</typeparam> + <param name="source">Source sequence</param> + <param name="seed">Initial state to seed</param> + <param name="transformation">Transformation operation</param> + <returns>The scanned sequence</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.ScanBy``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``1,``2},System.Func{``2,``1,``0,``2})"> + <summary> + Applies an accumulator function over sequence element keys, + returning the keys along with intermediate accumulator states. + </summary> + <typeparam name="TSource">Type of the elements of the source sequence.</typeparam> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TState">Type of the state.</typeparam> + <param name="source">The source sequence.</param> + <param name="keySelector"> + A function that returns the key given an element.</param> + <param name="seedSelector"> + A function to determine the initial value for the accumulator that is + invoked once per key encountered.</param> + <param name="accumulator"> + An accumulator function invoked for each element.</param> + <returns> + A sequence of keys paired with intermediate accumulator states. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.ScanBy``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``1,``2},System.Func{``2,``1,``0,``2},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Applies an accumulator function over sequence element keys, + returning the keys along with intermediate accumulator states. An + additional parameter specifies the comparer to use to compare keys. + </summary> + <typeparam name="TSource">Type of the elements of the source sequence.</typeparam> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TState">Type of the state.</typeparam> + <param name="source">The source sequence.</param> + <param name="keySelector"> + A function that returns the key given an element.</param> + <param name="seedSelector"> + A function to determine the initial value for the accumulator that is + invoked once per key encountered.</param> + <param name="accumulator"> + An accumulator function invoked for each element.</param> + <param name="comparer">The equality comparer to use to determine + whether or not keys are equal. If <c>null</c>, the default equality + comparer for <typeparamref name="TSource"/> is used.</param> + <returns> + A sequence of keys paired with intermediate accumulator states. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.ScanRight``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0})"> + <summary> + Performs a right-associative scan (inclusive prefix) on a sequence of elements. + This operator is the right-associative version of the + <see cref="M:MoreLinq.MoreEnumerable.Scan``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0})"/> LINQ operator. + </summary> + <typeparam name="TSource">Type of elements in source sequence.</typeparam> + <param name="source">Source sequence.</param> + <param name="func"> + A right-associative accumulator function to be invoked on each element. + Its first argument is the current value in the sequence; second argument is the previous accumulator value. + </param> + <returns>The scanned sequence.</returns> + <example> + <code><![CDATA[ + var result = Enumerable.Range(1, 5).Select(i => i.ToString()).ScanRight((a, b) => $"({a}+{b})"); + ]]></code> + The <c>result</c> variable will contain <c>[ "(1+(2+(3+(4+5))))", "(2+(3+(4+5)))", "(3+(4+5))", "(4+5)", "5" ]</c>. + </example> + <remarks> + This operator uses deferred execution and streams its results. + Source sequence is consumed greedily when an iteration of the resulting sequence begins. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ScanRight``2(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``0,``1,``1})"> + <summary> + Performs a right-associative scan (inclusive prefix) on a sequence of elements. + The specified seed value is used as the initial accumulator value. + This operator is the right-associative version of the + <see cref="M:MoreLinq.MoreEnumerable.Scan``2(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1})"/> LINQ operator. + </summary> + <typeparam name="TSource">The type of the elements of source.</typeparam> + <typeparam name="TAccumulate">The type of the accumulator value.</typeparam> + <param name="source">Source sequence.</param> + <param name="seed">The initial accumulator value.</param> + <param name="func">A right-associative accumulator function to be invoked on each element.</param> + <returns>The scanned sequence.</returns> + <example> + <code><![CDATA[ + var result = Enumerable.Range(1, 4).ScanRight("5", (a, b) => $"({a}+{b})"); + ]]></code> + The <c>result</c> variable will contain <c>[ "(1+(2+(3+(4+5))))", "(2+(3+(4+5)))", "(3+(4+5))", "(4+5)", "5" ]</c>. + </example> + <remarks> + This operator uses deferred execution and streams its results. + Source sequence is consumed greedily when an iteration of the resulting sequence begins. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Segment``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean})"> + <summary> + Divides a sequence into multiple sequences by using a segment detector based on the original sequence + </summary> + <typeparam name="T">The type of the elements in the sequence</typeparam> + <param name="source">The sequence to segment</param> + <param name="newSegmentPredicate">A function, which returns <c>true</c> if the given element begins a new segment, and <c>false</c> otherwise</param> + <returns>A sequence of segment, each of which is a portion of the original sequence</returns> + <exception cref="T:System.ArgumentNullException"> + Thrown if either <paramref name="source"/> or <paramref name="newSegmentPredicate"/> are <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Segment``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Int32,System.Boolean})"> + <summary> + Divides a sequence into multiple sequences by using a segment detector based on the original sequence + </summary> + <typeparam name="T">The type of the elements in the sequence</typeparam> + <param name="source">The sequence to segment</param> + <param name="newSegmentPredicate">A function, which returns <c>true</c> if the given element or index indicate a new segment, and <c>false</c> otherwise</param> + <returns>A sequence of segment, each of which is a portion of the original sequence</returns> + <exception cref="T:System.ArgumentNullException"> + Thrown if either <paramref name="source"/> or <paramref name="newSegmentPredicate"/> are <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Segment``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,System.Int32,System.Boolean})"> + <summary> + Divides a sequence into multiple sequences by using a segment detector based on the original sequence + </summary> + <typeparam name="T">The type of the elements in the sequence</typeparam> + <param name="source">The sequence to segment</param> + <param name="newSegmentPredicate">A function, which returns <c>true</c> if the given current element, previous element or index indicate a new segment, and <c>false</c> otherwise</param> + <returns>A sequence of segment, each of which is a portion of the original sequence</returns> + <exception cref="T:System.ArgumentNullException"> + Thrown if either <paramref name="source"/> or <paramref name="newSegmentPredicate"/> are <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Sequence(System.Int32,System.Int32)"> + <summary> + Generates a sequence of integral numbers within the (inclusive) specified range. + If sequence is ascending the step is +1, otherwise -1. + </summary> + <param name="start">The value of the first integer in the sequence.</param> + <param name="stop">The value of the last integer in the sequence.</param> + <returns>An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains a range of sequential integral numbers.</returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + var result = MoreEnumerable.Sequence(6, 0); + ]]></code> + The <c>result</c> variable will contain <c>{ 6, 5, 4, 3, 2, 1, 0 }</c>. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.Sequence(System.Int32,System.Int32,System.Int32)"> + <summary> + Generates a sequence of integral numbers within the (inclusive) specified range. + An additional parameter specifies the steps in which the integers of the sequence increase or decrease. + </summary> + <param name="start">The value of the first integer in the sequence.</param> + <param name="stop">The value of the last integer in the sequence.</param> + <param name="step">The step to define the next number.</param> + <returns>An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains a range of sequential integral numbers.</returns> + <remarks> + When <paramref name="step"/> is equal to zero, this operator returns an + infinite sequence where all elements are equals to <paramref name="start"/>. + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + var result = MoreEnumerable.Sequence(6, 0, -2); + ]]></code> + The <c>result</c> variable will contain <c>{ 6, 4, 2, 0 }</c>. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.Shuffle``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Returns a sequence of elements in random order from the original + sequence. + </summary> + <typeparam name="T">The type of source sequence elements.</typeparam> + <param name="source"> + The sequence from which to return random elements.</param> + <returns> + A sequence of elements <paramref name="source"/> randomized in + their order. + </returns> + <remarks> + This method uses deferred execution and streams its results. The + source sequence is entirely buffered before the results are + streamed. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Shuffle``1(System.Collections.Generic.IEnumerable{``0},System.Random)"> + <summary> + Returns a sequence of elements in random order from the original + sequence. An additional parameter specifies a random generator to be + used for the random selection algorithm. + </summary> + <typeparam name="T">The type of source sequence elements.</typeparam> + <param name="source"> + The sequence from which to return random elements.</param> + <param name="rand"> + A random generator used as part of the selection algorithm.</param> + <returns> + A sequence of elements <paramref name="source"/> randomized in + their order. + </returns> + <remarks> + This method uses deferred execution and streams its results. The + source sequence is entirely buffered before the results are + streamed. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.SkipLast``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Bypasses a specified number of elements at the end of the sequence. + </summary> + <typeparam name="T">Type of the source sequence</typeparam> + <param name="source">The source sequence.</param> + <param name="count">The number of elements to bypass at the end of the source sequence.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> containing the source sequence elements except for the bypassed ones at the end. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.SkipUntil``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean})"> + <summary> + Skips items from the input sequence until the given predicate returns true + when applied to the current source item; that item will be the last skipped. + </summary> + <remarks> + <para> + SkipUntil differs from Enumerable.SkipWhile in two respects. Firstly, the sense + of the predicate is reversed: it is expected that the predicate will return false + to start with, and then return true - for example, when trying to find a matching + item in a sequence. + </para> + <para> + Secondly, SkipUntil skips the element which causes the predicate to return true. For + example, in a sequence <code><![CDATA[{ 1, 2, 3, 4, 5 }]]></code> and with a predicate of + <code><![CDATA[x => x == 3]]></code>, the result would be <code><![CDATA[{ 4, 5 }]]></code>. + </para> + <para> + SkipUntil is as lazy as possible: it will not iterate over the source sequence + until it has to, it won't iterate further than it has to, and it won't evaluate + the predicate until it has to. (This means that an item may be returned which would + actually cause the predicate to throw an exception if it were evaluated, so long as + it comes after the first item causing the predicate to return true.) + </para> + </remarks> + <typeparam name="TSource">Type of the source sequence</typeparam> + <param name="source">Source sequence</param> + <param name="predicate">Predicate used to determine when to stop yielding results from the source.</param> + <returns>Items from the source sequence after the predicate first returns true when applied to the item.</returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> or <paramref name="predicate"/> is null</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.Slice``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Int32)"> + <summary> + Extracts a contiguous count of elements from a sequence at a particular zero-based + starting index. + </summary> + <typeparam name="T">The type of the elements in the source sequence.</typeparam> + <param name="sequence">The sequence from which to extract elements.</param> + <param name="startIndex">The zero-based index at which to begin slicing.</param> + <param name="count">The number of items to slice out of the index.</param> + <returns> + A new sequence containing any elements sliced out from the source sequence.</returns> + <remarks> + <para> + If the starting position or count specified result in slice extending past the end of + the sequence, it will return all elements up to that point. There is no guarantee that + the resulting sequence will contain the number of elements requested - it may have + anywhere from 0 to <paramref name="count"/>.</para> + <para> + This method is implemented in an optimized manner for any sequence implementing <see + cref="T:System.Collections.Generic.IList`1"/>.</para> + <para> + The result of <see cref="M:MoreLinq.MoreEnumerable.Slice``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Int32)"/> is identical to: + <c>sequence.Skip(startIndex).Take(count)</c></para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.SortedMerge``1(System.Collections.Generic.IEnumerable{``0},MoreLinq.OrderByDirection,System.Collections.Generic.IEnumerable{``0}[])"> + <summary> + Merges two or more sequences that are in a common order (either ascending or descending) + into a single sequence that preserves that order. + </summary> + <typeparam name="TSource">The type of the elements of the sequence.</typeparam> + <param name="source">The primary sequence with which to merge.</param> + <param name="direction">The ordering that all sequences must already exhibit.</param> + <param name="otherSequences">A variable argument array of zero or more other sequences + to merge with.</param> + <returns> + A merged, order-preserving sequence containing all of the elements of the original + sequences.</returns> + <remarks> + <para> + Using <see + cref="M:MoreLinq.MoreEnumerable.SortedMerge``1(System.Collections.Generic.IEnumerable{``0},MoreLinq.OrderByDirection,System.Collections.Generic.IEnumerable{``0}[])"/> + on sequences that are not ordered or are not in the same order produces undefined + results.</para> + <para> + <see + cref="M:MoreLinq.MoreEnumerable.SortedMerge``1(System.Collections.Generic.IEnumerable{``0},MoreLinq.OrderByDirection,System.Collections.Generic.IEnumerable{``0}[])"/> + uses performs the merge in a deferred, streaming manner.</para> + <para> + Here is an example of a merge, as well as the produced result:</para> + <code><![CDATA[ + var s1 = new[] { 3, 7, 11 }; + var s2 = new[] { 2, 4, 20 }; + var s3 = new[] { 17, 19, 25 }; + var merged = s1.SortedMerge(OrderByDirection.Ascending, s2, s3); + var result = merged.ToArray(); + // result will be: + // { 2, 3, 4, 7, 11, 17, 19, 20, 25 } + ]]></code> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.SortedMerge``1(System.Collections.Generic.IEnumerable{``0},MoreLinq.OrderByDirection,System.Collections.Generic.IComparer{``0},System.Collections.Generic.IEnumerable{``0}[])"> + <summary> + Merges two or more sequences that are in a common order (either ascending or descending) + into a single sequence that preserves that order. + </summary> + <typeparam name="TSource">The type of the elements in the sequence.</typeparam> + <param name="source">The primary sequence with which to merge.</param> + <param name="direction">The ordering that all sequences must already exhibit.</param> + <param name="comparer">The comparer used to evaluate the relative order between + elements.</param> + <param name="otherSequences">A variable argument array of zero or more other sequences + to merge with.</param> + <returns> + A merged, order-preserving sequence containing al of the elements of the original + sequences.</returns> + </member> + <member name="T:MoreLinq.MoreEnumerable.DisposableGroup`1"> + <summary> + Class used to assist in ensuring that groups of disposable iterators + are disposed - either when Excluded or when the DisposableGroup is disposed. + </summary> + </member> + <member name="M:MoreLinq.MoreEnumerable.Split``1(System.Collections.Generic.IEnumerable{``0},``0)"> + <summary> + Splits the source sequence by a separator. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="separator">Separator element.</param> + <returns>A sequence of splits of elements.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Split``1(System.Collections.Generic.IEnumerable{``0},``0,System.Int32)"> + <summary> + Splits the source sequence by a separator given a maximum count of splits. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="separator">Separator element.</param> + <param name="count">Maximum number of splits.</param> + <returns>A sequence of splits of elements.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Split``2(System.Collections.Generic.IEnumerable{``0},``0,System.Func{System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Splits the source sequence by a separator and then transforms + the splits into results. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result sequence elements.</typeparam> + <param name="source">The source sequence.</param> + <param name="separator">Separator element.</param> + <param name="resultSelector">Function used to project splits + of source elements into elements of the resulting sequence.</param> + <returns> + A sequence of values typed as <typeparamref name="TResult"/>. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Split``2(System.Collections.Generic.IEnumerable{``0},``0,System.Int32,System.Func{System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Splits the source sequence by a separator, given a maximum count + of splits, and then transforms the splits into results. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result sequence elements.</typeparam> + <param name="source">The source sequence.</param> + <param name="separator">Separator element.</param> + <param name="count">Maximum number of splits.</param> + <param name="resultSelector">Function used to project splits + of source elements into elements of the resulting sequence.</param> + <returns> + A sequence of values typed as <typeparamref name="TResult"/>. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Split``1(System.Collections.Generic.IEnumerable{``0},``0,System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Splits the source sequence by a separator and then transforms the + splits into results. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="separator">Separator element.</param> + <param name="comparer">Comparer used to determine separator + element equality.</param> + <returns>A sequence of splits of elements.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Split``1(System.Collections.Generic.IEnumerable{``0},``0,System.Collections.Generic.IEqualityComparer{``0},System.Int32)"> + <summary> + Splits the source sequence by a separator, given a maximum count + of splits. A parameter specifies how the separator is compared + for equality. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="separator">Separator element.</param> + <param name="comparer">Comparer used to determine separator + element equality.</param> + <param name="count">Maximum number of splits.</param> + <returns>A sequence of splits of elements.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Split``2(System.Collections.Generic.IEnumerable{``0},``0,System.Collections.Generic.IEqualityComparer{``0},System.Func{System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Splits the source sequence by a separator and then transforms the + splits into results. A parameter specifies how the separator is + compared for equality. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result sequence elements.</typeparam> + <param name="source">The source sequence.</param> + <param name="separator">Separator element.</param> + <param name="comparer">Comparer used to determine separator + element equality.</param> + <param name="resultSelector">Function used to project splits + of source elements into elements of the resulting sequence.</param> + <returns> + A sequence of values typed as <typeparamref name="TResult"/>. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Split``2(System.Collections.Generic.IEnumerable{``0},``0,System.Collections.Generic.IEqualityComparer{``0},System.Int32,System.Func{System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Splits the source sequence by a separator, given a maximum count + of splits, and then transforms the splits into results. A + parameter specifies how the separator is compared for equality. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result sequence elements.</typeparam> + <param name="source">The source sequence.</param> + <param name="separator">Separator element.</param> + <param name="comparer">Comparer used to determine separator + element equality.</param> + <param name="count">Maximum number of splits.</param> + <param name="resultSelector">Function used to project splits + of source elements into elements of the resulting sequence.</param> + <returns> + A sequence of values typed as <typeparamref name="TResult"/>. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Split``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean})"> + <summary> + Splits the source sequence by separator elements identified by a + function. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="separatorFunc">Predicate function used to determine + the splitter elements in the source sequence.</param> + <returns>A sequence of splits of elements.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Split``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean},System.Int32)"> + <summary> + Splits the source sequence by separator elements identified by a + function, given a maximum count of splits. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="separatorFunc">Predicate function used to determine + the splitter elements in the source sequence.</param> + <param name="count">Maximum number of splits.</param> + <returns>A sequence of splits of elements.</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Split``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean},System.Func{System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Splits the source sequence by separator elements identified by + a function and then transforms the splits into results. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result sequence elements.</typeparam> + <param name="source">The source sequence.</param> + <param name="separatorFunc">Predicate function used to determine + the splitter elements in the source sequence.</param> + <param name="resultSelector">Function used to project splits + of source elements into elements of the resulting sequence.</param> + <returns> + A sequence of values typed as <typeparamref name="TResult"/>. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Split``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean},System.Int32,System.Func{System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Splits the source sequence by separator elements identified by + a function, given a maximum count of splits, and then transforms + the splits into results. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result sequence elements.</typeparam> + <param name="source">The source sequence.</param> + <param name="separatorFunc">Predicate function used to determine + the splitter elements in the source sequence.</param> + <param name="count">Maximum number of splits.</param> + <param name="resultSelector">Function used to project a split + group of source elements into an element of the resulting sequence.</param> + <returns> + A sequence of values typed as <typeparamref name="TResult"/>. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.StartsWith``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0})"> + <summary> + Determines whether the beginning of the first sequence is + equivalent to the second sequence, using the default equality + comparer. + </summary> + <typeparam name="T">Type of elements.</typeparam> + <param name="first">The sequence to check.</param> + <param name="second">The sequence to compare to.</param> + <returns> + <c>true</c> if <paramref name="first" /> begins with elements + equivalent to <paramref name="second" />. + </returns> + <remarks> + This is the <see cref="T:System.Collections.Generic.IEnumerable`1" /> equivalent of + <see cref="M:System.String.StartsWith(System.String)" /> and it calls + <see cref="M:System.Collections.Generic.IEqualityComparer`1.Equals(`0,`0)" /> using + <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/> on pairs of elements at + the same index. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.StartsWith``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Determines whether the beginning of the first sequence is + equivalent to the second sequence, using the specified element + equality comparer. + </summary> + <typeparam name="T">Type of elements.</typeparam> + <param name="first">The sequence to check.</param> + <param name="second">The sequence to compare to.</param> + <param name="comparer">Equality comparer to use.</param> + <returns> + <c>true</c> if <paramref name="first" /> begins with elements + equivalent to <paramref name="second" />. + </returns> + <remarks> + This is the <see cref="T:System.Collections.Generic.IEnumerable`1" /> equivalent of + <see cref="M:System.String.StartsWith(System.String)" /> and + it calls <see cref="M:System.Collections.Generic.IEqualityComparer`1.Equals(`0,`0)" /> on pairs + of elements at the same index. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Subsets``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Returns a sequence of <see cref="T:System.Collections.Generic.IList`1"/> representing all of the subsets of any size + that are part of the original sequence. In mathematics, it is equivalent to the + <em>power set</em> of a set. + </summary> + <param name="sequence">Sequence for which to produce subsets.</param> + <typeparam name="T">The type of the elements in the sequence.</typeparam> + <returns> + A sequence of lists that represent the all subsets of the original sequence.</returns> + <exception cref="T:System.ArgumentNullException">Thrown if <paramref name="sequence"/> is <see + langword="null"/>.</exception> + <remarks> + <para> + This operator produces all of the subsets of a given sequence. Subsets are returned in + increasing cardinality, starting with the empty set and terminating with the entire + original sequence.</para> + <para> + Subsets are produced in a deferred, streaming manner; however, each subset is returned + as a materialized list.</para> + <para> + There are 2<sup>N</sup> subsets of a given sequence, where N ⇒ + <c>sequence.Count()</c>.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Subsets``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Returns a sequence of <see cref="T:System.Collections.Generic.IList`1"/> representing all subsets of a given size + that are part of the original sequence. In mathematics, it is equivalent to the + <em>combinations</em> or <em>k-subsets</em> of a set. + </summary> + <param name="sequence">Sequence for which to produce subsets.</param> + <param name="subsetSize">The size of the subsets to produce.</param> + <typeparam name="T">The type of the elements in the sequence.</typeparam> + <returns> + A sequence of lists that represents of K-sized subsets of the original + sequence.</returns> + <exception cref="T:System.ArgumentNullException"> + Thrown if <paramref name="sequence"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.ArgumentOutOfRangeException"> + Thrown if <paramref name="subsetSize"/> is less than zero. + </exception> + </member> + <member name="T:MoreLinq.MoreEnumerable.SubsetGenerator`1"> + <summary> + This class is responsible for producing the lexographically ordered k-subsets + </summary> + </member> + <member name="T:MoreLinq.MoreEnumerable.SubsetGenerator`1.SubsetEnumerator"> + <summary> + SubsetEnumerator uses a snapshot of the original sequence, and an + iterative, reductive swap algorithm to produce all subsets of a + predetermined size less than or equal to the original set size. + </summary> + </member> + <member name="M:MoreLinq.MoreEnumerable.SubsetGenerator`1.GetEnumerator"> + <summary> + Returns an enumerator that produces all of the k-sized + subsets of the initial value set. The enumerator returns + and <see cref="T:System.Collections.Generic.IList`1"/> for each subset. + </summary> + <returns>an <see cref="T:System.Collections.IEnumerator"/> that enumerates all k-sized subsets</returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.TagFirstLast``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean,System.Boolean,``1})"> + <summary> + Returns a sequence resulting from applying a function to each + element in the source sequence with additional parameters + indicating whether the element is the first and/or last of the + sequence. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <typeparam name="TResult">The type of the element of the returned sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="resultSelector">A function that determines how to + project the each element along with its first or last tag.</param> + <returns> + Returns the resulting sequence. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + var numbers = new[] { 123, 456, 789 }; + var result = numbers.TagFirstLast((num, fst, lst) => new + { + Number = num, + IsFirst = fst, IsLast = lst + }); + ]]></code> + The <c>result</c> variable, when iterated over, will yield + <c>{ Number = 123, IsFirst = True, IsLast = False }</c>, + <c>{ Number = 456, IsFirst = False, IsLast = False }</c> and + <c>{ Number = 789, IsFirst = False, IsLast = True }</c> in turn. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.TakeEvery``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Returns every N-th element of a sequence. + </summary> + <typeparam name="TSource">Type of the source sequence</typeparam> + <param name="source">Source sequence</param> + <param name="step">Number of elements to bypass before returning the next element.</param> + <returns> + A sequence with every N-th element of the input sequence. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + int[] numbers = { 1, 2, 3, 4, 5 }; + var result = numbers.TakeEvery(2); + ]]></code> + The <c>result</c> variable, when iterated over, will yield 1, 3 and 5, in turn. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.TakeLast``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Returns a specified number of contiguous elements from the end of + a sequence. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The sequence to return the last element of.</param> + <param name="count">The number of elements to return.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains the specified number of + elements from the end of the input sequence. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + int[] numbers = { 12, 34, 56, 78 }; + var result = numbers.TakeLast(2); + ]]></code> + The <c>result</c> variable, when iterated over, will yield + 56 and 78 in turn. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.TakeUntil``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean})"> + <summary> + Returns items from the input sequence until the given predicate returns true + when applied to the current source item; that item will be the last returned. + </summary> + <remarks> + <para> + TakeUntil differs from Enumerable.TakeWhile in two respects. Firstly, the sense + of the predicate is reversed: it is expected that the predicate will return false + to start with, and then return true - for example, when trying to find a matching + item in a sequence. + </para> + <para> + Secondly, TakeUntil yields the element which causes the predicate to return true. For + example, in a sequence <code><![CDATA[{ 1, 2, 3, 4, 5 }]]></code> and with a predicate of + <code><![CDATA[x => x == 3]]></code>, the result would be <code><![CDATA[{ 1, 2, 3 }]]></code>. + </para> + <para> + TakeUntil is as lazy as possible: it will not iterate over the source sequence + until it has to, it won't iterate further than it has to, and it won't evaluate + the predicate until it has to. (This means that an item may be returned which would + actually cause the predicate to throw an exception if it were evaluated, so long as + no more items of data are requested.) + </para> + </remarks> + <typeparam name="TSource">Type of the source sequence</typeparam> + <param name="source">Source sequence</param> + <param name="predicate">Predicate used to determine when to stop yielding results from the source.</param> + <returns>Items from the source sequence, until the predicate returns true when applied to the item.</returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> or <paramref name="predicate"/> is null</exception> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToArrayByIndex``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Int32})"> + <summary> + Creates an array from an <see cref="T:System.Collections.Generic.IEnumerable`1"/> where a + function is used to determine the index at which an element will + be placed in the array. + </summary> + <param name="source">The source sequence for the array.</param> + <param name="indexSelector"> + A function that maps an element to its index.</param> + <typeparam name="T"> + The type of the element in <paramref name="source"/>.</typeparam> + <returns> + An array that contains the elements from the input sequence. The + size of the array will be as large as the highest index returned + by the <paramref name="indexSelector"/> plus 1. + </returns> + <remarks> + This method forces immediate query evaluation. It should not be + used on infinite sequences. If more than one element maps to the + same index then the latter element overwrites the former in the + resulting array. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToArrayByIndex``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Int32},System.Func{``0,``1})"> + <summary> + Creates an array from an <see cref="T:System.Collections.Generic.IEnumerable`1"/> where a + function is used to determine the index at which an element will + be placed in the array. The elements are projected into the array + via an additional function. + </summary> + <param name="source">The source sequence for the array.</param> + <param name="indexSelector"> + A function that maps an element to its index.</param> + <param name="resultSelector"> + A function to project a source element into an element of the + resulting array.</param> + <typeparam name="T"> + The type of the element in <paramref name="source"/>.</typeparam> + <typeparam name="TResult"> + The type of the element in the resulting array.</typeparam> + <returns> + An array that contains the projected elements from the input + sequence. The size of the array will be as large as the highest + index returned by the <paramref name="indexSelector"/> plus 1. + </returns> + <remarks> + This method forces immediate query evaluation. It should not be + used on infinite sequences. If more than one element maps to the + same index then the latter element overwrites the former in the + resulting array. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToArrayByIndex``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Int32},System.Func{``0,System.Int32,``1})"> + <summary> + Creates an array from an <see cref="T:System.Collections.Generic.IEnumerable`1"/> where a + function is used to determine the index at which an element will + be placed in the array. The elements are projected into the array + via an additional function. + </summary> + <param name="source">The source sequence for the array.</param> + <param name="indexSelector"> + A function that maps an element to its index.</param> + <param name="resultSelector"> + A function to project a source element into an element of the + resulting array.</param> + <typeparam name="T"> + The type of the element in <paramref name="source"/>.</typeparam> + <typeparam name="TResult"> + The type of the element in the resulting array.</typeparam> + <returns> + An array that contains the projected elements from the input + sequence. The size of the array will be as large as the highest + index returned by the <paramref name="indexSelector"/> plus 1. + </returns> + <remarks> + This method forces immediate query evaluation. It should not be + used on infinite sequences. If more than one element maps to the + same index then the latter element overwrites the former in the + resulting array. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToArrayByIndex``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,System.Int32})"> + <summary> + Creates an array of user-specified length from an + <see cref="T:System.Collections.Generic.IEnumerable`1"/> where a function is used to determine + the index at which an element will be placed in the array. + </summary> + <param name="source">The source sequence for the array.</param> + <param name="length">The (non-negative) length of the resulting array.</param> + <param name="indexSelector"> + A function that maps an element to its index.</param> + <typeparam name="T"> + The type of the element in <paramref name="source"/>.</typeparam> + <returns> + An array of size <paramref name="length"/> that contains the + elements from the input sequence. + </returns> + <remarks> + This method forces immediate query evaluation. It should not be + used on infinite sequences. If more than one element maps to the + same index then the latter element overwrites the former in the + resulting array. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToArrayByIndex``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,System.Int32},System.Func{``0,``1})"> + <summary> + Creates an array of user-specified length from an + <see cref="T:System.Collections.Generic.IEnumerable`1"/> where a function is used to determine + the index at which an element will be placed in the array. The + elements are projected into the array via an additional function. + </summary> + <param name="source">The source sequence for the array.</param> + <param name="length">The (non-negative) length of the resulting array.</param> + <param name="indexSelector"> + A function that maps an element to its index.</param> + <param name="resultSelector"> + A function to project a source element into an element of the + resulting array.</param> + <typeparam name="T"> + The type of the element in <paramref name="source"/>.</typeparam> + <typeparam name="TResult"> + The type of the element in the resulting array.</typeparam> + <returns> + An array of size <paramref name="length"/> that contains the + projected elements from the input sequence. + </returns> + <remarks> + This method forces immediate query evaluation. It should not be + used on infinite sequences. If more than one element maps to the + same index then the latter element overwrites the former in the + resulting array. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToArrayByIndex``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,System.Int32},System.Func{``0,System.Int32,``1})"> + <summary> + Creates an array of user-specified length from an + <see cref="T:System.Collections.Generic.IEnumerable`1"/> where a function is used to determine + the index at which an element will be placed in the array. The + elements are projected into the array via an additional function. + </summary> + <param name="source">The source sequence for the array.</param> + <param name="length">The (non-negative) length of the resulting array.</param> + <param name="indexSelector"> + A function that maps an element to its index.</param> + <param name="resultSelector"> + A function to project a source element into an element of the + resulting array.</param> + <typeparam name="T"> + The type of the element in <paramref name="source"/>.</typeparam> + <typeparam name="TResult"> + The type of the element in the resulting array.</typeparam> + <returns> + An array of size <paramref name="length"/> that contains the + projected elements from the input sequence. + </returns> + <remarks> + This method forces immediate query evaluation. It should not be + used on infinite sequences. If more than one element maps to the + same index then the latter element overwrites the former in the + resulting array. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDataTable``2(System.Collections.Generic.IEnumerable{``0},``1)"> + <summary> + Appends elements in the sequence as rows of a given <see cref="T:System.Data.DataTable"/> object. + </summary> + <typeparam name="T">The type of the elements of <paramref name="source"/>.</typeparam> + <typeparam name="TTable"></typeparam> + <param name="source">The source.</param> + <param name="table"></param> + <returns> + A <see cref="T:System.Data.DataTable"/> or subclass representing the source. + </returns> + <remarks>This operator uses immediate execution.</remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDataTable``1(System.Collections.Generic.IEnumerable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Object}}[])"> + <summary> + Appends elements in the sequence as rows of a given <see cref="T:System.Data.DataTable"/> + object with a set of lambda expressions specifying which members (property + or field) of each element in the sequence will supply the column values. + </summary> + <typeparam name="T">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The source.</param> + <param name="expressions">Expressions providing access to element members.</param> + <returns> + A <see cref="T:System.Data.DataTable"/> representing the source. + </returns> + <remarks>This operator uses immediate execution.</remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDataTable``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Converts a sequence to a <see cref="T:System.Data.DataTable"/> object. + </summary> + <typeparam name="T">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The source.</param> + <returns> + A <see cref="T:System.Data.DataTable"/> representing the source. + </returns> + <remarks>This operator uses immediate execution.</remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDataTable``2(System.Collections.Generic.IEnumerable{``0},``1,System.Linq.Expressions.Expression{System.Func{``0,System.Object}}[])"> + <summary> + Appends elements in the sequence as rows of a given <see cref="T:System.Data.DataTable"/> + object with a set of lambda expressions specifying which members (property + or field) of each element in the sequence will supply the column values. + </summary> + <typeparam name="T">The type of the elements of <paramref name="source"/>.</typeparam> + <typeparam name="TTable">The type of the input and resulting <see cref="T:System.Data.DataTable"/> object.</typeparam> + <param name="source">The source.</param> + <param name="table">The <see cref="T:System.Data.DataTable"/> type of object where to add rows</param> + <param name="expressions">Expressions providing access to element members.</param> + <returns> + A <see cref="T:System.Data.DataTable"/> or subclass representing the source. + </returns> + <remarks>This operator uses immediate execution.</remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.BuildOrBindSchema(System.Data.DataTable,System.Reflection.MemberInfo[])"> + <remarks> + The resulting array may contain null entries and those represent + columns for which there is no source member supplying a value. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDelimitedString``1(System.Collections.Generic.IEnumerable{``0},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <typeparam name="TSource">Type of element in the source sequence</typeparam> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Boolean},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Byte},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Char},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Decimal},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Double},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Single},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Int32},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Int64},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDelimitedString(System.Collections.Generic.IEnumerable{System.SByte},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Int16},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDelimitedString(System.Collections.Generic.IEnumerable{System.String},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDelimitedString(System.Collections.Generic.IEnumerable{System.UInt32},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDelimitedString(System.Collections.Generic.IEnumerable{System.UInt64},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDelimitedString(System.Collections.Generic.IEnumerable{System.UInt16},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDictionary``2(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}})"> + <summary> + Creates a <see cref="T:System.Collections.Generic.Dictionary`2" /> from a sequence of + <see cref="T:System.Collections.Generic.KeyValuePair`2" /> elements. + </summary> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TValue">The type of the value.</typeparam> + <param name="source">The source sequence of key-value pairs.</param> + <returns> + A <see cref="T:System.Collections.Generic.Dictionary`2"/> containing the values + mapped to their keys. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDictionary``2(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}},System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Creates a <see cref="T:System.Collections.Generic.Dictionary`2" /> from a sequence of + <see cref="T:System.Collections.Generic.KeyValuePair`2" /> elements. An additional + parameter specifies a comparer for keys. + </summary> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TValue">The type of the value.</typeparam> + <param name="source">The source sequence of key-value pairs.</param> + <param name="comparer">The comparer for keys.</param> + <returns> + A <see cref="T:System.Collections.Generic.Dictionary`2"/> containing the values + mapped to their keys. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDictionary``2(System.Collections.Generic.IEnumerable{System.ValueTuple{``0,``1}})"> + <summary> + Creates a <see cref="T:System.Collections.Generic.Dictionary`2" /> from a sequence of + tuples of 2 where the first item is the key and the second the + value. + </summary> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TValue">The type of the value.</typeparam> + <param name="source">The source sequence of couples (tuple of 2).</param> + <returns> + A <see cref="T:System.Collections.Generic.Dictionary`2"/> containing the values + mapped to their keys. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToDictionary``2(System.Collections.Generic.IEnumerable{System.ValueTuple{``0,``1}},System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Creates a <see cref="T:System.Collections.Generic.Dictionary`2" /> from a sequence of + tuples of 2 where the first item is the key and the second the + value. An additional parameter specifies a comparer for keys. + </summary> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TValue">The type of the value.</typeparam> + <param name="source">The source sequence of couples (tuple of 2).</param> + <param name="comparer">The comparer for keys.</param> + <returns> + A <see cref="T:System.Collections.Generic.Dictionary`2"/> containing the values + mapped to their keys. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToHashSet``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Returns a <see cref="T:System.Collections.Generic.HashSet`1"/> of the source items using the default equality + comparer for the type. + </summary> + <typeparam name="TSource">Type of elements in source sequence.</typeparam> + <param name="source">Source sequence</param> + <returns>A hash set of the items in the sequence, using the default equality comparer.</returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null</exception> + <remarks> + This evaluates the input sequence completely. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToHashSet``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Returns a <see cref="T:System.Collections.Generic.HashSet`1"/> of the source items using the specified equality + comparer for the type. + </summary> + <typeparam name="TSource">Type of elements in source sequence.</typeparam> + <param name="source">Source sequence</param> + <param name="comparer">Equality comparer to use; a value of null will cause the type's default equality comparer to be used</param> + <returns>A hash set of the items in the sequence, using the default equality comparer.</returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null</exception> + <remarks> + This evaluates the input sequence completely. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToLookup``2(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}})"> + <summary> + Creates a <see cref="T:System.Linq.ILookup`2" /> from a sequence of + <see cref="T:System.Collections.Generic.KeyValuePair`2" /> elements. + </summary> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TValue">The type of the value.</typeparam> + <param name="source">The source sequence of key-value pairs.</param> + <returns> + A <see cref="T:System.Linq.ILookup`2"/> containing the values + mapped to their keys. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToLookup``2(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}},System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Creates a <see cref="T:System.Linq.ILookup`2" /> from a sequence of + <see cref="T:System.Collections.Generic.KeyValuePair`2" /> elements. An additional + parameter specifies a comparer for keys. + </summary> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TValue">The type of the value.</typeparam> + <param name="source">The source sequence of key-value pairs.</param> + <param name="comparer">The comparer for keys.</param> + <returns> + A <see cref="T:System.Linq.ILookup`2"/> containing the values + mapped to their keys. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToLookup``2(System.Collections.Generic.IEnumerable{System.ValueTuple{``0,``1}})"> + <summary> + Creates a <see cref="T:MoreLinq.Lookup`2" /> from a sequence of + tuples of 2 where the first item is the key and the second the + value. + </summary> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TValue">The type of the value.</typeparam> + <param name="source">The source sequence of tuples of 2.</param> + <returns> + A <see cref="T:MoreLinq.Lookup`2"/> containing the values + mapped to their keys. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.ToLookup``2(System.Collections.Generic.IEnumerable{System.ValueTuple{``0,``1}},System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Creates a <see cref="T:MoreLinq.Lookup`2" /> from a sequence of + tuples of 2 where the first item is the key and the second the + value. An additional parameter specifies a comparer for keys. + </summary> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TValue">The type of the value.</typeparam> + <param name="source">The source sequence of tuples of 2.</param> + <param name="comparer">The comparer for keys.</param> + <returns> + A <see cref="T:MoreLinq.Lookup`2"/> containing the values + mapped to their keys. + </returns> + </member> + <member name="M:MoreLinq.MoreEnumerable.Trace``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Traces the elements of a source sequence for diagnostics. + </summary> + <typeparam name="TSource">Type of element in the source sequence</typeparam> + <param name="source">Source sequence whose elements to trace.</param> + <returns> + Return the source sequence unmodified. + </returns> + <remarks> + This a pass-through operator that uses deferred execution and + streams the results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Trace``1(System.Collections.Generic.IEnumerable{``0},System.String)"> + <summary> + Traces the elements of a source sequence for diagnostics using + custom formatting. + </summary> + <typeparam name="TSource">Type of element in the source sequence</typeparam> + <param name="source">Source sequence whose elements to trace.</param> + <param name="format"> + String to use to format the trace message. If null then the + element value becomes the traced message. + </param> + <returns> + Return the source sequence unmodified. + </returns> + <remarks> + This a pass-through operator that uses deferred execution and + streams the results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Trace``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.String})"> + <summary> + Traces the elements of a source sequence for diagnostics using + a custom formatter. + </summary> + <typeparam name="TSource">Type of element in the source sequence</typeparam> + <param name="source">Source sequence whose elements to trace.</param> + <param name="formatter">Function used to format each source element into a string.</param> + <returns> + Return the source sequence unmodified. + </returns> + <remarks> + This a pass-through operator that uses deferred execution and + streams the results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Transpose``1(System.Collections.Generic.IEnumerable{System.Collections.Generic.IEnumerable{``0}})"> + <summary> + Transposes a sequence of rows into a sequence of columns. + </summary> + <typeparam name="T">Type of source sequence elements.</typeparam> + <param name="source">Source sequence to transpose.</param> + <returns> + Returns a sequence of columns in the source swapped into rows. + </returns> + <remarks> + If a rows is shorter than a follow it then the shorter row's + elements are skipped in the corresponding column sequences. + This operator uses deferred execution and streams its results. + Source sequence is consumed greedily when an iteration begins. + The inner sequences representing rows are consumed lazily and + resulting sequences of columns are streamed. + </remarks> + <example> + <code><![CDATA[ + var matrix = new[] + { + new[] { 10, 11 }, + new[] { 20 }, + new[] { 30, 31, 32 } + }; + var result = matrix.Transpose(); + ]]></code> + The <c>result</c> variable will contain [[10, 20, 30], [11, 31], [32]]. + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.TraverseBreadthFirst``1(``0,System.Func{``0,System.Collections.Generic.IEnumerable{``0}})"> + <summary> + Traverses a tree in a breadth-first fashion, starting at a root + node and using a user-defined function to get the children at each + node of the tree. + </summary> + <typeparam name="T">The tree node type</typeparam> + <param name="root">The root of the tree to traverse.</param> + <param name="childrenSelector"> + The function that produces the children of each element.</param> + <returns>A sequence containing the traversed values.</returns> + <remarks> + <para> + The tree is not checked for loops. If the resulting sequence needs + to be finite then it is the responsibility of + <paramref name="childrenSelector"/> to ensure that loops are not + produced.</para> + <para> + This function defers traversal until needed and streams the + results.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.TraverseDepthFirst``1(``0,System.Func{``0,System.Collections.Generic.IEnumerable{``0}})"> + <summary> + Traverses a tree in a depth-first fashion, starting at a root node + and using a user-defined function to get the children at each node + of the tree. + </summary> + <typeparam name="T">The tree node type.</typeparam> + <param name="root">The root of the tree to traverse.</param> + <param name="childrenSelector"> + The function that produces the children of each element.</param> + <returns>A sequence containing the traversed values.</returns> + <remarks> + <para> + The tree is not checked for loops. If the resulting sequence needs + to be finite then it is the responsibility of + <paramref name="childrenSelector"/> to ensure that loops are not + produced.</para> + <para> + This function defers traversal until needed and streams the + results.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Unfold``3(``0,System.Func{``0,``1},System.Func{``1,System.Boolean},System.Func{``1,``0},System.Func{``1,``2})"> + <summary> + Returns a sequence generated by applying a state to the generator function, + and from its result, determines if the sequence should have a next element, its value, + and the next state in the recursive call. + </summary> + <typeparam name="TState">Type of state elements.</typeparam> + <typeparam name="T">Type of the elements generated by the generator function.</typeparam> + <typeparam name="TResult">The type of the elements of the result sequence.</typeparam> + <param name="state">The initial state.</param> + <param name="generator"> + Function that takes a state and computes the next state and the next element of the sequence. + </param> + <param name="predicate"> + Function to determine if the unfolding should continue based the + result of the <paramref name="generator"/> function. + </param> + <param name="stateSelector"> + Function to select the state from the output of the <paramref name="generator"/> function. + </param> + <param name="resultSelector"> + Function to select the result from the output of the <paramref name="generator"/> function. + </param> + <returns>A sequence containing the results generated by the <paramref name="resultSelector"/> function.</returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Window``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Processes a sequence into a series of sub-sequences representing a windowed subset of + the original. + </summary> + <typeparam name="TSource">The type of the elements of the source sequence.</typeparam> + <param name="source">The sequence to evaluate a sliding window over.</param> + <param name="size">The size (number of elements) in each window.</param> + <returns> + A series of sequences representing each sliding window subsequence.</returns> + <remarks> + <para> + The number of sequences returned is: <c>Max(0, sequence.Count() - windowSize) + + 1</c></para> + <para> + Returned sub-sequences are buffered, but the overall operation is streamed.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.Windowed``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Processes a sequence into a series of sub-sequences representing a windowed subset of the original. + </summary> + <typeparam name="TSource">The type of the elements of the source sequence.</typeparam> + <param name="source">The sequence to evaluate a sliding window over.</param> + <param name="size">The size (number of elements) in each window.</param> + <returns> + A series of sequences representing each sliding window subsequence.</returns> + <remarks> + <para> + The number of sequences returned is: <c>Max(0, sequence.Count() - windowSize) + + 1</c></para> + <para> + Returned sub-sequences are buffered, but the overall operation is streamed.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.WindowLeft``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Creates a left-aligned sliding window of a given size over the + source sequence. + </summary> + <typeparam name="TSource"> + The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source"> + The sequence over which to create the sliding window.</param> + <param name="size">Size of the sliding window.</param> + <returns>A sequence representing each sliding window.</returns> + <remarks> + <para> + A window can contain fewer elements than <paramref name="size"/>, + especially as it slides over the end of the sequence.</para> + <para> + This operator uses deferred execution and streams its results.</para> + </remarks> + <example> + <code><![CDATA[ + Console.WriteLine( + Enumerable + .Range(1, 5) + .WindowLeft(3) + .Select(w => "AVG(" + w.ToDelimitedString(",") + ") = " + w.Average()) + .ToDelimitedString(Environment.NewLine)); + + // Output: + // AVG(1,2,3) = 2 + // AVG(2,3,4) = 3 + // AVG(3,4,5) = 4 + // AVG(4,5) = 4.5 + // AVG(5) = 5 + ]]></code> + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.WindowRight``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Creates a right-aligned sliding window over the source sequence + of a given size. + </summary> + <typeparam name="TSource"> + The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source"> + The sequence over which to create the sliding window.</param> + <param name="size">Size of the sliding window.</param> + <returns>A sequence representing each sliding window.</returns> + <remarks> + <para> + A window can contain fewer elements than <paramref name="size"/>, + especially as it slides over the start of the sequence.</para> + <para> + This operator uses deferred execution and streams its results.</para> + </remarks> + <example> + <code><![CDATA[ + Console.WriteLine( + Enumerable + .Range(1, 5) + .WindowRight(3) + .Select(w => "AVG(" + w.ToDelimitedString(",") + ") = " + w.Average()) + .ToDelimitedString(Environment.NewLine)); + + // Output: + // AVG(1) = 1 + // AVG(1,2) = 1.5 + // AVG(1,2,3) = 2 + // AVG(2,3,4) = 3 + // AVG(3,4,5) = 4 + ]]></code> + </example> + </member> + <member name="M:MoreLinq.MoreEnumerable.WindowRightWhile``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Int32,System.Boolean})"> + <summary> + Creates a right-aligned sliding window over the source sequence + with a predicate function determining the window range. + </summary> + </member> + <member name="M:MoreLinq.MoreEnumerable.ZipLongest``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``1,``2})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. The resulting sequence + will always be as long as the longest of input sequences where the + default value of each of the shorter sequence element types is used + for padding. + </summary> + <typeparam name="TFirst">Type of elements in first sequence.</typeparam> + <typeparam name="TSecond">Type of elements in second sequence.</typeparam> + <typeparam name="TResult">Type of elements in result sequence.</typeparam> + <param name="first">The first sequence.</param> + <param name="second">The second sequence.</param> + <param name="resultSelector"> + Function to apply to each pair of elements.</param> + <returns> + A sequence that contains elements of the two input sequences, + combined by <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, or <paramref + name="resultSelector"/> is <see langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var numbers = { 1, 2, 3 }; + var letters = { "A", "B", "C", "D" }; + var zipped = numbers.ZipLongest(letters, (n, l) => n + l); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield "1A", + "2B", "3C", "0D" in turn. + </example> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ZipLongest``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Func{``0,``1,``2,``3})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. The resulting sequence + will always be as long as the longest of input sequences where the + default value of each of the shorter sequence element types is used + for padding. + </summary> + <typeparam name="T1">Type of elements in first sequence.</typeparam> + <typeparam name="T2">Type of elements in second sequence.</typeparam> + <typeparam name="T3">Type of elements in third sequence.</typeparam> + <typeparam name="TResult">Type of elements in result sequence.</typeparam> + <param name="first">The first sequence.</param> + <param name="second">The second sequence.</param> + <param name="third">The third sequence.</param> + <param name="resultSelector"> + Function to apply to each triplet of elements.</param> + <returns> + A sequence that contains elements of the three input sequences, + combined by <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, <paramref + name="third"/>, or <paramref name="resultSelector"/> is <see + langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var numbers = new[] { 1, 2, 3 }; + var letters = new[] { "A", "B", "C", "D" }; + var chars = new[] { 'a', 'b', 'c', 'd', 'e' }; + var zipped = numbers.ZipLongest(letters, chars, (n, l, c) => n + l + c); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield "1Aa", + "2Bb", "3Cc", "0Dd", "0e" in turn. + </example> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ZipLongest``5(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Collections.Generic.IEnumerable{``3},System.Func{``0,``1,``2,``3,``4})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. The resulting sequence + will always be as long as the longest of input sequences where the + default value of each of the shorter sequence element types is used + for padding. + </summary> + <typeparam name="T1">Type of elements in first sequence</typeparam> + <typeparam name="T2">Type of elements in second sequence</typeparam> + <typeparam name="T3">Type of elements in third sequence</typeparam> + <typeparam name="T4">Type of elements in fourth sequence</typeparam> + <typeparam name="TResult">Type of elements in result sequence</typeparam> + <param name="first">The first sequence.</param> + <param name="second">The second sequence.</param> + <param name="third">The third sequence.</param> + <param name="fourth">The fourth sequence.</param> + <param name="resultSelector"> + Function to apply to each quadruplet of elements.</param> + <returns> + A sequence that contains elements of the four input sequences, + combined by <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, <paramref + name="third"/>, <paramref name="fourth"/>, or <paramref + name="resultSelector"/> is <see langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var numbers = new[] { 1, 2, 3 }; + var letters = new[] { "A", "B", "C", "D" }; + var chars = new[] { 'a', 'b', 'c', 'd', 'e' }; + var flags = new[] { true, false, true, false, true, false }; + var zipped = numbers.ZipLongest(letters, chars, flags, (n, l, c, f) => n + l + c + f); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield "1AaTrue", + "2BbFalse", "3CcTrue", "0DdFalse", "0eTrue", "0\0False" in turn. + </example> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ZipShortest``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``1,``2})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. The resulting sequence + is as short as the shortest input sequence. + </summary> + <typeparam name="TFirst">Type of elements in first sequence.</typeparam> + <typeparam name="TSecond">Type of elements in second sequence.</typeparam> + <typeparam name="TResult">Type of elements in result sequence.</typeparam> + <param name="first">The first sequence.</param> + <param name="second">The second sequence.</param> + <param name="resultSelector"> + Function to apply to each pair of elements.</param> + <returns> + A projection of tuples, where each tuple contains the N-th element + from each of the argument sequences.</returns> + <example> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, or <paramref + name="resultSelector"/> is <see langword="null"/>. + </exception> + <code><![CDATA[ + var numbers = new[] { 1, 2, 3 }; + var letters = new[] { "A", "B", "C", "D" }; + var zipped = numbers.ZipShortest(letters, (n, l) => n + l); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield "1A", "2B", "3C", in turn. + </example> + <remarks> + <para> + If the input sequences are of different lengths, the result sequence + is terminated as soon as the shortest input sequence is exhausted + and remainder elements from the longer sequences are never consumed. + </para> + <para> + This operator uses deferred execution and streams its results.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ZipShortest``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Func{``0,``1,``2,``3})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. The resulting sequence + is as short as the shortest input sequence. + </summary> + <typeparam name="T1">Type of elements in first sequence.</typeparam> + <typeparam name="T2">Type of elements in second sequence.</typeparam> + <typeparam name="T3">Type of elements in third sequence.</typeparam> + <typeparam name="TResult">Type of elements in result sequence.</typeparam> + <param name="first">First sequence</param> + <param name="second">Second sequence</param> + <param name="third">Third sequence</param> + <param name="resultSelector"> + Function to apply to each triplet of elements.</param> + <returns> + A projection of tuples, where each tuple contains the N-th element + from each of the argument sequences.</returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, <paramref + name="third"/>, or <paramref name="resultSelector"/> is <see + langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var numbers = new[] { 1, 2, 3 }; + var letters = new[] { "A", "B", "C", "D" }; + var chars = new[] { 'a', 'b', 'c', 'd', 'e' }; + var zipped = numbers.ZipShortest(letters, chars, (n, l, c) => c + n + l); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield + "98A", "100B", "102C", in turn. + </example> + <remarks> + <para> + If the input sequences are of different lengths, the result sequence + is terminated as soon as the shortest input sequence is exhausted + and remainder elements from the longer sequences are never consumed. + </para> + <para> + This operator uses deferred execution and streams its results.</para> + </remarks> + </member> + <member name="M:MoreLinq.MoreEnumerable.ZipShortest``5(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Collections.Generic.IEnumerable{``3},System.Func{``0,``1,``2,``3,``4})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. The resulting sequence + is as short as the shortest input sequence. + </summary> + <typeparam name="T1">Type of elements in first sequence.</typeparam> + <typeparam name="T2">Type of elements in second sequence.</typeparam> + <typeparam name="T3">Type of elements in third sequence.</typeparam> + <typeparam name="T4">Type of elements in fourth sequence.</typeparam> + <typeparam name="TResult">Type of elements in result sequence.</typeparam> + <param name="first">The first sequence.</param> + <param name="second">The second sequence.</param> + <param name="third">The third sequence.</param> + <param name="fourth">The fourth sequence.</param> + <param name="resultSelector"> + Function to apply to each quadruplet of elements.</param> + <returns> + A projection of tuples, where each tuple contains the N-th element + from each of the argument sequences.</returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, <paramref + name="third"/>, <paramref name="fourth"/>, or <paramref + name="resultSelector"/> is <see langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var numbers = new[] { 1, 2, 3 }; + var letters = new[] { "A", "B", "C", "D" }; + var chars = new[] { 'a', 'b', 'c', 'd', 'e' }; + var flags = new[] { true, false }; + var zipped = numbers.ZipShortest(letters, chars, flags, (n, l, c, f) => n + l + c + f); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield + "1AaTrue", "2BbFalse" in turn. + </example> + <remarks> + <para> + If the input sequences are of different lengths, the result sequence + is terminated as soon as the shortest input sequence is exhausted + and remainder elements from the longer sequences are never consumed. + </para> + <para> + This operator uses deferred execution and streams its results.</para> + </remarks> + </member> + <member name="T:MoreLinq.Experimental.ExperimentalEnumerable"> + <summary> + <para> + Provides a set of static methods for querying objects that + implement <see cref="T:System.Collections.Generic.IEnumerable`1" />.</para> + <para> + <strong>THE METHODS ARE EXPERIMENTAL. THEY MAY BE UNSTABLE AND + UNTESTED. THEY MAY BE REMOVED FROM A FUTURE MAJOR OR MINOR RELEASE AND + POSSIBLY WITHOUT NOTICE. USE THEM AT YOUR OWN RISK. THE METHODS ARE + PUBLISHED FOR FIELD EXPERIMENTATION TO SOLICIT FEEDBACK ON THEIR + UTILITY AND DESIGN/IMPLEMENTATION DEFECTS.</strong></para> + </summary> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.Aggregate``4(System.Collections.Generic.IEnumerable{``0},System.Func{System.IObservable{``0},System.IObservable{``1}},System.Func{System.IObservable{``0},System.IObservable{``2}},System.Func{``1,``2,``3})"> + <summary> + Applies two accumulator queries sequentially in a single + pass over a sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TResult1">The type of the result of the first accumulator.</typeparam> + <typeparam name="TResult2">The type of the result of the second accumulator.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="accumulator1">The first accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <exception cref="T:System.InvalidOperationException"> + An <see cref="T:System.IObservable`1"/> returned by an accumulator function + produced zero or more than a single aggregate result. + </exception> + <remarks> + <para>This operator executes immediately.</para> + <para> + Each accumulator argument is a function that receives an + <see cref="T:System.IObservable`1"/>, which when subscribed to, produces the + items in the <paramref name="source"/> sequence and in original + order; the function must then return an <see cref="T:System.IObservable`1"/> + that produces a single aggregate on completion (when + <see cref="M:System.IObserver`1.OnCompleted"/> is called. An error is raised + at run-time if the <see cref="T:System.IObserver`1"/> returned by an + accumulator function produces no result or produces more than a + single result. + </para> + </remarks> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.Aggregate``5(System.Collections.Generic.IEnumerable{``0},System.Func{System.IObservable{``0},System.IObservable{``1}},System.Func{System.IObservable{``0},System.IObservable{``2}},System.Func{System.IObservable{``0},System.IObservable{``3}},System.Func{``1,``2,``3,``4})"> + <summary> + Applies three accumulator queries sequentially in a single + pass over a sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TResult1">The type of the result of the first accumulator.</typeparam> + <typeparam name="TResult2">The type of the result of the second accumulator.</typeparam> + <typeparam name="TResult3">The type of the result of the third accumulator.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="accumulator1">The first accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <exception cref="T:System.InvalidOperationException"> + An <see cref="T:System.IObservable`1"/> returned by an accumulator function + produced zero or more than a single aggregate result. + </exception> + <remarks> + <para>This operator executes immediately.</para> + <para> + Each accumulator argument is a function that receives an + <see cref="T:System.IObservable`1"/>, which when subscribed to, produces the + items in the <paramref name="source"/> sequence and in original + order; the function must then return an <see cref="T:System.IObservable`1"/> + that produces a single aggregate on completion (when + <see cref="M:System.IObserver`1.OnCompleted"/> is called. An error is raised + at run-time if the <see cref="T:System.IObserver`1"/> returned by an + accumulator function produces no result or produces more than a + single result. + </para> + </remarks> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.Aggregate``6(System.Collections.Generic.IEnumerable{``0},System.Func{System.IObservable{``0},System.IObservable{``1}},System.Func{System.IObservable{``0},System.IObservable{``2}},System.Func{System.IObservable{``0},System.IObservable{``3}},System.Func{System.IObservable{``0},System.IObservable{``4}},System.Func{``1,``2,``3,``4,``5})"> + <summary> + Applies four accumulator queries sequentially in a single + pass over a sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TResult1">The type of the result of the first accumulator.</typeparam> + <typeparam name="TResult2">The type of the result of the second accumulator.</typeparam> + <typeparam name="TResult3">The type of the result of the third accumulator.</typeparam> + <typeparam name="TResult4">The type of the result of the fourth accumulator.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="accumulator1">The first accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="accumulator4">The fourth accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <exception cref="T:System.InvalidOperationException"> + An <see cref="T:System.IObservable`1"/> returned by an accumulator function + produced zero or more than a single aggregate result. + </exception> + <remarks> + <para>This operator executes immediately.</para> + <para> + Each accumulator argument is a function that receives an + <see cref="T:System.IObservable`1"/>, which when subscribed to, produces the + items in the <paramref name="source"/> sequence and in original + order; the function must then return an <see cref="T:System.IObservable`1"/> + that produces a single aggregate on completion (when + <see cref="M:System.IObserver`1.OnCompleted"/> is called. An error is raised + at run-time if the <see cref="T:System.IObserver`1"/> returned by an + accumulator function produces no result or produces more than a + single result. + </para> + </remarks> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.Aggregate``7(System.Collections.Generic.IEnumerable{``0},System.Func{System.IObservable{``0},System.IObservable{``1}},System.Func{System.IObservable{``0},System.IObservable{``2}},System.Func{System.IObservable{``0},System.IObservable{``3}},System.Func{System.IObservable{``0},System.IObservable{``4}},System.Func{System.IObservable{``0},System.IObservable{``5}},System.Func{``1,``2,``3,``4,``5,``6})"> + <summary> + Applies five accumulator queries sequentially in a single + pass over a sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TResult1">The type of the result of the first accumulator.</typeparam> + <typeparam name="TResult2">The type of the result of the second accumulator.</typeparam> + <typeparam name="TResult3">The type of the result of the third accumulator.</typeparam> + <typeparam name="TResult4">The type of the result of the fourth accumulator.</typeparam> + <typeparam name="TResult5">The type of the result of the fifth accumulator.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="accumulator1">The first accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="accumulator4">The fourth accumulator.</param> + <param name="accumulator5">The fifth accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <exception cref="T:System.InvalidOperationException"> + An <see cref="T:System.IObservable`1"/> returned by an accumulator function + produced zero or more than a single aggregate result. + </exception> + <remarks> + <para>This operator executes immediately.</para> + <para> + Each accumulator argument is a function that receives an + <see cref="T:System.IObservable`1"/>, which when subscribed to, produces the + items in the <paramref name="source"/> sequence and in original + order; the function must then return an <see cref="T:System.IObservable`1"/> + that produces a single aggregate on completion (when + <see cref="M:System.IObserver`1.OnCompleted"/> is called. An error is raised + at run-time if the <see cref="T:System.IObserver`1"/> returned by an + accumulator function produces no result or produces more than a + single result. + </para> + </remarks> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.Aggregate``8(System.Collections.Generic.IEnumerable{``0},System.Func{System.IObservable{``0},System.IObservable{``1}},System.Func{System.IObservable{``0},System.IObservable{``2}},System.Func{System.IObservable{``0},System.IObservable{``3}},System.Func{System.IObservable{``0},System.IObservable{``4}},System.Func{System.IObservable{``0},System.IObservable{``5}},System.Func{System.IObservable{``0},System.IObservable{``6}},System.Func{``1,``2,``3,``4,``5,``6,``7})"> + <summary> + Applies six accumulator queries sequentially in a single + pass over a sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TResult1">The type of the result of the first accumulator.</typeparam> + <typeparam name="TResult2">The type of the result of the second accumulator.</typeparam> + <typeparam name="TResult3">The type of the result of the third accumulator.</typeparam> + <typeparam name="TResult4">The type of the result of the fourth accumulator.</typeparam> + <typeparam name="TResult5">The type of the result of the fifth accumulator.</typeparam> + <typeparam name="TResult6">The type of the result of the sixth accumulator.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="accumulator1">The first accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="accumulator4">The fourth accumulator.</param> + <param name="accumulator5">The fifth accumulator.</param> + <param name="accumulator6">The sixth accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <exception cref="T:System.InvalidOperationException"> + An <see cref="T:System.IObservable`1"/> returned by an accumulator function + produced zero or more than a single aggregate result. + </exception> + <remarks> + <para>This operator executes immediately.</para> + <para> + Each accumulator argument is a function that receives an + <see cref="T:System.IObservable`1"/>, which when subscribed to, produces the + items in the <paramref name="source"/> sequence and in original + order; the function must then return an <see cref="T:System.IObservable`1"/> + that produces a single aggregate on completion (when + <see cref="M:System.IObserver`1.OnCompleted"/> is called. An error is raised + at run-time if the <see cref="T:System.IObserver`1"/> returned by an + accumulator function produces no result or produces more than a + single result. + </para> + </remarks> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.Aggregate``9(System.Collections.Generic.IEnumerable{``0},System.Func{System.IObservable{``0},System.IObservable{``1}},System.Func{System.IObservable{``0},System.IObservable{``2}},System.Func{System.IObservable{``0},System.IObservable{``3}},System.Func{System.IObservable{``0},System.IObservable{``4}},System.Func{System.IObservable{``0},System.IObservable{``5}},System.Func{System.IObservable{``0},System.IObservable{``6}},System.Func{System.IObservable{``0},System.IObservable{``7}},System.Func{``1,``2,``3,``4,``5,``6,``7,``8})"> + <summary> + Applies seven accumulator queries sequentially in a single + pass over a sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TResult1">The type of the result of the first accumulator.</typeparam> + <typeparam name="TResult2">The type of the result of the second accumulator.</typeparam> + <typeparam name="TResult3">The type of the result of the third accumulator.</typeparam> + <typeparam name="TResult4">The type of the result of the fourth accumulator.</typeparam> + <typeparam name="TResult5">The type of the result of the fifth accumulator.</typeparam> + <typeparam name="TResult6">The type of the result of the sixth accumulator.</typeparam> + <typeparam name="TResult7">The type of the result of the seventh accumulator.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="accumulator1">The first accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="accumulator4">The fourth accumulator.</param> + <param name="accumulator5">The fifth accumulator.</param> + <param name="accumulator6">The sixth accumulator.</param> + <param name="accumulator7">The seventh accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <exception cref="T:System.InvalidOperationException"> + An <see cref="T:System.IObservable`1"/> returned by an accumulator function + produced zero or more than a single aggregate result. + </exception> + <remarks> + <para>This operator executes immediately.</para> + <para> + Each accumulator argument is a function that receives an + <see cref="T:System.IObservable`1"/>, which when subscribed to, produces the + items in the <paramref name="source"/> sequence and in original + order; the function must then return an <see cref="T:System.IObservable`1"/> + that produces a single aggregate on completion (when + <see cref="M:System.IObserver`1.OnCompleted"/> is called. An error is raised + at run-time if the <see cref="T:System.IObserver`1"/> returned by an + accumulator function produces no result or produces more than a + single result. + </para> + </remarks> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.Aggregate``10(System.Collections.Generic.IEnumerable{``0},System.Func{System.IObservable{``0},System.IObservable{``1}},System.Func{System.IObservable{``0},System.IObservable{``2}},System.Func{System.IObservable{``0},System.IObservable{``3}},System.Func{System.IObservable{``0},System.IObservable{``4}},System.Func{System.IObservable{``0},System.IObservable{``5}},System.Func{System.IObservable{``0},System.IObservable{``6}},System.Func{System.IObservable{``0},System.IObservable{``7}},System.Func{System.IObservable{``0},System.IObservable{``8}},System.Func{``1,``2,``3,``4,``5,``6,``7,``8,``9})"> + <summary> + Applies eight accumulator queries sequentially in a single + pass over a sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TResult1">The type of the result of the first accumulator.</typeparam> + <typeparam name="TResult2">The type of the result of the second accumulator.</typeparam> + <typeparam name="TResult3">The type of the result of the third accumulator.</typeparam> + <typeparam name="TResult4">The type of the result of the fourth accumulator.</typeparam> + <typeparam name="TResult5">The type of the result of the fifth accumulator.</typeparam> + <typeparam name="TResult6">The type of the result of the sixth accumulator.</typeparam> + <typeparam name="TResult7">The type of the result of the seventh accumulator.</typeparam> + <typeparam name="TResult8">The type of the result of the eighth accumulator.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="accumulator1">The first accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="accumulator4">The fourth accumulator.</param> + <param name="accumulator5">The fifth accumulator.</param> + <param name="accumulator6">The sixth accumulator.</param> + <param name="accumulator7">The seventh accumulator.</param> + <param name="accumulator8">The eighth accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <exception cref="T:System.InvalidOperationException"> + An <see cref="T:System.IObservable`1"/> returned by an accumulator function + produced zero or more than a single aggregate result. + </exception> + <remarks> + <para>This operator executes immediately.</para> + <para> + Each accumulator argument is a function that receives an + <see cref="T:System.IObservable`1"/>, which when subscribed to, produces the + items in the <paramref name="source"/> sequence and in original + order; the function must then return an <see cref="T:System.IObservable`1"/> + that produces a single aggregate on completion (when + <see cref="M:System.IObserver`1.OnCompleted"/> is called. An error is raised + at run-time if the <see cref="T:System.IObserver`1"/> returned by an + accumulator function produces no result or produces more than a + single result. + </para> + </remarks> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.AsSequential``1(MoreLinq.Experimental.IAwaitQuery{``0})"> + <summary> + Converts a query whose results evaluate asynchronously to use + sequential instead of concurrent evaluation. + </summary> + <typeparam name="T">The type of the source elements.</typeparam> + <param name="source">The source sequence.</param> + <returns>The converted sequence.</returns> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.MaxConcurrency``1(MoreLinq.Experimental.IAwaitQuery{``0},System.Int32)"> + <summary> + Returns a query whose results evaluate asynchronously to use a + concurrency limit. + </summary> + <typeparam name="T">The type of the source elements.</typeparam> + <param name="source">The source sequence.</param> + <param name="value"></param> + <returns> + A query whose results evaluate asynchronously using the given + concurrency limit.</returns> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.UnboundedConcurrency``1(MoreLinq.Experimental.IAwaitQuery{``0})"> + <summary> + Returns a query whose results evaluate asynchronously and + concurrently with no defined limitation on concurrency. + </summary> + <typeparam name="T">The type of the source elements.</typeparam> + <param name="source">The source sequence.</param> + <returns> + A query whose results evaluate asynchronously using no defined + limitation on concurrency.</returns> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.Scheduler``1(MoreLinq.Experimental.IAwaitQuery{``0},System.Threading.Tasks.TaskScheduler)"> + <summary> + Returns a query whose results evaluate asynchronously and uses the + given scheduler for the workhorse task. + </summary> + <typeparam name="T">The type of the source elements.</typeparam> + <param name="source">The source sequence.</param> + <param name="value">The scheduler to use.</param> + <returns> + A query whose results evaluate asynchronously and uses the + given scheduler for the workhorse task.</returns> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.AsOrdered``1(MoreLinq.Experimental.IAwaitQuery{``0})"> + <summary> + Returns a query whose results evaluate asynchronously but which + are returned in the order of the source. + </summary> + <typeparam name="T">The type of the source elements.</typeparam> + <param name="source">The source sequence.</param> + <returns> + A query whose results evaluate asynchronously but which + are returned in the order of the source.</returns> + <remarks> + Internally, the asynchronous operations will be done concurrently + but the results will be yielded in order. + </remarks> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.AsUnordered``1(MoreLinq.Experimental.IAwaitQuery{``0})"> + <summary> + Returns a query whose results evaluate asynchronously but which + are returned without guarantee of the source order. + </summary> + <typeparam name="T">The type of the source elements.</typeparam> + <param name="source">The source sequence.</param> + <returns> + A query whose results evaluate asynchronously but which + are returned without guarantee of the source order.</returns> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.PreserveOrder``1(MoreLinq.Experimental.IAwaitQuery{``0},System.Boolean)"> + <summary> + Returns a query whose results evaluate asynchronously and a Boolean + argument indicating whether the source order of the results is + preserved. + </summary> + <typeparam name="T">The type of the source elements.</typeparam> + <param name="source">The source sequence.</param> + <param name="value"> + A Boolean where <c>true</c> means results are in source order and + <c>false</c> means that results can be delivered in order of + efficiency.</param> + <returns> + A query whose results evaluate asynchronously and returns the + results ordered or unordered based on <paramref name="value"/>. + </returns> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.Await``1(System.Collections.Generic.IEnumerable{System.Threading.Tasks.Task{``0}})"> + <summary> + Creates a sequence query that streams the result of each task in + the source sequence as it completes asynchronously. + </summary> + <typeparam name="T"> + The type of each task's result as well as the type of the elements + of the resulting sequence.</typeparam> + <param name="source">The source sequence of tasks.</param> + <returns> + A sequence query that streams the result of each task in + <paramref name="source"/> as it completes asynchronously. + </returns> + <remarks> + <para> + This method uses deferred execution semantics. The results are + yielded as each asynchronous task completes and, by default, + not guaranteed to be based on the source sequence order. If order + is important, compose further with + <see cref="M:MoreLinq.Experimental.ExperimentalEnumerable.AsOrdered``1(MoreLinq.Experimental.IAwaitQuery{``0})"/>.</para> + <para> + This method starts a new task where the tasks are awaited. If the + resulting sequence is partially consumed then there's a good chance + that some tasks will be wasted, those that are in flight.</para> + <para> + The tasks in <paramref name="source"/> are already assumed to be in + flight therefore changing concurrency options via + <see cref="M:MoreLinq.Experimental.ExperimentalEnumerable.AsSequential``1(MoreLinq.Experimental.IAwaitQuery{``0})"/>, <see cref="M:MoreLinq.Experimental.ExperimentalEnumerable.MaxConcurrency``1(MoreLinq.Experimental.IAwaitQuery{``0},System.Int32)"/> or + <see cref="M:MoreLinq.Experimental.ExperimentalEnumerable.UnboundedConcurrency``1(MoreLinq.Experimental.IAwaitQuery{``0})"/> will only change how many + tasks are awaited at any given moment, not how many will be + kept in flight. For the latter effect, use the other overload. + </para> + </remarks> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.Await``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Threading.CancellationToken,System.Threading.Tasks.Task{``1}})"> + <summary> + Creates a sequence query that streams the result of each task in + the source sequence as it completes asynchronously. A + <see cref="T:System.Threading.CancellationToken"/> is passed for each asynchronous + evaluation to abort any asynchronous operations in flight if the + sequence is not fully iterated. + </summary> + <typeparam name="T">The type of the source elements.</typeparam> + <typeparam name="TResult">The type of the result elements.</typeparam> + <param name="source">The source sequence.</param> + <param name="evaluator">A function to begin the asynchronous + evaluation of each element, the second parameter of which is a + <see cref="T:System.Threading.CancellationToken"/> that can be used to abort + asynchronous operations.</param> + <returns> + A sequence query that stream its results as they are + evaluated asynchronously. + </returns> + <remarks> + <para> + This method uses deferred execution semantics. The results are + yielded as each asynchronous evaluation completes and, by default, + not guaranteed to be based on the source sequence order. If order + is important, compose further with + <see cref="M:MoreLinq.Experimental.ExperimentalEnumerable.AsOrdered``1(MoreLinq.Experimental.IAwaitQuery{``0})"/>.</para> + <para> + This method starts a new task where the asynchronous evaluations + take place and awaited. If the resulting sequence is partially + consumed then there's a good chance that some projection work will + be wasted and a cooperative effort is done that depends on the + <paramref name="evaluator"/> function (via a + <see cref="T:System.Threading.CancellationToken"/> as its second argument) to cancel + those in flight.</para> + <para> + The <paramref name="evaluator"/> function should be designed to be + thread-agnostic.</para> + <para> + The task returned by <paramref name="evaluator"/> should be started + when the function is called (and not just a mere projection) + otherwise changing concurrency options via + <see cref="M:MoreLinq.Experimental.ExperimentalEnumerable.AsSequential``1(MoreLinq.Experimental.IAwaitQuery{``0})"/>, <see cref="M:MoreLinq.Experimental.ExperimentalEnumerable.MaxConcurrency``1(MoreLinq.Experimental.IAwaitQuery{``0},System.Int32)"/> or + <see cref="M:MoreLinq.Experimental.ExperimentalEnumerable.UnboundedConcurrency``1(MoreLinq.Experimental.IAwaitQuery{``0})"/> will only change how many + tasks are awaited at any given moment, not how many will be + kept in flight. + </para> + </remarks> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.AwaitCompletion``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Threading.CancellationToken,System.Threading.Tasks.Task{``1}},System.Func{``0,System.Threading.Tasks.Task{``1},``2})"> + <summary> + Awaits completion of all asynchronous evaluations irrespective of + whether they succeed or fail. An additional argument specifies a + function that projects the final result given the source item and + completed task. + </summary> + <typeparam name="T">The type of the source elements.</typeparam> + <typeparam name="TTaskResult"> The type of the task's result.</typeparam> + <typeparam name="TResult">The type of the result elements.</typeparam> + <param name="source">The source sequence.</param> + <param name="evaluator">A function to begin the asynchronous + evaluation of each element, the second parameter of which is a + <see cref="T:System.Threading.CancellationToken"/> that can be used to abort + asynchronous operations.</param> + <param name="resultSelector">A function that projects the final + result given the source item and its asynchronous completion + result.</param> + <returns> + A sequence query that stream its results as they are + evaluated asynchronously. + </returns> + <remarks> + <para> + This method uses deferred execution semantics. The results are + yielded as each asynchronous evaluation completes and, by default, + not guaranteed to be based on the source sequence order. If order + is important, compose further with + <see cref="M:MoreLinq.Experimental.ExperimentalEnumerable.AsOrdered``1(MoreLinq.Experimental.IAwaitQuery{``0})"/>.</para> + <para> + This method starts a new task where the asynchronous evaluations + take place and awaited. If the resulting sequence is partially + consumed then there's a good chance that some projection work will + be wasted and a cooperative effort is done that depends on the + <paramref name="evaluator"/> function (via a + <see cref="T:System.Threading.CancellationToken"/> as its second argument) to cancel + those in flight.</para> + <para> + The <paramref name="evaluator"/> function should be designed to be + thread-agnostic.</para> + <para> + The task returned by <paramref name="evaluator"/> should be started + when the function is called (and not just a mere projection) + otherwise changing concurrency options via + <see cref="M:MoreLinq.Experimental.ExperimentalEnumerable.AsSequential``1(MoreLinq.Experimental.IAwaitQuery{``0})"/>, <see cref="M:MoreLinq.Experimental.ExperimentalEnumerable.MaxConcurrency``1(MoreLinq.Experimental.IAwaitQuery{``0},System.Int32)"/> or + <see cref="M:MoreLinq.Experimental.ExperimentalEnumerable.UnboundedConcurrency``1(MoreLinq.Experimental.IAwaitQuery{``0})"/> will only change how many + tasks are awaited at any given moment, not how many will be + kept in flight. + </para> + </remarks> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.Batch``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Buffers.ArrayPool{``0},System.Func{MoreLinq.Experimental.ICurrentBuffer{``0},``1})"> + <summary> + Batches the source sequence into sized buckets using an array pool + to rent arrays to back each bucket and returns a sequence of + elements projected from each bucket. + </summary> + <typeparam name="TSource"> + Type of elements in <paramref name="source"/> sequence.</typeparam> + <typeparam name="TResult"> + Type of elements of the resulting sequence. + </typeparam> + <param name="source">The source sequence.</param> + <param name="size">Size of buckets.</param> + <param name="pool">The pool used to rent the array for each bucket.</param> + <param name="resultSelector">A function that projects a result from + the current bucket.</param> + <returns> + A sequence whose elements are projected from each bucket (returned by + <paramref name="resultSelector"/>). + </returns> + <remarks> + <para> + This operator uses deferred execution and streams its results + (however, each bucket provided to <paramref name="resultSelector"/> is + buffered).</para> + <para> + <para> + Each bucket is backed by a rented array that may be at least + <paramref name="size"/> in length. + </para> + <para> + When more than one bucket is produced, all buckets except the last + is guaranteed to have <paramref name="size"/> elements. The last + bucket may be smaller depending on the remaining elements in the + <paramref name="source"/> sequence.</para> + Each bucket is pre-allocated to <paramref name="size"/> elements. + If <paramref name="size"/> is set to a very large value, e.g. + <see cref="F:System.Int32.MaxValue"/> to effectively disable batching by just + hoping for a single bucket, then it can lead to memory exhaustion + (<see cref="T:System.OutOfMemoryException"/>). + </para> + </remarks> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.Batch``3(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Buffers.ArrayPool{``0},System.Func{MoreLinq.Experimental.ICurrentBuffer{``0},System.Collections.Generic.IEnumerable{``1}},System.Func{System.Collections.Generic.IEnumerable{``1},``2})"> + <summary> + Batches the source sequence into sized buckets using an array pool + to rent arrays to back each bucket and returns a sequence of + elements projected from each bucket. + </summary> + <typeparam name="TSource"> + Type of elements in <paramref name="source"/> sequence.</typeparam> + <typeparam name="TBucket"> + Type of elements in the sequence returned by <paramref name="bucketProjectionSelector"/>.</typeparam> + <typeparam name="TResult"> + Type of elements of the resulting sequence. + </typeparam> + <param name="source">The source sequence.</param> + <param name="size">Size of buckets.</param> + <param name="pool">The pool used to rent the array for each bucket.</param> + <param name="bucketProjectionSelector">A function that returns a + sequence projection to use for each bucket. It is called initially + before iterating over <paramref name="source"/>, but the resulting + projection is evaluated for each bucket. This has the same effect as + calling <paramref name="bucketProjectionSelector"/> for each bucket, + but allows initialization of the transformation to happen only once. + </param> + <param name="resultSelector">A function that projects a result from + the input sequence produced over a bucket.</param> + <returns> + A sequence whose elements are projected from each bucket (returned by + <paramref name="resultSelector"/>). + </returns> + <remarks> + <para> + This operator uses deferred execution and streams its results + (however, each bucket is buffered).</para> + <para> + <para> + Each bucket is backed by a rented array that may be at least + <paramref name="size"/> in length. + </para> + <para> + When more than one bucket is produced, all buckets except the last + is guaranteed to have <paramref name="size"/> elements. The last + bucket may be smaller depending on the remaining elements in the + <paramref name="source"/> sequence.</para> + Each bucket is pre-allocated to <paramref name="size"/> elements. + If <paramref name="size"/> is set to a very large value, e.g. + <see cref="F:System.Int32.MaxValue"/> to effectively disable batching by just + hoping for a single bucket, then it can lead to memory exhaustion + (<see cref="T:System.OutOfMemoryException"/>). + </para> + </remarks> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.Memoize``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Creates a sequence that lazily caches the source as it is iterated + for the first time, reusing the cache thereafter for future + re-iterations. If the source is already cached or buffered then it + is returned verbatim. + </summary> + <typeparam name="T"> + Type of elements in <paramref name="source"/>.</typeparam> + <param name="source">The source sequence.</param> + <returns> + Returns a sequence that corresponds to a cached version of the input + sequence. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> is <see langword="null"/>. + </exception> + <remarks> + The returned <see cref="T:System.Collections.Generic.IEnumerable`1"/> will cache items from + <paramref name="source"/> in a thread-safe manner. Each thread can + call its <see cref="M:System.Collections.Generic.IEnumerable`1.GetEnumerator"/> to acquire an + iterator but the same iterator should not be used simultaneously + from multiple threads. The sequence supplied in <paramref + name="source"/> is not expected to be thread-safe but it is required + to be thread-agnostic because different threads (though never + simultaneously) may iterate over the sequence. + </remarks> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.TrySingle``2(System.Collections.Generic.IEnumerable{``0},``1,``1,``1)"> + <summary> + Returns a tuple with the cardinality of the sequence and the + single element in the sequence if it contains exactly one element. + similar to <see cref="M:System.Linq.Enumerable.Single``1(System.Collections.Generic.IEnumerable{``0})"/>. + </summary> + <param name="source">The source sequence.</param> + <param name="zero"> + The value that is returned in the tuple if the sequence has zero + elements.</param> + <param name="one"> + The value that is returned in the tuple if the sequence has a + single element only.</param> + <param name="many"> + The value that is returned in the tuple if the sequence has two or + more elements.</param> + <typeparam name="T"> + The type of the elements of <paramref name="source"/>.</typeparam> + <typeparam name="TCardinality"> + The type that expresses cardinality.</typeparam> + <returns> + A tuple containing the identified <typeparamref name="TCardinality"/> + and either the single value of <typeparamref name="T"/> in the sequence + or its default value.</returns> + <remarks> + This operator uses immediate execution, but never consumes more + than two elements from the sequence. + </remarks> + </member> + <member name="M:MoreLinq.Experimental.ExperimentalEnumerable.TrySingle``3(System.Collections.Generic.IEnumerable{``0},``1,``1,``1,System.Func{``1,``0,``2})"> + <summary> + Returns a result projected from the the cardinality of the sequence + and the single element in the sequence if it contains exactly one + element. + </summary> + <param name="source">The source sequence.</param> + <param name="zero"> + The value that is passed as the first argument to + <paramref name="resultSelector" /> if the sequence has zero + elements.</param> + <param name="one"> + The value that is passed as the first argument to + <paramref name="resultSelector" /> if the sequence has a + single element only.</param> + <param name="many"> + The value that is passed as the first argument to + <paramref name="resultSelector" /> if the sequence has two or + more elements.</param> + <param name="resultSelector"> + A function that receives the cardinality and, if the + sequence has just one element, the value of that element as + argument and projects a resulting value of type + <typeparamref name="TResult"/>.</param> + <typeparam name="T"> + The type of the elements of <paramref name="source"/>.</typeparam> + <typeparam name="TCardinality"> + The type that expresses cardinality.</typeparam> + <typeparam name="TResult"> + The type of the result value returned by the + <paramref name="resultSelector"/> function. </typeparam> + <returns> + The value returned by <paramref name="resultSelector"/>. + </returns> + <remarks> + This operator uses immediate execution, but never consumes more + than two elements from the sequence. + </remarks> + </member> + <member name="T:MoreLinq.Experimental.Async.ExperimentalEnumerable"> + <summary> + <para> + Provides a set of static methods for querying objects that + implement <see cref="T:System.Collections.Generic.IAsyncEnumerable`1" />.</para> + <para> + <strong>THE METHODS ARE EXPERIMENTAL. THEY MAY BE UNSTABLE AND + UNTESTED. THEY MAY BE REMOVED FROM A FUTURE MAJOR OR MINOR RELEASE AND + POSSIBLY WITHOUT NOTICE. USE THEM AT YOUR OWN RISK. THE METHODS ARE + PUBLISHED FOR FIELD EXPERIMENTATION TO SOLICIT FEEDBACK ON THEIR + UTILITY AND DESIGN/IMPLEMENTATION DEFECTS.</strong></para> + </summary> + </member> + <member name="M:MoreLinq.Experimental.Async.ExperimentalEnumerable.Merge``1(System.Collections.Generic.IEnumerable{System.Collections.Generic.IAsyncEnumerable{``0}})"> + <summary> + Concurrently merges all the elements of multiple asynchronous streams into a single + asynchronous stream. + </summary> + <typeparam name="T"> + The type of the elements in <paramref name="sources"/>.</typeparam> + <param name="sources">The sequence of asynchronous streams.</param> + <returns> + An asynchronous stream with all elements from all <paramref name="sources"/>. + </returns> + <remarks> + <para>This operator uses deferred execution and streams its results.</para> + <para> + The elements in the resulting stream may appear in a different order than their order in + <paramref name="sources"/>.</para> + <para> + When disposed part of the way, there is a best-effort attempt to cancel all iterations + that are in flight. This requires that all asynchronous streams in <paramref + name="sources"/> properly honour timely cancellation.</para> + </remarks> + </member> + <member name="M:MoreLinq.Experimental.Async.ExperimentalEnumerable.Merge``1(System.Collections.Generic.IEnumerable{System.Collections.Generic.IAsyncEnumerable{``0}},System.Int32)"> + <summary> + Concurrently merges all the elements of multiple asynchronous streams into a single + asynchronous stream. An additional parameter specifies the maximum concurrent operations + that may be in flight at any give time. + </summary> + <typeparam name="T"> + The type of the elements in <paramref name="sources"/>.</typeparam> + <param name="sources">The sequence of asynchronous streams.</param> + <param name="maxConcurrent"> + Maximum number of asynchronous operations to have in flight at any given time. A value + of 1 (or below) disables concurrency.</param> + <returns> + An asynchronous stream with all elements from all <paramref name="sources"/>. + </returns> + <remarks> + <para> + This operator uses deferred execution and streams its results.</para> + <para> + When <paramref name="maxConcurrent"/> is 2 or greater then the elements in the resulting + stream may appear in a different order than their order in <paramref + name="sources"/>.</para> + <para> + When disposed part of the way, there is a best-effort attempt to cancel all iterations + that are in flight. This requires that all asynchronous streams in <paramref + name="sources"/> properly honour timely cancellation.</para> + </remarks> + </member> + <member name="T:MoreLinq.Experimental.AwaitQueryOptions"> + <summary> + Represents options for a query whose results evaluate asynchronously. + </summary> + </member> + <member name="F:MoreLinq.Experimental.AwaitQueryOptions.Default"> + <summary> + The default options used for a query whose results evaluate + asynchronously. + </summary> + </member> + <member name="P:MoreLinq.Experimental.AwaitQueryOptions.MaxConcurrency"> + <summary> + Gets a positive (non-zero) integer that specifies the maximum + number of asynchronous operations to have in-flight concurrently + or <c>null</c> to mean unlimited concurrency. + </summary> + </member> + <member name="P:MoreLinq.Experimental.AwaitQueryOptions.Scheduler"> + <summary> + Get the scheduler to be used for any workhorse task. + </summary> + </member> + <member name="P:MoreLinq.Experimental.AwaitQueryOptions.PreserveOrder"> + <summary> + Get a Boolean that determines whether results should be ordered + the same as the source. + </summary> + </member> + <member name="M:MoreLinq.Experimental.AwaitQueryOptions.WithMaxConcurrency(System.Nullable{System.Int32})"> + <summary> + Returns new options with the given concurrency limit. + </summary> + <param name="value"> + The maximum concurrent asynchronous operation to keep in flight. + Use <c>null</c> to mean unbounded concurrency.</param> + <returns>Options with the new setting.</returns> + </member> + <member name="M:MoreLinq.Experimental.AwaitQueryOptions.WithScheduler(System.Threading.Tasks.TaskScheduler)"> + <summary> + Returns new options with the given scheduler. + </summary> + <param name="value"> + The scheduler to use to for the workhorse task.</param> + <returns>Options with the new setting.</returns> + </member> + <member name="M:MoreLinq.Experimental.AwaitQueryOptions.WithPreserveOrder(System.Boolean)"> + <summary> + Returns new options with the given Boolean indicating whether or + not the results should be returned in the order of the source. + </summary> + <param name="value"> + A Boolean where <c>true</c> means results are in source order and + <c>false</c> means that results can be delivered in order of + efficiency.</param> + <returns>Options with the new setting.</returns> + </member> + <member name="T:MoreLinq.Experimental.IAwaitQuery`1"> + <summary> + Represents a sequence whose elements or results evaluate asynchronously. + </summary> + <inheritdoc /> + <typeparam name="T">The type of the source elements.</typeparam> + </member> + <member name="P:MoreLinq.Experimental.IAwaitQuery`1.Options"> + <summary> + The options that determine how the sequence evaluation behaves when + it is iterated. + </summary> + </member> + <member name="M:MoreLinq.Experimental.IAwaitQuery`1.WithOptions(MoreLinq.Experimental.AwaitQueryOptions)"> + <summary> + Returns a new query that will use the given options. + </summary> + <param name="options">The new options to use.</param> + <returns> + Returns a new query using the supplied options. + </returns> + </member> + <member name="T:MoreLinq.Experimental.ICurrentBuffer`1"> + <summary> + Represents a current buffered view of a larger result and which + is updated in-place (thus current) as it is moved through the overall + result. + </summary> + <typeparam name="T">Type of elements in the list.</typeparam> + </member> + <member name="T:MoreLinq.Experimental.ICurrentBufferProvider`1"> + <summary> + A provider of current buffer that updates it in-place. + </summary> + <typeparam name="T">Type of elements in the list.</typeparam> + </member> + <member name="P:MoreLinq.Experimental.ICurrentBufferProvider`1.CurrentBuffer"> + <summary> + Gets the current items of the list. + </summary> + <remarks> + The returned list is updated in-place when <see cref="M:MoreLinq.Experimental.ICurrentBufferProvider`1.UpdateWithNext"/> + is called. + </remarks> + </member> + <member name="M:MoreLinq.Experimental.ICurrentBufferProvider`1.UpdateWithNext"> + <summary> + Update this instance with the next set of elements from the source. + </summary> + <returns> + A Boolean that is <c>true</c> if this instance was updated with + new elements; otherwise <c>false</c> to indicate that the end of + the bucket source has been reached. + </returns> + </member> + <member name="T:MoreLinq.CollectionLike`1"> + <summary> + Represents a union over list types implementing either <see + cref="T:System.Collections.Generic.ICollection`1"/> or <see cref="T:System.Collections.Generic.IReadOnlyCollection`1"/>, + allowing both to be treated the same. + </summary> + </member> + <member name="T:MoreLinq.Collections.Dictionary`2"> + <summary> + A minimal <see cref="T:System.Collections.Generic.Dictionary`2"/> wrapper that + allows a null key. + </summary> + </member> + <member name="T:MoreLinq.Extensions.AcquireExtension"> + <summary><c>Acquire</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.AcquireExtension.Acquire``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Ensures that a source sequence of <see cref="T:System.IDisposable"/> + objects are all acquired successfully. If the acquisition of any + one <see cref="T:System.IDisposable"/> fails then those successfully + acquired till that point are disposed. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <param name="source">Source sequence of <see cref="T:System.IDisposable"/> objects.</param> + <returns> + Returns an array of all the acquired <see cref="T:System.IDisposable"/> + objects in source order. + </returns> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.AggregateExtension"> + <summary><c>Aggregate</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.AggregateExtension.Aggregate``4(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1},``2,System.Func{``2,``0,``2},System.Func{``1,``2,``3})"> + <summary> + Applies two accumulators sequentially in a single pass over a + sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TAccumulate1">The type of first accumulator value.</typeparam> + <typeparam name="TAccumulate2">The type of second accumulator value.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="seed1">The seed value for the first accumulator.</param> + <param name="accumulator1">The first accumulator.</param> + <param name="seed2">The seed value for the second accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.AggregateExtension.Aggregate``5(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1},``2,System.Func{``2,``0,``2},``3,System.Func{``3,``0,``3},System.Func{``1,``2,``3,``4})"> + <summary> + Applies three accumulators sequentially in a single pass over a + sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TAccumulate1">The type of first accumulator value.</typeparam> + <typeparam name="TAccumulate2">The type of second accumulator value.</typeparam> + <typeparam name="TAccumulate3">The type of third accumulator value.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="seed1">The seed value for the first accumulator.</param> + <param name="accumulator1">The first accumulator.</param> + <param name="seed2">The seed value for the second accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="seed3">The seed value for the third accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.AggregateExtension.Aggregate``6(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1},``2,System.Func{``2,``0,``2},``3,System.Func{``3,``0,``3},``4,System.Func{``4,``0,``4},System.Func{``1,``2,``3,``4,``5})"> + <summary> + Applies four accumulators sequentially in a single pass over a + sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TAccumulate1">The type of first accumulator value.</typeparam> + <typeparam name="TAccumulate2">The type of second accumulator value.</typeparam> + <typeparam name="TAccumulate3">The type of third accumulator value.</typeparam> + <typeparam name="TAccumulate4">The type of fourth accumulator value.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="seed1">The seed value for the first accumulator.</param> + <param name="accumulator1">The first accumulator.</param> + <param name="seed2">The seed value for the second accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="seed3">The seed value for the third accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="seed4">The seed value for the fourth accumulator.</param> + <param name="accumulator4">The fourth accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.AggregateExtension.Aggregate``7(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1},``2,System.Func{``2,``0,``2},``3,System.Func{``3,``0,``3},``4,System.Func{``4,``0,``4},``5,System.Func{``5,``0,``5},System.Func{``1,``2,``3,``4,``5,``6})"> + <summary> + Applies five accumulators sequentially in a single pass over a + sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TAccumulate1">The type of first accumulator value.</typeparam> + <typeparam name="TAccumulate2">The type of second accumulator value.</typeparam> + <typeparam name="TAccumulate3">The type of third accumulator value.</typeparam> + <typeparam name="TAccumulate4">The type of fourth accumulator value.</typeparam> + <typeparam name="TAccumulate5">The type of fifth accumulator value.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="seed1">The seed value for the first accumulator.</param> + <param name="accumulator1">The first accumulator.</param> + <param name="seed2">The seed value for the second accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="seed3">The seed value for the third accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="seed4">The seed value for the fourth accumulator.</param> + <param name="accumulator4">The fourth accumulator.</param> + <param name="seed5">The seed value for the fifth accumulator.</param> + <param name="accumulator5">The fifth accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.AggregateExtension.Aggregate``8(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1},``2,System.Func{``2,``0,``2},``3,System.Func{``3,``0,``3},``4,System.Func{``4,``0,``4},``5,System.Func{``5,``0,``5},``6,System.Func{``6,``0,``6},System.Func{``1,``2,``3,``4,``5,``6,``7})"> + <summary> + Applies six accumulators sequentially in a single pass over a + sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TAccumulate1">The type of first accumulator value.</typeparam> + <typeparam name="TAccumulate2">The type of second accumulator value.</typeparam> + <typeparam name="TAccumulate3">The type of third accumulator value.</typeparam> + <typeparam name="TAccumulate4">The type of fourth accumulator value.</typeparam> + <typeparam name="TAccumulate5">The type of fifth accumulator value.</typeparam> + <typeparam name="TAccumulate6">The type of sixth accumulator value.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="seed1">The seed value for the first accumulator.</param> + <param name="accumulator1">The first accumulator.</param> + <param name="seed2">The seed value for the second accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="seed3">The seed value for the third accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="seed4">The seed value for the fourth accumulator.</param> + <param name="accumulator4">The fourth accumulator.</param> + <param name="seed5">The seed value for the fifth accumulator.</param> + <param name="accumulator5">The fifth accumulator.</param> + <param name="seed6">The seed value for the sixth accumulator.</param> + <param name="accumulator6">The sixth accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.AggregateExtension.Aggregate``9(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1},``2,System.Func{``2,``0,``2},``3,System.Func{``3,``0,``3},``4,System.Func{``4,``0,``4},``5,System.Func{``5,``0,``5},``6,System.Func{``6,``0,``6},``7,System.Func{``7,``0,``7},System.Func{``1,``2,``3,``4,``5,``6,``7,``8})"> + <summary> + Applies seven accumulators sequentially in a single pass over a + sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TAccumulate1">The type of first accumulator value.</typeparam> + <typeparam name="TAccumulate2">The type of second accumulator value.</typeparam> + <typeparam name="TAccumulate3">The type of third accumulator value.</typeparam> + <typeparam name="TAccumulate4">The type of fourth accumulator value.</typeparam> + <typeparam name="TAccumulate5">The type of fifth accumulator value.</typeparam> + <typeparam name="TAccumulate6">The type of sixth accumulator value.</typeparam> + <typeparam name="TAccumulate7">The type of seventh accumulator value.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="seed1">The seed value for the first accumulator.</param> + <param name="accumulator1">The first accumulator.</param> + <param name="seed2">The seed value for the second accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="seed3">The seed value for the third accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="seed4">The seed value for the fourth accumulator.</param> + <param name="accumulator4">The fourth accumulator.</param> + <param name="seed5">The seed value for the fifth accumulator.</param> + <param name="accumulator5">The fifth accumulator.</param> + <param name="seed6">The seed value for the sixth accumulator.</param> + <param name="accumulator6">The sixth accumulator.</param> + <param name="seed7">The seed value for the seventh accumulator.</param> + <param name="accumulator7">The seventh accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.AggregateExtension.Aggregate``10(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1},``2,System.Func{``2,``0,``2},``3,System.Func{``3,``0,``3},``4,System.Func{``4,``0,``4},``5,System.Func{``5,``0,``5},``6,System.Func{``6,``0,``6},``7,System.Func{``7,``0,``7},``8,System.Func{``8,``0,``8},System.Func{``1,``2,``3,``4,``5,``6,``7,``8,``9})"> + <summary> + Applies eight accumulators sequentially in a single pass over a + sequence. + </summary> + <typeparam name="T">The type of elements in <paramref name="source"/>.</typeparam> + <typeparam name="TAccumulate1">The type of first accumulator value.</typeparam> + <typeparam name="TAccumulate2">The type of second accumulator value.</typeparam> + <typeparam name="TAccumulate3">The type of third accumulator value.</typeparam> + <typeparam name="TAccumulate4">The type of fourth accumulator value.</typeparam> + <typeparam name="TAccumulate5">The type of fifth accumulator value.</typeparam> + <typeparam name="TAccumulate6">The type of sixth accumulator value.</typeparam> + <typeparam name="TAccumulate7">The type of seventh accumulator value.</typeparam> + <typeparam name="TAccumulate8">The type of eighth accumulator value.</typeparam> + <typeparam name="TResult">The type of the accumulated result.</typeparam> + <param name="source">The source sequence</param> + <param name="seed1">The seed value for the first accumulator.</param> + <param name="accumulator1">The first accumulator.</param> + <param name="seed2">The seed value for the second accumulator.</param> + <param name="accumulator2">The second accumulator.</param> + <param name="seed3">The seed value for the third accumulator.</param> + <param name="accumulator3">The third accumulator.</param> + <param name="seed4">The seed value for the fourth accumulator.</param> + <param name="accumulator4">The fourth accumulator.</param> + <param name="seed5">The seed value for the fifth accumulator.</param> + <param name="accumulator5">The fifth accumulator.</param> + <param name="seed6">The seed value for the sixth accumulator.</param> + <param name="accumulator6">The sixth accumulator.</param> + <param name="seed7">The seed value for the seventh accumulator.</param> + <param name="accumulator7">The seventh accumulator.</param> + <param name="seed8">The seed value for the eighth accumulator.</param> + <param name="accumulator8">The eighth accumulator.</param> + <param name="resultSelector"> + A function that projects a single result given the result of each + accumulator.</param> + <returns>The value returned by <paramref name="resultSelector"/>.</returns> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.AggregateRightExtension"> + <summary><c>AggregateRight</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.AggregateRightExtension.AggregateRight``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0})"> + <summary> + Applies a right-associative accumulator function over a sequence. + This operator is the right-associative version of the + <see cref="M:System.Linq.Enumerable.Aggregate``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0})"/> LINQ operator. + </summary> + <typeparam name="TSource">The type of the elements of source.</typeparam> + <param name="source">Source sequence.</param> + <param name="func">A right-associative accumulator function to be invoked on each element.</param> + <returns>The final accumulator value.</returns> + <example> + <code><![CDATA[ + string result = Enumerable.Range(1, 5).Select(i => i.ToString()).AggregateRight((a, b) => $"({a}/{b})"); + ]]></code> + The <c>result</c> variable will contain <c>"(1/(2/(3/(4/5))))"</c>. + </example> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.AggregateRightExtension.AggregateRight``2(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``0,``1,``1})"> + <summary> + Applies a right-associative accumulator function over a sequence. + The specified seed value is used as the initial accumulator value. + This operator is the right-associative version of the + <see cref="M:System.Linq.Enumerable.Aggregate``2(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1})"/> LINQ operator. + </summary> + <typeparam name="TSource">The type of the elements of source.</typeparam> + <typeparam name="TAccumulate">The type of the accumulator value.</typeparam> + <param name="source">Source sequence.</param> + <param name="seed">The initial accumulator value.</param> + <param name="func">A right-associative accumulator function to be invoked on each element.</param> + <returns>The final accumulator value.</returns> + <example> + <code><![CDATA[ + var numbers = Enumerable.Range(1, 5); + string result = numbers.AggregateRight("6", (a, b) => $"({a}/{b})"); + ]]></code> + The <c>result</c> variable will contain <c>"(1/(2/(3/(4/(5/6)))))"</c>. + </example> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.AggregateRightExtension.AggregateRight``3(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``0,``1,``1},System.Func{``1,``2})"> + <summary> + Applies a right-associative accumulator function over a sequence. + The specified seed value is used as the initial accumulator value, + and the specified function is used to select the result value. + This operator is the right-associative version of the + <see cref="M:System.Linq.Enumerable.Aggregate``3(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1},System.Func{``1,``2})"/> LINQ operator. + </summary> + <typeparam name="TSource">The type of the elements of source.</typeparam> + <typeparam name="TAccumulate">The type of the accumulator value.</typeparam> + <typeparam name="TResult">The type of the resulting value.</typeparam> + <param name="source">Source sequence.</param> + <param name="seed">The initial accumulator value.</param> + <param name="func">A right-associative accumulator function to be invoked on each element.</param> + <param name="resultSelector">A function to transform the final accumulator value into the result value.</param> + <returns>The transformed final accumulator value.</returns> + <example> + <code><![CDATA[ + var numbers = Enumerable.Range(1, 5); + int result = numbers.AggregateRight("6", (a, b) => $"({a}/{b})", str => str.Length); + ]]></code> + The <c>result</c> variable will contain <c>21</c>. + </example> + <remarks> + This operator executes immediately. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.AppendExtension"> + <summary><c>Append</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.AppendExtension.Append``1(System.Collections.Generic.IEnumerable{``0},``0)"> + <summary> + Returns a sequence consisting of the head elements and the given tail element. + </summary> + <typeparam name="T">Type of sequence</typeparam> + <param name="head">All elements of the head. Must not be null.</param> + <param name="tail">Tail element of the new sequence.</param> + <returns>A sequence consisting of the head elements and the given tail element.</returns> + <remarks>This operator uses deferred execution and streams its results.</remarks> + </member> + <member name="T:MoreLinq.Extensions.AssertExtension"> + <summary><c>Assert</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.AssertExtension.Assert``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean})"> + <summary> + Asserts that all elements of a sequence meet a given condition + otherwise throws an <see cref="T:System.Exception"/> object. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <param name="source">Source sequence.</param> + <param name="predicate">Function that asserts an element of the <paramref name="source"/> sequence for a condition.</param> + <returns> + Returns the original sequence. + </returns> + <exception cref="T:System.InvalidOperationException">The input sequence + contains an element that does not meet the condition being + asserted.</exception> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.AssertExtension.Assert``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean},System.Func{``0,System.Exception})"> + <summary> + Asserts that all elements of a sequence meet a given condition + otherwise throws an <see cref="T:System.Exception"/> object. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <param name="source">Source sequence.</param> + <param name="predicate">Function that asserts an element of the input sequence for a condition.</param> + <param name="errorSelector">Function that returns the <see cref="T:System.Exception"/> object to throw.</param> + <returns> + Returns the original sequence. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.AssertCountExtension"> + <summary><c>AssertCount</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.AssertCountExtension.AssertCount``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Asserts that a source sequence contains a given count of elements. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <param name="source">Source sequence.</param> + <param name="count">Count to assert.</param> + <returns> + Returns the original sequence as long it is contains the + number of elements specified by <paramref name="count"/>. + Otherwise it throws <see cref="T:System.Exception" />. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.AssertCountExtension.AssertCount``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{System.Int32,System.Int32,System.Exception})"> + <summary> + Asserts that a source sequence contains a given count of elements. + A parameter specifies the exception to be thrown. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <param name="source">Source sequence.</param> + <param name="count">Count to assert.</param> + <param name="errorSelector"> + Function that receives a comparison (a negative integer if actual + count is less than <paramref name="count"/> and a positive integer + if actual count is greater than <paramref name="count"/>) and + <paramref name="count"/> as arguments and which returns the + <see cref="T:System.Exception"/> object to throw.</param> + <returns> + Returns the original sequence as long it is contains the + number of elements specified by <paramref name="count"/>. + Otherwise it throws the <see cref="T:System.Exception" /> object + returned by calling <paramref name="errorSelector"/>. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.AtLeastExtension"> + <summary><c>AtLeast</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.AtLeastExtension.AtLeast``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Determines whether or not the number of elements in the sequence is greater than + or equal to the given integer. + </summary> + <typeparam name="T">Element type of sequence</typeparam> + <param name="source">The source sequence</param> + <param name="count">The minimum number of items a sequence must have for this + function to return true</param> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null</exception> + <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="count"/> is negative</exception> + <returns><c>true</c> if the number of elements in the sequence is greater than + or equal to the given integer or <c>false</c> otherwise.</returns> + <example> + <code><![CDATA[ + var numbers = new[] { 123, 456, 789 }; + var result = numbers.AtLeast(2); + ]]></code> + The <c>result</c> variable will contain <c>true</c>. + </example> + </member> + <member name="T:MoreLinq.Extensions.AtMostExtension"> + <summary><c>AtMost</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.AtMostExtension.AtMost``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Determines whether or not the number of elements in the sequence is lesser than + or equal to the given integer. + </summary> + <typeparam name="T">Element type of sequence</typeparam> + <param name="source">The source sequence</param> + <param name="count">The maximum number of items a sequence must have for this + function to return true</param> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null</exception> + <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="count"/> is negative</exception> + <returns><c>true</c> if the number of elements in the sequence is lesser than + or equal to the given integer or <c>false</c> otherwise.</returns> + <example> + <code><![CDATA[ + var numbers = new[] { 123, 456, 789 }; + var result = numbers.AtMost(2); + ]]></code> + The <c>result</c> variable will contain <c>false</c>. + </example> + </member> + <member name="T:MoreLinq.Extensions.BacksertExtension"> + <summary><c>Backsert</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.BacksertExtension.Backsert``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Inserts the elements of a sequence into another sequence at a + specified index from the tail of the sequence, where zero always + represents the last position, one represents the second-last + element, two represents the third-last element and so on. + </summary> + <typeparam name="T"> + Type of elements in all sequences.</typeparam> + <param name="first">The source sequence.</param> + <param name="second">The sequence that will be inserted.</param> + <param name="index"> + The zero-based index from the end of <paramref name="first"/> where + elements from <paramref name="second"/> should be inserted. + <paramref name="second"/>.</param> + <returns> + A sequence that contains the elements of <paramref name="first"/> + plus the elements of <paramref name="second"/> inserted at + the given index from the end of <paramref name="first"/>. + </returns> + <exception cref="T:System.ArgumentNullException"><paramref name="first"/> is null.</exception> + <exception cref="T:System.ArgumentNullException"><paramref name="second"/> is null.</exception> + <exception cref="T:System.ArgumentOutOfRangeException"> + Thrown if <paramref name="index"/> is negative. + </exception> + <exception cref="T:System.ArgumentOutOfRangeException"> + Thrown lazily if <paramref name="index"/> is greater than the + length of <paramref name="first"/>. The validation occurs when + the resulting sequence is iterated. + </exception> + <remarks> + This method uses deferred execution and streams its results. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.BatchExtension"> + <summary><c>Batch</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.BatchExtension.Batch``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Batches the source sequence into sized buckets. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="size">Size of buckets.</param> + <returns>A sequence of equally sized buckets containing elements of the source collection.</returns> + <remarks> + <para> + This operator uses deferred execution and streams its results + (buckets are streamed but their content buffered).</para> + <para> + When more than one bucket is streamed, all buckets except the last + is guaranteed to have <paramref name="size"/> elements. The last + bucket may be smaller depending on the remaining elements in the + <paramref name="source"/> sequence.</para> + <para> + Each bucket is pre-allocated to <paramref name="size"/> elements. + If <paramref name="size"/> is set to a very large value, e.g. + <see cref="F:System.Int32.MaxValue"/> to effectively disable batching by just + hoping for a single bucket, then it can lead to memory exhaustion + (<see cref="T:System.OutOfMemoryException"/>). + </para> + </remarks> + </member> + <member name="M:MoreLinq.Extensions.BatchExtension.Batch``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Batches the source sequence into sized buckets and applies a projection to each bucket. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <typeparam name="TResult">Type of result returned by <paramref name="resultSelector"/>.</typeparam> + <param name="source">The source sequence.</param> + <param name="size">Size of buckets.</param> + <param name="resultSelector">The projection to apply to each bucket.</param> + <returns>A sequence of projections on equally sized buckets containing elements of the source collection.</returns> + <remarks> + <para> + This operator uses deferred execution and streams its results + (buckets are streamed but their content buffered).</para> + <para> + <para> + When more than one bucket is streamed, all buckets except the last + is guaranteed to have <paramref name="size"/> elements. The last + bucket may be smaller depending on the remaining elements in the + <paramref name="source"/> sequence.</para> + Each bucket is pre-allocated to <paramref name="size"/> elements. + If <paramref name="size"/> is set to a very large value, e.g. + <see cref="F:System.Int32.MaxValue"/> to effectively disable batching by just + hoping for a single bucket, then it can lead to memory exhaustion + (<see cref="T:System.OutOfMemoryException"/>). + </para> + </remarks> + </member> + <member name="T:MoreLinq.Extensions.CartesianExtension"> + <summary><c>Cartesian</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.CartesianExtension.Cartesian``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``1,``2})"> + <summary> + Returns the Cartesian product of two sequences by enumerating all + possible combinations of one item from each sequence, and applying + a user-defined projection to the items in a given combination. + </summary> + <typeparam name="T1"> + The type of the elements of <paramref name="first"/>.</typeparam> + <typeparam name="T2"> + The type of the elements of <paramref name="second"/>.</typeparam> + <typeparam name="TResult"> + The type of the elements of the result sequence.</typeparam> + <param name="first">The first sequence of elements.</param> + <param name="second">The second sequence of elements.</param> + <param name="resultSelector">A projection function that combines + elements from all of the sequences.</param> + <returns>A sequence of elements returned by + <paramref name="resultSelector"/>.</returns> + <remarks> + <para> + The method returns items in the same order as a nested foreach + loop, but all sequences except for <paramref name="first"/> are + cached when iterated over. The cache is then re-used for any + subsequent iterations.</para> + <para> + This method uses deferred execution and stream its results.</para> + </remarks> + </member> + <member name="M:MoreLinq.Extensions.CartesianExtension.Cartesian``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Func{``0,``1,``2,``3})"> + <summary> + Returns the Cartesian product of three sequences by enumerating all + possible combinations of one item from each sequence, and applying + a user-defined projection to the items in a given combination. + </summary> + <typeparam name="T1"> + The type of the elements of <paramref name="first"/>.</typeparam> + <typeparam name="T2"> + The type of the elements of <paramref name="second"/>.</typeparam> + <typeparam name="T3"> + The type of the elements of <paramref name="third"/>.</typeparam> + <typeparam name="TResult"> + The type of the elements of the result sequence.</typeparam> + <param name="first">The first sequence of elements.</param> + <param name="second">The second sequence of elements.</param> + <param name="third">The third sequence of elements.</param> + <param name="resultSelector">A projection function that combines + elements from all of the sequences.</param> + <returns>A sequence of elements returned by + <paramref name="resultSelector"/>.</returns> + <remarks> + <para> + The method returns items in the same order as a nested foreach + loop, but all sequences except for <paramref name="first"/> are + cached when iterated over. The cache is then re-used for any + subsequent iterations.</para> + <para> + This method uses deferred execution and stream its results.</para> + </remarks> + </member> + <member name="M:MoreLinq.Extensions.CartesianExtension.Cartesian``5(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Collections.Generic.IEnumerable{``3},System.Func{``0,``1,``2,``3,``4})"> + <summary> + Returns the Cartesian product of four sequences by enumerating all + possible combinations of one item from each sequence, and applying + a user-defined projection to the items in a given combination. + </summary> + <typeparam name="T1"> + The type of the elements of <paramref name="first"/>.</typeparam> + <typeparam name="T2"> + The type of the elements of <paramref name="second"/>.</typeparam> + <typeparam name="T3"> + The type of the elements of <paramref name="third"/>.</typeparam> + <typeparam name="T4"> + The type of the elements of <paramref name="fourth"/>.</typeparam> + <typeparam name="TResult"> + The type of the elements of the result sequence.</typeparam> + <param name="first">The first sequence of elements.</param> + <param name="second">The second sequence of elements.</param> + <param name="third">The third sequence of elements.</param> + <param name="fourth">The fourth sequence of elements.</param> + <param name="resultSelector">A projection function that combines + elements from all of the sequences.</param> + <returns>A sequence of elements returned by + <paramref name="resultSelector"/>.</returns> + <remarks> + <para> + The method returns items in the same order as a nested foreach + loop, but all sequences except for <paramref name="first"/> are + cached when iterated over. The cache is then re-used for any + subsequent iterations.</para> + <para> + This method uses deferred execution and stream its results.</para> + </remarks> + </member> + <member name="M:MoreLinq.Extensions.CartesianExtension.Cartesian``6(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Collections.Generic.IEnumerable{``3},System.Collections.Generic.IEnumerable{``4},System.Func{``0,``1,``2,``3,``4,``5})"> + <summary> + Returns the Cartesian product of five sequences by enumerating all + possible combinations of one item from each sequence, and applying + a user-defined projection to the items in a given combination. + </summary> + <typeparam name="T1"> + The type of the elements of <paramref name="first"/>.</typeparam> + <typeparam name="T2"> + The type of the elements of <paramref name="second"/>.</typeparam> + <typeparam name="T3"> + The type of the elements of <paramref name="third"/>.</typeparam> + <typeparam name="T4"> + The type of the elements of <paramref name="fourth"/>.</typeparam> + <typeparam name="T5"> + The type of the elements of <paramref name="fifth"/>.</typeparam> + <typeparam name="TResult"> + The type of the elements of the result sequence.</typeparam> + <param name="first">The first sequence of elements.</param> + <param name="second">The second sequence of elements.</param> + <param name="third">The third sequence of elements.</param> + <param name="fourth">The fourth sequence of elements.</param> + <param name="fifth">The fifth sequence of elements.</param> + <param name="resultSelector">A projection function that combines + elements from all of the sequences.</param> + <returns>A sequence of elements returned by + <paramref name="resultSelector"/>.</returns> + <remarks> + <para> + The method returns items in the same order as a nested foreach + loop, but all sequences except for <paramref name="first"/> are + cached when iterated over. The cache is then re-used for any + subsequent iterations.</para> + <para> + This method uses deferred execution and stream its results.</para> + </remarks> + </member> + <member name="M:MoreLinq.Extensions.CartesianExtension.Cartesian``7(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Collections.Generic.IEnumerable{``3},System.Collections.Generic.IEnumerable{``4},System.Collections.Generic.IEnumerable{``5},System.Func{``0,``1,``2,``3,``4,``5,``6})"> + <summary> + Returns the Cartesian product of six sequences by enumerating all + possible combinations of one item from each sequence, and applying + a user-defined projection to the items in a given combination. + </summary> + <typeparam name="T1"> + The type of the elements of <paramref name="first"/>.</typeparam> + <typeparam name="T2"> + The type of the elements of <paramref name="second"/>.</typeparam> + <typeparam name="T3"> + The type of the elements of <paramref name="third"/>.</typeparam> + <typeparam name="T4"> + The type of the elements of <paramref name="fourth"/>.</typeparam> + <typeparam name="T5"> + The type of the elements of <paramref name="fifth"/>.</typeparam> + <typeparam name="T6"> + The type of the elements of <paramref name="sixth"/>.</typeparam> + <typeparam name="TResult"> + The type of the elements of the result sequence.</typeparam> + <param name="first">The first sequence of elements.</param> + <param name="second">The second sequence of elements.</param> + <param name="third">The third sequence of elements.</param> + <param name="fourth">The fourth sequence of elements.</param> + <param name="fifth">The fifth sequence of elements.</param> + <param name="sixth">The sixth sequence of elements.</param> + <param name="resultSelector">A projection function that combines + elements from all of the sequences.</param> + <returns>A sequence of elements returned by + <paramref name="resultSelector"/>.</returns> + <remarks> + <para> + The method returns items in the same order as a nested foreach + loop, but all sequences except for <paramref name="first"/> are + cached when iterated over. The cache is then re-used for any + subsequent iterations.</para> + <para> + This method uses deferred execution and stream its results.</para> + </remarks> + </member> + <member name="M:MoreLinq.Extensions.CartesianExtension.Cartesian``8(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Collections.Generic.IEnumerable{``3},System.Collections.Generic.IEnumerable{``4},System.Collections.Generic.IEnumerable{``5},System.Collections.Generic.IEnumerable{``6},System.Func{``0,``1,``2,``3,``4,``5,``6,``7})"> + <summary> + Returns the Cartesian product of seven sequences by enumerating all + possible combinations of one item from each sequence, and applying + a user-defined projection to the items in a given combination. + </summary> + <typeparam name="T1"> + The type of the elements of <paramref name="first"/>.</typeparam> + <typeparam name="T2"> + The type of the elements of <paramref name="second"/>.</typeparam> + <typeparam name="T3"> + The type of the elements of <paramref name="third"/>.</typeparam> + <typeparam name="T4"> + The type of the elements of <paramref name="fourth"/>.</typeparam> + <typeparam name="T5"> + The type of the elements of <paramref name="fifth"/>.</typeparam> + <typeparam name="T6"> + The type of the elements of <paramref name="sixth"/>.</typeparam> + <typeparam name="T7"> + The type of the elements of <paramref name="seventh"/>.</typeparam> + <typeparam name="TResult"> + The type of the elements of the result sequence.</typeparam> + <param name="first">The first sequence of elements.</param> + <param name="second">The second sequence of elements.</param> + <param name="third">The third sequence of elements.</param> + <param name="fourth">The fourth sequence of elements.</param> + <param name="fifth">The fifth sequence of elements.</param> + <param name="sixth">The sixth sequence of elements.</param> + <param name="seventh">The seventh sequence of elements.</param> + <param name="resultSelector">A projection function that combines + elements from all of the sequences.</param> + <returns>A sequence of elements returned by + <paramref name="resultSelector"/>.</returns> + <remarks> + <para> + The method returns items in the same order as a nested foreach + loop, but all sequences except for <paramref name="first"/> are + cached when iterated over. The cache is then re-used for any + subsequent iterations.</para> + <para> + This method uses deferred execution and stream its results.</para> + </remarks> + </member> + <member name="M:MoreLinq.Extensions.CartesianExtension.Cartesian``9(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Collections.Generic.IEnumerable{``3},System.Collections.Generic.IEnumerable{``4},System.Collections.Generic.IEnumerable{``5},System.Collections.Generic.IEnumerable{``6},System.Collections.Generic.IEnumerable{``7},System.Func{``0,``1,``2,``3,``4,``5,``6,``7,``8})"> + <summary> + Returns the Cartesian product of eight sequences by enumerating all + possible combinations of one item from each sequence, and applying + a user-defined projection to the items in a given combination. + </summary> + <typeparam name="T1"> + The type of the elements of <paramref name="first"/>.</typeparam> + <typeparam name="T2"> + The type of the elements of <paramref name="second"/>.</typeparam> + <typeparam name="T3"> + The type of the elements of <paramref name="third"/>.</typeparam> + <typeparam name="T4"> + The type of the elements of <paramref name="fourth"/>.</typeparam> + <typeparam name="T5"> + The type of the elements of <paramref name="fifth"/>.</typeparam> + <typeparam name="T6"> + The type of the elements of <paramref name="sixth"/>.</typeparam> + <typeparam name="T7"> + The type of the elements of <paramref name="seventh"/>.</typeparam> + <typeparam name="T8"> + The type of the elements of <paramref name="eighth"/>.</typeparam> + <typeparam name="TResult"> + The type of the elements of the result sequence.</typeparam> + <param name="first">The first sequence of elements.</param> + <param name="second">The second sequence of elements.</param> + <param name="third">The third sequence of elements.</param> + <param name="fourth">The fourth sequence of elements.</param> + <param name="fifth">The fifth sequence of elements.</param> + <param name="sixth">The sixth sequence of elements.</param> + <param name="seventh">The seventh sequence of elements.</param> + <param name="eighth">The eighth sequence of elements.</param> + <param name="resultSelector">A projection function that combines + elements from all of the sequences.</param> + <returns>A sequence of elements returned by + <paramref name="resultSelector"/>.</returns> + <remarks> + <para> + The method returns items in the same order as a nested foreach + loop, but all sequences except for <paramref name="first"/> are + cached when iterated over. The cache is then re-used for any + subsequent iterations.</para> + <para> + This method uses deferred execution and stream its results.</para> + </remarks> + </member> + <member name="T:MoreLinq.Extensions.ChooseExtension"> + <summary><c>Choose</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ChooseExtension.Choose``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.ValueTuple{System.Boolean,``1}})"> + <summary> + Applies a function to each element of the source sequence and + returns a new sequence of result elements for source elements + where the function returns a couple (2-tuple) having a <c>true</c> + as its first element and result as the second. + </summary> + <typeparam name="T"> + The type of the elements in <paramref name="source"/>.</typeparam> + <typeparam name="TResult"> + The type of the elements in the returned sequence.</typeparam> + <param name="source"> The source sequence.</param> + <param name="chooser">The function that is applied to each source + element.</param> + <returns>A sequence <typeparamref name="TResult"/> elements.</returns> + <remarks> + This method uses deferred execution semantics and streams its + results. + </remarks> + <example> + <code><![CDATA[ + var str = "O,l,2,3,4,S,6,7,B,9"; + var xs = str.Split(',').Choose(s => (int.TryParse(s, out var n), n)); + ]]></code> + The <c>xs</c> variable will be a sequence of the integers 2, 3, 4, + 6, 7 and 9. + </example> + </member> + <member name="T:MoreLinq.Extensions.CompareCountExtension"> + <summary><c>CompareCount</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.CompareCountExtension.CompareCount``2(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1})"> + <summary> + Compares two sequences and returns an integer that indicates whether the first sequence + has fewer, the same or more elements than the second sequence. + </summary> + <typeparam name="TFirst">Element type of the first sequence</typeparam> + <typeparam name="TSecond">Element type of the second sequence</typeparam> + <param name="first">The first sequence</param> + <param name="second">The second sequence</param> + <exception cref="T:System.ArgumentNullException"><paramref name="first"/> is null</exception> + <exception cref="T:System.ArgumentNullException"><paramref name="second"/> is null</exception> + <returns><c>-1</c> if the first sequence has the fewest elements, <c>0</c> if the two sequences have the same number of elements + or <c>1</c> if the first sequence has the most elements.</returns> + <example> + <code><![CDATA[ + var first = new[] { 123, 456 }; + var second = new[] { 789 }; + var result = first.CompareCount(second); + ]]></code> + The <c>result</c> variable will contain <c>1</c>. + </example> + </member> + <member name="T:MoreLinq.Extensions.ConsumeExtension"> + <summary><c>Consume</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ConsumeExtension.Consume``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Completely consumes the given sequence. This method uses immediate execution, + and doesn't store any data during execution. + </summary> + <typeparam name="T">Element type of the sequence</typeparam> + <param name="source">Source to consume</param> + </member> + <member name="T:MoreLinq.Extensions.CountBetweenExtension"> + <summary><c>CountBetween</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.CountBetweenExtension.CountBetween``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Int32)"> + <summary> + Determines whether or not the number of elements in the sequence is between + an inclusive range of minimum and maximum integers. + </summary> + <typeparam name="T">Element type of sequence</typeparam> + <param name="source">The source sequence</param> + <param name="min">The minimum number of items a sequence must have for this + function to return true</param> + <param name="max">The maximum number of items a sequence must have for this + function to return true</param> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null</exception> + <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="min"/> is negative or <paramref name="max"/> is less than min</exception> + <returns><c>true</c> if the number of elements in the sequence is between (inclusive) + the min and max given integers or <c>false</c> otherwise.</returns> + <example> + <code><![CDATA[ + var numbers = new[] { 123, 456, 789 }; + var result = numbers.CountBetween(1, 2); + ]]></code> + The <c>result</c> variable will contain <c>false</c>. + </example> + </member> + <member name="T:MoreLinq.Extensions.CountByExtension"> + <summary><c>CountBy</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.CountByExtension.CountBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Applies a key-generating function to each element of a sequence and returns a sequence of + unique keys and their number of occurrences in the original sequence. + </summary> + <typeparam name="TSource">Type of the elements of the source sequence.</typeparam> + <typeparam name="TKey">Type of the projected element.</typeparam> + <param name="source">Source sequence.</param> + <param name="keySelector">Function that transforms each item of source sequence into a key to be compared against the others.</param> + <returns>A sequence of unique keys and their number of occurrences in the original sequence.</returns> + </member> + <member name="M:MoreLinq.Extensions.CountByExtension.CountBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Applies a key-generating function to each element of a sequence and returns a sequence of + unique keys and their number of occurrences in the original sequence. + An additional argument specifies a comparer to use for testing equivalence of keys. + </summary> + <typeparam name="TSource">Type of the elements of the source sequence.</typeparam> + <typeparam name="TKey">Type of the projected element.</typeparam> + <param name="source">Source sequence.</param> + <param name="keySelector">Function that transforms each item of source sequence into a key to be compared against the others.</param> + <param name="comparer">The equality comparer to use to determine whether or not keys are equal. + If null, the default equality comparer for <typeparamref name="TSource"/> is used.</param> + <returns>A sequence of unique keys and their number of occurrences in the original sequence.</returns> + </member> + <member name="T:MoreLinq.Extensions.CountDownExtension"> + <summary><c>CountDown</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.CountDownExtension.CountDown``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,System.Nullable{System.Int32},``1})"> + <summary> + Provides a countdown counter for a given count of elements at the + tail of the sequence where zero always represents the last element, + one represents the second-last element, two represents the + third-last element and so on. + </summary> + <typeparam name="T"> + The type of elements of <paramref name="source"/></typeparam> + <typeparam name="TResult"> + The type of elements of the resulting sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="count">Count of tail elements of + <paramref name="source"/> to count down.</param> + <param name="resultSelector"> + A function that receives the element and the current countdown + value for the element and which returns those mapped to a + result returned in the resulting sequence. For elements before + the last <paramref name="count"/>, the countdown value is + <c>null</c>.</param> + <returns> + A sequence of results returned by + <paramref name="resultSelector"/>.</returns> + <remarks> + This method uses deferred execution semantics and streams its + results. At most, <paramref name="count"/> elements of the source + sequence may be buffered at any one time unless + <paramref name="source"/> is a collection or a list. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.DistinctByExtension"> + <summary><c>DistinctBy</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.DistinctByExtension.DistinctBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Returns all distinct elements of the given source, where "distinctness" + is determined via a projection and the default equality comparer for the projected type. + </summary> + <remarks> + This operator uses deferred execution and streams the results, although + a set of already-seen keys is retained. If a key is seen multiple times, + only the first element with that key is returned. + </remarks> + <typeparam name="TSource">Type of the source sequence</typeparam> + <typeparam name="TKey">Type of the projected element</typeparam> + <param name="source">Source sequence</param> + <param name="keySelector">Projection for determining "distinctness"</param> + <returns>A sequence consisting of distinct elements from the source sequence, + comparing them by the specified key projection.</returns> + </member> + <member name="M:MoreLinq.Extensions.DistinctByExtension.DistinctBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Returns all distinct elements of the given source, where "distinctness" + is determined via a projection and the specified comparer for the projected type. + </summary> + <remarks> + This operator uses deferred execution and streams the results, although + a set of already-seen keys is retained. If a key is seen multiple times, + only the first element with that key is returned. + </remarks> + <typeparam name="TSource">Type of the source sequence</typeparam> + <typeparam name="TKey">Type of the projected element</typeparam> + <param name="source">Source sequence</param> + <param name="keySelector">Projection for determining "distinctness"</param> + <param name="comparer">The equality comparer to use to determine whether or not keys are equal. + If null, the default equality comparer for <c>TSource</c> is used.</param> + <returns>A sequence consisting of distinct elements from the source sequence, + comparing them by the specified key projection.</returns> + </member> + <member name="T:MoreLinq.Extensions.EndsWithExtension"> + <summary><c>EndsWith</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.EndsWithExtension.EndsWith``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0})"> + <summary> + Determines whether the end of the first sequence is equivalent to + the second sequence, using the default equality comparer. + </summary> + <typeparam name="T">Type of elements.</typeparam> + <param name="first">The sequence to check.</param> + <param name="second">The sequence to compare to.</param> + <returns> + <c>true</c> if <paramref name="first" /> ends with elements + equivalent to <paramref name="second" />. + </returns> + <remarks> + This is the <see cref="T:System.Collections.Generic.IEnumerable`1" /> equivalent of + <see cref="M:System.String.EndsWith(System.String)" /> and + it calls <see cref="M:System.Collections.Generic.IEqualityComparer`1.Equals(`0,`0)" /> using + <see cref="P:System.Collections.Generic.EqualityComparer`1.Default" /> on pairs of elements at + the same index. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.EndsWithExtension.EndsWith``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Determines whether the end of the first sequence is equivalent to + the second sequence, using the specified element equality comparer. + </summary> + <typeparam name="T">Type of elements.</typeparam> + <param name="first">The sequence to check.</param> + <param name="second">The sequence to compare to.</param> + <param name="comparer">Equality comparer to use.</param> + <returns> + <c>true</c> if <paramref name="first" /> ends with elements + equivalent to <paramref name="second" />. + </returns> + <remarks> + This is the <see cref="T:System.Collections.Generic.IEnumerable`1" /> equivalent of + <see cref="M:System.String.EndsWith(System.String)" /> and it calls + <see cref="M:System.Collections.Generic.IEqualityComparer`1.Equals(`0,`0)" /> on pairs of + elements at the same index. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.EquiZipExtension"> + <summary><c>EquiZip</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.EquiZipExtension.EquiZip``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``1,``2})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. An exception is thrown + if the input sequences are of different lengths. + </summary> + <typeparam name="TFirst">Type of elements in first sequence.</typeparam> + <typeparam name="TSecond">Type of elements in second sequence.</typeparam> + <typeparam name="TResult">Type of elements in result sequence.</typeparam> + <param name="first">The first sequence.</param> + <param name="second">The second sequence.</param> + <param name="resultSelector"> + Function to apply to each pair of elements.</param> + <returns> + A sequence that contains elements of the two input sequences, + combined by <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.InvalidOperationException"> + The input sequences are of different lengths. + </exception> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, or <paramref + name="resultSelector"/> is <see langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var numbers = new[] { 1, 2, 3, 4 }; + var letters = new[] { "A", "B", "C", "D" }; + var zipped = numbers.EquiZip(letters, (n, l) => n + l); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield "1A", + "2B", "3C", "4D" in turn. + </example> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.EquiZipExtension.EquiZip``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Func{``0,``1,``2,``3})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. An exception is thrown + if the input sequences are of different lengths. + </summary> + <typeparam name="T1">Type of elements in first sequence.</typeparam> + <typeparam name="T2">Type of elements in second sequence.</typeparam> + <typeparam name="T3">Type of elements in third sequence.</typeparam> + <typeparam name="TResult">Type of elements in result sequence.</typeparam> + <param name="first">The first sequence.</param> + <param name="second">The second sequence.</param> + <param name="third">The third sequence.</param> + <param name="resultSelector"> + Function to apply to each triplet of elements.</param> + <returns> + A sequence that contains elements of the three input sequences, + combined by <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.InvalidOperationException"> + The input sequences are of different lengths. + </exception> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, <paramref + name="third"/>, or <paramref name="resultSelector"/> is <see + langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var numbers = new[] { 1, 2, 3, 4 }; + var letters = new[] { "A", "B", "C", "D" }; + var chars = new[] { 'a', 'b', 'c', 'd' }; + var zipped = numbers.EquiZip(letters, chars, (n, l, c) => n + l + c); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield "1Aa", + "2Bb", "3Cc", "4Dd" in turn. + </example> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.EquiZipExtension.EquiZip``5(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Collections.Generic.IEnumerable{``3},System.Func{``0,``1,``2,``3,``4})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. An exception is thrown + if the input sequences are of different lengths. + </summary> + <typeparam name="T1">Type of elements in first sequence</typeparam> + <typeparam name="T2">Type of elements in second sequence</typeparam> + <typeparam name="T3">Type of elements in third sequence</typeparam> + <typeparam name="T4">Type of elements in fourth sequence</typeparam> + <typeparam name="TResult">Type of elements in result sequence</typeparam> + <param name="first">The first sequence.</param> + <param name="second">The second sequence.</param> + <param name="third">The third sequence.</param> + <param name="fourth">The fourth sequence.</param> + <param name="resultSelector"> + Function to apply to each quadruplet of elements.</param> + <returns> + A sequence that contains elements of the four input sequences, + combined by <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.InvalidOperationException"> + The input sequences are of different lengths. + </exception> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, <paramref + name="third"/>, <paramref name="fourth"/>, or <paramref + name="resultSelector"/> is <see langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var numbers = new[] { 1, 2, 3, 4 }; + var letters = new[] { "A", "B", "C", "D" }; + var chars = new[] { 'a', 'b', 'c', 'd' }; + var flags = new[] { true, false, true, false }; + var zipped = numbers.EquiZip(letters, chars, flags, (n, l, c, f) => n + l + c + f); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield "1AaTrue", + "2BbFalse", "3CcTrue", "4DdFalse" in turn. + </example> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.EvaluateExtension"> + <summary><c>Evaluate</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.EvaluateExtension.Evaluate``1(System.Collections.Generic.IEnumerable{System.Func{``0}})"> + <summary> + Returns a sequence containing the values resulting from invoking (in order) each function in the source sequence of functions. + </summary> + <remarks> + This operator uses deferred execution and streams the results. + If the resulting sequence is enumerated multiple times, the functions will be + evaluated multiple times too. + </remarks> + <typeparam name="T">The type of the object returned by the functions.</typeparam> + <param name="functions">The functions to evaluate.</param> + <returns>A sequence with results from invoking <paramref name="functions"/>.</returns> + <exception cref="T:System.ArgumentNullException">When <paramref name="functions"/> is <c>null</c>.</exception> + </member> + <member name="T:MoreLinq.Extensions.ExactlyExtension"> + <summary><c>Exactly</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ExactlyExtension.Exactly``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Determines whether or not the number of elements in the sequence is equals to the given integer. + </summary> + <typeparam name="T">Element type of sequence</typeparam> + <param name="source">The source sequence</param> + <param name="count">The exactly number of items a sequence must have for this + function to return true</param> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null</exception> + <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="count"/> is negative</exception> + <returns><c>true</c> if the number of elements in the sequence is equals + to the given integer or <c>false</c> otherwise.</returns> + <example> + <code><![CDATA[ + var numbers = new[] { 123, 456, 789 }; + var result = numbers.Exactly(3); + ]]></code> + The <c>result</c> variable will contain <c>true</c>. + </example> + </member> + <member name="T:MoreLinq.Extensions.ExceptByExtension"> + <summary><c>ExceptBy</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ExceptByExtension.ExceptBy``2(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Returns the set of elements in the first sequence which aren't + in the second sequence, according to a given key selector. + </summary> + <remarks> + This is a set operation; if multiple elements in <paramref name="first"/> have + equal keys, only the first such element is returned. + This operator uses deferred execution and streams the results, although + a set of keys from <paramref name="second"/> is immediately selected and retained. + </remarks> + <typeparam name="TSource">The type of the elements in the input sequences.</typeparam> + <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam> + <param name="first">The sequence of potentially included elements.</param> + <param name="second">The sequence of elements whose keys may prevent elements in + <paramref name="first"/> from being returned.</param> + <param name="keySelector">The mapping from source element to key.</param> + <returns>A sequence of elements from <paramref name="first"/> whose key was not also a key for + any element in <paramref name="second"/>.</returns> + </member> + <member name="M:MoreLinq.Extensions.ExceptByExtension.ExceptBy``2(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Returns the set of elements in the first sequence which aren't + in the second sequence, according to a given key selector. + </summary> + <remarks> + This is a set operation; if multiple elements in <paramref name="first"/> have + equal keys, only the first such element is returned. + This operator uses deferred execution and streams the results, although + a set of keys from <paramref name="second"/> is immediately selected and retained. + </remarks> + <typeparam name="TSource">The type of the elements in the input sequences.</typeparam> + <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam> + <param name="first">The sequence of potentially included elements.</param> + <param name="second">The sequence of elements whose keys may prevent elements in + <paramref name="first"/> from being returned.</param> + <param name="keySelector">The mapping from source element to key.</param> + <param name="keyComparer">The equality comparer to use to determine whether or not keys are equal. + If null, the default equality comparer for <c>TSource</c> is used.</param> + <returns>A sequence of elements from <paramref name="first"/> whose key was not also a key for + any element in <paramref name="second"/>.</returns> + </member> + <member name="T:MoreLinq.Extensions.ExcludeExtension"> + <summary><c>Exclude</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ExcludeExtension.Exclude``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Int32)"> + <summary> + Excludes a contiguous number of elements from a sequence starting + at a given index. + </summary> + <typeparam name="T">The type of the elements of the sequence</typeparam> + <param name="sequence">The sequence to exclude elements from</param> + <param name="startIndex">The zero-based index at which to begin excluding elements</param> + <param name="count">The number of elements to exclude</param> + <returns>A sequence that excludes the specified portion of elements</returns> + </member> + <member name="T:MoreLinq.Extensions.FallbackIfEmptyExtension"> + <summary><c>FallbackIfEmpty</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.FallbackIfEmptyExtension.FallbackIfEmpty``1(System.Collections.Generic.IEnumerable{``0},``0)"> + <summary> + Returns the elements of the specified sequence or the specified + value in a singleton collection if the sequence is empty. + </summary> + <typeparam name="T">The type of the elements in the sequences.</typeparam> + <param name="source">The source sequence.</param> + <param name="fallback">The value to return in a singleton + collection if <paramref name="source"/> is empty.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains <paramref name="fallback"/> + if <paramref name="source"/> is empty; otherwise, <paramref name="source"/>. + </returns> + <example> + <code><![CDATA[ + var numbers = new[] { 123, 456, 789 }; + var result = numbers.Where(x => x == 100).FallbackIfEmpty(-1).Single(); + ]]></code> + The <c>result</c> variable will contain <c>-1</c>. + </example> + </member> + <member name="M:MoreLinq.Extensions.FallbackIfEmptyExtension.FallbackIfEmpty``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0})"> + <summary> + Returns the elements of a sequence, but if it is empty then + returns an alternate sequence of values. + </summary> + <typeparam name="T">The type of the elements in the sequences.</typeparam> + <param name="source">The source sequence.</param> + <param name="fallback">The alternate sequence that is returned + if <paramref name="source"/> is empty.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that containing fallback values + if <paramref name="source"/> is empty; otherwise, <paramref name="source"/>. + </returns> + </member> + <member name="M:MoreLinq.Extensions.FallbackIfEmptyExtension.FallbackIfEmpty``1(System.Collections.Generic.IEnumerable{``0},``0[])"> + <summary> + Returns the elements of a sequence, but if it is empty then + returns an alternate sequence from an array of values. + </summary> + <typeparam name="T">The type of the elements in the sequences.</typeparam> + <param name="source">The source sequence.</param> + <param name="fallback">The array that is returned as the alternate + sequence if <paramref name="source"/> is empty.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that containing fallback values + if <paramref name="source"/> is empty; otherwise, <paramref name="source"/>. + </returns> + </member> + <member name="M:MoreLinq.Extensions.FallbackIfEmptyExtension.FallbackIfEmpty``1(System.Collections.Generic.IEnumerable{``0},``0,``0)"> + <summary> + Returns the elements of a sequence, but if it is empty then + returns an alternate sequence of values. + </summary> + <typeparam name="T">The type of the elements in the sequences.</typeparam> + <param name="source">The source sequence.</param> + <param name="fallback1">First value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <param name="fallback2">Second value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that containing fallback values + if <paramref name="source"/> is empty; otherwise, <paramref name="source"/>. + </returns> + </member> + <member name="M:MoreLinq.Extensions.FallbackIfEmptyExtension.FallbackIfEmpty``1(System.Collections.Generic.IEnumerable{``0},``0,``0,``0)"> + <summary> + Returns the elements of a sequence, but if it is empty then + returns an alternate sequence of values. + </summary> + <typeparam name="T">The type of the elements in the sequences.</typeparam> + <param name="source">The source sequence.</param> + <param name="fallback1">First value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <param name="fallback2">Second value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <param name="fallback3">Third value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that containing fallback values + if <paramref name="source"/> is empty; otherwise, <paramref name="source"/>. + </returns> + </member> + <member name="M:MoreLinq.Extensions.FallbackIfEmptyExtension.FallbackIfEmpty``1(System.Collections.Generic.IEnumerable{``0},``0,``0,``0,``0)"> + <summary> + Returns the elements of a sequence, but if it is empty then + returns an alternate sequence of values. + </summary> + <typeparam name="T">The type of the elements in the sequences.</typeparam> + <param name="source">The source sequence.</param> + <param name="fallback1">First value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <param name="fallback2">Second value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <param name="fallback3">Third value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <param name="fallback4">Fourth value of the alternate sequence that + is returned if <paramref name="source"/> is empty.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that containing fallback values + if <paramref name="source"/> is empty; otherwise, <paramref name="source"/>. + </returns> + </member> + <member name="T:MoreLinq.Extensions.FillBackwardExtension"> + <summary><c>FillBackward</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.FillBackwardExtension.FillBackward``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Returns a sequence with each null reference or value in the source + replaced with the following non-null reference or value in + that sequence. + </summary> + <param name="source">The source sequence.</param> + <typeparam name="T">Type of the elements in the source sequence.</typeparam> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> with null references or values + replaced. + </returns> + <remarks> + This method uses deferred execution semantics and streams its + results. If references or values are null at the end of the + sequence then they remain null. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.FillBackwardExtension.FillBackward``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean})"> + <summary> + Returns a sequence with each missing element in the source replaced + with the following non-missing element in that sequence. An + additional parameter specifies a function used to determine if an + element is considered missing or not. + </summary> + <param name="source">The source sequence.</param> + <param name="predicate">The function used to determine if + an element in the sequence is considered missing.</param> + <typeparam name="T">Type of the elements in the source sequence.</typeparam> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> with missing values replaced. + </returns> + <remarks> + This method uses deferred execution semantics and streams its + results. If elements are missing at the end of the sequence then + they remain missing. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.FillBackwardExtension.FillBackward``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean},System.Func{``0,``0,``0})"> + <summary> + Returns a sequence with each missing element in the source replaced + with the following non-missing element in that sequence. Additional + parameters specify two functions, one used to determine if an + element is considered missing or not and another to provide the + replacement for the missing element. + </summary> + <param name="source">The source sequence.</param> + <param name="predicate">The function used to determine if + an element in the sequence is considered missing.</param> + <param name="fillSelector">The function used to produce the element + that will replace the missing one. Its first argument receives the + current element considered missing while the second argument + receives the next non-missing element.</param> + <typeparam name="T">Type of the elements in the source sequence.</typeparam> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> with missing values replaced. + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> with missing elements filled. + </returns> + <remarks> + This method uses deferred execution semantics and streams its + results. If elements are missing at the end of the sequence then + they remain missing. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.FillForwardExtension"> + <summary><c>FillForward</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.FillForwardExtension.FillForward``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Returns a sequence with each null reference or value in the source + replaced with the previous non-null reference or value seen in + that sequence. + </summary> + <param name="source">The source sequence.</param> + <typeparam name="T">Type of the elements in the source sequence.</typeparam> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> with null references or values + replaced. + </returns> + <remarks> + This method uses deferred execution semantics and streams its + results. If references or values are null at the start of the + sequence then they remain null. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.FillForwardExtension.FillForward``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean})"> + <summary> + Returns a sequence with each missing element in the source replaced + with the previous non-missing element seen in that sequence. An + additional parameter specifies a function used to determine if an + element is considered missing or not. + </summary> + <param name="source">The source sequence.</param> + <param name="predicate">The function used to determine if + an element in the sequence is considered missing.</param> + <typeparam name="T">Type of the elements in the source sequence.</typeparam> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> with missing values replaced. + </returns> + <remarks> + This method uses deferred execution semantics and streams its + results. If elements are missing at the start of the sequence then + they remain missing. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.FillForwardExtension.FillForward``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean},System.Func{``0,``0,``0})"> + <summary> + Returns a sequence with each missing element in the source replaced + with one based on the previous non-missing element seen in that + sequence. Additional parameters specify two functions, one used to + determine if an element is considered missing or not and another + to provide the replacement for the missing element. + </summary> + <param name="source">The source sequence.</param> + <param name="predicate">The function used to determine if + an element in the sequence is considered missing.</param> + <param name="fillSelector">The function used to produce the element + that will replace the missing one. Its first argument receives the + current element considered missing while the second argument + receives the previous non-missing element.</param> + <typeparam name="T">Type of the elements in the source sequence.</typeparam> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> with missing values replaced. + </returns> + <remarks> + This method uses deferred execution semantics and streams its + results. If elements are missing at the start of the sequence then + they remain missing. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.FirstExtension"> + <summary><c>First</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.FirstExtension.First``1(MoreLinq.IExtremaEnumerable{``0})"> + <summary> + Returns the first element of a sequence. + </summary> + <typeparam name="T"> + The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The input sequence.</param> + <exception cref="T:System.InvalidOperationException"> + The input sequence is empty.</exception> + <returns> + The first element of the input sequence. + </returns> + </member> + <member name="T:MoreLinq.Extensions.FirstOrDefaultExtension"> + <summary><c>FirstOrDefault</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.FirstOrDefaultExtension.FirstOrDefault``1(MoreLinq.IExtremaEnumerable{``0})"> + <summary> + Returns the first element of a sequence, or a default value if the + sequence contains no elements. + </summary> + <typeparam name="T"> + The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The input sequence.</param> + <returns> + Default value of type <typeparamref name="T"/> if source is empty; + otherwise, the first element in source. + </returns> + </member> + <member name="T:MoreLinq.Extensions.FlattenExtension"> + <summary><c>Flatten</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.FlattenExtension.Flatten(System.Collections.IEnumerable)"> + <summary> + Flattens a sequence containing arbitrarily-nested sequences. + </summary> + <param name="source">The sequence that will be flattened.</param> + <returns> + A sequence that contains the elements of <paramref name="source"/> + and all nested sequences (except strings). + </returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null.</exception> + </member> + <member name="M:MoreLinq.Extensions.FlattenExtension.Flatten(System.Collections.IEnumerable,System.Func{System.Collections.IEnumerable,System.Boolean})"> + <summary> + Flattens a sequence containing arbitrarily-nested sequences. An + additional parameter specifies a predicate function used to + determine whether a nested <see cref="T:System.Collections.IEnumerable"/> should be + flattened or not. + </summary> + <param name="source">The sequence that will be flattened.</param> + <param name="predicate"> + A function that receives each element that implements + <see cref="T:System.Collections.IEnumerable"/> and indicates if its elements should be + recursively flattened into the resulting sequence. + </param> + <returns> + A sequence that contains the elements of <paramref name="source"/> + and all nested sequences for which the predicate function + returned <c>true</c>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> is <c>null</c>.</exception> + <exception cref="T:System.ArgumentNullException"> + <paramref name="predicate"/> is <c>null</c>.</exception> + </member> + <member name="M:MoreLinq.Extensions.FlattenExtension.Flatten(System.Collections.IEnumerable,System.Func{System.Object,System.Collections.IEnumerable})"> + <summary> + Flattens a sequence containing arbitrarily-nested sequences. An + additional parameter specifies a function that projects an inner + sequence via a property of an object. + </summary> + <param name="source">The sequence that will be flattened.</param> + <param name="selector"> + A function that receives each element of the sequence as an object + and projects an inner sequence to be flattened. If the function + returns <c>null</c> then the object argument is considered a leaf + of the flattening process. + </param> + <returns> + A sequence that contains the elements of <paramref name="source"/> + and all nested sequences projected via the + <paramref name="selector"/> function. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> is <c>null</c>.</exception> + <exception cref="T:System.ArgumentNullException"> + <paramref name="selector"/> is <c>null</c>.</exception> + </member> + <member name="T:MoreLinq.Extensions.FoldExtension"> + <summary><c>Fold</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.FoldExtension.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 1 element. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 1 element.</exception> + </member> + <member name="M:MoreLinq.Extensions.FoldExtension.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 2 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 2 elements.</exception> + </member> + <member name="M:MoreLinq.Extensions.FoldExtension.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 3 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 3 elements.</exception> + </member> + <member name="M:MoreLinq.Extensions.FoldExtension.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 4 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 4 elements.</exception> + </member> + <member name="M:MoreLinq.Extensions.FoldExtension.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 5 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 5 elements.</exception> + </member> + <member name="M:MoreLinq.Extensions.FoldExtension.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 6 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 6 elements.</exception> + </member> + <member name="M:MoreLinq.Extensions.FoldExtension.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 7 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 7 elements.</exception> + </member> + <member name="M:MoreLinq.Extensions.FoldExtension.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 8 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 8 elements.</exception> + </member> + <member name="M:MoreLinq.Extensions.FoldExtension.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 9 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 9 elements.</exception> + </member> + <member name="M:MoreLinq.Extensions.FoldExtension.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 10 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 10 elements.</exception> + </member> + <member name="M:MoreLinq.Extensions.FoldExtension.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 11 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 11 elements.</exception> + </member> + <member name="M:MoreLinq.Extensions.FoldExtension.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 12 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 12 elements.</exception> + </member> + <member name="M:MoreLinq.Extensions.FoldExtension.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 13 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 13 elements.</exception> + </member> + <member name="M:MoreLinq.Extensions.FoldExtension.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 14 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 14 elements.</exception> + </member> + <member name="M:MoreLinq.Extensions.FoldExtension.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 15 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 15 elements.</exception> + </member> + <member name="M:MoreLinq.Extensions.FoldExtension.Fold``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``0,``1})"> + <summary> + Returns the result of applying a function to a sequence of + 16 elements. + </summary> + <remarks> + This operator uses immediate execution and effectively buffers + as many items of the source sequence as necessary. + </remarks> + <typeparam name="T">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The sequence of items to fold.</param> + <param name="folder">Function to apply to the elements in the sequence.</param> + <returns>The folded value returned by <paramref name="folder"/>.</returns> + <exception cref="T:System.ArgumentNullException"> + Either <paramref name="source"/> or <paramref name="folder"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.InvalidOperationException"><paramref name="source"/> does not contain exactly 16 elements.</exception> + </member> + <member name="T:MoreLinq.Extensions.ForEachExtension"> + <summary><c>ForEach</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ForEachExtension.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Action{``0})"> + <summary> + Immediately executes the given action on each element in the source sequence. + </summary> + <typeparam name="T">The type of the elements in the sequence</typeparam> + <param name="source">The sequence of elements</param> + <param name="action">The action to execute on each element</param> + </member> + <member name="M:MoreLinq.Extensions.ForEachExtension.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Action{``0,System.Int32})"> + <summary> + Immediately executes the given action on each element in the source sequence. + Each element's index is used in the logic of the action. + </summary> + <typeparam name="T">The type of the elements in the sequence</typeparam> + <param name="source">The sequence of elements</param> + <param name="action">The action to execute on each element; the second parameter + of the action represents the index of the source element.</param> + </member> + <member name="T:MoreLinq.Extensions.FullGroupJoinExtension"> + <summary><c>FullGroupJoin</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.FullGroupJoinExtension.FullGroupJoin``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2})"> + <summary> + Performs a Full Group Join between the <paramref name="first"/> and <paramref name="second"/> sequences. + </summary> + <remarks> + This operator uses deferred execution and streams the results. + The results are yielded in the order of the elements found in the first sequence + followed by those found only in the second. In addition, the callback responsible + for projecting the results is supplied with sequences which preserve their source order. + </remarks> + <typeparam name="TFirst">The type of the elements in the first input sequence</typeparam> + <typeparam name="TSecond">The type of the elements in the second input sequence</typeparam> + <typeparam name="TKey">The type of the key to use to join</typeparam> + <param name="first">First sequence</param> + <param name="second">Second sequence</param> + <param name="firstKeySelector">The mapping from first sequence to key</param> + <param name="secondKeySelector">The mapping from second sequence to key</param> + <returns>A sequence of elements joined from <paramref name="first"/> and <paramref name="second"/>. + </returns> + </member> + <member name="M:MoreLinq.Extensions.FullGroupJoinExtension.FullGroupJoin``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Collections.Generic.IEqualityComparer{``2})"> + <summary> + Performs a Full Group Join between the <paramref name="first"/> and <paramref name="second"/> sequences. + </summary> + <remarks> + This operator uses deferred execution and streams the results. + The results are yielded in the order of the elements found in the first sequence + followed by those found only in the second. In addition, the callback responsible + for projecting the results is supplied with sequences which preserve their source order. + </remarks> + <typeparam name="TFirst">The type of the elements in the first input sequence</typeparam> + <typeparam name="TSecond">The type of the elements in the second input sequence</typeparam> + <typeparam name="TKey">The type of the key to use to join</typeparam> + <param name="first">First sequence</param> + <param name="second">Second sequence</param> + <param name="firstKeySelector">The mapping from first sequence to key</param> + <param name="secondKeySelector">The mapping from second sequence to key</param> + <param name="comparer">The equality comparer to use to determine whether or not keys are equal. + If null, the default equality comparer for <c>TKey</c> is used.</param> + <returns>A sequence of elements joined from <paramref name="first"/> and <paramref name="second"/>. + </returns> + </member> + <member name="M:MoreLinq.Extensions.FullGroupJoinExtension.FullGroupJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``2,System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},``3})"> + <summary> + Performs a full group-join between two sequences. + </summary> + <remarks> + This operator uses deferred execution and streams the results. + The results are yielded in the order of the elements found in the first sequence + followed by those found only in the second. In addition, the callback responsible + for projecting the results is supplied with sequences which preserve their source order. + </remarks> + <typeparam name="TFirst">The type of the elements in the first input sequence</typeparam> + <typeparam name="TSecond">The type of the elements in the second input sequence</typeparam> + <typeparam name="TKey">The type of the key to use to join</typeparam> + <typeparam name="TResult">The type of the elements of the resulting sequence</typeparam> + <param name="first">First sequence</param> + <param name="second">Second sequence</param> + <param name="firstKeySelector">The mapping from first sequence to key</param> + <param name="secondKeySelector">The mapping from second sequence to key</param> + <param name="resultSelector">Function to apply to each pair of elements plus the key</param> + <returns>A sequence of elements joined from <paramref name="first"/> and <paramref name="second"/>. + </returns> + </member> + <member name="M:MoreLinq.Extensions.FullGroupJoinExtension.FullGroupJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``2,System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},``3},System.Collections.Generic.IEqualityComparer{``2})"> + <summary> + Performs a full group-join between two sequences. + </summary> + <remarks> + This operator uses deferred execution and streams the results. + The results are yielded in the order of the elements found in the first sequence + followed by those found only in the second. In addition, the callback responsible + for projecting the results is supplied with sequences which preserve their source order. + </remarks> + <typeparam name="TFirst">The type of the elements in the first input sequence</typeparam> + <typeparam name="TSecond">The type of the elements in the second input sequence</typeparam> + <typeparam name="TKey">The type of the key to use to join</typeparam> + <typeparam name="TResult">The type of the elements of the resulting sequence</typeparam> + <param name="first">First sequence</param> + <param name="second">Second sequence</param> + <param name="firstKeySelector">The mapping from first sequence to key</param> + <param name="secondKeySelector">The mapping from second sequence to key</param> + <param name="resultSelector">Function to apply to each pair of elements plus the key</param> + <param name="comparer">The equality comparer to use to determine whether or not keys are equal. + If null, the default equality comparer for <c>TKey</c> is used.</param> + <returns>A sequence of elements joined from <paramref name="first"/> and <paramref name="second"/>. + </returns> + </member> + <member name="T:MoreLinq.Extensions.FullJoinExtension"> + <summary><c>FullJoin</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.FullJoinExtension.FullJoin``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``0,``2},System.Func{``0,``0,``2})"> + <summary> + Performs a full outer join on two homogeneous sequences. + Additional arguments specify key selection functions and result + projection functions. + </summary> + <typeparam name="TSource"> + The type of elements in the source sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector function.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence to join fully.</param> + <param name="second"> + The second sequence to join fully.</param> + <param name="keySelector"> + Function that projects the key given an element of one of the + sequences to join.</param> + <param name="firstSelector"> + Function that projects the result given just an element from + <paramref name="first"/> where there is no corresponding element + in <paramref name="second"/>.</param> + <param name="secondSelector"> + Function that projects the result given just an element from + <paramref name="second"/> where there is no corresponding element + in <paramref name="first"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <returns>A sequence containing results projected from a full + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.Extensions.FullJoinExtension.FullJoin``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``0,``2},System.Func{``0,``0,``2},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Performs a full outer join on two homogeneous sequences. + Additional arguments specify key selection functions, result + projection functions and a key comparer. + </summary> + <typeparam name="TSource"> + The type of elements in the source sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector function.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence to join fully.</param> + <param name="second"> + The second sequence to join fully.</param> + <param name="keySelector"> + Function that projects the key given an element of one of the + sequences to join.</param> + <param name="firstSelector"> + Function that projects the result given just an element from + <paramref name="first"/> where there is no corresponding element + in <paramref name="second"/>.</param> + <param name="secondSelector"> + Function that projects the result given just an element from + <paramref name="second"/> where there is no corresponding element + in <paramref name="first"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <param name="comparer"> + The <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> instance used to compare + keys for equality.</param> + <returns>A sequence containing results projected from a full + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.Extensions.FullJoinExtension.FullJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``3},System.Func{``1,``3},System.Func{``0,``1,``3})"> + <summary> + Performs a full outer join on two heterogeneous sequences. + Additional arguments specify key selection functions and result + projection functions. + </summary> + <typeparam name="TFirst"> + The type of elements in the first sequence.</typeparam> + <typeparam name="TSecond"> + The type of elements in the second sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector functions.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence to join fully.</param> + <param name="second"> + The second sequence to join fully.</param> + <param name="firstKeySelector"> + Function that projects the key given an element from <paramref name="first"/>.</param> + <param name="secondKeySelector"> + Function that projects the key given an element from <paramref name="second"/>.</param> + <param name="firstSelector"> + Function that projects the result given just an element from + <paramref name="first"/> where there is no corresponding element + in <paramref name="second"/>.</param> + <param name="secondSelector"> + Function that projects the result given just an element from + <paramref name="second"/> where there is no corresponding element + in <paramref name="first"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <returns>A sequence containing results projected from a full + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.Extensions.FullJoinExtension.FullJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``3},System.Func{``1,``3},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})"> + <summary> + Performs a full outer join on two heterogeneous sequences. + Additional arguments specify key selection functions, result + projection functions and a key comparer. + </summary> + <typeparam name="TFirst"> + The type of elements in the first sequence.</typeparam> + <typeparam name="TSecond"> + The type of elements in the second sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector functions.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence to join fully.</param> + <param name="second"> + The second sequence to join fully.</param> + <param name="firstKeySelector"> + Function that projects the key given an element from <paramref name="first"/>.</param> + <param name="secondKeySelector"> + Function that projects the key given an element from <paramref name="second"/>.</param> + <param name="firstSelector"> + Function that projects the result given just an element from + <paramref name="first"/> where there is no corresponding element + in <paramref name="second"/>.</param> + <param name="secondSelector"> + Function that projects the result given just an element from + <paramref name="second"/> where there is no corresponding element + in <paramref name="first"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <param name="comparer"> + The <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> instance used to compare + keys for equality.</param> + <returns>A sequence containing results projected from a full + outer join of the two input sequences.</returns> + </member> + <member name="T:MoreLinq.Extensions.GroupAdjacentExtension"> + <summary><c>GroupAdjacent</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.GroupAdjacentExtension.GroupAdjacent``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Groups the adjacent elements of a sequence according to a + specified key selector function. + </summary> + <typeparam name="TSource">The type of the elements of + <paramref name="source"/>.</typeparam> + <typeparam name="TKey">The type of the key returned by + <paramref name="keySelector"/>.</typeparam> + <param name="source">A sequence whose elements to group.</param> + <param name="keySelector">A function to extract the key for each + element.</param> + <returns>A sequence of groupings where each grouping + (<see cref="T:System.Linq.IGrouping`2"/>) contains the key + and the adjacent elements in the same order as found in the + source sequence.</returns> + <remarks> + This method is implemented by using deferred execution and + streams the groupings. The grouping elements, however, are + buffered. Each grouping is therefore yielded as soon as it + is complete and before the next grouping occurs. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.GroupAdjacentExtension.GroupAdjacent``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Groups the adjacent elements of a sequence according to a + specified key selector function and compares the keys by using a + specified comparer. + </summary> + <typeparam name="TSource">The type of the elements of + <paramref name="source"/>.</typeparam> + <typeparam name="TKey">The type of the key returned by + <paramref name="keySelector"/>.</typeparam> + <param name="source">A sequence whose elements to group.</param> + <param name="keySelector">A function to extract the key for each + element.</param> + <param name="comparer">An <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> to + compare keys.</param> + <returns>A sequence of groupings where each grouping + (<see cref="T:System.Linq.IGrouping`2"/>) contains the key + and the adjacent elements in the same order as found in the + source sequence.</returns> + <remarks> + This method is implemented by using deferred execution and + streams the groupings. The grouping elements, however, are + buffered. Each grouping is therefore yielded as soon as it + is complete and before the next grouping occurs. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.GroupAdjacentExtension.GroupAdjacent``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2})"> + <summary> + Groups the adjacent elements of a sequence according to a + specified key selector function and projects the elements for + each group by using a specified function. + </summary> + <typeparam name="TSource">The type of the elements of + <paramref name="source"/>.</typeparam> + <typeparam name="TKey">The type of the key returned by + <paramref name="keySelector"/>.</typeparam> + <typeparam name="TElement">The type of the elements in the + resulting groupings.</typeparam> + <param name="source">A sequence whose elements to group.</param> + <param name="keySelector">A function to extract the key for each + element.</param> + <param name="elementSelector">A function to map each source + element to an element in the resulting grouping.</param> + <returns>A sequence of groupings where each grouping + (<see cref="T:System.Linq.IGrouping`2"/>) contains the key + and the adjacent elements (of type <typeparamref name="TElement"/>) + in the same order as found in the source sequence.</returns> + <remarks> + This method is implemented by using deferred execution and + streams the groupings. The grouping elements, however, are + buffered. Each grouping is therefore yielded as soon as it + is complete and before the next grouping occurs. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.GroupAdjacentExtension.GroupAdjacent``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``1,System.Collections.Generic.IEnumerable{``0},``2})"> + <summary> + Groups the adjacent elements of a sequence according to a + specified key selector function. The keys are compared by using + a comparer and each group's elements are projected by using a + specified function. + </summary> + <typeparam name="TSource">The type of the elements of + <paramref name="source"/>.</typeparam> + <typeparam name="TKey">The type of the key returned by + <paramref name="keySelector"/>.</typeparam> + <typeparam name="TResult">The type of the elements in the + resulting sequence.</typeparam> + <param name="source">A sequence whose elements to group.</param> + <param name="keySelector">A function to extract the key for each + element.</param> + <param name="resultSelector">A function to map each key and + associated source elements to a result object.</param> + <returns>A collection of elements of type + <typeparamref name="TResult" /> where each element represents + a projection over a group and its key.</returns> + <remarks> + This method is implemented by using deferred execution and + streams the groupings. The grouping elements, however, are + buffered. Each grouping is therefore yielded as soon as it + is complete and before the next grouping occurs. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.GroupAdjacentExtension.GroupAdjacent``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Groups the adjacent elements of a sequence according to a + specified key selector function. The keys are compared by using + a comparer and each group's elements are projected by using a + specified function. + </summary> + <typeparam name="TSource">The type of the elements of + <paramref name="source"/>.</typeparam> + <typeparam name="TKey">The type of the key returned by + <paramref name="keySelector"/>.</typeparam> + <typeparam name="TElement">The type of the elements in the + resulting groupings.</typeparam> + <param name="source">A sequence whose elements to group.</param> + <param name="keySelector">A function to extract the key for each + element.</param> + <param name="elementSelector">A function to map each source + element to an element in the resulting grouping.</param> + <param name="comparer">An <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> to + compare keys.</param> + <returns>A sequence of groupings where each grouping + (<see cref="T:System.Linq.IGrouping`2"/>) contains the key + and the adjacent elements (of type <typeparamref name="TElement"/>) + in the same order as found in the source sequence.</returns> + <remarks> + This method is implemented by using deferred execution and + streams the groupings. The grouping elements, however, are + buffered. Each grouping is therefore yielded as soon as it + is complete and before the next grouping occurs. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.GroupAdjacentExtension.GroupAdjacent``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``1,System.Collections.Generic.IEnumerable{``0},``2},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Groups the adjacent elements of a sequence according to a + specified key selector function. The keys are compared by using + a comparer and each group's elements are projected by using a + specified function. + </summary> + <typeparam name="TSource">The type of the elements of + <paramref name="source"/>.</typeparam> + <typeparam name="TKey">The type of the key returned by + <paramref name="keySelector"/>.</typeparam> + <typeparam name="TResult">The type of the elements in the + resulting sequence.</typeparam> + <param name="source">A sequence whose elements to group.</param> + <param name="keySelector">A function to extract the key for each + element.</param> + <param name="resultSelector">A function to map each key and + associated source elements to a result object.</param> + <param name="comparer">An <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> to + compare keys.</param> + <returns>A collection of elements of type + <typeparamref name="TResult" /> where each element represents + a projection over a group and its key.</returns> + <remarks> + This method is implemented by using deferred execution and + streams the groupings. The grouping elements, however, are + buffered. Each grouping is therefore yielded as soon as it + is complete and before the next grouping occurs. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.IndexExtension"> + <summary><c>Index</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.IndexExtension.Index``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Returns a sequence of <see cref="T:System.Collections.Generic.KeyValuePair`2"/> + where the key is the zero-based index of the value in the source + sequence. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <param name="source">The source sequence.</param> + <returns>A sequence of <see cref="T:System.Collections.Generic.KeyValuePair`2"/>.</returns> + <remarks>This operator uses deferred execution and streams its + results.</remarks> + </member> + <member name="M:MoreLinq.Extensions.IndexExtension.Index``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Returns a sequence of <see cref="T:System.Collections.Generic.KeyValuePair`2"/> + where the key is the index of the value in the source sequence. + An additional parameter specifies the starting index. + </summary> + <typeparam name="TSource">Type of elements in <paramref name="source"/> sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="startIndex"></param> + <returns>A sequence of <see cref="T:System.Collections.Generic.KeyValuePair`2"/>.</returns> + <remarks>This operator uses deferred execution and streams its + results.</remarks> + </member> + <member name="T:MoreLinq.Extensions.IndexByExtension"> + <summary><c>IndexBy</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.IndexByExtension.IndexBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Applies a key-generating function to each element of a sequence and + returns a sequence that contains the elements of the original + sequence as well its key and index inside the group of its key. + </summary> + <typeparam name="TSource">Type of the source sequence elements.</typeparam> + <typeparam name="TKey">Type of the projected key.</typeparam> + <param name="source">Source sequence.</param> + <param name="keySelector"> + Function that projects the key given an element in the source sequence.</param> + <returns> + A sequence of elements paired with their index within the key-group. + The index is the key and the element is the value of the pair. + </returns> + </member> + <member name="M:MoreLinq.Extensions.IndexByExtension.IndexBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Applies a key-generating function to each element of a sequence and + returns a sequence that contains the elements of the original + sequence as well its key and index inside the group of its key. + An additional parameter specifies a comparer to use for testing the + equivalence of keys. + </summary> + <typeparam name="TSource">Type of the source sequence elements.</typeparam> + <typeparam name="TKey">Type of the projected key.</typeparam> + <param name="source">Source sequence.</param> + <param name="keySelector"> + Function that projects the key given an element in the source sequence.</param> + <param name="comparer"> + The equality comparer to use to determine whether or not keys are + equal. If <c>null</c>, the default equality comparer for + <typeparamref name="TSource"/> is used.</param> + <returns> + A sequence of elements paired with their index within the key-group. + The index is the key and the element is the value of the pair. + </returns> + </member> + <member name="T:MoreLinq.Extensions.InsertExtension"> + <summary><c>Insert</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.InsertExtension.Insert``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Inserts the elements of a sequence into another sequence at a + specified index. + </summary> + <typeparam name="T">Type of the elements of the source sequence.</typeparam> + <param name="first">The source sequence.</param> + <param name="second">The sequence that will be inserted.</param> + <param name="index"> + The zero-based index at which to insert elements from + <paramref name="second"/>.</param> + <returns> + A sequence that contains the elements of <paramref name="first"/> + plus the elements of <paramref name="second"/> inserted at + the given index. + </returns> + <exception cref="T:System.ArgumentNullException"><paramref name="first"/> is null.</exception> + <exception cref="T:System.ArgumentNullException"><paramref name="second"/> is null.</exception> + <exception cref="T:System.ArgumentOutOfRangeException"> + Thrown if <paramref name="index"/> is negative. + </exception> + <exception cref="T:System.ArgumentOutOfRangeException"> + Thrown lazily if <paramref name="index"/> is greater than the + length of <paramref name="first"/>. The validation occurs when + yielding the next element after having iterated + <paramref name="first"/> entirely. + </exception> + </member> + <member name="T:MoreLinq.Extensions.InterleaveExtension"> + <summary><c>Interleave</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.InterleaveExtension.Interleave``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0}[])"> + <summary> + Interleaves the elements of two or more sequences into a single sequence, skipping + sequences as they are consumed. + </summary> + <typeparam name="T">The type of the elements of the source sequences.</typeparam> + <param name="sequence">The first sequence in the interleave group.</param> + <param name="otherSequences">The other sequences in the interleave group.</param> + <returns>A sequence of interleaved elements from all of the source sequences.</returns> + <remarks> + <para> + Interleave combines sequences by visiting each in turn, and returning the first element + of each, followed by the second, then the third, and so on. So, for example:</para> + <code><![CDATA[ + var xs = new[] { 1, 1, 1 }.Interleave(new[] { 2, 2, 2 }, new[] { 3, 3, 3 }); + // xs = { 1, 2, 3, 1, 2, 3, 1, 2, 3 } + ]]></code> + <para> + This operator behaves in a deferred and streaming manner.</para> + <para> + When sequences are of unequal length, this method will skip those sequences that have + been fully consumed and continue interleaving the remaining sequences.</para> + <para> + The sequences are interleaved in the order that they appear in the <paramref + name="otherSequences"/> collection, with <paramref name="sequence"/> as the first + sequence.</para> + </remarks> + </member> + <member name="T:MoreLinq.Extensions.LagExtension"> + <summary><c>Lag</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.LagExtension.Lag``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,``0,``1})"> + <summary> + Produces a projection of a sequence by evaluating pairs of elements separated by a + negative offset. + </summary> + <typeparam name="TSource">The type of the elements of the source sequence.</typeparam> + <typeparam name="TResult">The type of the elements of the result sequence.</typeparam> + <param name="source">The sequence over which to evaluate lag.</param> + <param name="offset">The offset (expressed as a positive number) by which to lag each + value of the sequence.</param> + <param name="resultSelector">A projection function which accepts the current and lagged + items (in that order) and returns a result.</param> + <returns> + A sequence produced by projecting each element of the sequence with its lagged + pairing.</returns> + <remarks> + <para> + This operator evaluates in a deferred and streaming manner.</para> + <para> + For elements prior to the lag offset, <c>default(T)</c> is used as the lagged + value.</para> + </remarks> + </member> + <member name="M:MoreLinq.Extensions.LagExtension.Lag``2(System.Collections.Generic.IEnumerable{``0},System.Int32,``0,System.Func{``0,``0,``1})"> + <summary> + Produces a projection of a sequence by evaluating pairs of elements separated by a + negative offset. + </summary> + <typeparam name="TSource">The type of the elements of the source sequence.</typeparam> + <typeparam name="TResult">The type of the elements of the result sequence.</typeparam> + <param name="source">The sequence over which to evaluate lag.</param> + <param name="offset">The offset (expressed as a positive number) by which to lag each + value of the sequence.</param> + <param name="defaultLagValue">A default value supplied for the lagged value prior to the + lag offset.</param> + <param name="resultSelector">A projection function which accepts the current and lagged + items (in that order) and returns a result.</param> + <returns> + A sequence produced by projecting each element of the sequence with its lagged + pairing.</returns> + <remarks> + This operator evaluates in a deferred and streaming manner. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.LastExtension"> + <summary><c>Last</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.LastExtension.Last``1(MoreLinq.IExtremaEnumerable{``0})"> + <summary> + Returns the last element of a sequence. + </summary> + <typeparam name="T"> + The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The input sequence.</param> + <exception cref="T:System.InvalidOperationException"> + The input sequence is empty.</exception> + <returns> + The last element of the input sequence. + </returns> + </member> + <member name="T:MoreLinq.Extensions.LastOrDefaultExtension"> + <summary><c>LastOrDefault</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.LastOrDefaultExtension.LastOrDefault``1(MoreLinq.IExtremaEnumerable{``0})"> + <summary> + Returns the last element of a sequence, or a default value if the + sequence contains no elements. + </summary> + <typeparam name="T"> + The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The input sequence.</param> + <returns> + Default value of type <typeparamref name="T"/> if source is empty; + otherwise, the last element in source. + </returns> + </member> + <member name="T:MoreLinq.Extensions.LeadExtension"> + <summary><c>Lead</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.LeadExtension.Lead``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,``0,``1})"> + <summary> + Produces a projection of a sequence by evaluating pairs of elements separated by a + positive offset. + </summary> + <typeparam name="TSource">The type of the elements in the source sequence.</typeparam> + <typeparam name="TResult">The type of the elements in the result sequence.</typeparam> + <param name="source">The sequence over which to evaluate lead.</param> + <param name="offset">The offset (expressed as a positive number) by which to lead each + element of the sequence.</param> + <param name="resultSelector">A projection function which accepts the current and + subsequent (lead) element (in that order) and produces a result.</param> + <returns> + A sequence produced by projecting each element of the sequence with its lead + pairing.</returns> + <remarks> + <para> + This operator evaluates in a deferred and streaming manner.</para> + <para> + For elements of the sequence that are less than <paramref name="offset"/> items from the + end, <c>default(T)</c> is used as the lead value.</para> + </remarks> + </member> + <member name="M:MoreLinq.Extensions.LeadExtension.Lead``2(System.Collections.Generic.IEnumerable{``0},System.Int32,``0,System.Func{``0,``0,``1})"> + <summary> + Produces a projection of a sequence by evaluating pairs of elements separated by a + positive offset. + </summary> + <typeparam name="TSource">The type of the elements in the source sequence.</typeparam> + <typeparam name="TResult">The type of the elements in the result sequence.</typeparam> + <param name="source">The sequence over which to evaluate Lead.</param> + <param name="offset">The offset (expressed as a positive number) by which to lead each + element of the sequence.</param> + <param name="defaultLeadValue">A default value supplied for the leading element when + none is available.</param> + <param name="resultSelector">A projection function which accepts the current and + subsequent (lead) element (in that order) and produces a result.</param> + <returns> + A sequence produced by projecting each element of the sequence with its lead + pairing.</returns> + <remarks> + This operator evaluates in a deferred and streaming manner. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.LeftJoinExtension"> + <summary><c>LeftJoin</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.LeftJoinExtension.LeftJoin``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``0,``0,``2})"> + <summary> + Performs a left outer join on two homogeneous sequences. + Additional arguments specify key selection functions and result + projection functions. + </summary> + <typeparam name="TSource"> + The type of elements in the source sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector function.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence of the join operation.</param> + <param name="second"> + The second sequence of the join operation.</param> + <param name="keySelector"> + Function that projects the key given an element of one of the + sequences to join.</param> + <param name="firstSelector"> + Function that projects the result given just an element from + <paramref name="first"/> where there is no corresponding element + in <paramref name="second"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <returns>A sequence containing results projected from a left + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.Extensions.LeftJoinExtension.LeftJoin``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``0,``0,``2},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Performs a left outer join on two homogeneous sequences. + Additional arguments specify key selection functions, result + projection functions and a key comparer. + </summary> + <typeparam name="TSource"> + The type of elements in the source sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector function.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence of the join operation.</param> + <param name="second"> + The second sequence of the join operation.</param> + <param name="keySelector"> + Function that projects the key given an element of one of the + sequences to join.</param> + <param name="firstSelector"> + Function that projects the result given just an element from + <paramref name="first"/> where there is no corresponding element + in <paramref name="second"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <param name="comparer"> + The <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> instance used to compare + keys for equality.</param> + <returns>A sequence containing results projected from a left + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.Extensions.LeftJoinExtension.LeftJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``3},System.Func{``0,``1,``3})"> + <summary> + Performs a left outer join on two heterogeneous sequences. + Additional arguments specify key selection functions and result + projection functions. + </summary> + <typeparam name="TFirst"> + The type of elements in the first sequence.</typeparam> + <typeparam name="TSecond"> + The type of elements in the second sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector functions.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence of the join operation.</param> + <param name="second"> + The second sequence of the join operation.</param> + <param name="firstKeySelector"> + Function that projects the key given an element from <paramref name="first"/>.</param> + <param name="secondKeySelector"> + Function that projects the key given an element from <paramref name="second"/>.</param> + <param name="firstSelector"> + Function that projects the result given just an element from + <paramref name="first"/> where there is no corresponding element + in <paramref name="second"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <returns>A sequence containing results projected from a left + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.Extensions.LeftJoinExtension.LeftJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``3},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})"> + <summary> + Performs a left outer join on two heterogeneous sequences. + Additional arguments specify key selection functions, result + projection functions and a key comparer. + </summary> + <typeparam name="TFirst"> + The type of elements in the first sequence.</typeparam> + <typeparam name="TSecond"> + The type of elements in the second sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector functions.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence of the join operation.</param> + <param name="second"> + The second sequence of the join operation.</param> + <param name="firstKeySelector"> + Function that projects the key given an element from <paramref name="first"/>.</param> + <param name="secondKeySelector"> + Function that projects the key given an element from <paramref name="second"/>.</param> + <param name="firstSelector"> + Function that projects the result given just an element from + <paramref name="first"/> where there is no corresponding element + in <paramref name="second"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <param name="comparer"> + The <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> instance used to compare + keys for equality.</param> + <returns>A sequence containing results projected from a left + outer join of the two input sequences.</returns> + </member> + <member name="T:MoreLinq.Extensions.MaxByExtension"> + <summary><c>MaxBy</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.MaxByExtension.MaxBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Returns the maximal elements of the given sequence, based on + the given projection. + </summary> + <remarks> + This overload uses the default comparer for the projected type. + This operator uses deferred execution. The results are evaluated + and cached on first use to returned sequence. + </remarks> + <typeparam name="TSource">Type of the source sequence</typeparam> + <typeparam name="TKey">Type of the projected element</typeparam> + <param name="source">Source sequence</param> + <param name="selector">Selector to use to pick the results to compare</param> + <returns>The sequence of maximal elements, according to the projection.</returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> or <paramref name="selector"/> is null</exception> + </member> + <member name="M:MoreLinq.Extensions.MaxByExtension.MaxBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1})"> + <summary> + Returns the maximal elements of the given sequence, based on + the given projection and the specified comparer for projected values. + </summary> + <remarks> + This operator uses deferred execution. The results are evaluated + and cached on first use to returned sequence. + </remarks> + <typeparam name="TSource">Type of the source sequence</typeparam> + <typeparam name="TKey">Type of the projected element</typeparam> + <param name="source">Source sequence</param> + <param name="selector">Selector to use to pick the results to compare</param> + <param name="comparer">Comparer to use to compare projected values</param> + <returns>The sequence of maximal elements, according to the projection.</returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/>, <paramref name="selector"/> + or <paramref name="comparer"/> is null</exception> + </member> + <member name="T:MoreLinq.Extensions.MinByExtension"> + <summary><c>MinBy</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.MinByExtension.MinBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Returns the minimal elements of the given sequence, based on + the given projection. + </summary> + <remarks> + This overload uses the default comparer for the projected type. + This operator uses deferred execution. The results are evaluated + and cached on first use to returned sequence. + </remarks> + <typeparam name="TSource">Type of the source sequence</typeparam> + <typeparam name="TKey">Type of the projected element</typeparam> + <param name="source">Source sequence</param> + <param name="selector">Selector to use to pick the results to compare</param> + <returns>The sequence of minimal elements, according to the projection.</returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> or <paramref name="selector"/> is null</exception> + </member> + <member name="M:MoreLinq.Extensions.MinByExtension.MinBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1})"> + <summary> + Returns the minimal elements of the given sequence, based on + the given projection and the specified comparer for projected values. + </summary> + <remarks> + This operator uses deferred execution. The results are evaluated + and cached on first use to returned sequence. + </remarks> + <typeparam name="TSource">Type of the source sequence</typeparam> + <typeparam name="TKey">Type of the projected element</typeparam> + <param name="source">Source sequence</param> + <param name="selector">Selector to use to pick the results to compare</param> + <param name="comparer">Comparer to use to compare projected values</param> + <returns>The sequence of minimal elements, according to the projection.</returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/>, <paramref name="selector"/> + or <paramref name="comparer"/> is null</exception> + </member> + <member name="T:MoreLinq.Extensions.MoveExtension"> + <summary><c>Move</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.MoveExtension.Move``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Int32,System.Int32)"> + <summary> + Returns a sequence with a range of elements in the source sequence + moved to a new offset. + </summary> + <typeparam name="T">Type of the source sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="fromIndex"> + The zero-based index identifying the first element in the range of + elements to move.</param> + <param name="count">The count of items to move.</param> + <param name="toIndex"> + The index where the specified range will be moved.</param> + <returns> + A sequence with the specified range moved to the new position. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + var result = Enumerable.Range(0, 6).Move(3, 2, 0); + ]]></code> + The <c>result</c> variable will contain <c>{ 3, 4, 0, 1, 2, 5 }</c>. + </example> + </member> + <member name="T:MoreLinq.Extensions.OrderByExtension"> + <summary><c>OrderBy</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.OrderByExtension.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},MoreLinq.OrderByDirection)"> + <summary> + Sorts the elements of a sequence in a particular direction (ascending, descending) according to a key + </summary> + <typeparam name="T">The type of the elements in the source sequence</typeparam> + <typeparam name="TKey">The type of the key used to order elements</typeparam> + <param name="source">The sequence to order</param> + <param name="keySelector">A key selector function</param> + <param name="direction">A direction in which to order the elements (ascending, descending)</param> + <returns>An ordered copy of the source sequence</returns> + </member> + <member name="M:MoreLinq.Extensions.OrderByExtension.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1},MoreLinq.OrderByDirection)"> + <summary> + Sorts the elements of a sequence in a particular direction (ascending, descending) according to a key + </summary> + <typeparam name="T">The type of the elements in the source sequence</typeparam> + <typeparam name="TKey">The type of the key used to order elements</typeparam> + <param name="source">The sequence to order</param> + <param name="keySelector">A key selector function</param> + <param name="direction">A direction in which to order the elements (ascending, descending)</param> + <param name="comparer">A comparer used to define the semantics of element comparison</param> + <returns>An ordered copy of the source sequence</returns> + </member> + <member name="T:MoreLinq.Extensions.OrderedMergeExtension"> + <summary><c>OrderedMerge</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.OrderedMergeExtension.OrderedMerge``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0})"> + <summary> + Merges two ordered sequences into one. Where the elements equal + in both sequences, the element from the first sequence is + returned in the resulting sequence. + </summary> + <typeparam name="T">Type of elements in input and output sequences.</typeparam> + <param name="first">The first input sequence.</param> + <param name="second">The second input sequence.</param> + <returns> + A sequence with elements from the two input sequences merged, as + in a full outer join.</returns> + <remarks> + This method uses deferred execution. The behavior is undefined + if the sequences are unordered as inputs. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.OrderedMergeExtension.OrderedMerge``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IComparer{``0})"> + <summary> + Merges two ordered sequences into one with an additional + parameter specifying how to compare the elements of the + sequences. Where the elements equal in both sequences, the + element from the first sequence is returned in the resulting + sequence. + </summary> + <typeparam name="T">Type of elements in input and output sequences.</typeparam> + <param name="first">The first input sequence.</param> + <param name="second">The second input sequence.</param> + <param name="comparer">An <see cref="T:System.Collections.Generic.IComparer`1"/> to compare elements.</param> + <returns> + A sequence with elements from the two input sequences merged, as + in a full outer join.</returns> + <remarks> + This method uses deferred execution. The behavior is undefined + if the sequences are unordered as inputs. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.OrderedMergeExtension.OrderedMerge``2(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Merges two ordered sequences into one with an additional + parameter specifying the element key by which the sequences are + ordered. Where the keys equal in both sequences, the + element from the first sequence is returned in the resulting + sequence. + </summary> + <typeparam name="T">Type of elements in input and output sequences.</typeparam> + <typeparam name="TKey">Type of keys used for merging.</typeparam> + <param name="first">The first input sequence.</param> + <param name="second">The second input sequence.</param> + <param name="keySelector">Function to extract a key given an element.</param> + <returns> + A sequence with elements from the two input sequences merged + according to a key, as in a full outer join.</returns> + <remarks> + This method uses deferred execution. The behavior is undefined + if the sequences are unordered (by key) as inputs. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.OrderedMergeExtension.OrderedMerge``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``0,``2},System.Func{``0,``0,``2})"> + <summary> + Merges two ordered sequences into one. Additional parameters + specify the element key by which the sequences are ordered, + the result when element is found in first sequence but not in + the second, the result when element is found in second sequence + but not in the first and the result when elements are found in + both sequences. + </summary> + <typeparam name="T">Type of elements in source sequences.</typeparam> + <typeparam name="TKey">Type of keys used for merging.</typeparam> + <typeparam name="TResult">Type of elements in the returned sequence.</typeparam> + <param name="first">The first input sequence.</param> + <param name="second">The second input sequence.</param> + <param name="keySelector">Function to extract a key given an element.</param> + <param name="firstSelector">Function to project the result element + when only the first sequence yields a source element.</param> + <param name="secondSelector">Function to project the result element + when only the second sequence yields a source element.</param> + <param name="bothSelector">Function to project the result element + when only both sequences yield a source element whose keys are + equal.</param> + <returns> + A sequence with projections from the two input sequences merged + according to a key, as in a full outer join.</returns> + <remarks> + This method uses deferred execution. The behavior is undefined + if the sequences are unordered (by key) as inputs. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.OrderedMergeExtension.OrderedMerge``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``0,``2},System.Func{``0,``0,``2},System.Collections.Generic.IComparer{``1})"> + <summary> + Merges two ordered sequences into one. Additional parameters + specify the element key by which the sequences are ordered, + the result when element is found in first sequence but not in + the second, the result when element is found in second sequence + but not in the first, the result when elements are found in + both sequences and a method for comparing keys. + </summary> + <typeparam name="T">Type of elements in source sequences.</typeparam> + <typeparam name="TKey">Type of keys used for merging.</typeparam> + <typeparam name="TResult">Type of elements in the returned sequence.</typeparam> + <param name="first">The first input sequence.</param> + <param name="second">The second input sequence.</param> + <param name="keySelector">Function to extract a key given an element.</param> + <param name="firstSelector">Function to project the result element + when only the first sequence yields a source element.</param> + <param name="secondSelector">Function to project the result element + when only the second sequence yields a source element.</param> + <param name="bothSelector">Function to project the result element + when only both sequences yield a source element whose keys are + equal.</param> + <param name="comparer">An <see cref="T:System.Collections.Generic.IComparer`1"/> to compare keys.</param> + <returns> + A sequence with projections from the two input sequences merged + according to a key, as in a full outer join.</returns> + <remarks> + This method uses deferred execution. The behavior is undefined + if the sequences are unordered (by key) as inputs. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.OrderedMergeExtension.OrderedMerge``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``3},System.Func{``1,``3},System.Func{``0,``1,``3})"> + <summary> + Merges two heterogeneous sequences ordered by a common key type + into a homogeneous one. Additional parameters specify the + element key by which the sequences are ordered, the result when + element is found in first sequence but not in the second and + the result when element is found in second sequence but not in + the first, the result when elements are found in both sequences. + </summary> + <typeparam name="TFirst">Type of elements in the first sequence.</typeparam> + <typeparam name="TSecond">Type of elements in the second sequence.</typeparam> + <typeparam name="TKey">Type of keys used for merging.</typeparam> + <typeparam name="TResult">Type of elements in the returned sequence.</typeparam> + <param name="first">The first input sequence.</param> + <param name="second">The second input sequence.</param> + <param name="firstKeySelector">Function to extract a key given an + element from the first sequence.</param> + <param name="secondKeySelector">Function to extract a key given an + element from the second sequence.</param> + <param name="firstSelector">Function to project the result element + when only the first sequence yields a source element.</param> + <param name="secondSelector">Function to project the result element + when only the second sequence yields a source element.</param> + <param name="bothSelector">Function to project the result element + when only both sequences yield a source element whose keys are + equal.</param> + <returns> + A sequence with projections from the two input sequences merged + according to a key, as in a full outer join.</returns> + <remarks> + This method uses deferred execution. The behavior is undefined + if the sequences are unordered (by key) as inputs. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.OrderedMergeExtension.OrderedMerge``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``3},System.Func{``1,``3},System.Func{``0,``1,``3},System.Collections.Generic.IComparer{``2})"> + <summary> + Merges two heterogeneous sequences ordered by a common key type + into a homogeneous one. Additional parameters specify the + element key by which the sequences are ordered, the result when + element is found in first sequence but not in the second, + the result when element is found in second sequence but not in + the first, the result when elements are found in both sequences + and a method for comparing keys. + </summary> + <typeparam name="TFirst">Type of elements in the first sequence.</typeparam> + <typeparam name="TSecond">Type of elements in the second sequence.</typeparam> + <typeparam name="TKey">Type of keys used for merging.</typeparam> + <typeparam name="TResult">Type of elements in the returned sequence.</typeparam> + <param name="first">The first input sequence.</param> + <param name="second">The second input sequence.</param> + <param name="firstKeySelector">Function to extract a key given an + element from the first sequence.</param> + <param name="secondKeySelector">Function to extract a key given an + element from the second sequence.</param> + <param name="firstSelector">Function to project the result element + when only the first sequence yields a source element.</param> + <param name="secondSelector">Function to project the result element + when only the second sequence yields a source element.</param> + <param name="bothSelector">Function to project the result element + when only both sequences yield a source element whose keys are + equal.</param> + <param name="comparer">An <see cref="T:System.Collections.Generic.IComparer`1"/> to compare keys.</param> + <returns> + A sequence with projections from the two input sequences merged + according to a key, as in a full outer join.</returns> + <remarks> + This method uses deferred execution. The behavior is undefined + if the sequences are unordered (by key) as inputs. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.PadExtension"> + <summary><c>Pad</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.PadExtension.Pad``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Pads a sequence with default values if it is narrower (shorter + in length) than a given width. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The sequence to pad.</param> + <param name="width">The width/length below which to pad.</param> + <returns> + Returns a sequence that is at least as wide/long as the width/length + specified by the <paramref name="width"/> parameter. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + int[] numbers = { 123, 456, 789 }; + var result = numbers.Pad(5); + ]]></code> + The <c>result</c> variable, when iterated over, will yield + 123, 456, 789 and two zeroes, in turn. + </example> + </member> + <member name="M:MoreLinq.Extensions.PadExtension.Pad``1(System.Collections.Generic.IEnumerable{``0},System.Int32,``0)"> + <summary> + Pads a sequence with a given filler value if it is narrower (shorter + in length) than a given width. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The sequence to pad.</param> + <param name="width">The width/length below which to pad.</param> + <param name="padding">The value to use for padding.</param> + <returns> + Returns a sequence that is at least as wide/long as the width/length + specified by the <paramref name="width"/> parameter. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + int[] numbers = { 123, 456, 789 }; + var result = numbers.Pad(5, -1); + ]]></code> + The <c>result</c> variable, when iterated over, will yield + 123, 456, and 789 followed by two occurrences of -1, in turn. + </example> + </member> + <member name="M:MoreLinq.Extensions.PadExtension.Pad``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{System.Int32,``0})"> + <summary> + Pads a sequence with a dynamic filler value if it is narrower (shorter + in length) than a given width. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The sequence to pad.</param> + <param name="width">The width/length below which to pad.</param> + <param name="paddingSelector">Function to calculate padding.</param> + <returns> + Returns a sequence that is at least as wide/long as the width/length + specified by the <paramref name="width"/> parameter. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + int[] numbers = { 0, 1, 2 }; + var result = numbers.Pad(5, i => -i); + ]]></code> + The <c>result</c> variable, when iterated over, will yield + 0, 1, 2, -3 and -4, in turn. + </example> + </member> + <member name="T:MoreLinq.Extensions.PadStartExtension"> + <summary><c>PadStart</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.PadStartExtension.PadStart``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Pads a sequence with default values in the beginning if it is narrower (shorter + in length) than a given width. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The sequence to pad.</param> + <param name="width">The width/length below which to pad.</param> + <returns> + Returns a sequence that is at least as wide/long as the width/length + specified by the <paramref name="width"/> parameter. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + int[] numbers = { 123, 456, 789 }; + var result = numbers.PadStart(5); + ]]></code> + The <c>result</c> variable will contain <c>{ 0, 0, 123, 456, 789 }</c>. + </example> + </member> + <member name="M:MoreLinq.Extensions.PadStartExtension.PadStart``1(System.Collections.Generic.IEnumerable{``0},System.Int32,``0)"> + <summary> + Pads a sequence with a given filler value in the beginning if it is narrower (shorter + in length) than a given width. + An additional parameter specifies the value to use for padding. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The sequence to pad.</param> + <param name="width">The width/length below which to pad.</param> + <param name="padding">The value to use for padding.</param> + <returns> + Returns a sequence that is at least as wide/long as the width/length + specified by the <paramref name="width"/> parameter. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + int[] numbers = { 123, 456, 789 }; + var result = numbers.PadStart(5, -1); + ]]></code> + The <c>result</c> variable will contain <c>{ -1, -1, 123, 456, 789 }</c>. + </example> + </member> + <member name="M:MoreLinq.Extensions.PadStartExtension.PadStart``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{System.Int32,``0})"> + <summary> + Pads a sequence with a dynamic filler value in the beginning if it is narrower (shorter + in length) than a given width. + An additional parameter specifies the function to calculate padding. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The sequence to pad.</param> + <param name="width">The width/length below which to pad.</param> + <param name="paddingSelector"> + Function to calculate padding given the index of the missing element. + </param> + <returns> + Returns a sequence that is at least as wide/long as the width/length + specified by the <paramref name="width"/> parameter. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + int[] numbers = { 123, 456, 789 }; + var result = numbers.PadStart(6, i => -i); + ]]></code> + The <c>result</c> variable will contain <c>{ 0, -1, -2, 123, 456, 789 }</c>. + </example> + </member> + <member name="T:MoreLinq.Extensions.PairwiseExtension"> + <summary><c>Pairwise</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.PairwiseExtension.Pairwise``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``1})"> + <summary> + Returns a sequence resulting from applying a function to each + element in the source sequence and its + predecessor, with the exception of the first element which is + only returned as the predecessor of the second element. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <typeparam name="TResult">The type of the element of the returned sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="resultSelector">A transform function to apply to + each pair of sequence.</param> + <returns> + Returns the resulting sequence. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + var source = new[] { "a", "b", "c", "d" }; + var result = source.Pairwise((a, b) => a + b); + ]]></code> + The <c>result</c> variable, when iterated over, will yield + "ab", "bc" and "cd", in turn. + </example> + </member> + <member name="T:MoreLinq.Extensions.PartialSortExtension"> + <summary><c>PartialSort</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.PartialSortExtension.PartialSort``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Combines <see cref="M:System.Linq.Enumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"/>, + where each element is its key, and <see cref="M:System.Linq.Enumerable.Take``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"/> + in a single operation. + </summary> + <typeparam name="T">Type of elements in the sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="count">Number of (maximum) elements to return.</param> + <returns>A sequence containing at most top <paramref name="count"/> + elements from source, in their ascending order.</returns> + <remarks> + This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.PartialSortExtension.PartialSort``1(System.Collections.Generic.IEnumerable{``0},System.Int32,MoreLinq.OrderByDirection)"> + <summary> + Combines <see cref="M:MoreLinq.MoreEnumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1},MoreLinq.OrderByDirection)"/>, + where each element is its key, and <see cref="M:System.Linq.Enumerable.Take``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"/> + in a single operation. + An additional parameter specifies the direction of the sort + </summary> + <typeparam name="T">Type of elements in the sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="count">Number of (maximum) elements to return.</param> + <param name="direction">The direction in which to sort the elements</param> + <returns>A sequence containing at most top <paramref name="count"/> + elements from source, in the specified order.</returns> + <remarks> + This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.PartialSortExtension.PartialSort``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Collections.Generic.IComparer{``0})"> + <summary> + Combines <see cref="M:System.Linq.Enumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1})"/>, + where each element is its key, and <see cref="M:System.Linq.Enumerable.Take``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"/> + in a single operation. An additional parameter specifies how the + elements compare to each other. + </summary> + <typeparam name="T">Type of elements in the sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="count">Number of (maximum) elements to return.</param> + <param name="comparer">A <see cref="T:System.Collections.Generic.IComparer`1"/> to compare elements.</param> + <returns>A sequence containing at most top <paramref name="count"/> + elements from source, in their ascending order.</returns> + <remarks> + This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.PartialSortExtension.PartialSort``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Collections.Generic.IComparer{``0},MoreLinq.OrderByDirection)"> + <summary> + Combines <see cref="M:MoreLinq.MoreEnumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1},MoreLinq.OrderByDirection)"/>, + where each element is its key, and <see cref="M:System.Linq.Enumerable.Take``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"/> + in a single operation. + Additional parameters specify how the elements compare to each other and + the direction of the sort. + </summary> + <typeparam name="T">Type of elements in the sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="count">Number of (maximum) elements to return.</param> + <param name="comparer">A <see cref="T:System.Collections.Generic.IComparer`1"/> to compare elements.</param> + <param name="direction">The direction in which to sort the elements</param> + <returns>A sequence containing at most top <paramref name="count"/> + elements from source, in the specified order.</returns> + <remarks> + This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.PartialSortByExtension"> + <summary><c>PartialSortBy</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.PartialSortByExtension.PartialSortBy``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,``1})"> + <summary> + Combines <see cref="M:System.Linq.Enumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1})"/>, + and <see cref="M:System.Linq.Enumerable.Take``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"/> in a single operation. + </summary> + <typeparam name="TSource">Type of elements in the sequence.</typeparam> + <typeparam name="TKey">Type of keys.</typeparam> + <param name="source">The source sequence.</param> + <param name="keySelector">A function to extract a key from an element.</param> + <param name="count">Number of (maximum) elements to return.</param> + <returns>A sequence containing at most top <paramref name="count"/> + elements from source, in ascending order of their keys.</returns> + <remarks> + This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.PartialSortByExtension.PartialSortBy``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,``1},MoreLinq.OrderByDirection)"> + <summary> + Combines <see cref="M:MoreLinq.MoreEnumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},MoreLinq.OrderByDirection)"/>, + and <see cref="M:System.Linq.Enumerable.Take``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"/> in a single operation. + An additional parameter specifies the direction of the sort + </summary> + <typeparam name="TSource">Type of elements in the sequence.</typeparam> + <typeparam name="TKey">Type of keys.</typeparam> + <param name="source">The source sequence.</param> + <param name="keySelector">A function to extract a key from an element.</param> + <param name="count">Number of (maximum) elements to return.</param> + <param name="direction">The direction in which to sort the elements</param> + <returns>A sequence containing at most top <paramref name="count"/> + elements from source, in the specified order of their keys.</returns> + <remarks> + This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.PartialSortByExtension.PartialSortBy``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,``1},System.Collections.Generic.IComparer{``1})"> + <summary> + Combines <see cref="M:System.Linq.Enumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1})"/>, + and <see cref="M:System.Linq.Enumerable.Take``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"/> in a single operation. + An additional parameter specifies how the keys compare to each other. + </summary> + <typeparam name="TSource">Type of elements in the sequence.</typeparam> + <typeparam name="TKey">Type of keys.</typeparam> + <param name="source">The source sequence.</param> + <param name="keySelector">A function to extract a key from an element.</param> + <param name="count">Number of (maximum) elements to return.</param> + <param name="comparer">A <see cref="T:System.Collections.Generic.IComparer`1"/> to compare elements.</param> + <returns>A sequence containing at most top <paramref name="count"/> + elements from source, in ascending order of their keys.</returns> + <remarks> + This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.PartialSortByExtension.PartialSortBy``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,``1},System.Collections.Generic.IComparer{``1},MoreLinq.OrderByDirection)"> + <summary> + Combines <see cref="M:MoreLinq.MoreEnumerable.OrderBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},MoreLinq.OrderByDirection)"/>, + and <see cref="M:System.Linq.Enumerable.Take``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"/> in a single operation. + Additional parameters specify how the elements compare to each other and + the direction of the sort. + </summary> + <typeparam name="TSource">Type of elements in the sequence.</typeparam> + <typeparam name="TKey">Type of keys.</typeparam> + <param name="source">The source sequence.</param> + <param name="keySelector">A function to extract a key from an element.</param> + <param name="count">Number of (maximum) elements to return.</param> + <param name="comparer">A <see cref="T:System.Collections.Generic.IComparer`1"/> to compare elements.</param> + <param name="direction">The direction in which to sort the elements</param> + <returns>A sequence containing at most top <paramref name="count"/> + elements from source, in the specified order of their keys.</returns> + <remarks> + This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.PartitionExtension"> + <summary><c>Partition</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.PartitionExtension.Partition``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean})"> + <summary> + Partitions or splits a sequence in two using a predicate. + </summary> + <param name="source">The source sequence.</param> + <param name="predicate">The predicate function.</param> + <typeparam name="T">Type of source elements.</typeparam> + <returns> + A tuple of elements satisfying the predicate and those that do not, + respectively. + </returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is + <see langword="null"/>.</exception> + <example> + <code><![CDATA[ + var (evens, odds) = + Enumerable.Range(0, 10).Partition(x => x % 2 == 0); + ]]></code> + The <c>evens</c> variable, when iterated over, will yield 0, 2, 4, 6 + and then 8. The <c>odds</c> variable, when iterated over, will yield + 1, 3, 5, 7 and then 9. + </example> + </member> + <member name="M:MoreLinq.Extensions.PartitionExtension.Partition``2(System.Collections.Generic.IEnumerable{System.Linq.IGrouping{System.Boolean,``0}},System.Func{System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Partitions a grouping by Boolean keys into a projection of true + elements and false elements, respectively. + </summary> + <typeparam name="T">Type of elements in source groupings.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The source sequence.</param> + <param name="resultSelector"> + Function that projects the result from sequences of true elements + and false elements, respectively, passed as arguments. + </param> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="resultSelector"/> is + <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.Extensions.PartitionExtension.Partition``2(System.Collections.Generic.IEnumerable{System.Linq.IGrouping{System.Nullable{System.Boolean},``0}},System.Func{System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Partitions a grouping by nullable Boolean keys into a projection of + true elements, false elements and null elements, respectively. + </summary> + <typeparam name="T">Type of elements in source groupings.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The source sequence.</param> + <param name="resultSelector"> + Function that projects the result from sequences of true elements, + false elements and null elements, respectively, passed as + arguments. + </param> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="resultSelector"/> is + <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.Extensions.PartitionExtension.Partition``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean},System.Func{System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Partitions or splits a sequence in two using a predicate and then + projects a result from the two. + </summary> + <param name="source">The source sequence.</param> + <param name="predicate">The predicate function.</param> + <param name="resultSelector"> + Function that projects the result from sequences of elements that + satisfy the predicate and those that do not, respectively, passed as + arguments. + </param> + <typeparam name="T">Type of source elements.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/>, <paramref name="predicate"/>, or + <paramref name="resultSelector"/> is <see langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var (evens, odds) = + Enumerable.Range(0, 10) + .Partition(x => x % 2 == 0, ValueTuple.Create); + ]]></code> + The <c>evens</c> variable, when iterated over, will yield 0, 2, 4, 6 + and then 8. The <c>odds</c> variable, when iterated over, will yield + 1, 3, 5, 7 and then 9. + </example> + </member> + <member name="M:MoreLinq.Extensions.PartitionExtension.Partition``3(System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``0,System.Func{System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``2})"> + <summary> + Partitions a grouping and projects a result from group elements + matching a key and those groups that do not. + </summary> + <typeparam name="TKey">Type of keys in source groupings.</typeparam> + <typeparam name="TElement">Type of elements in source + groupings.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The source sequence.</param> + <param name="key">The key to partition.</param> + <param name="resultSelector"> + Function that projects the result from sequences of elements + matching <paramref name="key"/> and those groups that do not (in the + order in which they appear in <paramref name="source"/>), passed as + arguments. + </param> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="resultSelector"/> is + <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.Extensions.PartitionExtension.Partition``3(System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``0,``0,System.Func{System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``2})"> + <summary> + Partitions a grouping and projects a result from elements of + groups matching a set of two keys and those groups that do not. + </summary> + <typeparam name="TKey">Type of keys in source groupings.</typeparam> + <typeparam name="TElement">Type of elements in source groupings.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The source sequence.</param> + <param name="key1">The first key to partition on.</param> + <param name="key2">The second key to partition on.</param> + <param name="resultSelector"> + Function that projects the result from elements of the group + matching <paramref name="key1"/>, elements of the group matching + <paramref name="key2"/> and those groups that do not (in the order + in which they appear in <paramref name="source"/>), passed as + arguments. + </param> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="resultSelector"/> is + <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.Extensions.PartitionExtension.Partition``3(System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``0,System.Collections.Generic.IEqualityComparer{``0},System.Func{System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``2})"> + <summary> + Partitions a grouping and projects a result from group elements + matching a key and those groups that do not. An additional parameter + specifies how to compare keys for equality. + </summary> + <typeparam name="TKey">Type of keys in source groupings.</typeparam> + <typeparam name="TElement">Type of elements in source groupings.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The source sequence.</param> + <param name="key">The key to partition on.</param> + <param name="comparer">The comparer for keys.</param> + <param name="resultSelector"> + Function that projects the result from elements of the group + matching <paramref name="key"/> and those groups that do not (in + the order in which they appear in <paramref name="source"/>), + passed as arguments. + </param> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="resultSelector"/> is + <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.Extensions.PartitionExtension.Partition``3(System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``0,``0,``0,System.Func{System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``2})"> + <summary> + Partitions a grouping and projects a result from elements groups + matching a set of three keys and those groups that do not. + </summary> + <typeparam name="TKey">Type of keys in source groupings.</typeparam> + <typeparam name="TElement">Type of elements in source groupings.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The source sequence.</param> + <param name="key1">The first key to partition on.</param> + <param name="key2">The second key to partition on.</param> + <param name="key3">The third key to partition on.</param> + <param name="resultSelector"> + Function that projects the result from elements of groups + matching <paramref name="key1"/>, <paramref name="key2"/> and + <paramref name="key3"/> and those groups that do not (in the order + in which they appear in <paramref name="source"/>), passed as + arguments. + </param> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="resultSelector"/> is + <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.Extensions.PartitionExtension.Partition``3(System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``0,``0,System.Collections.Generic.IEqualityComparer{``0},System.Func{System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``2})"> + <summary> + Partitions a grouping and projects a result from elements of + groups matching a set of two keys and those groups that do not. + An additional parameter specifies how to compare keys for equality. + </summary> + <typeparam name="TKey">Type of keys in source groupings.</typeparam> + <typeparam name="TElement">Type of elements in source groupings.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The source sequence.</param> + <param name="key1">The first key to partition on.</param> + <param name="key2">The second key to partition on.</param> + <param name="comparer">The comparer for keys.</param> + <param name="resultSelector"> + Function that projects the result from elements of the group + matching <paramref name="key1"/>, elements of the group matching + <paramref name="key2"/> and those groups that do not (in the order + in which they appear in <paramref name="source"/>), passed as + arguments. + </param> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="resultSelector"/> is + <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.Extensions.PartitionExtension.Partition``3(System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``0,``0,``0,System.Collections.Generic.IEqualityComparer{``0},System.Func{System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{System.Linq.IGrouping{``0,``1}},``2})"> + <summary> + Partitions a grouping and projects a result from elements groups + matching a set of three keys and those groups that do not. An + additional parameter specifies how to compare keys for equality. + </summary> + <typeparam name="TKey">Type of keys in source groupings.</typeparam> + <typeparam name="TElement">Type of elements in source groupings.</typeparam> + <typeparam name="TResult">Type of the result.</typeparam> + <param name="source">The source sequence.</param> + <param name="key1">The first key to partition on.</param> + <param name="key2">The second key to partition on.</param> + <param name="key3">The third key to partition on.</param> + <param name="comparer">The comparer for keys.</param> + <param name="resultSelector"> + Function that projects the result from elements of groups + matching <paramref name="key1"/>, <paramref name="key2"/> and + <paramref name="key3"/> and those groups that do not (in + the order in which they appear in <paramref name="source"/>), + passed as arguments. + </param> + <returns> + The return value from <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="resultSelector"/> is + <see langword="null"/>. + </exception> + </member> + <member name="T:MoreLinq.Extensions.PermutationsExtension"> + <summary><c>Permutations</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.PermutationsExtension.Permutations``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Generates a sequence of lists that represent the permutations of the original sequence. + </summary> + <typeparam name="T">The type of the elements in the sequence.</typeparam> + <param name="sequence">The original sequence to permute.</param> + <returns> + A sequence of lists representing permutations of the original sequence.</returns> + <exception cref="T:System.OverflowException"> + Too many permutations (limited by <see cref="F:System.UInt64.MaxValue"/>); thrown during iteration + of the resulting sequence.</exception> + <remarks> + <para> + A permutation is a unique re-ordering of the elements of the sequence.</para> + <para> + This operator returns permutations in a deferred, streaming fashion; however, each + permutation is materialized into a new list. There are N! permutations of a sequence, + where N ⇒ <c>sequence.Count()</c>.</para> + <para> + Be aware that the original sequence is considered one of the permutations and will be + returned as one of the results.</para> + </remarks> + </member> + <member name="T:MoreLinq.Extensions.PipeExtension"> + <summary><c>Pipe</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.PipeExtension.Pipe``1(System.Collections.Generic.IEnumerable{``0},System.Action{``0})"> + <summary> + Executes the given action on each element in the source sequence + and yields it. + </summary> + <typeparam name="T">The type of the elements in the sequence</typeparam> + <param name="source">The sequence of elements</param> + <param name="action">The action to execute on each element</param> + <returns>A sequence with source elements in their original order.</returns> + <remarks> + The returned sequence is essentially a duplicate of + the original, but with the extra action being executed while the + sequence is evaluated. The action is always taken before the element + is yielded, so any changes made by the action will be visible in the + returned sequence. This operator uses deferred execution and streams it results. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.PrependExtension"> + <summary><c>Prepend</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.PrependExtension.Prepend``1(System.Collections.Generic.IEnumerable{``0},``0)"> + <summary> + Prepends a single value to a sequence. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The sequence to prepend to.</param> + <param name="value">The value to prepend.</param> + <returns> + Returns a sequence where a value is prepended to it. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <code><![CDATA[ + int[] numbers = { 1, 2, 3 }; + var result = numbers.Prepend(0); + ]]></code> + The <c>result</c> variable, when iterated over, will yield + 0, 1, 2 and 3, in turn. + </member> + <member name="T:MoreLinq.Extensions.PreScanExtension"> + <summary><c>PreScan</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.PreScanExtension.PreScan``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0},``0)"> + <summary> + Performs a pre-scan (exclusive prefix sum) on a sequence of elements. + </summary> + <remarks> + An exclusive prefix sum returns an equal-length sequence where the + N-th element is the sum of the first N-1 input elements (the first + element is a special case, it is set to the identity). More + generally, the pre-scan allows any commutative binary operation, + not just a sum. + The inclusive version of PreScan is <see cref="M:MoreLinq.MoreEnumerable.Scan``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0})"/>. + This operator uses deferred execution and streams its result. + </remarks> + <example> + <code><![CDATA[ + int[] values = { 1, 2, 3, 4 }; + var prescan = values.PreScan((a, b) => a + b, 0); + var scan = values.Scan((a, b) => a + b); + var result = values.EquiZip(prescan, ValueTuple.Create); + ]]></code> + <c>prescan</c> will yield <c>{ 0, 1, 3, 6 }</c>, while <c>scan</c> + and <c>result</c> will both yield <c>{ 1, 3, 6, 10 }</c>. This + shows the relationship between the inclusive and exclusive prefix sum. + </example> + <typeparam name="TSource">Type of elements in source sequence</typeparam> + <param name="source">Source sequence</param> + <param name="transformation">Transformation operation</param> + <param name="identity">Identity element (see remarks)</param> + <returns>The scanned sequence</returns> + </member> + <member name="T:MoreLinq.Extensions.RandomSubsetExtension"> + <summary><c>RandomSubset</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.RandomSubsetExtension.RandomSubset``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Returns a sequence of a specified size of random elements from the + original sequence. + </summary> + <typeparam name="T">The type of source sequence elements.</typeparam> + <param name="source"> + The sequence from which to return random elements.</param> + <param name="subsetSize">The size of the random subset to return.</param> + <returns> + A random sequence of elements in random order from the original + sequence.</returns> + </member> + <member name="M:MoreLinq.Extensions.RandomSubsetExtension.RandomSubset``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Random)"> + <summary> + Returns a sequence of a specified size of random elements from the + original sequence. An additional parameter specifies a random + generator to be used for the random selection algorithm. + </summary> + <typeparam name="T">The type of source sequence elements.</typeparam> + <param name="source"> + The sequence from which to return random elements.</param> + <param name="subsetSize">The size of the random subset to return.</param> + <param name="rand"> + A random generator used as part of the selection algorithm.</param> + <returns> + A random sequence of elements in random order from the original + sequence.</returns> + </member> + <member name="T:MoreLinq.Extensions.RankExtension"> + <summary><c>Rank</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.RankExtension.Rank``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Ranks each item in the sequence in descending ordering using a default comparer. + </summary> + <typeparam name="TSource">Type of item in the sequence</typeparam> + <param name="source">The sequence whose items will be ranked</param> + <returns>A sequence of position integers representing the ranks of the corresponding items in the sequence</returns> + </member> + <member name="M:MoreLinq.Extensions.RankExtension.Rank``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IComparer{``0})"> + <summary> + Rank each item in the sequence using a caller-supplied comparer. + </summary> + <typeparam name="TSource">The type of the elements in the source sequence</typeparam> + <param name="source">The sequence of items to rank</param> + <param name="comparer">A object that defines comparison semantics for the elements in the sequence</param> + <returns>A sequence of position integers representing the ranks of the corresponding items in the sequence</returns> + </member> + <member name="T:MoreLinq.Extensions.RankByExtension"> + <summary><c>RankBy</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.RankByExtension.RankBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1})"> + <summary> + Ranks each item in the sequence in descending ordering by a specified key using a default comparer + </summary> + <typeparam name="TSource">The type of the elements in the source sequence</typeparam> + <typeparam name="TKey">The type of the key used to rank items in the sequence</typeparam> + <param name="source">The sequence of items to rank</param> + <param name="keySelector">A key selector function which returns the value by which to rank items in the sequence</param> + <returns>A sequence of position integers representing the ranks of the corresponding items in the sequence</returns> + </member> + <member name="M:MoreLinq.Extensions.RankByExtension.RankBy``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1})"> + <summary> + Ranks each item in a sequence using a specified key and a caller-supplied comparer + </summary> + <typeparam name="TSource">The type of the elements in the source sequence</typeparam> + <typeparam name="TKey">The type of the key used to rank items in the sequence</typeparam> + <param name="source">The sequence of items to rank</param> + <param name="keySelector">A key selector function which returns the value by which to rank items in the sequence</param> + <param name="comparer">An object that defines the comparison semantics for keys used to rank items</param> + <returns>A sequence of position integers representing the ranks of the corresponding items in the sequence</returns> + </member> + <member name="T:MoreLinq.Extensions.RepeatExtension"> + <summary><c>Repeat</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.RepeatExtension.Repeat``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Repeats the sequence forever. + </summary> + <typeparam name="T">Type of elements in sequence</typeparam> + <param name="sequence">The sequence to repeat</param> + <returns>A sequence produced from the infinite repetition of the original source sequence</returns> + </member> + <member name="M:MoreLinq.Extensions.RepeatExtension.Repeat``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Repeats the sequence the specified number of times. + </summary> + <typeparam name="T">Type of elements in sequence</typeparam> + <param name="sequence">The sequence to repeat</param> + <param name="count">Number of times to repeat the sequence</param> + <returns>A sequence produced from the repetition of the original source sequence</returns> + </member> + <member name="T:MoreLinq.Extensions.RightJoinExtension"> + <summary><c>RightJoin</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.RightJoinExtension.RightJoin``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``0,``0,``2})"> + <summary> + Performs a right outer join on two homogeneous sequences. + Additional arguments specify key selection functions and result + projection functions. + </summary> + <typeparam name="TSource"> + The type of elements in the source sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector function.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence of the join operation.</param> + <param name="second"> + The second sequence of the join operation.</param> + <param name="keySelector"> + Function that projects the key given an element of one of the + sequences to join.</param> + <param name="secondSelector"> + Function that projects the result given just an element from + <paramref name="second"/> where there is no corresponding element + in <paramref name="first"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <returns>A sequence containing results projected from a right + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.Extensions.RightJoinExtension.RightJoin``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``0,``0,``2},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Performs a right outer join on two homogeneous sequences. + Additional arguments specify key selection functions, result + projection functions and a key comparer. + </summary> + <typeparam name="TSource"> + The type of elements in the source sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector function.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence of the join operation.</param> + <param name="second"> + The second sequence of the join operation.</param> + <param name="keySelector"> + Function that projects the key given an element of one of the + sequences to join.</param> + <param name="secondSelector"> + Function that projects the result given just an element from + <paramref name="second"/> where there is no corresponding element + in <paramref name="first"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <param name="comparer"> + The <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> instance used to compare + keys for equality.</param> + <returns>A sequence containing results projected from a right + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.Extensions.RightJoinExtension.RightJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``1,``3},System.Func{``0,``1,``3})"> + <summary> + Performs a right outer join on two heterogeneous sequences. + Additional arguments specify key selection functions and result + projection functions. + </summary> + <typeparam name="TFirst"> + The type of elements in the first sequence.</typeparam> + <typeparam name="TSecond"> + The type of elements in the second sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector functions.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence of the join operation.</param> + <param name="second"> + The second sequence of the join operation.</param> + <param name="firstKeySelector"> + Function that projects the key given an element from <paramref name="first"/>.</param> + <param name="secondKeySelector"> + Function that projects the key given an element from <paramref name="second"/>.</param> + <param name="secondSelector"> + Function that projects the result given just an element from + <paramref name="second"/> where there is no corresponding element + in <paramref name="first"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <returns>A sequence containing results projected from a right + outer join of the two input sequences.</returns> + </member> + <member name="M:MoreLinq.Extensions.RightJoinExtension.RightJoin``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``1,``3},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})"> + <summary> + Performs a right outer join on two heterogeneous sequences. + Additional arguments specify key selection functions, result + projection functions and a key comparer. + </summary> + <typeparam name="TFirst"> + The type of elements in the first sequence.</typeparam> + <typeparam name="TSecond"> + The type of elements in the second sequence.</typeparam> + <typeparam name="TKey"> + The type of the key returned by the key selector functions.</typeparam> + <typeparam name="TResult"> + The type of the result elements.</typeparam> + <param name="first"> + The first sequence of the join operation.</param> + <param name="second"> + The second sequence of the join operation.</param> + <param name="firstKeySelector"> + Function that projects the key given an element from <paramref name="first"/>.</param> + <param name="secondKeySelector"> + Function that projects the key given an element from <paramref name="second"/>.</param> + <param name="secondSelector"> + Function that projects the result given just an element from + <paramref name="second"/> where there is no corresponding element + in <paramref name="first"/>.</param> + <param name="bothSelector"> + Function that projects the result given an element from + <paramref name="first"/> and an element from <paramref name="second"/> + that match on a common key.</param> + <param name="comparer"> + The <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> instance used to compare + keys for equality.</param> + <returns>A sequence containing results projected from a right + outer join of the two input sequences.</returns> + </member> + <member name="T:MoreLinq.Extensions.RunLengthEncodeExtension"> + <summary><c>RunLengthEncode</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.RunLengthEncodeExtension.RunLengthEncode``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Run-length encodes a sequence by converting consecutive instances of the same element into + a <c>KeyValuePair{T,int}</c> representing the item and its occurrence count. + </summary> + <typeparam name="T">The type of the elements in the sequence</typeparam> + <param name="sequence">The sequence to run length encode</param> + <returns>A sequence of <c>KeyValuePair{T,int}</c> where the key is the element and the value is the occurrence count</returns> + </member> + <member name="M:MoreLinq.Extensions.RunLengthEncodeExtension.RunLengthEncode``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Run-length encodes a sequence by converting consecutive instances of the same element into + a <c>KeyValuePair{T,int}</c> representing the item and its occurrence count. This overload + uses a custom equality comparer to identify equivalent items. + </summary> + <typeparam name="T">The type of the elements in the sequence</typeparam> + <param name="sequence">The sequence to run length encode</param> + <param name="comparer">The comparer used to identify equivalent items</param> + <returns>A sequence of <c>KeyValuePair{T,int}</c> where they key is the element and the value is the occurrence count</returns> + </member> + <member name="T:MoreLinq.Extensions.ScanExtension"> + <summary><c>Scan</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ScanExtension.Scan``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0})"> + <summary> + Performs a scan (inclusive prefix sum) on a sequence of elements. + </summary> + <remarks> + An inclusive prefix sum returns an equal-length sequence where the + N-th element is the sum of the first N input elements. More + generally, the scan allows any commutative binary operation, not + just a sum. + The exclusive version of Scan is <see cref="M:MoreLinq.MoreEnumerable.PreScan``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0},``0)"/>. + This operator uses deferred execution and streams its result. + </remarks> + <example> + <code><![CDATA[ + int[] values = { 1, 2, 3, 4 }; + var prescan = values.PreScan((a, b) => a + b, 0); + var scan = values.Scan((a, b) => a + b); + var result = values.EquiZip(scan, ValueTuple.Create); + ]]></code> + <c>prescan</c> will yield <c>{ 0, 1, 3, 6 }</c>, while <c>scan</c> + and <c>result</c> will both yield <c>{ 1, 3, 6, 10 }</c>. This + shows the relationship between the inclusive and exclusive prefix sum. + </example> + <typeparam name="TSource">Type of elements in source sequence</typeparam> + <param name="source">Source sequence</param> + <param name="transformation">Transformation operation</param> + <returns>The scanned sequence</returns> + </member> + <member name="M:MoreLinq.Extensions.ScanExtension.Scan``2(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1})"> + <summary> + Like <see cref="M:System.Linq.Enumerable.Aggregate``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0})"/> except returns + the sequence of intermediate results as well as the final one. + An additional parameter specifies a seed. + </summary> + <remarks> + This operator uses deferred execution and streams its result. + </remarks> + <example> + <code><![CDATA[ + var result = Enumerable.Range(1, 5).Scan(0, (a, b) => a + b); + ]]></code> + When iterated, <c>result</c> will yield <c>{ 0, 1, 3, 6, 10, 15 }</c>. + </example> + <typeparam name="TSource">Type of elements in source sequence</typeparam> + <typeparam name="TState">Type of state</typeparam> + <param name="source">Source sequence</param> + <param name="seed">Initial state to seed</param> + <param name="transformation">Transformation operation</param> + <returns>The scanned sequence</returns> + </member> + <member name="T:MoreLinq.Extensions.ScanByExtension"> + <summary><c>ScanBy</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ScanByExtension.ScanBy``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``1,``2},System.Func{``2,``1,``0,``2})"> + <summary> + Applies an accumulator function over sequence element keys, + returning the keys along with intermediate accumulator states. + </summary> + <typeparam name="TSource">Type of the elements of the source sequence.</typeparam> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TState">Type of the state.</typeparam> + <param name="source">The source sequence.</param> + <param name="keySelector"> + A function that returns the key given an element.</param> + <param name="seedSelector"> + A function to determine the initial value for the accumulator that is + invoked once per key encountered.</param> + <param name="accumulator"> + An accumulator function invoked for each element.</param> + <returns> + A sequence of keys paired with intermediate accumulator states. + </returns> + </member> + <member name="M:MoreLinq.Extensions.ScanByExtension.ScanBy``3(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``1},System.Func{``1,``2},System.Func{``2,``1,``0,``2},System.Collections.Generic.IEqualityComparer{``1})"> + <summary> + Applies an accumulator function over sequence element keys, + returning the keys along with intermediate accumulator states. An + additional parameter specifies the comparer to use to compare keys. + </summary> + <typeparam name="TSource">Type of the elements of the source sequence.</typeparam> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TState">Type of the state.</typeparam> + <param name="source">The source sequence.</param> + <param name="keySelector"> + A function that returns the key given an element.</param> + <param name="seedSelector"> + A function to determine the initial value for the accumulator that is + invoked once per key encountered.</param> + <param name="accumulator"> + An accumulator function invoked for each element.</param> + <param name="comparer">The equality comparer to use to determine + whether or not keys are equal. If <c>null</c>, the default equality + comparer for <typeparamref name="TSource"/> is used.</param> + <returns> + A sequence of keys paired with intermediate accumulator states. + </returns> + </member> + <member name="T:MoreLinq.Extensions.ScanRightExtension"> + <summary><c>ScanRight</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ScanRightExtension.ScanRight``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0})"> + <summary> + Performs a right-associative scan (inclusive prefix) on a sequence of elements. + This operator is the right-associative version of the + <see cref="M:MoreLinq.MoreEnumerable.Scan``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,``0})"/> LINQ operator. + </summary> + <typeparam name="TSource">Type of elements in source sequence.</typeparam> + <param name="source">Source sequence.</param> + <param name="func"> + A right-associative accumulator function to be invoked on each element. + Its first argument is the current value in the sequence; second argument is the previous accumulator value. + </param> + <returns>The scanned sequence.</returns> + <example> + <code><![CDATA[ + var result = Enumerable.Range(1, 5).Select(i => i.ToString()).ScanRight((a, b) => $"({a}+{b})"); + ]]></code> + The <c>result</c> variable will contain <c>[ "(1+(2+(3+(4+5))))", "(2+(3+(4+5)))", "(3+(4+5))", "(4+5)", "5" ]</c>. + </example> + <remarks> + This operator uses deferred execution and streams its results. + Source sequence is consumed greedily when an iteration of the resulting sequence begins. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ScanRightExtension.ScanRight``2(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``0,``1,``1})"> + <summary> + Performs a right-associative scan (inclusive prefix) on a sequence of elements. + The specified seed value is used as the initial accumulator value. + This operator is the right-associative version of the + <see cref="M:MoreLinq.MoreEnumerable.Scan``2(System.Collections.Generic.IEnumerable{``0},``1,System.Func{``1,``0,``1})"/> LINQ operator. + </summary> + <typeparam name="TSource">The type of the elements of source.</typeparam> + <typeparam name="TAccumulate">The type of the accumulator value.</typeparam> + <param name="source">Source sequence.</param> + <param name="seed">The initial accumulator value.</param> + <param name="func">A right-associative accumulator function to be invoked on each element.</param> + <returns>The scanned sequence.</returns> + <example> + <code><![CDATA[ + var result = Enumerable.Range(1, 4).ScanRight("5", (a, b) => $"({a}+{b})"); + ]]></code> + The <c>result</c> variable will contain <c>[ "(1+(2+(3+(4+5))))", "(2+(3+(4+5)))", "(3+(4+5))", "(4+5)", "5" ]</c>. + </example> + <remarks> + This operator uses deferred execution and streams its results. + Source sequence is consumed greedily when an iteration of the resulting sequence begins. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.SegmentExtension"> + <summary><c>Segment</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.SegmentExtension.Segment``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean})"> + <summary> + Divides a sequence into multiple sequences by using a segment detector based on the original sequence + </summary> + <typeparam name="T">The type of the elements in the sequence</typeparam> + <param name="source">The sequence to segment</param> + <param name="newSegmentPredicate">A function, which returns <c>true</c> if the given element begins a new segment, and <c>false</c> otherwise</param> + <returns>A sequence of segment, each of which is a portion of the original sequence</returns> + <exception cref="T:System.ArgumentNullException"> + Thrown if either <paramref name="source"/> or <paramref name="newSegmentPredicate"/> are <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.Extensions.SegmentExtension.Segment``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Int32,System.Boolean})"> + <summary> + Divides a sequence into multiple sequences by using a segment detector based on the original sequence + </summary> + <typeparam name="T">The type of the elements in the sequence</typeparam> + <param name="source">The sequence to segment</param> + <param name="newSegmentPredicate">A function, which returns <c>true</c> if the given element or index indicate a new segment, and <c>false</c> otherwise</param> + <returns>A sequence of segment, each of which is a portion of the original sequence</returns> + <exception cref="T:System.ArgumentNullException"> + Thrown if either <paramref name="source"/> or <paramref name="newSegmentPredicate"/> are <see langword="null"/>. + </exception> + </member> + <member name="M:MoreLinq.Extensions.SegmentExtension.Segment``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,``0,System.Int32,System.Boolean})"> + <summary> + Divides a sequence into multiple sequences by using a segment detector based on the original sequence + </summary> + <typeparam name="T">The type of the elements in the sequence</typeparam> + <param name="source">The sequence to segment</param> + <param name="newSegmentPredicate">A function, which returns <c>true</c> if the given current element, previous element or index indicate a new segment, and <c>false</c> otherwise</param> + <returns>A sequence of segment, each of which is a portion of the original sequence</returns> + <exception cref="T:System.ArgumentNullException"> + Thrown if either <paramref name="source"/> or <paramref name="newSegmentPredicate"/> are <see langword="null"/>. + </exception> + </member> + <member name="T:MoreLinq.Extensions.ShuffleExtension"> + <summary><c>Shuffle</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ShuffleExtension.Shuffle``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Returns a sequence of elements in random order from the original + sequence. + </summary> + <typeparam name="T">The type of source sequence elements.</typeparam> + <param name="source"> + The sequence from which to return random elements.</param> + <returns> + A sequence of elements <paramref name="source"/> randomized in + their order. + </returns> + <remarks> + This method uses deferred execution and streams its results. The + source sequence is entirely buffered before the results are + streamed. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ShuffleExtension.Shuffle``1(System.Collections.Generic.IEnumerable{``0},System.Random)"> + <summary> + Returns a sequence of elements in random order from the original + sequence. An additional parameter specifies a random generator to be + used for the random selection algorithm. + </summary> + <typeparam name="T">The type of source sequence elements.</typeparam> + <param name="source"> + The sequence from which to return random elements.</param> + <param name="rand"> + A random generator used as part of the selection algorithm.</param> + <returns> + A sequence of elements <paramref name="source"/> randomized in + their order. + </returns> + <remarks> + This method uses deferred execution and streams its results. The + source sequence is entirely buffered before the results are + streamed. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.SingleExtension"> + <summary><c>Single</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.SingleExtension.Single``1(MoreLinq.IExtremaEnumerable{``0})"> + <summary> + Returns the only element of a sequence, and throws an exception if + there is not exactly one element in the sequence. + </summary> + <typeparam name="T"> + The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The input sequence.</param> + <exception cref="T:System.InvalidOperationException"> + The input sequence contains more than one element.</exception> + <returns> + The single element of the input sequence. + </returns> + </member> + <member name="T:MoreLinq.Extensions.SingleOrDefaultExtension"> + <summary><c>SingleOrDefault</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.SingleOrDefaultExtension.SingleOrDefault``1(MoreLinq.IExtremaEnumerable{``0})"> + <summary> + Returns the only element of a sequence, or a default value if the + sequence is empty; this method throws an exception if there is more + than one element in the sequence. + </summary> + <typeparam name="T"> + The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The input sequence.</param> + <returns> + The single element of the input sequence, or default value of type + <typeparamref name="T"/> if the sequence contains no elements. + </returns> + </member> + <member name="T:MoreLinq.Extensions.SkipLastExtension"> + <summary><c>SkipLast</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.SkipLastExtension.SkipLast``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Bypasses a specified number of elements at the end of the sequence. + </summary> + <typeparam name="T">Type of the source sequence</typeparam> + <param name="source">The source sequence.</param> + <param name="count">The number of elements to bypass at the end of the source sequence.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> containing the source sequence elements except for the bypassed ones at the end. + </returns> + </member> + <member name="T:MoreLinq.Extensions.SkipUntilExtension"> + <summary><c>SkipUntil</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.SkipUntilExtension.SkipUntil``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean})"> + <summary> + Skips items from the input sequence until the given predicate returns true + when applied to the current source item; that item will be the last skipped. + </summary> + <remarks> + <para> + SkipUntil differs from Enumerable.SkipWhile in two respects. Firstly, the sense + of the predicate is reversed: it is expected that the predicate will return false + to start with, and then return true - for example, when trying to find a matching + item in a sequence. + </para> + <para> + Secondly, SkipUntil skips the element which causes the predicate to return true. For + example, in a sequence <code><![CDATA[{ 1, 2, 3, 4, 5 }]]></code> and with a predicate of + <code><![CDATA[x => x == 3]]></code>, the result would be <code><![CDATA[{ 4, 5 }]]></code>. + </para> + <para> + SkipUntil is as lazy as possible: it will not iterate over the source sequence + until it has to, it won't iterate further than it has to, and it won't evaluate + the predicate until it has to. (This means that an item may be returned which would + actually cause the predicate to throw an exception if it were evaluated, so long as + it comes after the first item causing the predicate to return true.) + </para> + </remarks> + <typeparam name="TSource">Type of the source sequence</typeparam> + <param name="source">Source sequence</param> + <param name="predicate">Predicate used to determine when to stop yielding results from the source.</param> + <returns>Items from the source sequence after the predicate first returns true when applied to the item.</returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> or <paramref name="predicate"/> is null</exception> + </member> + <member name="T:MoreLinq.Extensions.SliceExtension"> + <summary><c>Slice</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.SliceExtension.Slice``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Int32)"> + <summary> + Extracts a contiguous count of elements from a sequence at a particular zero-based + starting index. + </summary> + <typeparam name="T">The type of the elements in the source sequence.</typeparam> + <param name="sequence">The sequence from which to extract elements.</param> + <param name="startIndex">The zero-based index at which to begin slicing.</param> + <param name="count">The number of items to slice out of the index.</param> + <returns> + A new sequence containing any elements sliced out from the source sequence.</returns> + <remarks> + <para> + If the starting position or count specified result in slice extending past the end of + the sequence, it will return all elements up to that point. There is no guarantee that + the resulting sequence will contain the number of elements requested - it may have + anywhere from 0 to <paramref name="count"/>.</para> + <para> + This method is implemented in an optimized manner for any sequence implementing <see + cref="T:System.Collections.Generic.IList`1"/>.</para> + <para> + The result of <see cref="M:MoreLinq.Extensions.SliceExtension.Slice``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Int32)"/> is identical to: + <c>sequence.Skip(startIndex).Take(count)</c></para> + </remarks> + </member> + <member name="T:MoreLinq.Extensions.SortedMergeExtension"> + <summary><c>SortedMerge</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.SortedMergeExtension.SortedMerge``1(System.Collections.Generic.IEnumerable{``0},MoreLinq.OrderByDirection,System.Collections.Generic.IEnumerable{``0}[])"> + <summary> + Merges two or more sequences that are in a common order (either ascending or descending) + into a single sequence that preserves that order. + </summary> + <typeparam name="TSource">The type of the elements of the sequence.</typeparam> + <param name="source">The primary sequence with which to merge.</param> + <param name="direction">The ordering that all sequences must already exhibit.</param> + <param name="otherSequences">A variable argument array of zero or more other sequences + to merge with.</param> + <returns> + A merged, order-preserving sequence containing all of the elements of the original + sequences.</returns> + <remarks> + <para> + Using <see + cref="M:MoreLinq.Extensions.SortedMergeExtension.SortedMerge``1(System.Collections.Generic.IEnumerable{``0},MoreLinq.OrderByDirection,System.Collections.Generic.IEnumerable{``0}[])"/> + on sequences that are not ordered or are not in the same order produces undefined + results.</para> + <para> + <see + cref="M:MoreLinq.Extensions.SortedMergeExtension.SortedMerge``1(System.Collections.Generic.IEnumerable{``0},MoreLinq.OrderByDirection,System.Collections.Generic.IEnumerable{``0}[])"/> + uses performs the merge in a deferred, streaming manner.</para> + <para> + Here is an example of a merge, as well as the produced result:</para> + <code><![CDATA[ + var s1 = new[] { 3, 7, 11 }; + var s2 = new[] { 2, 4, 20 }; + var s3 = new[] { 17, 19, 25 }; + var merged = s1.SortedMerge(OrderByDirection.Ascending, s2, s3); + var result = merged.ToArray(); + // result will be: + // { 2, 3, 4, 7, 11, 17, 19, 20, 25 } + ]]></code> + </remarks> + </member> + <member name="M:MoreLinq.Extensions.SortedMergeExtension.SortedMerge``1(System.Collections.Generic.IEnumerable{``0},MoreLinq.OrderByDirection,System.Collections.Generic.IComparer{``0},System.Collections.Generic.IEnumerable{``0}[])"> + <summary> + Merges two or more sequences that are in a common order (either ascending or descending) + into a single sequence that preserves that order. + </summary> + <typeparam name="TSource">The type of the elements in the sequence.</typeparam> + <param name="source">The primary sequence with which to merge.</param> + <param name="direction">The ordering that all sequences must already exhibit.</param> + <param name="comparer">The comparer used to evaluate the relative order between + elements.</param> + <param name="otherSequences">A variable argument array of zero or more other sequences + to merge with.</param> + <returns> + A merged, order-preserving sequence containing al of the elements of the original + sequences.</returns> + </member> + <member name="T:MoreLinq.Extensions.SplitExtension"> + <summary><c>Split</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.SplitExtension.Split``1(System.Collections.Generic.IEnumerable{``0},``0)"> + <summary> + Splits the source sequence by a separator. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="separator">Separator element.</param> + <returns>A sequence of splits of elements.</returns> + </member> + <member name="M:MoreLinq.Extensions.SplitExtension.Split``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean})"> + <summary> + Splits the source sequence by separator elements identified by a + function. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="separatorFunc">Predicate function used to determine + the splitter elements in the source sequence.</param> + <returns>A sequence of splits of elements.</returns> + </member> + <member name="M:MoreLinq.Extensions.SplitExtension.Split``1(System.Collections.Generic.IEnumerable{``0},``0,System.Int32)"> + <summary> + Splits the source sequence by a separator given a maximum count of splits. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="separator">Separator element.</param> + <param name="count">Maximum number of splits.</param> + <returns>A sequence of splits of elements.</returns> + </member> + <member name="M:MoreLinq.Extensions.SplitExtension.Split``1(System.Collections.Generic.IEnumerable{``0},``0,System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Splits the source sequence by a separator and then transforms the + splits into results. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="separator">Separator element.</param> + <param name="comparer">Comparer used to determine separator + element equality.</param> + <returns>A sequence of splits of elements.</returns> + </member> + <member name="M:MoreLinq.Extensions.SplitExtension.Split``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean},System.Int32)"> + <summary> + Splits the source sequence by separator elements identified by a + function, given a maximum count of splits. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="separatorFunc">Predicate function used to determine + the splitter elements in the source sequence.</param> + <param name="count">Maximum number of splits.</param> + <returns>A sequence of splits of elements.</returns> + </member> + <member name="M:MoreLinq.Extensions.SplitExtension.Split``1(System.Collections.Generic.IEnumerable{``0},``0,System.Collections.Generic.IEqualityComparer{``0},System.Int32)"> + <summary> + Splits the source sequence by a separator, given a maximum count + of splits. A parameter specifies how the separator is compared + for equality. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="separator">Separator element.</param> + <param name="comparer">Comparer used to determine separator + element equality.</param> + <param name="count">Maximum number of splits.</param> + <returns>A sequence of splits of elements.</returns> + </member> + <member name="M:MoreLinq.Extensions.SplitExtension.Split``2(System.Collections.Generic.IEnumerable{``0},``0,System.Func{System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Splits the source sequence by a separator and then transforms + the splits into results. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result sequence elements.</typeparam> + <param name="source">The source sequence.</param> + <param name="separator">Separator element.</param> + <param name="resultSelector">Function used to project splits + of source elements into elements of the resulting sequence.</param> + <returns> + A sequence of values typed as <typeparamref name="TResult"/>. + </returns> + </member> + <member name="M:MoreLinq.Extensions.SplitExtension.Split``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean},System.Func{System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Splits the source sequence by separator elements identified by + a function and then transforms the splits into results. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result sequence elements.</typeparam> + <param name="source">The source sequence.</param> + <param name="separatorFunc">Predicate function used to determine + the splitter elements in the source sequence.</param> + <param name="resultSelector">Function used to project splits + of source elements into elements of the resulting sequence.</param> + <returns> + A sequence of values typed as <typeparamref name="TResult"/>. + </returns> + </member> + <member name="M:MoreLinq.Extensions.SplitExtension.Split``2(System.Collections.Generic.IEnumerable{``0},``0,System.Int32,System.Func{System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Splits the source sequence by a separator, given a maximum count + of splits, and then transforms the splits into results. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result sequence elements.</typeparam> + <param name="source">The source sequence.</param> + <param name="separator">Separator element.</param> + <param name="count">Maximum number of splits.</param> + <param name="resultSelector">Function used to project splits + of source elements into elements of the resulting sequence.</param> + <returns> + A sequence of values typed as <typeparamref name="TResult"/>. + </returns> + </member> + <member name="M:MoreLinq.Extensions.SplitExtension.Split``2(System.Collections.Generic.IEnumerable{``0},``0,System.Collections.Generic.IEqualityComparer{``0},System.Func{System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Splits the source sequence by a separator and then transforms the + splits into results. A parameter specifies how the separator is + compared for equality. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result sequence elements.</typeparam> + <param name="source">The source sequence.</param> + <param name="separator">Separator element.</param> + <param name="comparer">Comparer used to determine separator + element equality.</param> + <param name="resultSelector">Function used to project splits + of source elements into elements of the resulting sequence.</param> + <returns> + A sequence of values typed as <typeparamref name="TResult"/>. + </returns> + </member> + <member name="M:MoreLinq.Extensions.SplitExtension.Split``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean},System.Int32,System.Func{System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Splits the source sequence by separator elements identified by + a function, given a maximum count of splits, and then transforms + the splits into results. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result sequence elements.</typeparam> + <param name="source">The source sequence.</param> + <param name="separatorFunc">Predicate function used to determine + the splitter elements in the source sequence.</param> + <param name="count">Maximum number of splits.</param> + <param name="resultSelector">Function used to project a split + group of source elements into an element of the resulting sequence.</param> + <returns> + A sequence of values typed as <typeparamref name="TResult"/>. + </returns> + </member> + <member name="M:MoreLinq.Extensions.SplitExtension.Split``2(System.Collections.Generic.IEnumerable{``0},``0,System.Collections.Generic.IEqualityComparer{``0},System.Int32,System.Func{System.Collections.Generic.IEnumerable{``0},``1})"> + <summary> + Splits the source sequence by a separator, given a maximum count + of splits, and then transforms the splits into results. A + parameter specifies how the separator is compared for equality. + </summary> + <typeparam name="TSource">Type of element in the source sequence.</typeparam> + <typeparam name="TResult">Type of the result sequence elements.</typeparam> + <param name="source">The source sequence.</param> + <param name="separator">Separator element.</param> + <param name="comparer">Comparer used to determine separator + element equality.</param> + <param name="count">Maximum number of splits.</param> + <param name="resultSelector">Function used to project splits + of source elements into elements of the resulting sequence.</param> + <returns> + A sequence of values typed as <typeparamref name="TResult"/>. + </returns> + </member> + <member name="T:MoreLinq.Extensions.StartsWithExtension"> + <summary><c>StartsWith</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.StartsWithExtension.StartsWith``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0})"> + <summary> + Determines whether the beginning of the first sequence is + equivalent to the second sequence, using the default equality + comparer. + </summary> + <typeparam name="T">Type of elements.</typeparam> + <param name="first">The sequence to check.</param> + <param name="second">The sequence to compare to.</param> + <returns> + <c>true</c> if <paramref name="first" /> begins with elements + equivalent to <paramref name="second" />. + </returns> + <remarks> + This is the <see cref="T:System.Collections.Generic.IEnumerable`1" /> equivalent of + <see cref="M:System.String.StartsWith(System.String)" /> and it calls + <see cref="M:System.Collections.Generic.IEqualityComparer`1.Equals(`0,`0)" /> using + <see cref="P:System.Collections.Generic.EqualityComparer`1.Default"/> on pairs of elements at + the same index. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.StartsWithExtension.StartsWith``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Determines whether the beginning of the first sequence is + equivalent to the second sequence, using the specified element + equality comparer. + </summary> + <typeparam name="T">Type of elements.</typeparam> + <param name="first">The sequence to check.</param> + <param name="second">The sequence to compare to.</param> + <param name="comparer">Equality comparer to use.</param> + <returns> + <c>true</c> if <paramref name="first" /> begins with elements + equivalent to <paramref name="second" />. + </returns> + <remarks> + This is the <see cref="T:System.Collections.Generic.IEnumerable`1" /> equivalent of + <see cref="M:System.String.StartsWith(System.String)" /> and + it calls <see cref="M:System.Collections.Generic.IEqualityComparer`1.Equals(`0,`0)" /> on pairs + of elements at the same index. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.SubsetsExtension"> + <summary><c>Subsets</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.SubsetsExtension.Subsets``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Returns a sequence of <see cref="T:System.Collections.Generic.IList`1"/> representing all of the subsets of any size + that are part of the original sequence. In mathematics, it is equivalent to the + <em>power set</em> of a set. + </summary> + <param name="sequence">Sequence for which to produce subsets.</param> + <typeparam name="T">The type of the elements in the sequence.</typeparam> + <returns> + A sequence of lists that represent the all subsets of the original sequence.</returns> + <exception cref="T:System.ArgumentNullException">Thrown if <paramref name="sequence"/> is <see + langword="null"/>.</exception> + <remarks> + <para> + This operator produces all of the subsets of a given sequence. Subsets are returned in + increasing cardinality, starting with the empty set and terminating with the entire + original sequence.</para> + <para> + Subsets are produced in a deferred, streaming manner; however, each subset is returned + as a materialized list.</para> + <para> + There are 2<sup>N</sup> subsets of a given sequence, where N ⇒ + <c>sequence.Count()</c>.</para> + </remarks> + </member> + <member name="M:MoreLinq.Extensions.SubsetsExtension.Subsets``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Returns a sequence of <see cref="T:System.Collections.Generic.IList`1"/> representing all subsets of a given size + that are part of the original sequence. In mathematics, it is equivalent to the + <em>combinations</em> or <em>k-subsets</em> of a set. + </summary> + <param name="sequence">Sequence for which to produce subsets.</param> + <param name="subsetSize">The size of the subsets to produce.</param> + <typeparam name="T">The type of the elements in the sequence.</typeparam> + <returns> + A sequence of lists that represents of K-sized subsets of the original + sequence.</returns> + <exception cref="T:System.ArgumentNullException"> + Thrown if <paramref name="sequence"/> is <see langword="null"/>. + </exception> + <exception cref="T:System.ArgumentOutOfRangeException"> + Thrown if <paramref name="subsetSize"/> is less than zero. + </exception> + </member> + <member name="T:MoreLinq.Extensions.TagFirstLastExtension"> + <summary><c>TagFirstLast</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.TagFirstLastExtension.TagFirstLast``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean,System.Boolean,``1})"> + <summary> + Returns a sequence resulting from applying a function to each + element in the source sequence with additional parameters + indicating whether the element is the first and/or last of the + sequence. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <typeparam name="TResult">The type of the element of the returned sequence.</typeparam> + <param name="source">The source sequence.</param> + <param name="resultSelector">A function that determines how to + project the each element along with its first or last tag.</param> + <returns> + Returns the resulting sequence. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + var numbers = new[] { 123, 456, 789 }; + var result = numbers.TagFirstLast((num, fst, lst) => new + { + Number = num, + IsFirst = fst, IsLast = lst + }); + ]]></code> + The <c>result</c> variable, when iterated over, will yield + <c>{ Number = 123, IsFirst = True, IsLast = False }</c>, + <c>{ Number = 456, IsFirst = False, IsLast = False }</c> and + <c>{ Number = 789, IsFirst = False, IsLast = True }</c> in turn. + </example> + </member> + <member name="T:MoreLinq.Extensions.TakeEveryExtension"> + <summary><c>TakeEvery</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.TakeEveryExtension.TakeEvery``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Returns every N-th element of a sequence. + </summary> + <typeparam name="TSource">Type of the source sequence</typeparam> + <param name="source">Source sequence</param> + <param name="step">Number of elements to bypass before returning the next element.</param> + <returns> + A sequence with every N-th element of the input sequence. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + int[] numbers = { 1, 2, 3, 4, 5 }; + var result = numbers.TakeEvery(2); + ]]></code> + The <c>result</c> variable, when iterated over, will yield 1, 3 and 5, in turn. + </example> + </member> + <member name="T:MoreLinq.Extensions.TakeLastExtension"> + <summary><c>TakeLast</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.TakeLastExtension.TakeLast``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Returns a specified number of contiguous elements from the end of + a sequence. + </summary> + <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The sequence to return the last element of.</param> + <param name="count">The number of elements to return.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains the specified number of + elements from the end of the input sequence. + </returns> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + <example> + <code><![CDATA[ + int[] numbers = { 12, 34, 56, 78 }; + var result = numbers.TakeLast(2); + ]]></code> + The <c>result</c> variable, when iterated over, will yield + 56 and 78 in turn. + </example> + </member> + <member name="T:MoreLinq.Extensions.TakeUntilExtension"> + <summary><c>TakeUntil</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.TakeUntilExtension.TakeUntil``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Boolean})"> + <summary> + Returns items from the input sequence until the given predicate returns true + when applied to the current source item; that item will be the last returned. + </summary> + <remarks> + <para> + TakeUntil differs from Enumerable.TakeWhile in two respects. Firstly, the sense + of the predicate is reversed: it is expected that the predicate will return false + to start with, and then return true - for example, when trying to find a matching + item in a sequence. + </para> + <para> + Secondly, TakeUntil yields the element which causes the predicate to return true. For + example, in a sequence <code><![CDATA[{ 1, 2, 3, 4, 5 }]]></code> and with a predicate of + <code><![CDATA[x => x == 3]]></code>, the result would be <code><![CDATA[{ 1, 2, 3 }]]></code>. + </para> + <para> + TakeUntil is as lazy as possible: it will not iterate over the source sequence + until it has to, it won't iterate further than it has to, and it won't evaluate + the predicate until it has to. (This means that an item may be returned which would + actually cause the predicate to throw an exception if it were evaluated, so long as + no more items of data are requested.) + </para> + </remarks> + <typeparam name="TSource">Type of the source sequence</typeparam> + <param name="source">Source sequence</param> + <param name="predicate">Predicate used to determine when to stop yielding results from the source.</param> + <returns>Items from the source sequence, until the predicate returns true when applied to the item.</returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> or <paramref name="predicate"/> is null</exception> + </member> + <member name="T:MoreLinq.Extensions.ThenByExtension"> + <summary><c>ThenBy</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ThenByExtension.ThenBy``2(System.Linq.IOrderedEnumerable{``0},System.Func{``0,``1},MoreLinq.OrderByDirection)"> + <summary> + Performs a subsequent ordering of elements in a sequence in a particular direction (ascending, descending) according to a key + </summary> + <typeparam name="T">The type of the elements in the source sequence</typeparam> + <typeparam name="TKey">The type of the key used to order elements</typeparam> + <param name="source">The sequence to order</param> + <param name="keySelector">A key selector function</param> + <param name="direction">A direction in which to order the elements (ascending, descending)</param> + <returns>An ordered copy of the source sequence</returns> + </member> + <member name="M:MoreLinq.Extensions.ThenByExtension.ThenBy``2(System.Linq.IOrderedEnumerable{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1},MoreLinq.OrderByDirection)"> + <summary> + Performs a subsequent ordering of elements in a sequence in a particular direction (ascending, descending) according to a key + </summary> + <typeparam name="T">The type of the elements in the source sequence</typeparam> + <typeparam name="TKey">The type of the key used to order elements</typeparam> + <param name="source">The sequence to order</param> + <param name="keySelector">A key selector function</param> + <param name="direction">A direction in which to order the elements (ascending, descending)</param> + <param name="comparer">A comparer used to define the semantics of element comparison</param> + <returns>An ordered copy of the source sequence</returns> + </member> + <member name="T:MoreLinq.Extensions.ToArrayByIndexExtension"> + <summary><c>ToArrayByIndex</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ToArrayByIndexExtension.ToArrayByIndex``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Int32})"> + <summary> + Creates an array from an <see cref="T:System.Collections.Generic.IEnumerable`1"/> where a + function is used to determine the index at which an element will + be placed in the array. + </summary> + <param name="source">The source sequence for the array.</param> + <param name="indexSelector"> + A function that maps an element to its index.</param> + <typeparam name="T"> + The type of the element in <paramref name="source"/>.</typeparam> + <returns> + An array that contains the elements from the input sequence. The + size of the array will be as large as the highest index returned + by the <paramref name="indexSelector"/> plus 1. + </returns> + <remarks> + This method forces immediate query evaluation. It should not be + used on infinite sequences. If more than one element maps to the + same index then the latter element overwrites the former in the + resulting array. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToArrayByIndexExtension.ToArrayByIndex``1(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,System.Int32})"> + <summary> + Creates an array of user-specified length from an + <see cref="T:System.Collections.Generic.IEnumerable`1"/> where a function is used to determine + the index at which an element will be placed in the array. + </summary> + <param name="source">The source sequence for the array.</param> + <param name="length">The (non-negative) length of the resulting array.</param> + <param name="indexSelector"> + A function that maps an element to its index.</param> + <typeparam name="T"> + The type of the element in <paramref name="source"/>.</typeparam> + <returns> + An array of size <paramref name="length"/> that contains the + elements from the input sequence. + </returns> + <remarks> + This method forces immediate query evaluation. It should not be + used on infinite sequences. If more than one element maps to the + same index then the latter element overwrites the former in the + resulting array. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToArrayByIndexExtension.ToArrayByIndex``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Int32},System.Func{``0,``1})"> + <summary> + Creates an array from an <see cref="T:System.Collections.Generic.IEnumerable`1"/> where a + function is used to determine the index at which an element will + be placed in the array. The elements are projected into the array + via an additional function. + </summary> + <param name="source">The source sequence for the array.</param> + <param name="indexSelector"> + A function that maps an element to its index.</param> + <param name="resultSelector"> + A function to project a source element into an element of the + resulting array.</param> + <typeparam name="T"> + The type of the element in <paramref name="source"/>.</typeparam> + <typeparam name="TResult"> + The type of the element in the resulting array.</typeparam> + <returns> + An array that contains the projected elements from the input + sequence. The size of the array will be as large as the highest + index returned by the <paramref name="indexSelector"/> plus 1. + </returns> + <remarks> + This method forces immediate query evaluation. It should not be + used on infinite sequences. If more than one element maps to the + same index then the latter element overwrites the former in the + resulting array. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToArrayByIndexExtension.ToArrayByIndex``2(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.Int32},System.Func{``0,System.Int32,``1})"> + <summary> + Creates an array from an <see cref="T:System.Collections.Generic.IEnumerable`1"/> where a + function is used to determine the index at which an element will + be placed in the array. The elements are projected into the array + via an additional function. + </summary> + <param name="source">The source sequence for the array.</param> + <param name="indexSelector"> + A function that maps an element to its index.</param> + <param name="resultSelector"> + A function to project a source element into an element of the + resulting array.</param> + <typeparam name="T"> + The type of the element in <paramref name="source"/>.</typeparam> + <typeparam name="TResult"> + The type of the element in the resulting array.</typeparam> + <returns> + An array that contains the projected elements from the input + sequence. The size of the array will be as large as the highest + index returned by the <paramref name="indexSelector"/> plus 1. + </returns> + <remarks> + This method forces immediate query evaluation. It should not be + used on infinite sequences. If more than one element maps to the + same index then the latter element overwrites the former in the + resulting array. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToArrayByIndexExtension.ToArrayByIndex``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,System.Int32},System.Func{``0,``1})"> + <summary> + Creates an array of user-specified length from an + <see cref="T:System.Collections.Generic.IEnumerable`1"/> where a function is used to determine + the index at which an element will be placed in the array. The + elements are projected into the array via an additional function. + </summary> + <param name="source">The source sequence for the array.</param> + <param name="length">The (non-negative) length of the resulting array.</param> + <param name="indexSelector"> + A function that maps an element to its index.</param> + <param name="resultSelector"> + A function to project a source element into an element of the + resulting array.</param> + <typeparam name="T"> + The type of the element in <paramref name="source"/>.</typeparam> + <typeparam name="TResult"> + The type of the element in the resulting array.</typeparam> + <returns> + An array of size <paramref name="length"/> that contains the + projected elements from the input sequence. + </returns> + <remarks> + This method forces immediate query evaluation. It should not be + used on infinite sequences. If more than one element maps to the + same index then the latter element overwrites the former in the + resulting array. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToArrayByIndexExtension.ToArrayByIndex``2(System.Collections.Generic.IEnumerable{``0},System.Int32,System.Func{``0,System.Int32},System.Func{``0,System.Int32,``1})"> + <summary> + Creates an array of user-specified length from an + <see cref="T:System.Collections.Generic.IEnumerable`1"/> where a function is used to determine + the index at which an element will be placed in the array. The + elements are projected into the array via an additional function. + </summary> + <param name="source">The source sequence for the array.</param> + <param name="length">The (non-negative) length of the resulting array.</param> + <param name="indexSelector"> + A function that maps an element to its index.</param> + <param name="resultSelector"> + A function to project a source element into an element of the + resulting array.</param> + <typeparam name="T"> + The type of the element in <paramref name="source"/>.</typeparam> + <typeparam name="TResult"> + The type of the element in the resulting array.</typeparam> + <returns> + An array of size <paramref name="length"/> that contains the + projected elements from the input sequence. + </returns> + <remarks> + This method forces immediate query evaluation. It should not be + used on infinite sequences. If more than one element maps to the + same index then the latter element overwrites the former in the + resulting array. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.ToDelimitedStringExtension"> + <summary><c>ToDelimitedString</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ToDelimitedStringExtension.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Boolean},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToDelimitedStringExtension.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Byte},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToDelimitedStringExtension.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Char},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToDelimitedStringExtension.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Decimal},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToDelimitedStringExtension.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Double},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToDelimitedStringExtension.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Single},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToDelimitedStringExtension.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Int32},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToDelimitedStringExtension.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Int64},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToDelimitedStringExtension.ToDelimitedString(System.Collections.Generic.IEnumerable{System.SByte},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToDelimitedStringExtension.ToDelimitedString(System.Collections.Generic.IEnumerable{System.Int16},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToDelimitedStringExtension.ToDelimitedString(System.Collections.Generic.IEnumerable{System.String},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToDelimitedStringExtension.ToDelimitedString(System.Collections.Generic.IEnumerable{System.UInt32},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToDelimitedStringExtension.ToDelimitedString(System.Collections.Generic.IEnumerable{System.UInt64},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToDelimitedStringExtension.ToDelimitedString(System.Collections.Generic.IEnumerable{System.UInt16},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToDelimitedStringExtension.ToDelimitedString``1(System.Collections.Generic.IEnumerable{``0},System.String)"> + <summary> + Creates a delimited string from a sequence of values and + a given delimiter. + </summary> + <typeparam name="TSource">Type of element in the source sequence</typeparam> + <param name="source">The sequence of items to delimit. Each is converted to a string using the + simple ToString() conversion.</param> + <param name="delimiter">The delimiter to inject between elements.</param> + <returns> + A string that consists of the elements in <paramref name="source"/> + delimited by <paramref name="delimiter"/>. If the source sequence + is empty, the method returns an empty string. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="source"/> or <paramref name="delimiter"/> is <c>null</c>. + </exception> + <remarks> + This operator uses immediate execution and effectively buffers the sequence. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.ToDictionaryExtension"> + <summary><c>ToDictionary</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ToDictionaryExtension.ToDictionary``2(System.Collections.Generic.IEnumerable{System.ValueTuple{``0,``1}})"> + <summary> + Creates a <see cref="T:System.Collections.Generic.Dictionary`2" /> from a sequence of + tuples of 2 where the first item is the key and the second the + value. + </summary> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TValue">The type of the value.</typeparam> + <param name="source">The source sequence of couples (tuple of 2).</param> + <returns> + A <see cref="T:System.Collections.Generic.Dictionary`2"/> containing the values + mapped to their keys. + </returns> + </member> + <member name="M:MoreLinq.Extensions.ToDictionaryExtension.ToDictionary``2(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}})"> + <summary> + Creates a <see cref="T:System.Collections.Generic.Dictionary`2" /> from a sequence of + <see cref="T:System.Collections.Generic.KeyValuePair`2" /> elements. + </summary> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TValue">The type of the value.</typeparam> + <param name="source">The source sequence of key-value pairs.</param> + <returns> + A <see cref="T:System.Collections.Generic.Dictionary`2"/> containing the values + mapped to their keys. + </returns> + </member> + <member name="M:MoreLinq.Extensions.ToDictionaryExtension.ToDictionary``2(System.Collections.Generic.IEnumerable{System.ValueTuple{``0,``1}},System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Creates a <see cref="T:System.Collections.Generic.Dictionary`2" /> from a sequence of + tuples of 2 where the first item is the key and the second the + value. An additional parameter specifies a comparer for keys. + </summary> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TValue">The type of the value.</typeparam> + <param name="source">The source sequence of couples (tuple of 2).</param> + <param name="comparer">The comparer for keys.</param> + <returns> + A <see cref="T:System.Collections.Generic.Dictionary`2"/> containing the values + mapped to their keys. + </returns> + </member> + <member name="M:MoreLinq.Extensions.ToDictionaryExtension.ToDictionary``2(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}},System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Creates a <see cref="T:System.Collections.Generic.Dictionary`2" /> from a sequence of + <see cref="T:System.Collections.Generic.KeyValuePair`2" /> elements. An additional + parameter specifies a comparer for keys. + </summary> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TValue">The type of the value.</typeparam> + <param name="source">The source sequence of key-value pairs.</param> + <param name="comparer">The comparer for keys.</param> + <returns> + A <see cref="T:System.Collections.Generic.Dictionary`2"/> containing the values + mapped to their keys. + </returns> + </member> + <member name="T:MoreLinq.Extensions.ToHashSetExtension"> + <summary><c>ToHashSet</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ToHashSetExtension.ToHashSet``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Returns a <see cref="T:System.Collections.Generic.HashSet`1"/> of the source items using the default equality + comparer for the type. + </summary> + <typeparam name="TSource">Type of elements in source sequence.</typeparam> + <param name="source">Source sequence</param> + <returns>A hash set of the items in the sequence, using the default equality comparer.</returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null</exception> + <remarks> + This evaluates the input sequence completely. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ToHashSetExtension.ToHashSet``1(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Returns a <see cref="T:System.Collections.Generic.HashSet`1"/> of the source items using the specified equality + comparer for the type. + </summary> + <typeparam name="TSource">Type of elements in source sequence.</typeparam> + <param name="source">Source sequence</param> + <param name="comparer">Equality comparer to use; a value of null will cause the type's default equality comparer to be used</param> + <returns>A hash set of the items in the sequence, using the default equality comparer.</returns> + <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null</exception> + <remarks> + This evaluates the input sequence completely. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.ToLookupExtension"> + <summary><c>ToLookup</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ToLookupExtension.ToLookup``2(System.Collections.Generic.IEnumerable{System.ValueTuple{``0,``1}})"> + <summary> + Creates a <see cref="T:System.Linq.Lookup`2" /> from a sequence of + tuples of 2 where the first item is the key and the second the + value. + </summary> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TValue">The type of the value.</typeparam> + <param name="source">The source sequence of tuples of 2.</param> + <returns> + A <see cref="T:System.Linq.Lookup`2"/> containing the values + mapped to their keys. + </returns> + </member> + <member name="M:MoreLinq.Extensions.ToLookupExtension.ToLookup``2(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}})"> + <summary> + Creates a <see cref="T:System.Linq.ILookup`2" /> from a sequence of + <see cref="T:System.Collections.Generic.KeyValuePair`2" /> elements. + </summary> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TValue">The type of the value.</typeparam> + <param name="source">The source sequence of key-value pairs.</param> + <returns> + A <see cref="T:System.Linq.ILookup`2"/> containing the values + mapped to their keys. + </returns> + </member> + <member name="M:MoreLinq.Extensions.ToLookupExtension.ToLookup``2(System.Collections.Generic.IEnumerable{System.ValueTuple{``0,``1}},System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Creates a <see cref="T:System.Linq.Lookup`2" /> from a sequence of + tuples of 2 where the first item is the key and the second the + value. An additional parameter specifies a comparer for keys. + </summary> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TValue">The type of the value.</typeparam> + <param name="source">The source sequence of tuples of 2.</param> + <param name="comparer">The comparer for keys.</param> + <returns> + A <see cref="T:System.Linq.Lookup`2"/> containing the values + mapped to their keys. + </returns> + </member> + <member name="M:MoreLinq.Extensions.ToLookupExtension.ToLookup``2(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{``0,``1}},System.Collections.Generic.IEqualityComparer{``0})"> + <summary> + Creates a <see cref="T:System.Linq.ILookup`2" /> from a sequence of + <see cref="T:System.Collections.Generic.KeyValuePair`2" /> elements. An additional + parameter specifies a comparer for keys. + </summary> + <typeparam name="TKey">The type of the key.</typeparam> + <typeparam name="TValue">The type of the value.</typeparam> + <param name="source">The source sequence of key-value pairs.</param> + <param name="comparer">The comparer for keys.</param> + <returns> + A <see cref="T:System.Linq.ILookup`2"/> containing the values + mapped to their keys. + </returns> + </member> + <member name="T:MoreLinq.Extensions.TraceExtension"> + <summary><c>Trace</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.TraceExtension.Trace``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Traces the elements of a source sequence for diagnostics. + </summary> + <typeparam name="TSource">Type of element in the source sequence</typeparam> + <param name="source">Source sequence whose elements to trace.</param> + <returns> + Return the source sequence unmodified. + </returns> + <remarks> + This a pass-through operator that uses deferred execution and + streams the results. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.TraceExtension.Trace``1(System.Collections.Generic.IEnumerable{``0},System.String)"> + <summary> + Traces the elements of a source sequence for diagnostics using + custom formatting. + </summary> + <typeparam name="TSource">Type of element in the source sequence</typeparam> + <param name="source">Source sequence whose elements to trace.</param> + <param name="format"> + String to use to format the trace message. If null then the + element value becomes the traced message. + </param> + <returns> + Return the source sequence unmodified. + </returns> + <remarks> + This a pass-through operator that uses deferred execution and + streams the results. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.TraceExtension.Trace``1(System.Collections.Generic.IEnumerable{``0},System.Func{``0,System.String})"> + <summary> + Traces the elements of a source sequence for diagnostics using + a custom formatter. + </summary> + <typeparam name="TSource">Type of element in the source sequence</typeparam> + <param name="source">Source sequence whose elements to trace.</param> + <param name="formatter">Function used to format each source element into a string.</param> + <returns> + Return the source sequence unmodified. + </returns> + <remarks> + This a pass-through operator that uses deferred execution and + streams the results. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.TransposeExtension"> + <summary><c>Transpose</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.TransposeExtension.Transpose``1(System.Collections.Generic.IEnumerable{System.Collections.Generic.IEnumerable{``0}})"> + <summary> + Transposes a sequence of rows into a sequence of columns. + </summary> + <typeparam name="T">Type of source sequence elements.</typeparam> + <param name="source">Source sequence to transpose.</param> + <returns> + Returns a sequence of columns in the source swapped into rows. + </returns> + <remarks> + If a rows is shorter than a follow it then the shorter row's + elements are skipped in the corresponding column sequences. + This operator uses deferred execution and streams its results. + Source sequence is consumed greedily when an iteration begins. + The inner sequences representing rows are consumed lazily and + resulting sequences of columns are streamed. + </remarks> + <example> + <code><![CDATA[ + var matrix = new[] + { + new[] { 10, 11 }, + new[] { 20 }, + new[] { 30, 31, 32 } + }; + var result = matrix.Transpose(); + ]]></code> + The <c>result</c> variable will contain [[10, 20, 30], [11, 31], [32]]. + </example> + </member> + <member name="T:MoreLinq.Extensions.WindowExtension"> + <summary><c>Window</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.WindowExtension.Window``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Processes a sequence into a series of sub-sequences representing a windowed subset of + the original. + </summary> + <typeparam name="TSource">The type of the elements of the source sequence.</typeparam> + <param name="source">The sequence to evaluate a sliding window over.</param> + <param name="size">The size (number of elements) in each window.</param> + <returns> + A series of sequences representing each sliding window subsequence.</returns> + <remarks> + <para> + The number of sequences returned is: <c>Max(0, sequence.Count() - windowSize) + + 1</c></para> + <para> + Returned sub-sequences are buffered, but the overall operation is streamed.</para> + </remarks> + </member> + <member name="T:MoreLinq.Extensions.WindowLeftExtension"> + <summary><c>WindowLeft</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.WindowLeftExtension.WindowLeft``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Creates a left-aligned sliding window of a given size over the + source sequence. + </summary> + <typeparam name="TSource"> + The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source"> + The sequence over which to create the sliding window.</param> + <param name="size">Size of the sliding window.</param> + <returns>A sequence representing each sliding window.</returns> + <remarks> + <para> + A window can contain fewer elements than <paramref name="size"/>, + especially as it slides over the end of the sequence.</para> + <para> + This operator uses deferred execution and streams its results.</para> + </remarks> + <example> + <code><![CDATA[ + Console.WriteLine( + Enumerable + .Range(1, 5) + .WindowLeft(3) + .Select(w => "AVG(" + w.ToDelimitedString(",") + ") = " + w.Average()) + .ToDelimitedString(Environment.NewLine)); + + // Output: + // AVG(1,2,3) = 2 + // AVG(2,3,4) = 3 + // AVG(3,4,5) = 4 + // AVG(4,5) = 4.5 + // AVG(5) = 5 + ]]></code> + </example> + </member> + <member name="T:MoreLinq.Extensions.WindowRightExtension"> + <summary><c>WindowRight</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.WindowRightExtension.WindowRight``1(System.Collections.Generic.IEnumerable{``0},System.Int32)"> + <summary> + Creates a right-aligned sliding window over the source sequence + of a given size. + </summary> + <typeparam name="TSource"> + The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source"> + The sequence over which to create the sliding window.</param> + <param name="size">Size of the sliding window.</param> + <returns>A sequence representing each sliding window.</returns> + <remarks> + <para> + A window can contain fewer elements than <paramref name="size"/>, + especially as it slides over the start of the sequence.</para> + <para> + This operator uses deferred execution and streams its results.</para> + </remarks> + <example> + <code><![CDATA[ + Console.WriteLine( + Enumerable + .Range(1, 5) + .WindowRight(3) + .Select(w => "AVG(" + w.ToDelimitedString(",") + ") = " + w.Average()) + .ToDelimitedString(Environment.NewLine)); + + // Output: + // AVG(1) = 1 + // AVG(1,2) = 1.5 + // AVG(1,2,3) = 2 + // AVG(2,3,4) = 3 + // AVG(3,4,5) = 4 + ]]></code> + </example> + </member> + <member name="T:MoreLinq.Extensions.ZipLongestExtension"> + <summary><c>ZipLongest</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ZipLongestExtension.ZipLongest``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``1,``2})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. The resulting sequence + will always be as long as the longest of input sequences where the + default value of each of the shorter sequence element types is used + for padding. + </summary> + <typeparam name="TFirst">Type of elements in first sequence.</typeparam> + <typeparam name="TSecond">Type of elements in second sequence.</typeparam> + <typeparam name="TResult">Type of elements in result sequence.</typeparam> + <param name="first">The first sequence.</param> + <param name="second">The second sequence.</param> + <param name="resultSelector"> + Function to apply to each pair of elements.</param> + <returns> + A sequence that contains elements of the two input sequences, + combined by <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, or <paramref + name="resultSelector"/> is <see langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var numbers = { 1, 2, 3 }; + var letters = { "A", "B", "C", "D" }; + var zipped = numbers.ZipLongest(letters, (n, l) => n + l); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield "1A", + "2B", "3C", "0D" in turn. + </example> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ZipLongestExtension.ZipLongest``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Func{``0,``1,``2,``3})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. The resulting sequence + will always be as long as the longest of input sequences where the + default value of each of the shorter sequence element types is used + for padding. + </summary> + <typeparam name="T1">Type of elements in first sequence.</typeparam> + <typeparam name="T2">Type of elements in second sequence.</typeparam> + <typeparam name="T3">Type of elements in third sequence.</typeparam> + <typeparam name="TResult">Type of elements in result sequence.</typeparam> + <param name="first">The first sequence.</param> + <param name="second">The second sequence.</param> + <param name="third">The third sequence.</param> + <param name="resultSelector"> + Function to apply to each triplet of elements.</param> + <returns> + A sequence that contains elements of the three input sequences, + combined by <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, <paramref + name="third"/>, or <paramref name="resultSelector"/> is <see + langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var numbers = new[] { 1, 2, 3 }; + var letters = new[] { "A", "B", "C", "D" }; + var chars = new[] { 'a', 'b', 'c', 'd', 'e' }; + var zipped = numbers.ZipLongest(letters, chars, (n, l, c) => n + l + c); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield "1Aa", + "2Bb", "3Cc", "0Dd", "0e" in turn. + </example> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ZipLongestExtension.ZipLongest``5(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Collections.Generic.IEnumerable{``3},System.Func{``0,``1,``2,``3,``4})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. The resulting sequence + will always be as long as the longest of input sequences where the + default value of each of the shorter sequence element types is used + for padding. + </summary> + <typeparam name="T1">Type of elements in first sequence</typeparam> + <typeparam name="T2">Type of elements in second sequence</typeparam> + <typeparam name="T3">Type of elements in third sequence</typeparam> + <typeparam name="T4">Type of elements in fourth sequence</typeparam> + <typeparam name="TResult">Type of elements in result sequence</typeparam> + <param name="first">The first sequence.</param> + <param name="second">The second sequence.</param> + <param name="third">The third sequence.</param> + <param name="fourth">The fourth sequence.</param> + <param name="resultSelector"> + Function to apply to each quadruplet of elements.</param> + <returns> + A sequence that contains elements of the four input sequences, + combined by <paramref name="resultSelector"/>. + </returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, <paramref + name="third"/>, <paramref name="fourth"/>, or <paramref + name="resultSelector"/> is <see langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var numbers = new[] { 1, 2, 3 }; + var letters = new[] { "A", "B", "C", "D" }; + var chars = new[] { 'a', 'b', 'c', 'd', 'e' }; + var flags = new[] { true, false, true, false, true, false }; + var zipped = numbers.ZipLongest(letters, chars, flags, (n, l, c, f) => n + l + c + f); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield "1AaTrue", + "2BbFalse", "3CcTrue", "0DdFalse", "0eTrue", "0\0False" in turn. + </example> + <remarks> + This operator uses deferred execution and streams its results. + </remarks> + </member> + <member name="T:MoreLinq.Extensions.ZipShortestExtension"> + <summary><c>ZipShortest</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ZipShortestExtension.ZipShortest``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``1,``2})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. The resulting sequence + is as short as the shortest input sequence. + </summary> + <typeparam name="TFirst">Type of elements in first sequence.</typeparam> + <typeparam name="TSecond">Type of elements in second sequence.</typeparam> + <typeparam name="TResult">Type of elements in result sequence.</typeparam> + <param name="first">The first sequence.</param> + <param name="second">The second sequence.</param> + <param name="resultSelector"> + Function to apply to each pair of elements.</param> + <returns> + A projection of tuples, where each tuple contains the N-th element + from each of the argument sequences.</returns> + <example> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, or <paramref + name="resultSelector"/> is <see langword="null"/>. + </exception> + <code><![CDATA[ + var numbers = new[] { 1, 2, 3 }; + var letters = new[] { "A", "B", "C", "D" }; + var zipped = numbers.ZipShortest(letters, (n, l) => n + l); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield "1A", "2B", "3C", in turn. + </example> + <remarks> + <para> + If the input sequences are of different lengths, the result sequence + is terminated as soon as the shortest input sequence is exhausted + and remainder elements from the longer sequences are never consumed. + </para> + <para> + This operator uses deferred execution and streams its results.</para> + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ZipShortestExtension.ZipShortest``4(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Func{``0,``1,``2,``3})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. The resulting sequence + is as short as the shortest input sequence. + </summary> + <typeparam name="T1">Type of elements in first sequence.</typeparam> + <typeparam name="T2">Type of elements in second sequence.</typeparam> + <typeparam name="T3">Type of elements in third sequence.</typeparam> + <typeparam name="TResult">Type of elements in result sequence.</typeparam> + <param name="first">First sequence</param> + <param name="second">Second sequence</param> + <param name="third">Third sequence</param> + <param name="resultSelector"> + Function to apply to each triplet of elements.</param> + <returns> + A projection of tuples, where each tuple contains the N-th element + from each of the argument sequences.</returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, <paramref + name="third"/>, or <paramref name="resultSelector"/> is <see + langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var numbers = new[] { 1, 2, 3 }; + var letters = new[] { "A", "B", "C", "D" }; + var chars = new[] { 'a', 'b', 'c', 'd', 'e' }; + var zipped = numbers.ZipShortest(letters, chars, (n, l, c) => c + n + l); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield + "98A", "100B", "102C", in turn. + </example> + <remarks> + <para> + If the input sequences are of different lengths, the result sequence + is terminated as soon as the shortest input sequence is exhausted + and remainder elements from the longer sequences are never consumed. + </para> + <para> + This operator uses deferred execution and streams its results.</para> + </remarks> + </member> + <member name="M:MoreLinq.Extensions.ZipShortestExtension.ZipShortest``5(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Collections.Generic.IEnumerable{``2},System.Collections.Generic.IEnumerable{``3},System.Func{``0,``1,``2,``3,``4})"> + <summary> + Returns a projection of tuples, where each tuple contains the N-th + element from each of the argument sequences. The resulting sequence + is as short as the shortest input sequence. + </summary> + <typeparam name="T1">Type of elements in first sequence.</typeparam> + <typeparam name="T2">Type of elements in second sequence.</typeparam> + <typeparam name="T3">Type of elements in third sequence.</typeparam> + <typeparam name="T4">Type of elements in fourth sequence.</typeparam> + <typeparam name="TResult">Type of elements in result sequence.</typeparam> + <param name="first">The first sequence.</param> + <param name="second">The second sequence.</param> + <param name="third">The third sequence.</param> + <param name="fourth">The fourth sequence.</param> + <param name="resultSelector"> + Function to apply to each quadruplet of elements.</param> + <returns> + A projection of tuples, where each tuple contains the N-th element + from each of the argument sequences.</returns> + <exception cref="T:System.ArgumentNullException"> + <paramref name="first"/>, <paramref name="second"/>, <paramref + name="third"/>, <paramref name="fourth"/>, or <paramref + name="resultSelector"/> is <see langword="null"/>. + </exception> + <example> + <code><![CDATA[ + var numbers = new[] { 1, 2, 3 }; + var letters = new[] { "A", "B", "C", "D" }; + var chars = new[] { 'a', 'b', 'c', 'd', 'e' }; + var flags = new[] { true, false }; + var zipped = numbers.ZipShortest(letters, chars, flags, (n, l, c, f) => n + l + c + f); + ]]></code> + The <c>zipped</c> variable, when iterated over, will yield + "1AaTrue", "2BbFalse" in turn. + </example> + <remarks> + <para> + If the input sequences are of different lengths, the result sequence + is terminated as soon as the shortest input sequence is exhausted + and remainder elements from the longer sequences are never consumed. + </para> + <para> + This operator uses deferred execution and streams its results.</para> + </remarks> + </member> + <member name="T:MoreLinq.Extensions.ToDataTableExtension"> + <summary><c>ToDataTable</c> extension.</summary> + </member> + <member name="M:MoreLinq.Extensions.ToDataTableExtension.ToDataTable``1(System.Collections.Generic.IEnumerable{``0})"> + <summary> + Converts a sequence to a <see cref="T:System.Data.DataTable"/> object. + </summary> + <typeparam name="T">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The source.</param> + <returns> + A <see cref="T:System.Data.DataTable"/> representing the source. + </returns> + <remarks>This operator uses immediate execution.</remarks> + </member> + <member name="M:MoreLinq.Extensions.ToDataTableExtension.ToDataTable``1(System.Collections.Generic.IEnumerable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Object}}[])"> + <summary> + Appends elements in the sequence as rows of a given <see cref="T:System.Data.DataTable"/> + object with a set of lambda expressions specifying which members (property + or field) of each element in the sequence will supply the column values. + </summary> + <typeparam name="T">The type of the elements of <paramref name="source"/>.</typeparam> + <param name="source">The source.</param> + <param name="expressions">Expressions providing access to element members.</param> + <returns> + A <see cref="T:System.Data.DataTable"/> representing the source. + </returns> + <remarks>This operator uses immediate execution.</remarks> + </member> + <member name="M:MoreLinq.Extensions.ToDataTableExtension.ToDataTable``2(System.Collections.Generic.IEnumerable{``0},``1)"> + <summary> + Appends elements in the sequence as rows of a given <see cref="T:System.Data.DataTable"/> object. + </summary> + <typeparam name="T">The type of the elements of <paramref name="source"/>.</typeparam> + <typeparam name="TTable"></typeparam> + <param name="source">The source.</param> + <param name="table"></param> + <returns> + A <see cref="T:System.Data.DataTable"/> or subclass representing the source. + </returns> + <remarks>This operator uses immediate execution.</remarks> + </member> + <member name="M:MoreLinq.Extensions.ToDataTableExtension.ToDataTable``2(System.Collections.Generic.IEnumerable{``0},``1,System.Linq.Expressions.Expression{System.Func{``0,System.Object}}[])"> + <summary> + Appends elements in the sequence as rows of a given <see cref="T:System.Data.DataTable"/> + object with a set of lambda expressions specifying which members (property + or field) of each element in the sequence will supply the column values. + </summary> + <typeparam name="T">The type of the elements of <paramref name="source"/>.</typeparam> + <typeparam name="TTable">The type of the input and resulting <see cref="T:System.Data.DataTable"/> object.</typeparam> + <param name="source">The source.</param> + <param name="table">The <see cref="T:System.Data.DataTable"/> type of object where to add rows</param> + <param name="expressions">Expressions providing access to element members.</param> + <returns> + A <see cref="T:System.Data.DataTable"/> or subclass representing the source. + </returns> + <remarks>This operator uses immediate execution.</remarks> + </member> + <member name="T:MoreLinq.ListLike`1"> + <summary> + Represents a union over list types implementing either + <see cref="T:System.Collections.Generic.IList`1"/> or <see cref="T:System.Collections.Generic.IReadOnlyList`1"/>, allowing + both to be treated the same. + </summary> + </member> + <member name="T:MoreLinq.Lookup`2"> + <summary> + A <see cref="T:System.Linq.ILookup`2"/> implementation that preserves insertion order + </summary> + <remarks> + This implementation preserves insertion order of keys and elements within each <see + cref="T:System.Collections.Generic.IEnumerable`1"/>. Copied and modified from + <c><a href="https://github.com/dotnet/runtime/blob/v7.0.0/src/libraries/System.Linq/src/System/Linq/Lookup.cs">Lookup.cs</a></c> + </remarks> + </member> + <member name="T:MoreLinq.IExtremaEnumerable`1"> + <summary> + Exposes the enumerator, which supports iteration over a sequence of + some extremum property (maximum or minimum) of a specified type. + </summary> + <typeparam name="T">The type of objects to enumerate.</typeparam> + </member> + <member name="M:MoreLinq.IExtremaEnumerable`1.Take(System.Int32)"> + <summary> + Returns a specified number of contiguous elements from the start of + the sequence. + </summary> + <param name="count">The number of elements to return.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains the specified number + of elements from the start of the input sequence. + </returns> + </member> + <member name="M:MoreLinq.IExtremaEnumerable`1.TakeLast(System.Int32)"> + <summary> + Returns a specified number of contiguous elements at the end of the + sequence. + </summary> + <param name="count">The number of elements to return.</param> + <returns> + An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains the specified number + of elements at the end of the input sequence. + </returns> + </member> + <member name="T:MoreLinq.OrderByDirection"> + <summary> + Enumeration that defines values representing valid ordering directions for a sequence. + </summary> + </member> + <member name="F:MoreLinq.OrderByDirection.Ascending"> + <summary> + Elements are ordered by increasing value + </summary> + </member> + <member name="F:MoreLinq.OrderByDirection.Descending"> + <summary> + Elements are ordered by decreasing value + </summary> + </member> + <member name="T:MoreLinq.PendNode`1"> + <summary> + Prepend-Append node is a single linked-list of the discriminated union + of an item to prepend, an item to append and the source. + </summary> + </member> + <member name="T:MoreLinq.Reactive.Observable"> + <summary> + Provides a set of static methods for writing in-memory queries over observable sequences. + </summary> + </member> + <member name="M:MoreLinq.Reactive.Observable.Subscribe``1(System.IObservable{``0},System.Action{``0},System.Action{System.Exception},System.Action)"> + <summary> + Subscribes an element handler and a completion handler to an + observable sequence. + </summary> + <typeparam name="T">Type of elements in <paramref name="source"/>.</typeparam> + <param name="source">Observable sequence to subscribe to.</param> + <param name="onNext"> + Action to invoke for each element in <paramref name="source"/>.</param> + <param name="onError"> + Action to invoke upon exceptional termination of the + <paramref name="source"/>.</param> + <param name="onCompleted"> + Action to invoke upon graceful termination of <paramref name="source"/>.</param> + <returns>The subscription, which when disposed, will unsubscribe + from <paramref name="source"/>.</returns> + </member> + <member name="T:MoreLinq.SequenceException"> + <summary> + The exception that is thrown for a sequence that fails a condition. + </summary> + </member> + <member name="M:MoreLinq.SequenceException.#ctor"> + <summary> + Initializes a new instance of the <see cref="T:MoreLinq.SequenceException"/> class. + </summary> + </member> + <member name="M:MoreLinq.SequenceException.#ctor(System.String)"> + <summary> + Initializes a new instance of the <see cref="T:MoreLinq.SequenceException"/> class + with a given error message. + </summary> + <param name="message">A message that describes the error.</param> + </member> + <member name="M:MoreLinq.SequenceException.#ctor(System.String,System.Exception)"> + <summary> + Initializes a new instance of the <see cref="T:MoreLinq.SequenceException"/> class + with a given error message and a reference to the inner exception + that is the cause of the exception. + </summary> + <param name="message">A message that describes the error.</param> + <param name="innerException">The exception that is the cause of the current exception.</param> + </member> + <member name="M:MoreLinq.SequenceException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)"> + <summary> + Initializes a new instance of the <see cref="T:MoreLinq.SequenceException"/> class + with serialized data. + </summary> + <param name="info">The object that holds the serialized object data.</param> + <param name="context">The contextual information about the source or destination.</param> + </member> + <member name="T:MoreLinq.UnreachableException"> + <summary> + Exception thrown when the program executes an instruction that was thought to be unreachable. + </summary> + </member> + <member name="T:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute"> + <summary> + Specifies that the method or property will ensure that the listed field and property members have not-null values. + </summary> + </member> + <member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.#ctor(System.String)"> + <summary> + Initializes the attribute with a field or property member. + </summary> + <param name="member">The field or property member that is promised to be not-null.</param> + </member> + <member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.#ctor(System.String[])"> + <summary> + Initializes the attribute with the list of field and property members. + </summary> + <param name="members">The list of field and property members that are promised to be not-null.</param> + </member> + <member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.Members"> + <summary> + Gets field or property member names. + </summary> + </member> + <member name="T:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute"> + <summary> + Specifies that the method or property will ensure that the listed field and property + members have not-null values when returning with the specified return value condition. + </summary> + </member> + <member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.#ctor(System.Boolean,System.String)"> + <summary> + Initializes the attribute with the specified return value condition and a field or property member. + </summary> + <param name="returnValue">The return value condition. If the method returns this value, the associated parameter will not be null.</param> + <param name="member">The field or property member that is promised to be not-null.</param> + </member> + <member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.#ctor(System.Boolean,System.String[])"> + <summary> + Initializes the attribute with the specified return value condition and list of field and property members. + </summary> + <param name="returnValue">The return value condition. If the method returns this value, the associated parameter will not be null.</param> + <param name="members">The list of field and property members that are promised to be not-null.</param> + </member> + <member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.ReturnValue"> + <summary> + Gets the return value condition. + </summary> + </member> + <member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.Members"> + <summary> + Gets field or property member names. + </summary> + </member> + <member name="T:System.Diagnostics.CodeAnalysis.SetsRequiredMembersAttribute"> + <summary> + Specifies that this constructor sets all required members for the current type, + and callers do not need to set any required members themselves. + </summary> + </member> + <member name="T:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute"> + <summary> + Specifies the syntax used in a string. + </summary> + </member> + <member name="M:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.#ctor(System.String)"> + <summary> + Initializes the <see cref="T:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute"/> with the identifier of the syntax used. + </summary> + <param name="syntax">The syntax identifier.</param> + </member> + <member name="M:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.#ctor(System.String,System.Object[])"> + <summary>Initializes the <see cref="T:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute"/> with the identifier of the syntax used.</summary> + <param name="syntax">The syntax identifier.</param> + <param name="arguments">Optional arguments associated with the specific syntax employed.</param> + </member> + <member name="P:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Syntax"> + <summary>Gets the identifier of the syntax used.</summary> + </member> + <member name="P:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Arguments"> + <summary>Optional arguments associated with the specific syntax employed.</summary> + </member> + <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.CompositeFormat"> + <summary>The syntax identifier for strings containing composite formats for string formatting.</summary> + </member> + <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.DateOnlyFormat"> + <summary>The syntax identifier for strings containing date format specifiers.</summary> + </member> + <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.DateTimeFormat"> + <summary>The syntax identifier for strings containing date and time format specifiers.</summary> + </member> + <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.EnumFormat"> + <summary>The syntax identifier for strings containing <see cref="T:System.Enum"/> format specifiers.</summary> + </member> + <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.GuidFormat"> + <summary>The syntax identifier for strings containing <see cref="T:System.Guid"/> format specifiers.</summary> + </member> + <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Json"> + <summary>The syntax identifier for strings containing JavaScript Object Notation (JSON).</summary> + </member> + <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.NumericFormat"> + <summary>The syntax identifier for strings containing numeric format specifiers.</summary> + </member> + <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Regex"> + <summary>The syntax identifier for strings containing regular expressions.</summary> + </member> + <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.TimeOnlyFormat"> + <summary>The syntax identifier for strings containing time format specifiers.</summary> + </member> + <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.TimeSpanFormat"> + <summary>The syntax identifier for strings containing <see cref="T:System.TimeSpan"/> format specifiers.</summary> + </member> + <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Uri"> + <summary>The syntax identifier for strings containing URIs.</summary> + </member> + <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Xml"> + <summary>The syntax identifier for strings containing XML.</summary> + </member> + <member name="T:System.Diagnostics.CodeAnalysis.UnscopedRefAttribute"> + <summary> + Used to indicate a byref escapes and is not scoped. + </summary> + <remarks> + <para> + There are several cases where the C# compiler treats a <see langword="ref"/> as implicitly + <see langword="scoped"/> - where the compiler does not allow the <see langword="ref"/> to escape the method. + </para> + <para> + For example: + <list type="number"> + <item><see langword="this"/> for <see langword="struct"/> instance methods.</item> + <item><see langword="ref"/> parameters that refer to <see langword="ref"/> <see langword="struct"/> types.</item> + <item><see langword="out"/> parameters.</item> + </list> + </para> + <para> + This attribute is used in those instances where the <see langword="ref"/> should be allowed to escape. + </para> + <para> + Applying this attribute, in any form, has impact on consumers of the applicable API. It is necessary for + API authors to understand the lifetime implications of applying this attribute and how it may impact their users. + </para> + </remarks> + </member> + <member name="T:System.Runtime.CompilerServices.CallerArgumentExpressionAttribute"> + <summary> + An attribute that allows parameters to receive the expression of other parameters. + </summary> + </member> + <member name="M:System.Runtime.CompilerServices.CallerArgumentExpressionAttribute.#ctor(System.String)"> + <summary> + Initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.CallerArgumentExpressionAttribute"/> class. + </summary> + <param name="parameterName">The condition parameter value.</param> + </member> + <member name="P:System.Runtime.CompilerServices.CallerArgumentExpressionAttribute.ParameterName"> + <summary> + Gets the parameter name the expression is retrieved from. + </summary> + </member> + <member name="T:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute"> + <summary> + Indicates that compiler support for a particular feature is required for the location where this attribute is applied. + </summary> + </member> + <member name="M:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.#ctor(System.String)"> + <summary> + Creates a new instance of the <see cref="T:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute"/> type. + </summary> + <param name="featureName">The name of the feature to indicate.</param> + </member> + <member name="P:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.FeatureName"> + <summary> + The name of the compiler feature. + </summary> + </member> + <member name="P:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.IsOptional"> + <summary> + If true, the compiler can choose to allow access to the location where this attribute is applied if it does not understand <see cref="P:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.FeatureName"/>. + </summary> + </member> + <member name="F:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.RefStructs"> + <summary> + The <see cref="P:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.FeatureName"/> used for the ref structs C# feature. + </summary> + </member> + <member name="F:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.RequiredMembers"> + <summary> + The <see cref="P:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.FeatureName"/> used for the required members C# feature. + </summary> + </member> + <member name="T:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute"> + <summary> + Indicates which arguments to a method involving an interpolated string handler should be passed to that handler. + </summary> + </member> + <member name="M:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute.#ctor(System.String)"> + <summary> + Initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute"/> class. + </summary> + <param name="argument">The name of the argument that should be passed to the handler.</param> + <remarks><see langword="null"/> may be used as the name of the receiver in an instance method.</remarks> + </member> + <member name="M:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute.#ctor(System.String[])"> + <summary> + Initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute"/> class. + </summary> + <param name="arguments">The names of the arguments that should be passed to the handler.</param> + <remarks><see langword="null"/> may be used as the name of the receiver in an instance method.</remarks> + </member> + <member name="P:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute.Arguments"> + <summary> + Gets the names of the arguments that should be passed to the handler. + </summary> + <remarks><see langword="null"/> may be used as the name of the receiver in an instance method.</remarks> + </member> + <member name="T:System.Runtime.CompilerServices.InterpolatedStringHandlerAttribute"> + <summary> + Indicates the attributed type is to be used as an interpolated string handler. + </summary> + </member> + <member name="T:System.Runtime.CompilerServices.IsExternalInit"> + <summary> + Reserved to be used by the compiler for tracking metadata. + This class should not be used by developers in source code. + </summary> + </member> + <member name="T:System.Runtime.CompilerServices.ModuleInitializerAttribute"> + <summary> + Used to indicate to the compiler that a method should be called + in its containing module's initializer. + </summary> + <remarks> + When one or more valid methods + with this attribute are found in a compilation, the compiler will + emit a module initializer which calls each of the attributed methods. + + Certain requirements are imposed on any method targeted with this attribute: + - The method must be `static`. + - The method must be an ordinary member method, as opposed to a property accessor, constructor, local function, etc. + - The method must be parameterless. + - The method must return `void`. + - The method must not be generic or be contained in a generic type. + - The method's effective accessibility must be `internal` or `public`. + + The specification for module initializers in the .NET runtime can be found here: + https://github.com/dotnet/runtime/blob/main/docs/design/specs/Ecma-335-Augments.md#module-initializer + </remarks> + </member> + <member name="T:System.Runtime.CompilerServices.RequiredMemberAttribute"> + <summary> + Specifies that a type has required members or that a member is required. + </summary> + </member> + <member name="T:System.Runtime.CompilerServices.SkipLocalsInitAttribute"> + <summary> + Used to indicate to the compiler that the <c>.locals init</c> flag should not be set in method headers. + </summary> + </member> + <member name="M:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute.#ctor"> + <summary> + Initializes a new instance of the <see cref="T:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute"/> class. + </summary> + </member> + <member name="M:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute.#ctor(System.String)"> + <summary> + Initializes a new instance of the <see cref="T:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute"/> class with the specified message. + </summary> + <param name="message">An optional message associated with this attribute instance.</param> + </member> + <member name="P:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute.Message"> + <summary> + Returns the optional message associated with this attribute instance. + </summary> + </member> + <member name="P:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute.Url"> + <summary> + Returns the optional URL associated with this attribute instance. + </summary> + </member> + </members> +</doc> diff --git a/Assets/Packages/morelinq.3.4.2/lib/netstandard2.1/MoreLinq.xml.meta b/Assets/Packages/morelinq.3.4.2/lib/netstandard2.1/MoreLinq.xml.meta new file mode 100644 index 0000000000000000000000000000000000000000..aad815d9d1ffcdaaeb939fb9381627a4c9000062 --- /dev/null +++ b/Assets/Packages/morelinq.3.4.2/lib/netstandard2.1/MoreLinq.xml.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 254d1481ea9fe27418aa0f92557d346e +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Packages/morelinq.3.4.2/morelinq.3.4.2.nupkg b/Assets/Packages/morelinq.3.4.2/morelinq.3.4.2.nupkg new file mode 100644 index 0000000000000000000000000000000000000000..cc2cc11e029a1da4c3211ca94ba034b65ad243e5 Binary files /dev/null and b/Assets/Packages/morelinq.3.4.2/morelinq.3.4.2.nupkg differ diff --git a/Assets/Packages/morelinq.3.4.2/morelinq.3.4.2.nupkg.meta b/Assets/Packages/morelinq.3.4.2/morelinq.3.4.2.nupkg.meta new file mode 100644 index 0000000000000000000000000000000000000000..566f2097f8fac87b52e21cea834a43a418c33651 --- /dev/null +++ b/Assets/Packages/morelinq.3.4.2/morelinq.3.4.2.nupkg.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 76bb6f26c5b24c347b9698ab410378cb +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Prefabs/UI/Facts/Factscreen.prefab b/Assets/Resources/Prefabs/UI/Facts/Factscreen.prefab index fbc5fb7ed8a76d029d5fb7fcbbb5de53343aac64..87f95c88f885d8c5799e703c8bd943393104f09b 100644 --- a/Assets/Resources/Prefabs/UI/Facts/Factscreen.prefab +++ b/Assets/Resources/Prefabs/UI/Facts/Factscreen.prefab @@ -324,48 +324,56 @@ MonoBehaviour: factscreenContent: {fileID: 4838871000058222821} factSpotPrefab: {fileID: 7124463502404826001, guid: 04d12e0a0a5aa884c8c7dff56f4963f6, type: 3} - prefab_Point: {fileID: 858001163752551619, guid: f019e9f67e8dab947bc60028223b6cec, - type: 3} - prefab_Distance: {fileID: 4221381813544557775, guid: 8106c748f1aeb084d87fdc71dd009b67, - type: 3} - prefab_Angle: {fileID: 6643637775379894484, guid: 30fcd362f34a9844fba66065924c6143, - type: 3} - prefab_Default: {fileID: 858001163752551619, guid: f019e9f67e8dab947bc60028223b6cec, - type: 3} - prefab_OnLine: {fileID: 6050914136827205310, guid: 496d04605465c7f4dba7638cc6e2dc6e, - type: 3} - prefab_Line: {fileID: 7510387096843212865, guid: d6ee990520a44954fb494468665d19e9, - type: 3} - prefab_ParallelLineFact: {fileID: 7510387096843212865, guid: 9f086cfbfeb0dfd46af67395aa17aafa, - type: 3} - prefab_RectangleFact: {fileID: 8156936215466465834, guid: b6f35afcaff5d8a40bf8f792eb3299e6, - type: 3} - prefab_RadiusFact: {fileID: 2513701074329712390, guid: 5b54aca5b2f2bfa48968656ed3bea181, - type: 3} - prefab_AreaCircle: {fileID: 7016901710118546043, guid: 210f1e1acf16abf40a39587074c4d25a, - type: 3} - prefab_ConeVolume: {fileID: 2523593828849809055, guid: 992edeb4264d0fa49b0f9b35b9ab85ce, - type: 3} - prefab_OrthogonalCircleLine: {fileID: 8554350198830106250, guid: 9ce7444f588cd054989126eaff75c5f3, - type: 3} - prefab_TruncatedConeVolume: {fileID: 4123133807278660472, guid: 9d0019fa4b5725a49bdfc78c4d67661e, - type: 3} - prefab_RightAngle: {fileID: 3080888058940174091, guid: 389563c758e86d848b3341576b90b7e4, - type: 3} - prefab_CylinderVolume: {fileID: 5287418535931939099, guid: 30d09e8685950994893b3b6388a8906c, - type: 3} - prefab_EqualFact: {fileID: 7523305359074541435, guid: 5f461930be2eb074193dc12eb60e10b2, - type: 3} - prefab_UnEqualFact: {fileID: 5769925203401971992, guid: 047cd3a517f781846a1f983394b4bb7b, - type: 3} - prefab_CircleFact: {fileID: 6636443472981757786, guid: 9d08fd45bc83c7c42a9be42f5309c6c2, - type: 3} - prefab_OnCircleFact: {fileID: 2115817999818309900, guid: df93bd4d977e4ab42a626f7bd06596d6, - type: 3} - prefab_AngleCircleLineFact: {fileID: 4902928549420802332, guid: 62cec72d28de59d4c8ae782957cc10a1, - type: 3} - prefab_TestFact: {fileID: 2846439484187545958, guid: 5dc76e187eae4214697491bfb42773e8, - type: 3} + PrefabtTypeReadonly: + - AbstractLineFact + - AbstractLineFactWrappedCRTP`1[T] + - AngleCircleLineFact + - AngleFact + - AreaCircleFact + - CircleFact + - ConeVolumeFact + - CylinderVolumeFact + - EqualCirclesFact + - Fact + - FactWrappedCRTP`1[T] + - FunctionFact`2[T0,TResult] + - LineFact + - OnCircleFact + - OnLineFact + - OrthogonalCircleLineFact + - ParallelLineFact + - PointFact + - RadiusFact + - RayFact + - RightAngleFact + - TestFact + - TruncatedConeVolumeFact + - UnEqualCirclesFact + PrefabDataConfig: + - {fileID: 7510387096843212865, guid: d6ee990520a44954fb494468665d19e9, type: 3} + - {fileID: 7510387096843212865, guid: d6ee990520a44954fb494468665d19e9, type: 3} + - {fileID: 4902928549420802332, guid: 62cec72d28de59d4c8ae782957cc10a1, type: 3} + - {fileID: 6643637775379894484, guid: 30fcd362f34a9844fba66065924c6143, type: 3} + - {fileID: 7016901710118546043, guid: 210f1e1acf16abf40a39587074c4d25a, type: 3} + - {fileID: 6636443472981757786, guid: 9d08fd45bc83c7c42a9be42f5309c6c2, type: 3} + - {fileID: 2523593828849809055, guid: 992edeb4264d0fa49b0f9b35b9ab85ce, type: 3} + - {fileID: 5287418535931939099, guid: 30d09e8685950994893b3b6388a8906c, type: 3} + - {fileID: 7523305359074541435, guid: 5f461930be2eb074193dc12eb60e10b2, type: 3} + - {fileID: 2846439484187545958, guid: 5dc76e187eae4214697491bfb42773e8, type: 3} + - {fileID: 2846439484187545958, guid: 5dc76e187eae4214697491bfb42773e8, type: 3} + - {fileID: 2846439484187545958, guid: 5dc76e187eae4214697491bfb42773e8, type: 3} + - {fileID: 4221381813544557775, guid: 8106c748f1aeb084d87fdc71dd009b67, type: 3} + - {fileID: 2115817999818309900, guid: df93bd4d977e4ab42a626f7bd06596d6, type: 3} + - {fileID: 6050914136827205310, guid: 496d04605465c7f4dba7638cc6e2dc6e, type: 3} + - {fileID: 8554350198830106250, guid: 9ce7444f588cd054989126eaff75c5f3, type: 3} + - {fileID: 7510387096843212865, guid: 9f086cfbfeb0dfd46af67395aa17aafa, type: 3} + - {fileID: 858001163752551619, guid: f019e9f67e8dab947bc60028223b6cec, type: 3} + - {fileID: 2513701074329712390, guid: 5b54aca5b2f2bfa48968656ed3bea181, type: 3} + - {fileID: 7510387096843212865, guid: d6ee990520a44954fb494468665d19e9, type: 3} + - {fileID: 3080888058940174091, guid: 389563c758e86d848b3341576b90b7e4, type: 3} + - {fileID: 2846439484187545958, guid: 5dc76e187eae4214697491bfb42773e8, type: 3} + - {fileID: 4123133807278660472, guid: 9d0019fa4b5725a49bdfc78c4d67661e, type: 3} + - {fileID: 5769925203401971992, guid: 047cd3a517f781846a1f983394b4bb7b, type: 3} --- !u!1 &4600560360496770457 GameObject: m_ObjectHideFlags: 0 @@ -477,7 +485,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: -26820} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 1} --- !u!114 &8823539307371861913 diff --git a/Assets/Scenes/Worlds/RiverWorld.unity b/Assets/Scenes/Worlds/RiverWorld.unity index b0e3784d9ebd36ea3e790ef30c19862b21118fee..98b8c09e3bee42b3227b479e01e14acac13cf2df 100644 --- a/Assets/Scenes/Worlds/RiverWorld.unity +++ b/Assets/Scenes/Worlds/RiverWorld.unity @@ -38,7 +38,7 @@ RenderSettings: m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} - m_IndirectSpecularColor: {r: 0.4410865, g: 0.48984045, b: 0.5699203, a: 1} + m_IndirectSpecularColor: {r: 0.44100717, g: 0.4898312, b: 0.5698877, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: @@ -3870,7 +3870,7 @@ Mesh: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: pb_Mesh79004 + m_Name: pb_Mesh26262 serializedVersion: 10 m_SubMeshes: - serializedVersion: 2 @@ -15674,6 +15674,7 @@ Transform: m_ConstrainProportionsScale: 0 m_Children: - {fileID: 117995034} + - {fileID: 1969802978} m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -39556,6 +39557,11 @@ PrefabInstance: propertyPath: m_IsActive value: 1 objectReference: {fileID: 0} + - target: {fileID: 138451363481385448, guid: caf448c160a07214f8cf74da91506980, + type: 3} + propertyPath: m_AnchoredPosition.y + value: -0.000061035156 + objectReference: {fileID: 0} - target: {fileID: 176107170605012170, guid: caf448c160a07214f8cf74da91506980, type: 3} propertyPath: m_AnchorMax.y @@ -39719,7 +39725,7 @@ PrefabInstance: - target: {fileID: 1884886062868963456, guid: caf448c160a07214f8cf74da91506980, type: 3} propertyPath: m_AnchoredPosition.y - value: 2.999939 + value: 3 objectReference: {fileID: 0} - target: {fileID: 1898191558618400828, guid: caf448c160a07214f8cf74da91506980, type: 3} @@ -40576,6 +40582,11 @@ PrefabInstance: propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} + - target: {fileID: 8844380286665921678, guid: caf448c160a07214f8cf74da91506980, + type: 3} + propertyPath: m_AnchoredPosition.y + value: -0.000061035156 + objectReference: {fileID: 0} - target: {fileID: 9129805130208836062, guid: caf448c160a07214f8cf74da91506980, type: 3} propertyPath: m_PresetInfoIsWorld @@ -55487,6 +55498,134 @@ Transform: type: 3} m_PrefabInstance: {fileID: 1967470652} m_PrefabAsset: {fileID: 0} +--- !u!1 &1969802977 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1969802978} + - component: {fileID: 1969802982} + - component: {fileID: 1969802981} + - component: {fileID: 1969802980} + - component: {fileID: 1969802979} + - component: {fileID: 1969802983} + m_Layer: 0 + m_Name: Ball + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &1969802978 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1969802977} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 12.003, y: 1.871, z: -7.259} + m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 642235746} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!54 &1969802979 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1969802977} + serializedVersion: 2 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_UseGravity: 1 + m_IsKinematic: 1 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!135 &1969802980 +SphereCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1969802977} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.5 + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1969802981 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1969802977} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1969802982 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1969802977} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!114 &1969802983 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1969802977} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 04a4ac0a27312d04787dc2494b7aa690, type: 3} + m_Name: + m_EditorClassIdentifier: + repeat: 1 --- !u!1001 &1970241703 PrefabInstance: m_ObjectHideFlags: 0 @@ -61733,6 +61872,11 @@ PrefabInstance: propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} + - target: {fileID: 5570756160813794731, guid: b07552db700124a4680401e6fb94c186, + type: 3} + propertyPath: modfire + value: mod+fire + objectReference: {fileID: 0} - target: {fileID: 5635130245654377298, guid: b07552db700124a4680401e6fb94c186, type: 3} propertyPath: m_AnchorMax.y diff --git a/Assets/Scripts/GenerateDemoFiles.cs b/Assets/Scripts/GenerateDemoFiles.cs index 7e2bdd0ee7cc91b6b26a464ac3fe04a0b3d35434..ccdc04e7ba13bf9fa4a79451d3f241a7fb730af0 100644 --- a/Assets/Scripts/GenerateDemoFiles.cs +++ b/Assets/Scripts/GenerateDemoFiles.cs @@ -2,14 +2,20 @@ using System.Collections.Generic; using UnityEngine; using static CommunicationEvents; +using static UnityEditor.PlayerSettings; +using static CanonBallProblemCalculator; +using Unity.Mathematics; +using System; public class GenerateDemoFiles { static bool firstcall = true; + public static void GenerateAll() { if (!firstcall) return; - if (GameObject.FindObjectOfType<GadgetBehaviour>(true) == null) { + if (GameObject.FindObjectOfType<GadgetBehaviour>(true) == null) + { Debug.LogError("Cannot GenerateDemoFiles without populated GadgetManager"); return; } @@ -19,6 +25,7 @@ public static void GenerateAll() GenerateTreeStage(); GenerateRiverStage(); + GenerateCanonBallStage(); } public static void GenerateTreeStage() @@ -27,17 +34,15 @@ public static void GenerateTreeStage() float minimalSolutionHight = 6; // Generate Stage - // TODO? use constructor Stage demo = new Stage - { - number = 1, - category = "Demo Category", - name = "TechDemo A", - scene = "RiverWorld", - description = "Tree Stage", - use_install_folder = true, - //hierarchie = new List<Directories> { /*Directories.Stages*/ } - }; + ( + number: 1, + category: "Demo Category", + name: "TechDemo A", + scene: "RiverWorld", + description: "Tree Stage", + local: false + ); // needed to generate facts StageStatic.StageOfficial = new Dictionary<string, Stage> @@ -77,17 +82,15 @@ public static void GenerateRiverStage() float minimalSolutionHight = 6; // Generate Stage - // TODO? use constructor Stage demo = new Stage - { - number = 2, - category = "Demo Category", - name = "TechDemo B", - scene = "RiverWorld", - description = "River Stage", - use_install_folder = true, - //hierarchie = new List<Directories> { /*Directories.Stages*/ } - }; + ( + number: 2, + category: "Demo Category", + name: "TechDemo B", + scene: "RiverWorld", + description: "River Stage", + local: false + ); // needed to generate facts StageStatic.StageOfficial = new Dictionary<string, Stage> @@ -123,4 +126,126 @@ public static void GenerateRiverStage() StageStatic.SetMode(StageStatic.Mode.Create); StageStatic.stage.store(false, true); } + + public static void GenerateCanonBallStage() + { + // Params //List<Wall> walls, T starPos, T starVec, T gravity, int dimension + int + dim_const = 0, + dim_A = 2, + dim_B = 1; + + float Py_factor = 0.04905f; // 2f / 100f; + + float2 StartPos_py = new(380, 300); + float2 StartVec_py = new(-490, 150); + float2 Gravity_py = new(0, -200); + + (int x, int y, int width, int angle_deg, double bounce)[] PythonParams = { + (250, 0, 50, 0, 2.0 ), + (0, 0, 400, 90, 0.9 ), + (400, 0, 400, 90, 0.9), + (0, 400, 400, 0, 0.9), + (50, 200, 100, 45, 1), + (150, 100, 50, 0, 0.9), + (200, 200, 100, 120, 0.9), + (300, 300, 80, 150, 0.9), + (300, 100, 100, 30, 0.8), + (50, 50, 100, 60, 0.9), + (300, 0, 100, 0, 0.4), + (0, 0, 250, 0, 0.1), + }; + + //Parse PythonParams + Vector3 + StartPos = Vector3.zero, + StartVec = Vector3.zero, + Gravity = Vector3.zero; + + StartPos[dim_A] = StartPos_py[0] * Py_factor; + StartPos[dim_B] = StartPos_py[1] * Py_factor; + StartVec[dim_A] = StartVec_py[0] * Py_factor; + StartVec[dim_B] = StartVec_py[1] * Py_factor; + Gravity[dim_A] = Gravity_py[0] * Py_factor; + Gravity[dim_B] = Gravity_py[1] * Py_factor; + + float[,,] Wall_parameter = new float[PythonParams.Length, 2, 2]; + float[] Bounce_parameter = new float[PythonParams.Length]; + for (uint i = 0; i < PythonParams.Length; i++) + { + Wall_parameter[i, 0, 0] = Py_factor * (PythonParams[i].x); + Wall_parameter[i, 0, 1] = Py_factor * (PythonParams[i].y); + + Wall_parameter[i, 1, 0] = Py_factor * (PythonParams[i].x + PythonParams[i].width * Mathf.Cos(MathfExtensions.ToRadians(PythonParams[i].angle_deg))); + Wall_parameter[i, 1, 1] = Py_factor * (PythonParams[i].y + PythonParams[i].width * Mathf.Sin(MathfExtensions.ToRadians(PythonParams[i].angle_deg))); + + Bounce_parameter[i] = (float)PythonParams[i].bounce; + } + + // Generate Stage + Stage demo = new Stage + ( + number: 2, + category: "Demo Category", + name: "CanonBall A", + scene: "RiverWorld", + description: "CanonBall Test", + local: false + ); + + // needed to generate facts + StageStatic.StageOfficial = new Dictionary<string, Stage> + { + { demo.name, demo }, + }; + StageStatic.SetStage(demo.name, false); + + // Populate Solution + List<Wall> Walls = new(); + for (int i = 0; i < PythonParams.Length; i++) + { + Vector3 tmpVec = Vector3.zero; + + tmpVec[dim_A] = Wall_parameter[i, 0, 0]; + tmpVec[dim_B] = Wall_parameter[i, 0, 1]; + PointFact topA = new(tmpVec, Vector3.up, StageStatic.stage.solution); + string topAURI = StageStatic.stage.solution.Add(topA, out _, false, null, null); + + tmpVec[dim_A] = Wall_parameter[i, 1, 0]; + tmpVec[dim_B] = Wall_parameter[i, 1, 1]; + PointFact topB = new(tmpVec, Vector3.up, StageStatic.stage.solution); + string topBURI = StageStatic.stage.solution.Add(topB, out _, true, null, null); + + LineFact topology = new LineFact(topAURI, topBURI, StageStatic.stage.solution); + StageStatic.stage.solution.Add(topology, out _, true, null, null); + + Walls.Add(new(topology, Bounce_parameter[i])); + } + + // Set Solution + string BallURI = StageStatic.stage.solution.Add( + new PointFact(StartPos, Vector3.up, StageStatic.stage.solution), + out _, false, null, null); + + List<FunctionFact<float, Vector3>> targetfunc = new CanonBallProblemCalculator(Walls, StartPos, StartVec, Gravity, dim_const, dim_A, dim_B, StageStatic.stage.solution).Compute(); + foreach (var func in targetfunc) + StageStatic.stage.solution.Add(func, out _, true, null, null); + + //TODO: save as omdoc + // ball + attach funcs + cheat + generate demo button? + //StageStatic.stage.solution.ValidationSet = + // new List<SolutionOrganizer.SubSolution> { + // new SolutionOrganizer.SubSolution(new HashSet<string> { target_Id }, null, null, new LineFactHightDirectionComparer()), + // new SolutionOrganizer.SubSolution(new HashSet<string> { target_Id }, null, null, new LineSpanningOverRiverWorldComparer()), + // new SolutionOrganizer.SubSolution(null, new List<int> { 1 }, new List<int> { 0 }, new LineFactHightComparer()), + // }; + + // Set Gadgets/ Scrolls + StageStatic.stage.AllowedGadgets = null; + StageStatic.stage.AllowedScrolls = null; + + // Save + StageStatic.SetMode(StageStatic.Mode.Create); + StageStatic.stage.store(false, true); + } } diff --git a/Assets/Scripts/InteractionEngine/FactHandling/AbstractLineFact.cs b/Assets/Scripts/InteractionEngine/FactHandling/AbstractLineFact.cs new file mode 100644 index 0000000000000000000000000000000000000000..31246639c9ba9239df773583186ce68394716f4f --- /dev/null +++ b/Assets/Scripts/InteractionEngine/FactHandling/AbstractLineFact.cs @@ -0,0 +1,332 @@ +using Newtonsoft.Json; +using System.Collections.Generic; +using TMPro; +using UnityEngine; +using static JSONManager; + +/// <summary> +/// Base-class for 1D-Facts +/// </summary> +public abstract class AbstractLineFact : FactWrappedCRTP<AbstractLineFact> +{ + /// @{ <summary> + /// One <see cref="Fact.Id">Id</see> of two <see cref="PointFact"/> defining <see cref="Dir"/>. + /// </summary> + public string Pid1, Pid2; + /// @} + + /// <summary> + /// Normalized Direction from <see cref="Pid1"/> to <see cref="Pid2"/>. + /// </summary> + public Vector3 Dir; + + /// <summary> + /// \copydoc Fact.Fact() + /// </summary> + protected AbstractLineFact() : base() + { + Pid1 = null; + Pid2 = null; + Dir = Vector3.zero; + } + + /// <summary> + /// Copies <paramref name="fact"/> by initiating new MMT %Fact. + /// </summary> + /// <param name="fact">Fact to be copied</param> + /// <param name="old_to_new"><c>Dictionary</c> mapping <paramref name="fact"/>.<see cref="getDependentFactIds"/> in <paramref name="fact"/>.<see cref="Fact._Facts"/> to corresponding <see cref="Fact.Id"/> in <paramref name="organizer"/> </param> + /// <param name="organizer">sets <see cref="_Facts"/></param> + protected AbstractLineFact(AbstractLineFact fact, Dictionary<string, string> old_to_new, FactOrganizer organizer) : base(fact, organizer) + { + set_public_members(old_to_new[fact.Pid1], old_to_new[fact.Pid2]); + } + + /// <summary> + /// Standard Constructor + /// </summary> + /// <param name="pid1">sets <see cref="AbstractLineFact.Pid1"/></param> + /// <param name="pid2">sets <see cref="AbstractLineFact.Pid2"/></param> + /// <param name="organizer">sets <see cref="Fact._Facts"/></param> + protected AbstractLineFact(string pid1, string pid2, FactOrganizer organizer) : base(organizer) + { + set_public_members(pid1, pid2); + } + + /// <summary> + /// Bypasses initialization of new MMT %Fact by using existend URI, _which is not checked for existence_. + /// </summary> + /// <param name="pid1">sets <see cref="Pid1"/></param> + /// <param name="pid2">sets <see cref="Pid2"/></param> + /// <param name="backendURI">MMT URI</param> + /// <param name="organizer">sets <see cref="Fact._Facts"/></param> + protected AbstractLineFact(string pid1, string pid2, string backendURI, FactOrganizer organizer) : base(organizer) + { + set_public_members(pid1, pid2); + this._URI = backendURI; + } + + /// <summary> + /// Initiates <see cref="Pid1"/>, <see cref="Pid2"/>, <see cref="Dir"/> + /// </summary> + /// <param name="pid1">sets <see cref="Pid1"/></param> + /// <param name="pid2">sets <see cref="Pid2"/></param> + private void set_public_members(string pid1, string pid2) + { + this.Pid1 = pid1; + this.Pid2 = pid2; + PointFact pf1 = _Facts[pid1] as PointFact; + PointFact pf2 = _Facts[pid2] as PointFact; + this.Dir = (pf2.Point - pf1.Point).normalized; + } + + /// \copydoc Fact.hasDependentFacts + public override bool hasDependentFacts() + { + return true; + } + + /// \copydoc Fact.getDependentFactIds + public override string[] getDependentFactIds() + { + return new string[] { Pid1, Pid2 }; + } + + /// \copydoc Fact.GetHashCode + public override int GetHashCode() + { + return this.Pid1.GetHashCode() ^ this.Pid2.GetHashCode(); + } +} + +/// <summary> +/// Implements CRTP for <see cref="AbstractLineFact"/>; Escalates constructors; +/// </summary> +/// <typeparam name="T">class, which inherits from AbstractLineFactWrappedCRTP</typeparam> +public abstract class AbstractLineFactWrappedCRTP<T> : AbstractLineFact where T : AbstractLineFactWrappedCRTP<T> +{ + /// <summary>\copydoc Fact.Fact</summary> + protected AbstractLineFactWrappedCRTP() : base() { } + + /// <summary>\copydoc AbstractLineFact.AbstractLineFact(AbstractLineFact, Dictionary{string, string}, FactOrganizer)</summary> + protected AbstractLineFactWrappedCRTP(AbstractLineFactWrappedCRTP<T> fact, Dictionary<string, string> old_to_new, FactOrganizer organizer) : base(fact, old_to_new, organizer) { } + + /// <summary>\copydoc AbstractLineFact.AbstractLineFact(string, string, FactOrganizer)</summary> + protected AbstractLineFactWrappedCRTP(string pid1, string pid2, FactOrganizer organizer) : base(pid1, pid2, organizer) { } + + /// <summary>\copydoc AbstractLineFact.AbstractLineFact(string, string, string, FactOrganizer)</summary> + protected AbstractLineFactWrappedCRTP(string pid1, string pid2, string backendURI, FactOrganizer organizer) : base(pid1, pid2, backendURI, organizer) { } + + /// \copydoc Fact.Equivalent(Fact, Fact) + protected override bool EquivalentWrapped(AbstractLineFact f1, AbstractLineFact f2) + => EquivalentWrapped((T)f1, (T)f2); + + /// <summary>CRTP step of <see cref="EquivalentWrapped(AbstractLineFact, AbstractLineFact)"/></summary> + protected abstract bool EquivalentWrapped(T f1, T f2); +} + +/// <summary> +/// Line within 3D Space of finite length +/// </summary> +public class LineFact : AbstractLineFactWrappedCRTP<LineFact> +{ + /// \copydoc Fact.s_type + [JsonProperty] + protected static new string s_type = "LineFact"; + + /// <summary> Distance between <see cref="AbstractLineFact.Pid1"/> and <see cref="AbstractLineFact.Pid2"/></summary> + public float Distance; + + /// <summary> \copydoc Fact.Fact </summary> + public LineFact() : base() + { + Distance = 0; + } + + /// <summary> \copydoc AbstractLineFact.AbstractLineFact(AbstractLineFact, Dictionary<string, string>, FactOrganizer) </summary> + public LineFact(LineFact fact, Dictionary<string, string> old_to_new, FactOrganizer organizer) : base(fact, old_to_new, organizer) + => init(old_to_new[fact.Pid1], old_to_new[fact.Pid2]); + + /// <summary> \copydoc AbstractLineFact.AbstractLineFact(string, string, string, FactOrganizer) </summary> + public LineFact(string pid1, string pid2, string backendURI, FactOrganizer organizer) : base(pid1, pid2, backendURI, organizer) + { + SetDistance(); + _ = this.Label; + } + + /// <summary> \copydoc AbstractLineFact.AbstractLineFact(string, string, FactOrganizer) </summary> + public LineFact(string pid1, string pid2, FactOrganizer organizer) : base(pid1, pid2, organizer) + => init(pid1, pid2); + + /// <summary> + /// Initiates <see cref="AbstractLineFact.Pid1"/>, <see cref="AbstractLineFact.Pid2"/>, <see cref="Fact._URI"/> and creates MMT %Fact Server-Side + /// </summary> + /// <param name="pid1">sets <see cref="AbstractLineFact.Pid1"/></param> + /// <param name="pid2">sets <see cref="AbstractLineFact.Pid2"/></param> + private void init(string pid1, string pid2) + { + SetDistance(); + + PointFact pf1 = _Facts[pid1] as PointFact; + PointFact pf2 = _Facts[pid2] as PointFact; + float v = (pf1.Point - pf2.Point).magnitude; + + MMTTerm lhs = + new OMA( + new OMS(MMTURIs.Metric), + new List<MMTTerm> { + new OMS(pid1), + new OMS(pid2) + } + ); + + MMTTerm valueTp = new OMS(MMTURIs.RealLit); + MMTTerm value = new OMF(v); + + MMTValueDeclaration mmtDecl = new(this.Label, lhs, valueTp, value); + AddFactResponse.sendAdd(mmtDecl, out this._URI); + } + + /// \copydoc Fact.parseFact(Scroll.ScrollFact) + public new static LineFact parseFact(Scroll.ScrollFact fact) + { + string uri = fact.@ref.uri; + string pointAUri = ((OMS)((OMA)((Scroll.ScrollValueFact)fact).lhs).arguments[0]).uri; + string pointBUri = ((OMS)((OMA)((Scroll.ScrollValueFact)fact).lhs).arguments[1]).uri; + + if (StageStatic.stage.factState.ContainsKey(pointAUri) + && StageStatic.stage.factState.ContainsKey(pointBUri)) + return new LineFact(pointAUri, pointBUri, uri, StageStatic.stage.factState); + + //If dependent facts do not exist return null + else return null; + } + + /// \copydoc Fact.generateLabel + protected override string generateLabel() + => "[" + _Facts[Pid1].Label + _Facts[Pid2].Label + "]"; + + /// \copydoc Fact.instantiateDisplay(GameObject, Transform) + public override GameObject instantiateDisplay(GameObject prefab, Transform transform) + { + var obj = GameObject.Instantiate(prefab, Vector3.zero, Quaternion.identity, transform); + obj.transform.GetChild(0).gameObject.GetComponent<TextMeshProUGUI>().text = _Facts[this.Pid1].Label; + obj.transform.GetChild(1).gameObject.GetComponent<TextMeshProUGUI>().text = _Facts[this.Pid2].Label; + obj.GetComponent<FactWrapper>().fact = this; + return obj; + } + + /// \copydoc Fact.Equivalent(Fact, Fact) + protected override bool EquivalentWrapped(LineFact f1, LineFact f2) + { + if ((f1.Pid1 == f2.Pid1 && f1.Pid2 == f2.Pid2))// || + //(f1.Pid1 == f2.Pid2 && f1.Pid2 == f2.Pid1)) + return true; + + PointFact p1f1 = (PointFact)_Facts[f1.Pid1]; + PointFact p2f1 = (PointFact)_Facts[f1.Pid2]; + PointFact p1f2 = (PointFact)_Facts[f2.Pid1]; + PointFact p2f2 = (PointFact)_Facts[f2.Pid2]; + + return (p1f1.Equivalent(p1f2) && p2f1.Equivalent(p2f2)) + ;//|| (p1f1.Equivalent(p2f2) && p2f1.Equivalent(p1f2)); + } + + /// <summary> Calculates and sets <see cref="Distance"/>; <remarks> <see cref="AbstractLineFact.Pid1"/> and <see cref="AbstractLineFact.Pid2"/> needs to be set first.</remarks></summary> + private void SetDistance() + => this.Distance = Vector3.Distance(((PointFact)_Facts[Pid1]).Point, ((PointFact)_Facts[Pid2]).Point); +} + +/// <summary> +/// Ray within 3D Space of infinite length +/// </summary> +public class RayFact : AbstractLineFactWrappedCRTP<RayFact> +{ + /// \copydoc Fact.s_type + [JsonProperty] + protected static new string s_type = "RayFact"; + + /// <summary> \copydoc Fact.Fact </summary> + public RayFact() : base() { } + + /// <summary> \copydoc AbstractLineFact.AbstractLineFact(AbstractLineFact, Dictionary<string, string>, FactOrganizer) </summary> + public RayFact(RayFact fact, Dictionary<string, string> old_to_new, FactOrganizer organizer) : base(fact, old_to_new, organizer) + => init(old_to_new[fact.Pid1], old_to_new[fact.Pid2]); + + /// <summary> \copydoc AbstractLineFact.AbstractLineFact(string, string, string, FactOrganizer) </summary> + public RayFact(string pid1, string pid2, string backendURI, FactOrganizer organizer) : base(pid1, pid2, backendURI, organizer) + => _ = this.Label; + + /// <summary> \copydoc AbstractLineFact.AbstractLineFact(string, string, FactOrganizer) </summary> + public RayFact(string pid1, string pid2, FactOrganizer organizer) : base(pid1, pid2, organizer) + => init(pid1, pid2); + + /// <summary> + /// Initiates <see cref="AbstractLineFact.Pid1"/>, <see cref="AbstractLineFact.Pid2"/>, <see cref="Fact._URI"/> and creates MMT %Fact Server-Side + /// </summary> + /// <param name="pid1">sets <see cref="AbstractLineFact.Pid1"/></param> + /// <param name="pid2">sets <see cref="AbstractLineFact.Pid2"/></param> + private void init(string pid1, string pid2) + { + MMTTerm tp = new OMS(MMTURIs.LineType); + MMTTerm df = new OMA( + new OMS(MMTURIs.LineOf), + new List<MMTTerm> { + new OMS(pid1), + new OMS(pid2) + }); + + AddFactResponse.sendAdd(new MMTSymbolDeclaration(this.Label, tp, df), out this._URI); + + ParsingDictionary.parseTermsToId[df.ToString()] = this._URI; + } + + /// \copydoc Fact.parseFact(Scroll.ScrollFact) + public new static RayFact parseFact(Scroll.ScrollFact fact) + { + string uri = fact.@ref.uri; + + if ((OMA)((Scroll.ScrollSymbolFact)fact).df == null) + return null; + + string pointAUri = ((OMS)((OMA)((Scroll.ScrollSymbolFact)fact).df).arguments[0]).uri; + string pointBUri = ((OMS)((OMA)((Scroll.ScrollSymbolFact)fact).df).arguments[1]).uri; + + if (StageStatic.stage.factState.ContainsKey(pointAUri) + && StageStatic.stage.factState.ContainsKey(pointBUri)) + return new RayFact(pointAUri, pointBUri, uri, StageStatic.stage.factState); + + //If dependent facts do not exist return null + else return null; + } + + /// \copydoc Fact.generateLabel + protected override string generateLabel() + { + // TODO this string is too large to properly depict on scrolls. + // return "]" + _Facts[Pid1].Label + _Facts[Pid2].Label + "["; + return _Facts[Pid1].Label + _Facts[Pid2].Label; + } + + /// \copydoc Fact.instantiateDisplay(GameObject, Transform) + public override GameObject instantiateDisplay(GameObject prefab, Transform transform) + { + var obj = GameObject.Instantiate(prefab, Vector3.zero, Quaternion.identity, transform); + obj.transform.GetChild(0).gameObject.GetComponent<TextMeshProUGUI>().text = this.Label; + obj.GetComponent<FactWrapper>().fact = this; + return obj; + } + + /// \copydoc Fact.Equivalent(Fact, Fact) + protected override bool EquivalentWrapped(RayFact f1, RayFact f2) + { + if (!Math3d.IsApproximatelyParallel(f1.Dir, f2.Dir)) + return false; + + PointFact p1f1 = (PointFact)_Facts[f1.Pid1]; + PointFact p1f2 = (PointFact)_Facts[f2.Pid1]; + PointFact p2f2 = (PointFact)_Facts[f2.Pid2]; + + return Math3d.IsPointApproximatelyOnLine(p1f1.Point, f1.Dir, p1f2.Point) + && Math3d.IsPointApproximatelyOnLine(p1f1.Point, f1.Dir, p2f2.Point); + } +} diff --git a/Assets/Scripts/InteractionEngine/FactHandling/AbstractLineFact.cs.meta b/Assets/Scripts/InteractionEngine/FactHandling/AbstractLineFact.cs.meta new file mode 100644 index 0000000000000000000000000000000000000000..18338673990c98a33073140928dcb71207eee5f2 --- /dev/null +++ b/Assets/Scripts/InteractionEngine/FactHandling/AbstractLineFact.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b1d98bc4e2d28a94e86af34da79e2c1e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/InteractionEngine/FactHandling/Fact.cs b/Assets/Scripts/InteractionEngine/FactHandling/Fact.cs index ab8f3ed5325b2fc56f8a25311cb414a77669566d..8399e0ae06421cdc7499a3e8dbadca8bc2a76c7e 100644 --- a/Assets/Scripts/InteractionEngine/FactHandling/Fact.cs +++ b/Assets/Scripts/InteractionEngine/FactHandling/Fact.cs @@ -9,7 +9,8 @@ using JsonSubTypes; using System.Linq.Expressions; using UnityEngine.ProBuilder; - +using System.Reflection; +using System.Linq; public class ParsingDictionary { @@ -129,7 +130,8 @@ public static bool sendAdd(string path, string body, out string uri) [JsonSubtypes.KnownSubType(typeof(EqualCirclesFact), "EqualCirclesFact")] [JsonSubtypes.KnownSubType(typeof(UnEqualCirclesFact), "UnEqualCirclesFact")] //[JsonSubtypes.KnownSubType(typeof(FunctionFact<T0, TResult>), "FunctionFact<T0, TResult>")] //TODO: generics? -[JsonSubtypes.KnownSubType(typeof(FunctionFact<float, float>), "FunctionFact<float, float>")] +[JsonSubtypes.KnownSubType(typeof(FunctionFact<float, float>), "FunctionFact<System.Single, System.Single>")] +[JsonSubtypes.KnownSubType(typeof(FunctionFact<float, Vector3>), "FunctionFact<System.Single, UnityEngine.Vector3>")] public abstract class Fact { /// <summary> @@ -139,6 +141,12 @@ public abstract class Fact [JsonIgnore] public GameObject Representation; + /// <summary> + /// Collection of <c>Type</c>s of *all* available <see cref="Fact"/>s to choose from. + /// </summary> + [JsonIgnore] + public static readonly Type[] Types = TypeExtensions<Fact>.UAssemblyInheritenceTypes; // Assembly.GetExecutingAssembly().GetTypes().Where(typeof(Fact).IsAssignableFrom).ToArray(); + /// <value> /// [ClassName] for JSON de-/serialization. /// Set in every non-abstract subclass of Fact. @@ -197,7 +205,8 @@ public string Label /// <summary> /// Reference to <see cref="FactOrganizer"/> in which this Fact and all its <see cref="getDependentFactIds">depending Facts</see> are beeing organized. /// </summary> - protected FactOrganizer _Facts; + [JsonProperty] + public FactOrganizer _Facts; /// <summary> /// Only being used by [JsonReader](https://www.newtonsoft.com/json/help/html/T_Newtonsoft_Json_JsonReader.htm) to initiate empty \ref Fact "Facts". @@ -404,20 +413,34 @@ public class FunctionFact<T0, TResult> : FactWrappedCRTP<FunctionFact<T0, TResul { /// \copydoc Fact.s_type [JsonProperty] - protected static new string s_type = "FunctionFact<" + nameof(T0) + ", " + nameof(TResult) + ">"; + protected static new string s_type = "FunctionFact<" + typeof(T0) + ", " + typeof(TResult) + ">"; + + public MMTTerm Function_MMT; //TODO: doc - public LambdaExpression function_expression { get; private set; } - public Func<T0, TResult> function { get; private set; } + [JsonIgnore] + public LambdaExpression Function_expression; + + [JsonIgnore] + public Func<T0, TResult> Function; //TODO - public Tuple<T0, T0> domain { get; private set; } + public (T0, T0) Domain = (default, default); /// <summary> \copydoc Fact.Fact </summary> public FunctionFact() : base() - { //TODO: test - function_expression = (Expression<Func<T0, TResult>>)((T0 x) => default(TResult)); - function = function_expression.Compile() as Func<T0, TResult>; + { + //// (T0 t) => t * default(TResult) + //Function_MMT = new OMA( + // new OMS(MMTURIs.Add), new () { + // new OMV("T0", typeof(T0)), + // new OMC(default(TResult), typeof(TResult)), + //}); + + //Function_expression = Function_MMT.GetLambdaExpression(); + //Function = Function_expression.Compile() as Func<T0, TResult>; + + //Domain = (default, default); } /// <summary> @@ -427,25 +450,33 @@ public FunctionFact() : base() /// <param name="old_to_new"><c>Dictionary</c> mapping <paramref name="fact"/>.<see cref="getDependentFactIds"/> in <paramref name="fact"/>.<see cref="Fact._Facts"/> to corresponding <see cref="Fact.Id"/> in <paramref name="organizer"/> </param> /// <param name="organizer">sets <see cref="_Facts"/></param> public FunctionFact(FunctionFact<T0, TResult> fact, Dictionary<string, string> old_to_new, FactOrganizer organizer) : base(fact, organizer) - => init(fact.function_expression); + => init(fact.Function_MMT, fact.Domain); /// <summary> /// Standard Constructor /// </summary> - /// <param name="function_expression">sets <see cref="function_expression"/> and contains the Abstract Syntax Tree</param> + /// <param name="Function_MMT">sets <see cref="Function_MMT"/> and contains the Abstract Syntax Tree</param> /// <param name="organizer">sets <see cref="Fact._Facts"/></param> - public FunctionFact(LambdaExpression function_expression, FactOrganizer organizer) : base(organizer) - => init(function_expression); + public FunctionFact(MMTTerm Function_MMT, (T0, T0) domain, FactOrganizer organizer) : base(organizer) + => init(Function_MMT, domain); /// <summary> - /// Initiates <see cref="function_expression"/>, <see cref="function"/>, <see cref="Fact._URI"/> and creates MMT %Fact Server-Side + /// Initiates <see cref="Function_MMT"/>, <see cref="Function_expression"/>, <see cref="Function"/>, <see cref="Fact._URI"/> and creates MMT %Fact Server-Side /// </summary> - /// <param name="function_expression">sets <see cref="function_expression"/> and contains the Abstract Syntax Tree</param> - private void init(LambdaExpression function_expression) + /// <param name="Function_MMT">sets <see cref="Function_MMT"/> and contains the Abstract Syntax Tree</param> + private void init(MMTTerm Function_MMT, (T0, T0) domain) { - this.function_expression = function_expression; - //TODO: catch - this.function = function_expression.Compile() as Func<T0, TResult>; + this.Function_MMT = Function_MMT; + this.Domain = domain; + + this.Function_expression = Function_MMT.GetReducedLambdaExpression(); + ////TODO: catch + //string debug_tostring = Function_expression.ToString(); + //dynamic debug_function = Function_expression.Compile(); + this.Function = this.Function_expression.Compile() as Func<T0, TResult>; + + //ducktaped: + _URI = this.Function_expression.ToString() + domain.ToString(); return; ////TODO: how!? Visitor? @@ -467,14 +498,14 @@ private void init(LambdaExpression function_expression) /// <summary> /// Bypasses initialization of new MMT %Fact by using existend URI, _which is not checked for existence_. /// </summary> - /// <param name="function_expression">sets <see cref="function_expression"/> and contains the Abstract Syntax Tree</param> + /// <param name="function_expression">sets <see cref="Function_expression"/> and contains the Abstract Syntax Tree</param> /// <param name="uri">MMT URI</param> /// <param name="organizer">sets <see cref="Fact._Facts"/></param> public FunctionFact(LambdaExpression function_expression, string uri, FactOrganizer organizer) : base(organizer) { - this.function_expression = function_expression; + this.Function_expression = function_expression; //TODO: catch - this.function = function_expression.Compile() as Func<T0, TResult>; + this.Function = function_expression.Compile() as Func<T0, TResult>; this._URI = uri; _ = this.Label; @@ -482,7 +513,7 @@ public FunctionFact(LambdaExpression function_expression, string uri, FactOrgani /// \copydoc Fact.parseFact(Scroll.ScrollFact) public new static FunctionFact<T0, TResult> parseFact(Scroll.ScrollFact fact) - { + {// TODO Correctness String uri = fact.@ref.uri; OMA df = (OMA)((Scroll.ScrollSymbolFact)fact).df; @@ -506,7 +537,7 @@ public override string[] getDependentFactIds() /// \copydoc Fact.GetHashCode public override int GetHashCode() - => function_expression.GetHashCode(); + => Function_expression.GetHashCode(); /// \copydoc Fact.instantiateDisplay(GameObject, Transform) public override GameObject instantiateDisplay(GameObject prefab, Transform transform) @@ -519,127 +550,10 @@ public override GameObject instantiateDisplay(GameObject prefab, Transform trans /// \copydoc Fact.EquivalentWrapped protected override bool EquivalentWrapped(FunctionFact<T0, TResult> f1, FunctionFact<T0, TResult> f2) - => Neleus.LambdaCompare.Lambda.ExpressionsEqual(f1.function_expression, f2.function_expression); -} - -/// <summary> -/// Base-class for 1D-Facts -/// </summary> -public abstract class AbstractLineFact : FactWrappedCRTP<AbstractLineFact> -{ - /// @{ <summary> - /// One <see cref="Fact.Id">Id</see> of two <see cref="PointFact"/> defining <see cref="Dir"/>. - /// </summary> - public string Pid1, Pid2; - /// @} - - /// <summary> - /// Normalized Direction from <see cref="Pid1"/> to <see cref="Pid2"/>. - /// </summary> - public Vector3 Dir; - - /// <summary> - /// \copydoc Fact.Fact() - /// </summary> - protected AbstractLineFact() : base() - { - Pid1 = null; - Pid2 = null; - Dir = Vector3.zero; - } - - /// <summary> - /// Copies <paramref name="fact"/> by initiating new MMT %Fact. - /// </summary> - /// <param name="fact">Fact to be copied</param> - /// <param name="old_to_new"><c>Dictionary</c> mapping <paramref name="fact"/>.<see cref="getDependentFactIds"/> in <paramref name="fact"/>.<see cref="Fact._Facts"/> to corresponding <see cref="Fact.Id"/> in <paramref name="organizer"/> </param> - /// <param name="organizer">sets <see cref="_Facts"/></param> - protected AbstractLineFact(AbstractLineFact fact, Dictionary<string, string> old_to_new, FactOrganizer organizer) : base(fact, organizer) - { - set_public_members(old_to_new[fact.Pid1], old_to_new[fact.Pid2]); - } - - /// <summary> - /// Standard Constructor - /// </summary> - /// <param name="pid1">sets <see cref="AbstractLineFact.Pid1"/></param> - /// <param name="pid2">sets <see cref="AbstractLineFact.Pid2"/></param> - /// <param name="organizer">sets <see cref="Fact._Facts"/></param> - protected AbstractLineFact(string pid1, string pid2, FactOrganizer organizer) : base(organizer) - { - set_public_members(pid1, pid2); - } - - /// <summary> - /// Bypasses initialization of new MMT %Fact by using existend URI, _which is not checked for existence_. - /// </summary> - /// <param name="pid1">sets <see cref="Pid1"/></param> - /// <param name="pid2">sets <see cref="Pid2"/></param> - /// <param name="backendURI">MMT URI</param> - /// <param name="organizer">sets <see cref="Fact._Facts"/></param> - protected AbstractLineFact(string pid1, string pid2, string backendURI, FactOrganizer organizer) : base(organizer) - { - set_public_members(pid1, pid2); - this._URI = backendURI; - } - - /// <summary> - /// Initiates <see cref="Pid1"/>, <see cref="Pid2"/>, <see cref="Dir"/> - /// </summary> - /// <param name="pid1">sets <see cref="Pid1"/></param> - /// <param name="pid2">sets <see cref="Pid2"/></param> - private void set_public_members(string pid1, string pid2) - { - this.Pid1 = pid1; - this.Pid2 = pid2; - PointFact pf1 = _Facts[pid1] as PointFact; - PointFact pf2 = _Facts[pid2] as PointFact; - this.Dir = (pf2.Point - pf1.Point).normalized; - } - - /// \copydoc Fact.hasDependentFacts - public override bool hasDependentFacts() - { - return true; - } - - /// \copydoc Fact.getDependentFactIds - public override string[] getDependentFactIds() { - return new string[] { Pid1, Pid2 }; - } - - /// \copydoc Fact.GetHashCode - public override int GetHashCode() - { - return this.Pid1.GetHashCode() ^ this.Pid2.GetHashCode(); + return Neleus.LambdaCompare.Lambda.Equals(f1.Function_expression.Body, f2.Function_expression.Body); } -} - -/// <summary> -/// Implements CRTP for <see cref="AbstractLineFact"/>; Escalates constructors; -/// </summary> -/// <typeparam name="T">class, which inherits from AbstractLineFactWrappedCRTP</typeparam> -public abstract class AbstractLineFactWrappedCRTP<T> : AbstractLineFact where T : AbstractLineFactWrappedCRTP<T> -{ - /// <summary>\copydoc Fact.Fact</summary> - protected AbstractLineFactWrappedCRTP() : base() { } - - /// <summary>\copydoc AbstractLineFact.AbstractLineFact(AbstractLineFact, Dictionary{string, string}, FactOrganizer)</summary> - protected AbstractLineFactWrappedCRTP(AbstractLineFactWrappedCRTP<T> fact, Dictionary<string, string> old_to_new, FactOrganizer organizer) : base(fact, old_to_new, organizer) { } - - /// <summary>\copydoc AbstractLineFact.AbstractLineFact(string, string, FactOrganizer)</summary> - protected AbstractLineFactWrappedCRTP(string pid1, string pid2, FactOrganizer organizer) : base(pid1, pid2, organizer) { } - - /// <summary>\copydoc AbstractLineFact.AbstractLineFact(string, string, string, FactOrganizer)</summary> - protected AbstractLineFactWrappedCRTP(string pid1, string pid2, string backendURI, FactOrganizer organizer) : base(pid1, pid2, backendURI, organizer) { } - - /// \copydoc Fact.Equivalent(Fact, Fact) - protected override bool EquivalentWrapped(AbstractLineFact f1, AbstractLineFact f2) - => EquivalentWrapped((T)f1, (T)f2); - - /// <summary>CRTP step of <see cref="EquivalentWrapped(AbstractLineFact, AbstractLineFact)"/></summary> - protected abstract bool EquivalentWrapped(T f1, T f2); + //&& f1.domain.Equals(f2.domain); // valid? => exact instead of similar } /// <summary> @@ -768,213 +682,6 @@ protected override bool EquivalentWrapped(PointFact f1, PointFact f2) => Math3d.IsApproximatelyEqual(f1.Point, f2.Point); } -/// <summary> -/// Line within 3D Space of finite length -/// </summary> -public class LineFact : AbstractLineFactWrappedCRTP<LineFact> -{ - /// \copydoc Fact.s_type - [JsonProperty] - protected static new string s_type = "LineFact"; - - /// <summary> Distance between <see cref="AbstractLineFact.Pid1"/> and <see cref="AbstractLineFact.Pid2"/></summary> - public float Distance; - - /// <summary> \copydoc Fact.Fact </summary> - public LineFact() : base() - { - Distance = 0; - } - - /// <summary> \copydoc AbstractLineFact.AbstractLineFact(AbstractLineFact, Dictionary<string, string>, FactOrganizer) </summary> - public LineFact(LineFact fact, Dictionary<string, string> old_to_new, FactOrganizer organizer) : base(fact, old_to_new, organizer) - => init(old_to_new[fact.Pid1], old_to_new[fact.Pid2]); - - /// <summary> \copydoc AbstractLineFact.AbstractLineFact(string, string, string, FactOrganizer) </summary> - public LineFact(string pid1, string pid2, string backendURI, FactOrganizer organizer) : base(pid1, pid2, backendURI, organizer) - { - SetDistance(); - _ = this.Label; - } - - /// <summary> \copydoc AbstractLineFact.AbstractLineFact(string, string, FactOrganizer) </summary> - public LineFact(string pid1, string pid2, FactOrganizer organizer) : base(pid1, pid2, organizer) - => init(pid1, pid2); - - /// <summary> - /// Initiates <see cref="AbstractLineFact.Pid1"/>, <see cref="AbstractLineFact.Pid2"/>, <see cref="Fact._URI"/> and creates MMT %Fact Server-Side - /// </summary> - /// <param name="pid1">sets <see cref="AbstractLineFact.Pid1"/></param> - /// <param name="pid2">sets <see cref="AbstractLineFact.Pid2"/></param> - private void init(string pid1, string pid2) - { - SetDistance(); - - PointFact pf1 = _Facts[pid1] as PointFact; - PointFact pf2 = _Facts[pid2] as PointFact; - float v = (pf1.Point - pf2.Point).magnitude; - - MMTTerm lhs = - new OMA( - new OMS(MMTURIs.Metric), - new List<MMTTerm> { - new OMS(pid1), - new OMS(pid2) - } - ); - - MMTTerm valueTp = new OMS(MMTURIs.RealLit); - MMTTerm value = new OMF(v); - - MMTValueDeclaration mmtDecl = new (this.Label, lhs, valueTp, value); - AddFactResponse.sendAdd(mmtDecl, out this._URI); - } - - /// \copydoc Fact.parseFact(Scroll.ScrollFact) - public new static LineFact parseFact(Scroll.ScrollFact fact) - { - string uri = fact.@ref.uri; - string pointAUri = ((OMS)((OMA)((Scroll.ScrollValueFact)fact).lhs).arguments[0]).uri; - string pointBUri = ((OMS)((OMA)((Scroll.ScrollValueFact)fact).lhs).arguments[1]).uri; - - if (StageStatic.stage.factState.ContainsKey(pointAUri) - && StageStatic.stage.factState.ContainsKey(pointBUri)) - return new LineFact(pointAUri, pointBUri, uri, StageStatic.stage.factState); - - //If dependent facts do not exist return null - else return null; - } - - /// \copydoc Fact.generateLabel - protected override string generateLabel() - => "[" + _Facts[Pid1].Label + _Facts[Pid2].Label + "]"; - - /// \copydoc Fact.instantiateDisplay(GameObject, Transform) - public override GameObject instantiateDisplay(GameObject prefab, Transform transform) - { - var obj = GameObject.Instantiate(prefab, Vector3.zero, Quaternion.identity, transform); - obj.transform.GetChild(0).gameObject.GetComponent<TextMeshProUGUI>().text = _Facts[this.Pid1].Label; - obj.transform.GetChild(1).gameObject.GetComponent<TextMeshProUGUI>().text = _Facts[this.Pid2].Label; - obj.GetComponent<FactWrapper>().fact = this; - return obj; - } - - /// \copydoc Fact.Equivalent(Fact, Fact) - protected override bool EquivalentWrapped(LineFact f1, LineFact f2) - { - if ((f1.Pid1 == f2.Pid1 && f1.Pid2 == f2.Pid2))// || - //(f1.Pid1 == f2.Pid2 && f1.Pid2 == f2.Pid1)) - return true; - - PointFact p1f1 = (PointFact)_Facts[f1.Pid1]; - PointFact p2f1 = (PointFact)_Facts[f1.Pid2]; - PointFact p1f2 = (PointFact)_Facts[f2.Pid1]; - PointFact p2f2 = (PointFact)_Facts[f2.Pid2]; - - return (p1f1.Equivalent(p1f2) && p2f1.Equivalent(p2f2)) - ;//|| (p1f1.Equivalent(p2f2) && p2f1.Equivalent(p1f2)); - } - - /// <summary> Calculates and sets <see cref="Distance"/>; <remarks> <see cref="AbstractLineFact.Pid1"/> and <see cref="AbstractLineFact.Pid2"/> needs to be set first.</remarks></summary> - private void SetDistance() - => this.Distance = Vector3.Distance(((PointFact)_Facts[Pid1]).Point, ((PointFact)_Facts[Pid2]).Point); -} - -/// <summary> -/// Ray within 3D Space of infinite length -/// </summary> -public class RayFact : AbstractLineFactWrappedCRTP<RayFact> -{ - /// \copydoc Fact.s_type - [JsonProperty] - protected static new string s_type = "RayFact"; - - /// <summary> \copydoc Fact.Fact </summary> - public RayFact() : base() { } - - /// <summary> \copydoc AbstractLineFact.AbstractLineFact(AbstractLineFact, Dictionary<string, string>, FactOrganizer) </summary> - public RayFact(RayFact fact, Dictionary<string, string> old_to_new, FactOrganizer organizer) : base(fact, old_to_new, organizer) - => init(old_to_new[fact.Pid1], old_to_new[fact.Pid2]); - - /// <summary> \copydoc AbstractLineFact.AbstractLineFact(string, string, string, FactOrganizer) </summary> - public RayFact(string pid1, string pid2, string backendURI, FactOrganizer organizer) : base(pid1, pid2, backendURI, organizer) - => _ = this.Label; - - /// <summary> \copydoc AbstractLineFact.AbstractLineFact(string, string, FactOrganizer) </summary> - public RayFact(string pid1, string pid2, FactOrganizer organizer) : base(pid1, pid2, organizer) - => init(pid1, pid2); - - /// <summary> - /// Initiates <see cref="AbstractLineFact.Pid1"/>, <see cref="AbstractLineFact.Pid2"/>, <see cref="Fact._URI"/> and creates MMT %Fact Server-Side - /// </summary> - /// <param name="pid1">sets <see cref="AbstractLineFact.Pid1"/></param> - /// <param name="pid2">sets <see cref="AbstractLineFact.Pid2"/></param> - private void init(string pid1, string pid2) - { - MMTTerm tp = new OMS(MMTURIs.LineType); - MMTTerm df = new OMA( - new OMS(MMTURIs.LineOf), - new List<MMTTerm> { - new OMS(pid1), - new OMS(pid2) - }); - - AddFactResponse.sendAdd(new MMTSymbolDeclaration(this.Label, tp, df), out this._URI); - - ParsingDictionary.parseTermsToId[df.ToString()] = this._URI; - } - - /// \copydoc Fact.parseFact(Scroll.ScrollFact) - public new static RayFact parseFact(Scroll.ScrollFact fact) - { - string uri = fact.@ref.uri; - - if ((OMA)((Scroll.ScrollSymbolFact)fact).df == null) - return null; - - string pointAUri = ((OMS)((OMA)((Scroll.ScrollSymbolFact)fact).df).arguments[0]).uri; - string pointBUri = ((OMS)((OMA)((Scroll.ScrollSymbolFact)fact).df).arguments[1]).uri; - - if (StageStatic.stage.factState.ContainsKey(pointAUri) - && StageStatic.stage.factState.ContainsKey(pointBUri)) - return new RayFact(pointAUri, pointBUri, uri, StageStatic.stage.factState); - - //If dependent facts do not exist return null - else return null; - } - - /// \copydoc Fact.generateLabel - protected override string generateLabel() - { - // TODO this string is too large to properly depict on scrolls. - // return "]" + _Facts[Pid1].Label + _Facts[Pid2].Label + "["; - return _Facts[Pid1].Label + _Facts[Pid2].Label; - } - - /// \copydoc Fact.instantiateDisplay(GameObject, Transform) - public override GameObject instantiateDisplay(GameObject prefab, Transform transform) - { - var obj = GameObject.Instantiate(prefab, Vector3.zero, Quaternion.identity, transform); - obj.transform.GetChild(0).gameObject.GetComponent<TextMeshProUGUI>().text = this.Label; - obj.GetComponent<FactWrapper>().fact = this; - return obj; - } - - /// \copydoc Fact.Equivalent(Fact, Fact) - protected override bool EquivalentWrapped(RayFact f1, RayFact f2) - { - if (!Math3d.IsApproximatelyParallel(f1.Dir, f2.Dir)) - return false; - - PointFact p1f1 = (PointFact)_Facts[f1.Pid1]; - PointFact p1f2 = (PointFact)_Facts[f2.Pid1]; - PointFact p2f2 = (PointFact)_Facts[f2.Pid2]; - - return Math3d.IsPointApproximatelyOnLine(p1f1.Point, f1.Dir, p1f2.Point) - && Math3d.IsPointApproximatelyOnLine(p1f1.Point, f1.Dir, p2f2.Point); - } -} - /// <summary> /// A <see cref="PointFact"/> on a <see cref="AbstractLineFact"/> /// </summary> diff --git a/Assets/Scripts/InteractionEngine/FactHandling/SolutionOrganizer.cs b/Assets/Scripts/InteractionEngine/FactHandling/SolutionOrganizer.cs index a015611bc99efb848ebca0d50d3912823c91985d..976591fcf95bdce619582111b403e37b85d533e6 100644 --- a/Assets/Scripts/InteractionEngine/FactHandling/SolutionOrganizer.cs +++ b/Assets/Scripts/InteractionEngine/FactHandling/SolutionOrganizer.cs @@ -70,7 +70,7 @@ public string ComparerString get { return Comparer.ToString(); } set { // Select and create FactComparer by name - var typ = fact_comparer.First(t => t.Name == value); + Type typ = fact_comparer.First(t => t.Name == value); Comparer = Activator.CreateInstance(typ) as FactComparer; } } @@ -78,7 +78,7 @@ public string ComparerString /// Collection of <c>Type</c>s of *all* available <see cref="FactComparer"/> to choose from. /// </summary> [JsonIgnore] - public static readonly IEnumerable<Type> fact_comparer = Assembly.GetExecutingAssembly().GetTypes().Where(typeof(FactComparer).IsAssignableFrom); + public static readonly Type[] fact_comparer = Assembly.GetExecutingAssembly().GetTypes().Where(typeof(FactComparer).IsAssignableFrom).ToArray(); /// <summary> /// Only used by <see cref="JsonConverter"/> to initiate empty instance. @@ -141,7 +141,9 @@ public List<Fact> getMasterFactsByIndex (int i) } */ - string IJSONsavable<SolutionOrganizer>._IJGetName(string name) => name + endingVal; + string IJSONsavable<SolutionOrganizer>._IJGetName(string name) + => name + endingVal; + SolutionOrganizer IJSONsavable<SolutionOrganizer>._IJPostProcess(SolutionOrganizer raw_payload) { if (raw_payload == null) diff --git a/Assets/Scripts/InteractionEngine/TBD/CanonBallCalculator.cs b/Assets/Scripts/InteractionEngine/TBD/CanonBallCalculator.cs new file mode 100644 index 0000000000000000000000000000000000000000..960e7e9f17ac06cffa52a0dc1d2f371543247145 --- /dev/null +++ b/Assets/Scripts/InteractionEngine/TBD/CanonBallCalculator.cs @@ -0,0 +1,154 @@ +using System.Collections.Generic; +using System.Linq; +using UnityEngine; +using static JSONManager; + +public class CanonBallProblemCalculator +{ + private int Dim_const, Dim_A, Dim_B; + private int MaxIter; + + private FactOrganizer FactOrganizer; + + private Vector3 StartPos; + private Vector3 StartVel; + private Vector3 Gravity; + + private List<Wall> Walls; + private List<FunctionFact<float, Vector3>> Result; + + public struct Wall + { + public LineFact Topology; + public float Bounce; + + public Wall(LineFact Topology, float Bounce) + { + this.Bounce = Bounce; + this.Topology = Topology; + } + } + + public CanonBallProblemCalculator(List<Wall> walls, Vector3 starPos, Vector3 starVec, Vector3 gravity, int dim_const, int dim_A, int dim_B, FactOrganizer factOrganizer, int maxIter = 256) + { + Walls = walls; + Dim_const = dim_const; + Dim_A = dim_A; + Dim_B = dim_B; + MaxIter = maxIter; + StartPos = starPos; + StartVel = starVec; + Gravity = gravity; + FactOrganizer = factOrganizer; + } + + public List<FunctionFact<float, Vector3>> Compute() + { + Vector3 GetOrigin(LineFact lfact) + => (lfact._Facts[lfact.Pid1] as PointFact).Point; + + OMA BuildOMA(Vector3 Pos, Vector3 Vel) + { //Pos = Pos + Vel * t + 0.5 * g * t**2 + return new OMA( + new OMS(MMTURIs.Add), + new() { + new OMC<Vector3>(Pos), + new OMA( + new OMS(MMTURIs.Add), + new() { + new OMA( + new OMS(MMTURIs.Multiply), + new() { + new OMC<Vector3>(Vel), + new OMV("t", typeof(float)), + } + ), + new OMA( + new OMS(MMTURIs.Multiply), + new() { + new OMF(0.5f), + new OMA( + new OMS(MMTURIs.Multiply), + new() { + new OMC<Vector3>(Gravity), + new OMA( + new OMS(MMTURIs.Multiply), + new() { + new OMV("t", typeof(float)), + new OMV("t", typeof(float)), + }),}),}),}),}); + } + + //Pos = Pos + Vel * t + 0.5 * g * t**2 + Vector3 UpdatePos(Vector3 Pos, Vector3 Vel, float t) + => Pos + Vel * t + Gravity * 0.5f * t * t; + + //Vel = Vel + g * t + Vector3 UpdateVel(Vector3 Vel, float t) + => Vel + Gravity * t; + + // p1 + v1 * t + 0.5 * g1 * t * t = o1 + d1 * x, + // p2 + v2 * t + 0.5 * g2 * t * t = o2 + d2 * x, + + // T = (-b ± sqrt(b ^ 2 - 4ac)) / (2a) + // Where: + // a = 0.5 * (G2 * D1 - * G1 * D2) + // b = V2 * D1 - V1 * D2 + // c = P2 * D1 + P1 * D2 - O2 * D1 - O1 * D2 + float[] SolveForTime(Vector3 Pos, Vector3 Vel, LineFact Top) + { + float + a = 0.5f * (Gravity[Dim_B] * Top.Dir[Dim_A] - Gravity[Dim_A] * Top.Dir[Dim_B]), + b = Vel[Dim_B] * Top.Dir[Dim_A] - Vel[Dim_A] * Top.Dir[Dim_B], + c = Pos[Dim_B] * Top.Dir[Dim_A] + Pos[Dim_A] * Top.Dir[Dim_B] + - GetOrigin(Top)[Dim_B] * Top.Dir[Dim_A] - GetOrigin(Top)[Dim_A] * Top.Dir[Dim_B]; + float + t1 = (-b + Mathf.Sqrt(b * b - 4 * a * c)) / (2 * a), + t2 = (-b - Mathf.Sqrt(b * b - 4 * a * c)) / (2 * a); + + return new float[] { t1, t2 }; + }; + + // X = (P1 + V1 * T + 0.5 * G1 * T ^ 2 - O1) / D1 + float SolveForDistanceOnPlane(Vector3 Pos, Vector3 Vel, LineFact Top, float t) + { + return (Pos + Vel * t + Gravity * 0.5f * t * t - GetOrigin(Top)).magnitude; + }; + + Vector3 PlaneNorm = Vector3.zero; + PlaneNorm[Dim_const] = 1; + + Vector3 pos = StartPos; + Vector3 vel = StartVel; + Result = new(); + + for (int i = 0; i < MaxIter; i++) + { + var hits = Walls + .Select(w => (w, tarr: SolveForTime(pos, vel, w.Topology))) + .SelectMany(wt => new[] { (wt.w, t: wt.tarr[0]), (wt.w, t: wt.tarr[1]) }) + .Where(wt => wt.t > float.Epsilon) + .Where(wt => wt.w.Topology.Distance <= SolveForDistanceOnPlane(pos, vel, wt.w.Topology, wt.t)) + .OrderBy(wt => wt.t) + .ToArray(); + + (Wall next_Wall, float next_t) = hits.Length > 0 ? hits[0] : (default(Wall), float.PositiveInfinity); + + Result.Add(new(BuildOMA(pos, vel), (0, next_t), FactOrganizer)); + + if (hits.Length == 0) + break; + + pos = UpdatePos(pos, vel, next_t); + vel = UpdateVel(vel, next_t); + + Vector3 LineFactNorm = Vector3.Cross(PlaneNorm, next_Wall.Topology.Dir); + float bounce_angle_cos = Mathf.Abs(Vector3.Dot(vel.normalized, LineFactNorm)); + float bounce_fac = 1 - (1 - next_Wall.Bounce) * (Mathf.Acos(bounce_angle_cos) / 2 / Mathf.PI); + + vel = bounce_fac * Vector3.Reflect(vel, LineFactNorm); + } + + return Result; + } +} diff --git a/Assets/Scripts/InteractionEngine/TBD/CanonBallCalculator.cs.meta b/Assets/Scripts/InteractionEngine/TBD/CanonBallCalculator.cs.meta new file mode 100644 index 0000000000000000000000000000000000000000..f0e6047974cca537c775d1ecca74acbed12c8f0c --- /dev/null +++ b/Assets/Scripts/InteractionEngine/TBD/CanonBallCalculator.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9fffa197b71421a41a6ff0723bdc26fb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/InteractionEngine/TBD/CanonBallProblemProvider.cs b/Assets/Scripts/InteractionEngine/TBD/CanonBallProblemProvider.cs new file mode 100644 index 0000000000000000000000000000000000000000..f9d9ba551cfbf791d888a549bf03155ab32ee263 --- /dev/null +++ b/Assets/Scripts/InteractionEngine/TBD/CanonBallProblemProvider.cs @@ -0,0 +1,118 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Numerics; +using Unity.Mathematics; +using UnityEngine; +using static JSONManager; + +public class CanonBallProblemProvider<T, U> where U : struct +{ + private FactOrganizer factOrganizer; + + private int Dimension; + private T StarPos; + private T StarVec; + private T Gravity; + + private List<Wall> Walls; + private List<FunctionFact<T, T>> Result; + + + private int MaxIter; + + public struct Wall + { + LineFact Topology; + float Bounce; + + public Wall(LineFact Topology, float Bounce) + { + this.Bounce = Bounce; + this.Topology = Topology; + } + } + + public CanonBallProblemProvider(List<Wall> walls, T starPos, T starVec, T gravity, int dimension, int maxIter = 255) + { + Walls = walls; + Dimension = dimension; + MaxIter = maxIter; + StarPos = starPos; + StarVec = starVec; + Gravity = gravity; + } + + public List<FunctionFact<U, T>> Compute() + { + //Pos = Pos + Vel * t + 0.5 * g * t**2 + OMA newpos = new OMA( + new OMS(MMTURIs.Add), + new() { + new OMV("Pos", typeof(T)), + new OMA( + new OMS(MMTURIs.Add), + new() { + new OMA( + new OMS(MMTURIs.Multiply), + new() { + new OMV("Vel", typeof(T)), + new OMV("t", typeof(float)), + } + ), + new OMA( + new OMS(MMTURIs.Multiply), + new() { + new OMF(0.5f), + new OMA( + new OMS(MMTURIs.Multiply), + new() { + new OMV("acc", typeof(T)), + new OMA( + new OMS(MMTURIs.Multiply), + new() { + new OMV("t", typeof(U)), + new OMV("t", typeof(U)), + }),}),}),}),}); + + //Vel = Vel + g * t + OMA newvel = new OMA( + new OMS(MMTURIs.Add), + new() { + new OMV("Vel", typeof(T)), + new OMA( + new OMS(MMTURIs.Multiply), + new() { + new OMV("acc", typeof(T)), + new OMV("t", typeof(U)), + }),}); + + dynamic PosVelTtoPos_Check = newpos.GetLambdaExpression().Compile(); + string PosStringCheck = newpos.GetLambdaExpression().ToString(); + Func<T, T, U, T> PosVelTtoPos = newpos.GetLambdaExpression().Compile() as Func<T, T, U, T>; + + dynamic VelTtoVel_Check = newvel.GetLambdaExpression().Compile(); + string VelStringCheck = newvel.GetLambdaExpression().ToString(); + Func<T, U, T> VelTtoVel = newvel.GetLambdaExpression().Compile() as Func<T, U, T>; + + // p1-o1+v1*t-v1*x+0.5*g1*t = 0, + // p2-o2+v2*t-v2*x+0.5*g2*t = 0, + // t = (2 (o2 v1 - p2 v1 + (-o1 + p1) v2))/(g2 v1 - g1 v2), + // x = (-2 o2 + 2 p2 + t (g2 + 2 v2))/(2 v2) + + //hit_time = + // [((m * x_vel - y_vel) + np.sqrt((y_vel - m * x_vel)**2 - 4 * 0.5 * g * (y - m * x - c))) / g, + // ((m * x_vel - y_vel) - np.sqrt((y_vel - m * x_vel)**2 - 4 * 0.5 * g * (y - m * x - c))) / g] + //x_p = [x + x_vel * hit_time[0], x + x_vel * hit_time[1]] + + T pos = StarPos; + T vec = StarVec; + + for (int i = 0; i < MaxIter; i++) + { + + } + return null; + } + +} diff --git a/Assets/Scripts/InteractionEngine/TBD/CanonBallProblemProvider.cs.meta b/Assets/Scripts/InteractionEngine/TBD/CanonBallProblemProvider.cs.meta new file mode 100644 index 0000000000000000000000000000000000000000..5cbae624e4897f6502ba129a257ef759aba49f23 --- /dev/null +++ b/Assets/Scripts/InteractionEngine/TBD/CanonBallProblemProvider.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f5b33952d9665c043b065195e13baae0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/InteractionEngine/TBD/KineticFactBehaviour.cs b/Assets/Scripts/InteractionEngine/TBD/KineticFactBehaviour.cs index 9dfd3cac8e22a2429c3c574da5d9ee3428ff6b37..cfb35f79c88a5addfa8d9a8bfc57834302b171f2 100644 --- a/Assets/Scripts/InteractionEngine/TBD/KineticFactBehaviour.cs +++ b/Assets/Scripts/InteractionEngine/TBD/KineticFactBehaviour.cs @@ -8,6 +8,7 @@ public class KineticFactBehaviour : MonoBehaviour List<FunctionFact<float, float>> functions; private int active_func_ind = -1; private float time = 0; + private int Dimension = 1; private bool _done; public bool done { @@ -40,13 +41,16 @@ private void Update() if (!execute) return; - active_func_ind = functions.FindIndex(active_func_ind, ff => ff.domain.Item1 <= time); + active_func_ind = functions.FindIndex(active_func_ind, ff => ff.Domain.Item1 <= time); if (!execute) { done = true; return; } - transform.position = new Vector3(transform.position.x, functions[active_func_ind].function(time), transform.position.z); + Vector3 position_cpy = transform.position; + position_cpy[Dimension] = functions[active_func_ind].Function(time); + transform.position = position_cpy; + time += Time.deltaTime; } diff --git a/Assets/Scripts/InteractionEngine/WorldFactInteraction.cs b/Assets/Scripts/InteractionEngine/WorldFactInteraction.cs index 7517a9196e19da9be30c731b5f275a0f6479d5bb..305d0c0beb379db1cc7e71173221d6b784c94cfb 100644 --- a/Assets/Scripts/InteractionEngine/WorldFactInteraction.cs +++ b/Assets/Scripts/InteractionEngine/WorldFactInteraction.cs @@ -75,7 +75,7 @@ private void InstantiateNewDisplay(FactObject factObj) Destroy(currentDisplay); Fact fact = StageStatic.stage.factState[factObj.URI]; // TODO: this link to DisplayFacts is not ideal: maybe refactor to SciptableObject or such - currentDisplay = fact.instantiateDisplay(DisplayFacts.prefabDictionary[fact.GetType()], HidingCanvas); + currentDisplay = fact.instantiateDisplay(DisplayFacts.PrefabDictionary[fact.GetType()], HidingCanvas); } #region Helper diff --git a/Assets/Scripts/InventoryStuff/DisplayFacts.cs b/Assets/Scripts/InventoryStuff/DisplayFacts.cs index 28febc41b265f5e6d86870faa9f7b6a419593e14..c6adb6301e3f799cc18c717f857faddddaea0fc1 100644 --- a/Assets/Scripts/InventoryStuff/DisplayFacts.cs +++ b/Assets/Scripts/InventoryStuff/DisplayFacts.cs @@ -6,10 +6,24 @@ using System.Linq; using UnityEngine.UI; using System.Collections; +using MoreLinq; +using System.ComponentModel; +using UnityEditor; +using System.Reflection; -public class DisplayFacts : MonoBehaviour +public class DisplayFacts : MonoBehaviour, ISerializationCallbackReceiver { - public static Dictionary<Type, GameObject> prefabDictionary; + private static DisplayFacts _instance; + public static DisplayFacts Instance + { + get => _instance; + private set { _instance ??= value; } + } + + //cannot populate static dict while serialization => "singelton" + public static Dictionary<Type, GameObject> PrefabDictionary { get => Instance._PrefabDictionary; } + private Dictionary<Type, GameObject> _PrefabDictionary = new(); + public static Dictionary<string, GameObject> displayedFacts = new(); [SerializeField] private Transform factscreenContent; @@ -19,58 +33,52 @@ public class DisplayFacts : MonoBehaviour private bool showGrouped = false; private bool showOnlyFavorites = false; - [Header("FactPrefabs")] - public GameObject prefab_Point; - public GameObject prefab_Distance; - public GameObject prefab_Angle; - public GameObject prefab_Default; - public GameObject prefab_OnLine; - public GameObject prefab_Line; - public GameObject prefab_ParallelLineFact; - public GameObject prefab_RectangleFact; - public GameObject prefab_RadiusFact; - public GameObject prefab_AreaCircle; - public GameObject prefab_ConeVolume; - public GameObject prefab_OrthogonalCircleLine; - public GameObject prefab_TruncatedConeVolume; - public GameObject prefab_RightAngle; - public GameObject prefab_CylinderVolume; - public GameObject prefab_EqualFact; - public GameObject prefab_UnEqualFact; - - public GameObject prefab_CircleFact; - public GameObject prefab_OnCircleFact; - public GameObject prefab_AngleCircleLineFact; - - public GameObject prefab_TestFact; + #region ISerializationCallbackReceiver + [ReadOnly(true), SerializeField] + private List<string> PrefabtTypeReadonly; + [SerializeField] + private List<GameObject> PrefabDataConfig; + + public void OnBeforeSerialize() + { + PrefabtTypeReadonly = TypeExtensions<Fact>.UAssemblyInheritenceTypes.Select(type => type.ToString()).ToList(); + PrefabtTypeReadonly.Sort(); //for convinience + + // if order has changed => do not forget + var keys = _PrefabDictionary.Keys.Select(type => type.ToString()).ToList(); + var keys_permutation = PrefabtTypeReadonly.Select(type => keys.IndexOf(type)).ToArray(); + + var vals = _PrefabDictionary.Values.ToArray(); + PrefabDataConfig = new(keys_permutation.Length); + for (int i = 0; i < keys_permutation.Length; i++) + { + GameObject data = keys_permutation[i] < 0 + ? null + : vals[keys_permutation[i]]; + + if (PrefabDataConfig.Count <= i) + PrefabDataConfig.Add(data); + else + PrefabDataConfig[i] = data; + } + } + + public void OnAfterDeserialize() + { + _PrefabDictionary = new(); + for (int i = 0; i != Math.Min(PrefabtTypeReadonly.Count, PrefabDataConfig.Count); i++) + if (PrefabDataConfig[i] != null) + _PrefabDictionary.Add( + TypeExtensions<Fact>.UAssemblyInheritenceTypes.First(type => type.ToString() == PrefabtTypeReadonly[i]), + PrefabDataConfig[i] + ); + } + #endregion ISerializationCallbackReceiver #region UnityMethods - //Start is called before the first frame update - void Start() + void Awake() { - prefabDictionary = new Dictionary<Type, GameObject>() { - {typeof(PointFact), prefab_Point}, - {typeof(LineFact), prefab_Distance}, - {typeof(RayFact), prefab_Line}, - {typeof(AngleFact), prefab_Angle}, - {typeof(OnLineFact), prefab_OnLine}, - {typeof(ParallelLineFact), prefab_ParallelLineFact}, - - {typeof(CircleFact), prefab_CircleFact}, - {typeof(OnCircleFact), prefab_OnCircleFact}, - {typeof(AngleCircleLineFact), prefab_AngleCircleLineFact}, - {typeof(RadiusFact), prefab_RadiusFact}, - {typeof(AreaCircleFact), prefab_AreaCircle}, - {typeof(ConeVolumeFact), prefab_ConeVolume}, - {typeof(OrthogonalCircleLineFact), prefab_OrthogonalCircleLine }, - {typeof(TruncatedConeVolumeFact), prefab_TruncatedConeVolume }, - {typeof(RightAngleFact), prefab_RightAngle }, - {typeof(CylinderVolumeFact), prefab_CylinderVolume}, - {typeof(EqualCirclesFact), prefab_EqualFact }, - {typeof(UnEqualCirclesFact), prefab_UnEqualFact }, - - {typeof(TestFact), prefab_TestFact }, - }; + Instance = this; //first come, first serve AddFactEvent.AddListener(AddFact); RemoveFactEvent.AddListener(RemoveFact); @@ -80,12 +88,13 @@ void Start() #endregion UnityMethods #region Implementation - public void AddFact(Fact fact) { + public void AddFact(Fact fact) + { // index where the new display will be inserted int siblingIdx = sortDescending ? 0 : factscreenContent.childCount; if (showGrouped) { - var facts = GetChildObjects(factscreenContent.transform).Select(c => c.GetComponentInChildren<FactWrapper>().fact).ToList(); + var facts = factscreenContent.GetComponentsInChildren<FactWrapper>().Select(f => f.fact).ToList(); if (!sortDescending) siblingIdx = GetIndexInSortedList(fact, facts); else @@ -103,14 +112,18 @@ public void AddFact(Fact fact) { // disable if showOnlyFavorites is true and fact is no favorite display.transform.parent.gameObject.SetActive(!(showOnlyFavorites && !display.GetComponent<FactFavorisation>().IsFavorite)); - + display.transform.parent.transform.SetSiblingIndex(siblingIdx); } private GameObject CreateDisplay(Transform transform, Fact fact) { + Type fact_type = fact.GetType(); + if(fact_type.IsConstructedGenericType) + fact_type = fact_type.GetGenericTypeDefinition(); + var spot = Instantiate(factSpotPrefab, factscreenContent); - return fact.instantiateDisplay(prefabDictionary[fact.GetType()], spot.transform); + return fact.instantiateDisplay(PrefabDictionary[fact_type], spot.transform); } public void RemoveFact(Fact fact) @@ -120,7 +133,8 @@ public void RemoveFact(Fact fact) displayedFacts.Remove(fact.Id); } - public void AnimateFact(Fact fact) { + public void AnimateFact(Fact fact) + { var factIcon = displayedFacts[fact.Id]; factIcon.GetComponentInChildren<ImageHintAnimation>().AnimationTrigger(); } @@ -130,13 +144,7 @@ public void AnimateFact(Fact fact) { public void AscDescChanged(Toggle t) { sortDescending = !sortDescending; - - // revert current order - var children = GetChildObjects(factscreenContent.transform); - foreach (var child in children) - { - child.SetAsFirstSibling(); - } + factscreenContent.gameObject.ForAllChildren(child => child.transform.SetAsFirstSibling()); } #endregion AscDesc @@ -145,15 +153,10 @@ public void GroupingChanged(Toggle t) { showGrouped = t.isOn; - List<Transform> vals = GetChildObjects(factscreenContent.transform); - List<Transform> ordered = new(); - if (showGrouped) - { - var comparer = new FactTypeComparer(); - ordered = vals.OrderBy(tr => tr.GetComponentInChildren<FactWrapper>().fact, comparer).ToList(); - } - else - ordered = vals.OrderBy(tr => displayedFacts.Keys.ToList().IndexOf(tr.GetComponentInChildren<FactWrapper>().fact.Id)).ToList(); + var vals = factscreenContent.gameObject.GetDirectChildren(); + var ordered = showGrouped + ? vals.OrderBy(tr => tr.GetComponent<FactWrapper>().fact, new FactTypeComparer()).ToList() + : vals.OrderBy(tr => displayedFacts.Keys.ToList().IndexOf(tr.GetComponent<FactWrapper>().fact.Id)).ToList(); if (sortDescending) ordered.Reverse(); @@ -161,6 +164,7 @@ public void GroupingChanged(Toggle t) for (int i = 0; i < ordered.Count; i++) ordered[i].transform.SetSiblingIndex(i); } + private int GetIndexInSortedList(Fact f, List<Fact> toCheck) { var index = toCheck.BinarySearch(f, new FactTypeComparer()); @@ -191,13 +195,14 @@ public int Compare(Fact x, Fact y) public void FavoritesFilterChanged(Toggle t) { showOnlyFavorites = t.isOn; + if (!showOnlyFavorites) // show all - displayedFacts.Values.ToList().ForEach(nFav => nFav.transform.parent.gameObject.SetActive(!showOnlyFavorites)); + displayedFacts.Values.ForEach(nFav => nFav.transform.parent.gameObject.SetActive(true)); else - { - // hide not favorites - var notFavorites = displayedFacts.Values.Where(go => !go.GetComponent<FactFavorisation>().IsFavorite).ToList(); - notFavorites.ForEach(nFav => nFav.transform.parent.gameObject.SetActive(false)); + { // hide not favorites + displayedFacts.Values + .Where(go => !go.GetComponent<FactFavorisation>().IsFavorite) + .ForEach(nFav => nFav.transform.parent.gameObject.SetActive(false)); } } @@ -212,14 +217,5 @@ private void OnFavoriteChange(Fact changedFact, bool isFavourite) } #endregion Favorites - #region Helper - private static List<Transform> GetChildObjects(Transform parent) - { - List<Transform> children = new(); - foreach (Transform val in parent) - children.Add(val); - return children; - } - #endregion Helper #endregion Implementation -} +} \ No newline at end of file diff --git a/Assets/Scripts/JSONManager.cs b/Assets/Scripts/JSONManager.cs index 35c9b096d198f1bd7f30e1c4acde72557a18aa27..69378886a1d23ec3585919aaa5949215c014f068 100644 --- a/Assets/Scripts/JSONManager.cs +++ b/Assets/Scripts/JSONManager.cs @@ -2,16 +2,13 @@ using Newtonsoft.Json; using JsonSubTypes; using System.Linq.Expressions; -using System.Reflection; -using UnityEngine.UIElements; using System; -using static UnityEngine.Windows.Speech.PhraseRecognitionSystem; using System.Linq; -using static JSONManager; +using MoreLinq; +using UnityEngine; public static class JSONManager { - public static class MMTURIs { public static readonly string Point = "http://mathhub.info/MitM/core/geometry?3DGeometry?point"; @@ -55,6 +52,14 @@ public static class MMTURIs public static readonly string RightAngle = "http://mathhub.info/FrameIT/frameworld?FrameITBasics?rightAngle"; public static readonly string TestType = "http://mathhub.info/FrameIT/frameworld?FrameITCircle?xcircleType3D"; + + public static readonly string Sin = "Sin"; + public static readonly string Cos = "Cos"; + public static readonly string Add = "Add"; + public static readonly string Divide = "Divide"; + public static readonly string Multiply = "Multiply"; + public static readonly string Subtract = "Subtract"; + public static readonly string SquareRoot = "SquareRoot"; } @@ -69,15 +74,17 @@ public static class MMTtoLambdaExpression<T> private static readonly Dictionary<string, Func<LambdaExpression[], LambdaExpression>> MMTtoLambdaMaker = new() { - { "sin", + { MMTURIs.Sin, MakeSin}, - { "cos", + { MMTURIs.Cos, + MakeCos}, + { MMTURIs.SquareRoot, MakeCos}, }; private static readonly Dictionary<string, ExpressionType> MMTtoBinaryExpressionType = new() { - { "Add", + { MMTURIs.Add, ExpressionType.Add}, { "AddAssign", ExpressionType.AddAssign}, @@ -93,7 +100,7 @@ public static class MMTtoLambdaExpression<T> ExpressionType.AndAssign}, { "Assign", ExpressionType.Assign}, - { "Divide", + { MMTURIs.Divide, ExpressionType.Divide}, { "DivideAssign", ExpressionType.DivideAssign}, @@ -119,7 +126,7 @@ public static class MMTtoLambdaExpression<T> ExpressionType.Modulo}, { "ModuloAssign", ExpressionType.ModuloAssign}, - { "Multiply", + { MMTURIs.Multiply, ExpressionType.Multiply}, { "MultiplyAssign", ExpressionType.MultiplyAssign}, @@ -143,7 +150,7 @@ public static class MMTtoLambdaExpression<T> ExpressionType.RightShift}, { "RightShiftAssign", ExpressionType.RightShiftAssign}, - { "Subtract", + { MMTURIs.Subtract, ExpressionType.Subtract}, { "SubtractAssign", ExpressionType.SubtractAssign}, @@ -196,8 +203,8 @@ void ThrowArgumentException(ExpressionType expression_cast, int expected) URI, expression_cast, expected, args_lamda.Count() )); } - - ParameterExpression[] args_param = args_lamda?.SelectMany(l => l.Parameters).ToArray(); + //TODO distinct! (in args_lamda and duplicate?) + ParameterExpression[] args_param = args_lamda?.SelectMany(l => l.Parameters).ToArray(); //.DistinctBy(p => p.Name).ToArray(); if (MMTtoUnaryExpressionType.TryGetValue(URI, out var unnary_type)) { @@ -282,21 +289,41 @@ private static LambdaExpression MakeCos(LambdaExpression[] args_lamda) } - public class URI - { - public string uri; - - public URI(string uri) - { - this.uri = uri; - } - } - [JsonConverter(typeof(JsonSubtypes), "kind")] + [JsonSubtypes.KnownSubType(typeof(OMA), "OMA")] + [JsonSubtypes.KnownSubType(typeof(OMS), "OMS")] + [JsonSubtypes.KnownSubType(typeof(OMSTR), "OMSTR")] + [JsonSubtypes.KnownSubType(typeof(OMF), "OMF")] + [JsonSubtypes.KnownSubType(typeof(OMV), "OMV")] + //[JsonSubtypes.KnownSubType(typeof(OMC<T>), "OMC<" + typeof(T) + ">")] + [JsonSubtypes.KnownSubType(typeof(OMC<Vector3>), "OMC<UnityEngine.Vector3>")] + [JsonSubtypes.KnownSubType(typeof(OMC<float>), "OMC<System.Single>")] + [JsonSubtypes.KnownSubType(typeof(OMC<double>), "OMC<System.Double>")] abstract public class MMTTerm { string kind; + [JsonIgnore] + public static readonly Dictionary<string, Type> allowedTypes = + new Type[] { typeof(float), typeof(double), typeof(string), typeof(UnityEngine.Vector3)} + .ToDictionary(t => t.ToString()); + + public static LambdaExpression ReduceArguments(LambdaExpression expr) + { + var reduced_params = expr.Parameters.GroupBy(p => p.Name).Select(p => p.First()).ToArray(); + var name_to_params = reduced_params.ToDictionary(p => p.Name); + + return + Expression.Lambda( + Expression.Invoke( + expr, + expr.Parameters.Select(p => name_to_params[p.Name])), + reduced_params); + } + + public LambdaExpression GetReducedLambdaExpression() + => ReduceArguments(this.GetLambdaExpression()); + public abstract LambdaExpression GetLambdaExpression(LambdaExpression[] args = null); public abstract override string ToString(); @@ -304,10 +331,12 @@ abstract public class MMTTerm public class OMA : MMTTerm { + public string kind = "OMA"; + public MMTTerm applicant; public List<MMTTerm> arguments; - public string kind = "OMA"; + [JsonConstructor] public OMA(MMTTerm applicant, List<MMTTerm> arguments) { this.applicant = applicant; @@ -318,14 +347,16 @@ public override LambdaExpression GetLambdaExpression(LambdaExpression[] args = n => applicant.GetLambdaExpression(arguments?.Select(mmt => mmt.GetLambdaExpression()).ToArray()); public override string ToString() - => applicant.ToString() + "(" + arguments.ToString() + ")"; + => applicant.ToString() + "(" + string.Join(", ", arguments.Select(a => a.ToString())) + ")"; } public class OMS : MMTTerm { - public string uri; public string kind = "OMS"; + public string uri; + + [JsonConstructor] public OMS(string uri) { this.uri = uri; @@ -340,10 +371,12 @@ public override string ToString() public class OMSTR : MMTTerm { + public string kind = "OMSTR"; + [JsonProperty("float")] public string s; - public string kind = "OMSTR"; + [JsonConstructor] public OMSTR(string s) { this.s = s; @@ -358,10 +391,12 @@ public override string ToString() public class OMF : MMTTerm { + public string kind = "OMF"; + [JsonProperty("float")] public float f; - public string kind = "OMF"; + [JsonConstructor] public OMF(float f) { this.f = f; @@ -374,6 +409,103 @@ public override string ToString() => f.ToString(); } + public class OMC<T> : MMTTerm + { + public string kind = "OMC<" + typeof(T) + ">"; + + public T value; + + [JsonConstructor] + public OMC(T value) + { + this.value = value; + } + + public override LambdaExpression GetLambdaExpression(LambdaExpression[] args = null) + => Expression.Lambda(Expression.Constant(value, typeof(T)), null); + + public override string ToString() + => "C_" + typeof(T) + "(" + value.ToString() + ")"; + } + + // TODO doesntt work, needs Iconvertable for convert + //public class OMC : MMTTerm + //{ + // public string kind = "OMC"; + + // /// <summary>@Type of this constant</summary> + // [JsonIgnore] + // public Type type; + + // /// <summary>Enables (especially <see cref="JsonConverter"/>) to read and set <see cref="type"/> by its <c>string</c> representation.</summary> + // public string typeString + // { + // get => type.ToString(); + // set => type = allowedTypes[value]; + // } + + // public object value; + + // [JsonConstructor] + // public OMC(object value, string typeString) + // { + // this.value = value; + // this.typeString = typeString; + // } + + // public OMC(object value, Type type) + // { + // this.value = value; + // this.type = type; + // } + + // public override LambdaExpression GetLambdaExpression(LambdaExpression[] args = null) + // => Expression.Lambda(Expression.Constant(Convert.ChangeType(value, type), type), null); + + // public override string ToString() + // => "C_" + typeString + "(" + Convert.ChangeType(value, type).ToString() + ")"; + //} + + public class OMV : MMTTerm + { + public string kind = "OMV"; + + public string name; + + /// <summary>@Type of this variable</summary> + [JsonIgnore] + public Type type; + + /// <summary>Enables (especially <see cref="JsonConverter"/>) to read and set <see cref="type"/> by its <c>string</c> representation.</summary> + public string typeString + { + get => type.ToString(); + set => type = allowedTypes[value]; + } + + [JsonConstructor] + public OMV(string name, string typeString) + { + this.name = name; + this.typeString = typeString; + } + + public OMV(string name, Type type) + { + this.name = name; + this.type = type; + } + + public override LambdaExpression GetLambdaExpression(LambdaExpression[] args = null) + { + ParameterExpression v = Expression.Parameter(type, name); + return Expression.Lambda(v, new [] { v }); + } + + public override string ToString() + => "V_" + name + "(" + typeString + ")"; + } + public class MMTDeclaration { diff --git a/Assets/Scripts/UI/FactExplorer/FactExplorer.cs b/Assets/Scripts/UI/FactExplorer/FactExplorer.cs index b956c23c999a30d2fc8642cf2dd875e3ef127233..0ccd1fc0ab0eea7f149e161d4a6779c4372046be 100644 --- a/Assets/Scripts/UI/FactExplorer/FactExplorer.cs +++ b/Assets/Scripts/UI/FactExplorer/FactExplorer.cs @@ -115,7 +115,7 @@ private void SpawnUIFacts(Transform uiParent, List<Fact> toSpawn) var spot = Instantiate(factSpotPrefab, uiParent); // TODO: this link to DisplayFacts is not ideal: maybe refactor to SciptableObject or such - var display = f.instantiateDisplay(DisplayFacts.prefabDictionary[f.GetType()], spot.transform); + var display = f.instantiateDisplay(DisplayFacts.PrefabDictionary[f.GetType()], spot.transform); display.transform.localPosition = Vector3.zero; } } diff --git a/Assets/Scripts/Utility/Extensions/GameObjectExtensions.cs b/Assets/Scripts/Utility/Extensions/GameObjectExtensions.cs index ff58889fd8c0969c5cba9e465b9204f392f89df2..003876b4550f6e6acea5e4e149e7760a1079355e 100644 --- a/Assets/Scripts/Utility/Extensions/GameObjectExtensions.cs +++ b/Assets/Scripts/Utility/Extensions/GameObjectExtensions.cs @@ -25,6 +25,15 @@ public static void ForAllChildren(this GameObject root, Action<GameObject> func_ func_on_child(root.transform.GetChild(i).gameObject); } + public static List<GameObject> GetDirectChildren(this GameObject root) + { + List<GameObject> ret = new (capacity: root.transform.childCount); + foreach (GameObject child in root.transform) + ret.Add(child); + + return ret; + } + public static GameObject GetNthChild(this GameObject root, IEnumerable<int> pos) { GameObject ret = root; diff --git a/Assets/Scripts/Utility/Extensions/MathfExtensions.cs b/Assets/Scripts/Utility/Extensions/MathfExtensions.cs index 0f8cfd3fe2873733d54208b141fd1576e0099a81..9413baa3583d1273fddd78b0a9a8e1f2bf5a57e0 100644 --- a/Assets/Scripts/Utility/Extensions/MathfExtensions.cs +++ b/Assets/Scripts/Utility/Extensions/MathfExtensions.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using UnityEngine; -public static class MathfExtensions +public static class MathfExtensions { /// <summary> /// Checks whether two floats are approximately the same with given precission @@ -32,4 +32,20 @@ public static IEnumerator<float> LerpInTime(this float start, float end, float t yield return end; } + + /// <summary> + /// Converts Degrees into Radians + /// </summary> + /// <param name="angleInDegree">The Angle in Degrees</param> + /// <returns>The Angle in Radians</returns> + public static float ToRadians(this float angleInDegree) + => angleInDegree * 2 * Mathf.PI / 360f; + + /// <summary> + /// Converts Radians into Degrees + /// </summary> + /// <param name="angleInRadians">The Angle in Radians</param> + /// <returns>The Angle in Degrees</returns> + public static float ToDegrees(this float angleInRadians) + => angleInRadians / 2 / Mathf.PI * 360f; } diff --git a/Assets/Scripts/Utility/Extensions/TypeExtensions.cs b/Assets/Scripts/Utility/Extensions/TypeExtensions.cs new file mode 100644 index 0000000000000000000000000000000000000000..653df6ed4ec89d961ab97a77bf2027dd434f61bb --- /dev/null +++ b/Assets/Scripts/Utility/Extensions/TypeExtensions.cs @@ -0,0 +1,50 @@ +using Newtonsoft.Json; +using System; +using System.Linq; +using System.Reflection; +using static UnityEditor.Search.SearchValue; + +public static class TypeExtensions +{ + /// <summary> Collection of <c>Type</c>s of *all* available <see cref="Type"/> to choose from in <see cref="Assembly.GetExecutingAssembly()"/>. </summary> + public static readonly Type[] ExecutingAssemblyTypes = Assembly.GetExecutingAssembly().GetTypes().ToArray(); + + /// <summary> Collection of <c>Type</c>s of *all* available <see cref="class"/><see cref="Type"/> to choose from in <see cref="Assembly.GetExecutingAssembly()"/>. </summary> + public static readonly Type[] ExecutingAssemblyClassTypes = Assembly.GetExecutingAssembly().GetTypes().Where(t => t.IsClass).ToArray(); + + /// <summary> Collection of <c>Type</c>s of *all* available <see cref="struct"/><see cref="Type"/> to choose from in <see cref="Assembly.GetExecutingAssembly()"/>. </summary> + public static readonly Type[] ExecutingAssemblyValueTypes = Assembly.GetExecutingAssembly().GetTypes().Where(t => t.IsValueType && !t.IsEnum).ToArray(); + + ///// <summary> + ///// Searches for a <see cref="Type"/> in Assemblies of <paramref name="checkTypeAssembly"/> which fulfills <paramref name="predicate"/> + ///// </summary> + ///// <param name="predicate">which has to return <c>true</c></param> + ///// <param name="checkTypeAssembly"><see cref="Type"/>s to check on their Assembly</param> + ///// <returns>the <see cref="Type"/> found or null if unable to</returns> + //public static Type GetTypeBy(Func<Type, bool> predicate, Type[] checkTypeAssembly) + //{ + // Type ret; + // foreach (Type t in checkTypeAssembly) + // { + // ret = Assembly.GetAssembly(t).GetTypes().FirstOrDefault(tt => predicate(tt)); + // if (ret != default(Type)) + // return ret; + // } + // return null; + //} +} + +public static class TypeExtensions<U> +{ + /// <summary> Collection of <c>Type</c>s of *all* available <see cref="Type"/> to choose from in <see cref="typeof(U).Assembly"/>. </summary> + public static readonly Type[] UAssemblyTypes = typeof(U).Assembly.GetTypes().ToArray(); + + /// <summary> Collection of <c>Type</c>s of *all* available <see cref="class"/><see cref="Type"/> to choose from in <see cref="typeof(U).Assembly"/>. </summary> + public static readonly Type[] UAssemblyClassTypes = typeof(U).Assembly.GetTypes().Where(t => t.IsClass).ToArray(); + + /// <summary> Collection of <c>Type</c>s of *all* available <see cref="struct"/><see cref="Type"/> to choose from in <see cref="typeof(U).Assembly"/>. </summary> + public static readonly Type[] UAssemblyValueTypes = typeof(U).Assembly.GetTypes().Where(t => t.IsValueType && !t.IsEnum).ToArray(); + + /// <summary> Collection of <c>Type</c>s of *all* available <see cref="U"/> to choose from in <see cref="typeof(U).Assembly"/>.</summary> + public static readonly Type[] UAssemblyInheritenceTypes = typeof(U).Assembly.GetTypes().Where(typeof(U).IsAssignableFrom).ToArray(); +} \ No newline at end of file diff --git a/Assets/Scripts/Utility/Extensions/TypeExtensions.cs.meta b/Assets/Scripts/Utility/Extensions/TypeExtensions.cs.meta new file mode 100644 index 0000000000000000000000000000000000000000..4986d2f1073fabdace0919edca39201b90821c78 --- /dev/null +++ b/Assets/Scripts/Utility/Extensions/TypeExtensions.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 71549e3ccbf6e1749bddb9c76d32e6d2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Stages/CanonBall A.JSON b/Assets/Stages/CanonBall A.JSON new file mode 100644 index 0000000000000000000000000000000000000000..5e67e1c303a6ff977ab80e3b5c82846a144f0000 --- /dev/null +++ b/Assets/Stages/CanonBall A.JSON @@ -0,0 +1 @@ +{"category":"Demo Category","number":2,"description":"CanonBall Test","scene":"RiverWorld","use_install_folder":true,"solution":{"ValidationSet":[],"WorkflowGadgetDict":{"-1":null},"FactDict":{"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1353":{"s_type":"PointFact","Point":{"x":0.0,"y":0.0,"z":12.2625,"normalized":{"x":0.0,"y":0.0,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":12.2625,"sqrMagnitude":150.3689},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1353","Label":"A","hasCustomLabel":false,"LabelId":1},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1354":{"s_type":"PointFact","Point":{"x":0.0,"y":0.0,"z":14.715,"normalized":{"x":0.0,"y":0.0,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":14.715,"sqrMagnitude":216.531235},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1354","Label":"B","hasCustomLabel":false,"LabelId":2},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1355":{"s_type":"LineFact","Distance":2.45250034,"Pid1":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1353","Pid2":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1354","Dir":{"x":0.0,"y":0.0,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1355","Label":"[AB]","hasCustomLabel":false,"LabelId":0},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1356":{"s_type":"PointFact","Point":{"x":0.0,"y":0.0,"z":0.0,"magnitude":0.0,"sqrMagnitude":0.0},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1356","Label":"C","hasCustomLabel":false,"LabelId":3},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1357":{"s_type":"PointFact","Point":{"x":0.0,"y":19.6199989,"z":-8.576174E-07,"normalized":{"x":0.0,"y":1.0,"z":-4.371139E-08,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":19.6199989,"sqrMagnitude":384.944366},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1357","Label":"D","hasCustomLabel":false,"LabelId":4},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1358":{"s_type":"LineFact","Distance":19.6199989,"Pid1":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1356","Pid2":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1357","Dir":{"x":0.0,"y":1.0,"z":-4.371139E-08,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1358","Label":"[CD]","hasCustomLabel":false,"LabelId":0},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1359":{"s_type":"PointFact","Point":{"x":0.0,"y":0.0,"z":19.6199989,"normalized":{"x":0.0,"y":0.0,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":19.6199989,"sqrMagnitude":384.944366},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1359","Label":"E","hasCustomLabel":false,"LabelId":5},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1360":{"s_type":"PointFact","Point":{"x":0.0,"y":19.6199989,"z":19.6199989,"normalized":{"x":0.0,"y":0.707106769,"z":0.707106769,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":27.7468681,"sqrMagnitude":769.888733},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1360","Label":"F","hasCustomLabel":false,"LabelId":6},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1361":{"s_type":"LineFact","Distance":19.6199989,"Pid1":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1359","Pid2":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1360","Dir":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1361","Label":"[EF]","hasCustomLabel":false,"LabelId":0},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1364":{"s_type":"LineFact","Distance":19.6199989,"Pid1":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1357","Pid2":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1360","Dir":{"x":0.0,"y":0.0,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1364","Label":"[DF]","hasCustomLabel":false,"LabelId":0},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1365":{"s_type":"PointFact","Point":{"x":0.0,"y":9.809999,"z":2.45249987,"normalized":{"x":0.0,"y":0.970142543,"z":0.242535636,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":10.1119156,"sqrMagnitude":102.250847},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1365","Label":"G","hasCustomLabel":false,"LabelId":7},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1366":{"s_type":"PointFact","Point":{"x":0.0,"y":13.2783585,"z":5.920859,"normalized":{"x":0.0,"y":0.913316548,"z":0.407250524,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":14.5386162,"sqrMagnitude":211.371368},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1366","Label":"H","hasCustomLabel":false,"LabelId":8},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1367":{"s_type":"LineFact","Distance":4.905,"Pid1":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1365","Pid2":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1366","Dir":{"x":0.0,"y":0.707106769,"z":0.707106769,"magnitude":1.0,"sqrMagnitude":0.99999994},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1367","Label":"[GH]","hasCustomLabel":false,"LabelId":0},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1368":{"s_type":"PointFact","Point":{"x":0.0,"y":4.90499973,"z":7.3575,"normalized":{"x":0.0,"y":0.5547002,"z":0.8320503,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":8.842614,"sqrMagnitude":78.19183},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1368","Label":"I","hasCustomLabel":false,"LabelId":9},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1369":{"s_type":"PointFact","Point":{"x":0.0,"y":4.90499973,"z":9.809999,"normalized":{"x":0.0,"y":0.4472136,"z":0.8944272,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":10.9679127,"sqrMagnitude":120.295113},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1369","Label":"J","hasCustomLabel":false,"LabelId":10},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1370":{"s_type":"LineFact","Distance":2.45249939,"Pid1":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1368","Pid2":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1369","Dir":{"x":0.0,"y":0.0,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1370","Label":"[IJ]","hasCustomLabel":false,"LabelId":0},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1371":{"s_type":"PointFact","Point":{"x":0.0,"y":9.809999,"z":9.809999,"normalized":{"x":0.0,"y":0.707106769,"z":0.707106769,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":13.8734341,"sqrMagnitude":192.472183},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1371","Label":"K","hasCustomLabel":false,"LabelId":11},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1372":{"s_type":"PointFact","Point":{"x":0.0,"y":14.0578547,"z":7.3574996,"normalized":{"x":0.0,"y":0.8859905,"z":0.4637034,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":15.8668232,"sqrMagnitude":251.756073},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1372","Label":"L","hasCustomLabel":false,"LabelId":12},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1373":{"s_type":"LineFact","Distance":4.905,"Pid1":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1371","Pid2":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1372","Dir":{"x":0.0,"y":0.8660255,"z":-0.49999994,"normalized":{"x":0.0,"y":0.8660254,"z":-0.499999881,"normalized":{"x":0.0,"y":0.866025448,"z":-0.4999999,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":1.00000012,"sqrMagnitude":1.00000012},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1373","Label":"[KL]","hasCustomLabel":false,"LabelId":0},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1374":{"s_type":"PointFact","Point":{"x":0.0,"y":14.715,"z":14.715,"normalized":{"x":0.0,"y":0.7071068,"z":0.7071068,"normalized":{"x":0.0,"y":0.707106769,"z":0.707106769,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":1.00000012,"sqrMagnitude":1.00000012},"magnitude":20.8101521,"sqrMagnitude":433.062469},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1374","Label":"M","hasCustomLabel":false,"LabelId":13},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1375":{"s_type":"PointFact","Point":{"x":0.0,"y":16.677,"z":11.3167162,"normalized":{"x":0.0,"y":0.8274716,"z":0.5615076,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":20.1541653,"sqrMagnitude":406.1904},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1375","Label":"N","hasCustomLabel":false,"LabelId":14},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1376":{"s_type":"LineFact","Distance":3.92400026,"Pid1":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1374","Pid2":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1375","Dir":{"x":0.0,"y":0.49999994,"z":-0.8660254,"normalized":{"x":0.0,"y":0.49999997,"z":-0.866025448,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1376","Label":"[MN]","hasCustomLabel":false,"LabelId":0},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1377":{"s_type":"PointFact","Point":{"x":0.0,"y":4.90499973,"z":14.715,"normalized":{"x":0.0,"y":0.316227734,"z":0.9486833,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":15.510972,"sqrMagnitude":240.590256},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1377","Label":"O","hasCustomLabel":false,"LabelId":15},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1378":{"s_type":"PointFact","Point":{"x":0.0,"y":7.3575,"z":18.9628544,"normalized":{"x":0.0,"y":0.3617226,"z":0.9322858,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":20.3401737,"sqrMagnitude":413.722656},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1378","Label":"P","hasCustomLabel":false,"LabelId":16},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1379":{"s_type":"LineFact","Distance":4.90499973,"Pid1":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1377","Pid2":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1378","Dir":{"x":0.0,"y":0.5000001,"z":0.8660254,"magnitude":1.0,"sqrMagnitude":1.00000012},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1379","Label":"[OP]","hasCustomLabel":false,"LabelId":0},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1380":{"s_type":"PointFact","Point":{"x":0.0,"y":2.45249987,"z":2.45249987,"normalized":{"x":0.0,"y":0.707106769,"z":0.707106769,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":3.46835852,"sqrMagnitude":12.0295115},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1380","Label":"Q","hasCustomLabel":false,"LabelId":17},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1381":{"s_type":"PointFact","Point":{"x":0.0,"y":6.70035458,"z":4.90499973,"normalized":{"x":0.0,"y":0.806898236,"z":0.5906905,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":8.303841,"sqrMagnitude":68.95377},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1381","Label":"R","hasCustomLabel":false,"LabelId":18},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1382":{"s_type":"LineFact","Distance":4.905,"Pid1":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1380","Pid2":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1381","Dir":{"x":0.0,"y":0.8660254,"z":0.49999994,"normalized":{"x":0.0,"y":0.866025448,"z":0.49999997,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1382","Label":"[QR]","hasCustomLabel":false,"LabelId":0},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1385":{"s_type":"LineFact","Distance":4.904999,"Pid1":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1354","Pid2":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1359","Dir":{"x":0.0,"y":0.0,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1385","Label":"[BE]","hasCustomLabel":false,"LabelId":0},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1388":{"s_type":"LineFact","Distance":12.2625,"Pid1":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1356","Pid2":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1353","Dir":{"x":0.0,"y":0.0,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1388","Label":"[CA]","hasCustomLabel":false,"LabelId":0},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1389":{"s_type":"PointFact","Point":{"x":0.0,"y":14.715,"z":18.639,"normalized":{"x":0.0,"y":0.6196443,"z":0.7848828,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":23.7474957,"sqrMagnitude":563.943542},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1389","Label":"S","hasCustomLabel":false,"LabelId":19},"t => Invoke((t, t, t) => ((0.00, 14.72, 18.64) + (((0.00, 7.36, -24.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.350781)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":14.715,"z":18.639,"normalized":{"x":0.0,"y":0.6196443,"z":0.7848828,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":23.7474957,"sqrMagnitude":563.943542}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":7.3575,"z":-24.0345,"normalized":{"x":0.0,"y":0.292714268,"z":-0.956199944,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":25.1354332,"sqrMagnitude":631.79}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":2.3507812},"Id":"t => Invoke((t, t, t) => ((0.00, 14.72, 18.64) + (((0.00, 7.36, -24.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.350781)","Label":"T","hasCustomLabel":false,"LabelId":20},"t => Invoke((t, t, t) => ((0.00, 4.90, -37.86) + (((0.00, 15.46, -23.66) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.904997,"z":-37.86085,"normalized":{"x":0.0,"y":0.128479555,"z":-0.991712153,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":38.1772575,"sqrMagnitude":1457.503}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":15.455718,"z":-23.65502,"normalized":{"x":0.0,"y":0.546976,"z":-0.8371483,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":28.2566662,"sqrMagnitude":798.4392}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -37.86) + (((0.00, 15.46, -23.66) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"U","hasCustomLabel":false,"LabelId":21},"t => Invoke((t, t, t) => ((0.00, 4.91, -37.86) + (((0.00, -15.21, -23.28) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.294486)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90499973,"z":-37.8608551,"normalized":{"x":0.0,"y":0.128479615,"z":-0.991712153,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":38.17726,"sqrMagnitude":1457.50342}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-15.2116861,"z":-23.28153,"normalized":{"x":0.0,"y":-0.546976,"z":-0.8371483,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":27.81052,"sqrMagnitude":773.425049}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.294486},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -37.86) + (((0.00, -15.21, -23.28) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.294486)","Label":"V","hasCustomLabel":false,"LabelId":22},"t => Invoke((t, t, t) => ((0.00, 0.00, -44.72) + (((0.00, 20.72, -26.65) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2517014)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-2.08616257E-07,"z":-44.716938,"normalized":{"x":0.0,"y":-4.6652624E-09,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":44.716938,"sqrMagnitude":1999.60449}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":20.7219677,"z":-26.6532211,"normalized":{"x":0.0,"y":0.6137871,"z":-0.789471567,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":33.7608376,"sqrMagnitude":1139.79419}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.2517014},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -44.72) + (((0.00, 20.72, -26.65) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2517014)","Label":"W","hasCustomLabel":false,"LabelId":23},"t => Invoke((t, t, t) => ((0.00, 4.90, -51.43) + (((0.00, -17.97, -26.24) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2551696)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90499926,"z":-51.42559,"normalized":{"x":0.0,"y":0.0949495956,"z":-0.9954821,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":51.65898,"sqrMagnitude":2668.65039}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-17.9708939,"z":-26.2416077,"normalized":{"x":0.0,"y":-0.565028846,"z":-0.8250711,"normalized":{"x":0.0,"y":-0.5650289,"z":-0.825071156,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":31.8052673,"sqrMagnitude":1011.575}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.25516963},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -51.43) + (((0.00, -17.97, -26.24) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2551696)","Label":"X","hasCustomLabel":false,"LabelId":24},"t => Invoke((t, t, t) => ((0.00, 0.00, -58.12) + (((0.00, 23.43, -30.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2193891)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":1.04308128E-06,"z":-58.12165,"normalized":{"x":0.0,"y":1.79465189E-08,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":58.12165,"sqrMagnitude":3378.12622}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":23.4336433,"z":-30.0348377,"normalized":{"x":0.0,"y":0.6151374,"z":-0.788419962,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":38.0949745,"sqrMagnitude":1451.22717}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.219389051},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -58.12) + (((0.00, 23.43, -30.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2193891)","Label":"Y","hasCustomLabel":false,"LabelId":25},"t => Invoke((t, t, t) => ((0.00, 4.91, -64.71) + (((0.00, -20.96, -29.58) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2224558)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905,"z":-64.71097,"normalized":{"x":0.0,"y":0.0755817741,"z":-0.9971396,"normalized":{"x":0.0,"y":0.07558178,"z":-0.997139633,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":64.8966,"sqrMagnitude":4211.56836}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-20.9581947,"z":-29.57864,"normalized":{"x":0.0,"y":-0.578139663,"z":-0.8159378,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":36.2510948,"sqrMagnitude":1314.14185}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.22245577},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -64.71) + (((0.00, -20.96, -29.58) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2224558)","Label":"Z","hasCustomLabel":false,"LabelId":26},"t => Invoke((t, t, t) => ((0.00, 0.00, -71.29) + (((0.00, 26.48, -33.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.192063)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-2.90572643E-06,"z":-71.29091,"normalized":{"x":0.0,"y":-4.07587244E-08,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":71.29091,"sqrMagnitude":5082.39355}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":26.4805946,"z":-33.8480377,"normalized":{"x":0.0,"y":0.6161759,"z":-0.7876086,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":42.975708,"sqrMagnitude":1846.9115}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.192063019},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -71.29) + (((0.00, 26.48, -33.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.192063)","Label":"[","hasCustomLabel":false,"LabelId":27},"t => Invoke((t, t, t) => ((0.00, 4.91, -77.79) + (((0.00, -24.23, -33.34) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1947749)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905003,"z":-77.79186,"normalized":{"x":0.0,"y":0.06292794,"z":-0.998018,"normalized":{"x":0.0,"y":0.06292795,"z":-0.9980181,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":77.94635,"sqrMagnitude":6075.633}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-24.2275429,"z":-33.3403625,"normalized":{"x":0.0,"y":-0.5878544,"z":-0.808966756,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":41.2135124,"sqrMagnitude":1698.55359}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.194774911},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -77.79) + (((0.00, -24.23, -33.34) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1947749)","Label":"\\","hasCustomLabel":false,"LabelId":28},"t => Invoke((t, t, t) => ((0.00, 0.00, -84.29) + (((0.00, 29.91, -38.15) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1686753)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":3.412366E-06,"z":-84.28573,"normalized":{"x":0.0,"y":4.048569E-08,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":84.28573,"sqrMagnitude":7104.084}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":29.9068546,"z":-38.147316,"normalized":{"x":0.0,"y":0.6169789,"z":-0.786979735,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":48.47306,"sqrMagnitude":2349.6377}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.168675348},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -84.29) + (((0.00, 29.91, -38.15) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1686753)","Label":"]","hasCustomLabel":false,"LabelId":29},"t => Invoke((t, t, t) => ((0.00, 4.90, -90.72) + (((0.00, -27.83, -37.58) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1710752)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.9049983,"z":-90.72024,"normalized":{"x":0.0,"y":0.05398845,"z":-0.9985416,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":90.85274,"sqrMagnitude":8254.221}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-27.8324776,"z":-37.580658,"normalized":{"x":0.0,"y":-0.595157862,"z":-0.8036088,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":46.7648659,"sqrMagnitude":2186.95264}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.17107518},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -90.72) + (((0.00, -27.83, -37.58) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1710752)","Label":"^","hasCustomLabel":false,"LabelId":30},"t => Invoke((t, t, t) => ((0.00, 0.00, -97.15) + (((0.00, 33.76, -42.99) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1484858)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.38773155E-07,"z":-97.14935,"normalized":{"x":0.0,"y":-9.663195E-09,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":97.14935,"sqrMagnitude":9437.997}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":33.7618065,"z":-42.99423,"normalized":{"x":0.0,"y":0.6176024,"z":-0.7864905,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":54.6659241,"sqrMagnitude":2988.36328}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.148485839},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -97.15) + (((0.00, 33.76, -42.99) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1484858)","Label":"_","hasCustomLabel":false,"LabelId":31},"t => Invoke((t, t, t) => ((0.00, 4.91, -103.53) + (((0.00, -31.83, -42.36) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90500355,"z":-103.533386,"normalized":{"x":0.0,"y":0.0473229773,"z":-0.9988796,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":103.649513,"sqrMagnitude":10743.2207}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-31.8288441,"z":-42.36031,"normalized":{"x":0.0,"y":-0.6007077,"z":-0.7994687,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":52.9855766,"sqrMagnitude":2807.47119}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -103.53) + (((0.00, -31.83, -42.36) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"`","hasCustomLabel":false,"LabelId":32},"t => Invoke((t, t, t) => ((0.00, 4.90, -103.53) + (((0.00, 31.36, -41.74) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5099022)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90499735,"z":-103.533394,"normalized":{"x":0.0,"y":0.047322914,"z":-0.9988796,"normalized":{"x":0.0,"y":0.0473229177,"z":-0.9988797,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":103.649521,"sqrMagnitude":10743.2227}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":31.3595524,"z":-41.7357368,"normalized":{"x":0.0,"y":0.600707769,"z":-0.7994687,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":52.20434,"sqrMagnitude":2725.29321}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.5099022},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -103.53) + (((0.00, 31.36, -41.74) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5099022)","Label":"a","hasCustomLabel":false,"LabelId":33},"t => Invoke((t, t, t) => ((0.00, 19.62, -124.81) + (((0.00, -25.93, -41.07) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5168604)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.62,"z":-124.814537,"normalized":{"x":0.0,"y":0.1552864,"z":-0.9878695,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":126.347191,"sqrMagnitude":15963.6133}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-25.9347687,"z":-41.0665,"normalized":{"x":0.0,"y":-0.533964038,"z":-0.8455072,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":48.5702553,"sqrMagnitude":2359.06982}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.5168604},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -124.81) + (((0.00, -25.93, -41.07) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5168604)","Label":"b","hasCustomLabel":false,"LabelId":34},"t => Invoke((t, t, t) => ((0.00, 4.91, -146.04) + (((0.00, 30.55, -40.46) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5261275)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90500069,"z":-146.040192,"normalized":{"x":0.0,"y":0.03356772,"z":-0.999436438,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":146.122543,"sqrMagnitude":21351.7969}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":30.5491581,"z":-40.462513,"normalized":{"x":0.0,"y":0.6025503,"z":-0.798080862,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":50.6997643,"sqrMagnitude":2570.466}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.526127458},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -146.04) + (((0.00, 30.55, -40.46) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5261275)","Label":"c","hasCustomLabel":false,"LabelId":35},"t => Invoke((t, t, t) => ((0.00, 19.62, -167.33) + (((0.00, -24.98, -39.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5332459)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.619997,"z":-167.328629,"normalized":{"x":0.0,"y":0.116456456,"z":-0.993195832,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":168.47496,"sqrMagnitude":28383.8145}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-24.9795685,"z":-39.8118057,"normalized":{"x":0.0,"y":-0.53148514,"z":-0.8470676,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":46.99956,"sqrMagnitude":2208.95874}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.5332459},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -167.33) + (((0.00, -24.98, -39.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5332459)","Label":"d","hasCustomLabel":false,"LabelId":36},"t => Invoke((t, t, t) => ((0.00, 4.91, -188.56) + (((0.00, 29.77, -39.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5428956)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905001,"z":-188.5581,"normalized":{"x":0.0,"y":0.0260044113,"z":-0.999661863,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":188.621887,"sqrMagnitude":35578.22}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":29.76756,"z":-39.2278175,"normalized":{"x":0.0,"y":0.60449636,"z":-0.796607852,"normalized":{"x":0.0,"y":0.6044964,"z":-0.7966079,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":49.2435722,"sqrMagnitude":2424.9292}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.5428956},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -188.56) + (((0.00, 29.77, -39.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5428956)","Label":"e","hasCustomLabel":false,"LabelId":37},"t => Invoke((t, t, t) => ((0.00, 19.62, -209.85) + (((0.00, -24.05, -38.60) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5501742)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-209.854721,"normalized":{"x":0.0,"y":0.09308729,"z":-0.9956579,"normalized":{"x":0.0,"y":0.0930873,"z":-0.995658,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":210.7699,"sqrMagnitude":44423.95}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-24.0474663,"z":-38.595005,"normalized":{"x":0.0,"y":-0.5288217,"z":-0.848732948,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":45.4736748,"sqrMagnitude":2067.855}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.550174236},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -209.85) + (((0.00, -24.05, -38.60) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5501742)","Label":"f","hasCustomLabel":false,"LabelId":38},"t => Invoke((t, t, t) => ((0.00, 4.91, -231.09) + (((0.00, 29.01, -38.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5602289)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905,"z":-231.0887,"normalized":{"x":0.0,"y":0.0212208368,"z":-0.9997748,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":231.140747,"sqrMagnitude":53426.0469}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":29.01397,"z":-38.0304527,"normalized":{"x":0.0,"y":0.6065508,"z":-0.7950447,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":47.83436,"sqrMagnitude":2288.12573}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.560228944},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -231.09) + (((0.00, 29.01, -38.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5602289)","Label":"g","hasCustomLabel":false,"LabelId":39},"t => Invoke((t, t, t) => ((0.00, 19.62, -252.39) + (((0.00, -23.14, -37.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.567667)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-252.394455,"normalized":{"x":0.0,"y":0.0775016546,"z":-0.99699223,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":253.155884,"sqrMagnitude":64087.9063}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-23.1374741,"z":-37.414917,"normalized":{"x":0.0,"y":-0.5259578,"z":-0.850510657,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":43.99112,"sqrMagnitude":1935.21875}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.567667},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -252.39) + (((0.00, -23.14, -37.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.567667)","Label":"h","hasCustomLabel":false,"LabelId":40},"t => Invoke((t, t, t) => ((0.00, 4.91, -273.63) + (((0.00, 28.29, -36.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5781516)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905003,"z":-273.633667,"normalized":{"x":0.0,"y":0.0179225579,"z":-0.9998394,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":273.6776,"sqrMagnitude":74899.4453}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":28.28763,"z":-36.86925,"normalized":{"x":0.0,"y":0.6087189,"z":-0.793386042,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":46.47076,"sqrMagnitude":2159.53174}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.578151643},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -273.63) + (((0.00, 28.29, -36.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5781516)","Label":"i","hasCustomLabel":false,"LabelId":41},"t => Invoke((t, t, t) => ((0.00, 19.62, -294.95) + (((0.00, -22.25, -36.27) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.62,"z":-294.949677,"normalized":{"x":0.0,"y":0.06637315,"z":-0.9977949,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":295.6015,"sqrMagnitude":87380.26}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-22.2486115,"z":-36.2703857,"normalized":{"x":0.0,"y":-0.5228759,"z":-0.852408767,"normalized":{"x":0.0,"y":-0.522875965,"z":-0.8524088,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":42.55046,"sqrMagnitude":1810.54163}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -294.95) + (((0.00, -22.25, -36.27) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"j","hasCustomLabel":false,"LabelId":42},"t => Invoke((t, t, t) => ((0.00, 19.62, -294.95) + (((0.00, 21.89, -35.68) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.619997,"z":-294.949677,"normalized":{"x":0.0,"y":0.06637313,"z":-0.9977949,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":295.6015,"sqrMagnitude":87380.26}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":21.88723,"z":-35.6812477,"normalized":{"x":0.0,"y":0.522875965,"z":-0.8524088,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":41.859314,"sqrMagnitude":1752.20227}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -294.95) + (((0.00, 21.89, -35.68) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"k","hasCustomLabel":false,"LabelId":43},"t => Invoke((t, t, t) => ((0.00, 19.62, -294.95) + (((0.00, -21.53, -35.10) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6011003)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.62,"z":-294.949677,"normalized":{"x":0.0,"y":0.06637315,"z":-0.9977949,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":295.6015,"sqrMagnitude":87380.26}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-21.5317135,"z":-35.1016769,"normalized":{"x":0.0,"y":-0.5228759,"z":-0.852408767,"normalized":{"x":0.0,"y":-0.522875965,"z":-0.8524088,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":41.1793938,"sqrMagnitude":1695.74243}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.601100266},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -294.95) + (((0.00, -21.53, -35.10) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6011003)","Label":"l","hasCustomLabel":false,"LabelId":44},"t => Invoke((t, t, t) => ((0.00, 4.91, -316.05) + (((0.00, 27.03, -34.59) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6123966)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905,"z":-316.049316,"normalized":{"x":0.0,"y":0.0155178616,"z":-0.9998796,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":316.087372,"sqrMagnitude":99911.23}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":27.0323486,"z":-34.5946922,"normalized":{"x":0.0,"y":0.6157182,"z":-0.7879664,"normalized":{"x":0.0,"y":0.615718246,"z":-0.78796643,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":43.9037666,"sqrMagnitude":1927.54065}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.6123966},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -316.05) + (((0.00, 27.03, -34.59) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6123966)","Label":"m","hasCustomLabel":false,"LabelId":45},"t => Invoke((t, t, t) => ((0.00, 19.62, -337.24) + (((0.00, -20.68, -34.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6202529)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-337.235,"normalized":{"x":0.0,"y":0.0580808,"z":-0.9983119,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":337.805237,"sqrMagnitude":114112.383}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-20.6818523,"z":-34.0305,"normalized":{"x":0.0,"y":-0.5193538,"z":-0.854559362,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":39.8222771,"sqrMagnitude":1585.81384}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.6202529},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -337.24) + (((0.00, -20.68, -34.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6202529)","Label":"n","hasCustomLabel":false,"LabelId":46},"t => Invoke((t, t, t) => ((0.00, 4.91, -358.34) + (((0.00, 26.38, -33.54) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6320594)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90499973,"z":-358.3425,"normalized":{"x":0.0,"y":0.0136867389,"z":-0.9999063,"normalized":{"x":0.0,"y":0.01368674,"z":-0.999906361,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":358.376068,"sqrMagnitude":128433.406}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":26.3812923,"z":-33.54071,"normalized":{"x":0.0,"y":0.6182254,"z":-0.7860009,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":42.67261,"sqrMagnitude":1820.95178}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.6320594},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -358.34) + (((0.00, 26.38, -33.54) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6320594)","Label":"o","hasCustomLabel":false,"LabelId":47},"t => Invoke((t, t, t) => ((0.00, 19.62, -379.54) + (((0.00, -19.85, -32.99) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6400672)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.62,"z":-379.5422,"normalized":{"x":0.0,"y":0.0516249277,"z":-0.9986665,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":380.048981,"sqrMagnitude":144437.234}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-19.8502426,"z":-32.9913368,"normalized":{"x":0.0,"y":-0.51555413,"z":-0.856857061,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":38.50273,"sqrMagnitude":1482.46045}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.64006716},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -379.54) + (((0.00, -19.85, -32.99) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6400672)","Label":"p","hasCustomLabel":false,"LabelId":48},"t => Invoke((t, t, t) => ((0.00, 4.91, -400.66) + (((0.00, 25.75, -32.52) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.652419)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905003,"z":-400.658875,"normalized":{"x":0.0,"y":0.012241425,"z":-0.9999251,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":400.6889,"sqrMagnitude":160551.6}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":25.7546329,"z":-32.5182724,"normalized":{"x":0.0,"y":0.620865941,"z":-0.7839168,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":41.4817924,"sqrMagnitude":1720.73914}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.652419031},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -400.66) + (((0.00, 25.75, -32.52) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.652419)","Label":"q","hasCustomLabel":false,"LabelId":49},"t => Invoke((t, t, t) => ((0.00, 19.62, -421.87) + (((0.00, -19.04, -31.98) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6605752)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-421.87442,"normalized":{"x":0.0,"y":0.0464565158,"z":-0.9989203,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":422.3304,"sqrMagnitude":178362.969}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-19.0359173,"z":-31.9831715,"normalized":{"x":0.0,"y":-0.511450469,"z":-0.859312832,"normalized":{"x":0.0,"y":-0.5114504,"z":-0.8593127,"normalized":{"x":0.0,"y":-0.511450469,"z":-0.8593128,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":1.00000012,"sqrMagnitude":1.00000012},"magnitude":37.2194748,"sqrMagnitude":1385.28943}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.660575151},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -421.87) + (((0.00, -19.04, -31.98) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6605752)","Label":"r","hasCustomLabel":false,"LabelId":50},"t => Invoke((t, t, t) => ((0.00, 4.91, -443.00) + (((0.00, 25.15, -31.53) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6735125)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90500164,"z":-443.0017,"normalized":{"x":0.0,"y":0.0110715171,"z":-0.999938667,"normalized":{"x":0.0,"y":0.0110715181,"z":-0.9999387,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":443.02887,"sqrMagnitude":196274.578}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":25.1517239,"z":-31.526371,"normalized":{"x":0.0,"y":0.6236456,"z":-0.781707168,"normalized":{"x":0.0,"y":0.623645663,"z":-0.7817072,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":40.3301544,"sqrMagnitude":1626.52124}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.673512459},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -443.00) + (((0.00, 25.15, -31.53) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6735125)","Label":"s","hasCustomLabel":false,"LabelId":51},"t => Invoke((t, t, t) => ((0.00, 19.62, -464.24) + (((0.00, -18.24, -31.01) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.62,"z":-464.2351,"normalized":{"x":0.0,"y":0.0422253758,"z":-0.9991081,"normalized":{"x":0.0,"y":0.04222538,"z":-0.999108136,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":464.649536,"sqrMagnitude":215899.172}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-18.2378864,"z":-31.0050049,"normalized":{"x":0.0,"y":-0.5070129,"z":-0.861938536,"normalized":{"x":0.0,"y":-0.507012844,"z":-0.8619384,"normalized":{"x":0.0,"y":-0.5070129,"z":-0.8619385,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":1.00000012,"sqrMagnitude":1.00000012},"magnitude":35.97125,"sqrMagnitude":1293.93079}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -464.24) + (((0.00, -18.24, -31.01) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"t","hasCustomLabel":false,"LabelId":52},"t => Invoke((t, t, t) => ((0.00, 19.62, -464.24) + (((0.00, 17.94, -30.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.656734)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.619997,"z":-464.2351,"normalized":{"x":0.0,"y":0.04222537,"z":-0.9991081,"normalized":{"x":0.0,"y":0.042225372,"z":-0.999108136,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":464.649536,"sqrMagnitude":215899.172}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":17.93628,"z":-30.49226,"normalized":{"x":0.0,"y":0.5070129,"z":-0.8619385,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":35.3763771,"sqrMagnitude":1251.488}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":3.656734},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -464.24) + (((0.00, 17.94, -30.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.656734)","Label":"u","hasCustomLabel":false,"LabelId":53},"t => Invoke((t, t, t) => ((0.00, 19.62, -575.74) + (((0.00, 17.64, -29.99) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199951,"z":-575.7372,"normalized":{"x":0.0,"y":0.03405827,"z":-0.9994198,"normalized":{"x":0.0,"y":0.0340582728,"z":-0.999419868,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":576.0714,"sqrMagnitude":331858.25}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":17.639658,"z":-29.9879951,"normalized":{"x":0.0,"y":0.5070129,"z":-0.8619385,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":34.79134,"sqrMagnitude":1210.43738}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -575.74) + (((0.00, 17.64, -29.99) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"v","hasCustomLabel":false,"LabelId":54},"t => Invoke((t, t, t) => ((0.00, 19.62, -575.74) + (((0.00, -17.35, -29.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7069278)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-575.7372,"normalized":{"x":0.0,"y":0.0340582766,"z":-0.9994198,"normalized":{"x":0.0,"y":0.03405828,"z":-0.999419868,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":576.0714,"sqrMagnitude":331858.25}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-17.34794,"z":-29.49207,"normalized":{"x":0.0,"y":-0.507012844,"z":-0.861938536,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":34.2159767,"sqrMagnitude":1170.73315}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.7069278},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -575.74) + (((0.00, -17.35, -29.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7069278)","Label":"w","hasCustomLabel":false,"LabelId":55},"t => Invoke((t, t, t) => ((0.00, 4.91, -596.59) + (((0.00, 23.94, -29.08) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7211544)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90499973,"z":-596.585938,"normalized":{"x":0.0,"y":0.008221505,"z":-0.999966264,"normalized":{"x":0.0,"y":0.008221504,"z":-0.999966145,"normalized":{"x":0.0,"y":0.008221505,"z":-0.9999662,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":1.00000012,"sqrMagnitude":1.00000012},"magnitude":596.6061,"sqrMagnitude":355938.844}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":23.9420433,"z":-29.07809,"normalized":{"x":0.0,"y":0.6356341,"z":-0.7719904,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":37.66639,"sqrMagnitude":1418.75684}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.7211544},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -596.59) + (((0.00, 23.94, -29.08) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7211544)","Label":"x","hasCustomLabel":false,"LabelId":56},"t => Invoke((t, t, t) => ((0.00, 19.62, -617.56) + (((0.00, -16.59, -28.59) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7296908)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.619997,"z":-617.5557,"normalized":{"x":0.0,"y":0.0317543857,"z":-0.9994957,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":617.8673,"sqrMagnitude":381760.031}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-16.5869427,"z":-28.5944,"normalized":{"x":0.0,"y":-0.501767635,"z":-0.8650024,"normalized":{"x":0.0,"y":-0.5017677,"z":-0.865002453,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":33.05702,"sqrMagnitude":1092.76636}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.7296908},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -617.56) + (((0.00, -16.59, -28.59) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7296908)","Label":"y","hasCustomLabel":false,"LabelId":57},"t => Invoke((t, t, t) => ((0.00, 4.90, -638.42) + (((0.00, 23.41, -28.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90499735,"z":-638.4208,"normalized":{"x":0.0,"y":0.00768278958,"z":-0.999970436,"normalized":{"x":0.0,"y":0.00768279,"z":-0.9999705,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":638.439636,"sqrMagnitude":407605.156}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":23.4134789,"z":-28.1949253,"normalized":{"x":0.0,"y":0.638858259,"z":-0.7693244,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":36.64894,"sqrMagnitude":1343.14478}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -638.42) + (((0.00, 23.41, -28.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"z","hasCustomLabel":false,"LabelId":58},"t => Invoke((t, t, t) => ((0.00, 4.91, -638.42) + (((0.00, -23.09, -27.80) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905002,"z":-638.4208,"normalized":{"x":0.0,"y":0.007682797,"z":-0.999970436,"normalized":{"x":0.0,"y":0.0076827975,"z":-0.9999705,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":638.439636,"sqrMagnitude":407605.156}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-23.0863819,"z":-27.8010311,"normalized":{"x":0.0,"y":-0.638858259,"z":-0.7693244,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":36.13694,"sqrMagnitude":1305.87842}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -638.42) + (((0.00, -23.09, -27.80) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"{","hasCustomLabel":false,"LabelId":59},"t => Invoke((t, t, t) => ((0.00, 4.90, -638.42) + (((0.00, 22.76, -27.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7762588)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.904998,"z":-638.4208,"normalized":{"x":0.0,"y":0.00768279,"z":-0.999970436,"normalized":{"x":0.0,"y":0.00768279051,"z":-0.9999705,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":638.439636,"sqrMagnitude":407605.156}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":22.7638588,"z":-27.41264,"normalized":{"x":0.0,"y":0.6388583,"z":-0.7693245,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":35.63209,"sqrMagnitude":1269.64612}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.776258767},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -638.42) + (((0.00, 22.76, -27.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7762588)","Label":"|","hasCustomLabel":false,"LabelId":60},"t => Invoke((t, t, t) => ((0.00, 19.62, -659.70) + (((0.00, -14.89, -26.95) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7851053)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-659.7001,"normalized":{"x":0.0,"y":0.0297276415,"z":-0.999558032,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":659.99176,"sqrMagnitude":435589.125}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-14.8917618,"z":-26.9475842,"normalized":{"x":0.0,"y":-0.483678043,"z":-0.875246,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":30.7885838,"sqrMagnitude":947.9369}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.785105348},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -659.70) + (((0.00, -14.89, -26.95) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7851053)","Label":"}","hasCustomLabel":false,"LabelId":61},"t => Invoke((t, t, t) => ((0.00, 4.91, -680.86) + (((0.00, 22.28, -26.57) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8021103)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90500259,"z":-680.85675,"normalized":{"x":0.0,"y":0.00720397569,"z":-0.9999741,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":680.8744,"sqrMagnitude":463589.969}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":22.2797031,"z":-26.573143,"normalized":{"x":0.0,"y":0.6424861,"z":-0.7662973,"normalized":{"x":0.0,"y":0.642486155,"z":-0.76629734,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":34.67733,"sqrMagnitude":1202.51709}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.8021103},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -680.86) + (((0.00, 22.28, -26.57) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8021103)","Label":"~","hasCustomLabel":false,"LabelId":62},"t => Invoke((t, t, t) => ((0.00, 19.62, -702.17) + (((0.00, -14.16, -26.12) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8110591)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-702.1713,"normalized":{"x":0.0,"y":0.0279309954,"z":-0.9996099,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":702.4454,"sqrMagnitude":493429.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-14.1647,"z":-26.1189766,"normalized":{"x":0.0,"y":-0.476723373,"z":-0.879053354,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":29.7126179,"sqrMagnitude":882.839661}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.8110591},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -702.17) + (((0.00, -14.16, -26.12) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8110591)","Label":"","hasCustomLabel":false,"LabelId":63},"t => Invoke((t, t, t) => ((0.00, 4.90, -723.36) + (((0.00, 21.82, -25.76) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8290595)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.9049983,"z":-723.355347,"normalized":{"x":0.0,"y":0.00678074174,"z":-0.999977052,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":723.371948,"sqrMagnitude":523267.031}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":21.8155632,"z":-25.7581177,"normalized":{"x":0.0,"y":0.6462915,"z":-0.76309067,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":33.75499,"sqrMagnitude":1139.39941}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.829059541},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -723.36) + (((0.00, 21.82, -25.76) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8290595)","Label":"€","hasCustomLabel":false,"LabelId":64},"t => Invoke((t, t, t) => ((0.00, 19.62, -744.71) + (((0.00, -13.45, -25.31) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8380974)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-744.7104,"normalized":{"x":0.0,"y":0.0263366718,"z":-0.9996531,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":744.9688,"sqrMagnitude":554978.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-13.4467583,"z":-25.31434,"normalized":{"x":0.0,"y":-0.46911484,"z":-0.8831372,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":28.6641083,"sqrMagnitude":821.631165}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.8380974},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -744.71) + (((0.00, -13.45, -25.31) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8380974)","Label":"Â","hasCustomLabel":false,"LabelId":65},"t => Invoke((t, t, t) => ((0.00, 4.90, -765.93) + (((0.00, 21.37, -24.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8571995)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.9049983,"z":-765.9263,"normalized":{"x":0.0,"y":0.0064038774,"z":-0.9999795,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":765.941956,"sqrMagnitude":586667.1}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":21.37093,"z":-24.96671,"normalized":{"x":0.0,"y":0.650280654,"z":-0.75969404,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":32.8641624,"sqrMagnitude":1080.05322}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.8571995},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -765.93) + (((0.00, 21.37, -24.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8571995)","Label":"‚","hasCustomLabel":false,"LabelId":66},"t => Invoke((t, t, t) => ((0.00, 19.62, -787.33) + (((0.00, -12.74, -24.53) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 9.721451E-08)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.62,"z":-787.3277,"normalized":{"x":0.0,"y":0.0249120053,"z":-0.999689639,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":787.572144,"sqrMagnitude":620269.9}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-12.7365446,"z":-24.53282,"normalized":{"x":0.0,"y":-0.460768253,"z":-0.8875205,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":27.6419754,"sqrMagnitude":764.0788}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":9.721451E-08},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -787.33) + (((0.00, -12.74, -24.53) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 9.721451E-08)","Label":"ƒ","hasCustomLabel":false,"LabelId":67},"t => Invoke((t, t, t) => ((0.00, 19.62, -787.33) + (((0.00, 12.52, -24.11) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.551519)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-787.3277,"normalized":{"x":0.0,"y":0.0249120016,"z":-0.999689639,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":787.572144,"sqrMagnitude":620269.9}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":12.5152016,"z":-24.106472,"normalized":{"x":0.0,"y":0.460768253,"z":-0.887520432,"normalized":{"x":0.0,"y":0.460768282,"z":-0.8875205,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":27.1615963,"sqrMagnitude":737.752258}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":2.55151939},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -787.33) + (((0.00, 12.52, -24.11) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.551519)","Label":"„","hasCustomLabel":false,"LabelId":68},"t => Invoke((t, t, t) => ((0.00, 19.62, -848.84) + (((0.00, 12.30, -23.69) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.507177)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.62,"z":-848.8358,"normalized":{"x":0.0,"y":0.02310784,"z":-0.999733,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":849.062561,"sqrMagnitude":720907.2}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":12.2977037,"z":-23.6875324,"normalized":{"x":0.0,"y":0.460768282,"z":-0.8875205,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":26.6895618,"sqrMagnitude":712.3327}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":2.50717735},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -848.84) + (((0.00, 12.30, -23.69) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.507177)","Label":"\u0085","hasCustomLabel":false,"LabelId":69},"t => Invoke((t, t, t) => ((0.00, 19.62, -908.22) + (((0.00, 12.08, -23.28) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.463606)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-908.2247,"normalized":{"x":0.0,"y":0.0215975437,"z":-0.9997667,"normalized":{"x":0.0,"y":0.0215975456,"z":-0.999766767,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":908.4366,"sqrMagnitude":825257.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":12.0839872,"z":-23.2758751,"normalized":{"x":0.0,"y":0.460768342,"z":-0.8875205,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":26.2257328,"sqrMagnitude":687.7891}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":2.463606},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -908.22) + (((0.00, 12.08, -23.28) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.463606)","Label":"†","hasCustomLabel":false,"LabelId":70},"t => Invoke((t, t, t) => ((0.00, 19.62, -965.57) + (((0.00, 11.87, -22.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.619997,"z":-965.567261,"normalized":{"x":0.0,"y":0.0203154646,"z":-0.9997936,"normalized":{"x":0.0,"y":0.0203154664,"z":-0.999793649,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":965.7666,"sqrMagnitude":932705.063}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":11.8739834,"z":-22.87137,"normalized":{"x":0.0,"y":0.460768342,"z":-0.887520432,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":25.7699642,"sqrMagnitude":664.091064}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -965.57) + (((0.00, 11.87, -22.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"‡","hasCustomLabel":false,"LabelId":71},"t => Invoke((t, t, t) => ((0.00, 19.62, -965.57) + (((0.00, -11.67, -22.47) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9117292)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-965.567261,"normalized":{"x":0.0,"y":0.0203154664,"z":-0.9997936,"normalized":{"x":0.0,"y":0.0203154683,"z":-0.999793649,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":965.7666,"sqrMagnitude":932705.063}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-11.6676273,"z":-22.473896,"normalized":{"x":0.0,"y":-0.460768282,"z":-0.8875205,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":25.3221149,"sqrMagnitude":641.209534}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.9117292},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -965.57) + (((0.00, -11.67, -22.47) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9117292)","Label":"ˆ","hasCustomLabel":false,"LabelId":72},"t => Invoke((t, t, t) => ((0.00, 4.91, -986.06) + (((0.00, 20.34, -22.18) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9336835)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90500069,"z":-986.0574,"normalized":{"x":0.0,"y":0.004974295,"z":-0.9999876,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":986.0696,"sqrMagnitude":972333.2}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":20.3398743,"z":-22.1775227,"normalized":{"x":0.0,"y":0.6759138,"z":-0.7369807,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":30.0924072,"sqrMagnitude":905.553}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.933683455},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -986.06) + (((0.00, 20.34, -22.18) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9336835)","Label":"‰","hasCustomLabel":false,"LabelId":73},"t => Invoke((t, t, t) => ((0.00, 19.62, -1006.76) + (((0.00, -10.98, -21.79) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9427679)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-1006.76416,"normalized":{"x":0.0,"y":0.019484479,"z":-0.999810159,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1006.95532,"sqrMagnitude":1013959.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-10.9840183,"z":-21.7879,"normalized":{"x":0.0,"y":-0.4501642,"z":-0.892945766,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":24.4000263,"sqrMagnitude":595.361267}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.942767859},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1006.76) + (((0.00, -10.98, -21.79) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9427679)","Label":"Š","hasCustomLabel":false,"LabelId":74},"t => Invoke((t, t, t) => ((0.00, 4.91, -1027.31) + (((0.00, 19.97, -21.50) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9663128)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90500069,"z":-1027.305,"normalized":{"x":0.0,"y":0.00477457466,"z":-0.9999886,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1027.31677,"sqrMagnitude":1055379.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.96775,"z":-21.5027237,"normalized":{"x":0.0,"y":0.680468261,"z":-0.7327776,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":29.3441334,"sqrMagnitude":861.0782}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.966312766},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1027.31) + (((0.00, 19.97, -21.50) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9663128)","Label":"‹","hasCustomLabel":false,"LabelId":75},"t => Invoke((t, t, t) => ((0.00, 19.62, -1048.08) + (((0.00, -10.30, -21.12) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9754006)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-1048.08337,"normalized":{"x":0.0,"y":0.0187166054,"z":-0.9998249,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":1048.267,"sqrMagnitude":1098863.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-10.30177,"z":-21.1204624,"normalized":{"x":0.0,"y":-0.438392878,"z":-0.898783445,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":23.4989452,"sqrMagnitude":552.2004}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.975400567},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1048.08) + (((0.00, -10.30, -21.12) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9754006)","Label":"ÂŒ","hasCustomLabel":false,"LabelId":76},"t => Invoke((t, t, t) => ((0.00, 4.90, -1068.68) + (((0.00, 19.61, -20.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.000773)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90499926,"z":-1068.68433,"normalized":{"x":0.0,"y":0.00458970666,"z":-0.9999895,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":1068.69556,"sqrMagnitude":1142110.25}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6124287,"z":-20.84621,"normalized":{"x":0.0,"y":0.68522507,"z":-0.7283313,"normalized":{"x":0.0,"y":0.6852251,"z":-0.7283314,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":28.6218777,"sqrMagnitude":819.211853}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.00077271},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1068.68) + (((0.00, 19.61, -20.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.000773)","Label":"Â","hasCustomLabel":false,"LabelId":77},"t => Invoke((t, t, t) => ((0.00, 19.62, -1089.55) + (((0.00, -9.62, -20.47) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.009835)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-1089.54663,"normalized":{"x":0.0,"y":0.01800457,"z":-0.999837935,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":1089.72327,"sqrMagnitude":1187496.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.618452,"z":-20.470789,"normalized":{"x":0.0,"y":-0.425259084,"z":-0.9050717,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":22.6178646,"sqrMagnitude":511.5678}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.00983477},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1089.55) + (((0.00, -9.62, -20.47) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.009835)","Label":"ÂŽ","hasCustomLabel":false,"LabelId":78},"t => Invoke((t, t, t) => ((0.00, 4.90, -1110.22) + (((0.00, 19.27, -20.21) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.037334)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.9049983,"z":-1110.21875,"normalized":{"x":0.0,"y":0.00441800337,"z":-0.9999902,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":1110.22961,"sqrMagnitude":1232609.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.2735214,"z":-20.207201,"normalized":{"x":0.0,"y":0.690191448,"z":-0.7236268,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":27.9248924,"sqrMagnitude":779.7996}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.03733444},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1110.22) + (((0.00, 19.27, -20.21) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.037334)","Label":"Â","hasCustomLabel":false,"LabelId":79},"t => Invoke((t, t, t) => ((0.00, 19.62, -1131.18) + (((0.00, -8.93, -19.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.046336)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-1131.18042,"normalized":{"x":0.0,"y":0.0173421036,"z":-0.9998496,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1131.35059,"sqrMagnitude":1279954.13}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-8.931087,"z":-19.8380661,"normalized":{"x":0.0,"y":-0.4105159,"z":-0.911853433,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":21.7557621,"sqrMagnitude":473.313171}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.0463357},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1131.18) + (((0.00, -8.93, -19.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.046336)","Label":"Â","hasCustomLabel":false,"LabelId":80},"t => Invoke((t, t, t) => ((0.00, 4.91, -1151.94) + (((0.00, 18.95, -19.58) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.076354)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905,"z":-1151.93774,"normalized":{"x":0.0,"y":0.004258004,"z":-0.9999909,"normalized":{"x":0.0,"y":0.00425800448,"z":-0.99999094,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":1151.94824,"sqrMagnitude":1326984.63}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":18.9506683,"z":-19.5848942,"normalized":{"x":0.0,"y":0.6953749,"z":-0.7186472,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":27.2524471,"sqrMagnitude":742.6959}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.07635379},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1151.94) + (((0.00, 18.95, -19.58) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.076354)","Label":"‘","hasCustomLabel":false,"LabelId":81},"t => Invoke((t, t, t) => ((0.00, 19.62, -1173.02) + (((0.00, -8.24, -19.22) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.085251)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.619997,"z":-1173.01807,"normalized":{"x":0.0,"y":0.0167237427,"z":-0.999860168,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1173.18213,"sqrMagnitude":1376356.38}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-8.235912,"z":-19.2214527,"normalized":{"x":0.0,"y":-0.393844455,"z":-0.9191772,"normalized":{"x":0.0,"y":-0.3938444,"z":-0.919177055,"normalized":{"x":0.0,"y":-0.393844426,"z":-0.9191771,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":1.00000012,"sqrMagnitude":1.00000012},"magnitude":20.9115868,"sqrMagnitude":437.2945}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.08525133},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1173.02) + (((0.00, -8.24, -19.22) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.085251)","Label":"Â’","hasCustomLabel":false,"LabelId":82},"t => Invoke((t, t, t) => ((0.00, 4.90, -1193.88) + (((0.00, 18.64, -18.98) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.118315)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.9049983,"z":-1193.87817,"normalized":{"x":0.0,"y":0.004108423,"z":-0.999991536,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":1193.88831,"sqrMagnitude":1425369.13}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":18.6435242,"z":-18.9784622,"normalized":{"x":0.0,"y":0.700783849,"z":-0.7133737,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":26.6038151,"sqrMagnitude":707.763}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.118315},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1193.88) + (((0.00, 18.64, -18.98) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.118315)","Label":"“","hasCustomLabel":false,"LabelId":83},"t => Invoke((t, t, t) => ((0.00, 19.62, -1215.10) + (((0.00, -7.53, -18.62) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.127055)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-1215.102,"normalized":{"x":0.0,"y":0.0161446854,"z":-0.999869645,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":1215.2605,"sqrMagnitude":1476858.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-7.527951,"z":-18.6200485,"normalized":{"x":0.0,"y":-0.374819,"z":-0.927098036,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":20.0842285,"sqrMagnitude":403.376251}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.12705469},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1215.10) + (((0.00, -7.53, -18.62) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.127055)","Label":"”","hasCustomLabel":false,"LabelId":84},"t => Invoke((t, t, t) => ((0.00, 4.91, -1236.09) + (((0.00, 18.35, -18.39) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.1639)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90499973,"z":-1236.08789,"normalized":{"x":0.0,"y":0.00396813266,"z":-0.9999921,"normalized":{"x":0.0,"y":0.003968133,"z":-0.999992132,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":1236.09766,"sqrMagnitude":1527937.38}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":18.3517685,"z":-18.3870144,"normalized":{"x":0.0,"y":0.7064281,"z":-0.707784832,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":25.9782543,"sqrMagnitude":674.8697}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.16389978},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1236.09) + (((0.00, 18.35, -18.39) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.1639)","Label":"•","hasCustomLabel":false,"LabelId":85},"t => Invoke((t, t, t) => ((0.00, 19.62, -1257.49) + (((0.00, -6.80, -18.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.172412)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-1257.48853,"normalized":{"x":0.0,"y":0.0156006282,"z":-0.9998783,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":1257.6416,"sqrMagnitude":1581662.38}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-6.800361,"z":-18.03287,"normalized":{"x":0.0,"y":-0.35285306,"z":-0.9356787,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":19.272501,"sqrMagnitude":371.4293}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.17241228},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1257.49) + (((0.00, -6.80, -18.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.172412)","Label":"–","hasCustomLabel":false,"LabelId":86},"t => Invoke((t, t, t) => ((0.00, 4.91, -1278.63) + (((0.00, 18.08, -17.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.214127)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905002,"z":-1278.63049,"normalized":{"x":0.0,"y":0.003836109,"z":-0.999992669,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1278.63989,"sqrMagnitude":1634920.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":18.07511,"z":-17.8095818,"normalized":{"x":0.0,"y":0.7123195,"z":-0.701855361,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":25.3750038,"sqrMagnitude":643.8908}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.214127},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1278.63) + (((0.00, 18.08, -17.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.214127)","Label":"—","hasCustomLabel":false,"LabelId":87},"t => Invoke((t, t, t) => ((0.00, 19.62, -1300.25) + (((0.00, -6.04, -17.46) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.22232)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-1300.25354,"normalized":{"x":0.0,"y":0.0150876455,"z":-0.999886155,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":1300.40161,"sqrMagnitude":1691044.25}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-6.043105,"z":-17.4587955,"normalized":{"x":0.0,"y":-0.327094883,"z":-0.944991469,"normalized":{"x":0.0,"y":-0.3270949,"z":-0.9449915,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":18.4750824,"sqrMagnitude":341.328674}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.22231972},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1300.25) + (((0.00, -6.04, -17.46) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.22232)","Label":"˜","hasCustomLabel":false,"LabelId":88},"t => Invoke((t, t, t) => ((0.00, 4.91, -1321.59) + (((0.00, 17.81, -17.25) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.270634)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905002,"z":-1321.59375,"normalized":{"x":0.0,"y":0.00371140381,"z":-0.9999931,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":1321.60291,"sqrMagnitude":1746634.13}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":17.8132877,"z":-17.2450638,"normalized":{"x":0.0,"y":0.718473136,"z":-0.6955547,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":24.7932549,"sqrMagnitude":614.705444}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.27063441},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1321.59) + (((0.00, 17.81, -17.25) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.270634)","Label":"™","hasCustomLabel":false,"LabelId":89},"t => Invoke((t, t, t) => ((0.00, 19.62, -1343.51) + (((0.00, -5.24, -16.90) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.278377)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199989,"z":-1343.506,"normalized":{"x":0.0,"y":0.0146020241,"z":-0.999893367,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":1343.64929,"sqrMagnitude":1805393.25}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-5.2402544,"z":-16.8964767,"normalized":{"x":0.0,"y":-0.2962198,"z":-0.955119848,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":17.6904259,"sqrMagnitude":312.9512}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.27837682},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1343.51) + (((0.00, -5.24, -16.90) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.278377)","Label":"š","hasCustomLabel":false,"LabelId":90},"t => Invoke((t, t, t) => ((0.00, 4.90, -1365.11) + (((0.00, 17.57, -16.69) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.904996,"z":-1365.10608,"normalized":{"x":0.0,"y":0.00359310117,"z":-0.999993563,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1365.11487,"sqrMagnitude":1863538.63}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":17.5660839,"z":-16.69213,"normalized":{"x":0.0,"y":0.7249098,"z":-0.6888438,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":24.2320957,"sqrMagnitude":587.194458}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1365.11) + (((0.00, 17.57, -16.69) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"›","hasCustomLabel":false,"LabelId":91},"t => Invoke((t, t, t) => ((0.00, 4.90, -1365.11) + (((0.00, -17.35, -16.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2630862)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90499926,"z":-1365.10608,"normalized":{"x":0.0,"y":0.00359310373,"z":-0.999993563,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1365.11487,"sqrMagnitude":1863538.63}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-17.3536358,"z":-16.4902534,"normalized":{"x":0.0,"y":-0.7249097,"z":-0.688843846,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":23.93903,"sqrMagnitude":573.077148}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.2630862},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1365.11) + (((0.00, -17.35, -16.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2630862)","Label":"Âœ","hasCustomLabel":false,"LabelId":92},"t => Invoke((t, t, t) => ((0.00, 0.00, -1369.44) + (((0.00, 22.13, -18.30) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2337887)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":7.4505806E-07,"z":-1369.44446,"normalized":{"x":0.0,"y":5.44058631E-10,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1369.44446,"sqrMagnitude":1875378.13}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":22.1272125,"z":-18.3041039,"normalized":{"x":0.0,"y":0.77053237,"z":-0.637400866,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":28.7167854,"sqrMagnitude":824.653748}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.233788654},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1369.44) + (((0.00, 22.13, -18.30) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2337887)","Label":"Â","hasCustomLabel":false,"LabelId":93},"t => Invoke((t, t, t) => ((0.00, 4.90, -1373.72) + (((0.00, -19.60, -18.09) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2362997)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90499926,"z":-1373.72375,"normalized":{"x":0.0,"y":0.00357056339,"z":-0.9999936,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1373.73254,"sqrMagnitude":1887141.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-19.5984783,"z":-18.08698,"normalized":{"x":0.0,"y":-0.734876752,"z":-0.678200662,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":26.66907,"sqrMagnitude":711.239258}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.236299708},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1373.72) + (((0.00, -19.60, -18.09) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2362997)","Label":"ž","hasCustomLabel":false,"LabelId":94},"t => Invoke((t, t, t) => ((0.00, 0.00, -1378.00) + (((0.00, 24.32, -20.07) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2106032)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":1.60932541E-06,"z":-1377.99768,"normalized":{"x":0.0,"y":1.16787235E-09,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1377.99768,"sqrMagnitude":1898877.63}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":24.32324,"z":-20.0731144,"normalized":{"x":0.0,"y":0.771273,"z":-0.6365045,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":31.5364857,"sqrMagnitude":994.5499}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.210603192},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1378.00) + (((0.00, 24.32, -20.07) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2106032)","Label":"Ÿ","hasCustomLabel":false,"LabelId":95},"t => Invoke((t, t, t) => ((0.00, 4.90, -1382.23) + (((0.00, -22.00, -19.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2128774)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.9049983,"z":-1382.2251,"normalized":{"x":0.0,"y":0.00354860257,"z":-0.999993742,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":1382.23376,"sqrMagnitude":1910570.25}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-21.9972687,"z":-19.83867,"normalized":{"x":0.0,"y":-0.742603362,"z":-0.6697315,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":29.6218281,"sqrMagnitude":877.4527}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.212877423},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1382.23) + (((0.00, -22.00, -19.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2128774)","Label":" ","hasCustomLabel":false,"LabelId":96},"t => Invoke((t, t, t) => ((0.00, 0.00, -1386.45) + (((0.00, 26.73, -22.01) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1901601)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-2.66730785E-06,"z":-1386.44824,"normalized":{"x":0.0,"y":-1.92384242E-09,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1386.44824,"sqrMagnitude":1922238.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":26.7268085,"z":-22.0141678,"normalized":{"x":0.0,"y":0.7718756,"z":-0.6357736,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":34.6257973,"sqrMagnitude":1198.94592}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.19016014},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1386.45) + (((0.00, 26.73, -22.01) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1901601)","Label":"¡","hasCustomLabel":false,"LabelId":97},"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -24.57, -21.76) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90500164,"z":-1390.6344,"normalized":{"x":0.0,"y":0.0035271463,"z":-0.999993742,"normalized":{"x":0.0,"y":0.00352714653,"z":-0.9999938,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":1390.64307,"sqrMagnitude":1933888.13}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-24.5745735,"z":-21.7602444,"normalized":{"x":0.0,"y":-0.748676,"z":-0.662936151,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":32.8240433,"sqrMagnitude":1077.41785}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -24.57, -21.76) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"¢","hasCustomLabel":false,"LabelId":98},"t => Invoke((t, t, t) => ((0.00, 4.90, -1390.63) + (((0.00, 24.29, -21.51) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.904997,"z":-1390.6344,"normalized":{"x":0.0,"y":0.003527143,"z":-0.999993742,"normalized":{"x":0.0,"y":0.00352714327,"z":-0.9999938,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":1390.64307,"sqrMagnitude":1933888.13}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":24.29112,"z":-21.50925,"normalized":{"x":0.0,"y":0.748676,"z":-0.662936032,"normalized":{"x":0.0,"y":0.748676062,"z":-0.6629361,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":32.44544,"sqrMagnitude":1052.70642}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1390.63) + (((0.00, 24.29, -21.51) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"£","hasCustomLabel":false,"LabelId":99},"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -24.01, -21.26) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90500164,"z":-1390.6344,"normalized":{"x":0.0,"y":0.0035271463,"z":-0.999993742,"normalized":{"x":0.0,"y":0.00352714653,"z":-0.9999938,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":1390.64307,"sqrMagnitude":1933888.13}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-24.0109329,"z":-21.2611523,"normalized":{"x":0.0,"y":-0.748676,"z":-0.6629361,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":32.0711937,"sqrMagnitude":1028.56152}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -24.01, -21.26) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"¤","hasCustomLabel":false,"LabelId":100},"t => Invoke((t, t, t) => ((0.00, 4.90, -1390.63) + (((0.00, 23.73, -21.02) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.904997,"z":-1390.6344,"normalized":{"x":0.0,"y":0.003527143,"z":-0.999993742,"normalized":{"x":0.0,"y":0.00352714327,"z":-0.9999938,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":1390.64307,"sqrMagnitude":1933888.13}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":23.73398,"z":-21.0159149,"normalized":{"x":0.0,"y":0.748676,"z":-0.6629361,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":31.70127,"sqrMagnitude":1004.97052}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1390.63) + (((0.00, 23.73, -21.02) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"Â¥","hasCustomLabel":false,"LabelId":101},"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -23.46, -20.77) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90500164,"z":-1390.6344,"normalized":{"x":0.0,"y":0.0035271463,"z":-0.999993742,"normalized":{"x":0.0,"y":0.00352714653,"z":-0.9999938,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":1390.64307,"sqrMagnitude":1933888.13}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-23.4602184,"z":-20.7735062,"normalized":{"x":0.0,"y":-0.748676,"z":-0.6629361,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":31.33561,"sqrMagnitude":981.9204}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -23.46, -20.77) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"¦","hasCustomLabel":false,"LabelId":102},"t => Invoke((t, t, t) => ((0.00, 4.90, -1390.63) + (((0.00, 23.19, -20.53) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.904997,"z":-1390.6344,"normalized":{"x":0.0,"y":0.003527143,"z":-0.999993742,"normalized":{"x":0.0,"y":0.00352714327,"z":-0.9999938,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":1390.64307,"sqrMagnitude":1933888.13}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":23.18962,"z":-20.5338936,"normalized":{"x":0.0,"y":0.748676,"z":-0.662936032,"normalized":{"x":0.0,"y":0.748676062,"z":-0.6629361,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":30.97417,"sqrMagnitude":959.399231}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1390.63) + (((0.00, 23.19, -20.53) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"§","hasCustomLabel":false,"LabelId":103},"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -22.92, -20.30) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905001,"z":-1390.6344,"normalized":{"x":0.0,"y":0.003527146,"z":-0.999993742,"normalized":{"x":0.0,"y":0.0035271463,"z":-0.9999938,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":1390.64307,"sqrMagnitude":1933888.13}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-22.9221363,"z":-20.2970448,"normalized":{"x":0.0,"y":-0.748676062,"z":-0.6629361,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":30.6168957,"sqrMagnitude":937.394348}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -22.92, -20.30) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"¨","hasCustomLabel":false,"LabelId":104},"t => Invoke((t, t, t) => ((0.00, 4.90, -1390.63) + (((0.00, 22.66, -20.06) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.904997,"z":-1390.6344,"normalized":{"x":0.0,"y":0.003527143,"z":-0.999993742,"normalized":{"x":0.0,"y":0.00352714327,"z":-0.9999938,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":1390.64307,"sqrMagnitude":1933888.13}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":22.6577435,"z":-20.06293,"normalized":{"x":0.0,"y":0.748676062,"z":-0.662936032,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":30.2637482,"sqrMagnitude":915.8945}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1390.63) + (((0.00, 22.66, -20.06) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"©","hasCustomLabel":false,"LabelId":105},"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -22.40, -19.83) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2094049)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905001,"z":-1390.6344,"normalized":{"x":0.0,"y":0.003527146,"z":-0.999993742,"normalized":{"x":0.0,"y":0.0035271463,"z":-0.9999938,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":1390.64307,"sqrMagnitude":1933888.13}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-22.3963947,"z":-19.8315125,"normalized":{"x":0.0,"y":-0.748676,"z":-0.662936032,"normalized":{"x":0.0,"y":-0.748676062,"z":-0.6629361,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":29.914669,"sqrMagnitude":894.8874}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.209404916},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -22.40, -19.83) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2094049)","Label":"ª","hasCustomLabel":false,"LabelId":106},"t => Invoke((t, t, t) => ((0.00, 0.00, -1394.79) + (((0.00, 27.10, -21.98) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1873304)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-3.12924385E-07,"z":-1394.78723,"normalized":{"x":0.0,"y":-2.24352772E-10,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1394.78723,"sqrMagnitude":1945431.38}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":27.10253,"z":-21.9824,"normalized":{"x":0.0,"y":0.7766523,"z":-0.6299295,"normalized":{"x":0.0,"y":0.776652336,"z":-0.629929543,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":34.8966064,"sqrMagnitude":1217.77307}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.187330425},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1394.79) + (((0.00, 27.10, -21.98) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1873304)","Label":"«","hasCustomLabel":false,"LabelId":107},"t => Invoke((t, t, t) => ((0.00, 4.90, -1398.91) + (((0.00, -24.98, -21.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.189341)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.9049983,"z":-1398.90515,"normalized":{"x":0.0,"y":0.003506291,"z":-0.9999939,"normalized":{"x":0.0,"y":0.00350629049,"z":-0.9999938,"normalized":{"x":0.0,"y":0.00350629073,"z":-0.999993861,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":1.00000012,"sqrMagnitude":1.00000012},"magnitude":1398.9137,"sqrMagnitude":1956959.63}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-24.9768982,"z":-21.7318878,"normalized":{"x":0.0,"y":-0.754413366,"z":-0.656399667,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":33.107708,"sqrMagnitude":1096.12036}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.189341009},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1398.91) + (((0.00, -24.98, -21.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.189341)","Label":"¬","hasCustomLabel":false,"LabelId":108},"t => Invoke((t, t, t) => ((0.00, 0.00, -1403.02) + (((0.00, 29.74, -24.09) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1696683)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":2.7269125E-06,"z":-1403.0199,"normalized":{"x":0.0,"y":1.94360217E-09,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1403.0199,"sqrMagnitude":1968464.88}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":29.7415657,"z":-24.08632,"normalized":{"x":0.0,"y":0.777119458,"z":-0.629353166,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":38.27155,"sqrMagnitude":1464.71155}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.169668287},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1403.02) + (((0.00, 29.74, -24.09) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1696683)","Label":"Â","hasCustomLabel":false,"LabelId":109},"t => Invoke((t, t, t) => ((0.00, 4.91, -1407.11) + (((0.00, -27.76, -23.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1714948)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905001,"z":-1407.10657,"normalized":{"x":0.0,"y":0.00348585634,"z":-0.9999939,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1407.11511,"sqrMagnitude":1979973.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-27.7602768,"z":-23.8145123,"normalized":{"x":0.0,"y":-0.758986533,"z":-0.6511064,"normalized":{"x":0.0,"y":-0.7589864,"z":-0.651106358,"normalized":{"x":0.0,"y":-0.7589865,"z":-0.6511064,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":1.00000012,"sqrMagnitude":1.00000012},"magnitude":36.5754547,"sqrMagnitude":1337.76392}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.171494767},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1407.11) + (((0.00, -27.76, -23.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1714948)","Label":"®","hasCustomLabel":false,"LabelId":110},"t => Invoke((t, t, t) => ((0.00, 0.00, -1411.19) + (((0.00, 32.63, -26.39) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1538832)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":7.003546E-07,"z":-1411.19067,"normalized":{"x":0.0,"y":4.962863E-10,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1411.19067,"sqrMagnitude":1991459.13}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":32.6296,"z":-26.3922653,"normalized":{"x":0.0,"y":0.7775032,"z":-0.628879,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":41.96716,"sqrMagnitude":1761.24255}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.153883189},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1411.19) + (((0.00, 32.63, -26.39) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1538832)","Label":"¯","hasCustomLabel":false,"LabelId":111},"t => Invoke((t, t, t) => ((0.00, 4.90, -1415.25) + (((0.00, -30.77, -26.10) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1555432)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.904997,"z":-1415.252,"normalized":{"x":0.0,"y":0.00346579077,"z":-0.999994,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1415.2605,"sqrMagnitude":2002962.13}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-30.77163,"z":-26.0968132,"normalized":{"x":0.0,"y":-0.762661338,"z":-0.6467981,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":40.3477,"sqrMagnitude":1627.93689}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.155543223},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1415.25) + (((0.00, -30.77, -26.10) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1555432)","Label":"°","hasCustomLabel":false,"LabelId":112},"t => Invoke((t, t, t) => ((0.00, 0.00, -1419.31) + (((0.00, 35.79, -28.92) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1397214)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":8.508563E-06,"z":-1419.31116,"normalized":{"x":0.0,"y":5.994854E-09,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1419.31116,"sqrMagnitude":2014444.13}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":35.790905,"z":-28.9195232,"normalized":{"x":0.0,"y":0.777819157,"z":-0.6284881,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":46.01443,"sqrMagnitude":2117.32764}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.139721364},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1419.31) + (((0.00, 35.79, -28.92) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1397214)","Label":"±","hasCustomLabel":false,"LabelId":113},"t => Invoke((t, t, t) => ((0.00, 4.91, -1423.35) + (((0.00, -34.04, -28.60) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.88858E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905007,"z":-1423.35181,"normalized":{"x":0.0,"y":0.0034460756,"z":-0.9999941,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":1423.36023,"sqrMagnitude":2025954.38}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-34.03744,"z":-28.5979,"normalized":{"x":0.0,"y":-0.7656334,"z":-0.643277168,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":44.4565773,"sqrMagnitude":1976.38733}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":3.88858041E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1423.35) + (((0.00, -34.04, -28.60) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.88858E-07)","Label":"²","hasCustomLabel":false,"LabelId":114},"t => Invoke((t, t, t) => ((0.00, 4.90, -1423.35) + (((0.00, 33.66, -28.28) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.88858E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90499353,"z":-1423.35181,"normalized":{"x":0.0,"y":0.003446066,"z":-0.9999941,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":1423.36023,"sqrMagnitude":2025954.38}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":33.658905,"z":-28.2798557,"normalized":{"x":0.0,"y":0.765633464,"z":-0.6432771,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":43.9621658,"sqrMagnitude":1932.67212}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":3.88858041E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1423.35) + (((0.00, 33.66, -28.28) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.88858E-07)","Label":"³","hasCustomLabel":false,"LabelId":115},"t => Invoke((t, t, t) => ((0.00, 4.91, -1423.35) + (((0.00, -33.28, -27.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.88858E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90500641,"z":-1423.35181,"normalized":{"x":0.0,"y":0.00344607513,"z":-0.9999941,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":1423.36023,"sqrMagnitude":2025954.38}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-33.2845726,"z":-27.9653473,"normalized":{"x":0.0,"y":-0.7656334,"z":-0.6432771,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":43.47325,"sqrMagnitude":1889.92346}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":3.88858041E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1423.35) + (((0.00, -33.28, -27.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.88858E-07)","Label":"´","hasCustomLabel":false,"LabelId":116},"t => Invoke((t, t, t) => ((0.00, 4.90, -1423.35) + (((0.00, 32.91, -27.65) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.4816384)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90499353,"z":-1423.35181,"normalized":{"x":0.0,"y":0.003446066,"z":-0.9999941,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":1423.36023,"sqrMagnitude":2025954.38}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":32.91441,"z":-27.6543369,"normalized":{"x":0.0,"y":0.765633464,"z":-0.6432771,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":42.9897728,"sqrMagnitude":1848.12073}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.4816384},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1423.35) + (((0.00, 32.91, -27.65) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.4816384)","Label":"µ","hasCustomLabel":false,"LabelId":117},"t => Invoke((t, t, t) => ((0.00, 19.62, -1436.67) + (((0.00, -27.84, -27.31) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.4867818)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.619997,"z":-1436.67114,"normalized":{"x":0.0,"y":0.0136552947,"z":-0.9999068,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1436.805,"sqrMagnitude":2064408.88}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-27.8414688,"z":-27.3128757,"normalized":{"x":0.0,"y":-0.713850856,"z":-0.700297832,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":39.0018,"sqrMagnitude":1521.14063}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.486781836},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1436.67) + (((0.00, -27.84, -27.31) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.4867818)","Label":"¶","hasCustomLabel":false,"LabelId":118},"t => Invoke((t, t, t) => ((0.00, 4.91, -1449.97) + (((0.00, 32.25, -27.01) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.4931997)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905004,"z":-1449.96655,"normalized":{"x":0.0,"y":0.00338282017,"z":-0.9999943,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1449.97485,"sqrMagnitude":2102427.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":32.2549133,"z":-27.0098362,"normalized":{"x":0.0,"y":0.766690731,"z":-0.642016649,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":42.0703049,"sqrMagnitude":1769.91064}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.493199736},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1449.97) + (((0.00, 32.25, -27.01) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.4931997)","Label":"·","hasCustomLabel":false,"LabelId":119},"t => Invoke((t, t, t) => ((0.00, 19.62, -1463.29) + (((0.00, -27.08, -26.68) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.4984414)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.619997,"z":-1463.28784,"normalized":{"x":0.0,"y":0.0134069547,"z":-0.9999102,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":1463.41931,"sqrMagnitude":2141596.25}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-27.077177,"z":-26.6754246,"normalized":{"x":0.0,"y":-0.7123719,"z":-0.7018022,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":38.00989,"sqrMagnitude":1444.75183}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.498441368},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1463.29) + (((0.00, -27.08, -26.68) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.4984414)","Label":"¸","hasCustomLabel":false,"LabelId":120},"t => Invoke((t, t, t) => ((0.00, 4.90, -1476.58) + (((0.00, 31.61, -26.38) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.904995,"z":-1476.584,"normalized":{"x":0.0,"y":0.00332183461,"z":-0.999994457,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":1476.59216,"sqrMagnitude":2180324.25}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":31.6130829,"z":-26.3801861,"normalized":{"x":0.0,"y":0.767791748,"z":-0.640699565,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":41.1740341,"sqrMagnitude":1695.30127}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.9442902E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1476.58) + (((0.00, 31.61, -26.38) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","Label":"¹","hasCustomLabel":false,"LabelId":121},"t => Invoke((t, t, t) => ((0.00, 4.91, -1476.58) + (((0.00, -31.26, -26.09) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.153211)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905001,"z":-1476.584,"normalized":{"x":0.0,"y":0.0033218388,"z":-0.999994457,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":1476.59216,"sqrMagnitude":2180324.25}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-31.2631931,"z":-26.0882149,"normalized":{"x":0.0,"y":-0.7677917,"z":-0.640699565,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":40.7183266,"sqrMagnitude":1657.98218}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.153211042},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1476.58) + (((0.00, -31.26, -26.09) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.153211)","Label":"º","hasCustomLabel":false,"LabelId":122},"t => Invoke((t, t, t) => ((0.00, 0.00, -1480.58) + (((0.00, 36.27, -28.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.137793)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-3.40491533E-06,"z":-1480.58093,"normalized":{"x":0.0,"y":-2.29971575E-09,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1480.58093,"sqrMagnitude":2192120.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":36.2727737,"z":-28.8801289,"normalized":{"x":0.0,"y":0.7823195,"z":-0.6228773,"normalized":{"x":0.0,"y":0.782319546,"z":-0.622877359,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":46.3656769,"sqrMagnitude":2149.776}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.137793019},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1480.58) + (((0.00, 36.27, -28.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.137793)","Label":"»","hasCustomLabel":false,"LabelId":123},"t => Invoke((t, t, t) => ((0.00, 4.91, -1484.56) + (((0.00, -34.54, -28.56) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1392672)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905001,"z":-1484.56042,"normalized":{"x":0.0,"y":0.00330399117,"z":-0.9999946,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":1484.56848,"sqrMagnitude":2203943.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-34.53698,"z":-28.56252,"normalized":{"x":0.0,"y":-0.7706114,"z":-0.6373054,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":44.8176346,"sqrMagnitude":2008.62048}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.139267176},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1484.56) + (((0.00, -34.54, -28.56) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1392672)","Label":"¼","hasCustomLabel":false,"LabelId":124},"t => Invoke((t, t, t) => ((0.00, 0.00, -1488.54) + (((0.00, 39.74, -31.62) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1253566)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-8.64267349E-07,"z":-1488.53821,"normalized":{"x":0.0,"y":-5.80614834E-10,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1488.53821,"sqrMagnitude":2215746.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":39.74321,"z":-31.6174183,"normalized":{"x":0.0,"y":0.782567441,"z":-0.622565746,"normalized":{"x":0.0,"y":0.7825675,"z":-0.6225658,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":50.7856674,"sqrMagnitude":2579.18384}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.125356555},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1488.54) + (((0.00, 39.74, -31.62) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1253566)","Label":"½","hasCustomLabel":false,"LabelId":125},"t => Invoke((t, t, t) => ((0.00, 4.90, -1492.50) + (((0.00, -38.09, -31.27) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1266997)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90499258,"z":-1492.50171,"normalized":{"x":0.0,"y":0.0032864057,"z":-0.9999946,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":1492.50977,"sqrMagnitude":2227585.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-38.0921249,"z":-31.2715225,"normalized":{"x":0.0,"y":-0.77290976,"z":-0.63451606,"normalized":{"x":0.0,"y":-0.772909641,"z":-0.634516,"normalized":{"x":0.0,"y":-0.7729097,"z":-0.63451606,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":1.00000012,"sqrMagnitude":1.00000012},"magnitude":49.2840538,"sqrMagnitude":2428.91821}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.126699671},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1492.50) + (((0.00, -38.09, -31.27) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1266997)","Label":"¾","hasCustomLabel":false,"LabelId":126},"t => Invoke((t, t, t) => ((0.00, 0.00, -1496.46) + (((0.00, 43.54, -34.61) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1141221)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-6.04987144E-06,"z":-1496.46375,"normalized":{"x":0.0,"y":-4.04277856E-09,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1496.46375,"sqrMagnitude":2239403.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":43.54006,"z":-34.61452,"normalized":{"x":0.0,"y":0.782772839,"z":-0.622307539,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":55.6228523,"sqrMagnitude":3093.90161}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.114122063},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1496.46) + (((0.00, 43.54, -34.61) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1141221)","Label":"¿","hasCustomLabel":false,"LabelId":127},"t => Invoke((t, t, t) => ((0.00, 4.90, -1500.41) + (((0.00, -41.96, -34.24) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1153458)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.904993,"z":-1500.41406,"normalized":{"x":0.0,"y":0.00326907542,"z":-0.999994636,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":1500.42212,"sqrMagnitude":2251266.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-41.9584465,"z":-34.2374725,"normalized":{"x":0.0,"y":-0.774790764,"z":-0.6322178,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":54.1545525,"sqrMagnitude":2932.71582}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.1153458},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1500.41) + (((0.00, -41.96, -34.24) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1153458)","Label":"À","hasCustomLabel":false,"LabelId":128},"t => Invoke((t, t, t) => ((0.00, 0.00, -1504.36) + (((0.00, 47.69, -37.90) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1039534)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":2.9951334E-06,"z":-1504.36316,"normalized":{"x":0.0,"y":1.99096428E-09,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1504.36316,"sqrMagnitude":2263108.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":47.69453,"z":-37.8960457,"normalized":{"x":0.0,"y":0.7829431,"z":-0.6220933,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":60.91698,"sqrMagnitude":3710.87842}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.103953421},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1504.36) + (((0.00, 47.69, -37.90) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1039534)","Label":"Ã","hasCustomLabel":false,"LabelId":129},"t => Invoke((t, t, t) => ((0.00, 4.91, -1508.30) + (((0.00, -46.17, -37.48) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1050694)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905008,"z":-1508.30261,"normalized":{"x":0.0,"y":0.003251988,"z":-0.999994755,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":1508.31055,"sqrMagnitude":2275000.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-46.168148,"z":-37.48473,"normalized":{"x":0.0,"y":-0.776335239,"z":-0.6303202,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":59.4693451,"sqrMagnitude":3536.60278}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.105069444},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1508.30) + (((0.00, -46.17, -37.48) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1050694)","Label":"Â","hasCustomLabel":false,"LabelId":130},"t => Invoke((t, t, t) => ((0.00, 0.00, -1512.24) + (((0.00, 52.24, -41.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.09473477)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-2.8871E-06,"z":-1512.24109,"normalized":{"x":0.0,"y":-1.90915328E-09,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1512.24109,"sqrMagnitude":2286873.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":52.2407875,"z":-41.488945,"normalized":{"x":0.0,"y":0.783084452,"z":-0.62191534,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":66.71156,"sqrMagnitude":4450.43262}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0947347656},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1512.24) + (((0.00, 52.24, -41.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.09473477)","Label":"Ã","hasCustomLabel":false,"LabelId":131},"t => Invoke((t, t, t) => ((0.00, 4.90, -1516.17) + (((0.00, -50.76, -41.04) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.0957524)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90499544,"z":-1516.17151,"normalized":{"x":0.0,"y":0.00323510217,"z":-0.999994755,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1516.17944,"sqrMagnitude":2298800.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-50.75616,"z":-41.0399628,"normalized":{"x":0.0,"y":-0.7776071,"z":-0.628750563,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":65.27225,"sqrMagnitude":4260.46631}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0957524},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1516.17) + (((0.00, -50.76, -41.04) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.0957524)","Label":"Ä","hasCustomLabel":false,"LabelId":132},"t => Invoke((t, t, t) => ((0.00, 0.00, -1520.10) + (((0.00, 57.22, -45.42) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.08636693)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-6.109476E-07,"z":-1520.1012,"normalized":{"x":0.0,"y":-4.01912448E-10,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1520.1012,"sqrMagnitude":2310707.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":57.2161865,"z":-45.4227257,"normalized":{"x":0.0,"y":0.7832019,"z":-0.621767461,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":73.0542,"sqrMagnitude":5336.916}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.08636693},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1520.10) + (((0.00, 57.22, -45.42) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.08636693)","Label":"Ã…","hasCustomLabel":false,"LabelId":133},"t => Invoke((t, t, t) => ((0.00, 4.90, -1524.02) + (((0.00, -55.76, -44.93) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.08729513)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.9049983,"z":-1524.02417,"normalized":{"x":0.0,"y":0.003218435,"z":-0.9999948,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1524.0321,"sqrMagnitude":2322673.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-55.76042,"z":-44.9323845,"normalized":{"x":0.0,"y":-0.778656542,"z":-0.627450347,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":71.61106,"sqrMagnitude":5128.144}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.08729513},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1524.02) + (((0.00, -55.76, -44.93) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.08729513)","Label":"Æ","hasCustomLabel":false,"LabelId":134},"t => Invoke((t, t, t) => ((0.00, 0.00, -1527.95) + (((0.00, 62.66, -49.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.07876281)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":6.73159957E-06,"z":-1527.94653,"normalized":{"x":0.0,"y":4.4056514E-09,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1527.94653,"sqrMagnitude":2334620.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":62.66162,"z":-49.7297058,"normalized":{"x":0.0,"y":0.783299446,"z":-0.6216445,"normalized":{"x":0.0,"y":0.7832995,"z":-0.621644557,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":79.99702,"sqrMagnitude":6399.52246}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.07876281},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1527.95) + (((0.00, 62.66, -49.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.07876281)","Label":"Ç","hasCustomLabel":false,"LabelId":135},"t => Invoke((t, t, t) => ((0.00, 4.90, -1531.86) + (((0.00, -61.22, -49.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.07961013)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90498352,"z":-1531.8634,"normalized":{"x":0.0,"y":0.00320195546,"z":-0.9999949,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1531.87122,"sqrMagnitude":2346629.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-61.2222252,"z":-49.1939659,"normalized":{"x":0.0,"y":-0.779524267,"z":-0.626372039,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":78.53793,"sqrMagnitude":6168.207}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.07961013},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1531.86) + (((0.00, -61.22, -49.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.07961013)","Label":"È","hasCustomLabel":false,"LabelId":136},"t => Invoke((t, t, t) => ((0.00, 0.00, -1535.78) + (((0.00, 68.62, -54.45) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.07184774)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-1.27274543E-05,"z":-1535.77979,"normalized":{"x":0.0,"y":-8.287291E-09,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1535.77979,"sqrMagnitude":2358619.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":68.62184,"z":-54.4452629,"normalized":{"x":0.0,"y":0.7833807,"z":-0.621542156,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":87.59705,"sqrMagnitude":7673.24365}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0718477443},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1535.78) + (((0.00, 68.62, -54.45) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.07184774)","Label":"É","hasCustomLabel":false,"LabelId":137},"t => Invoke((t, t, t) => ((0.00, 4.90, -1539.69) + (((0.00, -67.19, -53.86) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.07262079)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90499163,"z":-1539.69153,"normalized":{"x":0.0,"y":0.00318568153,"z":-0.999994934,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1539.69934,"sqrMagnitude":2370674.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-67.1865845,"z":-53.85972,"normalized":{"x":0.0,"y":-0.780242741,"z":-0.6254769,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":86.10985,"sqrMagnitude":7414.90625}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0726207942},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1539.69) + (((0.00, -67.19, -53.86) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.07262079)","Label":"Ê","hasCustomLabel":false,"LabelId":138},"t => Invoke((t, t, t) => ((0.00, 0.00, -1543.60) + (((0.00, 75.15, -59.61) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06555369)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-1.95000321E-05,"z":-1543.60291,"normalized":{"x":0.0,"y":-1.26328032E-08,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1543.60291,"sqrMagnitude":2382710.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":75.14582,"z":-59.60814,"normalized":{"x":0.0,"y":0.783448339,"z":-0.621457,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":95.9167557,"sqrMagnitude":9200.024}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.06555369},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1543.60) + (((0.00, 75.15, -59.61) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06555369)","Label":"Ë","hasCustomLabel":false,"LabelId":139},"t => Invoke((t, t, t) => ((0.00, 4.90, -1547.51) + (((0.00, -73.70, -58.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06625908)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.904988,"z":-1547.5105,"normalized":{"x":0.0,"y":0.00316958316,"z":-0.999994934,"normalized":{"x":0.0,"y":0.00316958339,"z":-0.999995,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":1547.51831,"sqrMagnitude":2394812.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-73.70261,"z":-58.96797,"normalized":{"x":0.0,"y":-0.7808384,"z":-0.6247331,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":94.38907,"sqrMagnitude":8909.296}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.06625908},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1547.51) + (((0.00, -73.70, -58.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06625908)","Label":"ÃŒ","hasCustomLabel":false,"LabelId":140},"t => Invoke((t, t, t) => ((0.00, 0.00, -1551.42) + (((0.00, 82.29, -65.26) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05982192)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-1.3159588E-05,"z":-1551.4176,"normalized":{"x":0.0,"y":-8.482299E-09,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1551.4176,"sqrMagnitude":2406896.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":82.2871552,"z":-65.26074,"normalized":{"x":0.0,"y":0.783504546,"z":-0.621386051,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":105.024475,"sqrMagnitude":11030.1406}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0598219223},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1551.42) + (((0.00, 82.29, -65.26) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05982192)","Label":"Ã","hasCustomLabel":false,"LabelId":141},"t => Invoke((t, t, t) => ((0.00, 4.91, -1555.32) + (((0.00, -80.82, -64.56) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06046587)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90500927,"z":-1555.32166,"normalized":{"x":0.0,"y":0.003153679,"z":-0.999995053,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1555.32935,"sqrMagnitude":2419049.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-80.8239059,"z":-64.56069,"normalized":{"x":0.0,"y":-0.781332731,"z":-0.624114633,"normalized":{"x":0.0,"y":-0.7813328,"z":-0.6241147,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":103.443642,"sqrMagnitude":10700.5869}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0604658723},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1555.32) + (((0.00, -80.82, -64.56) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06046587)","Label":"ÃŽ","hasCustomLabel":false,"LabelId":142},"t => Invoke((t, t, t) => ((0.00, 0.00, -1559.23) + (((0.00, 90.10, -71.45) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05459878)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-1.18277967E-05,"z":-1559.22534,"normalized":{"x":0.0,"y":-7.585688E-09,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1559.22534,"sqrMagnitude":2431183.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":90.10452,"z":-71.44952,"normalized":{"x":0.0,"y":0.783551455,"z":-0.621327,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":114.995033,"sqrMagnitude":13223.8584}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0545987822},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1559.23) + (((0.00, 90.10, -71.45) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05459878)","Label":"Ã","hasCustomLabel":false,"LabelId":143},"t => Invoke((t, t, t) => ((0.00, 4.90, -1563.13) + (((0.00, -88.61, -70.68) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05518673)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90496349,"z":-1563.12634,"normalized":{"x":0.0,"y":0.00313790329,"z":-0.999995053,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":1563.134,"sqrMagnitude":2443388.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-88.60904,"z":-70.68382,"normalized":{"x":0.0,"y":-0.781743467,"z":-0.623600245,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":113.347977,"sqrMagnitude":12847.7646}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0551867336},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1563.13) + (((0.00, -88.61, -70.68) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05518673)","Label":"Ã","hasCustomLabel":false,"LabelId":144},"t => Invoke((t, t, t) => ((0.00, 0.00, -1567.03) + (((0.00, 98.66, -78.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04983916)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-1.83125958E-05,"z":-1567.0271,"normalized":{"x":0.0,"y":-1.16862022E-08,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1567.0271,"sqrMagnitude":2455574.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":98.66215,"z":-78.225296,"normalized":{"x":0.0,"y":0.7835905,"z":-0.62127775,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":125.910347,"sqrMagnitude":15853.416}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0498391576},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1567.03) + (((0.00, 98.66, -78.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04983916)","Label":"Ñ","hasCustomLabel":false,"LabelId":145},"t => Invoke((t, t, t) => ((0.00, 4.91, -1570.93) + (((0.00, -97.12, -77.39) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90503645,"z":-1570.92578,"normalized":{"x":0.0,"y":0.00312237069,"z":-0.9999951,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1570.93347,"sqrMagnitude":2467831.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-97.12201,"z":-77.38767,"normalized":{"x":0.0,"y":-0.782084763,"z":-0.623172045,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":124.183479,"sqrMagnitude":15421.5361}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":7.777161E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1570.93) + (((0.00, -97.12, -77.39) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","Label":"Ã’","hasCustomLabel":false,"LabelId":146},"t => Invoke((t, t, t) => ((0.00, 4.90, -1570.93) + (((0.00, 96.08, -76.56) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1543673)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.904961,"z":-1570.92578,"normalized":{"x":0.0,"y":0.00312232273,"z":-0.9999951,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1570.93347,"sqrMagnitude":2467831.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":96.0820541,"z":-76.55902,"normalized":{"x":0.0,"y":0.7820848,"z":-0.623172045,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":122.853752,"sqrMagnitude":15093.0449}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.154367313},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1570.93) + (((0.00, 96.08, -76.56) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1543673)","Label":"Ó","hasCustomLabel":false,"LabelId":147},"t => Invoke((t, t, t) => ((0.00, 19.62, -1582.74) + (((0.00, -93.54, -75.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1560301)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6200066,"z":-1582.744,"normalized":{"x":0.0,"y":0.012395245,"z":-0.99992317,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1582.8656,"sqrMagnitude":2505463.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-93.54343,"z":-75.72979,"normalized":{"x":0.0,"y":-0.777227938,"z":-0.629219055,"normalized":{"x":0.0,"y":-0.777228,"z":-0.6292191,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":120.3552,"sqrMagnitude":14485.374}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.156030074},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1582.74) + (((0.00, -93.54, -75.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1560301)","Label":"Ô","hasCustomLabel":false,"LabelId":148},"t => Invoke((t, t, t) => ((0.00, 4.91, -1594.56) + (((0.00, 94.06, -74.92) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1577465)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.9050045,"z":-1594.56018,"normalized":{"x":0.0,"y":0.00307607162,"z":-0.999995232,"normalized":{"x":0.0,"y":0.00307607185,"z":-0.9999953,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":1594.56775,"sqrMagnitude":2542646.25}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":94.0563,"z":-74.91909,"normalized":{"x":0.0,"y":0.7821893,"z":-0.6230408,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":120.247482,"sqrMagnitude":14459.457}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.1577465},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1594.56) + (((0.00, 94.06, -74.92) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1577465)","Label":"Õ","hasCustomLabel":false,"LabelId":149},"t => Invoke((t, t, t) => ((0.00, 19.62, -1606.38) + (((0.00, -91.51, -74.11) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1594458)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.62,"z":-1606.37842,"normalized":{"x":0.0,"y":0.0122128986,"z":-0.9999254,"normalized":{"x":0.0,"y":0.0122128995,"z":-0.999925435,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":1606.49829,"sqrMagnitude":2580836.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-91.50656,"z":-74.1074142,"normalized":{"x":0.0,"y":-0.7771175,"z":-0.6293556,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":117.751259,"sqrMagnitude":13865.3594}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.159445792},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1606.38) + (((0.00, -91.51, -74.11) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1594458)","Label":"Ö","hasCustomLabel":false,"LabelId":150},"t => Invoke((t, t, t) => ((0.00, 4.90, -1618.20) + (((0.00, 92.07, -73.31) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1612011)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.9049654,"z":-1618.19458,"normalized":{"x":0.0,"y":0.00303112064,"z":-0.9999954,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1618.202,"sqrMagnitude":2618577.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":92.074646,"z":-73.31429,"normalized":{"x":0.0,"y":0.7822984,"z":-0.6229039,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":117.6976,"sqrMagnitude":13852.7256}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.1612011},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1618.20) + (((0.00, 92.07, -73.31) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1612011)","Label":"×","hasCustomLabel":false,"LabelId":151},"t => Invoke((t, t, t) => ((0.00, 19.62, -1630.01) + (((0.00, -89.51, -72.52) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.62004,"z":-1630.013,"normalized":{"x":0.0,"y":0.0120358681,"z":-0.9999276,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1630.131,"sqrMagnitude":2657327.25}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-89.51259,"z":-72.51979,"normalized":{"x":0.0,"y":-0.7770019,"z":-0.629498243,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":115.20253,"sqrMagnitude":13271.624}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":7.777161E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1630.01) + (((0.00, -89.51, -72.52) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","Label":"Ø","hasCustomLabel":false,"LabelId":152},"t => Invoke((t, t, t) => ((0.00, 19.62, -1630.01) + (((0.00, 88.54, -71.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 17.79207)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199722,"z":-1630.013,"normalized":{"x":0.0,"y":0.0120358253,"z":-0.9999276,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1630.131,"sqrMagnitude":2657327.25}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":88.54255,"z":-71.7338943,"normalized":{"x":0.0,"y":0.777002,"z":-0.629498243,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":113.954086,"sqrMagnitude":12985.5342}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":17.79207},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1630.01) + (((0.00, 88.54, -71.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 17.79207)","Label":"Ù","hasCustomLabel":false,"LabelId":153},"t => Invoke((t, t, t) => ((0.00, 42.26, -2906.31) + (((0.00, -84.80, 70.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2629761)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":42.2594,"z":-2906.30762,"normalized":{"x":0.0,"y":0.0145390444,"z":-0.9998943,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":2906.61475,"sqrMagnitude":8448410.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-84.79925,"z":70.73426,"normalized":{"x":0.0,"y":-0.7679174,"z":0.640548944,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":110.427567,"sqrMagnitude":12194.248}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.26297614},"Id":"t => Invoke((t, t, t) => ((0.00, 42.26, -2906.31) + (((0.00, -84.80, 70.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2629761)","Label":"Ú","hasCustomLabel":false,"LabelId":154},"t => Invoke((t, t, t) => ((0.00, 19.62, -2887.71) + (((0.00, 86.43, 69.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 17.62134)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6200085,"z":-2887.7063,"normalized":{"x":0.0,"y":0.006794166,"z":-0.999976933,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":2887.773,"sqrMagnitude":8339232.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":86.43267,"z":69.96816,"normalized":{"x":0.0,"y":0.7772499,"z":0.629192,"normalized":{"x":0.0,"y":0.777249932,"z":0.629192054,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":111.203194,"sqrMagnitude":12366.15}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":17.62134},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -2887.71) + (((0.00, 86.43, 69.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 17.62134)","Label":"Û","hasCustomLabel":false,"LabelId":155},"t => Invoke((t, t, t) => ((0.00, 19.62, -1654.77) + (((0.00, 85.50, 69.21) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 17.43049)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199951,"z":-1654.77356,"normalized":{"x":0.0,"y":0.0118557708,"z":-0.9999297,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1654.88989,"sqrMagnitude":2738660.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":85.4965439,"z":69.21036,"normalized":{"x":0.0,"y":0.7772499,"z":0.629192,"normalized":{"x":0.0,"y":0.777249932,"z":0.629192054,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":109.998787,"sqrMagnitude":12099.7324}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":17.4304886},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1654.77) + (((0.00, 85.50, 69.21) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 17.43049)","Label":"Ãœ","hasCustomLabel":false,"LabelId":156},"t => Invoke((t, t, t) => ((0.00, 19.62, -448.40) + (((0.00, 84.57, 68.46) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 17.2417)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199951,"z":-448.4032,"normalized":{"x":0.0,"y":0.0437134244,"z":-0.999044061,"normalized":{"x":0.0,"y":0.0437134281,"z":-0.9990441,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":448.832245,"sqrMagnitude":201450.375}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":84.57056,"z":68.46076,"normalized":{"x":0.0,"y":0.777249932,"z":0.629192054,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":108.807419,"sqrMagnitude":11839.0547}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":17.2417049},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -448.40) + (((0.00, 84.57, 68.46) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 17.2417)","Label":"Ã","hasCustomLabel":false,"LabelId":157},"t => Invoke((t, t, t) => ((0.00, 19.62, 731.98) + (((0.00, 83.65, 67.72) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.960302)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199951,"z":731.977051,"normalized":{"x":0.0,"y":0.02679449,"z":0.999641,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":732.2399,"sqrMagnitude":536175.4}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":83.6546,"z":67.7192841,"normalized":{"x":0.0,"y":0.7772499,"z":0.629192,"normalized":{"x":0.0,"y":0.777249932,"z":0.629192054,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":107.628967,"sqrMagnitude":11583.9941}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":3.96030164},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 731.98) + (((0.00, 83.65, 67.72) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.960302)","Label":"Þ","hasCustomLabel":false,"LabelId":158},"t => Invoke((t, t, t) => ((0.00, 273.99, 1000.17) + (((0.00, -80.45, -4.91) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.712993)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":273.9875,"z":1000.16583,"normalized":{"x":0.0,"y":0.264207751,"z":0.964465737,"normalized":{"x":0.0,"y":0.26420778,"z":0.9644658,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":1037.01538,"sqrMagnitude":1075400.88}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-80.45178,"z":-4.905395,"normalized":{"x":0.0,"y":-0.998146355,"z":-0.0608600825,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":80.60119,"sqrMagnitude":6496.55225}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":2.71299267},"Id":"t => Invoke((t, t, t) => ((0.00, 273.99, 1000.17) + (((0.00, -80.45, -4.91) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.712993)","Label":"ß","hasCustomLabel":false,"LabelId":159},"t => Invoke((t, t, t) => ((0.00, 19.62, 986.86) + (((0.00, 106.99, -4.90) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 21.81207)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199837,"z":986.857544,"normalized":{"x":0.0,"y":0.0198773444,"z":0.9998024,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":987.052551,"sqrMagnitude":974272.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":106.98822,"z":-4.90182066,"normalized":{"x":0.0,"y":0.998952031,"z":-0.04576844,"normalized":{"x":0.0,"y":0.9989521,"z":-0.0457684435,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":107.100456,"sqrMagnitude":11470.5068}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":21.8120747},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 986.86) + (((0.00, 106.99, -4.90) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 21.81207)","Label":"à ","hasCustomLabel":false,"LabelId":160},"t => Invoke((t, t, t) => ((0.00, 19.62, 879.94) + (((0.00, 106.91, -4.90) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.555432E-06)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.619873,"z":879.93866,"normalized":{"x":0.0,"y":0.022291325,"z":0.9997515,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":880.157349,"sqrMagnitude":774677.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":106.910255,"z":-4.89824867,"normalized":{"x":0.0,"y":0.9989521,"z":-0.04576844,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":107.022408,"sqrMagnitude":11453.7959}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.55543216E-06},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 879.94) + (((0.00, 106.91, -4.90) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.555432E-06)","Label":"á","hasCustomLabel":false,"LabelId":161},"t => Invoke((t, t, t) => ((0.00, 19.62, 879.94) + (((0.00, -106.83, -4.89) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1368796)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.620039,"z":879.93866,"normalized":{"x":0.0,"y":0.0222915132,"z":0.9997515,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":880.157349,"sqrMagnitude":774677.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-106.832336,"z":-4.89467955,"normalized":{"x":0.0,"y":-0.9989521,"z":-0.04576845,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":106.944405,"sqrMagnitude":11437.1064}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.1368796},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 879.94) + (((0.00, -106.83, -4.89) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1368796)","Label":"â","hasCustomLabel":false,"LabelId":162},"t => Invoke((t, t, t) => ((0.00, 4.90, 879.27) + (((0.00, 108.10, -4.89) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1369791)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.9049716,"z":879.2687,"normalized":{"x":0.0,"y":0.00557838054,"z":0.999984443,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":879.282349,"sqrMagnitude":773137.438}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":108.097275,"z":-4.891157,"normalized":{"x":0.0,"y":0.99897784,"z":-0.0452014878,"normalized":{"x":0.0,"y":0.9989779,"z":-0.04520149,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":108.207878,"sqrMagnitude":11708.9443}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.136979133},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 879.27) + (((0.00, 108.10, -4.89) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1369791)","Label":"ã","hasCustomLabel":false,"LabelId":163},"t => Invoke((t, t, t) => ((0.00, 19.62, 878.60) + (((0.00, -106.68, -4.89) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1370771)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6200085,"z":878.5987,"normalized":{"x":0.0,"y":0.022325458,"z":0.999750733,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":878.817749,"sqrMagnitude":772320.6}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-106.675713,"z":-4.887593,"normalized":{"x":0.0,"y":-0.998952031,"z":-0.04576928,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":106.787621,"sqrMagnitude":11403.5967}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.137077123},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 878.60) + (((0.00, -106.68, -4.89) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1370771)","Label":"ä","hasCustomLabel":false,"LabelId":164},"t => Invoke((t, t, t) => ((0.00, 4.91, 877.93) + (((0.00, 107.94, -4.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1371767)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905043,"z":877.9287,"normalized":{"x":0.0,"y":0.005586976,"z":0.999984443,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":877.9424,"sqrMagnitude":770782.9}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":107.9427,"z":-4.884075,"normalized":{"x":0.0,"y":0.998977959,"z":-0.04520068,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":108.053139,"sqrMagnitude":11675.4814}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.137176678},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 877.93) + (((0.00, 107.94, -4.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1371767)","Label":"Ã¥","hasCustomLabel":false,"LabelId":165},"t => Invoke((t, t, t) => ((0.00, 19.62, 877.26) + (((0.00, -106.52, -4.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1372754)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199646,"z":877.2587,"normalized":{"x":0.0,"y":0.0223594923,"z":0.99975,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":877.4781,"sqrMagnitude":769967.8}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-106.519318,"z":-4.880516,"normalized":{"x":0.0,"y":-0.998952031,"z":-0.0457701162,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":106.631065,"sqrMagnitude":11370.1846}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.137275442},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 877.26) + (((0.00, -106.52, -4.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1372754)","Label":"æ","hasCustomLabel":false,"LabelId":166},"t => Invoke((t, t, t) => ((0.00, 4.91, 876.59) + (((0.00, 107.79, -4.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1373758)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905046,"z":876.588745,"normalized":{"x":0.0,"y":0.005595519,"z":0.9999843,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":876.6025,"sqrMagnitude":768431.9}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":107.788368,"z":-4.877004,"normalized":{"x":0.0,"y":0.998977959,"z":-0.0451998636,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":107.898643,"sqrMagnitude":11642.1172}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.137375772},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 876.59) + (((0.00, 107.79, -4.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1373758)","Label":"ç","hasCustomLabel":false,"LabelId":167},"t => Invoke((t, t, t) => ((0.00, 19.62, 875.92) + (((0.00, -106.36, -4.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1374753)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.61999,"z":875.918762,"normalized":{"x":0.0,"y":0.0223937072,"z":0.9997492,"normalized":{"x":0.0,"y":0.022393709,"z":0.999749243,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":876.1385,"sqrMagnitude":767618.6}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-106.363144,"z":-4.87345028,"normalized":{"x":0.0,"y":-0.998952,"z":-0.0457709581,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":106.474731,"sqrMagnitude":11336.8691}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.137475327},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 875.92) + (((0.00, -106.36, -4.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1374753)","Label":"è","hasCustomLabel":false,"LabelId":168},"t => Invoke((t, t, t) => ((0.00, 4.90, 875.25) + (((0.00, 107.63, -4.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1375756)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90497971,"z":875.2488,"normalized":{"x":0.0,"y":0.00560400961,"z":0.9999843,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":875.2625,"sqrMagnitude":766084.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":107.63427,"z":-4.869943,"normalized":{"x":0.0,"y":0.998978,"z":-0.045199044,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":107.744385,"sqrMagnitude":11608.8525}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.137575641},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 875.25) + (((0.00, 107.63, -4.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1375756)","Label":"é","hasCustomLabel":false,"LabelId":169},"t => Invoke((t, t, t) => ((0.00, 19.62, 874.58) + (((0.00, -106.21, -4.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1376744)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.619997,"z":874.5788,"normalized":{"x":0.0,"y":0.02242801,"z":0.999748468,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":874.7988,"sqrMagnitude":765273.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-106.2072,"z":-4.86639452,"normalized":{"x":0.0,"y":-0.998952,"z":-0.0457717963,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":106.318626,"sqrMagnitude":11303.6514}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.137674421},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 874.58) + (((0.00, -106.21, -4.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1376744)","Label":"ê","hasCustomLabel":false,"LabelId":170},"t => Invoke((t, t, t) => ((0.00, 4.91, 873.91) + (((0.00, 107.48, -4.86) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1377747)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90501165,"z":873.9088,"normalized":{"x":0.0,"y":0.00561263831,"z":0.9999842,"normalized":{"x":0.0,"y":0.005612639,"z":0.999984264,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":873.9226,"sqrMagnitude":763740.7}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":107.480385,"z":-4.86289263,"normalized":{"x":0.0,"y":0.998978,"z":-0.04519823,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":107.59034,"sqrMagnitude":11575.6807}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.137774736},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 873.91) + (((0.00, 107.48, -4.86) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1377747)","Label":"ë","hasCustomLabel":false,"LabelId":171},"t => Invoke((t, t, t) => ((0.00, 19.62, 873.24) + (((0.00, -106.05, -4.86) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1378735)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199875,"z":873.238831,"normalized":{"x":0.0,"y":0.022462396,"z":0.9997477,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":873.4592,"sqrMagnitude":762931.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-106.051476,"z":-4.859349,"normalized":{"x":0.0,"y":-0.998951852,"z":-0.0457726344,"normalized":{"x":0.0,"y":-0.9989519,"z":-0.04577264,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":106.16275,"sqrMagnitude":11270.5283}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.137873515},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 873.24) + (((0.00, -106.05, -4.86) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1378735)","Label":"ì","hasCustomLabel":false,"LabelId":172},"t => Invoke((t, t, t) => ((0.00, 4.91, 872.57) + (((0.00, 107.33, -4.86) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1379746)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905058,"z":872.568848,"normalized":{"x":0.0,"y":0.00562131032,"z":0.9999842,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":872.582642,"sqrMagnitude":761400.438}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":107.326729,"z":-4.855852,"normalized":{"x":0.0,"y":0.9989781,"z":-0.0451974049,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":107.436523,"sqrMagnitude":11542.6064}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.13797462},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 872.57) + (((0.00, 107.33, -4.86) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1379746)","Label":"Ã","hasCustomLabel":false,"LabelId":173},"t => Invoke((t, t, t) => ((0.00, 19.62, 871.90) + (((0.00, -105.90, -4.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1380749)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6200466,"z":871.898865,"normalized":{"x":0.0,"y":0.0224969685,"z":0.9997469,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":872.119568,"sqrMagnitude":760592.563}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-105.895966,"z":-4.852313,"normalized":{"x":0.0,"y":-0.9989518,"z":-0.04577348,"normalized":{"x":0.0,"y":-0.998951852,"z":-0.0457734838,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":106.00708,"sqrMagnitude":11237.5}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.138074934},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 871.90) + (((0.00, -105.90, -4.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1380749)","Label":"î","hasCustomLabel":false,"LabelId":174},"t => Invoke((t, t, t) => ((0.00, 4.90, 871.23) + (((0.00, 107.17, -4.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1381753)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90495634,"z":871.2289,"normalized":{"x":0.0,"y":0.00562983938,"z":0.999984145,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":871.2427,"sqrMagnitude":759063.8}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":107.1733,"z":-4.848821,"normalized":{"x":0.0,"y":0.9989781,"z":-0.0451965742,"normalized":{"x":0.0,"y":0.998978138,"z":-0.0451965779,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":107.282936,"sqrMagnitude":11509.6279}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.138175264},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 871.23) + (((0.00, 107.17, -4.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1381753)","Label":"ï","hasCustomLabel":false,"LabelId":175},"t => Invoke((t, t, t) => ((0.00, 19.62, 870.56) + (((0.00, -105.74, -4.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.138274)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6200066,"z":870.5589,"normalized":{"x":0.0,"y":0.0225315318,"z":0.999746144,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":870.779968,"sqrMagnitude":758257.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-105.740685,"z":-4.84528732,"normalized":{"x":0.0,"y":-0.9989518,"z":-0.0457743257,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":105.851639,"sqrMagnitude":11204.5693}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.138274029},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 870.56) + (((0.00, -105.74, -4.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.138274)","Label":"ð","hasCustomLabel":false,"LabelId":176},"t => Invoke((t, t, t) => ((0.00, 4.91, 869.89) + (((0.00, 107.02, -4.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1383751)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90503454,"z":869.8889,"normalized":{"x":0.0,"y":0.005638601,"z":0.9999841,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":869.9028,"sqrMagnitude":756730.8}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":107.020088,"z":-4.84180069,"normalized":{"x":0.0,"y":0.9989782,"z":-0.04519575,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":107.129555,"sqrMagnitude":11476.7422}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.138375133},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 869.89) + (((0.00, 107.02, -4.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1383751)","Label":"ñ","hasCustomLabel":false,"LabelId":177},"t => Invoke((t, t, t) => ((0.00, 19.62, 869.22) + (((0.00, -105.59, -4.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6200333,"z":869.218933,"normalized":{"x":0.0,"y":0.02256628,"z":0.999745369,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":869.4403,"sqrMagnitude":755926.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-105.585625,"z":-4.838272,"normalized":{"x":0.0,"y":-0.9989518,"z":-0.0457751751,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":105.696419,"sqrMagnitude":11171.7334}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":7.777161E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 869.22) + (((0.00, -105.59, -4.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","Label":"ò","hasCustomLabel":false,"LabelId":178},"t => Invoke((t, t, t) => ((0.00, 19.62, 869.22) + (((0.00, 105.51, -4.83) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199512,"z":869.218933,"normalized":{"x":0.0,"y":0.0225661863,"z":0.999745369,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":869.4403,"sqrMagnitude":755926.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":105.508682,"z":-4.834746,"normalized":{"x":0.0,"y":0.9989518,"z":-0.04577517,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":105.619392,"sqrMagnitude":11155.457}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":7.777161E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 869.22) + (((0.00, 105.51, -4.83) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","Label":"ó","hasCustomLabel":false,"LabelId":179},"t => Invoke((t, t, t) => ((0.00, 19.62, 869.22) + (((0.00, -105.43, -4.83) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1386746)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6200333,"z":869.218933,"normalized":{"x":0.0,"y":0.02256628,"z":0.999745369,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":869.4403,"sqrMagnitude":755926.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-105.431778,"z":-4.83122253,"normalized":{"x":0.0,"y":-0.998951733,"z":-0.0457751751,"normalized":{"x":0.0,"y":-0.9989518,"z":-0.04577518,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":105.542412,"sqrMagnitude":11139.2}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.138674557},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 869.22) + (((0.00, -105.43, -4.83) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1386746)","Label":"ô","hasCustomLabel":false,"LabelId":180},"t => Invoke((t, t, t) => ((0.00, 4.91, 868.55) + (((0.00, 106.72, -4.83) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1387757)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90500259,"z":868.54895,"normalized":{"x":0.0,"y":0.005647263,"z":0.999984,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":868.5628,"sqrMagnitude":754401.3}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":106.71534,"z":-4.82774639,"normalized":{"x":0.0,"y":0.998978257,"z":-0.0451932549,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":106.824486,"sqrMagnitude":11411.4707}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.138775662},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 868.55) + (((0.00, 106.72, -4.83) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1387757)","Label":"õ","hasCustomLabel":false,"LabelId":181},"t => Invoke((t, t, t) => ((0.00, 19.62, 867.88) + (((0.00, -105.28, -4.82) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6200314,"z":867.878967,"normalized":{"x":0.0,"y":0.0226011,"z":0.9997446,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":868.1007,"sqrMagnitude":753598.9}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-105.277168,"z":-4.824228,"normalized":{"x":0.0,"y":-0.998951733,"z":-0.04577603,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":105.387642,"sqrMagnitude":11106.5557}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":7.777161E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 867.88) + (((0.00, -105.28, -4.82) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","Label":"ö","hasCustomLabel":false,"LabelId":182},"t => Invoke((t, t, t) => ((0.00, 19.62, 867.88) + (((0.00, 105.20, -4.82) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.61995,"z":867.878967,"normalized":{"x":0.0,"y":0.0226010066,"z":0.9997446,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":868.1007,"sqrMagnitude":753598.9}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":105.200455,"z":-4.820712,"normalized":{"x":0.0,"y":0.9989517,"z":-0.0457760245,"normalized":{"x":0.0,"y":0.998951733,"z":-0.04577603,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":105.310852,"sqrMagnitude":11090.375}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":7.777161E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 867.88) + (((0.00, 105.20, -4.82) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","Label":"÷","hasCustomLabel":false,"LabelId":183},"t => Invoke((t, t, t) => ((0.00, 19.62, 867.88) + (((0.00, -105.12, -4.82) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1390751)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6200314,"z":867.878967,"normalized":{"x":0.0,"y":0.0226011,"z":0.9997446,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":868.1007,"sqrMagnitude":753598.9}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-105.123772,"z":-4.81719875,"normalized":{"x":0.0,"y":-0.998951733,"z":-0.0457760319,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":105.234085,"sqrMagnitude":11074.2129}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.139075086},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 867.88) + (((0.00, -105.12, -4.82) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1390751)","Label":"ø","hasCustomLabel":false,"LabelId":184},"t => Invoke((t, t, t) => ((0.00, 4.91, 867.21) + (((0.00, 106.41, -4.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1391762)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905062,"z":867.209045,"normalized":{"x":0.0,"y":0.005656057,"z":0.999984,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":867.2229,"sqrMagnitude":752075.563}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":106.411484,"z":-4.81373262,"normalized":{"x":0.0,"y":0.9989784,"z":-0.0451907478,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":106.520309,"sqrMagnitude":11346.5762}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.13917619},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 867.21) + (((0.00, 106.41, -4.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1391762)","Label":"ù","hasCustomLabel":false,"LabelId":185},"t => Invoke((t, t, t) => ((0.00, 19.62, 866.54) + (((0.00, -104.97, -4.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1392773)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.619997,"z":866.539063,"normalized":{"x":0.0,"y":0.02263599,"z":0.99974376,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":866.761169,"sqrMagnitude":751274.9}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-104.969604,"z":-4.810224,"normalized":{"x":0.0,"y":-0.998951733,"z":-0.045776885,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":105.079758,"sqrMagnitude":11041.7559}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.1392773},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 866.54) + (((0.00, -104.97, -4.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1392773)","Label":"ú","hasCustomLabel":false,"LabelId":186},"t => Invoke((t, t, t) => ((0.00, 4.90, 865.87) + (((0.00, 106.26, -4.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1393792)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90496635,"z":865.8691,"normalized":{"x":0.0,"y":0.005664699,"z":0.9999839,"normalized":{"x":0.0,"y":0.00566469925,"z":0.999983966,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":865.883,"sqrMagnitude":749753.3}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":106.259415,"z":-4.80676365,"normalized":{"x":0.0,"y":0.9989784,"z":-0.0451899059,"normalized":{"x":0.0,"y":0.998978436,"z":-0.04518991,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":106.36808,"sqrMagnitude":11314.168}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.139379174},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 865.87) + (((0.00, 106.26, -4.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1393792)","Label":"û","hasCustomLabel":false,"LabelId":187},"t => Invoke((t, t, t) => ((0.00, 19.62, 865.20) + (((0.00, -104.82, -4.80) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.62003,"z":865.1991,"normalized":{"x":0.0,"y":0.0226710681,"z":0.999743,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":865.4215,"sqrMagnitude":748954.438}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-104.815659,"z":-4.80326033,"normalized":{"x":0.0,"y":-0.9989516,"z":-0.04577775,"normalized":{"x":0.0,"y":-0.9989517,"z":-0.045777753,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":104.925659,"sqrMagnitude":11009.3936}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":7.777161E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 865.20) + (((0.00, -104.82, -4.80) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","Label":"ü","hasCustomLabel":false,"LabelId":188},"t => Invoke((t, t, t) => ((0.00, 19.62, 865.20) + (((0.00, 104.74, -4.80) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199474,"z":865.1991,"normalized":{"x":0.0,"y":0.0226709731,"z":0.999743,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":865.4215,"sqrMagnitude":748954.438}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":104.739273,"z":-4.79975939,"normalized":{"x":0.0,"y":0.9989517,"z":-0.0457777455,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":104.84919,"sqrMagnitude":10993.3525}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":7.777161E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 865.20) + (((0.00, 104.74, -4.80) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","Label":"ý","hasCustomLabel":false,"LabelId":189},"t => Invoke((t, t, t) => ((0.00, 19.62, 865.20) + (((0.00, -104.66, -4.80) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.62003,"z":865.1991,"normalized":{"x":0.0,"y":0.0226710681,"z":0.999743,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":865.4215,"sqrMagnitude":748954.438}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-104.662926,"z":-4.79626131,"normalized":{"x":0.0,"y":-0.9989516,"z":-0.04577775,"normalized":{"x":0.0,"y":-0.9989517,"z":-0.045777753,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":104.772766,"sqrMagnitude":10977.332}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":7.777161E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 865.20) + (((0.00, -104.66, -4.80) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","Label":"þ","hasCustomLabel":false,"LabelId":190},"t => Invoke((t, t, t) => ((0.00, 19.62, 865.20) + (((0.00, 104.59, -4.79) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.443271)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199474,"z":865.1991,"normalized":{"x":0.0,"y":0.0226709731,"z":0.999743,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":865.4215,"sqrMagnitude":748954.438}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":104.586647,"z":-4.79276562,"normalized":{"x":0.0,"y":0.9989517,"z":-0.04577775,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":104.6964,"sqrMagnitude":10961.3369}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":7.44327068},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 865.20) + (((0.00, 104.59, -4.79) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.443271)","Label":"ÿ","hasCustomLabel":false,"LabelId":191},"t => Invoke((t, t, t) => ((0.00, 526.34, 829.53) + (((0.00, -11.51, -29.42) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.198486)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":526.3385,"z":829.525269,"normalized":{"x":0.0,"y":0.535758436,"z":0.8443713,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":982.4176,"sqrMagnitude":965144.4}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-11.508584,"z":-29.4161167,"normalized":{"x":0.0,"y":-0.3643425,"z":-0.931265,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":31.5872669,"sqrMagnitude":997.755432}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.19848561},"Id":"t => Invoke((t, t, t) => ((0.00, 526.34, 829.53) + (((0.00, -11.51, -29.42) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.198486)","Label":"Ä€","hasCustomLabel":false,"LabelId":192},"t => Invoke((t, t, t) => ((0.00, 505.50, 794.27) + (((0.00, 36.88, 5.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 9.07128)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":505.500275,"z":794.2705,"normalized":{"x":0.0,"y":0.5369174,"z":0.843634844,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":941.486145,"sqrMagnitude":886396.2}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":36.8847122,"z":5.40791559,"normalized":{"x":0.0,"y":0.989422,"z":0.145065814,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":37.27905,"sqrMagnitude":1389.72754}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":9.07128048},"Id":"t => Invoke((t, t, t) => ((0.00, 505.50, 794.27) + (((0.00, 36.88, 5.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 9.07128)","Label":"Ä","hasCustomLabel":false,"LabelId":193},"t => Invoke((t, t, t) => ((0.00, 436.47, 843.33) + (((0.00, 21.16, 47.35) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.353378)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":436.4686,"z":843.3272,"normalized":{"x":0.0,"y":0.459642977,"z":0.888103843,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":949.5818,"sqrMagnitude":901705.6}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":21.155632,"z":47.3505249,"normalized":{"x":0.0,"y":0.407924235,"z":0.9130158,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":51.86167,"sqrMagnitude":2689.633}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.35337782},"Id":"t => Invoke((t, t, t) => ((0.00, 436.47, 843.33) + (((0.00, 21.16, 47.35) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.353378)","Label":"Ä‚","hasCustomLabel":false,"LabelId":194},"t => Invoke((t, t, t) => ((0.00, 456.12, 907.41) + (((0.00, -44.32, 16.62) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 5.941933)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":456.116,"z":907.410339,"normalized":{"x":0.0,"y":0.4491116,"z":0.893475652,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1015.59607,"sqrMagnitude":1031435.31}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-44.3150978,"z":16.6152172,"normalized":{"x":0.0,"y":-0.93634963,"z":0.3510689,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":47.32751,"sqrMagnitude":2239.89331}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":5.94193268},"Id":"t => Invoke((t, t, t) => ((0.00, 456.12, 907.41) + (((0.00, -44.32, 16.62) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 5.941933)","Label":"ă","hasCustomLabel":false,"LabelId":195},"t => Invoke((t, t, t) => ((0.00, 19.62, 1006.14) + (((0.00, 102.34, 16.57) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.607432)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199951,"z":1006.13684,"normalized":{"x":0.0,"y":0.0194966178,"z":0.9998099,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1006.32813,"sqrMagnitude":1012696.31}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":102.343292,"z":16.5727634,"normalized":{"x":0.0,"y":0.9871412,"z":0.1598508,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":103.676445,"sqrMagnitude":10748.8057}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":7.607432},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 1006.14) + (((0.00, 102.34, 16.57) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.607432)","Label":"Ä„","hasCustomLabel":false,"LabelId":196},"t => Invoke((t, t, t) => ((0.00, 514.32, 1132.21) + (((0.00, -28.20, -15.71) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.571242)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":514.3225,"z":1132.213,"normalized":{"x":0.0,"y":0.4135898,"z":0.9104633,"normalized":{"x":0.0,"y":0.413589835,"z":0.910463333,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":1243.557,"sqrMagnitude":1546434.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-28.2027359,"z":-15.7111387,"normalized":{"x":0.0,"y":-0.87359184,"z":-0.486659259,"normalized":{"x":0.0,"y":-0.8735919,"z":-0.4866593,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":32.2836533,"sqrMagnitude":1042.23425}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":7.571242},"Id":"t => Invoke((t, t, t) => ((0.00, 514.32, 1132.21) + (((0.00, -28.20, -15.71) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.571242)","Label":"Ä…","hasCustomLabel":false,"LabelId":197},"t => Invoke((t, t, t) => ((0.00, 19.62, 1013.26) + (((0.00, 102.23, -15.67) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 20.84169)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6200256,"z":1013.26019,"normalized":{"x":0.0,"y":0.0193596352,"z":0.9998126,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":1013.45013,"sqrMagnitude":1027081.19}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":102.2285,"z":-15.6730986,"normalized":{"x":0.0,"y":0.9884505,"z":-0.151543677,"normalized":{"x":0.0,"y":0.9884506,"z":-0.151543692,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":103.422981,"sqrMagnitude":10696.3125}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":20.8416939},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 1013.26) + (((0.00, 102.23, -15.67) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 20.84169)","Label":"Ć","hasCustomLabel":false,"LabelId":198},"t => Invoke((t, t, t) => ((0.00, 19.62, 686.61) + (((0.00, 101.98, -15.64) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 6.055206)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6201172,"z":686.606262,"normalized":{"x":0.0,"y":0.02856384,"z":0.999591947,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":686.886536,"sqrMagnitude":471813.1}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":101.980988,"z":-15.6351509,"normalized":{"x":0.0,"y":0.9884506,"z":-0.151543677,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":103.172569,"sqrMagnitude":10644.58}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":6.0552063},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 686.61) + (((0.00, 101.98, -15.64) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 6.055206)","Label":"ć","hasCustomLabel":false,"LabelId":199},"t => Invoke((t, t, t) => ((0.00, 457.29, 591.93) + (((0.00, -7.64, -44.07) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.429303)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":457.2917,"z":591.9322,"normalized":{"x":0.0,"y":0.611355,"z":0.791356444,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":747.996948,"sqrMagnitude":559499.4}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-7.64129162,"z":-44.0696754,"normalized":{"x":0.0,"y":-0.170842022,"z":-0.9852984,"normalized":{"x":0.0,"y":-0.170842037,"z":-0.985298455,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":44.7272377,"sqrMagnitude":2000.52563}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":2.42930269},"Id":"t => Invoke((t, t, t) => ((0.00, 457.29, 591.93) + (((0.00, -7.64, -44.07) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.429303)","Label":"Ĉ","hasCustomLabel":false,"LabelId":200},"t => Invoke((t, t, t) => ((0.00, 409.78, 484.87) + (((0.00, 53.54, 5.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 13.405)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":409.781738,"z":484.8736,"normalized":{"x":0.0,"y":0.6454869,"z":0.763771355,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":634.8413,"sqrMagnitude":403023.469}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":53.53549,"z":5.18587065,"normalized":{"x":0.0,"y":0.995341063,"z":0.0964166,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":53.7860756,"sqrMagnitude":2892.94165}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":13.4050016},"Id":"t => Invoke((t, t, t) => ((0.00, 409.78, 484.87) + (((0.00, 53.54, 5.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 13.405)","Label":"ĉ","hasCustomLabel":false,"LabelId":201},"t => Invoke((t, t, t) => ((0.00, 246.03, 554.39) + (((0.00, 34.17, 69.46) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.171434)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":246.025757,"z":554.3902,"normalized":{"x":0.0,"y":0.405629128,"z":0.9140377,"normalized":{"x":0.0,"y":0.405629158,"z":0.914037764,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":606.5288,"sqrMagnitude":367877.156}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":34.1687775,"z":69.4564056,"normalized":{"x":0.0,"y":0.441422522,"z":0.897299349,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":77.40606,"sqrMagnitude":5991.69775}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":1.17143381},"Id":"t => Invoke((t, t, t) => ((0.00, 246.03, 554.39) + (((0.00, 34.17, 69.46) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.171434)","Label":"ÄŠ","hasCustomLabel":false,"LabelId":202},"t => Invoke((t, t, t) => ((0.00, 279.32, 635.75) + (((0.00, -70.66, 14.91) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.035757)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":279.3213,"z":635.7538,"normalized":{"x":0.0,"y":0.402243435,"z":0.915532768,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":694.408569,"sqrMagnitude":482203.25}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-70.65708,"z":14.9136429,"normalized":{"x":0.0,"y":-0.9784422,"z":0.206520528,"normalized":{"x":0.0,"y":-0.978442252,"z":0.206520543,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":72.21385,"sqrMagnitude":5214.84}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":3.0357573},"Id":"t => Invoke((t, t, t) => ((0.00, 279.32, 635.75) + (((0.00, -70.66, 14.91) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.035757)","Label":"Ä‹","hasCustomLabel":false,"LabelId":203},"t => Invoke((t, t, t) => ((0.00, 19.62, 681.03) + (((0.00, 100.20, 14.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199265,"z":681.027954,"normalized":{"x":0.0,"y":0.0287973359,"z":0.99958533,"normalized":{"x":0.0,"y":0.0287973322,"z":0.9995852,"normalized":{"x":0.0,"y":0.0287973341,"z":0.9995853,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":1.00000012,"sqrMagnitude":1.00000012},"magnitude":681.3105,"sqrMagnitude":464184.031}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":100.202225,"z":14.8786545,"normalized":{"x":0.0,"y":0.9891549,"z":0.146875918,"normalized":{"x":0.0,"y":0.989154935,"z":0.146875933,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":101.300842,"sqrMagnitude":10261.86}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":7.777161E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 681.03) + (((0.00, 100.20, 14.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","Label":"ÄŒ","hasCustomLabel":false,"LabelId":204},"t => Invoke((t, t, t) => ((0.00, 19.62, 681.03) + (((0.00, -99.97, 14.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.14615)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6200047,"z":681.027954,"normalized":{"x":0.0,"y":0.02879745,"z":0.99958533,"normalized":{"x":0.0,"y":0.0287974458,"z":0.9995852,"normalized":{"x":0.0,"y":0.0287974477,"z":0.9995853,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":1.00000012,"sqrMagnitude":1.00000012},"magnitude":681.3105,"sqrMagnitude":464184.031}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-99.96713,"z":14.8437481,"normalized":{"x":0.0,"y":-0.989154935,"z":0.146875933,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":101.063171,"sqrMagnitude":10213.7646}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.146149963},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 681.03) + (((0.00, -99.97, 14.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.14615)","Label":"Ä","hasCustomLabel":false,"LabelId":205},"t => Invoke((t, t, t) => ((0.00, 4.91, 683.20) + (((0.00, 101.17, 14.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1464937)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90504265,"z":683.1974,"normalized":{"x":0.0,"y":0.007179355,"z":0.999974251,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":683.214966,"sqrMagnitude":466782.719}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":101.166283,"z":14.8094091,"normalized":{"x":0.0,"y":0.9894546,"z":0.1448431,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":102.244492,"sqrMagnitude":10453.9355}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.146493718},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 683.20) + (((0.00, 101.17, 14.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1464937)","Label":"ÄŽ","hasCustomLabel":false,"LabelId":206},"t => Invoke((t, t, t) => ((0.00, 19.62, 685.37) + (((0.00, -99.50, 14.77) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1468336)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6200047,"z":685.3669,"normalized":{"x":0.0,"y":0.0286152884,"z":0.9995905,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":685.647644,"sqrMagnitude":470112.719}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-99.49519,"z":14.774663,"normalized":{"x":0.0,"y":-0.989153445,"z":0.146885574,"normalized":{"x":0.0,"y":-0.9891535,"z":0.146885589,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":100.586205,"sqrMagnitude":10117.584}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.146833584},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 685.37) + (((0.00, -99.50, 14.77) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1468336)","Label":"Ä","hasCustomLabel":false,"LabelId":207},"t => Invoke((t, t, t) => ((0.00, 4.91, 687.54) + (((0.00, 100.70, 14.74) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1471789)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90501642,"z":687.5363,"normalized":{"x":0.0,"y":0.00713401055,"z":0.999974549,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":687.553833,"sqrMagnitude":472730.25}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":100.702141,"z":14.7404852,"normalized":{"x":0.0,"y":0.989456,"z":0.144833669,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":101.775261,"sqrMagnitude":10358.2031}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.147178888},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 687.54) + (((0.00, 100.70, 14.74) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1471789)","Label":"Ä","hasCustomLabel":false,"LabelId":208},"t => Invoke((t, t, t) => ((0.00, 19.62, 689.71) + (((0.00, -99.03, 14.71) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1475203)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199951,"z":689.7058,"normalized":{"x":0.0,"y":0.0284354016,"z":0.999595642,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":689.9848,"sqrMagnitude":476079.063}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-99.02541,"z":14.7058983,"normalized":{"x":0.0,"y":-0.989152,"z":0.146895319,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":100.11142,"sqrMagnitude":10022.2959}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.1475203},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 689.71) + (((0.00, -99.03, 14.71) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1475203)","Label":"Ä‘","hasCustomLabel":false,"LabelId":209},"t => Invoke((t, t, t) => ((0.00, 4.90, 691.88) + (((0.00, 100.24, 14.67) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1478672)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.904992,"z":691.875244,"normalized":{"x":0.0,"y":0.00708923861,"z":0.999974847,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":691.892639,"sqrMagnitude":478715.4}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":100.240189,"z":14.6718826,"normalized":{"x":0.0,"y":0.989457369,"z":0.144824177,"normalized":{"x":0.0,"y":0.9894574,"z":0.144824192,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":101.308243,"sqrMagnitude":10263.3594}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.147867158},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 691.88) + (((0.00, 100.24, 14.67) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1478672)","Label":"Ä’","hasCustomLabel":false,"LabelId":210},"t => Invoke((t, t, t) => ((0.00, 19.62, 694.04) + (((0.00, -98.56, 14.64) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1482101)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.619978,"z":694.044739,"normalized":{"x":0.0,"y":0.02825775,"z":0.999600649,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":694.322,"sqrMagnitude":482083.031}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-98.55779,"z":14.637454,"normalized":{"x":0.0,"y":-0.9891506,"z":0.146905139,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":99.63882,"sqrMagnitude":9927.894}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.148210138},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 694.04) + (((0.00, -98.56, 14.64) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1482101)","Label":"Ä“","hasCustomLabel":false,"LabelId":211},"t => Invoke((t, t, t) => ((0.00, 4.90, 696.21) + (((0.00, 99.78, 14.60) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1485586)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.904969,"z":696.2142,"normalized":{"x":0.0,"y":0.007045027,"z":0.9999752,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":696.231445,"sqrMagnitude":484738.219}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":99.78041,"z":14.6035986,"normalized":{"x":0.0,"y":0.9894588,"z":0.144814581,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":100.843422,"sqrMagnitude":10169.3955}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.148558557},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 696.21) + (((0.00, 99.78, 14.60) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1485586)","Label":"Ä”","hasCustomLabel":false,"LabelId":212},"t => Invoke((t, t, t) => ((0.00, 19.62, 698.38) + (((0.00, -98.09, 14.57) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1489023)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199512,"z":698.383667,"normalized":{"x":0.0,"y":0.0280822925,"z":0.999605656,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":698.6592,"sqrMagnitude":488124.7}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-98.0923157,"z":14.5693283,"normalized":{"x":0.0,"y":-0.9891491,"z":0.146915063,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":99.16838,"sqrMagnitude":9834.368}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.1489023},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 698.38) + (((0.00, -98.09, 14.57) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1489023)","Label":"Ä•","hasCustomLabel":false,"LabelId":213},"t => Invoke((t, t, t) => ((0.00, 4.91, 700.55) + (((0.00, 99.32, 14.54) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1492531)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90502739,"z":700.5531,"normalized":{"x":0.0,"y":0.007001478,"z":0.9999755,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":700.570251,"sqrMagnitude":490798.719}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":99.3228,"z":14.5356331,"normalized":{"x":0.0,"y":0.98946023,"z":0.144804925,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":100.380791,"sqrMagnitude":10076.3027}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.149253055},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 700.55) + (((0.00, 99.32, 14.54) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1492531)","Label":"Ä–","hasCustomLabel":false,"LabelId":214},"t => Invoke((t, t, t) => ((0.00, 19.62, 702.72) + (((0.00, -97.63, 14.50) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1495991)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199932,"z":702.7226,"normalized":{"x":0.0,"y":0.0279090926,"z":0.9996104,"normalized":{"x":0.0,"y":0.0279090945,"z":0.9996105,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":702.99646,"sqrMagnitude":494204.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-97.62897,"z":14.50152,"normalized":{"x":0.0,"y":-0.989147663,"z":0.146925092,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":98.7000961,"sqrMagnitude":9741.709}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.149599135},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 702.72) + (((0.00, -97.63, 14.50) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1495991)","Label":"Ä—","hasCustomLabel":false,"LabelId":215},"t => Invoke((t, t, t) => ((0.00, 4.91, 704.89) + (((0.00, 98.87, 14.47) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1499507)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90501,"z":704.892,"normalized":{"x":0.0,"y":0.00695835846,"z":0.999975741,"normalized":{"x":0.0,"y":0.006958359,"z":0.9999758,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":704.9091,"sqrMagnitude":496896.844}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":98.86736,"z":14.4679842,"normalized":{"x":0.0,"y":0.98946166,"z":0.144795164,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":99.92036,"sqrMagnitude":9984.078}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.149950668},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 704.89) + (((0.00, 98.87, 14.47) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1499507)","Label":"Ę","hasCustomLabel":false,"LabelId":216},"t => Invoke((t, t, t) => ((0.00, 19.62, 707.06) + (((0.00, -97.17, 14.43) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1502983)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199455,"z":707.0615,"normalized":{"x":0.0,"y":0.0277378932,"z":0.999615252,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":707.3337,"sqrMagnitude":500320.938}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-97.1677551,"z":14.4340267,"normalized":{"x":0.0,"y":-0.9891461,"z":0.14693518,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":98.23398,"sqrMagnitude":9649.914}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.1502983},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 707.06) + (((0.00, -97.17, 14.43) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1502983)","Label":"Ä™","hasCustomLabel":false,"LabelId":217},"t => Invoke((t, t, t) => ((0.00, 4.90, 709.23) + (((0.00, 98.41, 14.40) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1506522)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.904996,"z":709.230957,"normalized":{"x":0.0,"y":0.00691577047,"z":0.9999761,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":709.2479,"sqrMagnitude":503032.625}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":98.41407,"z":14.4006481,"normalized":{"x":0.0,"y":0.989463151,"z":0.1447853,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":99.46209,"sqrMagnitude":9892.708}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.15065217},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 709.23) + (((0.00, 98.41, 14.40) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1506522)","Label":"Äš","hasCustomLabel":false,"LabelId":218},"t => Invoke((t, t, t) => ((0.00, 19.62, 711.40) + (((0.00, -96.71, 14.37) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1510014)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199646,"z":711.400452,"normalized":{"x":0.0,"y":0.0275688712,"z":0.9996199,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":711.670959,"sqrMagnitude":506475.531}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-96.70864,"z":14.3668461,"normalized":{"x":0.0,"y":-0.9891446,"z":0.146945387,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":97.76997,"sqrMagnitude":9558.968}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.151001364},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 711.40) + (((0.00, -96.71, 14.37) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1510014)","Label":"Ä›","hasCustomLabel":false,"LabelId":219},"t => Invoke((t, t, t) => ((0.00, 4.90, 713.57) + (((0.00, 97.96, 14.33) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1513568)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.904987,"z":713.5699,"normalized":{"x":0.0,"y":0.006873708,"z":0.9999764,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":713.586731,"sqrMagnitude":509206.031}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":97.96292,"z":14.3336258,"normalized":{"x":0.0,"y":0.9894645,"z":0.144775331,"normalized":{"x":0.0,"y":0.9894646,"z":0.144775346,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":99.006,"sqrMagnitude":9802.187}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.151356772},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 713.57) + (((0.00, 97.96, 14.33) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1513568)","Label":"Äœ","hasCustomLabel":false,"LabelId":220},"t => Invoke((t, t, t) => ((0.00, 19.62, 715.74) + (((0.00, -96.25, 14.30) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1517075)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.61997,"z":715.7394,"normalized":{"x":0.0,"y":0.0274018776,"z":0.9996245,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":716.00824,"sqrMagnitude":512667.8}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-96.25164,"z":14.29998,"normalized":{"x":0.0,"y":-0.9891431,"z":0.1469557,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":97.3081055,"sqrMagnitude":9468.868}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.15170753},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 715.74) + (((0.00, -96.25, 14.30) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1517075)","Label":"Ä","hasCustomLabel":false,"LabelId":221},"t => Invoke((t, t, t) => ((0.00, 4.90, 717.91) + (((0.00, 97.51, 14.27) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1520653)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90498257,"z":717.9088,"normalized":{"x":0.0,"y":0.00683216,"z":0.999976635,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":717.9256,"sqrMagnitude":515417.125}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":97.5139,"z":14.2669172,"normalized":{"x":0.0,"y":0.989466,"z":0.1447653,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":98.55205,"sqrMagnitude":9712.506}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.152065277},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 717.91) + (((0.00, 97.51, 14.27) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1520653)","Label":"Äž","hasCustomLabel":false,"LabelId":222},"t => Invoke((t, t, t) => ((0.00, 19.62, 720.08) + (((0.00, -95.80, 14.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1524176)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.620039,"z":720.0783,"normalized":{"x":0.0,"y":0.0272369813,"z":0.999628961,"normalized":{"x":0.0,"y":0.0272369832,"z":0.999629,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":720.3456,"sqrMagnitude":518897.719}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-95.79672,"z":14.2334251,"normalized":{"x":0.0,"y":-0.9891415,"z":0.146966115,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":96.84835,"sqrMagnitude":9379.603}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.152417585},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 720.08) + (((0.00, -95.80, 14.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1524176)","Label":"ÄŸ","hasCustomLabel":false,"LabelId":223},"t => Invoke((t, t, t) => ((0.00, 4.90, 722.25) + (((0.00, 97.07, 14.20) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1527761)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90498543,"z":722.247742,"normalized":{"x":0.0,"y":0.006791122,"z":0.999976933,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":722.2644,"sqrMagnitude":521665.844}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":97.06701,"z":14.2005186,"normalized":{"x":0.0,"y":0.9894675,"z":0.14475517,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":98.10025,"sqrMagnitude":9623.659}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.1527761},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 722.25) + (((0.00, 97.07, 14.20) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1527761)","Label":"Ä ","hasCustomLabel":false,"LabelId":224},"t => Invoke((t, t, t) => ((0.00, 19.62, 724.42) + (((0.00, -95.34, 14.17) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.15313)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.62002,"z":724.417236,"normalized":{"x":0.0,"y":0.02707394,"z":0.999633431,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":724.682861,"sqrMagnitude":525165.25}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-95.34391,"z":14.16718,"normalized":{"x":0.0,"y":-0.98914,"z":0.1469766,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":96.39072,"sqrMagnitude":9291.17}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.153129965},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 724.42) + (((0.00, -95.34, 14.17) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.15313)","Label":"Ä¡","hasCustomLabel":false,"LabelId":225},"t => Invoke((t, t, t) => ((0.00, 4.90, 726.59) + (((0.00, 96.62, 14.13) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1534901)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90499353,"z":726.5867,"normalized":{"x":0.0,"y":0.00675058039,"z":0.999977231,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":726.6032,"sqrMagnitude":527952.25}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":96.62222,"z":14.134428,"normalized":{"x":0.0,"y":0.989469,"z":0.144744948,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":97.65058,"sqrMagnitude":9535.636}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.153490052},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 726.59) + (((0.00, 96.62, 14.13) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1534901)","Label":"Ä¢","hasCustomLabel":false,"LabelId":226},"t => Invoke((t, t, t) => ((0.00, 19.62, 728.76) + (((0.00, -94.89, 14.10) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1538455)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.6199856,"z":728.756165,"normalized":{"x":0.0,"y":0.026912814,"z":0.999637842,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":729.0202,"sqrMagnitude":531470.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-94.8931656,"z":14.1012421,"normalized":{"x":0.0,"y":-0.9891384,"z":0.1469872,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":95.93517,"sqrMagnitude":9203.558}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.153845459},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 728.76) + (((0.00, -94.89, 14.10) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1538455)","Label":"Ä£","hasCustomLabel":false,"LabelId":227},"t => Invoke((t, t, t) => ((0.00, 4.91, 730.93) + (((0.00, 96.18, 14.07) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1542079)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90500927,"z":730.9256,"normalized":{"x":0.0,"y":0.00671053072,"z":0.999977469,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":730.9421,"sqrMagnitude":534276.3}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":96.17954,"z":14.0686445,"normalized":{"x":0.0,"y":0.9894705,"z":0.1447346,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":97.20304,"sqrMagnitude":9448.432}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.154207885},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 730.93) + (((0.00, 96.18, 14.07) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1542079)","Label":"Ĥ","hasCustomLabel":false,"LabelId":228},"t => Invoke((t, t, t) => ((0.00, 19.62, 733.10) + (((0.00, -94.44, 14.04) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1545656)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":19.62001,"z":733.0951,"normalized":{"x":0.0,"y":0.0267536733,"z":0.999642,"normalized":{"x":0.0,"y":0.0267536752,"z":0.9996421,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":733.3576,"sqrMagnitude":537813.4}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-94.44448,"z":14.03561,"normalized":{"x":0.0,"y":-0.989136755,"z":0.146997884,"normalized":{"x":0.0,"y":-0.9891368,"z":0.1469979,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":95.48172,"sqrMagnitude":9116.759}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.154565632},"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 733.10) + (((0.00, -94.44, 14.04) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1545656)","Label":"Ä¥","hasCustomLabel":false,"LabelId":229},"t => Invoke((t, t, t) => ((0.00, 4.90, 735.26) + (((0.00, 95.74, 14.00) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90495634,"z":735.2645,"normalized":{"x":0.0,"y":0.00667086057,"z":0.999977767,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":735.2809,"sqrMagnitude":540638.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":95.73896,"z":14.0031672,"normalized":{"x":0.0,"y":0.989472032,"z":0.144724175,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":96.75762,"sqrMagnitude":9362.037}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":7.777161E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 735.26) + (((0.00, 95.74, 14.00) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","Label":"Ħ","hasCustomLabel":false,"LabelId":230},"t => Invoke((t, t, t) => ((0.00, 4.91, 735.26) + (((0.00, -95.52, 13.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90503073,"z":735.2645,"normalized":{"x":0.0,"y":0.00667096162,"z":0.999977767,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":735.2809,"sqrMagnitude":540638.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-95.5176544,"z":13.9707994,"normalized":{"x":0.0,"y":-0.989472032,"z":0.14472419,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":96.53396,"sqrMagnitude":9318.806}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":7.777161E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 735.26) + (((0.00, -95.52, 13.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","Label":"ħ","hasCustomLabel":false,"LabelId":231},"t => Invoke((t, t, t) => ((0.00, 4.90, 735.26) + (((0.00, 95.30, 13.94) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90495634,"z":735.2645,"normalized":{"x":0.0,"y":0.00667086057,"z":0.999977767,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":735.2809,"sqrMagnitude":540638.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":95.296875,"z":13.9385061,"normalized":{"x":0.0,"y":0.9894721,"z":0.14472419,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":96.31083,"sqrMagnitude":9275.776}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":7.777161E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 735.26) + (((0.00, 95.30, 13.94) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","Label":"Ĩ","hasCustomLabel":false,"LabelId":232},"t => Invoke((t, t, t) => ((0.00, 4.91, 735.26) + (((0.00, -95.08, 13.91) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.0514537)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90503025,"z":735.2645,"normalized":{"x":0.0,"y":0.006670961,"z":0.999977767,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":735.2809,"sqrMagnitude":540638.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-95.07659,"z":13.9062881,"normalized":{"x":0.0,"y":-0.989472032,"z":0.14472419,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":96.0882,"sqrMagnitude":9232.943}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0514537},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 735.26) + (((0.00, -95.08, 13.91) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.0514537)","Label":"Ä©","hasCustomLabel":false,"LabelId":233},"t => Invoke((t, t, t) => ((0.00, 0.00, 735.98) + (((0.00, 97.78, 14.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05029101)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":2.18674541E-06,"z":735.980042,"normalized":{"x":0.0,"y":2.971202E-09,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":735.980042,"sqrMagnitude":541666.6}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":97.77919,"z":14.2260551,"normalized":{"x":0.0,"y":0.9895812,"z":0.1439758,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":98.8086548,"sqrMagnitude":9763.15}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.050291013},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 735.98) + (((0.00, 97.78, 14.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05029101)","Label":"Ī","hasCustomLabel":false,"LabelId":234},"t => Invoke((t, t, t) => ((0.00, 4.91, 736.70) + (((0.00, -97.06, 14.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05040689)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905011,"z":736.6955,"normalized":{"x":0.0,"y":0.00665797759,"z":0.999977767,"normalized":{"x":0.0,"y":0.006657978,"z":0.9999778,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":736.711853,"sqrMagnitude":542744.3}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-97.06101,"z":14.19318,"normalized":{"x":0.0,"y":-0.9894769,"z":0.144690678,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":98.0932541,"sqrMagnitude":9622.286}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.05040689},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 736.70) + (((0.00, -97.06, 14.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05040689)","Label":"Ä«","hasCustomLabel":false,"LabelId":235},"t => Invoke((t, t, t) => ((0.00, 0.00, 737.41) + (((0.00, 99.80, 14.52) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04926832)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.4927E-06,"z":737.41095,"normalized":{"x":0.0,"y":6.09253226E-09,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":737.41095,"sqrMagnitude":543774.938}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":99.7986755,"z":14.5195351,"normalized":{"x":0.0,"y":0.989581645,"z":0.143972516,"normalized":{"x":0.0,"y":0.9895817,"z":0.143972531,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":100.849358,"sqrMagnitude":10170.5928}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0492683165},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 737.41) + (((0.00, 99.80, 14.52) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04926832)","Label":"Ĭ","hasCustomLabel":false,"LabelId":236},"t => Invoke((t, t, t) => ((0.00, 4.91, 738.13) + (((0.00, -99.09, 14.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04938186)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.9050107,"z":738.1263,"normalized":{"x":0.0,"y":0.00664507225,"z":0.999977946,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":738.1426,"sqrMagnitude":544854.438}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-99.0859,"z":14.48599,"normalized":{"x":0.0,"y":-0.9894816,"z":0.144658536,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":100.1392,"sqrMagnitude":10027.8594}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0493818633},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 738.13) + (((0.00, -99.09, 14.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04938186)","Label":"Ä","hasCustomLabel":false,"LabelId":237},"t => Invoke((t, t, t) => ((0.00, 0.00, 738.84) + (((0.00, 101.86, 14.82) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04826662)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":3.14321369E-06,"z":738.8416,"normalized":{"x":0.0,"y":4.2542454E-09,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":738.8416,"sqrMagnitude":545886.938}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":101.859787,"z":14.8190708,"normalized":{"x":0.0,"y":0.9895821,"z":0.143969357,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":102.932121,"sqrMagnitude":10595.0215}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0482666157},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 738.84) + (((0.00, 101.86, 14.82) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04826662)","Label":"Ä®","hasCustomLabel":false,"LabelId":238},"t => Invoke((t, t, t) => ((0.00, 4.91, 739.56) + (((0.00, -101.15, 14.78) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04837783)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90500355,"z":739.5569,"normalized":{"x":0.0,"y":0.00663220929,"z":0.999978065,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":739.5731,"sqrMagnitude":546968.438}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-101.1521,"z":14.78484,"normalized":{"x":0.0,"y":-0.989486158,"z":0.14462769,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":102.2269,"sqrMagnitude":10450.3389}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.04837783},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 739.56) + (((0.00, -101.15, 14.78) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04837783)","Label":"į","hasCustomLabel":false,"LabelId":239},"t => Invoke((t, t, t) => ((0.00, 0.00, 740.27) + (((0.00, 103.96, 15.12) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04728592)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.890375E-06,"z":740.272156,"normalized":{"x":0.0,"y":6.606185E-09,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":740.272156,"sqrMagnitude":548002.9}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":103.963371,"z":15.1247854,"normalized":{"x":0.0,"y":0.9895826,"z":0.143966332,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":105.0578,"sqrMagnitude":11037.1416}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.04728592},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 740.27) + (((0.00, 103.96, 15.12) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04728592)","Label":"Ä°","hasCustomLabel":false,"LabelId":240},"t => Invoke((t, t, t) => ((0.00, 4.91, 740.99) + (((0.00, -103.26, 15.09) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.0473948)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90504074,"z":740.987366,"normalized":{"x":0.0,"y":0.006619456,"z":0.999978065,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":741.0036,"sqrMagnitude":549086.3}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-103.260468,"z":15.0898552,"normalized":{"x":0.0,"y":-0.989490449,"z":0.1445981,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":104.357216,"sqrMagnitude":10890.4277}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0473947972},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 740.99) + (((0.00, -103.26, 15.09) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.0473948)","Label":"ı","hasCustomLabel":false,"LabelId":241},"t => Invoke((t, t, t) => ((0.00, 0.00, 741.70) + (((0.00, 106.11, 15.44) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04632466)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":1.36895105E-05,"z":741.7026,"normalized":{"x":0.0,"y":1.84568734E-08,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":741.7026,"sqrMagnitude":550122.7}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":106.110306,"z":15.4368067,"normalized":{"x":0.0,"y":0.989582956,"z":0.143963411,"normalized":{"x":0.0,"y":0.989583,"z":0.143963426,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":107.227295,"sqrMagnitude":11497.6924}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.04632466},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 741.70) + (((0.00, 106.11, 15.44) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04632466)","Label":"IJ","hasCustomLabel":false,"LabelId":242},"t => Invoke((t, t, t) => ((0.00, 4.91, 742.42) + (((0.00, -105.41, 15.40) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04643121)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905011,"z":742.417664,"normalized":{"x":0.0,"y":0.00660666451,"z":0.9999782,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":742.433838,"sqrMagnitude":551208.063}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-105.4119,"z":15.4011641,"normalized":{"x":0.0,"y":-0.9894946,"z":0.144569725,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":106.531052,"sqrMagnitude":11348.8652}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0464312062},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 742.42) + (((0.00, -105.41, 15.40) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04643121)","Label":"ij","hasCustomLabel":false,"LabelId":243},"t => Invoke((t, t, t) => ((0.00, 0.00, 743.13) + (((0.00, 108.30, 15.76) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04538285)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":3.46722081E-05,"z":743.132751,"normalized":{"x":0.0,"y":4.66568153E-08,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":743.132751,"sqrMagnitude":552246.3}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":108.3015,"z":15.7552681,"normalized":{"x":0.0,"y":0.989583433,"z":0.143960625,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":109.441505,"sqrMagnitude":11977.4434}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0453828461},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 743.13) + (((0.00, 108.30, 15.76) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04538285)","Label":"Ä´","hasCustomLabel":false,"LabelId":244},"t => Invoke((t, t, t) => ((0.00, 4.90, 743.85) + (((0.00, -107.61, 15.72) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04548784)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90496254,"z":743.8478,"normalized":{"x":0.0,"y":0.00659389747,"z":0.999978244,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":743.863953,"sqrMagnitude":553333.563}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-107.6073,"z":15.7188959,"normalized":{"x":0.0,"y":-0.9894986,"z":0.144542471,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":108.749321,"sqrMagnitude":11826.415}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.045487836},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 743.85) + (((0.00, -107.61, 15.72) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04548784)","Label":"ĵ","hasCustomLabel":false,"LabelId":245},"t => Invoke((t, t, t) => ((0.00, 0.00, 744.56) + (((0.00, 110.54, 16.08) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04446203)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.68202949E-06,"z":744.5628,"normalized":{"x":0.0,"y":-1.30036435E-08,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":744.5628,"sqrMagnitude":554373.75}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":110.537849,"z":16.0802975,"normalized":{"x":0.0,"y":0.9895838,"z":0.143957943,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":111.701355,"sqrMagnitude":12477.1924}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.04446203},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 744.56) + (((0.00, 110.54, 16.08) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04446203)","Label":"Ķ","hasCustomLabel":false,"LabelId":246},"t => Invoke((t, t, t) => ((0.00, 4.91, 745.28) + (((0.00, -109.85, 16.04) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04456469)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905031,"z":745.2778,"normalized":{"x":0.0,"y":0.006581338,"z":0.999978364,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":745.2939,"sqrMagnitude":555463.0}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-109.847549,"z":16.0431824,"normalized":{"x":0.0,"y":-0.98950243,"z":0.144516364,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":111.012917,"sqrMagnitude":12323.8682}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0445646867},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 745.28) + (((0.00, -109.85, 16.04) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04456469)","Label":"Ä·","hasCustomLabel":false,"LabelId":247},"t => Invoke((t, t, t) => ((0.00, 0.00, 745.99) + (((0.00, 112.82, 16.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.0435591)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-3.2027252E-05,"z":745.992737,"normalized":{"x":0.0,"y":-4.29323919E-08,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":745.992737,"sqrMagnitude":556505.2}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":112.820305,"z":16.412035,"normalized":{"x":0.0,"y":0.9895842,"z":0.14395538,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":114.00779,"sqrMagnitude":12997.7764}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0435591},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 745.99) + (((0.00, 112.82, 16.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.0435591)","Label":"ĸ","hasCustomLabel":false,"LabelId":248},"t => Invoke((t, t, t) => ((0.00, 4.91, 746.71) + (((0.00, -112.13, 16.37) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04365943)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.905012,"z":746.707642,"normalized":{"x":0.0,"y":0.00656871032,"z":0.9999784,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":746.723755,"sqrMagnitude":557596.4}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-112.133621,"z":16.37416,"normalized":{"x":0.0,"y":-0.989506066,"z":0.144491285,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":113.322823,"sqrMagnitude":12842.0625}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0436594263},"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 746.71) + (((0.00, -112.13, 16.37) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04365943)","Label":"Ĺ","hasCustomLabel":false,"LabelId":249},"t => Invoke((t, t, t) => ((0.00, 0.00, 747.42) + (((0.00, 115.15, 16.75) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04267406)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-2.69999728E-05,"z":747.422546,"normalized":{"x":0.0,"y":-3.61241064E-08,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":747.422546,"sqrMagnitude":558640.438}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":115.149796,"z":16.7506142,"normalized":{"x":0.0,"y":0.989584565,"z":0.143952921,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":116.361755,"sqrMagnitude":13540.0586}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.04267406},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 747.42) + (((0.00, 115.15, 16.75) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04267406)","Label":"ĺ","hasCustomLabel":false,"LabelId":250},"t => Invoke((t, t, t) => ((0.00, 4.90, 748.14) + (((0.00, -114.47, 16.71) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04277205)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90494967,"z":748.1374,"normalized":{"x":0.0,"y":0.0065560746,"z":0.999978542,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":748.153442,"sqrMagnitude":559733.6}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-114.466438,"z":16.7119637,"normalized":{"x":0.0,"y":-0.9895096,"z":0.14446722,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":115.67997,"sqrMagnitude":13381.8555}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.04277205},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 748.14) + (((0.00, -114.47, 16.71) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04277205)","Label":"Ä»","hasCustomLabel":false,"LabelId":251},"t => Invoke((t, t, t) => ((0.00, 0.00, 748.85) + (((0.00, 117.53, 17.10) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04180769)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":1.20755285E-05,"z":748.8522,"normalized":{"x":0.0,"y":1.61253837E-08,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":748.8522,"sqrMagnitude":560779.563}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":117.5273,"z":17.0961781,"normalized":{"x":0.0,"y":0.989584863,"z":0.143950552,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":118.764244,"sqrMagnitude":14104.9453}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.041807685},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 748.85) + (((0.00, 117.53, 17.10) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04180769)","Label":"ļ","hasCustomLabel":false,"LabelId":252},"t => Invoke((t, t, t) => ((0.00, 4.90, 749.57) + (((0.00, -116.85, 17.06) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04190412)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90498257,"z":749.5669,"normalized":{"x":0.0,"y":0.00654361537,"z":0.9999786,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":749.582947,"sqrMagnitude":561874.563}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-116.846985,"z":17.0567379,"normalized":{"x":0.0,"y":-0.989513,"z":0.144444153,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":118.08535,"sqrMagnitude":13944.15}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.04190412},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 749.57) + (((0.00, -116.85, 17.06) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04190412)","Label":"Ľ","hasCustomLabel":false,"LabelId":253},"t => Invoke((t, t, t) => ((0.00, 0.00, 750.28) + (((0.00, 119.95, 17.45) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04095919)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-8.046627E-07,"z":750.2816,"normalized":{"x":0.0,"y":-1.07248088E-09,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":750.2816,"sqrMagnitude":562922.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":119.953827,"z":17.4488716,"normalized":{"x":0.0,"y":0.9895852,"z":0.143948257,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":121.21627,"sqrMagnitude":14693.3838}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0409591943},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 750.28) + (((0.00, 119.95, 17.45) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04095919)","Label":"ľ","hasCustomLabel":false,"LabelId":254},"t => Invoke((t, t, t) => ((0.00, 4.90, 751.00) + (((0.00, -119.28, 17.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04105408)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":4.90498257,"z":750.996338,"normalized":{"x":0.0,"y":0.00653116126,"z":0.9999787,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":751.0123,"sqrMagnitude":564019.563}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-119.276253,"z":17.4086227,"normalized":{"x":0.0,"y":-0.9895162,"z":0.144422,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":120.53997,"sqrMagnitude":14529.8848}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0410540774},"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 751.00) + (((0.00, -119.28, 17.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04105408)","Label":"Ä¿","hasCustomLabel":false,"LabelId":255},"t => Invoke((t, t, t) => ((0.00, 0.00, 751.71) + (((0.00, 122.43, 17.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-6.117858E-05,"z":751.71106,"normalized":{"x":0.0,"y":-8.13857639E-08,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":751.71106,"sqrMagnitude":565069.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":122.430351,"z":17.8088379,"normalized":{"x":0.0,"y":0.9895855,"z":0.143946066,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":123.718819,"sqrMagnitude":15306.3457}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":7.777161E-07},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 751.71) + (((0.00, 122.43, 17.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","Label":"Å€","hasCustomLabel":false,"LabelId":256},"t => Invoke((t, t, t) => ((0.00, 0.00, 751.71) + (((0.00, -125.25, 18.22) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.812294)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":3.403747E-05,"z":751.71106,"normalized":{"x":0.0,"y":4.52799931E-08,"z":1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":751.71106,"sqrMagnitude":565069.5}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-125.244972,"z":18.218256,"normalized":{"x":0.0,"y":-0.9895856,"z":0.143946081,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":126.563057,"sqrMagnitude":16018.208}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":2.81229448},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 751.71) + (((0.00, -125.25, 18.22) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.812294)","Label":"Å","hasCustomLabel":false,"LabelId":257},"t => Invoke((t, t, t) => ((0.00, -391.02, 802.95) + (((0.00, 91.01, -121.66) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 6.758636)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-391.019348,"z":802.946167,"normalized":{"x":0.0,"y":-0.437825054,"z":0.899060249,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":893.095,"sqrMagnitude":797618.7}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":91.00588,"z":-121.659996,"normalized":{"x":0.0,"y":0.5989923,"z":-0.800754845,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":151.931641,"sqrMagnitude":23083.2246}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":6.75863552},"Id":"t => Invoke((t, t, t) => ((0.00, -391.02, 802.95) + (((0.00, 91.01, -121.66) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 6.758636)","Label":"Å‚","hasCustomLabel":false,"LabelId":258},"t => Invoke((t, t, t) => ((0.00, 0.00, -19.31) + (((0.00, -30.09, -148.20) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04254144)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-1.52587891E-05,"z":-19.3093872,"normalized":{"x":0.0,"y":-7.90226466E-07,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":19.3093872,"sqrMagnitude":372.852448}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-30.0919476,"z":-148.19603,"normalized":{"x":0.0,"y":-0.198994055,"z":-0.9800007,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":151.220337,"sqrMagnitude":22867.5879}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.04254144},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -19.31) + (((0.00, -30.09, -148.20) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04254144)","Label":"Ń","hasCustomLabel":false,"LabelId":259},"t => Invoke((t, t, t) => ((0.00, -1.29, -25.61) + (((0.00, 141.67, -47.04) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.009102389)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-1.289047,"z":-25.61386,"normalized":{"x":0.0,"y":-0.0502625443,"z":-0.9987361,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":25.6462746,"sqrMagnitude":657.731445}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":141.666885,"z":-47.0356827,"normalized":{"x":0.0,"y":0.9490577,"z":-0.3151024,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":149.2711,"sqrMagnitude":22281.8613}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.009102389},"Id":"t => Invoke((t, t, t) => ((0.00, -1.29, -25.61) + (((0.00, 141.67, -47.04) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.009102389)","Label":"Å„","hasCustomLabel":false,"LabelId":260},"t => Invoke((t, t, t) => ((0.00, 0.00, -26.04) + (((0.00, -148.81, -49.44) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04964305)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":5.37515152E-05,"z":-26.041996,"normalized":{"x":0.0,"y":2.064032E-06,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":26.041996,"sqrMagnitude":678.185547}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-148.805054,"z":-49.43683,"normalized":{"x":0.0,"y":-0.9489982,"z":-0.3152814,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":156.802246,"sqrMagnitude":24586.9434}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0496430546},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -26.04) + (((0.00, -148.81, -49.44) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04964305)","Label":"Å…","hasCustomLabel":false,"LabelId":261},"t => Invoke((t, t, t) => ((0.00, -7.40, -28.50) + (((0.00, 117.08, 104.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06336676)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-7.39917135,"z":-28.496191,"normalized":{"x":0.0,"y":-0.2513208,"z":-0.9679038,"normalized":{"x":0.0,"y":-0.251320839,"z":-0.967903852,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":29.44114,"sqrMagnitude":866.78064}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":117.078545,"z":104.233055,"normalized":{"x":0.0,"y":0.746892,"z":0.664945364,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":156.754318,"sqrMagnitude":24571.916}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0633667558},"Id":"t => Invoke((t, t, t) => ((0.00, -7.40, -28.50) + (((0.00, 117.08, 104.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06336676)","Label":"ņ","hasCustomLabel":false,"LabelId":262},"t => Invoke((t, t, t) => ((0.00, 0.00, -21.89) + (((0.00, -129.99, 116.34) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1013933)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":2.099201E-05,"z":-21.8912811,"normalized":{"x":0.0,"y":9.589211E-07,"z":-1.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":21.8912811,"sqrMagnitude":479.22818}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-129.988464,"z":116.344261,"normalized":{"x":0.0,"y":-0.7451308,"z":0.666918337,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":174.450531,"sqrMagnitude":30432.9883}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.101393335},"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -21.89) + (((0.00, -129.99, 116.34) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1013933)","Label":"Ň","hasCustomLabel":false,"LabelId":263},"t => Invoke((t, t, t) => ((0.00, -13.23, -10.09) + (((0.00, -34.56, 168.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2216484)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-13.23037,"z":-10.0947485,"normalized":{"x":0.0,"y":-0.7950124,"z":-0.6065931,"normalized":{"x":0.0,"y":-0.7950125,"z":-0.606593132,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":16.6417141,"sqrMagnitude":276.946625}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-34.5639954,"z":168.193192,"normalized":{"x":0.0,"y":-0.201295257,"z":0.979530632,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":171.707947,"sqrMagnitude":29483.62}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.221648425},"Id":"t => Invoke((t, t, t) => ((0.00, -13.23, -10.09) + (((0.00, -34.56, 168.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2216484)","Label":"ň","hasCustomLabel":false,"LabelId":264},"t => Invoke((t, t, t) => ((0.00, -21.13, 27.19) + (((0.00, -124.73, 113.58) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05983748)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-21.1323967,"z":27.1850052,"normalized":{"x":0.0,"y":-0.6137325,"z":0.789513946,"normalized":{"x":0.0,"y":-0.6137326,"z":0.789514,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":34.4325829,"sqrMagnitude":1185.60266}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-124.7332,"z":113.584358,"normalized":{"x":0.0,"y":-0.7393777,"z":0.673290968,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":168.700256,"sqrMagnitude":28459.7773}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0598374829},"Id":"t => Invoke((t, t, t) => ((0.00, -21.13, 27.19) + (((0.00, -124.73, 113.58) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05983748)","Label":"ʼn","hasCustomLabel":false,"LabelId":265},"t => Invoke((t, t, t) => ((0.00, -28.61, 33.98) + (((0.00, 35.53, -164.50) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.03449591)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-28.61368,"z":33.9816055,"normalized":{"x":0.0,"y":-0.644104,"z":0.764937937,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":44.4240036,"sqrMagnitude":1973.49219}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":35.5301437,"z":-164.504654,"normalized":{"x":0.0,"y":0.211114645,"z":-0.977461338,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":168.297867,"sqrMagnitude":28324.1719}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.034495905},"Id":"t => Invoke((t, t, t) => ((0.00, -28.61, 33.98) + (((0.00, 35.53, -164.50) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.03449591)","Label":"ÅŠ","hasCustomLabel":false,"LabelId":266},"t => Invoke((t, t, t) => ((0.00, -27.39, 28.31) + (((0.00, -164.50, 35.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06614631)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-27.3938713,"z":28.30687,"normalized":{"x":0.0,"y":-0.695423067,"z":0.7186005,"normalized":{"x":0.0,"y":-0.6954231,"z":0.7186006,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":0.99999994,"sqrMagnitude":0.99999994},"magnitude":39.3916626,"sqrMagnitude":1551.703}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-164.504639,"z":35.1917229,"normalized":{"x":0.0,"y":-0.9778746,"z":0.209192216,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":168.22673,"sqrMagnitude":28300.2344}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.0661463141},"Id":"t => Invoke((t, t, t) => ((0.00, -27.39, 28.31) + (((0.00, -164.50, 35.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06614631)","Label":"Å‹","hasCustomLabel":false,"LabelId":267},"t => Invoke((t, t, t) => ((0.00, -38.30, 30.63) + (((0.00, -51.41, -158.48) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1876905)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-38.2967072,"z":30.6346722,"normalized":{"x":0.0,"y":-0.78089565,"z":0.624661565,"magnitude":1.0,"sqrMagnitude":1.00000012},"magnitude":49.04203,"sqrMagnitude":2405.12085}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-51.4056244,"z":-158.482635,"normalized":{"x":0.0,"y":-0.30853647,"z":-0.9512125,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":166.611176,"sqrMagnitude":27759.2832}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":0.187690541},"Id":"t => Invoke((t, t, t) => ((0.00, -38.30, 30.63) + (((0.00, -51.41, -158.48) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1876905)","Label":"ÅŒ","hasCustomLabel":false,"LabelId":268},"t => Invoke((t, t, t) => ((0.00, -48.12, 0.89) + (((0.00, -158.48, -53.25) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, Infinity)":{"s_type":"FunctionFact<System.Single, UnityEngine.Vector3>","Function_MMT":{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-48.1178474,"z":0.888980865,"normalized":{"x":0.0,"y":-0.999829352,"z":0.0184719227,"magnitude":1.0,"sqrMagnitude":0.99999994},"magnitude":48.12606,"sqrMagnitude":2316.11743}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Add"},"arguments":[{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-158.482635,"z":-53.24687,"normalized":{"x":0.0,"y":-0.947928131,"z":-0.318484128,"normalized":{"x":0.0,"y":-0.9479282,"z":-0.318484157,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":0.99999994,"sqrMagnitude":0.9999999},"magnitude":167.188446,"sqrMagnitude":27951.9746}},{"kind":"OMV","name":"t","typeString":"System.Single"}]},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMF","float":0.5},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMC<UnityEngine.Vector3>","value":{"x":0.0,"y":-9.809999,"z":0.0,"normalized":{"x":0.0,"y":-1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":9.809999,"sqrMagnitude":96.23609}},{"kind":"OMA","applicant":{"kind":"OMS","uri":"Multiply"},"arguments":[{"kind":"OMV","name":"t","typeString":"System.Single"},{"kind":"OMV","name":"t","typeString":"System.Single"}]}]}]}]}]},"Domain":{"Item1":0.0,"Item2":"Infinity"},"Id":"t => Invoke((t, t, t) => ((0.00, -48.12, 0.89) + (((0.00, -158.48, -53.25) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, Infinity)","Label":"Å","hasCustomLabel":false,"LabelId":269}},"MetaInf":{"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1353":{"workflow_id":0,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1354":{"workflow_id":1,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1355":{"workflow_id":2,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1356":{"workflow_id":3,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1357":{"workflow_id":4,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1358":{"workflow_id":5,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1359":{"workflow_id":6,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1360":{"workflow_id":7,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1361":{"workflow_id":8,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1364":{"workflow_id":9,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1365":{"workflow_id":10,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1366":{"workflow_id":11,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1367":{"workflow_id":12,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1368":{"workflow_id":13,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1369":{"workflow_id":14,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1370":{"workflow_id":15,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1371":{"workflow_id":16,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1372":{"workflow_id":17,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1373":{"workflow_id":18,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1374":{"workflow_id":19,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1375":{"workflow_id":20,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1376":{"workflow_id":21,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1377":{"workflow_id":22,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1378":{"workflow_id":23,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1379":{"workflow_id":24,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1380":{"workflow_id":25,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1381":{"workflow_id":26,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1382":{"workflow_id":27,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1385":{"workflow_id":28,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1388":{"workflow_id":29,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1389":{"workflow_id":30,"active":true},"t => Invoke((t, t, t) => ((0.00, 14.72, 18.64) + (((0.00, 7.36, -24.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.350781)":{"workflow_id":31,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -37.86) + (((0.00, 15.46, -23.66) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":32,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -37.86) + (((0.00, -15.21, -23.28) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.294486)":{"workflow_id":33,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -44.72) + (((0.00, 20.72, -26.65) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2517014)":{"workflow_id":34,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -51.43) + (((0.00, -17.97, -26.24) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2551696)":{"workflow_id":35,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -58.12) + (((0.00, 23.43, -30.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2193891)":{"workflow_id":36,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -64.71) + (((0.00, -20.96, -29.58) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2224558)":{"workflow_id":37,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -71.29) + (((0.00, 26.48, -33.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.192063)":{"workflow_id":38,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -77.79) + (((0.00, -24.23, -33.34) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1947749)":{"workflow_id":39,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -84.29) + (((0.00, 29.91, -38.15) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1686753)":{"workflow_id":40,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -90.72) + (((0.00, -27.83, -37.58) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1710752)":{"workflow_id":41,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -97.15) + (((0.00, 33.76, -42.99) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1484858)":{"workflow_id":42,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -103.53) + (((0.00, -31.83, -42.36) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":43,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -103.53) + (((0.00, 31.36, -41.74) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5099022)":{"workflow_id":44,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -124.81) + (((0.00, -25.93, -41.07) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5168604)":{"workflow_id":45,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -146.04) + (((0.00, 30.55, -40.46) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5261275)":{"workflow_id":46,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -167.33) + (((0.00, -24.98, -39.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5332459)":{"workflow_id":47,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -188.56) + (((0.00, 29.77, -39.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5428956)":{"workflow_id":48,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -209.85) + (((0.00, -24.05, -38.60) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5501742)":{"workflow_id":49,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -231.09) + (((0.00, 29.01, -38.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5602289)":{"workflow_id":50,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -252.39) + (((0.00, -23.14, -37.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.567667)":{"workflow_id":51,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -273.63) + (((0.00, 28.29, -36.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5781516)":{"workflow_id":52,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -294.95) + (((0.00, -22.25, -36.27) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":53,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -294.95) + (((0.00, 21.89, -35.68) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":54,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -294.95) + (((0.00, -21.53, -35.10) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6011003)":{"workflow_id":55,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -316.05) + (((0.00, 27.03, -34.59) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6123966)":{"workflow_id":56,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -337.24) + (((0.00, -20.68, -34.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6202529)":{"workflow_id":57,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -358.34) + (((0.00, 26.38, -33.54) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6320594)":{"workflow_id":58,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -379.54) + (((0.00, -19.85, -32.99) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6400672)":{"workflow_id":59,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -400.66) + (((0.00, 25.75, -32.52) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.652419)":{"workflow_id":60,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -421.87) + (((0.00, -19.04, -31.98) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6605752)":{"workflow_id":61,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -443.00) + (((0.00, 25.15, -31.53) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6735125)":{"workflow_id":62,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -464.24) + (((0.00, -18.24, -31.01) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":63,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -464.24) + (((0.00, 17.94, -30.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.656734)":{"workflow_id":64,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -575.74) + (((0.00, 17.64, -29.99) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":65,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -575.74) + (((0.00, -17.35, -29.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7069278)":{"workflow_id":66,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -596.59) + (((0.00, 23.94, -29.08) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7211544)":{"workflow_id":67,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -617.56) + (((0.00, -16.59, -28.59) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7296908)":{"workflow_id":68,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -638.42) + (((0.00, 23.41, -28.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":69,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -638.42) + (((0.00, -23.09, -27.80) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":70,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -638.42) + (((0.00, 22.76, -27.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7762588)":{"workflow_id":71,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -659.70) + (((0.00, -14.89, -26.95) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7851053)":{"workflow_id":72,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -680.86) + (((0.00, 22.28, -26.57) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8021103)":{"workflow_id":73,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -702.17) + (((0.00, -14.16, -26.12) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8110591)":{"workflow_id":74,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -723.36) + (((0.00, 21.82, -25.76) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8290595)":{"workflow_id":75,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -744.71) + (((0.00, -13.45, -25.31) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8380974)":{"workflow_id":76,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -765.93) + (((0.00, 21.37, -24.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8571995)":{"workflow_id":77,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -787.33) + (((0.00, -12.74, -24.53) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 9.721451E-08)":{"workflow_id":78,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -787.33) + (((0.00, 12.52, -24.11) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.551519)":{"workflow_id":79,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -848.84) + (((0.00, 12.30, -23.69) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.507177)":{"workflow_id":80,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -908.22) + (((0.00, 12.08, -23.28) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.463606)":{"workflow_id":81,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -965.57) + (((0.00, 11.87, -22.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":82,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -965.57) + (((0.00, -11.67, -22.47) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9117292)":{"workflow_id":83,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -986.06) + (((0.00, 20.34, -22.18) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9336835)":{"workflow_id":84,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -1006.76) + (((0.00, -10.98, -21.79) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9427679)":{"workflow_id":85,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1027.31) + (((0.00, 19.97, -21.50) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9663128)":{"workflow_id":86,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -1048.08) + (((0.00, -10.30, -21.12) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9754006)":{"workflow_id":87,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1068.68) + (((0.00, 19.61, -20.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.000773)":{"workflow_id":88,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -1089.55) + (((0.00, -9.62, -20.47) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.009835)":{"workflow_id":89,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1110.22) + (((0.00, 19.27, -20.21) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.037334)":{"workflow_id":90,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -1131.18) + (((0.00, -8.93, -19.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.046336)":{"workflow_id":91,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1151.94) + (((0.00, 18.95, -19.58) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.076354)":{"workflow_id":92,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -1173.02) + (((0.00, -8.24, -19.22) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.085251)":{"workflow_id":93,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1193.88) + (((0.00, 18.64, -18.98) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.118315)":{"workflow_id":94,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -1215.10) + (((0.00, -7.53, -18.62) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.127055)":{"workflow_id":95,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1236.09) + (((0.00, 18.35, -18.39) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.1639)":{"workflow_id":96,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -1257.49) + (((0.00, -6.80, -18.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.172412)":{"workflow_id":97,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1278.63) + (((0.00, 18.08, -17.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.214127)":{"workflow_id":98,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -1300.25) + (((0.00, -6.04, -17.46) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.22232)":{"workflow_id":99,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1321.59) + (((0.00, 17.81, -17.25) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.270634)":{"workflow_id":100,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -1343.51) + (((0.00, -5.24, -16.90) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.278377)":{"workflow_id":101,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1365.11) + (((0.00, 17.57, -16.69) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":102,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1365.11) + (((0.00, -17.35, -16.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2630862)":{"workflow_id":103,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1369.44) + (((0.00, 22.13, -18.30) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2337887)":{"workflow_id":104,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1373.72) + (((0.00, -19.60, -18.09) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2362997)":{"workflow_id":105,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1378.00) + (((0.00, 24.32, -20.07) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2106032)":{"workflow_id":106,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1382.23) + (((0.00, -22.00, -19.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2128774)":{"workflow_id":107,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1386.45) + (((0.00, 26.73, -22.01) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1901601)":{"workflow_id":108,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -24.57, -21.76) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":109,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1390.63) + (((0.00, 24.29, -21.51) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":110,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -24.01, -21.26) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":111,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1390.63) + (((0.00, 23.73, -21.02) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":112,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -23.46, -20.77) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":113,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1390.63) + (((0.00, 23.19, -20.53) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":114,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -22.92, -20.30) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":115,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1390.63) + (((0.00, 22.66, -20.06) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":116,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -22.40, -19.83) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2094049)":{"workflow_id":117,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1394.79) + (((0.00, 27.10, -21.98) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1873304)":{"workflow_id":118,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1398.91) + (((0.00, -24.98, -21.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.189341)":{"workflow_id":119,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1403.02) + (((0.00, 29.74, -24.09) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1696683)":{"workflow_id":120,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1407.11) + (((0.00, -27.76, -23.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1714948)":{"workflow_id":121,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1411.19) + (((0.00, 32.63, -26.39) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1538832)":{"workflow_id":122,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1415.25) + (((0.00, -30.77, -26.10) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1555432)":{"workflow_id":123,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1419.31) + (((0.00, 35.79, -28.92) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1397214)":{"workflow_id":124,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1423.35) + (((0.00, -34.04, -28.60) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.88858E-07)":{"workflow_id":125,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1423.35) + (((0.00, 33.66, -28.28) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.88858E-07)":{"workflow_id":126,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1423.35) + (((0.00, -33.28, -27.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.88858E-07)":{"workflow_id":127,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1423.35) + (((0.00, 32.91, -27.65) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.4816384)":{"workflow_id":128,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -1436.67) + (((0.00, -27.84, -27.31) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.4867818)":{"workflow_id":129,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1449.97) + (((0.00, 32.25, -27.01) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.4931997)":{"workflow_id":130,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -1463.29) + (((0.00, -27.08, -26.68) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.4984414)":{"workflow_id":131,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1476.58) + (((0.00, 31.61, -26.38) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)":{"workflow_id":132,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1476.58) + (((0.00, -31.26, -26.09) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.153211)":{"workflow_id":133,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1480.58) + (((0.00, 36.27, -28.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.137793)":{"workflow_id":134,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1484.56) + (((0.00, -34.54, -28.56) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1392672)":{"workflow_id":135,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1488.54) + (((0.00, 39.74, -31.62) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1253566)":{"workflow_id":136,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1492.50) + (((0.00, -38.09, -31.27) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1266997)":{"workflow_id":137,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1496.46) + (((0.00, 43.54, -34.61) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1141221)":{"workflow_id":138,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1500.41) + (((0.00, -41.96, -34.24) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1153458)":{"workflow_id":139,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1504.36) + (((0.00, 47.69, -37.90) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1039534)":{"workflow_id":140,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1508.30) + (((0.00, -46.17, -37.48) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1050694)":{"workflow_id":141,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1512.24) + (((0.00, 52.24, -41.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.09473477)":{"workflow_id":142,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1516.17) + (((0.00, -50.76, -41.04) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.0957524)":{"workflow_id":143,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1520.10) + (((0.00, 57.22, -45.42) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.08636693)":{"workflow_id":144,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1524.02) + (((0.00, -55.76, -44.93) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.08729513)":{"workflow_id":145,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1527.95) + (((0.00, 62.66, -49.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.07876281)":{"workflow_id":146,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1531.86) + (((0.00, -61.22, -49.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.07961013)":{"workflow_id":147,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1535.78) + (((0.00, 68.62, -54.45) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.07184774)":{"workflow_id":148,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1539.69) + (((0.00, -67.19, -53.86) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.07262079)":{"workflow_id":149,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1543.60) + (((0.00, 75.15, -59.61) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06555369)":{"workflow_id":150,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1547.51) + (((0.00, -73.70, -58.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06625908)":{"workflow_id":151,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1551.42) + (((0.00, 82.29, -65.26) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05982192)":{"workflow_id":152,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1555.32) + (((0.00, -80.82, -64.56) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06046587)":{"workflow_id":153,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1559.23) + (((0.00, 90.10, -71.45) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05459878)":{"workflow_id":154,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1563.13) + (((0.00, -88.61, -70.68) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05518673)":{"workflow_id":155,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -1567.03) + (((0.00, 98.66, -78.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04983916)":{"workflow_id":156,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1570.93) + (((0.00, -97.12, -77.39) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"workflow_id":157,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1570.93) + (((0.00, 96.08, -76.56) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1543673)":{"workflow_id":158,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -1582.74) + (((0.00, -93.54, -75.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1560301)":{"workflow_id":159,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, -1594.56) + (((0.00, 94.06, -74.92) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1577465)":{"workflow_id":160,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -1606.38) + (((0.00, -91.51, -74.11) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1594458)":{"workflow_id":161,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, -1618.20) + (((0.00, 92.07, -73.31) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1612011)":{"workflow_id":162,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -1630.01) + (((0.00, -89.51, -72.52) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"workflow_id":163,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -1630.01) + (((0.00, 88.54, -71.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 17.79207)":{"workflow_id":164,"active":true},"t => Invoke((t, t, t) => ((0.00, 42.26, -2906.31) + (((0.00, -84.80, 70.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2629761)":{"workflow_id":165,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -2887.71) + (((0.00, 86.43, 69.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 17.62134)":{"workflow_id":166,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -1654.77) + (((0.00, 85.50, 69.21) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 17.43049)":{"workflow_id":167,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, -448.40) + (((0.00, 84.57, 68.46) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 17.2417)":{"workflow_id":168,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 731.98) + (((0.00, 83.65, 67.72) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.960302)":{"workflow_id":169,"active":true},"t => Invoke((t, t, t) => ((0.00, 273.99, 1000.17) + (((0.00, -80.45, -4.91) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.712993)":{"workflow_id":170,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 986.86) + (((0.00, 106.99, -4.90) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 21.81207)":{"workflow_id":171,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 879.94) + (((0.00, 106.91, -4.90) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.555432E-06)":{"workflow_id":172,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 879.94) + (((0.00, -106.83, -4.89) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1368796)":{"workflow_id":173,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, 879.27) + (((0.00, 108.10, -4.89) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1369791)":{"workflow_id":174,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 878.60) + (((0.00, -106.68, -4.89) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1370771)":{"workflow_id":175,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 877.93) + (((0.00, 107.94, -4.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1371767)":{"workflow_id":176,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 877.26) + (((0.00, -106.52, -4.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1372754)":{"workflow_id":177,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 876.59) + (((0.00, 107.79, -4.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1373758)":{"workflow_id":178,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 875.92) + (((0.00, -106.36, -4.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1374753)":{"workflow_id":179,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, 875.25) + (((0.00, 107.63, -4.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1375756)":{"workflow_id":180,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 874.58) + (((0.00, -106.21, -4.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1376744)":{"workflow_id":181,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 873.91) + (((0.00, 107.48, -4.86) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1377747)":{"workflow_id":182,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 873.24) + (((0.00, -106.05, -4.86) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1378735)":{"workflow_id":183,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 872.57) + (((0.00, 107.33, -4.86) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1379746)":{"workflow_id":184,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 871.90) + (((0.00, -105.90, -4.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1380749)":{"workflow_id":185,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, 871.23) + (((0.00, 107.17, -4.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1381753)":{"workflow_id":186,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 870.56) + (((0.00, -105.74, -4.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.138274)":{"workflow_id":187,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 869.89) + (((0.00, 107.02, -4.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1383751)":{"workflow_id":188,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 869.22) + (((0.00, -105.59, -4.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"workflow_id":189,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 869.22) + (((0.00, 105.51, -4.83) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"workflow_id":190,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 869.22) + (((0.00, -105.43, -4.83) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1386746)":{"workflow_id":191,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 868.55) + (((0.00, 106.72, -4.83) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1387757)":{"workflow_id":192,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 867.88) + (((0.00, -105.28, -4.82) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"workflow_id":193,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 867.88) + (((0.00, 105.20, -4.82) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"workflow_id":194,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 867.88) + (((0.00, -105.12, -4.82) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1390751)":{"workflow_id":195,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 867.21) + (((0.00, 106.41, -4.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1391762)":{"workflow_id":196,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 866.54) + (((0.00, -104.97, -4.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1392773)":{"workflow_id":197,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, 865.87) + (((0.00, 106.26, -4.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1393792)":{"workflow_id":198,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 865.20) + (((0.00, -104.82, -4.80) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"workflow_id":199,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 865.20) + (((0.00, 104.74, -4.80) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"workflow_id":200,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 865.20) + (((0.00, -104.66, -4.80) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"workflow_id":201,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 865.20) + (((0.00, 104.59, -4.79) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.443271)":{"workflow_id":202,"active":true},"t => Invoke((t, t, t) => ((0.00, 526.34, 829.53) + (((0.00, -11.51, -29.42) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.198486)":{"workflow_id":203,"active":true},"t => Invoke((t, t, t) => ((0.00, 505.50, 794.27) + (((0.00, 36.88, 5.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 9.07128)":{"workflow_id":204,"active":true},"t => Invoke((t, t, t) => ((0.00, 436.47, 843.33) + (((0.00, 21.16, 47.35) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.353378)":{"workflow_id":205,"active":true},"t => Invoke((t, t, t) => ((0.00, 456.12, 907.41) + (((0.00, -44.32, 16.62) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 5.941933)":{"workflow_id":206,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 1006.14) + (((0.00, 102.34, 16.57) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.607432)":{"workflow_id":207,"active":true},"t => Invoke((t, t, t) => ((0.00, 514.32, 1132.21) + (((0.00, -28.20, -15.71) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.571242)":{"workflow_id":208,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 1013.26) + (((0.00, 102.23, -15.67) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 20.84169)":{"workflow_id":209,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 686.61) + (((0.00, 101.98, -15.64) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 6.055206)":{"workflow_id":210,"active":true},"t => Invoke((t, t, t) => ((0.00, 457.29, 591.93) + (((0.00, -7.64, -44.07) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.429303)":{"workflow_id":211,"active":true},"t => Invoke((t, t, t) => ((0.00, 409.78, 484.87) + (((0.00, 53.54, 5.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 13.405)":{"workflow_id":212,"active":true},"t => Invoke((t, t, t) => ((0.00, 246.03, 554.39) + (((0.00, 34.17, 69.46) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.171434)":{"workflow_id":213,"active":true},"t => Invoke((t, t, t) => ((0.00, 279.32, 635.75) + (((0.00, -70.66, 14.91) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.035757)":{"workflow_id":214,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 681.03) + (((0.00, 100.20, 14.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"workflow_id":215,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 681.03) + (((0.00, -99.97, 14.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.14615)":{"workflow_id":216,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 683.20) + (((0.00, 101.17, 14.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1464937)":{"workflow_id":217,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 685.37) + (((0.00, -99.50, 14.77) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1468336)":{"workflow_id":218,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 687.54) + (((0.00, 100.70, 14.74) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1471789)":{"workflow_id":219,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 689.71) + (((0.00, -99.03, 14.71) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1475203)":{"workflow_id":220,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, 691.88) + (((0.00, 100.24, 14.67) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1478672)":{"workflow_id":221,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 694.04) + (((0.00, -98.56, 14.64) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1482101)":{"workflow_id":222,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, 696.21) + (((0.00, 99.78, 14.60) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1485586)":{"workflow_id":223,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 698.38) + (((0.00, -98.09, 14.57) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1489023)":{"workflow_id":224,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 700.55) + (((0.00, 99.32, 14.54) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1492531)":{"workflow_id":225,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 702.72) + (((0.00, -97.63, 14.50) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1495991)":{"workflow_id":226,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 704.89) + (((0.00, 98.87, 14.47) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1499507)":{"workflow_id":227,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 707.06) + (((0.00, -97.17, 14.43) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1502983)":{"workflow_id":228,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, 709.23) + (((0.00, 98.41, 14.40) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1506522)":{"workflow_id":229,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 711.40) + (((0.00, -96.71, 14.37) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1510014)":{"workflow_id":230,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, 713.57) + (((0.00, 97.96, 14.33) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1513568)":{"workflow_id":231,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 715.74) + (((0.00, -96.25, 14.30) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1517075)":{"workflow_id":232,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, 717.91) + (((0.00, 97.51, 14.27) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1520653)":{"workflow_id":233,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 720.08) + (((0.00, -95.80, 14.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1524176)":{"workflow_id":234,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, 722.25) + (((0.00, 97.07, 14.20) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1527761)":{"workflow_id":235,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 724.42) + (((0.00, -95.34, 14.17) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.15313)":{"workflow_id":236,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, 726.59) + (((0.00, 96.62, 14.13) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1534901)":{"workflow_id":237,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 728.76) + (((0.00, -94.89, 14.10) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1538455)":{"workflow_id":238,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 730.93) + (((0.00, 96.18, 14.07) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1542079)":{"workflow_id":239,"active":true},"t => Invoke((t, t, t) => ((0.00, 19.62, 733.10) + (((0.00, -94.44, 14.04) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1545656)":{"workflow_id":240,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, 735.26) + (((0.00, 95.74, 14.00) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"workflow_id":241,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 735.26) + (((0.00, -95.52, 13.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"workflow_id":242,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, 735.26) + (((0.00, 95.30, 13.94) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"workflow_id":243,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 735.26) + (((0.00, -95.08, 13.91) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.0514537)":{"workflow_id":244,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, 735.98) + (((0.00, 97.78, 14.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05029101)":{"workflow_id":245,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 736.70) + (((0.00, -97.06, 14.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05040689)":{"workflow_id":246,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, 737.41) + (((0.00, 99.80, 14.52) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04926832)":{"workflow_id":247,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 738.13) + (((0.00, -99.09, 14.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04938186)":{"workflow_id":248,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, 738.84) + (((0.00, 101.86, 14.82) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04826662)":{"workflow_id":249,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 739.56) + (((0.00, -101.15, 14.78) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04837783)":{"workflow_id":250,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, 740.27) + (((0.00, 103.96, 15.12) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04728592)":{"workflow_id":251,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 740.99) + (((0.00, -103.26, 15.09) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.0473948)":{"workflow_id":252,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, 741.70) + (((0.00, 106.11, 15.44) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04632466)":{"workflow_id":253,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 742.42) + (((0.00, -105.41, 15.40) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04643121)":{"workflow_id":254,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, 743.13) + (((0.00, 108.30, 15.76) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04538285)":{"workflow_id":255,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, 743.85) + (((0.00, -107.61, 15.72) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04548784)":{"workflow_id":256,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, 744.56) + (((0.00, 110.54, 16.08) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04446203)":{"workflow_id":257,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 745.28) + (((0.00, -109.85, 16.04) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04456469)":{"workflow_id":258,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, 745.99) + (((0.00, 112.82, 16.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.0435591)":{"workflow_id":259,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.91, 746.71) + (((0.00, -112.13, 16.37) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04365943)":{"workflow_id":260,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, 747.42) + (((0.00, 115.15, 16.75) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04267406)":{"workflow_id":261,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, 748.14) + (((0.00, -114.47, 16.71) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04277205)":{"workflow_id":262,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, 748.85) + (((0.00, 117.53, 17.10) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04180769)":{"workflow_id":263,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, 749.57) + (((0.00, -116.85, 17.06) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04190412)":{"workflow_id":264,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, 750.28) + (((0.00, 119.95, 17.45) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04095919)":{"workflow_id":265,"active":true},"t => Invoke((t, t, t) => ((0.00, 4.90, 751.00) + (((0.00, -119.28, 17.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04105408)":{"workflow_id":266,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, 751.71) + (((0.00, 122.43, 17.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)":{"workflow_id":267,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, 751.71) + (((0.00, -125.25, 18.22) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.812294)":{"workflow_id":268,"active":true},"t => Invoke((t, t, t) => ((0.00, -391.02, 802.95) + (((0.00, 91.01, -121.66) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 6.758636)":{"workflow_id":269,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -19.31) + (((0.00, -30.09, -148.20) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04254144)":{"workflow_id":270,"active":true},"t => Invoke((t, t, t) => ((0.00, -1.29, -25.61) + (((0.00, 141.67, -47.04) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.009102389)":{"workflow_id":271,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -26.04) + (((0.00, -148.81, -49.44) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04964305)":{"workflow_id":272,"active":true},"t => Invoke((t, t, t) => ((0.00, -7.40, -28.50) + (((0.00, 117.08, 104.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06336676)":{"workflow_id":273,"active":true},"t => Invoke((t, t, t) => ((0.00, 0.00, -21.89) + (((0.00, -129.99, 116.34) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1013933)":{"workflow_id":274,"active":true},"t => Invoke((t, t, t) => ((0.00, -13.23, -10.09) + (((0.00, -34.56, 168.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2216484)":{"workflow_id":275,"active":true},"t => Invoke((t, t, t) => ((0.00, -21.13, 27.19) + (((0.00, -124.73, 113.58) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05983748)":{"workflow_id":276,"active":true},"t => Invoke((t, t, t) => ((0.00, -28.61, 33.98) + (((0.00, 35.53, -164.50) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.03449591)":{"workflow_id":277,"active":true},"t => Invoke((t, t, t) => ((0.00, -27.39, 28.31) + (((0.00, -164.50, 35.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06614631)":{"workflow_id":278,"active":true},"t => Invoke((t, t, t) => ((0.00, -38.30, 30.63) + (((0.00, -51.41, -158.48) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1876905)":{"workflow_id":279,"active":true},"t => Invoke((t, t, t) => ((0.00, -48.12, 0.89) + (((0.00, -158.48, -53.25) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, Infinity)":{"workflow_id":280,"active":true}},"Workflow":[{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1353","samestep":false,"steplink":3,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1354","samestep":true,"steplink":0,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1355","samestep":true,"steplink":0,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1356","samestep":false,"steplink":6,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1357","samestep":true,"steplink":3,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1358","samestep":true,"steplink":3,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1359","samestep":false,"steplink":10,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1360","samestep":true,"steplink":6,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1361","samestep":true,"steplink":6,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1364","samestep":true,"steplink":6,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1365","samestep":false,"steplink":13,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1366","samestep":true,"steplink":10,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1367","samestep":true,"steplink":10,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1368","samestep":false,"steplink":16,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1369","samestep":true,"steplink":13,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1370","samestep":true,"steplink":13,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1371","samestep":false,"steplink":19,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1372","samestep":true,"steplink":16,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1373","samestep":true,"steplink":16,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1374","samestep":false,"steplink":22,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1375","samestep":true,"steplink":19,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1376","samestep":true,"steplink":19,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1377","samestep":false,"steplink":25,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1378","samestep":true,"steplink":22,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1379","samestep":true,"steplink":22,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1380","samestep":false,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1381","samestep":true,"steplink":25,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1382","samestep":true,"steplink":25,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1385","samestep":true,"steplink":25,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1388","samestep":true,"steplink":25,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1389","samestep":false,"steplink":281,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 14.72, 18.64) + (((0.00, 7.36, -24.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.350781)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -37.86) + (((0.00, 15.46, -23.66) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -37.86) + (((0.00, -15.21, -23.28) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.294486)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -44.72) + (((0.00, 20.72, -26.65) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2517014)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -51.43) + (((0.00, -17.97, -26.24) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2551696)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -58.12) + (((0.00, 23.43, -30.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2193891)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -64.71) + (((0.00, -20.96, -29.58) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2224558)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -71.29) + (((0.00, 26.48, -33.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.192063)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -77.79) + (((0.00, -24.23, -33.34) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1947749)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -84.29) + (((0.00, 29.91, -38.15) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1686753)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -90.72) + (((0.00, -27.83, -37.58) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1710752)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -97.15) + (((0.00, 33.76, -42.99) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1484858)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -103.53) + (((0.00, -31.83, -42.36) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -103.53) + (((0.00, 31.36, -41.74) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5099022)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -124.81) + (((0.00, -25.93, -41.07) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5168604)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -146.04) + (((0.00, 30.55, -40.46) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5261275)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -167.33) + (((0.00, -24.98, -39.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5332459)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -188.56) + (((0.00, 29.77, -39.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5428956)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -209.85) + (((0.00, -24.05, -38.60) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5501742)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -231.09) + (((0.00, 29.01, -38.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5602289)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -252.39) + (((0.00, -23.14, -37.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.567667)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -273.63) + (((0.00, 28.29, -36.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.5781516)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -294.95) + (((0.00, -22.25, -36.27) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -294.95) + (((0.00, 21.89, -35.68) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -294.95) + (((0.00, -21.53, -35.10) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6011003)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -316.05) + (((0.00, 27.03, -34.59) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6123966)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -337.24) + (((0.00, -20.68, -34.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6202529)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -358.34) + (((0.00, 26.38, -33.54) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6320594)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -379.54) + (((0.00, -19.85, -32.99) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6400672)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -400.66) + (((0.00, 25.75, -32.52) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.652419)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -421.87) + (((0.00, -19.04, -31.98) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6605752)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -443.00) + (((0.00, 25.15, -31.53) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.6735125)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -464.24) + (((0.00, -18.24, -31.01) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -464.24) + (((0.00, 17.94, -30.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.656734)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -575.74) + (((0.00, 17.64, -29.99) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -575.74) + (((0.00, -17.35, -29.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7069278)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -596.59) + (((0.00, 23.94, -29.08) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7211544)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -617.56) + (((0.00, -16.59, -28.59) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7296908)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -638.42) + (((0.00, 23.41, -28.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -638.42) + (((0.00, -23.09, -27.80) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -638.42) + (((0.00, 22.76, -27.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7762588)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -659.70) + (((0.00, -14.89, -26.95) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.7851053)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -680.86) + (((0.00, 22.28, -26.57) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8021103)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -702.17) + (((0.00, -14.16, -26.12) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8110591)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -723.36) + (((0.00, 21.82, -25.76) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8290595)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -744.71) + (((0.00, -13.45, -25.31) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8380974)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -765.93) + (((0.00, 21.37, -24.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.8571995)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -787.33) + (((0.00, -12.74, -24.53) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 9.721451E-08)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -787.33) + (((0.00, 12.52, -24.11) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.551519)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -848.84) + (((0.00, 12.30, -23.69) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.507177)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -908.22) + (((0.00, 12.08, -23.28) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.463606)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -965.57) + (((0.00, 11.87, -22.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -965.57) + (((0.00, -11.67, -22.47) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9117292)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -986.06) + (((0.00, 20.34, -22.18) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9336835)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1006.76) + (((0.00, -10.98, -21.79) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9427679)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1027.31) + (((0.00, 19.97, -21.50) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9663128)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1048.08) + (((0.00, -10.30, -21.12) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.9754006)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1068.68) + (((0.00, 19.61, -20.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.000773)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1089.55) + (((0.00, -9.62, -20.47) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.009835)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1110.22) + (((0.00, 19.27, -20.21) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.037334)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1131.18) + (((0.00, -8.93, -19.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.046336)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1151.94) + (((0.00, 18.95, -19.58) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.076354)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1173.02) + (((0.00, -8.24, -19.22) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.085251)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1193.88) + (((0.00, 18.64, -18.98) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.118315)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1215.10) + (((0.00, -7.53, -18.62) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.127055)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1236.09) + (((0.00, 18.35, -18.39) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.1639)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1257.49) + (((0.00, -6.80, -18.03) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.172412)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1278.63) + (((0.00, 18.08, -17.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.214127)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1300.25) + (((0.00, -6.04, -17.46) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.22232)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1321.59) + (((0.00, 17.81, -17.25) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.270634)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1343.51) + (((0.00, -5.24, -16.90) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.278377)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1365.11) + (((0.00, 17.57, -16.69) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1365.11) + (((0.00, -17.35, -16.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2630862)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1369.44) + (((0.00, 22.13, -18.30) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2337887)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1373.72) + (((0.00, -19.60, -18.09) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2362997)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1378.00) + (((0.00, 24.32, -20.07) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2106032)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1382.23) + (((0.00, -22.00, -19.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2128774)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1386.45) + (((0.00, 26.73, -22.01) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1901601)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -24.57, -21.76) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1390.63) + (((0.00, 24.29, -21.51) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -24.01, -21.26) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1390.63) + (((0.00, 23.73, -21.02) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -23.46, -20.77) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1390.63) + (((0.00, 23.19, -20.53) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -22.92, -20.30) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1390.63) + (((0.00, 22.66, -20.06) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1390.63) + (((0.00, -22.40, -19.83) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2094049)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1394.79) + (((0.00, 27.10, -21.98) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1873304)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1398.91) + (((0.00, -24.98, -21.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.189341)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1403.02) + (((0.00, 29.74, -24.09) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1696683)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1407.11) + (((0.00, -27.76, -23.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1714948)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1411.19) + (((0.00, 32.63, -26.39) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1538832)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1415.25) + (((0.00, -30.77, -26.10) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1555432)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1419.31) + (((0.00, 35.79, -28.92) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1397214)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1423.35) + (((0.00, -34.04, -28.60) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.88858E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1423.35) + (((0.00, 33.66, -28.28) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.88858E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1423.35) + (((0.00, -33.28, -27.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.88858E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1423.35) + (((0.00, 32.91, -27.65) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.4816384)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1436.67) + (((0.00, -27.84, -27.31) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.4867818)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1449.97) + (((0.00, 32.25, -27.01) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.4931997)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1463.29) + (((0.00, -27.08, -26.68) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.4984414)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1476.58) + (((0.00, 31.61, -26.38) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.94429E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1476.58) + (((0.00, -31.26, -26.09) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.153211)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1480.58) + (((0.00, 36.27, -28.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.137793)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1484.56) + (((0.00, -34.54, -28.56) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1392672)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1488.54) + (((0.00, 39.74, -31.62) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1253566)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1492.50) + (((0.00, -38.09, -31.27) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1266997)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1496.46) + (((0.00, 43.54, -34.61) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1141221)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1500.41) + (((0.00, -41.96, -34.24) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1153458)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1504.36) + (((0.00, 47.69, -37.90) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1039534)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1508.30) + (((0.00, -46.17, -37.48) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1050694)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1512.24) + (((0.00, 52.24, -41.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.09473477)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1516.17) + (((0.00, -50.76, -41.04) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.0957524)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1520.10) + (((0.00, 57.22, -45.42) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.08636693)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1524.02) + (((0.00, -55.76, -44.93) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.08729513)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1527.95) + (((0.00, 62.66, -49.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.07876281)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1531.86) + (((0.00, -61.22, -49.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.07961013)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1535.78) + (((0.00, 68.62, -54.45) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.07184774)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1539.69) + (((0.00, -67.19, -53.86) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.07262079)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1543.60) + (((0.00, 75.15, -59.61) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06555369)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1547.51) + (((0.00, -73.70, -58.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06625908)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1551.42) + (((0.00, 82.29, -65.26) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05982192)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1555.32) + (((0.00, -80.82, -64.56) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06046587)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1559.23) + (((0.00, 90.10, -71.45) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05459878)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1563.13) + (((0.00, -88.61, -70.68) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05518673)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -1567.03) + (((0.00, 98.66, -78.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04983916)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1570.93) + (((0.00, -97.12, -77.39) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1570.93) + (((0.00, 96.08, -76.56) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1543673)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1582.74) + (((0.00, -93.54, -75.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1560301)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, -1594.56) + (((0.00, 94.06, -74.92) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1577465)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1606.38) + (((0.00, -91.51, -74.11) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1594458)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, -1618.20) + (((0.00, 92.07, -73.31) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1612011)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1630.01) + (((0.00, -89.51, -72.52) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1630.01) + (((0.00, 88.54, -71.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 17.79207)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 42.26, -2906.31) + (((0.00, -84.80, 70.73) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2629761)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -2887.71) + (((0.00, 86.43, 69.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 17.62134)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -1654.77) + (((0.00, 85.50, 69.21) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 17.43049)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, -448.40) + (((0.00, 84.57, 68.46) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 17.2417)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 731.98) + (((0.00, 83.65, 67.72) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.960302)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 273.99, 1000.17) + (((0.00, -80.45, -4.91) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.712993)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 986.86) + (((0.00, 106.99, -4.90) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 21.81207)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 879.94) + (((0.00, 106.91, -4.90) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.555432E-06)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 879.94) + (((0.00, -106.83, -4.89) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1368796)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 879.27) + (((0.00, 108.10, -4.89) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1369791)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 878.60) + (((0.00, -106.68, -4.89) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1370771)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 877.93) + (((0.00, 107.94, -4.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1371767)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 877.26) + (((0.00, -106.52, -4.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1372754)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 876.59) + (((0.00, 107.79, -4.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1373758)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 875.92) + (((0.00, -106.36, -4.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1374753)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 875.25) + (((0.00, 107.63, -4.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1375756)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 874.58) + (((0.00, -106.21, -4.87) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1376744)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 873.91) + (((0.00, 107.48, -4.86) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1377747)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 873.24) + (((0.00, -106.05, -4.86) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1378735)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 872.57) + (((0.00, 107.33, -4.86) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1379746)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 871.90) + (((0.00, -105.90, -4.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1380749)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 871.23) + (((0.00, 107.17, -4.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1381753)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 870.56) + (((0.00, -105.74, -4.85) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.138274)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 869.89) + (((0.00, 107.02, -4.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1383751)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 869.22) + (((0.00, -105.59, -4.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 869.22) + (((0.00, 105.51, -4.83) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 869.22) + (((0.00, -105.43, -4.83) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1386746)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 868.55) + (((0.00, 106.72, -4.83) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1387757)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 867.88) + (((0.00, -105.28, -4.82) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 867.88) + (((0.00, 105.20, -4.82) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 867.88) + (((0.00, -105.12, -4.82) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1390751)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 867.21) + (((0.00, 106.41, -4.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1391762)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 866.54) + (((0.00, -104.97, -4.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1392773)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 865.87) + (((0.00, 106.26, -4.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1393792)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 865.20) + (((0.00, -104.82, -4.80) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 865.20) + (((0.00, 104.74, -4.80) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 865.20) + (((0.00, -104.66, -4.80) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 865.20) + (((0.00, 104.59, -4.79) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.443271)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 526.34, 829.53) + (((0.00, -11.51, -29.42) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.198486)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 505.50, 794.27) + (((0.00, 36.88, 5.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 9.07128)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 436.47, 843.33) + (((0.00, 21.16, 47.35) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.353378)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 456.12, 907.41) + (((0.00, -44.32, 16.62) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 5.941933)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 1006.14) + (((0.00, 102.34, 16.57) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.607432)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 514.32, 1132.21) + (((0.00, -28.20, -15.71) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.571242)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 1013.26) + (((0.00, 102.23, -15.67) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 20.84169)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 686.61) + (((0.00, 101.98, -15.64) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 6.055206)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 457.29, 591.93) + (((0.00, -7.64, -44.07) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.429303)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 409.78, 484.87) + (((0.00, 53.54, 5.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 13.405)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 246.03, 554.39) + (((0.00, 34.17, 69.46) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 1.171434)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 279.32, 635.75) + (((0.00, -70.66, 14.91) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 3.035757)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 681.03) + (((0.00, 100.20, 14.88) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 681.03) + (((0.00, -99.97, 14.84) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.14615)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 683.20) + (((0.00, 101.17, 14.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1464937)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 685.37) + (((0.00, -99.50, 14.77) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1468336)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 687.54) + (((0.00, 100.70, 14.74) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1471789)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 689.71) + (((0.00, -99.03, 14.71) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1475203)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 691.88) + (((0.00, 100.24, 14.67) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1478672)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 694.04) + (((0.00, -98.56, 14.64) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1482101)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 696.21) + (((0.00, 99.78, 14.60) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1485586)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 698.38) + (((0.00, -98.09, 14.57) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1489023)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 700.55) + (((0.00, 99.32, 14.54) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1492531)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 702.72) + (((0.00, -97.63, 14.50) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1495991)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 704.89) + (((0.00, 98.87, 14.47) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1499507)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 707.06) + (((0.00, -97.17, 14.43) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1502983)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 709.23) + (((0.00, 98.41, 14.40) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1506522)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 711.40) + (((0.00, -96.71, 14.37) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1510014)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 713.57) + (((0.00, 97.96, 14.33) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1513568)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 715.74) + (((0.00, -96.25, 14.30) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1517075)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 717.91) + (((0.00, 97.51, 14.27) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1520653)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 720.08) + (((0.00, -95.80, 14.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1524176)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 722.25) + (((0.00, 97.07, 14.20) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1527761)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 724.42) + (((0.00, -95.34, 14.17) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.15313)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 726.59) + (((0.00, 96.62, 14.13) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1534901)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 728.76) + (((0.00, -94.89, 14.10) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1538455)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 730.93) + (((0.00, 96.18, 14.07) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1542079)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 19.62, 733.10) + (((0.00, -94.44, 14.04) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1545656)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 735.26) + (((0.00, 95.74, 14.00) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 735.26) + (((0.00, -95.52, 13.97) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 735.26) + (((0.00, 95.30, 13.94) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 735.26) + (((0.00, -95.08, 13.91) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.0514537)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 735.98) + (((0.00, 97.78, 14.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05029101)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 736.70) + (((0.00, -97.06, 14.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05040689)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 737.41) + (((0.00, 99.80, 14.52) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04926832)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 738.13) + (((0.00, -99.09, 14.49) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04938186)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 738.84) + (((0.00, 101.86, 14.82) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04826662)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 739.56) + (((0.00, -101.15, 14.78) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04837783)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 740.27) + (((0.00, 103.96, 15.12) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04728592)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 740.99) + (((0.00, -103.26, 15.09) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.0473948)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 741.70) + (((0.00, 106.11, 15.44) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04632466)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 742.42) + (((0.00, -105.41, 15.40) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04643121)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 743.13) + (((0.00, 108.30, 15.76) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04538285)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 743.85) + (((0.00, -107.61, 15.72) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04548784)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 744.56) + (((0.00, 110.54, 16.08) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04446203)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 745.28) + (((0.00, -109.85, 16.04) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04456469)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 745.99) + (((0.00, 112.82, 16.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.0435591)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.91, 746.71) + (((0.00, -112.13, 16.37) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04365943)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 747.42) + (((0.00, 115.15, 16.75) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04267406)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 748.14) + (((0.00, -114.47, 16.71) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04277205)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 748.85) + (((0.00, 117.53, 17.10) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04180769)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 749.57) + (((0.00, -116.85, 17.06) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04190412)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 750.28) + (((0.00, 119.95, 17.45) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04095919)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 4.90, 751.00) + (((0.00, -119.28, 17.41) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04105408)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 751.71) + (((0.00, 122.43, 17.81) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 7.777161E-07)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, 751.71) + (((0.00, -125.25, 18.22) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 2.812294)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, -391.02, 802.95) + (((0.00, 91.01, -121.66) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 6.758636)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -19.31) + (((0.00, -30.09, -148.20) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04254144)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, -1.29, -25.61) + (((0.00, 141.67, -47.04) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.009102389)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -26.04) + (((0.00, -148.81, -49.44) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.04964305)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, -7.40, -28.50) + (((0.00, 117.08, 104.23) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06336676)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, 0.00, -21.89) + (((0.00, -129.99, 116.34) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1013933)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, -13.23, -10.09) + (((0.00, -34.56, 168.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.2216484)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, -21.13, 27.19) + (((0.00, -124.73, 113.58) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.05983748)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, -28.61, 33.98) + (((0.00, 35.53, -164.50) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.03449591)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, -27.39, 28.31) + (((0.00, -164.50, 35.19) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.06614631)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, -38.30, 30.63) + (((0.00, -51.41, -158.48) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, 0.1876905)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"t => Invoke((t, t, t) => ((0.00, -48.12, 0.89) + (((0.00, -158.48, -53.25) * t) + (0.5 * ((0.00, -9.81, 0.00) * (t * t))))), t, t, t)(0, Infinity)","samestep":true,"steplink":30,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0}],"marker":281,"worksteps":10,"backlog":0,"soft_resetted":false,"invoke":true,"MaxLabelId":269,"UnusedLabelIds":[],"name":null,"path":null},"solution_approches":[],"AllowedScrolls":null,"AllowedGadgets":null,"name":"CanonBall A","path":null} \ No newline at end of file diff --git a/Assets/Stages/CanonBall A.JSON.meta b/Assets/Stages/CanonBall A.JSON.meta new file mode 100644 index 0000000000000000000000000000000000000000..d7497ffb71dceb2e01144e982beae40bc79a8e5d --- /dev/null +++ b/Assets/Stages/CanonBall A.JSON.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9e6f77486fb9c93489d4fb803ade1379 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Stages/TechDemo A.JSON b/Assets/Stages/TechDemo A.JSON index 43212e6ea63becea22805a3e66a43b5d73bf0d3c..80e4d9c2c4cb0ce8f145711f51c53bbee80c0ab4 100644 --- a/Assets/Stages/TechDemo A.JSON +++ b/Assets/Stages/TechDemo A.JSON @@ -1 +1 @@ -{"category":"Demo Category","number":1,"description":"Tree Stage","scene":"RiverWorld","use_install_folder":true,"solution":{"ValidationSet":[{"MasterIDs":["http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact9"],"SolutionIndex":[],"RelationIndex":[],"ComparerString":"LineFactHightDirectionComparer"}],"WorkflowGadgetDict":{"-1":null},"FactDict":{"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact7":{"s_type":"PointFact","Point":{"x":0.0,"y":0.0,"z":0.0,"magnitude":0.0,"sqrMagnitude":0.0},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact7","Label":"A","hasCustomLabel":false,"LabelId":1},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact8":{"s_type":"PointFact","Point":{"x":0.0,"y":6.0,"z":0.0,"normalized":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":6.0,"sqrMagnitude":36.0},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact8","Label":"B","hasCustomLabel":false,"LabelId":2},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact9":{"s_type":"LineFact","Distance":6.0,"Pid1":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact7","Pid2":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact8","Dir":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact9","Label":"[AB]","hasCustomLabel":false,"LabelId":0}},"MetaInf":{"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact7":{"workflow_id":0,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact8":{"workflow_id":1,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact9":{"workflow_id":2,"active":true}},"Workflow":[{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact7","samestep":false,"steplink":3,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact8","samestep":true,"steplink":0,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact9","samestep":true,"steplink":0,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0}],"marker":3,"worksteps":1,"backlog":0,"soft_resetted":false,"invoke":true,"MaxLabelId":2,"UnusedLabelIds":[],"name":null,"path":null},"solution_approches":[],"AllowedScrolls":null,"AllowedGadgets":null,"name":"TechDemo A","path":null} \ No newline at end of file +{"category":"Demo Category","number":1,"description":"Tree Stage","scene":"RiverWorld","use_install_folder":true,"solution":{"ValidationSet":[{"MasterIDs":["http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1349"],"SolutionIndex":[],"RelationIndex":[],"ComparerString":"LineFactHightDirectionComparer"}],"WorkflowGadgetDict":{"-1":null},"FactDict":{"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1347":{"s_type":"PointFact","Point":{"x":0.0,"y":0.0,"z":0.0,"magnitude":0.0,"sqrMagnitude":0.0},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1347","Label":"A","hasCustomLabel":false,"LabelId":1},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1348":{"s_type":"PointFact","Point":{"x":0.0,"y":6.0,"z":0.0,"normalized":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":6.0,"sqrMagnitude":36.0},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1348","Label":"B","hasCustomLabel":false,"LabelId":2},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1349":{"s_type":"LineFact","Distance":6.0,"Pid1":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1347","Pid2":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1348","Dir":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1349","Label":"[AB]","hasCustomLabel":false,"LabelId":0}},"MetaInf":{"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1347":{"workflow_id":0,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1348":{"workflow_id":1,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1349":{"workflow_id":2,"active":true}},"Workflow":[{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1347","samestep":false,"steplink":3,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1348","samestep":true,"steplink":0,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1349","samestep":true,"steplink":0,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0}],"marker":3,"worksteps":1,"backlog":0,"soft_resetted":false,"invoke":true,"MaxLabelId":2,"UnusedLabelIds":[],"name":null,"path":null},"solution_approches":[],"AllowedScrolls":null,"AllowedGadgets":null,"name":"TechDemo A","path":null} \ No newline at end of file diff --git a/Assets/Stages/TechDemo B.JSON b/Assets/Stages/TechDemo B.JSON index 8e88e515956aa47bb993ea71bc76e5a6f3e8284a..9a9777d5b8574d036da704e7acd2ff360cdea09c 100644 --- a/Assets/Stages/TechDemo B.JSON +++ b/Assets/Stages/TechDemo B.JSON @@ -1 +1 @@ -{"category":"Demo Category","number":2,"description":"River Stage","scene":"RiverWorld","use_install_folder":true,"solution":{"ValidationSet":[{"MasterIDs":["http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact12"],"SolutionIndex":[],"RelationIndex":[],"ComparerString":"LineFactHightDirectionComparer"},{"MasterIDs":["http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact12"],"SolutionIndex":[],"RelationIndex":[],"ComparerString":"LineSpanningOverRiverWorldComparer"},{"MasterIDs":[],"SolutionIndex":[1],"RelationIndex":[0],"ComparerString":"LineFactHightComparer"}],"WorkflowGadgetDict":{"-1":null},"FactDict":{"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact10":{"s_type":"PointFact","Point":{"x":0.0,"y":0.0,"z":0.0,"magnitude":0.0,"sqrMagnitude":0.0},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact10","Label":"A","hasCustomLabel":false,"LabelId":1},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact11":{"s_type":"PointFact","Point":{"x":0.0,"y":6.0,"z":0.0,"normalized":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":6.0,"sqrMagnitude":36.0},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact11","Label":"B","hasCustomLabel":false,"LabelId":2},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact12":{"s_type":"LineFact","Distance":6.0,"Pid1":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact10","Pid2":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact11","Dir":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact12","Label":"[AB]","hasCustomLabel":false,"LabelId":0}},"MetaInf":{"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact10":{"workflow_id":0,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact11":{"workflow_id":1,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact12":{"workflow_id":2,"active":true}},"Workflow":[{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact10","samestep":false,"steplink":3,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact11","samestep":true,"steplink":0,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact12","samestep":true,"steplink":0,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0}],"marker":3,"worksteps":1,"backlog":0,"soft_resetted":false,"invoke":true,"MaxLabelId":2,"UnusedLabelIds":[],"name":null,"path":null},"solution_approches":[],"AllowedScrolls":["OppositeLen","AngleSum","Pythagoras","CircleScroll","CircleAreaScroll","ConeVolumeScroll","TruncatedConeVolumeScroll","CylinderVolumeScroll","MidPoint","CircleLineAngleScroll","CircleLineAngleToAngle","SupplementaryAngles"],"AllowedGadgets":[{"s_type":"Pointer","Rank":1,"UiName":"Pointer","MaxRange":"Infinity","MaxHeight":"Infinity","ButtonIndx":1,"MaterialIndx":0,"IgnoreLayerMask":{"value":7682},"SecondaryLayerMask":{"value":0},"Workflow":[]},{"s_type":"Tape","Rank":2,"UiName":"Tape","MaxRange":2.5,"MaxHeight":2.5,"ButtonIndx":2,"MaterialIndx":0,"IgnoreLayerMask":{"value":129538},"SecondaryLayerMask":{"value":0},"Workflow":[]},{"s_type":"AngleTool","Rank":3,"UiName":"Angle Tool","MaxRange":"Infinity","MaxHeight":"Infinity","ButtonIndx":3,"MaterialIndx":1,"IgnoreLayerMask":{"value":129538},"SecondaryLayerMask":{"value":0},"Workflow":[]},{"s_type":"LineTool","Rank":4,"UiName":"Line Tool","MaxRange":"Infinity","MaxHeight":"Infinity","ButtonIndx":4,"MaterialIndx":0,"IgnoreLayerMask":{"value":129538},"SecondaryLayerMask":{"value":0},"Workflow":[]},{"s_type":"LotTool","Rank":5,"UiName":"Lot Tool","MaxRange":"Infinity","MaxHeight":"Infinity","ButtonIndx":5,"MaterialIndx":0,"IgnoreLayerMask":{"value":102914},"SecondaryLayerMask":{"value":0},"Workflow":[]},{"s_type":"Pendulum","Rank":6,"UiName":"Pendulum","MaxRange":"Infinity","MaxHeight":"Infinity","ButtonIndx":6,"MaterialIndx":0,"IgnoreLayerMask":{"value":129538},"SecondaryLayerMask":{"value":1},"Workflow":[]},{"s_type":"Remover","Rank":8,"UiName":"Delete Fact","MaxRange":"Infinity","MaxHeight":"Infinity","ButtonIndx":8,"MaterialIndx":0,"IgnoreLayerMask":{"value":66067},"SecondaryLayerMask":{"value":0},"Workflow":[]},{"s_type":"EqualCircles","Rank":9,"UiName":"Not Defined","MaxRange":"Infinity","MaxHeight":"Infinity","ButtonIndx":9,"MaterialIndx":0,"IgnoreLayerMask":{"value":0},"SecondaryLayerMask":{"value":0},"Workflow":[]}],"name":"TechDemo B","path":null} \ No newline at end of file +{"category":"Demo Category","number":2,"description":"River Stage","scene":"RiverWorld","use_install_folder":true,"solution":{"ValidationSet":[{"MasterIDs":["http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1352"],"SolutionIndex":[],"RelationIndex":[],"ComparerString":"LineFactHightDirectionComparer"},{"MasterIDs":["http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1352"],"SolutionIndex":[],"RelationIndex":[],"ComparerString":"LineSpanningOverRiverWorldComparer"},{"MasterIDs":[],"SolutionIndex":[1],"RelationIndex":[0],"ComparerString":"LineFactHightComparer"}],"WorkflowGadgetDict":{"-1":null},"FactDict":{"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1350":{"s_type":"PointFact","Point":{"x":0.0,"y":0.0,"z":0.0,"magnitude":0.0,"sqrMagnitude":0.0},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1350","Label":"A","hasCustomLabel":false,"LabelId":1},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1351":{"s_type":"PointFact","Point":{"x":0.0,"y":6.0,"z":0.0,"normalized":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"magnitude":6.0,"sqrMagnitude":36.0},"Normal":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1351","Label":"B","hasCustomLabel":false,"LabelId":2},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1352":{"s_type":"LineFact","Distance":6.0,"Pid1":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1350","Pid2":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1351","Dir":{"x":0.0,"y":1.0,"z":0.0,"magnitude":1.0,"sqrMagnitude":1.0},"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1352","Label":"[AB]","hasCustomLabel":false,"LabelId":0}},"MetaInf":{"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1350":{"workflow_id":0,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1351":{"workflow_id":1,"active":true},"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1352":{"workflow_id":2,"active":true}},"Workflow":[{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1350","samestep":false,"steplink":3,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1351","samestep":true,"steplink":0,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0},{"Id":"http://mathhub.info/FrameIT/frameworld?DefaultSituationSpace/SituationTheory1?fact1352","samestep":true,"steplink":0,"creation":true,"gadget_rank":-1,"scroll_label":null,"GadgetFlow":[],"GadgetTime":0.0}],"marker":3,"worksteps":1,"backlog":0,"soft_resetted":false,"invoke":true,"MaxLabelId":2,"UnusedLabelIds":[],"name":null,"path":null},"solution_approches":[],"AllowedScrolls":["OppositeLen"],"AllowedGadgets":[{"s_type":"Pointer","Rank":1,"UiName":"Pointer","MaxRange":"Infinity","MaxHeight":"Infinity","ButtonIndx":1,"MaterialIndx":0,"IgnoreLayerMask":{"value":269858},"SecondaryLayerMask":{"value":0},"Workflow":[]},{"s_type":"Tape","Rank":2,"UiName":"Tape","MaxRange":2.5,"MaxHeight":2.5,"ButtonIndx":2,"MaterialIndx":0,"IgnoreLayerMask":{"value":391714},"SecondaryLayerMask":{"value":0},"Workflow":[]},{"s_type":"AngleTool","Rank":3,"UiName":"Angle Tool","MaxRange":"Infinity","MaxHeight":"Infinity","ButtonIndx":3,"MaterialIndx":1,"IgnoreLayerMask":{"value":391718},"SecondaryLayerMask":{"value":0},"Workflow":[]},{"s_type":"LineTool","Rank":4,"UiName":"Line Tool","MaxRange":"Infinity","MaxHeight":"Infinity","ButtonIndx":4,"MaterialIndx":0,"IgnoreLayerMask":{"value":391714},"SecondaryLayerMask":{"value":0},"Workflow":[]},{"s_type":"LotTool","Rank":5,"UiName":"Lot Tool","MaxRange":"Infinity","MaxHeight":"Infinity","ButtonIndx":5,"MaterialIndx":0,"IgnoreLayerMask":{"value":365090},"SecondaryLayerMask":{"value":0},"Workflow":[]},{"s_type":"Pendulum","Rank":6,"UiName":"Pendulum","MaxRange":"Infinity","MaxHeight":"Infinity","ButtonIndx":6,"MaterialIndx":0,"IgnoreLayerMask":{"value":391714},"SecondaryLayerMask":{"value":1},"Workflow":[]},{"s_type":"Remover","Rank":8,"UiName":"Delete Fact","MaxRange":"Infinity","MaxHeight":"Infinity","ButtonIndx":8,"MaterialIndx":0,"IgnoreLayerMask":{"value":328243},"SecondaryLayerMask":{"value":0},"Workflow":[]}],"name":"TechDemo B","path":null} \ No newline at end of file diff --git a/Assets/packages.config b/Assets/packages.config index eb60602dac1f27f05c93721266a8d13e0c362993..836e3181dfe5e38ce9dd29e752757bd824bf7449 100644 --- a/Assets/packages.config +++ b/Assets/packages.config @@ -1,4 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> <packages> + <package id="morelinq" version="3.4.2" /> <package id="Neleus.LambdaCompare" version="1.0.3" /> </packages> \ No newline at end of file diff --git a/UserSettings/EditorUserSettings.asset b/UserSettings/EditorUserSettings.asset index cef1bf6e8f38b2b78606cfcb18732925665ad87f..2f91af0d16765917cc71d74a246203aae4c540e1 100644 --- a/UserSettings/EditorUserSettings.asset +++ b/UserSettings/EditorUserSettings.asset @@ -12,16 +12,16 @@ EditorUserSettings: value: 5b01035553515d0e0b0f5b7415725d444e4f1d2b2e782332757f4863e4e6673c flags: 0 RecentlyUsedSceneGuid-2: - value: 0502505152005e020c0d0e2446275e44144f19287f707e362c7c4b60b2b9353c + value: 5b5200520604510a5b5b587642270744124e4e7a7e7f2764742f1b61b0e6613a flags: 0 RecentlyUsedSceneGuid-3: - value: 5b5200520604510a5b5b587642270744124e4e7a7e7f2764742f1b61b0e6613a + value: 0502505152005e020c0d0e2446275e44144f19287f707e362c7c4b60b2b9353c flags: 0 RecentlyUsedSceneGuid-4: - value: 57505505560608585a56557116730644404e4d7b7c7b7562787e4f66e4b1313e + value: 0709560454055c0d0c5e5c2444740b4413154a72792d22627c714963e0b6373d flags: 0 RecentlyUsedSceneGuid-5: - value: 0709560454055c0d0c5e5c2444740b4413154a72792d22627c714963e0b6373d + value: 57505505560608585a56557116730644404e4d7b7c7b7562787e4f66e4b1313e flags: 0 RecentlyUsedScenePath-0: value: 22424703114646680e0b0227036c681f041b1c39631c3435281e1221eee47a2decee22f0