diff --git a/.Rbuildignore b/.Rbuildignore index b501323..dbf26b4 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -10,4 +10,9 @@ cran-comments.md ^codecov\.yml$ ^\.github$ ^CRAN-SUBMISSION$ -README.md \ No newline at end of file +README.md +^_pkgdown\.yml$ +^docs$ +^pkgdown$ +Clarity.txt +^vignettes diff --git a/.gitignore b/.gitignore index 923378c..71c71a7 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ *.Rproj cran-comments.md .DS_Store + diff --git a/Clarity.txt b/Clarity.txt new file mode 100644 index 0000000..11da4c1 --- /dev/null +++ b/Clarity.txt @@ -0,0 +1,7 @@ + \ No newline at end of file diff --git a/DESCRIPTION b/DESCRIPTION index d9c4e9c..73145e5 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,5 +1,4 @@ Package: Distance -Maintainer: Laura Marshall License: GPL (>= 2) Title: Distance Sampling Detection Function and Abundance Estimation LazyLoad: yes @@ -17,7 +16,7 @@ Description: A simple way of fitting detection functions to distance sampling Horvitz-Thompson-like estimator) if survey area information is provided. See Miller et al. (2019) for more information on methods and for example analyses. -Version: 2.0.0 +Version: 2.0.0.9001 URL: https://github.com/DistanceDevelopment/Distance/ BugReports: https://github.com/DistanceDevelopment/Distance/issues Language: en-GB @@ -29,6 +28,10 @@ Imports: methods, rlang Suggests: + rmarkdown, + kableExtra, + bookdown, + knitr, covr, progress, parallel, @@ -42,3 +45,4 @@ Suggests: Encoding: UTF-8 Roxygen: list(markdown = TRUE) RoxygenNote: 7.3.2 +VignetteBuilder: knitr diff --git a/NEWS b/NEWS.md similarity index 92% rename from NEWS rename to NEWS.md index d61abf1..fcd15ce 100644 --- a/NEWS +++ b/NEWS.md @@ -1,11 +1,14 @@ -Distance 2.0.0 ----------------------- +# Distance 2.0.1 + +* Fixes issue with print dht2 when multipliers are a data.frame (Issue #179) +* Fixes bug when including a uniform with no adjustment terms in the summarize_ds_models function (Issue #180) + +# Distance 2.0.0 * Requires mrds 3.0.0. mrds is called by ds for fitting detection functions. In mrds there has been a change of optimizer used for CDS detection functions - a constraint solver slsqp now used. This removes the need for external optimizer MCDS.exe in most cases. Other minor changes to optimization have been implemented to improve reliability (see NEWS file of mrds for more info). * New argument mono_method added so that the previous constraint solver (solnp) can still be used. MCDS.exe is also still available if needed. -Distance 1.0.9 ----------------------- +# Distance 1.0.9 * Changed the default encounter rate estimator for point transect surveys from P3 to P2. (Issue #138) * Fixed bug which produced NA's when stratum names came after 'Total' in the alphabet. (Issue #158) @@ -14,20 +17,17 @@ Distance 1.0.9 * Added a warning for the dht bootstrap when Sample.Label values are not unique across all strata. (Issue #157) * Distance 1.0.9 depends on mrds >= 2.3.0 due to re-named documentation page links. -Distance 1.0.8 ----------------------- +# Distance 1.0.8 * Support for using MCDS.exe from Distance for Windows to run analyses. You can now download MCDS.exe using mrds::download_MCDS_dot_exe run analyses using this engine, rather (or in tandem with) the usual R optimizers provided in mrds. ds will pick the best (by likelihood) and return that. See ?ds and ?"mcds-dot-exe" for more details. -Distance 1.0.7 ----------------------- +# Distance 1.0.7 * dht2 now requires the object field in flatfile formatted data. The following vignette shows how to add an object field if your data does not have already have one: https://examples.distancesampling.org/Distance-cameratraps/camera-distill.html * Fix bugs when a uniform is fitted with no adjustments * Fixed error in dht2 when binned data used distend / distbegin -Distance 1.0.6 ----------------------- +# Distance 1.0.6 * Fix bug in auto binning data when using flatfile (#116) * convert.units in bootdht() was not properly implemented in previous release, fixed (#122) @@ -36,8 +36,7 @@ Distance 1.0.6 * fix bug in covered area calculation for dht2, this fixes incorrect density estimate under left truncation (#135) * experimental support for multiple detection functions in dht2, joint work T.J. Clark-Wolf, funded by Environment Canada. Note that now the object field is required in data supplied to dht2. -Distance 1.0.5 ----------------------- +# Distance 1.0.5 * To improve consistency in functions and arguments in the package, some functions and arguments have changed from . separation to _. An error is now thrown when the "old" arguments/functions using . are used. This error will be removed in Distance 1.0.6. * create.bins() -> create_bins() @@ -59,8 +58,7 @@ Distance 1.0.5 * order argument to ds() is now only used to specify order, to fix a given number of adjustments use the new argument nadj (see ?ds for more info) * fix bug where polynomial adjustments started at the wrong order (2 rather than 4) -Distance 1.0.4 ----------------------- +# Distance 1.0.4 * fix bootdht issue where the arguments for ds() were not found * bootdht_Nhat_summarize now reports the stratum labels as well as their abundance estimates for ease of use @@ -71,8 +69,7 @@ Distance 1.0.4 * fix issue in Hermite adjustment order calculation when length(order)>1 * set.seed can now be used with bootdht in parallel to obtain reproducible bootstrap results -Distance 1.0.3 ----------------------- +# Distance 1.0.3 * fix bug in dht2 where warnings were thrown if object column was not in the flatfile (https://github.com/DistanceDevelopment/Distance/issues/83) * removed silent=TRUE in try() around model fitting to enable users to get error messages from mrds during fitting. Old behaviour can be recovered using quiet=TRUE argument to ds() @@ -88,15 +85,13 @@ Distance 1.0.3 * Sample fraction may now be specified as a data.frame if fractions are different for each transect * Fix various bugs in dht2 when stratification="replicate", thanks to Sam Ball and Jamie McKaughan for reporting issues and testing. -Distance 1.0.2 ----------------------- +# Distance 1.0.2 * ds.gof is now deprecated for goodness-of-fit testing. gof_ds is now preferred. * add_df_covar_line (actually located in mrds) can now plot probability density functioins for point transects * bootdht can now use the progress package if installed to give an estimated time remaining for bootstraps (option progress_bar="progress"). Alternatively no progress bar can be shown with progress_bar="none". -Distance 1.0.1 ----------------------- +# Distance 1.0.1 * fix bug in dht2 when object IDs were not specified in flatfile formatted data * fix bugs in bootdht where the function crashed if all models failed to fit and when the hessian couldn't be computed @@ -108,8 +103,7 @@ Distance 1.0.1 * Fix to dht2 bugs when Innes et al estimator is used for encounter rate variance estimation * fix bootdht issue where convert.units argument was not handled properly -Distance 1.0.0 ----------------------- +# Distance 1.0.0 * call now saved in the model object as `$call` * Added lots of example data sets @@ -117,8 +111,7 @@ Distance 1.0.0 * bootstrap variance estimation via bootdht * for more examples see http://examples.distancesampling.org -Distance 0.9.8 ----------------------- +# Distance 0.9.8 * Includes reference and citation for paper on 'Distance Sampling in R'. * AIC now works for multiple models at once (as it does for other model classes) thanks to Tiago Marques and Len Thomas for this suggestion. @@ -127,14 +120,12 @@ Distance 0.9.8 * when distbegin and distend were specified in the data but distance wasn't, checkdata() threw an error. checkdata() now generates the distance column at the midpoint. Thanks to Tom for spotting this. * new argument to ds(), max.adjustments gives the maximum number of adjustment terms to add to the model when doing AIC term selection. Thanks to Oscar Dewhurst for the suggestion. -Distance 0.9.7 ----------------------- +# Distance 0.9.7 * summarize_ds_models now will only compare models that are allowed by AIC (all binning and truncation must be the same). Thanks to Carolin Tröger and Eric Rextad for highlighting this issue. * If there are numerical issues that cause NAs in the Hessian, ds() will not try to run dht() to estimate abundance (as it will fail), instead throws a message and returns only the detection function. Thanks to Steve Ahlswede for bringing this to our attention. -Distance 0.9.6 ----------------------- +# Distance 0.9.6 * Coefficients are called coefficients (not a mixture of coefficients and parameters) in summary() results * Added gof_ds() for easy access to goodness of fit testing and q-q plotting @@ -143,48 +134,41 @@ Distance 0.9.6 * Added amakihi (point transect) data * add extra documentation for objects in obs.table, thanks to Olivier Devineau for spotting this -Distance 0.9.5 ----------------------- +# Distance 0.9.5 * Truncation by percentage now works when there are missing distances (i.e. when we are using flatfile). Thanks to Len Thomas for pointing out this bug. -Distance 0.9.4 ----------------------- +# Distance 0.9.4 * Object ID uniqueness stopped abundance estimation from working (since NA IDs were "not unique"). * Check that areas are consistently entered. This was problematic when areas were not entered identically for each region, but unique was used to extract the region table. Thanks to Katy Echave for finding this bug! * Monotonicity constraints were not applied during automated model selection. Thanks to Tiago Marques for spotting this. * AIC selection of adjustment terms goes up to 5 terms by default, as in DISTANCE. Thanks to Eric Rexstad for suggesting this. -Distance 0.9.3 ----------------------- +# Distance 0.9.3 * Updated tests to work with new unique object ID code. * Liberally sprinkled tests with suppressMessages() -Distance 0.9.2 ----------------------- +# Distance 0.9.2 * Now warning when columns are correctly named but not in the correct case. Thanks to Richard Borthwick for reporting this bug. * Now checks that object IDs are unique. Thanks to Ricardo Lima & Francisco Azevedo for highlighting this issue. -Distance 0.9.1 ----------------------- +# Distance 0.9.1 * Models with both covariates and adjustment terms can actually be specified -- this was not fully implemented in previous version. * ds() now tells the user the models which is returned (rather than previously fitted model) * links to mrds documentation on optimisation issues -Distance 0.9 ----------------------- +# Distance 0.9 * Flat file support example, see ?flatfile * New data set: simulated minke whale data, see ?minke and ?flatfile for an example analysis * Models with both covariates and adjustment terms can be specified. * Default left truncation is now 0, default right truncation is now the largest observed distance or furthest bin end. -Distance 0.8.1 ----------------------- +# Distance 0.8.1 * another fix to binning (redundant code/inconsistent definition between docs and code). (Thanks to Jason Roberts for finding this.) * binning would fail if there were NA distances, which might occur when using the simplified data tables @@ -192,37 +176,31 @@ Distance 0.8.1 * clarification that stratification only occurs at the abundance/density estimation stage (dht), rather than at the detection function modelling stage (thanks to Filipe Dias for this suggestion) * Setting order=0 is equivalent to adjustment=NULL to specify a detection function without adjustments. (Eric Rexstad brought this to my attention.) -Distance 0.8.0 ----------------------- +# Distance 0.8.0 * new simplified table data format (see ?ds) * bug in binning from cutpoints (thanks to Colin Beale for finding this) * removed percentage truncation for binned data, as it doesn't really make sense -Distance 0.7.4 ----------------------- +# Distance 0.7.4 * new initial values argument -Distance 0.7.3 ----------------------- +# Distance 0.7.3 * remove annoying crash when mrds failed to fit a model * NB the optimiser underlying mrds (optimx) has changed, update both of these packages to avoid issues. -Distance 0.7.2 ----------------------- +# Distance 0.7.2 * message tells the user the model that was selected -Distance 0.7.1 ----------------------- +# Distance 0.7.1 * debugging options * bug fixes (see github for further details) * automatic generation of adjustments did not generate any for poly/herm. -Distance 0.7 ----------------------- +# Distance 0.7 * "width" is now default for scaling diff --git a/R/p_dist_table.R b/R/p_dist_table.R index 437405c..0227485 100644 --- a/R/p_dist_table.R +++ b/R/p_dist_table.R @@ -9,7 +9,6 @@ #' @note This function is located in the `mrds` package but the documentation #' is provided here for easy access. #' @examples -#' \dontrun{ #' # example using a model for the minke data #' data(minke) #' # fit a model @@ -18,6 +17,5 @@ #' p_dist_table(result) #' # with proportions #' p_dist_table(result, proportion=TRUE) -#' } NULL diff --git a/R/print.dht_result.R b/R/print.dht_result.R index 4bcdf1c..0663409 100644 --- a/R/print.dht_result.R +++ b/R/print.dht_result.R @@ -21,7 +21,7 @@ print.dht_result <- function(x, report="abundance", groups=FALSE, ...){ "none", paste(attr(x, "multipliers"), collapse=", ")), "\n") - cat("Sample fraction :" , ifelse(attr(x, "sample_fraction")>1, + cat("Sample fraction :" , ifelse(is.data.frame(attr(x, "sample_fraction")), "multiple", attr(x, "sample_fraction")), "\n") cat("\n\n") diff --git a/R/summarize_ds_models.R b/R/summarize_ds_models.R index 5c5bda7..d4e261f 100644 --- a/R/summarize_ds_models.R +++ b/R/summarize_ds_models.R @@ -26,8 +26,7 @@ #' model_hr <- ds(tee.data,4, key="hr") #' summarize_ds_models(model_hr, model_hn, output="plain") #'} -summarize_ds_models <- function(..., sort="AIC", output="latex", - delta_only=TRUE){ +summarize_ds_models <- function(..., sort="AIC", output="latex", delta_only=TRUE){ # get the models models <- list(...) @@ -71,9 +70,11 @@ summarize_ds_models <- function(..., sort="AIC", output="latex", extract_model_data <- function(model){ summ <- summary(model) - # handle (uniform) no formula case + # handle (uniform) no formula / no average.p.se case formula <- model$ddf$ds$aux$ddfobj$scale$formula if(is.null(formula)) formula <- NA + average.p.se <- summ$ds$average.p.se + if(is.null(average.p.se)) average.p.se <- NA desc <- gsub(" key function","",model.description(model$ddf)) # only get CvM if not binned @@ -86,7 +87,7 @@ summarize_ds_models <- function(..., sort="AIC", output="latex", formula, gof, summ$ds$average.p, - summ$ds$average.p.se, + average.p.se, model$ddf$criterion ) return(ret) diff --git a/README.md b/README.md index d0a8710..9ecdc62 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,4 @@ -`Distance` -========== +Distance: analysis of distance sampling data [![R-CMD-check](https://github.com/DistanceDevelopment/Distance/actions/workflows/check-standard.yaml/badge.svg)](https://github.com/DistanceDevelopment/Distance/actions/workflows/check-standard.yaml) [![CRAN (RStudio Mirror) Downloads](http://cranlogs.r-pkg.org/badges/Distance)](https://www.r-pkg.org/pkg/Distance) @@ -10,19 +9,22 @@ # Using `Distance` -For more information and examples of use [take a look at this paper](https://www.jstatsoft.org/article/view/v089i01) published in Journal of Statistical Software in May 2019. +### Distance **R** package preferred citation +- Miller, D. L., Rexstad, E., Thomas, L., Marshall, L., & Laake, J. L. (2019). Distance Sampling in R. Journal of Statistical Software, 89(1), 1–28. DOI: [10.18637/jss.v089.i01](https://doi.org/10.18637/jss.v089.i01) -We also maintain a set of example analyses at [examples.distancesampling.org](http://examples.distancesampling.org). +Consult the [Articles](https://distancesampling.org/resources/vignettes.html) for case studies of distance sampling analyses. # Getting `Distance` -The easiest way to ensure you have the latest version of `Distance`, is to install Hadley Wickham's `devtools` package: +The easiest way to ensure you have the latest version of `Distance`, is to install `devtools`: - install.packages("devtools") - -then install `Distance` from github: - - library(devtools) - install_github("DistanceDevelopment/Distance") +```{r} +install.packages("devtools") +``` +then install `Distance` from Github: +```{r} +library(devtools) +install_github("DistanceDevelopment/Distance") +``` \ No newline at end of file diff --git a/_pkgdown.yml b/_pkgdown.yml new file mode 100644 index 0000000..4a1b272 --- /dev/null +++ b/_pkgdown.yml @@ -0,0 +1,134 @@ +url: ~ +template: + bootstrap: 5 + bslib: + bg: "#fcfaf2" + fg: "#14059e" + primary: "#0542a3" + base_font: {google: "Roboto"} + includes: + in_header: | + + +reference: +- title: "Data preparation" + contents: + - create_bins + - create.bins + - checkdata + - flatfile +- title: "Fitting" + contents: + - ds +- title: "Diagnostics" + contents: + - checkdata + - p_dist_table + - gof_ds + - ds.gof +- title: "Model selection" + contents: + - AIC.dsmodel + - logLik.dsmodel + - QAIC + - chi2_select + - summarize_ds_models +- title: "Printing and plotting" + contents: + - plot.dsmodel + - add_df_covar_line + - print.dht_result + - print.dsmodel + - summary.dsmodel + - print.summary.dsmodel +- title: "Bootstrap variance estimation" + contents: + - starts_with("bootdht") + - make_activity_fn + - summary.dht_bootstrap +- title: "Advanced" + contents: + - dht2 +- title: "Data sets" + contents: + - starts_with("amakihi") + - starts_with("capercaillie") + - starts_with("ClusterExercise") + - starts_with("CueCountingExample") + - starts_with("ducknest") + - starts_with("DuikerCameraTraps") + - starts_with("ETP_Dolphin") + - starts_with("golftees") + - starts_with("LTExercise") + - starts_with("minke") + - starts_with("PTExercise") + - starts_with("Savannah") + - starts_with("sikadeer") + - starts_with("Stratify_example") + - starts_with("Systematic") + - starts_with("unimak") + - starts_with("wren") +- title: "Miscellaneous" + contents: + - convert_units + - units_table + - dummy_ddf + - predict.dsmodel + - predict.fake_ddf + - unflatten + - Distance-package + +navbar: + bg: primary + structure: + right: [twitter, github] + components: + twitter: + icon: fa-twitter + href: https://twitter.com/distancesamp + aria-label: Twitter + left: + - text: Function reference + href: reference/index.html + - text: Articles + menu: + - text: Line transects + href: articles/lines-distill.html + - text: Covariates in detection + href: articles/covariates-distill.html + - text: Species as a covariate + href: articles/species-covariate-distill.html + - text: "------" + - text: Only for the website + - text: Point transects + href: articles/web-only/points/pointtransects-distill.html + - text: Size bias remedy + href: articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys.html + - text: Stratification + href: articles/web-only/strata/strata-distill.html + - text: Detecting difference in density between strata + href: articles/web-only/differences/differences.html + - text: Variance estimation with bootstrap + href: articles/web-only/variance/variance-distill.html + - text: Cue count surveys + href: articles/web-only/cues/cuecounts-distill.html + - text: Indirect surveys + href: articles/web-only/multipliers/multipliers-distill.html + - text: Take care when subsetting multispecies data sets + href: articles/web-only/multispecies/multispecies-multioccasion-analysis.html + - text: Camera trap distance sampling + href: articles/web-only/CTDS/camera-distill.html + - text: Alternative optimiser + href: articles/web-only/alt-optimise/mcds-dot-exe.html + - text: News + href: news/index.html + +footer: + structure: + right: donate + left: clarity + components: + donate: "If you wish to donate to development and maintenance, please email us." + clarity: "We improve our site and software support by using Microsoft Clarity to see
+ how you use our website. By using our site, you agree that we and Microsoft
+ can collect and use this data. Clarity is GDPR compliant." diff --git a/docs/404.html b/docs/404.html new file mode 100644 index 0000000..85b4c72 --- /dev/null +++ b/docs/404.html @@ -0,0 +1,95 @@ + + + + + + + +Page not found (404) • Distance + + + + + + + + + + Skip to contents + + +
+
+
+ +Content not found. Please use links in the navbar. + +
+
+ + +
+ + + +
+
+ + + + + + + diff --git a/docs/LICENSE-text.html b/docs/LICENSE-text.html new file mode 100644 index 0000000..51642c7 --- /dev/null +++ b/docs/LICENSE-text.html @@ -0,0 +1,746 @@ + +License • Distance + Skip to contents + + +
+
+
+ +
                    GNU GENERAL PUBLIC LICENSE
+                       Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+                            Preamble
+
+  The GNU General Public License is a free, copyleft license for
+software and other kinds of works.
+
+  The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works.  By contrast,
+the GNU General Public License is intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users.  We, the Free Software Foundation, use the
+GNU General Public License for most of our software; it applies also to
+any other work released this way by its authors.  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+  To protect your rights, we need to prevent others from denying you
+these rights or asking you to surrender the rights.  Therefore, you have
+certain responsibilities if you distribute copies of the software, or if
+you modify it: responsibilities to respect the freedom of others.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must pass on to the recipients the same
+freedoms that you received.  You must make sure that they, too, receive
+or can get the source code.  And you must show them these terms so they
+know their rights.
+
+  Developers that use the GNU GPL protect your rights with two steps:
+(1) assert copyright on the software, and (2) offer you this License
+giving you legal permission to copy, distribute and/or modify it.
+
+  For the developers' and authors' protection, the GPL clearly explains
+that there is no warranty for this free software.  For both users' and
+authors' sake, the GPL requires that modified versions be marked as
+changed, so that their problems will not be attributed erroneously to
+authors of previous versions.
+
+  Some devices are designed to deny users access to install or run
+modified versions of the software inside them, although the manufacturer
+can do so.  This is fundamentally incompatible with the aim of
+protecting users' freedom to change the software.  The systematic
+pattern of such abuse occurs in the area of products for individuals to
+use, which is precisely where it is most unacceptable.  Therefore, we
+have designed this version of the GPL to prohibit the practice for those
+products.  If such problems arise substantially in other domains, we
+stand ready to extend this provision to those domains in future versions
+of the GPL, as needed to protect the freedom of users.
+
+  Finally, every program is threatened constantly by software patents.
+States should not allow patents to restrict development and use of
+software on general-purpose computers, but in those that do, we wish to
+avoid the special danger that patents applied to a free program could
+make it effectively proprietary.  To prevent this, the GPL assures that
+patents cannot be used to render the program non-free.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+                       TERMS AND CONDITIONS
+
+  0. Definitions.
+
+  "This License" refers to version 3 of the GNU General Public License.
+
+  "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+  "The Program" refers to any copyrightable work licensed under this
+License.  Each licensee is addressed as "you".  "Licensees" and
+"recipients" may be individuals or organizations.
+
+  To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy.  The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+  A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+  To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy.  Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
+
+  To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies.  Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
+
+  An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License.  If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
+
+  1. Source Code.
+
+  The "source code" for a work means the preferred form of the work
+for making modifications to it.  "Object code" means any non-source
+form of a work.
+
+  A "Standard Interface" means an interface that either is an official
+standard defined by a recognized standards body, or, in the case of
+interfaces specified for a particular programming language, one that
+is widely used among developers working in that language.
+
+  The "System Libraries" of an executable work include anything, other
+than the work as a whole, that (a) is included in the normal form of
+packaging a Major Component, but which is not part of that Major
+Component, and (b) serves only to enable use of the work with that
+Major Component, or to implement a Standard Interface for which an
+implementation is available to the public in source code form.  A
+"Major Component", in this context, means a major essential component
+(kernel, window system, and so on) of the specific operating system
+(if any) on which the executable work runs, or a compiler used to
+produce the work, or an object code interpreter used to run it.
+
+  The "Corresponding Source" for a work in object code form means all
+the source code needed to generate, install, and (for an executable
+work) run the object code and to modify the work, including scripts to
+control those activities.  However, it does not include the work's
+System Libraries, or general-purpose tools or generally available free
+programs which are used unmodified in performing those activities but
+which are not part of the work.  For example, Corresponding Source
+includes interface definition files associated with source files for
+the work, and the source code for shared libraries and dynamically
+linked subprograms that the work is specifically designed to require,
+such as by intimate data communication or control flow between those
+subprograms and other parts of the work.
+
+  The Corresponding Source need not include anything that users
+can regenerate automatically from other parts of the Corresponding
+Source.
+
+  The Corresponding Source for a work in source code form is that
+same work.
+
+  2. Basic Permissions.
+
+  All rights granted under this License are granted for the term of
+copyright on the Program, and are irrevocable provided the stated
+conditions are met.  This License explicitly affirms your unlimited
+permission to run the unmodified Program.  The output from running a
+covered work is covered by this License only if the output, given its
+content, constitutes a covered work.  This License acknowledges your
+rights of fair use or other equivalent, as provided by copyright law.
+
+  You may make, run and propagate covered works that you do not
+convey, without conditions so long as your license otherwise remains
+in force.  You may convey covered works to others for the sole purpose
+of having them make modifications exclusively for you, or provide you
+with facilities for running those works, provided that you comply with
+the terms of this License in conveying all material for which you do
+not control copyright.  Those thus making or running the covered works
+for you must do so exclusively on your behalf, under your direction
+and control, on terms that prohibit them from making any copies of
+your copyrighted material outside their relationship with you.
+
+  Conveying under any other circumstances is permitted solely under
+the conditions stated below.  Sublicensing is not allowed; section 10
+makes it unnecessary.
+
+  3. Protecting Users' Legal Rights From Anti-Circumvention Law.
+
+  No covered work shall be deemed part of an effective technological
+measure under any applicable law fulfilling obligations under article
+11 of the WIPO copyright treaty adopted on 20 December 1996, or
+similar laws prohibiting or restricting circumvention of such
+measures.
+
+  When you convey a covered work, you waive any legal power to forbid
+circumvention of technological measures to the extent such circumvention
+is effected by exercising rights under this License with respect to
+the covered work, and you disclaim any intention to limit operation or
+modification of the work as a means of enforcing, against the work's
+users, your or third parties' legal rights to forbid circumvention of
+technological measures.
+
+  4. Conveying Verbatim Copies.
+
+  You may convey verbatim copies of the Program's source code as you
+receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice;
+keep intact all notices stating that this License and any
+non-permissive terms added in accord with section 7 apply to the code;
+keep intact all notices of the absence of any warranty; and give all
+recipients a copy of this License along with the Program.
+
+  You may charge any price or no price for each copy that you convey,
+and you may offer support or warranty protection for a fee.
+
+  5. Conveying Modified Source Versions.
+
+  You may convey a work based on the Program, or the modifications to
+produce it from the Program, in the form of source code under the
+terms of section 4, provided that you also meet all of these conditions:
+
+    a) The work must carry prominent notices stating that you modified
+    it, and giving a relevant date.
+
+    b) The work must carry prominent notices stating that it is
+    released under this License and any conditions added under section
+    7.  This requirement modifies the requirement in section 4 to
+    "keep intact all notices".
+
+    c) You must license the entire work, as a whole, under this
+    License to anyone who comes into possession of a copy.  This
+    License will therefore apply, along with any applicable section 7
+    additional terms, to the whole of the work, and all its parts,
+    regardless of how they are packaged.  This License gives no
+    permission to license the work in any other way, but it does not
+    invalidate such permission if you have separately received it.
+
+    d) If the work has interactive user interfaces, each must display
+    Appropriate Legal Notices; however, if the Program has interactive
+    interfaces that do not display Appropriate Legal Notices, your
+    work need not make them do so.
+
+  A compilation of a covered work with other separate and independent
+works, which are not by their nature extensions of the covered work,
+and which are not combined with it such as to form a larger program,
+in or on a volume of a storage or distribution medium, is called an
+"aggregate" if the compilation and its resulting copyright are not
+used to limit the access or legal rights of the compilation's users
+beyond what the individual works permit.  Inclusion of a covered work
+in an aggregate does not cause this License to apply to the other
+parts of the aggregate.
+
+  6. Conveying Non-Source Forms.
+
+  You may convey a covered work in object code form under the terms
+of sections 4 and 5, provided that you also convey the
+machine-readable Corresponding Source under the terms of this License,
+in one of these ways:
+
+    a) Convey the object code in, or embodied in, a physical product
+    (including a physical distribution medium), accompanied by the
+    Corresponding Source fixed on a durable physical medium
+    customarily used for software interchange.
+
+    b) Convey the object code in, or embodied in, a physical product
+    (including a physical distribution medium), accompanied by a
+    written offer, valid for at least three years and valid for as
+    long as you offer spare parts or customer support for that product
+    model, to give anyone who possesses the object code either (1) a
+    copy of the Corresponding Source for all the software in the
+    product that is covered by this License, on a durable physical
+    medium customarily used for software interchange, for a price no
+    more than your reasonable cost of physically performing this
+    conveying of source, or (2) access to copy the
+    Corresponding Source from a network server at no charge.
+
+    c) Convey individual copies of the object code with a copy of the
+    written offer to provide the Corresponding Source.  This
+    alternative is allowed only occasionally and noncommercially, and
+    only if you received the object code with such an offer, in accord
+    with subsection 6b.
+
+    d) Convey the object code by offering access from a designated
+    place (gratis or for a charge), and offer equivalent access to the
+    Corresponding Source in the same way through the same place at no
+    further charge.  You need not require recipients to copy the
+    Corresponding Source along with the object code.  If the place to
+    copy the object code is a network server, the Corresponding Source
+    may be on a different server (operated by you or a third party)
+    that supports equivalent copying facilities, provided you maintain
+    clear directions next to the object code saying where to find the
+    Corresponding Source.  Regardless of what server hosts the
+    Corresponding Source, you remain obligated to ensure that it is
+    available for as long as needed to satisfy these requirements.
+
+    e) Convey the object code using peer-to-peer transmission, provided
+    you inform other peers where the object code and Corresponding
+    Source of the work are being offered to the general public at no
+    charge under subsection 6d.
+
+  A separable portion of the object code, whose source code is excluded
+from the Corresponding Source as a System Library, need not be
+included in conveying the object code work.
+
+  A "User Product" is either (1) a "consumer product", which means any
+tangible personal property which is normally used for personal, family,
+or household purposes, or (2) anything designed or sold for incorporation
+into a dwelling.  In determining whether a product is a consumer product,
+doubtful cases shall be resolved in favor of coverage.  For a particular
+product received by a particular user, "normally used" refers to a
+typical or common use of that class of product, regardless of the status
+of the particular user or of the way in which the particular user
+actually uses, or expects or is expected to use, the product.  A product
+is a consumer product regardless of whether the product has substantial
+commercial, industrial or non-consumer uses, unless such uses represent
+the only significant mode of use of the product.
+
+  "Installation Information" for a User Product means any methods,
+procedures, authorization keys, or other information required to install
+and execute modified versions of a covered work in that User Product from
+a modified version of its Corresponding Source.  The information must
+suffice to ensure that the continued functioning of the modified object
+code is in no case prevented or interfered with solely because
+modification has been made.
+
+  If you convey an object code work under this section in, or with, or
+specifically for use in, a User Product, and the conveying occurs as
+part of a transaction in which the right of possession and use of the
+User Product is transferred to the recipient in perpetuity or for a
+fixed term (regardless of how the transaction is characterized), the
+Corresponding Source conveyed under this section must be accompanied
+by the Installation Information.  But this requirement does not apply
+if neither you nor any third party retains the ability to install
+modified object code on the User Product (for example, the work has
+been installed in ROM).
+
+  The requirement to provide Installation Information does not include a
+requirement to continue to provide support service, warranty, or updates
+for a work that has been modified or installed by the recipient, or for
+the User Product in which it has been modified or installed.  Access to a
+network may be denied when the modification itself materially and
+adversely affects the operation of the network or violates the rules and
+protocols for communication across the network.
+
+  Corresponding Source conveyed, and Installation Information provided,
+in accord with this section must be in a format that is publicly
+documented (and with an implementation available to the public in
+source code form), and must require no special password or key for
+unpacking, reading or copying.
+
+  7. Additional Terms.
+
+  "Additional permissions" are terms that supplement the terms of this
+License by making exceptions from one or more of its conditions.
+Additional permissions that are applicable to the entire Program shall
+be treated as though they were included in this License, to the extent
+that they are valid under applicable law.  If additional permissions
+apply only to part of the Program, that part may be used separately
+under those permissions, but the entire Program remains governed by
+this License without regard to the additional permissions.
+
+  When you convey a copy of a covered work, you may at your option
+remove any additional permissions from that copy, or from any part of
+it.  (Additional permissions may be written to require their own
+removal in certain cases when you modify the work.)  You may place
+additional permissions on material, added by you to a covered work,
+for which you have or can give appropriate copyright permission.
+
+  Notwithstanding any other provision of this License, for material you
+add to a covered work, you may (if authorized by the copyright holders of
+that material) supplement the terms of this License with terms:
+
+    a) Disclaiming warranty or limiting liability differently from the
+    terms of sections 15 and 16 of this License; or
+
+    b) Requiring preservation of specified reasonable legal notices or
+    author attributions in that material or in the Appropriate Legal
+    Notices displayed by works containing it; or
+
+    c) Prohibiting misrepresentation of the origin of that material, or
+    requiring that modified versions of such material be marked in
+    reasonable ways as different from the original version; or
+
+    d) Limiting the use for publicity purposes of names of licensors or
+    authors of the material; or
+
+    e) Declining to grant rights under trademark law for use of some
+    trade names, trademarks, or service marks; or
+
+    f) Requiring indemnification of licensors and authors of that
+    material by anyone who conveys the material (or modified versions of
+    it) with contractual assumptions of liability to the recipient, for
+    any liability that these contractual assumptions directly impose on
+    those licensors and authors.
+
+  All other non-permissive additional terms are considered "further
+restrictions" within the meaning of section 10.  If the Program as you
+received it, or any part of it, contains a notice stating that it is
+governed by this License along with a term that is a further
+restriction, you may remove that term.  If a license document contains
+a further restriction but permits relicensing or conveying under this
+License, you may add to a covered work material governed by the terms
+of that license document, provided that the further restriction does
+not survive such relicensing or conveying.
+
+  If you add terms to a covered work in accord with this section, you
+must place, in the relevant source files, a statement of the
+additional terms that apply to those files, or a notice indicating
+where to find the applicable terms.
+
+  Additional terms, permissive or non-permissive, may be stated in the
+form of a separately written license, or stated as exceptions;
+the above requirements apply either way.
+
+  8. Termination.
+
+  You may not propagate or modify a covered work except as expressly
+provided under this License.  Any attempt otherwise to propagate or
+modify it is void, and will automatically terminate your rights under
+this License (including any patent licenses granted under the third
+paragraph of section 11).
+
+  However, if you cease all violation of this License, then your
+license from a particular copyright holder is reinstated (a)
+provisionally, unless and until the copyright holder explicitly and
+finally terminates your license, and (b) permanently, if the copyright
+holder fails to notify you of the violation by some reasonable means
+prior to 60 days after the cessation.
+
+  Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+  Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License.  If your rights have been terminated and not permanently
+reinstated, you do not qualify to receive new licenses for the same
+material under section 10.
+
+  9. Acceptance Not Required for Having Copies.
+
+  You are not required to accept this License in order to receive or
+run a copy of the Program.  Ancillary propagation of a covered work
+occurring solely as a consequence of using peer-to-peer transmission
+to receive a copy likewise does not require acceptance.  However,
+nothing other than this License grants you permission to propagate or
+modify any covered work.  These actions infringe copyright if you do
+not accept this License.  Therefore, by modifying or propagating a
+covered work, you indicate your acceptance of this License to do so.
+
+  10. Automatic Licensing of Downstream Recipients.
+
+  Each time you convey a covered work, the recipient automatically
+receives a license from the original licensors, to run, modify and
+propagate that work, subject to this License.  You are not responsible
+for enforcing compliance by third parties with this License.
+
+  An "entity transaction" is a transaction transferring control of an
+organization, or substantially all assets of one, or subdividing an
+organization, or merging organizations.  If propagation of a covered
+work results from an entity transaction, each party to that
+transaction who receives a copy of the work also receives whatever
+licenses to the work the party's predecessor in interest had or could
+give under the previous paragraph, plus a right to possession of the
+Corresponding Source of the work from the predecessor in interest, if
+the predecessor has it or can get it with reasonable efforts.
+
+  You may not impose any further restrictions on the exercise of the
+rights granted or affirmed under this License.  For example, you may
+not impose a license fee, royalty, or other charge for exercise of
+rights granted under this License, and you may not initiate litigation
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+any patent claim is infringed by making, using, selling, offering for
+sale, or importing the Program or any portion of it.
+
+  11. Patents.
+
+  A "contributor" is a copyright holder who authorizes use under this
+License of the Program or a work on which the Program is based.  The
+work thus licensed is called the contributor's "contributor version".
+
+  A contributor's "essential patent claims" are all patent claims
+owned or controlled by the contributor, whether already acquired or
+hereafter acquired, that would be infringed by some manner, permitted
+by this License, of making, using, or selling its contributor version,
+but do not include claims that would be infringed only as a
+consequence of further modification of the contributor version.  For
+purposes of this definition, "control" includes the right to grant
+patent sublicenses in a manner consistent with the requirements of
+this License.
+
+  Each contributor grants you a non-exclusive, worldwide, royalty-free
+patent license under the contributor's essential patent claims, to
+make, use, sell, offer for sale, import and otherwise run, modify and
+propagate the contents of its contributor version.
+
+  In the following three paragraphs, a "patent license" is any express
+agreement or commitment, however denominated, not to enforce a patent
+(such as an express permission to practice a patent or covenant not to
+sue for patent infringement).  To "grant" such a patent license to a
+party means to make such an agreement or commitment not to enforce a
+patent against the party.
+
+  If you convey a covered work, knowingly relying on a patent license,
+and the Corresponding Source of the work is not available for anyone
+to copy, free of charge and under the terms of this License, through a
+publicly available network server or other readily accessible means,
+then you must either (1) cause the Corresponding Source to be so
+available, or (2) arrange to deprive yourself of the benefit of the
+patent license for this particular work, or (3) arrange, in a manner
+consistent with the requirements of this License, to extend the patent
+license to downstream recipients.  "Knowingly relying" means you have
+actual knowledge that, but for the patent license, your conveying the
+covered work in a country, or your recipient's use of the covered work
+in a country, would infringe one or more identifiable patents in that
+country that you have reason to believe are valid.
+
+  If, pursuant to or in connection with a single transaction or
+arrangement, you convey, or propagate by procuring conveyance of, a
+covered work, and grant a patent license to some of the parties
+receiving the covered work authorizing them to use, propagate, modify
+or convey a specific copy of the covered work, then the patent license
+you grant is automatically extended to all recipients of the covered
+work and works based on it.
+
+  A patent license is "discriminatory" if it does not include within
+the scope of its coverage, prohibits the exercise of, or is
+conditioned on the non-exercise of one or more of the rights that are
+specifically granted under this License.  You may not convey a covered
+work if you are a party to an arrangement with a third party that is
+in the business of distributing software, under which you make payment
+to the third party based on the extent of your activity of conveying
+the work, and under which the third party grants, to any of the
+parties who would receive the covered work from you, a discriminatory
+patent license (a) in connection with copies of the covered work
+conveyed by you (or copies made from those copies), or (b) primarily
+for and in connection with specific products or compilations that
+contain the covered work, unless you entered into that arrangement,
+or that patent license was granted, prior to 28 March 2007.
+
+  Nothing in this License shall be construed as excluding or limiting
+any implied license or other defenses to infringement that may
+otherwise be available to you under applicable patent law.
+
+  12. No Surrender of Others' Freedom.
+
+  If conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot convey a
+covered work so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you may
+not convey it at all.  For example, if you agree to terms that obligate you
+to collect a royalty for further conveying from those to whom you convey
+the Program, the only way you could satisfy both those terms and this
+License would be to refrain entirely from conveying the Program.
+
+  13. Use with the GNU Affero General Public License.
+
+  Notwithstanding any other provision of this License, you have
+permission to link or combine any covered work with a work licensed
+under version 3 of the GNU Affero General Public License into a single
+combined work, and to convey the resulting work.  The terms of this
+License will continue to apply to the part which is the covered work,
+but the special requirements of the GNU Affero General Public License,
+section 13, concerning interaction through a network will apply to the
+combination as such.
+
+  14. Revised Versions of this License.
+
+  The Free Software Foundation may publish revised and/or new versions of
+the GNU General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+  Each version is given a distinguishing version number.  If the
+Program specifies that a certain numbered version of the GNU General
+Public License "or any later version" applies to it, you have the
+option of following the terms and conditions either of that numbered
+version or of any later version published by the Free Software
+Foundation.  If the Program does not specify a version number of the
+GNU General Public License, you may choose any version ever published
+by the Free Software Foundation.
+
+  If the Program specifies that a proxy can decide which future
+versions of the GNU General Public License can be used, that proxy's
+public statement of acceptance of a version permanently authorizes you
+to choose that version for the Program.
+
+  Later license versions may give you additional or different
+permissions.  However, no additional obligations are imposed on any
+author or copyright holder as a result of your choosing to follow a
+later version.
+
+  15. Disclaimer of Warranty.
+
+  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
+APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
+IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  16. Limitation of Liability.
+
+  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGES.
+
+  17. Interpretation of Sections 15 and 16.
+
+  If the disclaimer of warranty and limitation of liability provided
+above cannot be given local legal effect according to their terms,
+reviewing courts shall apply local law that most closely approximates
+an absolute waiver of all civil liability in connection with the
+Program, unless a warranty or assumption of liability accompanies a
+copy of the Program in return for a fee.
+
+                     END OF TERMS AND CONDITIONS
+
+            How to Apply These Terms to Your New Programs
+
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+  To do so, attach the following notices to the program.  It is safest
+to attach them to the start of each source file to most effectively
+state the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+Also add information on how to contact you by electronic and paper mail.
+
+  If the program does terminal interaction, make it output a short
+notice like this when it starts in an interactive mode:
+
+    <program>  Copyright (C) <year>  <name of author>
+    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    This is free software, and you are welcome to redistribute it
+    under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License.  Of course, your program's commands
+might be different; for a GUI interface, you would use an "about box".
+
+  You should also get your employer (if you work as a programmer) or school,
+if any, to sign a "copyright disclaimer" for the program, if necessary.
+For more information on this, and how to apply and follow the GNU GPL, see
+<http://www.gnu.org/licenses/>.
+
+  The GNU General Public License does not permit incorporating your program
+into proprietary programs.  If your program is a subroutine library, you
+may consider it more useful to permit linking proprietary applications with
+the library.  If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.  But first, please read
+<http://www.gnu.org/philosophy/why-not-lgpl.html>.
+
+ +
+ + +
+ + + +
+ + + + + + + diff --git a/docs/articles/covariates-distill.html b/docs/articles/covariates-distill.html new file mode 100644 index 0000000..7d1a436 --- /dev/null +++ b/docs/articles/covariates-distill.html @@ -0,0 +1,352 @@ + + + + + + + +Incorporating covariates in the detection function • Distance + + + + + + + + + + + + Skip to contents + + +
+ + +
+
+ + + +

In this problem, we illustrate fitting multiple covariate distance sampling (MCDS) models to point transect data using a bird survey from Hawaii: data on an abundant species, the Hawaii amakihi (Hemignathus virens) is used. This practical is makes use of the Distance R package described by Miller et al. (2019) duplicating the analysis in Marques et al. (2007). For basic information regarding analysis of point transect data, consult the point transect example

+
+library(Distance)
+data(amakihi)
+head(amakihi, n=3)
+
##   Region.Label Area Sample.Label Effort object distance Month OBs   Sp MAS HAS
+## 1          792    0            1      1      1       40     0 TJS COAM  50   1
+## 2          792    0            1      1      2       60     0 TJS COAM  50   1
+## 3          792    0            1      1      3       45     0 TJS COAM  50   1
+##   Study.Area
+## 1       Kana
+## 2       Kana
+## 3       Kana
+

These data include:

+
    +
  • +Region.Label - survey dates (month and year, e.g. 792 is July 1992) which are used as ‘strata’
  • +
  • +Area - study area size (not used, set to 0) will only produce density estimates, not abundance
  • +
  • +Sample.Label - point transect identifier (41 transects)
  • +
  • +Effort - survey effort (1 for all points because each point was visited once)
  • +
  • +distance - radial distance of detection from observer (meters)
  • +
  • +month -
  • +
  • +OBs - initials of the observer
  • +
  • +Sp - species code (COAM)
  • +
  • +MAS - minutes after sunrise
  • +
  • +HAS - hour after sunrise
  • +
  • +Study.Area - name of the study area (Kana)
  • +
+

Note that the Area column is always zero, hence, detection functions can be fitted to the data, but bird abundance cannot be estimated. The covariates to be considered for possible inclusion into the detection function are OBs, MAS and HAS.

+
+

Exploratory data analysis +

+

It is important to gain an understanding of the data prior to fitting detection functions. With this in mind, preliminary analysis of distance sampling data involves:

+
    +
  • assessing the shape of the collected data,
  • +
  • considering the level of truncation of distances, and
  • +
  • exploring patterns in potential covariates.
  • +
+

We begin by assessing the distribution of distances to decide on a truncation distance (Figure 1).

+
+hist(amakihi$distance, main="Radial distances", xlab="Distance (m)")
+
+ +Distribution of radial distances of amakihi

+Figure 1: Distribution of radial distances of amakihi +

+
+

To see if there are differences in the distribution of distances recorded by the different observers and in each hour after sunrise, boxplots can be used. Note how the ~ symbol is used to define the discrete groupings (i.e. observer and hour) (Figure 2).

+
+boxplot(amakihi$distance~amakihi$OBs, xlab="Observer", ylab="Distance (m)")
+boxplot(amakihi$distance~amakihi$HAS, xlab="Hour", ylab="Distance (m)")
+
+ +Visual assessment of effect of observer and hour since sunrise upon detection.Visual assessment of effect of observer and hour since sunrise upon detection.

+Figure 2: Visual assessment of effect of observer and hour since sunrise upon detection. +

+
+

The components of the boxplot are:

+
    +
  • the thick black line indicates the median
  • +
  • the lower limit of the box is the first quartile (25th percentile) and the upper limit is the third quartile (75th percentile)
  • +
  • the height of the box is the interquartile range (75th - 25th quartiles)
  • +
  • the whiskers extend to the most extreme points which are no more than 1.5 times the interquartile range.
  • +
  • dots indicate ‘outliers’ if there are any, i.e. points beyond the range of the whiskers.
  • +
+

For minutes after sunrise (a continuous variable), we create a scatterplot of MAS (on the \(x\)-axis) against distances (on the \(y\)-axis). The plotting symbol (or character) is selected with the argument pch (Figure 3)

+
+scatter.smooth(amakihi$MAS, amakihi$distance, family = "gaussian", pch=20, cex=.9, lpars=list(lwd=3),
+               xlab="Minutes after sunrise",ylab="Distance (m)")
+
+ +Visualisation of detectability as function of minutes since sunrise.

+Figure 3: Visualisation of detectability as function of minutes since sunrise. +

+
+

Clearly room for right truncation from this figure of the radial distance distribution. Subsequent detection function fitting will use the truncation argument in ds() to exclude the largest 15% of the detection distances.

+

You may also want to think about potential collinearity (linear relationship) between the covariates - if collinear variables are included in the detection function, they will be explaining some of the same variation in the distances and this will reduce their importance as a potential covariate. How might you investigate the relationship between HAS and MAS?

+

From these plots, infer whether any of the covariates will be useful in explaining the distribution of detection distances.

+
+
+

Adjusting the raw covariates +

+

We would like to treat OBs and HAS as factor variables as in the original analysis; OBs is, by default, treated as a factor variable because it consists of characters rather than numbers. HAS, on the other hand, consists of numbers and so by default would be treated as a continuous variable (i.e. non-factor). That is fine if we want the effect of HAS to be monotonic (i.e. detectability either increases or decreases as a function of HAS). If we want HAS to have a non-linear effect on detectability, then we need to indicate to R to treat it as a factor as shown below.

+
+amakihi$HAS <- factor(amakihi$HAS)
+

One other, more subtle adjustment, is a transformation of the continuous covariate MAS. We are considering three possible covariates in our detection function: OBs, HAS and MAS. The first two variables, OBs and HAS, are both factor variables, and so, essentially, we can think of them as taking on values between 1 and 3 in the case of OBS, and 1 to 6 in the case of HAS. However, MAS can take on values from -18 (detections before sunrise) to >300 and the disparity in scales of measure between MAS and the other candidate covariates can lead to difficulties in the performance of the optimizer fitting the detection functions in R. The solution to the difficulty is to scale MAS such that it is on a scale (approx. 1 to 5) comparable with the other covariates.

+
+
+

Candidate models +

+

With three potential covariates, there are 8 possible models for the detection function:

+
    +
  • No covariates
  • +
  • OBs
  • +
  • HAS
  • +
  • MAS
  • +
  • OBs + HAS
  • +
  • OBs + MAS
  • +
  • HAS + MAS
  • +
  • OBs + HAS + MAS
  • +
+

Even without considering covariates there are also several possible key function/adjustment term combinations available: if all key function/covariate combinations are considered the number of potential models is large. Note that covariates are not allowed if a uniform key function is chosen and if covariate terms are included, adjustment terms are not allowed. Even with these restrictions, it is not best practice to take a scatter gun approach to detection function model fitting. Buckland et al. (2015) considered 13 combinations of key function/covariates. Here, we look at a subset of these.

+

Fit a hazard rate model with no covariates or adjustment terms and make a note of the AIC. Note, that 15% of the largest distances are truncated - you may have decided on a different truncation distance.

+
+conversion.factor <- convert_units("meter", NULL, "hectare")
+amak.hr <- ds(amakihi, transect="point", key="hr", truncation="15%",
+              adjustment=NULL, convert_units = conversion.factor)
+

Now fit a hazard rate model with OBs as a covariate in the detection function and make a note of the AIC. Has the AIC reduced by including a covariate?

+
+amak.hr.obs <- ds(amakihi, transect="point", key="hr", formula=~OBs,
+                  truncation="15%", convert_units = conversion.factor)
+

Fit a hazard rate model with OBs and MAS in the detection function:

+
+amak.hr.obs.mas <- ds(amakihi, transect="point", key="hr", formula=~OBs+MAS,
+                      truncation="15%", convert_units = conversion.factor)
+

Try fitting other possible formula and decide which model is best in terms of AIC. To quickly compare AIC values from different models, use the AIC command as follows (note only models with the same truncation distance can be compared):

+
+AIC(amak.hr, amak.hr.obs, amak.hr.obs.mas)
+
##                 df      AIC
+## amak.hr          2 11400.47
+## amak.hr.obs      4 11368.20
+## amak.hr.obs.mas  5 11365.96
+

Another useful function is summarize_ds_models - this has the advantage of ordering the models by AIC (smallest to largest).

+
+knitr::kable(summarize_ds_models(amak.hr, amak.hr.obs, amak.hr.obs.mas), digits=3,
+             caption="Model selection table for Hawaiian amakihi.")
+ + ++++++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Table 1: Model selection table for Hawaiian amakihi.
ModelKey functionFormulaC-vM p-value\(\hat{P_a}\)se(\(\hat{P_a}\)) +\(\Delta\)AIC
3Hazard-rate~OBs + MAS0.1700.3020.0220.000
2Hazard-rate~OBs0.1160.2970.0222.249
1Hazard-rate~10.1440.3080.02234.516
+

Examine the shape of the preferred detection function (including covariates observer and minutes after sunrise) (Figure 4).

+
+plot(amak.hr.obs.mas, pdf=TRUE, main="Hazard rate with observer and minutes after sunrise.", showpoints=FALSE)
+sfzero <- data.frame(OBs="SGF", MAS=0)
+sf180 <- data.frame(OBs="SGF", MAS=180)
+t1zero <- data.frame(OBs="TJS", MAS=0)
+t1180 <- data.frame(OBs="TJS", MAS=180)
+t2zero <- data.frame(OBs="TKP", MAS=0)
+t2180 <- data.frame(OBs="TKP", MAS=180)
+add_df_covar_line(amak.hr.obs.mas, data=sfzero, lty=1, lwd=2,col="blue", pdf=TRUE)
+add_df_covar_line(amak.hr.obs.mas, data=sf180, lty=2, lwd=2,col="blue", pdf=TRUE)
+add_df_covar_line(amak.hr.obs.mas, data=t1zero, lty=1,lwd=2,col="darkorange", pdf=TRUE)
+add_df_covar_line(amak.hr.obs.mas, data=t1180, lty=2, lwd=2,col="darkorange", pdf=TRUE)
+add_df_covar_line(amak.hr.obs.mas, data=t2zero, lty=1,lwd=2,col="violet", pdf=TRUE)
+add_df_covar_line(amak.hr.obs.mas, data=t2180, lty=2, lwd=2,col="violet", pdf=TRUE)
+legend("topright", legend=c("SF, minutes=0",
+                            "SF, minutes=180",
+                            "TS, minutes=0",
+                            "TS, minutes=180",
+                            "TP, minutes=0",
+                            "TP, minutes=180"),
+       title="Covariate combination: observer and minutes",
+       lty=rep(c(1,2),times=3), lwd=2, col=rep(c("blue","darkorange","violet"), each=2))
+
+ +PDF of best fitting model, including effects of observer and minutes after sunrise.

+Figure 4: PDF of best fitting model, including effects of observer and minutes after sunrise. +

+
+
+
+

Comments about the chosen model +

+

There were three observers involved in the survey. One observer made ~80% of the detections, with a second observer responsible for a further 15% and the third observer 5%.

+
+
+

References +

+
+
+Buckland, S., Rexstad, E., Marques, T., & Oedekoven, C. (2015). Distance sampling: Methods and applications. Springer. +
+
+Marques, T. A., Thomas, L., Fancy, S. G., & Buckland, S. T. (2007). Improving estimates of bird density using multiple covariate distance sampling. The Auk, 124, 1229–1243. https://doi.org/10.1642/0004-8038(2007)124[1229:IEOBDU]2.0.CO;2 +
+
+Miller, D. L., Rexstad, E., Thomas, L., Marshall, L., & Laake, J. L. (2019). Distance sampling in r. Journal of Statistical Software, 89(1), 1–28. https://doi.org/10.18637/jss.v089.i01 +
+
+
+
+
+ + + +
+ + + +
+
+ + + + + + + diff --git a/docs/articles/covariates-distill_files/figure-html/basic-1.png b/docs/articles/covariates-distill_files/figure-html/basic-1.png new file mode 100644 index 0000000..0dabd4e Binary files /dev/null and b/docs/articles/covariates-distill_files/figure-html/basic-1.png differ diff --git a/docs/articles/covariates-distill_files/figure-html/bestmod-1.png b/docs/articles/covariates-distill_files/figure-html/bestmod-1.png new file mode 100644 index 0000000..c876694 Binary files /dev/null and b/docs/articles/covariates-distill_files/figure-html/bestmod-1.png differ diff --git a/docs/articles/covariates-distill_files/figure-html/box-1.png b/docs/articles/covariates-distill_files/figure-html/box-1.png new file mode 100644 index 0000000..30a286d Binary files /dev/null and b/docs/articles/covariates-distill_files/figure-html/box-1.png differ diff --git a/docs/articles/covariates-distill_files/figure-html/box-2.png b/docs/articles/covariates-distill_files/figure-html/box-2.png new file mode 100644 index 0000000..80f6682 Binary files /dev/null and b/docs/articles/covariates-distill_files/figure-html/box-2.png differ diff --git a/docs/articles/covariates-distill_files/figure-html/scatter-1.png b/docs/articles/covariates-distill_files/figure-html/scatter-1.png new file mode 100644 index 0000000..a615b08 Binary files /dev/null and b/docs/articles/covariates-distill_files/figure-html/scatter-1.png differ diff --git a/docs/articles/covariates-distill_files/header-attrs-2.26/header-attrs.js b/docs/articles/covariates-distill_files/header-attrs-2.26/header-attrs.js new file mode 100644 index 0000000..dd57d92 --- /dev/null +++ b/docs/articles/covariates-distill_files/header-attrs-2.26/header-attrs.js @@ -0,0 +1,12 @@ +// Pandoc 2.9 adds attributes on both header and div. We remove the former (to +// be compatible with the behavior of Pandoc < 2.8). +document.addEventListener('DOMContentLoaded', function(e) { + var hs = document.querySelectorAll("div.section[class*='level'] > :first-child"); + var i, h, a; + for (i = 0; i < hs.length; i++) { + h = hs[i]; + if (!/^h[1-6]$/i.test(h.tagName)) continue; // it should be a header h1-h6 + a = h.attributes; + while (a.length > 0) h.removeAttribute(a[0].name); + } +}); diff --git a/docs/articles/index.html b/docs/articles/index.html new file mode 100644 index 0000000..8f03848 --- /dev/null +++ b/docs/articles/index.html @@ -0,0 +1,100 @@ + +Articles • Distance + Skip to contents + + +
+
+
+ +
+

All vignettes

+
+ +
Analysis of camera trapping data
+

Example analysis with Ivory Coast Maxwell’s duiker.

+
Incorporating covariates in the detection function
+

Hawaiian amakihi point transect data.

+
Analysis of cue count surveys
+

Revisiting the winter wren point transects with cue counts.

+
Detecting density estimate differences
+

Using the bootstrap to derive the sampling distribution of pairwise differences in estimated density.

+
Line transect density estimation
+

Example analysis of line transect data.

+
Alternative optimization engine for fitting detection functions
+

Examples demonstrating the use of the mcds.exe alternative optimization engine for fitting single platform detection functions in the Distance and mrds packages.

+
Multipliers and indirect surveys
+

Dung surveys including estimates of production and decay rates.

+
Perils of multispecies and multisession distance sampling analysis
+

Example using Montrave data employing region_table and sample_table construct

+
Point transect density estimation
+

Example analysis of point transect songbird data.

+
Solving the size bias problem
+

Eastern tropical Pacific spotted dolphin surveys from tuna fishing vessels.

+
Covariate modeling with rare species
+

Use of covariate to model detectability in multi-species surveys.

+
Analysis of stratified survey designs
+

Revisiting the savanna sparrow point transect data.

+
Variance estimation
+

Variance estimation using bootstrap resampling.

+
+
+ + +
+ + + +
+ + + + + + + diff --git a/docs/articles/lines-distill.html b/docs/articles/lines-distill.html new file mode 100644 index 0000000..2d1fb8e --- /dev/null +++ b/docs/articles/lines-distill.html @@ -0,0 +1,462 @@ + + + + + + + +Line transect density estimation • Distance + + + + + + + + + + + + Skip to contents + + +
+ + +
+
+ + + +

In this exercise, we use R (R Core Team, 2019) and the Distance package (Miller, Rexstad, Thomas, Marshall, & Laake, 2019) to fit different detection function models to line transect survey data of winter wren (Troglodytes troglodytes) density and abundance. These data were part of a study described by Buckland (2006).

+
+

Objectives +

+
    +
  • Fit a basic detection function using the ds function
  • +
  • Plot and examine a detection function
  • +
  • Fit different detection function forms.
  • +
+
+
+

Survey design +

+

Nineteen line transects were walked twice (Figure 1).

+
+ +Montrave study area; diagonal lines indicate line transects walked to generate these data.

+Figure 1: Montrave study area; diagonal lines indicate line transects walked to generate these data. +

+
+

The fields of the wren_lt data set are:

+
    +
  • Region.Label - identifier of regions: in this case there is only one region and set to ‘Montrave’ required field +
  • +
  • Area - size of the study region (hectares): 33.2ha
  • +
  • Sample.Label - line transect identifier (numbered 1-19) required field +
  • +
  • Effort - length of the line transects (km) required field +
  • +
  • object - unique identifier for each detected winter wren
  • +
  • distance - perpendicular distance (metres) to each detection required field +
  • +
  • Study.Area - this is the name of the study, ‘Montrave 4’
  • +
+
+
+

Make the data available for R session +

+

This command assumes that the Distance package has been installed on your computer. The R workspace wren_lt contains detections of winter wrens from the line transect surveys of Buckland (2006).

+
+library(Distance)
+data(wren_lt)
+

The effort, or transect length has been adjusted to recognise each transect is walked twice. Examine the first few rows of wren_lt using the function head()

+
+head(wren_lt)
+
##   Region.Label Area Sample.Label Effort object distance Study.Area
+## 1     Montrave 33.2            1  0.416      5       15 Montrave 4
+## 2     Montrave 33.2            1  0.416      6       80 Montrave 4
+## 3     Montrave 33.2            1  0.416      7       35 Montrave 4
+## 4     Montrave 33.2            1  0.416      8       55 Montrave 4
+## 5     Montrave 33.2            1  0.416     12       12 Montrave 4
+## 6     Montrave 33.2            1  0.416     13       75 Montrave 4
+

The object wren_lt is a dataframe object made up of rows and columns.

+
+sum(!is.na(wren_lt$distance))
+
## [1] 156
+

The code above determines the number of detection distances that are not missing. Why might there be rows in our data where detection distance is missing? Distance would have to be recorded as missing for rows representing transects on which there were no detections. The transect and its effort would need to appear in the data, but without detections, the perpendicular distance would be recorded as missing (NA).

+
+
+

Examine the distribution of detection distances +

+

Gain familiarity with the perpendicular distance data using the hist() function (Figure 2).

+
+hist(wren_lt$distance, xlab="Distance (m)", main="Winter wren line transects")
+
+ +Distribution of perpendicular distances for winter wren from [@Buckland2006].

+Figure 2: Distribution of perpendicular distances for winter wren from (Buckland, 2006). +

+
+

Note that there appears to be too few detections between 0 and 20m, and too many detections between 20m and 40m. This may be evidence of evasive movement by winter wrens; see further discussion of this below.

+
+
+

Specify unit conversions +

+
+

A guaranteed way to produce incorrect results from your analysis is to misspecify the units distances are measured. The ds function has an argument convert.units where the user provides a value to report density in proper units. Providing an incorrect value will result in estimates that are out by orders of magnitude.

+
+

We can choose the units in which winter wren density is to be reported, we choose square kilometre. How to transmit this information to the ds function?

+

The answer is another function convert_units. Arguments to this function are

+
    +
  • distance_units +
      +
    • units of measure for perpendicular/radial distances
    • +
    +
  • +
  • effort_units +
      +
    • units of measure for effort (NULL for point transects)
    • +
    +
  • +
  • area_units +
      +
    • units of measure for the study area.
    • +
    +
  • +
+

Specify the correct arguments to this function for the winter wren data set. Note: units are specified as quoted strings, singular rather than plural; e.g. “meter” rather than “meters”

+
+conversion.factor <- convert_units("meter", "kilometer", "hectare")
+
+
+

Fitting a simple detection function model with ds +

+

Detection functions are fitted using the ds function and this function requires a data frame to have a column called distance. We have this in our nests data, therefore, we can simply supply the name of the data frame to the function along with additional arguments.

+

Details about the arguments for this function:

+
    +
  • +key="hn" +
      +
    • fit a half-normal key detection function
    • +
    +
  • +
  • +adjustment=NULL +
      +
    • do not include adjustment terms
    • +
    +
  • +
  • +convert_units=conversion.factor +
      +
    • required because, for this example, the perpendicular distances are in metres and the line transect lengths are in kilometer - this argument converts the perpendicular distance measurements from metres to kilometer. Our density estimates will be reported in number of birds per hectare.
    • +
    +
  • +
+
+wren.hn <- ds(data=wren_lt, key="hn", adjustment=NULL, convert_units=conversion.factor)
+

On calling the ds function, information is provided to the screen reminding the user what model has been fitted and the associated AIC value. More information is supplied by applying the summary() function to the object created by ds().

+
+summary(wren.hn)
+
## 
+## Summary for distance analysis 
+## Number of observations :  156 
+## Distance range         :  0  -  100 
+## 
+## Model       : Half-normal key function 
+## AIC         :  1418.188 
+## Optimisation:  mrds (nlminb) 
+## 
+## Detection function parameters
+## Scale coefficient(s):  
+##             estimate        se
+## (Intercept) 4.105816 0.1327744
+## 
+##                       Estimate          SE         CV
+## Average p             0.685037  0.05678821 0.08289802
+## N in covered region 227.724931 21.47275208 0.09429250
+## 
+## Summary statistics:
+##     Region Area CoveredArea Effort   n  k       ER    se.ER      cv.ER
+## 1 Montrave 33.2       193.2   9.66 156 19 16.14907 1.226096 0.07592366
+## 
+## Abundance:
+##   Label Estimate       se        cv     lcl     ucl       df
+## 1 Total 39.13286 4.399007 0.1124121 31.3023 48.9223 74.24595
+## 
+## Density:
+##   Label Estimate        se        cv       lcl      ucl       df
+## 1 Total   1.1787 0.1325002 0.1124121 0.9428403 1.473563 74.24595
+
+

The summary function +

+

Examining the output produced by summary(wren.hn) notice

+
    +
  • number of detections used in fitting
  • +
  • truncation distances
  • +
  • AIC score
  • +
  • parameters of the detection function (on a natural log scale)
  • +
  • estimated probability of detection within the truncation distance
  • +
  • estimated number of objects in the area covered by survey effort
  • +
  • summary of the survey (effort, number of transects, number of detections) +
      +
    • encounter rate and its variability
    • +
    +
  • +
  • estimated abundance and density within the study area +
      +
    • and measures of precision
    • +
    +
  • +
  • if there are strata, estimates are provided for each stratum
  • +
  • if objects were detected in groups, there are estimates of abundance of groups and of individuals
  • +
+

Visually inspect the fitted detection function with the plot() function, specifying the cutpoints histogram with argument breaks (Figure 3):

+
+cutpoints <- c(0,5,10,15,20,30,40,50,65,80,100)
+plot(wren.hn, breaks=cutpoints, main="Half normal model, wren line transects")
+
+ +Fit of half normal detection function to wren data.  Note large number of break points specified at small distances.

+Figure 3: Fit of half normal detection function to wren data. Note large number of break points specified at small distances. +

+
+

Continue to note the presence of evasive movement in this plot of the fit of detection function to the observed data.

+
+
+
+

Specifying different detection functions +

+

Detection function forms and shapes, are specified by changing the key and adjustment arguments.

+

The options available for key detection functions are:

+
    +
  • half normal (key="hn") - default
  • +
  • hazard rate (key="hr")
  • +
  • uniform (key="unif")
  • +
+

The options available for adjustment terms are:

+
    +
  • no adjustment terms (adjustment=NULL)
  • +
  • cosine (adjustment="cos") - default
  • +
  • Hermite polynomial (adjustment="herm")
  • +
  • Simple polynomial (adjustment="poly")
  • +
+

To fit a uniform key function with cosine adjustment terms, use the command:

+
+wren.unif.cos <- ds(wren_lt, key="unif", adjustment="cos", convert_units=conversion.factor)
+

When this line of code is executed, multiple models will be fitted, successively adding addition adjustment terms. When the model with four adjustment terms is fit, an error message is returned; but a uniform key with 3 cosine adjustments is fitted and contained in the returned object.

+

AIC model selection will be used to fit adjustment terms of up to order 5.

+

To fit a hazard rate key function with simple polynomial adjustment terms, then use the command:

+
+wren.hr.poly <- ds(wren_lt, key="hr", adjustment="poly", convert_units=conversion.factor)
+
+
+

Model comparison +

+

Each fitted detection function produces a different estimate of winter wren abundance and density. The estimate depends upon the model chosen. The model selection tool for distance sampling data is AIC.

+
+AIC(wren.hn, wren.hr.poly, wren.unif.cos)
+
##               df      AIC
+## wren.hn        1 1418.188
+## wren.hr.poly   2 1412.133
+## wren.unif.cos  3 1416.430
+

df in the AIC table indicates the number of parameters associated with each model.

+
+

Absolute goodness of fit +

+

In addition to the relative ranking of models provided by AIC, it is also important to know whether selected model(s) actually fit the data. The model is the basis of inference, so it is dangerous to make inference from a model that does not fit the data. Goodness of fit is assessed using the function gof_ds. This function by default, reports the goodness of fit assessed by the Cramer von-Mises test along with a quantile-quantile plot showing locations of deviations from good fit. Optionally, a \(\chi^2\) goodness of fit test and a bootstrap version of the Kolomogorov-Smirnov goodness of fit test can be performed. Using function defaults, we see results only of the Cramer von-Mises test along with the Q-Q plot (Figure 4).

+
+gof_ds(wren.hr.poly)
+
+ +Q-Q plot of hazard rate key function fitted ot wren line transect data.

+Figure 4: Q-Q plot of hazard rate key function fitted ot wren line transect data. +

+
+
## 
+## Goodness of fit results for ddf object
+## 
+## Distance sampling Cramer-von Mises test (unweighted)
+## Test statistic = 0.249897 p-value = 0.188501
+

Even though there may have been evasive movement, the goodness of fit statistics are still sufficient for using detection function models for inference.

+
+
+
+

Model comparison tables +

+

The function summarise_ds_models combines the work of AIC and gof_ds to produce a table of fitted models and summary statistics.

+
+knitr::kable(summarize_ds_models(wren.hn, wren.hr.poly, wren.unif.cos),digits=3,
+             caption="Model comparison table for wren line transect data, Montrave.")
+ + ++++++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Table 1: Model comparison table for wren line transect data, Montrave.
ModelKey functionFormulaC-vM p-value\(\hat{P_a}\)se(\(\hat{P_a}\)) +\(\Delta\)AIC
2Hazard-rate~10.1890.8440.0250.000
3Uniform with cosine adjustment terms of order 1,2,3NA0.1980.7570.1404.298
1Half-normal~10.0770.6850.0576.055
+
+

Model selection is not a cookbook +

+

The AIC model selection tools suggest the hazard rate key function is the preferred model. However, examine the shape of the hazard rate detection function in contrast to the uniform cosine fitted detection function (Figure 5).

+
+plot(wren.hr.poly, breaks=cutpoints, main="Hazard rate")
+plot(wren.unif.cos, breaks=cutpoints, main="Uniform cosine")
+
+ +Possible evidence of evasive movement of wrens.  Note left figure (hazard rate) with implausible perfect detectability out to 70m, then precipitous decline.Possible evidence of evasive movement of wrens.  Note left figure (hazard rate) with implausible perfect detectability out to 70m, then precipitous decline.

+Figure 5: Possible evidence of evasive movement of wrens. Note left figure (hazard rate) with implausible perfect detectability out to 70m, then precipitous decline. +

+
+

The fellow who gathered these data (Prof Buckland) maintained the shape of the fitted hazard rate detection function is not plausible. Instead, he chose the uniform key with cosine adjustments for making inference (Buckland, 2006, p. 352):

+
+

Common Chaffinch and Winter Wren showed some evidence of observer avoidance. For 2 of the 12 data sets, this resulted in a fitted hazard rate detection function with certain detection out to ∼60 m, with an implausibly rapid fall-off beyond 70 m. In these two analyses, a model with a slightly higher AIC value and a more plausible fit to the detection function was selected.

+
+

This is an example of moderating objective model selection tools with common sense and understanding of field procedures.

+
+
+
+

References +

+
+
+Buckland, S. T. (2006). Point transect surveys for songbirds: Robust methodologies. The Auk, 123(2), 345–345. https://doi.org/10.1642/0004-8038(2006)123[345:psfsrm]2.0.co;2 +
+
+Miller, D. L., Rexstad, E., Thomas, L., Marshall, L., & Laake, J. L. (2019). Distance sampling in r. Journal of Statistical Software, 89(1), 1–28. https://doi.org/10.18637/jss.v089.i01 +
+
+R Core Team. (2019). R: A language and environment for statistical computing. Vienna Austria: R Foundation for Statistical Computing. +
+
+
+
+
+ + + +
+ + + +
+
+ + + + + + + diff --git a/docs/articles/lines-distill_files/figure-html/basichist-1.png b/docs/articles/lines-distill_files/figure-html/basichist-1.png new file mode 100644 index 0000000..404a29e Binary files /dev/null and b/docs/articles/lines-distill_files/figure-html/basichist-1.png differ diff --git a/docs/articles/lines-distill_files/figure-html/evasive-1.png b/docs/articles/lines-distill_files/figure-html/evasive-1.png new file mode 100644 index 0000000..b183c0c Binary files /dev/null and b/docs/articles/lines-distill_files/figure-html/evasive-1.png differ diff --git a/docs/articles/lines-distill_files/figure-html/evasive-2.png b/docs/articles/lines-distill_files/figure-html/evasive-2.png new file mode 100644 index 0000000..1717663 Binary files /dev/null and b/docs/articles/lines-distill_files/figure-html/evasive-2.png differ diff --git a/docs/articles/lines-distill_files/figure-html/hnfitted-1.png b/docs/articles/lines-distill_files/figure-html/hnfitted-1.png new file mode 100644 index 0000000..185c0d3 Binary files /dev/null and b/docs/articles/lines-distill_files/figure-html/hnfitted-1.png differ diff --git a/docs/articles/lines-distill_files/figure-html/qq-1.png b/docs/articles/lines-distill_files/figure-html/qq-1.png new file mode 100644 index 0000000..f2d3f8d Binary files /dev/null and b/docs/articles/lines-distill_files/figure-html/qq-1.png differ diff --git a/docs/articles/lines-distill_files/header-attrs-2.26/header-attrs.js b/docs/articles/lines-distill_files/header-attrs-2.26/header-attrs.js new file mode 100644 index 0000000..dd57d92 --- /dev/null +++ b/docs/articles/lines-distill_files/header-attrs-2.26/header-attrs.js @@ -0,0 +1,12 @@ +// Pandoc 2.9 adds attributes on both header and div. We remove the former (to +// be compatible with the behavior of Pandoc < 2.8). +document.addEventListener('DOMContentLoaded', function(e) { + var hs = document.querySelectorAll("div.section[class*='level'] > :first-child"); + var i, h, a; + for (i = 0; i < hs.length; i++) { + h = hs[i]; + if (!/^h[1-6]$/i.test(h.tagName)) continue; // it should be a header h1-h6 + a = h.attributes; + while (a.length > 0) h.removeAttribute(a[0].name); + } +}); diff --git a/docs/articles/montrave.jpg b/docs/articles/montrave.jpg new file mode 100644 index 0000000..01bc5bf Binary files /dev/null and b/docs/articles/montrave.jpg differ diff --git a/docs/articles/species-covariate-distill.html b/docs/articles/species-covariate-distill.html new file mode 100644 index 0000000..5409ee3 --- /dev/null +++ b/docs/articles/species-covariate-distill.html @@ -0,0 +1,417 @@ + + + + + + + +Covariate modeling with rare species • Distance + + + + + + + + + + + + Skip to contents + + +
+ + +
+
+ + + +
+

Background +

+

Sometimes the focal species of a distance sampling survey is quite rare. So rare that it is difficult to accumulate sufficient detections to fit a detection function for the species in question. Likewise, it is also common for other species to be detected during the survey for the focal species. Could the detections of the other species be useful in estimating a detection function for the focal species?

+

One approach might be to consider the species to serve as “strata” and proceed to analyse the data as if they were from a stratified survey. See the example for stratified survey analysis. However, if a pooled detection function (one that combines data from multiple species) is fitted, it would be dubious to apply this pooled detection function to data at a lower level of aggregation (species level). Applying the pooled detection function would lead to a biased estimate of abundance for the rare species.

+

Instead of treating species as strata, an alternative form of analysis is to treat species as a covariate in the modelling of the detection function (Marques & Buckland, 2003). The principle is that the general key function is shared across species, but the scale parameter \((\sigma)\) differs between species. In this way, the detections of all species is shared, such that the estimation of the detection function for the rare species is bolstered by information from other species; yet the rare species receives its own unique detection function such that bias is not induced in the abundance estimation for that species.

+

To demonstrate such an analysis, the Montrave songbird study conducted by Buckland (2006) is used. The species covariate approach to analysis of the snapshot point count version of his survey is described in the book by Buckland et al. (2015, sec. 5.3.2.2). The Distance R package (Miller, Rexstad, Thomas, Marshall, & Laake, 2019) is used to analyse the line transect survey Buckland conducted. Results are compared with estimates presented by Buckland (2006).

+

The data are available online at a website that serves as a companion to Buckland et al. (2015). The data set can be read into R directly from the URL.

+
+theurl <-"https://www.creem.st-andrews.ac.uk/files/2023/01/montrave-line_csv.zip"
+download.file(theurl, destfile = "montrave.zip", mode = "wb")
+unzip("montrave.zip")
+birds <- read.csv("montrave-line.csv")
+birds$object <- NA
+birds$object[!is.na(birds$distance)] <- 1:sum(!is.na(birds$distance))
+
+
+

Data preparation +

+

Only one slight modification to the data needs to be conducted before they can be analysed. Buckland (2006) made two transits of the transects, the line transect effort needs to be modified to reflect the multiple visits.

+
+birds$Effort <- birds$Effort * birds$repeats   # two visits
+library(Distance)
+convunit <- convert_units("meter", "kilometer", "hectare")
+
+
+

Detections by species +

+

In Buckland’s (2006) line transect survey, three of the four songbird species (c-chaffinch, g-great tit, r-robin, w-winter wren) were detected in sufficient quantities that sample size is not an issue. However, the great tit was only detected 32 times, making the support for this species open to question.

+ + + + + + + + + + + + + + + + + + + + + + + + +
+Table 1: Table 2: Number of detections by species for Montrave line transect survey. +
+Var1 + +Freq +
+c + +73 +
+g + +32 +
+r + +82 +
+w + +156 +
+

As mentioned in the Background, we could fit a pooled detection function across species and with species as a stratification criterion produce species-specific density estimates using the pooled detection function in conjunction with species-specific encounter rates. However that would be using the wrong detection function for every species. We take the alternative analysis route and incorporate species into the detection function.

+
+
+

Covariate in detection function +

+

Inclusion of species as a covariate in the detection function is simple using the formula= argument in ds(). Note the species names are coded as letters, R will automatically treat a variable containing letters as a factor covariate. If numbers were used in coding species, as.factor would need to be employed.

+
+all.birds <- ds(data = birds, key="hn", convert_units = convunit,
+                formula=~species, truncation = 95)
+

The CvM goodness of fit test indicates this model adequately fits the data, W=0.401, P=0.072.

+
+
+

Visualising the detection functions for each species +

+

The shape of the species-specific detection functions can be seen by using the plotting function provided below.

+
+plot(all.birds, showpoints=FALSE, main="Montrave line transects\nspecies as covariate")
+add.df.covar.line(all.birds, data=data.frame(species="c"), lwd=3, lty=1, col="blue")
+add.df.covar.line(all.birds, data=data.frame(species="g"), lwd=3, lty=1, col="darkgreen")
+add.df.covar.line(all.birds, data=data.frame(species="r"), lwd=3, lty=1, col="brown")
+add.df.covar.line(all.birds, data=data.frame(species="w"), lwd=3, lty=1, col="salmon")
+legend("topright", legend=c("chaffinch", "great tit", "robin", "winter wren"),
+       lwd=3, lty=1, col=c("blue", "darkgreen", "brown", "salmon"))
+
+ +Species-specific detection functions.

+Figure 1: Species-specific detection functions. +

+
+
+
+

Species-specific density estimates +

+

Density estimates for each species can be produced by using the dht2 function that contains the argument strat_formula used to specific the levels of stratum-specific estimates requested. The stratification argument ensures the correct measures of precision are associated with the species-specific density estimates. The value object indicates this analysis is a form of post-stratification, rather than geographic stratification criterion that could have been know prior to the gathering of the data.

+
+bird.ests <- dht2(ddf=all.birds, flatfile=birds,
+                  strat_formula = ~species, convert_units = convunit,
+                  stratification = "object") 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Table 3: Table 4: Species-specific density estimates using detection function with species as covariate. +
+species + +n + +Density + +Density_CV + +LCI + +UCI +
+c + +73 + +0.641 + +0.170 + +0.456 + +0.900 +
+g + +32 + +0.251 + +0.242 + +0.156 + +0.406 +
+r + +80 + +0.769 + +0.149 + +0.572 + +1.032 +
+w + +155 + +1.149 + +0.113 + +0.918 + +1.437 +
+
+
+

Compare with published estimates +

+

The density estimates for chaffinch and great tits match those reported by Buckland (S. T. Buckland, 2006) almost exactly. The congruence between estimates produced by this analysis and those reported by Buckland are less good for the robins and winter wrens.

+
+ +Reproduction of Table 2 of Buckland (2006).

+Figure 2: Reproduction of Table 2 of Buckland (2006). +

+
+
+
+

Postscript +

+

As described by Buckland (S. T. Buckland, 2006), there was some reason to believe evasive movement took place on the part of robins and winter wrens. Conceivably, this could be accommodated by using a hazard rate key function for those two species. This would lead to a more complex analysis in which the data set was divided into a chaffinch/great tit data set, with a half normal key and species covariate detection function model. The other portion of the data set would contain robins/winter wrens modelled using a hazard rate key function and species covariate.

+

Indeed, the goodness of fit for this more complex analysis (not shown) leads to better fit of the “two model” approach:

+ + + + + + + + + + + + + + + + + + + + + + + + +
+Table 5: Table 6: Goodness of fit comparison for single model compared with HN/HR split. +
+analysis + +CvM.W + +P.value +
+Single analysis + +0.401 + +0.072 +
+HN key + +0.068 + +0.762 +
+HR key + +0.222 + +0.228 +
+
+
+

References +

+
+
+Buckland, S. T. (2006). Point transect surveys for songbirds: Robust methodologies. The Auk, 123(2), 345–345. https://doi.org/10.1642/0004-8038(2006)123[345:psfsrm]2.0.co;2 +
+
+Buckland, S., Rexstad, E., Marques, T., & Oedekoven, C. (2015). Distance sampling: Methods and applications. Retrieved from https://www.springer.com/gb/book/9783319192185 +
+
+Marques, F. F. C., & Buckland, S. T. (2003). Incorporating covariates into standard line transect analyses. Biometrics, 59, 924–935. https://doi.org/10.1111/j.0006-341x.2003.00107.x +
+
+Miller, D. L., Rexstad, E., Thomas, L., Marshall, L., & Laake, J. L. (2019). Distance sampling in r. Journal of Statistical Software, 89(1), 1–28. https://doi.org/10.18637/jss.v089.i01 +
+
+
+
+
+ + + +
+ + + +
+
+ + + + + + + diff --git a/docs/articles/species-covariate-distill_files/bsTable-3.3.7/bootstrapTable.js b/docs/articles/species-covariate-distill_files/bsTable-3.3.7/bootstrapTable.js new file mode 100644 index 0000000..0c83d3b --- /dev/null +++ b/docs/articles/species-covariate-distill_files/bsTable-3.3.7/bootstrapTable.js @@ -0,0 +1,801 @@ +/* ======================================================================== + * Bootstrap: tooltip.js v3.4.1 + * https://getbootstrap.com/docs/3.4/javascript/#tooltip + * Inspired by the original jQuery.tipsy by Jason Frame + * ======================================================================== + * Copyright 2011-2019 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + ++function ($) { + 'use strict'; + + var DISALLOWED_ATTRIBUTES = ['sanitize', 'whiteList', 'sanitizeFn'] + + var uriAttrs = [ + 'background', + 'cite', + 'href', + 'itemtype', + 'longdesc', + 'poster', + 'src', + 'xlink:href' + ] + + var ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i + + var DefaultWhitelist = { + // Global attributes allowed on any supplied element below. + '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN], + a: ['target', 'href', 'title', 'rel'], + area: [], + b: [], + br: [], + col: [], + code: [], + div: [], + em: [], + hr: [], + h1: [], + h2: [], + h3: [], + h4: [], + h5: [], + h6: [], + i: [], + img: ['src', 'alt', 'title', 'width', 'height'], + li: [], + ol: [], + p: [], + pre: [], + s: [], + small: [], + span: [], + sub: [], + sup: [], + strong: [], + u: [], + ul: [] + } + + /** + * A pattern that recognizes a commonly useful subset of URLs that are safe. + * + * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts + */ + var SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi + + /** + * A pattern that matches safe data URLs. Only matches image, video and audio types. + * + * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts + */ + var DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i + + function allowedAttribute(attr, allowedAttributeList) { + var attrName = attr.nodeName.toLowerCase() + + if ($.inArray(attrName, allowedAttributeList) !== -1) { + if ($.inArray(attrName, uriAttrs) !== -1) { + return Boolean(attr.nodeValue.match(SAFE_URL_PATTERN) || attr.nodeValue.match(DATA_URL_PATTERN)) + } + + return true + } + + var regExp = $(allowedAttributeList).filter(function (index, value) { + return value instanceof RegExp + }) + + // Check if a regular expression validates the attribute. + for (var i = 0, l = regExp.length; i < l; i++) { + if (attrName.match(regExp[i])) { + return true + } + } + + return false + } + + function sanitizeHtml(unsafeHtml, whiteList, sanitizeFn) { + if (unsafeHtml.length === 0) { + return unsafeHtml + } + + if (sanitizeFn && typeof sanitizeFn === 'function') { + return sanitizeFn(unsafeHtml) + } + + // IE 8 and below don't support createHTMLDocument + if (!document.implementation || !document.implementation.createHTMLDocument) { + return unsafeHtml + } + + var createdDocument = document.implementation.createHTMLDocument('sanitization') + createdDocument.body.innerHTML = unsafeHtml + + var whitelistKeys = $.map(whiteList, function (el, i) { return i }) + var elements = $(createdDocument.body).find('*') + + for (var i = 0, len = elements.length; i < len; i++) { + var el = elements[i] + var elName = el.nodeName.toLowerCase() + + if ($.inArray(elName, whitelistKeys) === -1) { + el.parentNode.removeChild(el) + + continue + } + + var attributeList = $.map(el.attributes, function (el) { return el }) + var whitelistedAttributes = [].concat(whiteList['*'] || [], whiteList[elName] || []) + + for (var j = 0, len2 = attributeList.length; j < len2; j++) { + if (!allowedAttribute(attributeList[j], whitelistedAttributes)) { + el.removeAttribute(attributeList[j].nodeName) + } + } + } + + return createdDocument.body.innerHTML + } + + // TOOLTIP PUBLIC CLASS DEFINITION + // =============================== + + var Tooltip = function (element, options) { + this.type = null + this.options = null + this.enabled = null + this.timeout = null + this.hoverState = null + this.$element = null + this.inState = null + + this.init('tooltip', element, options) + } + + Tooltip.VERSION = '3.4.1' + + Tooltip.TRANSITION_DURATION = 150 + + Tooltip.DEFAULTS = { + animation: true, + placement: 'top', + selector: false, + template: '', + trigger: 'hover focus', + title: '', + delay: 0, + html: false, + container: false, + viewport: { + selector: 'body', + padding: 0 + }, + sanitize : true, + sanitizeFn : null, + whiteList : DefaultWhitelist + } + + Tooltip.prototype.init = function (type, element, options) { + this.enabled = true + this.type = type + this.$element = $(element) + this.options = this.getOptions(options) + this.$viewport = this.options.viewport && $(document).find($.isFunction(this.options.viewport) ? this.options.viewport.call(this, this.$element) : (this.options.viewport.selector || this.options.viewport)) + this.inState = { click: false, hover: false, focus: false } + + if (this.$element[0] instanceof document.constructor && !this.options.selector) { + throw new Error('`selector` option must be specified when initializing ' + this.type + ' on the window.document object!') + } + + var triggers = this.options.trigger.split(' ') + + for (var i = triggers.length; i--;) { + var trigger = triggers[i] + + if (trigger == 'click') { + this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this)) + } else if (trigger != 'manual') { + var eventIn = trigger == 'hover' ? 'mouseenter' : 'focusin' + var eventOut = trigger == 'hover' ? 'mouseleave' : 'focusout' + + this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this)) + this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this)) + } + } + + this.options.selector ? + (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) : + this.fixTitle() + } + + Tooltip.prototype.getDefaults = function () { + return Tooltip.DEFAULTS + } + + Tooltip.prototype.getOptions = function (options) { + var dataAttributes = this.$element.data() + + for (var dataAttr in dataAttributes) { + if (dataAttributes.hasOwnProperty(dataAttr) && $.inArray(dataAttr, DISALLOWED_ATTRIBUTES) !== -1) { + delete dataAttributes[dataAttr] + } + } + + options = $.extend({}, this.getDefaults(), dataAttributes, options) + + if (options.delay && typeof options.delay == 'number') { + options.delay = { + show: options.delay, + hide: options.delay + } + } + + if (options.sanitize) { + options.template = sanitizeHtml(options.template, options.whiteList, options.sanitizeFn) + } + + return options + } + + Tooltip.prototype.getDelegateOptions = function () { + var options = {} + var defaults = this.getDefaults() + + this._options && $.each(this._options, function (key, value) { + if (defaults[key] != value) options[key] = value + }) + + return options + } + + Tooltip.prototype.enter = function (obj) { + var self = obj instanceof this.constructor ? + obj : $(obj.currentTarget).data('bs.' + this.type) + + if (!self) { + self = new this.constructor(obj.currentTarget, this.getDelegateOptions()) + $(obj.currentTarget).data('bs.' + this.type, self) + } + + if (obj instanceof $.Event) { + self.inState[obj.type == 'focusin' ? 'focus' : 'hover'] = true + } + + if (self.tip().hasClass('in') || self.hoverState == 'in') { + self.hoverState = 'in' + return + } + + clearTimeout(self.timeout) + + self.hoverState = 'in' + + if (!self.options.delay || !self.options.delay.show) return self.show() + + self.timeout = setTimeout(function () { + if (self.hoverState == 'in') self.show() + }, self.options.delay.show) + } + + Tooltip.prototype.isInStateTrue = function () { + for (var key in this.inState) { + if (this.inState[key]) return true + } + + return false + } + + Tooltip.prototype.leave = function (obj) { + var self = obj instanceof this.constructor ? + obj : $(obj.currentTarget).data('bs.' + this.type) + + if (!self) { + self = new this.constructor(obj.currentTarget, this.getDelegateOptions()) + $(obj.currentTarget).data('bs.' + this.type, self) + } + + if (obj instanceof $.Event) { + self.inState[obj.type == 'focusout' ? 'focus' : 'hover'] = false + } + + if (self.isInStateTrue()) return + + clearTimeout(self.timeout) + + self.hoverState = 'out' + + if (!self.options.delay || !self.options.delay.hide) return self.hide() + + self.timeout = setTimeout(function () { + if (self.hoverState == 'out') self.hide() + }, self.options.delay.hide) + } + + Tooltip.prototype.show = function () { + var e = $.Event('show.bs.' + this.type) + + if (this.hasContent() && this.enabled) { + this.$element.trigger(e) + + var inDom = $.contains(this.$element[0].ownerDocument.documentElement, this.$element[0]) + if (e.isDefaultPrevented() || !inDom) return + var that = this + + var $tip = this.tip() + + var tipId = this.getUID(this.type) + + this.setContent() + $tip.attr('id', tipId) + this.$element.attr('aria-describedby', tipId) + + if (this.options.animation) $tip.addClass('fade') + + var placement = typeof this.options.placement == 'function' ? + this.options.placement.call(this, $tip[0], this.$element[0]) : + this.options.placement + + var autoToken = /\s?auto?\s?/i + var autoPlace = autoToken.test(placement) + if (autoPlace) placement = placement.replace(autoToken, '') || 'top' + + $tip + .detach() + .css({ top: 0, left: 0, display: 'block' }) + .addClass(placement) + .data('bs.' + this.type, this) + + this.options.container ? $tip.appendTo($(document).find(this.options.container)) : $tip.insertAfter(this.$element) + this.$element.trigger('inserted.bs.' + this.type) + + var pos = this.getPosition() + var actualWidth = $tip[0].offsetWidth + var actualHeight = $tip[0].offsetHeight + + if (autoPlace) { + var orgPlacement = placement + var viewportDim = this.getPosition(this.$viewport) + + placement = placement == 'bottom' && pos.bottom + actualHeight > viewportDim.bottom ? 'top' : + placement == 'top' && pos.top - actualHeight < viewportDim.top ? 'bottom' : + placement == 'right' && pos.right + actualWidth > viewportDim.width ? 'left' : + placement == 'left' && pos.left - actualWidth < viewportDim.left ? 'right' : + placement + + $tip + .removeClass(orgPlacement) + .addClass(placement) + } + + var calculatedOffset = this.getCalculatedOffset(placement, pos, actualWidth, actualHeight) + + this.applyPlacement(calculatedOffset, placement) + + var complete = function () { + var prevHoverState = that.hoverState + that.$element.trigger('shown.bs.' + that.type) + that.hoverState = null + + if (prevHoverState == 'out') that.leave(that) + } + + $.support.transition && this.$tip.hasClass('fade') ? + $tip + .one('bsTransitionEnd', complete) + .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) : + complete() + } + } + + Tooltip.prototype.applyPlacement = function (offset, placement) { + var $tip = this.tip() + var width = $tip[0].offsetWidth + var height = $tip[0].offsetHeight + + // manually read margins because getBoundingClientRect includes difference + var marginTop = parseInt($tip.css('margin-top'), 10) + var marginLeft = parseInt($tip.css('margin-left'), 10) + + // we must check for NaN for ie 8/9 + if (isNaN(marginTop)) marginTop = 0 + if (isNaN(marginLeft)) marginLeft = 0 + + offset.top += marginTop + offset.left += marginLeft + + // $.fn.offset doesn't round pixel values + // so we use setOffset directly with our own function B-0 + $.offset.setOffset($tip[0], $.extend({ + using: function (props) { + $tip.css({ + top: Math.round(props.top), + left: Math.round(props.left) + }) + } + }, offset), 0) + + $tip.addClass('in') + + // check to see if placing tip in new offset caused the tip to resize itself + var actualWidth = $tip[0].offsetWidth + var actualHeight = $tip[0].offsetHeight + + if (placement == 'top' && actualHeight != height) { + offset.top = offset.top + height - actualHeight + } + + var delta = this.getViewportAdjustedDelta(placement, offset, actualWidth, actualHeight) + + if (delta.left) offset.left += delta.left + else offset.top += delta.top + + var isVertical = /top|bottom/.test(placement) + var arrowDelta = isVertical ? delta.left * 2 - width + actualWidth : delta.top * 2 - height + actualHeight + var arrowOffsetPosition = isVertical ? 'offsetWidth' : 'offsetHeight' + + $tip.offset(offset) + this.replaceArrow(arrowDelta, $tip[0][arrowOffsetPosition], isVertical) + } + + Tooltip.prototype.replaceArrow = function (delta, dimension, isVertical) { + this.arrow() + .css(isVertical ? 'left' : 'top', 50 * (1 - delta / dimension) + '%') + .css(isVertical ? 'top' : 'left', '') + } + + Tooltip.prototype.setContent = function () { + var $tip = this.tip() + var title = this.getTitle() + + if (this.options.html) { + if (this.options.sanitize) { + title = sanitizeHtml(title, this.options.whiteList, this.options.sanitizeFn) + } + + $tip.find('.tooltip-inner').html(title) + } else { + $tip.find('.tooltip-inner').text(title) + } + + $tip.removeClass('fade in top bottom left right') + } + + Tooltip.prototype.hide = function (callback) { + var that = this + var $tip = $(this.$tip) + var e = $.Event('hide.bs.' + this.type) + + function complete() { + if (that.hoverState != 'in') $tip.detach() + if (that.$element) { // TODO: Check whether guarding this code with this `if` is really necessary. + that.$element + .removeAttr('aria-describedby') + .trigger('hidden.bs.' + that.type) + } + callback && callback() + } + + this.$element.trigger(e) + + if (e.isDefaultPrevented()) return + + $tip.removeClass('in') + + $.support.transition && $tip.hasClass('fade') ? + $tip + .one('bsTransitionEnd', complete) + .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) : + complete() + + this.hoverState = null + + return this + } + + Tooltip.prototype.fixTitle = function () { + var $e = this.$element + if ($e.attr('title') || typeof $e.attr('data-original-title') != 'string') { + $e.attr('data-original-title', $e.attr('title') || '').attr('title', '') + } + } + + Tooltip.prototype.hasContent = function () { + return this.getTitle() + } + + Tooltip.prototype.getPosition = function ($element) { + $element = $element || this.$element + + var el = $element[0] + var isBody = el.tagName == 'BODY' + + var elRect = el.getBoundingClientRect() + if (elRect.width == null) { + // width and height are missing in IE8, so compute them manually; see https://github.com/twbs/bootstrap/issues/14093 + elRect = $.extend({}, elRect, { width: elRect.right - elRect.left, height: elRect.bottom - elRect.top }) + } + var isSvg = window.SVGElement && el instanceof window.SVGElement + // Avoid using $.offset() on SVGs since it gives incorrect results in jQuery 3. + // See https://github.com/twbs/bootstrap/issues/20280 + var elOffset = isBody ? { top: 0, left: 0 } : (isSvg ? null : $element.offset()) + var scroll = { scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop() } + var outerDims = isBody ? { width: $(window).width(), height: $(window).height() } : null + + return $.extend({}, elRect, scroll, outerDims, elOffset) + } + + Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) { + return placement == 'bottom' ? { top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2 } : + placement == 'top' ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2 } : + placement == 'left' ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } : + /* placement == 'right' */ { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width } + + } + + Tooltip.prototype.getViewportAdjustedDelta = function (placement, pos, actualWidth, actualHeight) { + var delta = { top: 0, left: 0 } + if (!this.$viewport) return delta + + var viewportPadding = this.options.viewport && this.options.viewport.padding || 0 + var viewportDimensions = this.getPosition(this.$viewport) + + if (/right|left/.test(placement)) { + var topEdgeOffset = pos.top - viewportPadding - viewportDimensions.scroll + var bottomEdgeOffset = pos.top + viewportPadding - viewportDimensions.scroll + actualHeight + if (topEdgeOffset < viewportDimensions.top) { // top overflow + delta.top = viewportDimensions.top - topEdgeOffset + } else if (bottomEdgeOffset > viewportDimensions.top + viewportDimensions.height) { // bottom overflow + delta.top = viewportDimensions.top + viewportDimensions.height - bottomEdgeOffset + } + } else { + var leftEdgeOffset = pos.left - viewportPadding + var rightEdgeOffset = pos.left + viewportPadding + actualWidth + if (leftEdgeOffset < viewportDimensions.left) { // left overflow + delta.left = viewportDimensions.left - leftEdgeOffset + } else if (rightEdgeOffset > viewportDimensions.right) { // right overflow + delta.left = viewportDimensions.left + viewportDimensions.width - rightEdgeOffset + } + } + + return delta + } + + Tooltip.prototype.getTitle = function () { + var title + var $e = this.$element + var o = this.options + + title = $e.attr('data-original-title') + || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title) + + return title + } + + Tooltip.prototype.getUID = function (prefix) { + do prefix += ~~(Math.random() * 1000000) + while (document.getElementById(prefix)) + return prefix + } + + Tooltip.prototype.tip = function () { + if (!this.$tip) { + this.$tip = $(this.options.template) + if (this.$tip.length != 1) { + throw new Error(this.type + ' `template` option must consist of exactly 1 top-level element!') + } + } + return this.$tip + } + + Tooltip.prototype.arrow = function () { + return (this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow')) + } + + Tooltip.prototype.enable = function () { + this.enabled = true + } + + Tooltip.prototype.disable = function () { + this.enabled = false + } + + Tooltip.prototype.toggleEnabled = function () { + this.enabled = !this.enabled + } + + Tooltip.prototype.toggle = function (e) { + var self = this + if (e) { + self = $(e.currentTarget).data('bs.' + this.type) + if (!self) { + self = new this.constructor(e.currentTarget, this.getDelegateOptions()) + $(e.currentTarget).data('bs.' + this.type, self) + } + } + + if (e) { + self.inState.click = !self.inState.click + if (self.isInStateTrue()) self.enter(self) + else self.leave(self) + } else { + self.tip().hasClass('in') ? self.leave(self) : self.enter(self) + } + } + + Tooltip.prototype.destroy = function () { + var that = this + clearTimeout(this.timeout) + this.hide(function () { + that.$element.off('.' + that.type).removeData('bs.' + that.type) + if (that.$tip) { + that.$tip.detach() + } + that.$tip = null + that.$arrow = null + that.$viewport = null + that.$element = null + }) + } + + Tooltip.prototype.sanitizeHtml = function (unsafeHtml) { + return sanitizeHtml(unsafeHtml, this.options.whiteList, this.options.sanitizeFn) + } + + // TOOLTIP PLUGIN DEFINITION + // ========================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.tooltip') + var options = typeof option == 'object' && option + + if (!data && /destroy|hide/.test(option)) return + if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.tooltip + + $.fn.tooltip = Plugin + $.fn.tooltip.Constructor = Tooltip + + + // TOOLTIP NO CONFLICT + // =================== + + $.fn.tooltip.noConflict = function () { + $.fn.tooltip = old + return this + } + +}(jQuery); + +/* ======================================================================== + * Bootstrap: popover.js v3.4.1 + * https://getbootstrap.com/docs/3.4/javascript/#popovers + * ======================================================================== + * Copyright 2011-2019 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // POPOVER PUBLIC CLASS DEFINITION + // =============================== + + var Popover = function (element, options) { + this.init('popover', element, options) + } + + if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js') + + Popover.VERSION = '3.4.1' + + Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, { + placement: 'right', + trigger: 'click', + content: '', + template: '' + }) + + + // NOTE: POPOVER EXTENDS tooltip.js + // ================================ + + Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype) + + Popover.prototype.constructor = Popover + + Popover.prototype.getDefaults = function () { + return Popover.DEFAULTS + } + + Popover.prototype.setContent = function () { + var $tip = this.tip() + var title = this.getTitle() + var content = this.getContent() + + if (this.options.html) { + var typeContent = typeof content + + if (this.options.sanitize) { + title = this.sanitizeHtml(title) + + if (typeContent === 'string') { + content = this.sanitizeHtml(content) + } + } + + $tip.find('.popover-title').html(title) + $tip.find('.popover-content').children().detach().end()[ + typeContent === 'string' ? 'html' : 'append' + ](content) + } else { + $tip.find('.popover-title').text(title) + $tip.find('.popover-content').children().detach().end().text(content) + } + + $tip.removeClass('fade top bottom left right in') + + // IE8 doesn't accept hiding via the `:empty` pseudo selector, we have to do + // this manually by checking the contents. + if (!$tip.find('.popover-title').html()) $tip.find('.popover-title').hide() + } + + Popover.prototype.hasContent = function () { + return this.getTitle() || this.getContent() + } + + Popover.prototype.getContent = function () { + var $e = this.$element + var o = this.options + + return $e.attr('data-content') + || (typeof o.content == 'function' ? + o.content.call($e[0]) : + o.content) + } + + Popover.prototype.arrow = function () { + return (this.$arrow = this.$arrow || this.tip().find('.arrow')) + } + + + // POPOVER PLUGIN DEFINITION + // ========================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.popover') + var options = typeof option == 'object' && option + + if (!data && /destroy|hide/.test(option)) return + if (!data) $this.data('bs.popover', (data = new Popover(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.popover + + $.fn.popover = Plugin + $.fn.popover.Constructor = Popover + + + // POPOVER NO CONFLICT + // =================== + + $.fn.popover.noConflict = function () { + $.fn.popover = old + return this + } + +}(jQuery); diff --git a/docs/articles/species-covariate-distill_files/bsTable-3.3.7/bootstrapTable.min.css b/docs/articles/species-covariate-distill_files/bsTable-3.3.7/bootstrapTable.min.css new file mode 100644 index 0000000..7d1e81f --- /dev/null +++ b/docs/articles/species-covariate-distill_files/bsTable-3.3.7/bootstrapTable.min.css @@ -0,0 +1,14 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2018 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ + +/*! + * Generated using the Bootstrap Customizer () + * Config saved to config.json and + *//*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + *//*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>td{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>thead>tr>th,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}table col[class*="col-"]{position:static;float:none;display:table-column}table td[class*="col-"],table th[class*="col-"]{position:static;float:none;display:table-cell}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover,.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr.active:hover>th{background-color:#e8e8e8}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#dff0d8}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr.success:hover>th{background-color:#d0e9c6}.table>thead>tr>td.info,.table>tbody>tr>td.info,.table>tfoot>tr>td.info,.table>thead>tr>th.info,.table>tbody>tr>th.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>tbody>tr.info>td,.table>tfoot>tr.info>td,.table>thead>tr.info>th,.table>tbody>tr.info>th,.table>tfoot>tr.info>th{background-color:#d9edf7}.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover,.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr.info:hover>th{background-color:#c4e3f3}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#fcf8e3}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr.warning:hover>th{background-color:#faf2cc}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#f2dede}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr.danger:hover>th{background-color:#ebcccc}.table-responsive{overflow-x:auto;min-height:0.01%}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}.tooltip{position:absolute;z-index:1070;display:block;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-style:normal;font-weight:normal;letter-spacing:normal;line-break:auto;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;word-wrap:normal;font-size:12px;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{margin-top:-3px;padding:5px 0}.tooltip.right{margin-left:3px;padding:0 5px}.tooltip.bottom{margin-top:3px;padding:5px 0}.tooltip.left{margin-left:-3px;padding:0 5px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{bottom:0;right:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-style:normal;font-weight:normal;letter-spacing:normal;line-break:auto;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;word-wrap:normal;font-size:14px;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2)}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{margin:0;padding:8px 14px;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{border-width:10px;content:""}.popover.top>.arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);bottom:-11px}.popover.top>.arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,0.25)}.popover.right>.arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}.popover.bottom>.arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);top:-11px}.popover.bottom>.arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,0.25)}.popover.left>.arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}.clearfix:before,.clearfix:after{content:" ";display:table}.clearfix:after{clear:both}.center-block{display:block;margin-left:auto;margin-right:auto}.pull-right{float:right !important}.pull-left{float:left !important}.hide{display:none !important}.show{display:block !important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none !important}.affix{position:fixed} diff --git a/docs/articles/species-covariate-distill_files/figure-html/plotcode-1.png b/docs/articles/species-covariate-distill_files/figure-html/plotcode-1.png new file mode 100644 index 0000000..fa66fc1 Binary files /dev/null and b/docs/articles/species-covariate-distill_files/figure-html/plotcode-1.png differ diff --git a/docs/articles/species-covariate-distill_files/header-attrs-2.26/header-attrs.js b/docs/articles/species-covariate-distill_files/header-attrs-2.26/header-attrs.js new file mode 100644 index 0000000..dd57d92 --- /dev/null +++ b/docs/articles/species-covariate-distill_files/header-attrs-2.26/header-attrs.js @@ -0,0 +1,12 @@ +// Pandoc 2.9 adds attributes on both header and div. We remove the former (to +// be compatible with the behavior of Pandoc < 2.8). +document.addEventListener('DOMContentLoaded', function(e) { + var hs = document.querySelectorAll("div.section[class*='level'] > :first-child"); + var i, h, a; + for (i = 0; i < hs.length; i++) { + h = hs[i]; + if (!/^h[1-6]$/i.test(h.tagName)) continue; // it should be a header h1-h6 + a = h.attributes; + while (a.length > 0) h.removeAttribute(a[0].name); + } +}); diff --git a/docs/articles/species-covariate-distill_files/kePrint-0.0.1/kePrint.js b/docs/articles/species-covariate-distill_files/kePrint-0.0.1/kePrint.js new file mode 100644 index 0000000..e6fbbfc --- /dev/null +++ b/docs/articles/species-covariate-distill_files/kePrint-0.0.1/kePrint.js @@ -0,0 +1,8 @@ +$(document).ready(function(){ + if (typeof $('[data-toggle="tooltip"]').tooltip === 'function') { + $('[data-toggle="tooltip"]').tooltip(); + } + if ($('[data-toggle="popover"]').popover === 'function') { + $('[data-toggle="popover"]').popover(); + } +}); diff --git a/docs/articles/species-covariate-distill_files/lightable-0.0.1/lightable.css b/docs/articles/species-covariate-distill_files/lightable-0.0.1/lightable.css new file mode 100644 index 0000000..3be3be9 --- /dev/null +++ b/docs/articles/species-covariate-distill_files/lightable-0.0.1/lightable.css @@ -0,0 +1,272 @@ +/*! + * lightable v0.0.1 + * Copyright 2020 Hao Zhu + * Licensed under MIT (https://github.com/haozhu233/kableExtra/blob/master/LICENSE) + */ + +.lightable-minimal { + border-collapse: separate; + border-spacing: 16px 1px; + width: 100%; + margin-bottom: 10px; +} + +.lightable-minimal td { + margin-left: 5px; + margin-right: 5px; +} + +.lightable-minimal th { + margin-left: 5px; + margin-right: 5px; +} + +.lightable-minimal thead tr:last-child th { + border-bottom: 2px solid #00000050; + empty-cells: hide; + +} + +.lightable-minimal tbody tr:first-child td { + padding-top: 0.5em; +} + +.lightable-minimal.lightable-hover tbody tr:hover { + background-color: #f5f5f5; +} + +.lightable-minimal.lightable-striped tbody tr:nth-child(even) { + background-color: #f5f5f5; +} + +.lightable-classic { + border-top: 0.16em solid #111111; + border-bottom: 0.16em solid #111111; + width: 100%; + margin-bottom: 10px; + margin: 10px 5px; +} + +.lightable-classic tfoot tr td { + border: 0; +} + +.lightable-classic tfoot tr:first-child td { + border-top: 0.14em solid #111111; +} + +.lightable-classic caption { + color: #222222; +} + +.lightable-classic td { + padding-left: 5px; + padding-right: 5px; + color: #222222; +} + +.lightable-classic th { + padding-left: 5px; + padding-right: 5px; + font-weight: normal; + color: #222222; +} + +.lightable-classic thead tr:last-child th { + border-bottom: 0.10em solid #111111; +} + +.lightable-classic.lightable-hover tbody tr:hover { + background-color: #F9EEC1; +} + +.lightable-classic.lightable-striped tbody tr:nth-child(even) { + background-color: #f5f5f5; +} + +.lightable-classic-2 { + border-top: 3px double #111111; + border-bottom: 3px double #111111; + width: 100%; + margin-bottom: 10px; +} + +.lightable-classic-2 tfoot tr td { + border: 0; +} + +.lightable-classic-2 tfoot tr:first-child td { + border-top: 3px double #111111; +} + +.lightable-classic-2 caption { + color: #222222; +} + +.lightable-classic-2 td { + padding-left: 5px; + padding-right: 5px; + color: #222222; +} + +.lightable-classic-2 th { + padding-left: 5px; + padding-right: 5px; + font-weight: normal; + color: #222222; +} + +.lightable-classic-2 tbody tr:last-child td { + border-bottom: 3px double #111111; +} + +.lightable-classic-2 thead tr:last-child th { + border-bottom: 1px solid #111111; +} + +.lightable-classic-2.lightable-hover tbody tr:hover { + background-color: #F9EEC1; +} + +.lightable-classic-2.lightable-striped tbody tr:nth-child(even) { + background-color: #f5f5f5; +} + +.lightable-material { + min-width: 100%; + white-space: nowrap; + table-layout: fixed; + font-family: Roboto, sans-serif; + border: 1px solid #EEE; + border-collapse: collapse; + margin-bottom: 10px; +} + +.lightable-material tfoot tr td { + border: 0; +} + +.lightable-material tfoot tr:first-child td { + border-top: 1px solid #EEE; +} + +.lightable-material th { + height: 56px; + padding-left: 16px; + padding-right: 16px; +} + +.lightable-material td { + height: 52px; + padding-left: 16px; + padding-right: 16px; + border-top: 1px solid #eeeeee; +} + +.lightable-material.lightable-hover tbody tr:hover { + background-color: #f5f5f5; +} + +.lightable-material.lightable-striped tbody tr:nth-child(even) { + background-color: #f5f5f5; +} + +.lightable-material.lightable-striped tbody td { + border: 0; +} + +.lightable-material.lightable-striped thead tr:last-child th { + border-bottom: 1px solid #ddd; +} + +.lightable-material-dark { + min-width: 100%; + white-space: nowrap; + table-layout: fixed; + font-family: Roboto, sans-serif; + border: 1px solid #FFFFFF12; + border-collapse: collapse; + margin-bottom: 10px; + background-color: #363640; +} + +.lightable-material-dark tfoot tr td { + border: 0; +} + +.lightable-material-dark tfoot tr:first-child td { + border-top: 1px solid #FFFFFF12; +} + +.lightable-material-dark th { + height: 56px; + padding-left: 16px; + padding-right: 16px; + color: #FFFFFF60; +} + +.lightable-material-dark td { + height: 52px; + padding-left: 16px; + padding-right: 16px; + color: #FFFFFF; + border-top: 1px solid #FFFFFF12; +} + +.lightable-material-dark.lightable-hover tbody tr:hover { + background-color: #FFFFFF12; +} + +.lightable-material-dark.lightable-striped tbody tr:nth-child(even) { + background-color: #FFFFFF12; +} + +.lightable-material-dark.lightable-striped tbody td { + border: 0; +} + +.lightable-material-dark.lightable-striped thead tr:last-child th { + border-bottom: 1px solid #FFFFFF12; +} + +.lightable-paper { + width: 100%; + margin-bottom: 10px; + color: #444; +} + +.lightable-paper tfoot tr td { + border: 0; +} + +.lightable-paper tfoot tr:first-child td { + border-top: 1px solid #00000020; +} + +.lightable-paper thead tr:last-child th { + color: #666; + vertical-align: bottom; + border-bottom: 1px solid #00000020; + line-height: 1.15em; + padding: 10px 5px; +} + +.lightable-paper td { + vertical-align: middle; + border-bottom: 1px solid #00000010; + line-height: 1.15em; + padding: 7px 5px; +} + +.lightable-paper.lightable-hover tbody tr:hover { + background-color: #F9EEC1; +} + +.lightable-paper.lightable-striped tbody tr:nth-child(even) { + background-color: #00000008; +} + +.lightable-paper.lightable-striped tbody td { + border: 0; +} + diff --git a/docs/articles/tab2-buck.png b/docs/articles/tab2-buck.png new file mode 100644 index 0000000..9500fc8 Binary files /dev/null and b/docs/articles/tab2-buck.png differ diff --git a/docs/articles/web-only/CTDS/camera-distill.html b/docs/articles/web-only/CTDS/camera-distill.html new file mode 100644 index 0000000..024405a --- /dev/null +++ b/docs/articles/web-only/CTDS/camera-distill.html @@ -0,0 +1,693 @@ + + + + + + + +Analysis of camera trapping data • Distance + + + + + + + + + + + + Skip to contents + + +
+ + +
+
+ + + +
+

Analysis of camera trapping data using distance sampling +

+

A distance sampling approach to the analysis of camera trapping data offers the potential advantage that individual animal identification is not required. However, accurate animal-to-camera detection distances are required. This requires calibration prior to the survey with images of objects taken at known distances from the camera. See details in Howe, Buckland, Després-Einspenner, & Kühl (2017) for description of the field work and data analysis. Here we present analysis of data from Howe et al. (2017) using the R package Distance (Miller, Rexstad, Thomas, Marshall, & Laake, 2019).

+
+

Estimating temporal availability for detection +

+

Heat- and motion-sensitive camera traps detect only moving animals within the range of the sensor and the field of view of the camera. Animals are therefore unavailable for detection by camera traps when they are stationary, and when they are above (e.g., semi-arboreal species) or below (e.g., semi-fossorial species) the range of the sensor or the camera, regardless of their distance from the camera in two dimensions. This temporally limited availability for detection must be accounted for to avoid negative bias in estimated densities. When data are abundant, researchers may choose to include only data from times when 100% of the population can be assumed to be active within the vertical range of camera traps (Howe et al., 2017). However, for rarely-detected species or surveys with lower effort, it might be necessary to include most or all observations of distance. In these situations, survey duration (\(T_k\)) might be 12- or 24-hours per day, and it becomes necessary to estimate the proportion of time included in \(T_k\) when animals were available for detection. Methods for estimating this proportion directly from CT data have been described (Rowcliffe, Kays, Kranstauber, Carbone, & Jansen, 2014), and it can be included in analyses to estimate density (Bessone et al., 2020), for example as another multiplier, potentially with an associated standard errors.

+
+
+

Data input +

+

Times of independent camera triggering events for the period 28 June 21 September 2014 at 23 cameras are recorded in a file described in the data repository Howe, Buckland, Després-Einspenner, Kühl, & Buckland (2018). Download the file from Dryad and save to your local drive, then read with the following code:

+
+trigger.events <- read.table(file="VideoStartTimes_FullDays.txt", header=TRUE)
+

The format of the trigger.events data frame is adjusted to create a datetime field for use in the activity package Rowcliffe (2021)

+
+trigger.events$date <- paste("2014",
+                       sprintf("%02i", trigger.events$month), 
+                       sprintf("%02i", trigger.events$day),
+                       sep="/")
+trigger.events$time <- paste(sprintf("%02i", trigger.events$hour),
+                       sprintf("%02i", trigger.events$minute),
+                       sep=":")
+trigger.events$datetime <- paste(trigger.events$date, trigger.events$time)
+
+
+

Functions in the activity package +

+

We will employ two functions from the activity package. First, convert the time of day of a camera triggering event into the fraction of the 24hr cycle when the event took place, measured in radians. In other words, an event occurring at midday is recorded as \(\pi\) and an event occurring at midnight is recorded as 2\(\pi\).

+
+library(activity)
+trigger.events$rtime <- gettime(trigger.events$datetime, 
+                                tryFormats = "%Y/%m/%d %H:%M",
+                                scale = "radian")
+

With the radian conversion of the camera triggering times, the distribution of the triggering events times is smoothed, using a kernel smoother by the function fitact. The function estimates the proportion of time (in a 24hr day) animals were active. In addition, the triggering time data can be resampled to provide a measure of uncertainty in the point estimate of activity proportion.

+
+act_result <- fitact(trigger.events$rtime, sample="data", reps=100)
+

A plot of the histogram of triggering times (Figure 1), along with the fitted smooth is provided by a plot function applied to the object returned by fitact.

+
+plot(act_result)
+
+ +Fitted smooth to histogram of camera triggering times for Maxwell's duiker data.

+Figure 1: Fitted smooth to histogram of camera triggering times for Maxwell’s duiker data. +

+
+

The value computed by the smooth through the activity histogram can be extracted from the object created by fitact. The extraction reaches into the object to look at the slot called act. The uncertainty around the point estimate is derived from resampling that takes place within fitact. The slot will display the point estimates, standard error and confidence interval bounds.

+
+print(act_result@act)
+
##        act         se   lcl.2.5%  ucl.97.5% 
+## 0.33463831 0.02096859 0.30195769 0.37801207
+

The output above would be used to adjust density estimates for temporal activity if the cameras were in operation 24hrs per day. However, in this study, cameras were only active for 11.5 hours per day (0630-1800).

+
+
+

Adjustment for temporal availability +

+

We use the temporal availability information to create a multiplier. Our multiplier must be defined as +> proportion of the camera operation time animals were available to be detected

+

This is not equivalent to the value produced by the fitact function; that value is the proportion of 24hr animals were available to be detected. The availability multiplier must be adjusted based on the daily camera operation period. Uncertainty in this proportion is also included in our computations.

+

The point estimate and standard error are pulled from the fitact object, adjusted for daily camera operation time and placed into a data frame named creation in a named list, specifically in the fashion shown.

+
+camera.operation.per.day <- 11.5
+prop.camera.time <- camera.operation.per.day / 24
+avail <- list(creation=data.frame(rate = act_result@act[1]/prop.camera.time,
+                                  SE   = act_result@act[2]/prop.camera.time))
+

A more robust way of incorporating uncertainty in the temporal availability estimate will be described later.

+
+
+
+

Detection data analysis +

+

Detection distances for the full daytime data set is also available on Howe et al. (2018). Download from Dryad and is read in the code chunk below:

+
+DuikerCameraTraps <- read.csv(file="DaytimeDistances.txt", header=TRUE, sep="\t")
+DuikerCameraTraps$Area <- DuikerCameraTraps$Area / (1000*1000)
+DuikerCameraTraps$object <- NA
+DuikerCameraTraps$object[!is.na(DuikerCameraTraps$distance)] <- 1:sum(!is.na(DuikerCameraTraps$distance))
+

Data file recorded study area size in square meters; second line above converts this to area in square kilometers; the remaining lines create an object field, which uniquely identify each observation.

+
+

Exploratory Data Analysis +

+

A quick summary of the data set including: How many camera stations and how many detections in total.

+
+sum(!is.na(DuikerCameraTraps$distance))
+
## [1] 11180
+
+table(DuikerCameraTraps$Sample.Label)
+
## 
+##   A1   A2   A3   A4   B1   B2   B3   B4   C1   C2   C3   C4   C5   C6   D3   D4 
+##  388   66  988  420    3 1951   73  208   52  195  767  153   41 2682  342  193 
+##   D5   E3   E4   E5   E6 
+##  524  518    1  375 1241
+

Note, three sampling stations (B1, C5, E4) had no detections. The one record for each of those stations has distance recorded as NA, but the record is important because it contains effort information.

+
+
+

Distance recording +

+

An examination of the distribution of detection distances; note the bespoke cutpoints causing distance bins to be narrow out to 8m, then increasing in width to the maximum detection distance of 21m (Figure 2).

+
+breakpoints <- c(seq(0, 8, 1), 10, 12, 15, 21)
+hist(DuikerCameraTraps$distance, breaks=breakpoints, main="Peak activity data set",
+     xlab="Radial distance (m)")
+
+ +Distribution of detection distances during peak activity period.

+Figure 2: Distribution of detection distances during peak activity period. +

+
+
+
+

Truncation decisions +

+

As described by Howe et al. (2017):

+
+

a paucity of observations between 1 and 2 m but not between 2 and 3 m, so we left-truncated at 2 m. Fitted detection functions and probability density functions were heavy-tailed when distances >15 m were included, so we right truncated at 15 m.

+
+
+
+

Detection function fits +

+

The conversion factor must be included both in the call to ds() and the call to bootdht().

+

Candidate models considered here differ from the candidate set presented in Howe et al. (2017). This set includes

+
    +
  • uniform key with 1, 2 and 3 cosine adjustments,
  • +
  • half normal key with 0, 1 and 2 cosine adjustment and
  • +
  • hazard rate key with 0, 1 simple polynomial adjustments.
  • +
+

The maximum number of parameters in models within the candidate model set is no more than 3.

+
+library(Distance)
+trunc.list <- list(left = 2, right = 15)
+mybreaks <- c(seq(2, 8, 1), 10, 12, 15)
+conversion <- convert_units("meter", NULL, "square kilometer")
+uni1 <- ds(DuikerCameraTraps, transect = "point", key = "unif", adjustment = "cos",
+           nadj = 1, convert_units = conversion,
+           cutpoints = mybreaks, truncation = trunc.list)
+
## Warning in create_bins(data, cutpoints): Some distances were outside bins and
+## have been removed.
+
+uni2 <- ds(DuikerCameraTraps, transect = "point", key = "unif", adjustment = "cos",
+           nadj = 2, convert_units = conversion,
+           cutpoints = mybreaks, truncation = trunc.list)
+
## Warning in create_bins(data, cutpoints): Some distances were outside bins and
+## have been removed.
+
+uni3 <- ds(DuikerCameraTraps, transect = "point", key = "unif", adjustment = "cos",
+           nadj = 3, convert_units = conversion,
+           cutpoints = mybreaks, truncation = trunc.list)
+
## Warning in create_bins(data, cutpoints): Some distances were outside bins and
+## have been removed.
+
+hn0 <- ds(DuikerCameraTraps, transect = "point", key = "hn", adjustment = NULL,
+          convert_units = conversion, cutpoints = mybreaks, truncation = trunc.list)
+
## Warning in create_bins(data, cutpoints): Some distances were outside bins and
+## have been removed.
+
+hn1 <- ds(DuikerCameraTraps, transect = "point", key = "hn", adjustment = "cos",
+          nadj = 1, convert_units = conversion,
+          cutpoints = mybreaks, truncation = trunc.list)
+
## Warning in create_bins(data, cutpoints): Some distances were outside bins and
+## have been removed.
+
+hn2 <- ds(DuikerCameraTraps, transect = "point", key = "hn", adjustment = "cos",
+          nadj = 2, convert_units = conversion,
+          cutpoints = mybreaks, truncation = trunc.list)
+
## Warning in create_bins(data, cutpoints): Some distances were outside bins and
+## have been removed.
+
## Warning in check.mono(result, n.pts = control$mono.points): Detection function
+## is greater than 1 at some distances
+## Warning in check.mono(result, n.pts = control$mono.points): Detection function
+## is greater than 1 at some distances
+
## Warning in mrds::check.mono(model, n.pts = 10): Detection function is greater
+## than 1 at some distances
+
+hr0 <- ds(DuikerCameraTraps, transect = "point", key = "hr", adjustment = NULL,
+          convert_units = conversion, cutpoints = mybreaks, truncation = trunc.list)
+
## Warning in create_bins(data, cutpoints): Some distances were outside bins and
+## have been removed.
+
+hr1 <- ds(DuikerCameraTraps, transect = "point", key = "hr", adjustment = "poly",
+          nadj = 1, convert_units = conversion,
+          cutpoints = mybreaks, truncation = trunc.list)
+
## Warning in create_bins(data, cutpoints): Some distances were outside bins and
+## have been removed.
+

We do not present the density estimates produced from the fitted detection function models because a) we have not chosen a preferred model and b) the density estimates have not been adjusted for viewing angle and temporal availability.

+
+
+

Model selection adjustments from overdispersion +

+

Overdispersion causes AIC to select overly-complex models, so analysts should specify the number/order of adjustment terms manually when fitting distance sampling models to data from camera traps, rather than allowing automated selection using AIC. Howe, Buckland, Després-Einspenner, & Kühl (2019) describe two methods for performing model selection of distance sampling models in the face of overdispersion. Here we provide R functions to perform the first of these methods. The first method of Howe et al. (2019) employs a two-step process. First, an overdisersion factor \((\hat{c})\) is computed for each key function family from the most complex model in each family. The \(\hat{c}\) is derived from the \(\chi^2\) goodness of fit test statistic divided by its degrees of freedom. This results in an adjusted AIC score for each model in the key function family:

+

\[QAIC = -2 \left \{ \frac{log(\mathcal{L}(\hat{\theta}))}{\hat{c}} \right \} + 2K\]

+

Code to perform this QAIC computation is found in the function QAIC in the Distance package, and produces the following results:

+

Tables of QAIC values for each key function family are shown below (code for kable() calls suppressed for easier readability of results).

+ + + + + + + + + + + + + + + + + + + + + + + + +
+Table 1: Table 2: QAIC values for uniform key models. +
+ +df + +QAIC +
+uni1 + +1 + +2825.316 +
+uni2 + +2 + +2826.822 +
+uni3 + +3 + +2823.921 +
+ + + + + + + + + + + + + + + + + + + + + + + + +
+Table 3: Table 4: QAIC values for half normal key models. +
+ +df + +QAIC +
+hn0 + +1 + +2296.204 +
+hn1 + +2 + +2292.252 +
+hn2 + +3 + +2294.096 +
+ + + + + + + + + + + + + + + + + + + +
+Table 5: Table 6: QAIC values for hazard rate key models. +
+ +df + +QAIC +
+hr0 + +2 + +2465.086 +
+hr1 + +3 + +2466.362 +
+

From this first pass of model selection based on QAIC values, we find the model with the uniform key function preferred by QAIC has three cosine adjustment terms. The preferred model from the half normal key function family has one cosine adjustment term. Finally, the preferable model from the hazard rate key function family has no adjustment terms.

+

The second step of model selection ranks the models by their \(\hat{c}\) values.

+
+chats <- chi2_select(uni3, hn1, hr0)$criteria
+modnames <- unlist(lapply(list(uni3, hn1, hr0), function(x) x$ddf$name.message))
+results <- data.frame(modnames, chats)
+results.sort <- results[order(results$chats),]
+knitr::kable(results.sort, digits=2, row.names = FALSE,
+             caption="Compare with Table S5 of Howe et al. (2018)") %>%
+  kable_paper(full_width = FALSE) %>%
+  row_spec(1, bold=TRUE,  background = "#4da6ff")
+ + + + + + + + + + + + + + + + + + + + +
+Table 7: Table 8: Compare with Table S5 of Howe et al. (2018) +
+modnames + +chats +
+uniform key function with cosine(1,2,3) adjustments + +15.63 +
+half-normal key function with cosine(2) adjustments + +16.54 +
+hazard-rate key function + +17.21 +
+

For this data set, the model chosen by this algorithm that adjusts for overdispersion is the same model (uniform key with three cosine adjustments) as would have been chosen by conventional model selection; but again, not the model selected by Howe et al. (2017) because of the differing candidate model sets.

+
+
+

Sense check for detection parameter estimates +

+

As a check of the detection function vis-a-vis Howe et al. (2017), the paper reports the effective detection radius (\(\rho\)) to be 9.4m for the peak activity data set. Howe et al. (2017) employed a different candidate model set, resulting in the unadjusted hazard rate model as the preferred model. Here we present the estimated effective detection radius from the selected uniform key function with three cosine adjustment terms.

+

The effective detection radius can be derived from \(\hat{P_a}\) as reported by the function ds as

+

\[\hat{\rho} = \sqrt{\hat{P_a} \cdot w^2}\]

+
+p_a <- uni3$ddf$fitted[1]
+w <- range(mybreaks)[2] - range(mybreaks)[1]
+rho <- sqrt(p_a * w^2)
+

\(\hat{P_a}\) is estimated to be 0.329, resulting in an estimate of \(\hat{\rho}\) of 7.457.

+
+
+

Selected detection function +

+

Figure 3 shows the detection function probability density function of selected model.

+
+plot(uni3, main="Daytime activity", xlab="Distance (m)",
+     showpoints=FALSE, lwd=3, xlim=c(0, 15))
+plot(uni3, main="Daytime activity", xlab="Distance (m)", pdf=TRUE,
+     showpoints=FALSE, lwd=3, xlim=c(0, 15))
+
+ +Detection function and probability density function of the selected detection function model.Detection function and probability density function of the selected detection function model.

+Figure 3: Detection function and probability density function of the selected detection function model. +

+
+
+
+

Density estimates +

+

The camera traps do not view the entire area around them, as would be the case with simple point transect sampling. The portion of the area sampled needs to be incorporated in the estimation of abundance. The data file contains a column multiplier that represents the proportion of the circle sampled. Howe et al. (2017) notes the camera angle of view (AOV) of 42\(^{\circ}\). The proportion of the circle viewed is this value over 360\(^{\circ}\).

+

An argument to dht2 is sample_fraction, an obvious place to include this quantity. We also add the multiplier for temporal availability described in the section on temporal availability The dht2 function will produce analytical measures of precision with this call.

+
+viewangle <- 42 # degrees
+samfrac <- viewangle / 360
+peak.uni.dens <- dht2(uni3, flatfile=DuikerCameraTraps, strat_formula = ~1,
+                     sample_fraction = samfrac, er_est = "P2", multipliers = avail,
+                     convert_units = conversion)
+print(peak.uni.dens, report="density")
+
## Density estimates from distance sampling
+## Stratification : geographical 
+## Variance       : P2, n/L 
+## Multipliers    : creation 
+## Sample fraction : 0.1166667 
+## 
+## 
+## Summary statistics:
+##  .Label  Area CoveredArea   Effort     n  k ER se.ER cv.ER
+##   Total 40.37    2596.317 31483179 10284 21  0     0 0.268
+## 
+## Density estimates:
+##  .Label Estimate    se    cv    LCI     UCI     df
+##   Total  17.2357 4.801 0.279 9.7947 30.3297 23.239
+## 
+## Component percentages of variance:
+##  .Label Detection    ER Multipliers
+##   Total      2.17 92.77        5.06
+
+
+
+

Bootstrap for variance estimation +

+

To produce a more reliable estimate of the precision of the point estimate, produce bootstrap estimates using bootdht. The user needs to create a function and another named list to facilitate use of the bootstrap: a summary function to extract information from each replicate and a multiplier list describing how temporal availability is being derived.

+
+

Summary function +

+

As constructed, mysummary will keep the density estimate produced by each bootstrap replicate and the stratum (if any) to which the estimate pertains.

+
+mysummary <- function(ests, fit){
+  return(data.frame(Label = ests$individuals$D$Label,
+                    Dhat = ests$individuals$D$Estimate))
+}
+
+
+

Multiplier function +

+

This rather complex list makes use of make_activity_fn that exists in the Distance package used to call the fitact function from the activity package. For the user, your responsibility is to provide three arguments to this function:

+
    +
  • vector containing the detection times in radians (computed in earlier section),
  • +
  • the manner in which precision of the temporal availability estimate is produced and
  • +
  • the number of hours per day the cameras are in operation
  • +
+
+mult <- list(availability= make_activity_fn(trigger.events$rtime, sample="data",
+                                            detector_daily_duration=camera.operation.per.day))
+
+
+

Speeding up the bootstrap +

+

Bootstrap analyses of camera trap data can be quite slow. In general, camera traps produce a large amount of distance sampling data, and in addition these data tend to be “overdispersed” meaning (in this case) that there are lots of observations with the same distances. Together, this can cause analyses to run slowly, and this can be especially true for bootstrap analyses for variance estimation.

+

One way to speed up the bootstrap is to run multiple analyses in parallel, using multiple cores of your computer. You can achieve this using the cores argument to bootdht - for fastest results set this to the number of cores on your machine minus 1 (best to leave 1 free for other things). You can find the number of cores by calling parallel::detectCores() and we do this in the code below.

+

Another possible speed-up is to set starting values - but this is quite an advanced technique and so we come back to this later in this document.

+
+
+

Remaining arguments to bootdht +

+

Just as with dht2 there are arguments for the model, flatfile, sample_fraction, convert.units and multipliers (although for bootdht multipliers uses a function rather than a single value). The only novel arguments to dht2 are resample_transects indicating camera stations are to be resampled with replacement, and nboot for the number of bootstrap replicates.

+
+n.cores <- parallel::detectCores()
+daytime.boot.uni <- bootdht(model=uni3, flatfile=DuikerCameraTraps,
+                          resample_transects = TRUE, nboot = 500, 
+                          cores = n.cores - 1,
+                          summary_fun=mysummary, sample_fraction = samfrac,
+                          convert_units = conversion, multipliers=mult)
+
+
+

Confidence limits computed via the percentile method of the bootstrap. +

+
+print(summary(daytime.boot.uni))
+
## Bootstrap results
+## 
+## Boostraps          : 500 
+## Successes          : 498 
+## Failures           : 2 
+## 
+##      median  mean   se  lcl   ucl   cv
+## Dhat  18.01 19.13 7.85 7.62 37.79 0.44
+
+hist(daytime.boot.uni$Dhat, breaks = 20, 
+     xlab = "Estimated density", main = "D-hat estimates bootstraps")
+abline(v = quantile(daytime.boot.uni$Dhat, probs = c(0.025,0.975), na.rm = TRUE), lwd = 2, lty = 2, col = "red")
+abline(v = c(peak.uni.dens$LCI/peak.uni.dens$Area, peak.uni.dens$UCI/peak.uni.dens$Area), lwd = 2, lty = 2, col = "grey")
+
+ +Distribution of density estimates from bootstrap replicates.  Red dashed lines indicate bootstrap 95% confidence intervals (obtained using the quantile method); grey dashed lines indicate the analytical 95% confidence intervals obtained earlier.

+Figure 4: Distribution of density estimates from bootstrap replicates. Red dashed lines indicate bootstrap 95% confidence intervals (obtained using the quantile method); grey dashed lines indicate the analytical 95% confidence intervals obtained earlier. +

+
+

The confidence interval derived from the bootstrap is wider than the confidence interval derived from analytical methods (Figure 4).

+
+
+

An esoteric note on starting values and bootstrapping +

+

Feel free to skip this unless you’re a fairly advanced user!

+

In some cases, it may be necessary to set starting values for the detection function optimization, to help it converge. This can be achieved using the initial_values argument of the ds function. As an example, say we want to use the fitted values from the uniform + 2 cosine function uni2 as starting values for the first two parameters of the uniform + 3 cosine function fitting (and 0 for the third parameter). The following code does this:

+
+uni3.with.startvals <- ds(DuikerCameraTraps, transect = "point", key="unif", adjustment = "cos",
+           nadj=3,
+           cutpoints = mybreaks, truncation = trunc.list, 
+           initial_values = list(adjustment = c(as.numeric(uni2$ddf$par), 0)))
+
## Warning in create_bins(data, cutpoints): Some distances were outside bins and
+## have been removed.
+

What about when it comes to bootstrapping for variance estimation. You can pass this model in to boot.dht with no problems, so long as you don’t set ncores to more than 1. If you do set ncores to more than 1 it won’t work, returning 0 successful bootstraps. Why? Because uni2$ddf$par is not passed along to all those parallel cores. To fix this you have to hard-code the starting values. So, in this example, we see that the values are

+
+print(uni2$ddf$par)
+
## [1] 0.97177303 0.03540654
+

and so we use

+
+uni3.with.startvals <- ds(DuikerCameraTraps, transect = "point", key="unif", adjustment = "cos",
+           nadj=3,
+           cutpoints = mybreaks, truncation = trunc.list, 
+           initial_values = list(adjustment = c(0.97177303, 0.03540654, 0)))
+
## Warning in create_bins(data, cutpoints): Some distances were outside bins and
+## have been removed.
+

and this will work fine in bootdht.

+

A final tip is that setting starting values can sometimes speed up the bootstrap (as optimization is faster if it starts from a good initial spot), so you might want to pass in the starting values from uni3 to your bootstrap routine - something like the following, which we found nearly halved the run time on our test machine. Note, this code is set not to run in this examples file - just here to show what you might use.

+
+print(uni3$ddf$par)
+uni3.with.startvals <- ds(DuikerCameraTraps, transect = "point", key="unif", adjustment = "cos",
+           nadj=3,
+           cutpoints = mybreaks, truncation = trunc.list, 
+           optimizer = "MCDS",
+           initial_values = list(adjustment = c(0.93518220, -0.05345965, -0.08073799)))
+daytime.boot.uni <- bootdht(model=uni3.with.startvals, flatfile=DuikerCameraTraps,
+                          resample_transects = TRUE, nboot = 500, 
+                          cores = n.cores - 1,
+                          summary_fun=mysummary, sample_fraction = samfrac,
+                          convert_units = conversion, multipliers=mult)
+
+
+
+

References +

+
+
+Bessone, M., Kühl, H. S., Hohmann, G., Herbinger, I., N’Goran, K. P., Asanzi, P., … Fruth, B. (2020). Drawn out of the shadows: Surveying secretive forest species with camera trap distance sampling. Journal of Applied Ecology, 57(5), 963–974. https://doi.org/10.1111/1365-2664.13602 +
+
+Howe, E. J., Buckland, S. T., Després-Einspenner, M.-L., & Kühl, H. S. (2017). Distance sampling with camera traps. Methods in Ecology and Evolution, 8(11), 1558–1565. https://doi.org/10.1111/2041-210X.12790 +
+
+Howe, E. J., Buckland, S. T., Després-Einspenner, M.-L., & Kühl, H. S. (2019). Model selection with overdispersed distance sampling data. Methods in Ecology and Evolution, 10(1), 38–47. https://doi.org/10.1111/2041-210X.13082 +
+
+Howe, E. J., Buckland, S. T., Després-Einspenner, M.-L., Kühl, H. S., & Buckland, S. T. (2018). Data from: Distance sampling with camera traps. https://doi.org/https://doi.org/10.5061/dryad.b4c70 +
+
+Miller, D., Rexstad, E., Thomas, L., Marshall, L., & Laake, J. (2019). Distance sampling in r. Journal of Statistical Software, Articles, 89(1), 1–28. https://doi.org/10.18637/jss.v089.i01 +
+
+Rowcliffe, J. M. (2021). Activity: Animal activity statistics. Retrieved from https://CRAN.R-project.org/package=activity +
+
+Rowcliffe, J. M., Kays, R., Kranstauber, B., Carbone, C., & Jansen, P. A. (2014). Quantifying levels of animal activity using camera trap data. Methods in Ecology and Evolution, 5(11), 1170–1179. https://doi.org/10.1111/2041-210X.12278 +
+
+
+
+
+ + + +
+ + + +
+
+ + + + + + + diff --git a/docs/articles/web-only/CTDS/camera-distill_files/figure-html/actplot-1.png b/docs/articles/web-only/CTDS/camera-distill_files/figure-html/actplot-1.png new file mode 100644 index 0000000..c8d55c1 Binary files /dev/null and b/docs/articles/web-only/CTDS/camera-distill_files/figure-html/actplot-1.png differ diff --git a/docs/articles/web-only/CTDS/camera-distill_files/figure-html/distances-1.png b/docs/articles/web-only/CTDS/camera-distill_files/figure-html/distances-1.png new file mode 100644 index 0000000..e1d8b11 Binary files /dev/null and b/docs/articles/web-only/CTDS/camera-distill_files/figure-html/distances-1.png differ diff --git a/docs/articles/web-only/CTDS/camera-distill_files/figure-html/sampdist-1.png b/docs/articles/web-only/CTDS/camera-distill_files/figure-html/sampdist-1.png new file mode 100644 index 0000000..caf013e Binary files /dev/null and b/docs/articles/web-only/CTDS/camera-distill_files/figure-html/sampdist-1.png differ diff --git a/docs/articles/web-only/CTDS/camera-distill_files/figure-html/selected-1.png b/docs/articles/web-only/CTDS/camera-distill_files/figure-html/selected-1.png new file mode 100644 index 0000000..32140f0 Binary files /dev/null and b/docs/articles/web-only/CTDS/camera-distill_files/figure-html/selected-1.png differ diff --git a/docs/articles/web-only/CTDS/camera-distill_files/figure-html/selected-2.png b/docs/articles/web-only/CTDS/camera-distill_files/figure-html/selected-2.png new file mode 100644 index 0000000..fa29494 Binary files /dev/null and b/docs/articles/web-only/CTDS/camera-distill_files/figure-html/selected-2.png differ diff --git a/docs/articles/web-only/CTDS/camera-distill_files/figure-html/uni3-1.png b/docs/articles/web-only/CTDS/camera-distill_files/figure-html/uni3-1.png new file mode 100644 index 0000000..692a43d Binary files /dev/null and b/docs/articles/web-only/CTDS/camera-distill_files/figure-html/uni3-1.png differ diff --git a/docs/articles/web-only/CTDS/camera-distill_files/kePrint-0.0.1/kePrint.js b/docs/articles/web-only/CTDS/camera-distill_files/kePrint-0.0.1/kePrint.js new file mode 100644 index 0000000..e6fbbfc --- /dev/null +++ b/docs/articles/web-only/CTDS/camera-distill_files/kePrint-0.0.1/kePrint.js @@ -0,0 +1,8 @@ +$(document).ready(function(){ + if (typeof $('[data-toggle="tooltip"]').tooltip === 'function') { + $('[data-toggle="tooltip"]').tooltip(); + } + if ($('[data-toggle="popover"]').popover === 'function') { + $('[data-toggle="popover"]').popover(); + } +}); diff --git a/docs/articles/web-only/CTDS/camera-distill_files/lightable-0.0.1/lightable.css b/docs/articles/web-only/CTDS/camera-distill_files/lightable-0.0.1/lightable.css new file mode 100644 index 0000000..3be3be9 --- /dev/null +++ b/docs/articles/web-only/CTDS/camera-distill_files/lightable-0.0.1/lightable.css @@ -0,0 +1,272 @@ +/*! + * lightable v0.0.1 + * Copyright 2020 Hao Zhu + * Licensed under MIT (https://github.com/haozhu233/kableExtra/blob/master/LICENSE) + */ + +.lightable-minimal { + border-collapse: separate; + border-spacing: 16px 1px; + width: 100%; + margin-bottom: 10px; +} + +.lightable-minimal td { + margin-left: 5px; + margin-right: 5px; +} + +.lightable-minimal th { + margin-left: 5px; + margin-right: 5px; +} + +.lightable-minimal thead tr:last-child th { + border-bottom: 2px solid #00000050; + empty-cells: hide; + +} + +.lightable-minimal tbody tr:first-child td { + padding-top: 0.5em; +} + +.lightable-minimal.lightable-hover tbody tr:hover { + background-color: #f5f5f5; +} + +.lightable-minimal.lightable-striped tbody tr:nth-child(even) { + background-color: #f5f5f5; +} + +.lightable-classic { + border-top: 0.16em solid #111111; + border-bottom: 0.16em solid #111111; + width: 100%; + margin-bottom: 10px; + margin: 10px 5px; +} + +.lightable-classic tfoot tr td { + border: 0; +} + +.lightable-classic tfoot tr:first-child td { + border-top: 0.14em solid #111111; +} + +.lightable-classic caption { + color: #222222; +} + +.lightable-classic td { + padding-left: 5px; + padding-right: 5px; + color: #222222; +} + +.lightable-classic th { + padding-left: 5px; + padding-right: 5px; + font-weight: normal; + color: #222222; +} + +.lightable-classic thead tr:last-child th { + border-bottom: 0.10em solid #111111; +} + +.lightable-classic.lightable-hover tbody tr:hover { + background-color: #F9EEC1; +} + +.lightable-classic.lightable-striped tbody tr:nth-child(even) { + background-color: #f5f5f5; +} + +.lightable-classic-2 { + border-top: 3px double #111111; + border-bottom: 3px double #111111; + width: 100%; + margin-bottom: 10px; +} + +.lightable-classic-2 tfoot tr td { + border: 0; +} + +.lightable-classic-2 tfoot tr:first-child td { + border-top: 3px double #111111; +} + +.lightable-classic-2 caption { + color: #222222; +} + +.lightable-classic-2 td { + padding-left: 5px; + padding-right: 5px; + color: #222222; +} + +.lightable-classic-2 th { + padding-left: 5px; + padding-right: 5px; + font-weight: normal; + color: #222222; +} + +.lightable-classic-2 tbody tr:last-child td { + border-bottom: 3px double #111111; +} + +.lightable-classic-2 thead tr:last-child th { + border-bottom: 1px solid #111111; +} + +.lightable-classic-2.lightable-hover tbody tr:hover { + background-color: #F9EEC1; +} + +.lightable-classic-2.lightable-striped tbody tr:nth-child(even) { + background-color: #f5f5f5; +} + +.lightable-material { + min-width: 100%; + white-space: nowrap; + table-layout: fixed; + font-family: Roboto, sans-serif; + border: 1px solid #EEE; + border-collapse: collapse; + margin-bottom: 10px; +} + +.lightable-material tfoot tr td { + border: 0; +} + +.lightable-material tfoot tr:first-child td { + border-top: 1px solid #EEE; +} + +.lightable-material th { + height: 56px; + padding-left: 16px; + padding-right: 16px; +} + +.lightable-material td { + height: 52px; + padding-left: 16px; + padding-right: 16px; + border-top: 1px solid #eeeeee; +} + +.lightable-material.lightable-hover tbody tr:hover { + background-color: #f5f5f5; +} + +.lightable-material.lightable-striped tbody tr:nth-child(even) { + background-color: #f5f5f5; +} + +.lightable-material.lightable-striped tbody td { + border: 0; +} + +.lightable-material.lightable-striped thead tr:last-child th { + border-bottom: 1px solid #ddd; +} + +.lightable-material-dark { + min-width: 100%; + white-space: nowrap; + table-layout: fixed; + font-family: Roboto, sans-serif; + border: 1px solid #FFFFFF12; + border-collapse: collapse; + margin-bottom: 10px; + background-color: #363640; +} + +.lightable-material-dark tfoot tr td { + border: 0; +} + +.lightable-material-dark tfoot tr:first-child td { + border-top: 1px solid #FFFFFF12; +} + +.lightable-material-dark th { + height: 56px; + padding-left: 16px; + padding-right: 16px; + color: #FFFFFF60; +} + +.lightable-material-dark td { + height: 52px; + padding-left: 16px; + padding-right: 16px; + color: #FFFFFF; + border-top: 1px solid #FFFFFF12; +} + +.lightable-material-dark.lightable-hover tbody tr:hover { + background-color: #FFFFFF12; +} + +.lightable-material-dark.lightable-striped tbody tr:nth-child(even) { + background-color: #FFFFFF12; +} + +.lightable-material-dark.lightable-striped tbody td { + border: 0; +} + +.lightable-material-dark.lightable-striped thead tr:last-child th { + border-bottom: 1px solid #FFFFFF12; +} + +.lightable-paper { + width: 100%; + margin-bottom: 10px; + color: #444; +} + +.lightable-paper tfoot tr td { + border: 0; +} + +.lightable-paper tfoot tr:first-child td { + border-top: 1px solid #00000020; +} + +.lightable-paper thead tr:last-child th { + color: #666; + vertical-align: bottom; + border-bottom: 1px solid #00000020; + line-height: 1.15em; + padding: 10px 5px; +} + +.lightable-paper td { + vertical-align: middle; + border-bottom: 1px solid #00000010; + line-height: 1.15em; + padding: 7px 5px; +} + +.lightable-paper.lightable-hover tbody tr:hover { + background-color: #F9EEC1; +} + +.lightable-paper.lightable-striped tbody tr:nth-child(even) { + background-color: #00000008; +} + +.lightable-paper.lightable-striped tbody td { + border: 0; +} + diff --git a/docs/articles/web-only/alt-optimise/mcds-dot-exe.html b/docs/articles/web-only/alt-optimise/mcds-dot-exe.html new file mode 100644 index 0000000..a49e055 --- /dev/null +++ b/docs/articles/web-only/alt-optimise/mcds-dot-exe.html @@ -0,0 +1,666 @@ + + + + + + + +Alternative optimization engine for fitting detection functions • Distance + + + + + + + + + + + + Skip to contents + + +
+ + +
+
+ + + +

Here we demonstrate the use of the alternative optimization engine mcds.exe in the Distance and mrds packages. This engine was introduced with Distance version 1.0.8 and mrds version 2.2.9 to provide an alternative to the built-in optimizer in our R packages – but subsequent improvements in the built-in optimizer implemented in Distance 2.0.0 and mrds 3.0.0 mean that we no longer recommend use of mcds.exe. Nevertheless, the option to use mcds.exe remains open, and may be useful for some users, so we have retained this vignette. We may deprecate the option in future releases.

+

Note also that this vignette is designed for use within the Microsoft Windows operating system – the mcds.exe engine only has experimental support for MacOS or Linux (see the MCDS.exe help page within the mrds package.for more information).

+
+

Objectives +

+
    +
  • Download the mcds.exe optimization engine
  • +
  • Demonstrate its use in a simple line transect example (golf tee dataset) via the Distance package
  • +
  • Demonstrate the same example via the mrds package
  • +
  • Demonstrate its use in a point transect example (wren data) where one of the optimizers does not work well (gives a negative estimated detection probability)
  • +
  • Demonstrate its use to speed up an analysis of camera trap distance sampling data (duiker data) via the Distance package
  • +
  • Discuss when using the alternative optimization engine may be useful.
  • +
+
+
+

Introduction +

+

The Distance package is designed to provide a simple way to fit detection functions and estimate abundance using conventional distance sampling methodology (i.e., single observer distance sampling, possibly with covariates, as described by Buckland et al. (2015)). The main function is ds. Underlying Distance is the package mrds – when the function ds is called it does some pre-processing and then calls the function ddf in the mrds package to do the work of detection function fitting. mrds uses maximum likelihood to fit the specified detection function model to the distance data using a built-in algorithm written in R.

+

An alternative method for analyzing distance sampling data is using the Distance for Windows software (Thomas et al., 2010). This software also uses maximum liklihood to fit the detection function models, and relies on software written in the programming language FORTRAN to do the fitting. The filename of this software is MCDS.exe.

+

In a perfect world, both methods would produce identical results given the same data and model specification, since the likelihood has only one maximum. However, the likelihood surface is sometimes complex, especially when monotonicity constraints are used (which ensures the estimated detection probability is flat or decreasing with increasing distance when adjustment terms are used) or with “overdispersed” or “spiked” data (see Figure 2 in Thomas et al. (2010)), and so in some (rare) cases one or other piece of software fails to find the maximum. Note that in our tests, we have found this to be extremely rare from Distance version 2.0.0 and mrds version 3.0.0 onwards. Nevertheless, to counteract this, it is possible to run both the R-based optimizer and MCDS.exe from the ds function within the Distance package or the ddf function within mrds package.

+

Another historical motivation for using the MCDS.exe software from within R was that the R-based optimizer was sometimes slow to converge and so using MCDS.exe in place of the R-based optimizer can then save significant time, particularly when doing a nonparametric bootstrap for large datasets. However, from Distance 2.0.0 and mrds 3.0.0 the R-based optimizer is no longer generally slower.

+

This vignette demonstrates how to download and then use the MCDS.exe sofware from within the Distance and mrds packages. For more information, see the MCDS.exe help page within the mrds package.

+
+
+

Downloading and verifying MCDS.exe +

+

The program MCDS.exe does not come automatically with the Distance or mrds packages, to avoid violating CRAN rules, so you must first download it from the distance sampling website.

+
+#Unload Distance package if it's already loaded in R
+if("Distance" %in% (.packages())){
+  detach("package:Distance", unload=TRUE) 
+}
+
+#Download MCDS.exe
+download.file("http://distancesampling.org/R/MCDS.exe", paste0(system.file(package="mrds"),"/MCDS.exe"), mode = "wb")
+
## Warning in download.file("http://distancesampling.org/R/MCDS.exe",
+## paste0(system.file(package = "mrds"), : URL
+## http://distancesampling.org/R/MCDS.exe: cannot open destfile
+## 'C:/Users/erexs/Documents/R/win-library/4.1/mrds/MCDS.exe', reason 'Permission
+## denied'
+
## Warning in download.file("http://distancesampling.org/R/MCDS.exe",
+## paste0(system.file(package = "mrds"), : download had nonzero exit status
+
+#Load the Distance package - now it will be able to use MCDS.exe
+library(Distance)
+
## Loading required package: mrds
+
## This is mrds 3.0.0
+## Built: R 4.4.1; ; 2024-10-23 19:10:34 UTC; windows
+
## 
+## Attaching package: 'Distance'
+
## The following object is masked from 'package:mrds':
+## 
+##     create.bins
+

Now that this software is available, both it and the R optimizer will be used by default for each analysis; you can also choose to use just one or the other, as shown below.

+
+
+

Example with Golf Tee data +

+
+

Both MCDS.exe and the R-based optimizer +

+

This example (of golf tee data, using only observer 1) is taken from the R help for the ds function: (There is a warning about cluster sizes being coded as -1 that can be ignored.)

+
+#Load data
+data(book.tee.data)
+tee.data <- subset(book.tee.data$book.tee.dataframe, observer==1)
+#Fit detection function - default is half-normal with cosine adjustments
+ds.model <- ds(tee.data, truncation = 4)
+
## Starting AIC adjustment term selection.
+
## Fitting half-normal key function
+
## AIC= 311.138
+
## Fitting half-normal key function with cosine(2) adjustments
+
## AIC= 313.124
+
## 
+## Half-normal key function selected.
+
## No survey area information supplied, only estimating detection function.
+
+summary(ds.model)
+
## 
+## Summary for distance analysis 
+## Number of observations :  124 
+## Distance range         :  0  -  4 
+## 
+## Model       : Half-normal key function 
+## AIC         :  311.1385 
+## Optimisation:  mrds (nlminb) 
+## 
+## Detection function parameters
+## Scale coefficient(s):  
+##              estimate         se
+## (Intercept) 0.6632435 0.09981249
+## 
+##                        Estimate          SE         CV
+## Average p             0.5842744  0.04637627 0.07937412
+## N in covered region 212.2290462 20.85130344 0.09824906
+

Assuming you have MCDS.exe installed, the default is that both it and the R-based optimizer are run. Both give the same result in this example, and when this happens the result from the R-based optimizer is used. You can see this from the line of summary output:

+

Optimisation: mrds (nlminb)

+

where mrds is the R package that the Distance package relies on, and nlminb is the R-based optimizer.

+

You can see the process of both optimizers being used by setting the debug_level argument of the ds function to a value larger than the default of 0 and then examining the output:

+
+ds.model <- ds(tee.data, truncation = 4, debug_level = 1)
+
## Starting AIC adjustment term selection.
+
## Fitting half-normal key function
+
## DEBUG: initial values = -0.1031529
+
## Running MCDS.exe...
+
## Command file written to C:\Users\erexs\AppData\Local\Temp\RtmpsdWor7\cmdtmp46cc6da77768.txt
+
## Stats file written to C:\Users\erexs\AppData\Local\Temp\RtmpsdWor7\stat46cc26507b7a.txt
+
## DEBUG: initial values = 0.6632378 
+## 
+## DEBUG: Convergence! 
+##        Iteration  0.0 
+##        Converge   = 0 
+##        nll        = 154.5692 
+##        parameters = 0.6632378
+
## MCDS.exe log likehood: -154.5697
+
## MCDS.exe pars: 1.941067
+
## mrds refitted log likehood: -154.5692276
+
## mrds refitted pars: 0.6632378
+
## 
+## DEBUG: Convergence! 
+##        Iteration  0.0 
+##        Converge   = 0 
+##        nll        = 154.5692 
+##        parameters = 0.6632435
+
## AIC= 311.138
+
## Fitting half-normal key function with cosine(2) adjustments
+
## DEBUG: initial values = -0.1031529 0
+
## Running MCDS.exe...
+
## Command file written to C:\Users\erexs\AppData\Local\Temp\RtmpsdWor7\cmdtmp46cc19ae5459.txt
+
## Stats file written to C:\Users\erexs\AppData\Local\Temp\RtmpsdWor7\stat46cc5f227f6c.txt
+
## DEBUG: initial values = 0.6606793 -0.0159333 
+## 
+## DEBUG: Convergence! 
+##        Iteration  0.0 
+##        Converge   = 0 
+##        nll        = 154.5619 
+##        parameters = 0.6606793, -0.0159333
+
## MCDS.exe log likehood: -154.5624
+
## MCDS.exe pars: 1.936107, -0.0159333
+
## mrds refitted log likehood: -154.5619307
+
## mrds refitted pars: 0.6606793, -0.0159333
+
## iteration: 1
+##  f(x) = 243.539291
+## iteration: 2
+##  f(x) = 164.079444
+## iteration: 3
+##  f(x) = 156.273060
+## iteration: 4
+##  f(x) = 155.340034
+## iteration: 5
+##  f(x) = 154.684098
+## iteration: 6
+##  f(x) = 154.571590
+## iteration: 7
+##  f(x) = 154.562292
+## iteration: 8
+##  f(x) = 154.561975
+## iteration: 9
+##  f(x) = 154.561931
+## 
+## DEBUG: Convergence! 
+##        Iteration  0.0 
+##        Converge   = 0 
+##        nll        = 154.5619 
+##        parameters = 0.6606883, -0.0159336 
+## DEBUG: MCDS lnl = -154.5619        mrds lnl = 154.5619
+
## AIC= 313.124
+
## 
+## Half-normal key function selected.
+
## No survey area information supplied, only estimating detection function.
+

First the half-normal with no adjustments is run; for this model the MCDS.exe software is run first, followed by the R-based (mrds) optimizer. Both converge and both give the same nll (negative log-likelihood) or 154.5692, giving an AIC of 311.138. The model with half-normal and a cosine adjustment of order 2 is then fitted to the data, with first the MCDS.exe optimizer and then the R-based optimizer. Again both give the same result of nll 154.5619 and an AIC of 313.124. This is higher than the AIC with no adjustments so half-normal with no adjustments is chosen.

+

In this case, both optimizers produced the same result, so there is no benefit to run MCDS.exe.

+
+
+

Specifying which optimzier to run +

+

As we said earlier, the default behaviour when MCDS.exe has been downloaded is to run both MCDS.exe and the R-based optimizer. However, the optimizer argument can be used to specify which to use – either both, R or MCDS. Here is an example with just the MCDS.exe optimizer:

+
+ds.model <- ds(tee.data, truncation = 4, optimizer = "MCDS")
+
## Starting AIC adjustment term selection.
+
## Fitting half-normal key function
+
## AIC= 311.138
+
## Fitting half-normal key function with cosine(2) adjustments
+
## AIC= 313.124
+
## 
+## Half-normal key function selected.
+
## No survey area information supplied, only estimating detection function.
+
+summary(ds.model)
+
## 
+## Summary for distance analysis 
+## Number of observations :  124 
+## Distance range         :  0  -  4 
+## 
+## Model       : Half-normal key function 
+## AIC         :  311.1385 
+## Optimisation:  MCDS.exe 
+## 
+## Detection function parameters
+## Scale coefficient(s):  
+##              estimate         se
+## (Intercept) 0.6632378 0.09981136
+## 
+##                        Estimate          SE         CV
+## Average p             0.5842718  0.04637577 0.07937362
+## N in covered region 212.2300013 20.85133459 0.09824876
+

The summary output now says Optimisation: MCDS.exe.

+
+
+

Demonstration using ddf in mrds package +

+

Here we demonstrate using both optimizers in the ddf function, rather than via ds.

+
+#Half normal detection function
+ddf.model <- ddf(dsmodel = ~mcds(key = "hn", formula = ~1), data = tee.data, method = "ds",
+                 meta.data = list(width = 4))
+#Half normal with cos(2) adjustment
+ddf.model.cos2 <- ddf(dsmodel = ~mcds(key = "hn", adj.series = "cos", adj.order = 2, formula = ~1),
+                      data = tee.data, method = "ds", meta.data = list(width = 4))
+#Compare with AIC
+AIC(ddf.model, ddf.model.cos2)
+
##                df      AIC
+## ddf.model       1 311.1385
+## ddf.model.cos2  2 313.1239
+
+#Model with no adjustment term has lower AIC; show summary of this model
+summary(ddf.model)
+
## 
+## Summary for ds object
+## Number of observations :  124 
+## Distance range         :  0  -  4 
+## AIC                    :  311.1385 
+## Optimisation           :  mrds (nlminb) 
+## 
+## Detection function:
+##  Half-normal key function 
+## 
+## Detection function parameters 
+## Scale coefficient(s): 
+##              estimate         se
+## (Intercept) 0.6632435 0.09981249
+## 
+##                        Estimate          SE         CV
+## Average p             0.5842744  0.04637627 0.07937412
+## N in covered region 212.2290462 20.85130344 0.09824906
+

As an exercise, fit using just the MCDS.exe optimizer:

+
+ddf.model <- ddf(dsmodel = ~mcds(key = "hn", adj.series = "cos", adj.order = 2, 
+                               formula = ~1), data = tee.data, method = "ds",
+                 meta.data = list(width = 4),
+                 control = list(optimizer = "MCDS"))
+summary(ddf.model)
+
## 
+## Summary for ds object
+## Number of observations :  124 
+## Distance range         :  0  -  4 
+## AIC                    :  313.1239 
+## Optimisation           :  MCDS.exe 
+## 
+## Detection function:
+##  Half-normal key function with cosine adjustment term of order 2 
+## 
+## Detection function parameters 
+## Scale coefficient(s): 
+##              estimate        se
+## (Intercept) 0.6606782 0.1043327
+## 
+## Adjustment term coefficient(s):  
+##                 estimate        se
+## cos, order 2 -0.01593274 0.1351281
+## 
+##                        Estimate          SE        CV
+## Average p             0.5925856  0.08165144 0.1377884
+## N in covered region 209.2524623 31.22790760 0.1492356
+
+
+
+

Point transect example - wren data +

+

This is an example of point transect data for a bird (wren), from Buckland (2006). In this case one of the optimizers fails correctly to constrain the detection function so the probability of detection is more than zero at all distances, and so we use the other optimizer for inference.

+

We load the wren 5 minute example dataset and define cutpoints for the distances (they were collected in intervals).

+
+data("wren_5min")
+bin.cutpoints.100m <- bin.cutpoints <- c(0, 10, 20, 30, 40, 60, 80, 100)
+

The following call to ds gives several warnings. Some warnings are about the detection function being less than zero at some distances. There is also a warning about the Hessian (which is used for variance estimation), but this relates to the Hermite(4, 6) model (i.e., two Hermite adjustment terms of order 4 and 6) which is not chosen using AIC and so this warning can be ignored.

+
+wren5min.hn.herm.t100 <- ds(data = wren_5min, key = "hn", adjustment = "herm", 
+                            transect = "point", cutpoints = bin.cutpoints.100m)
+
## Warning in create_bins(data, cutpoints): Some distances were outside bins and
+## have been removed.
+
## Starting AIC adjustment term selection.
+
## Fitting half-normal key function
+
## AIC= 427.471
+
## Fitting half-normal key function with Hermite(4) adjustments
+
## Warning in check.mono(result, n.pts = control$mono.points): Detection function
+## is less than 0 at some distances
+
## Warning in check.mono(result, n.pts = control$mono.points): Detection function
+## is less than 0 at some distances
+
## AIC= 422.228
+
## Fitting half-normal key function with Hermite(4,6) adjustments
+
## Warning: First partial hessian is singular and second-partial hessian is NULL, no hessian
+## Warning: Detection function is less than 0 at some distances
+## Warning: Detection function is less than 0 at some distances
+
## AIC= 423.255
+
## 
+## Half-normal key function with Hermite(4) adjustments selected.
+
## Warning in mrds::check.mono(model, n.pts = 10): Detection function is less than
+## 0 at some distances
+
+summary(wren5min.hn.herm.t100)
+
## 
+## Summary for distance analysis 
+## Number of observations :  132 
+## Distance range         :  0  -  100 
+## 
+## Model       : Half-normal key function with Hermite polynomial adjustment term of order 4 
+## 
+## Strict monotonicity constraints were enforced.
+## AIC         :  422.2284 
+## Optimisation:  MCDS.exe 
+## 
+## Detection function parameters
+## Scale coefficient(s):  
+##             estimate    se
+## (Intercept) 12.08697 1e+05
+## 
+## Adjustment term coefficient(s):  
+##                estimate         se
+## herm, order 4 0.5723854 0.07888508
+## 
+##                        Estimate         SE         CV
+## Average p             0.4399177  0.0253475 0.05761875
+## N in covered region 300.0561563 26.0944820 0.08696533
+## 
+## Summary statistics:
+##     Region Area CoveredArea Effort   n  k     ER     se.ER      cv.ER
+## 1 Montrave 33.2     2010619     64 132 32 2.0625 0.1901692 0.09220324
+## 
+## Abundance:
+##   Label    Estimate           se        cv         lcl         ucl       df
+## 1 Total 0.004954625 0.0005386969 0.1087261 0.003988075 0.006155428 57.83608
+## 
+## Density:
+##   Label     Estimate           se        cv          lcl          ucl       df
+## 1 Total 0.0001492357 1.622581e-05 0.1087261 0.0001201227 0.0001854045 57.83608
+

The MCDS.exe optimizer is the chosen one (see the `Optimisation’ line of output).

+

The warnings persist if only the MCDS.exe optimizer is used:

+
+wren5min.hn.herm.t100.mcds <- ds(data = wren_5min, key = "hn", adjustment = "herm", 
+                            transect = "point", cutpoints = bin.cutpoints.100m,
+                            optimizer = "MCDS")
+
## Warning in create_bins(data, cutpoints): Some distances were outside bins and
+## have been removed.
+
## Starting AIC adjustment term selection.
+
## Fitting half-normal key function
+
## AIC= 427.471
+
## Fitting half-normal key function with Hermite(4) adjustments
+
## Warning in check.mono(result, n.pts = control$mono.points): Detection function
+## is less than 0 at some distances
+
## Warning in check.mono(result, n.pts = control$mono.points): Detection function
+## is less than 0 at some distances
+
## AIC= 422.228
+
## Fitting half-normal key function with Hermite(4,6) adjustments
+
## Warning: First partial hessian is singular and second-partial hessian is NULL, no hessian
+## Warning: Detection function is less than 0 at some distances
+## Warning: Detection function is less than 0 at some distances
+
## AIC= 423.255
+
## 
+## Half-normal key function with Hermite(4) adjustments selected.
+
## Warning in mrds::check.mono(model, n.pts = 10): Detection function is less than
+## 0 at some distances
+

Looking at a plot of the fitted object (Figure 1), it seems that the evaluated pdf is less than 0 at distances close to the truncation point (approx. 95m and greater):

+
+plot(wren5min.hn.herm.t100.mcds, pdf = TRUE)
+
+ +PDF of fitted model with MCDS optimizer.

+Figure 1: PDF of fitted model with MCDS optimizer. +

+
+

What appears to be happening here is a failure of the optimization routine to appropriately constrain the model parameters so that the detection function is valid. This happens on occasion (the routines aren’t perfect!) and where it does we recommend trying the other optimization routine. Here we use the R-based optimizer:

+
+wren5min.hn.herm.t100.r <- ds(data=wren_5min, key="hn", adjustment="herm", 
+                            transect="point", cutpoints=bin.cutpoints.100m,
+                            optimizer = "R")
+
## Warning in create_bins(data, cutpoints): Some distances were outside bins and
+## have been removed.
+
## Starting AIC adjustment term selection.
+
## Fitting half-normal key function
+
## AIC= 427.471
+
## Fitting half-normal key function with Hermite(4) adjustments
+
## AIC= 422.73
+
## Fitting half-normal key function with Hermite(4,6) adjustments
+
## AIC= 424.717
+
## 
+## Half-normal key function with Hermite(4) adjustments selected.
+

Here the fitted AIC for the chosen model (half normal with one Hermite adjustment of order 4) is 422.73, higher than that with the MCDS.exe optimizer (which was 422.23), which explains why the MCDS.exe optimizer fit was chosen when we allowed ds to choose freely. However, the detection function fit from MCDS.exe was invalid, because it went lower than 0 at about 95m, while the fit with the R-based optimizer looks valid (Figure 2):

+
+plot(wren5min.hn.herm.t100.r, pdf = TRUE)
+
+ +PDF of fitted model with R-based optimizer.

+Figure 2: PDF of fitted model with R-based optimizer. +

+
+

Hence in this case, we would use the R-based optimizer’s fit.

+
+
+

Camera trap example +

+

For this example, it helps if you are familiar with the Analysis of camera trapping data vignette on the distance sampling web site.

+

You also need to Download from the Dryad data repository the detection distances for the full daytime data set and then read it in with the code below:

+
+#Read in data and set up data for analysis
+DuikerCameraTraps <- read.csv(file="DaytimeDistances.txt", header=TRUE, sep="\t")
+DuikerCameraTraps$Area <- DuikerCameraTraps$Area / (1000*1000)
+DuikerCameraTraps$object <- NA
+DuikerCameraTraps$object[!is.na(DuikerCameraTraps$distance)] <- 1:sum(!is.na(DuikerCameraTraps$distance))
+
+#Specify breakpoints and truncation
+trunc.list <- list(left=2, right=15)
+mybreaks <- c(seq(2, 8, 1), 10, 12, 15)
+

Then we fit the detection function selected in the camera trap vignette, uniform plus 3 cosine adjustment terms, and time how long the fitting takes:

+
+start.time <- Sys.time()
+uni3.r <- ds(DuikerCameraTraps, transect = "point", key="unif", adjustment = "cos",
+           nadj=3, cutpoints = mybreaks, truncation = trunc.list, optimizer = "R")
+
## Warning in create_bins(data, cutpoints): Some distances were outside bins and
+## have been removed.
+
## Fitting uniform key function with cosine(1,2,3) adjustments
+
## AIC= 44012.238
+
+R.opt.time <- Sys.time() - start.time
+summary(uni3.r)
+
## 
+## Summary for distance analysis 
+## Number of observations :  10284 
+## Distance range         :  2  -  15 
+## 
+## Model       : Uniform key function with cosine adjustment terms of order 1,2,3 
+## 
+## Strict monotonicity constraints were enforced.
+## AIC         :  44012.24 
+## Optimisation:  mrds (slsqp) 
+## 
+## Detection function parameters
+## Scale coefficient(s):  
+## NULL
+## 
+## Adjustment term coefficient(s):  
+##                 estimate         se
+## cos, order 1  0.93529846 0.01504415
+## cos, order 2 -0.05342058 0.02438026
+## cos, order 3 -0.08069257 0.01557680
+## 
+##                         Estimate           SE         CV
+## Average p           3.290022e-01 1.349494e-02 0.04101777
+## N in covered region 3.125815e+04 1.306764e+03 0.04180555
+## 
+## Summary statistics:
+##   Region  Area CoveredArea   Effort     n  k           ER        se.ER    cv.ER
+## 1    Tai 40.37 21858518573 31483179 10284 21 0.0003266506 8.763252e-05 0.268276
+## 
+## Abundance:
+##   Label     Estimate           se        cv          lcl          ucl       df
+## 1 Total 5.772996e-05 1.566754e-05 0.2713936 3.315829e-05 0.0001005103 20.94597
+## 
+## Density:
+##   Label     Estimate           se        cv          lcl          ucl       df
+## 1 Total 1.430021e-06 3.880986e-07 0.2713936 8.213597e-07 2.489727e-06 20.94597
+

Fitting takes 10 secs. (Note, in versions of Distance before 2.0.0 this was a much higher number!) Here we try the MCDS.exe optimizer:

+
+start.time <- Sys.time()
+uni3.mcds <- ds(DuikerCameraTraps, transect = "point", key="unif", adjustment = "cos",
+                nadj=3, cutpoints = mybreaks, truncation = trunc.list, optimizer = "MCDS")
+
## Warning in create_bins(data, cutpoints): Some distances were outside bins and
+## have been removed.
+
## Fitting uniform key function with cosine(1,2,3) adjustments
+
## AIC= 44012.211
+
+MCDS.opt.time <- Sys.time() - start.time
+summary(uni3.mcds)
+
## 
+## Summary for distance analysis 
+## Number of observations :  10284 
+## Distance range         :  2  -  15 
+## 
+## Model       : Uniform key function with cosine adjustment terms of order 1,2,3 
+## 
+## Strict monotonicity constraints were enforced.
+## AIC         :  44012.21 
+## Optimisation:  MCDS.exe 
+## 
+## Detection function parameters
+## Scale coefficient(s):  
+## NULL
+## 
+## Adjustment term coefficient(s):  
+##                 estimate         se
+## cos, order 1  0.93518220 0.01504583
+## cos, order 2 -0.05345965 0.02438049
+## cos, order 3 -0.08073799 0.01557817
+## 
+##                         Estimate           SE         CV
+## Average p           3.290679e-01 1.349917e-02 0.04102246
+## N in covered region 3.125191e+04 1.306645e+03 0.04181008
+## 
+## Summary statistics:
+##   Region  Area CoveredArea   Effort     n  k           ER        se.ER    cv.ER
+## 1    Tai 40.37 21858518573 31483179 10284 21 0.0003266506 8.763252e-05 0.268276
+## 
+## Abundance:
+##   Label     Estimate           se        cv          lcl          ucl       df
+## 1 Total 5.771844e-05 1.566445e-05 0.2713943 3.315164e-05 0.0001004903 20.94619
+## 
+## Density:
+##   Label     Estimate           se        cv         lcl          ucl       df
+## 1 Total 1.429736e-06 3.880222e-07 0.2713943 8.21195e-07 2.489232e-06 20.94619
+

This took a little less time: 9 secs. Hence, for some datasets, it may be quicker to use the MCDS.exe optimizer. This could make a significant difference if using the nonparametric bootstrap to estimate variance. However, after making improvements to the optimizer in mrds 3.0.0 and Distance 2.0.0 the difference is generally small, and in many cases the R optimizer is faster than MCDS.exe so this is likely not a productive avenue to pursue in general.

+
+
+

Discussion +

+

We have shown how to fit distance sampling detection functions (for single platform data) using either the R-based optimizer built into the ddf function (via calling ddf or, more likely, calling the ds function in the Distance package) or the MCDS.exe analysis engine used by Distance for Windows. In the vast majority of cases both fitting methods give the same result, and so there is no need to use both. However, the only downside is that fitting takes longer, as each is called in turn. If you have downloaded the MCDS.exe file and want to speed things up, you can use just the R-based optimizer by specifying optimizer = "R" in the call to ds or ddf, or just the MCDS.exe optimizer with optimizer = "MCDS".

+

Some situations where the two may produce different results are given below. Note that in each case we give an update related to new algorithms developed and used in mrds 3.0.0.

+
    +
  • +

    Detection functions that are close to non-monotonic or close to zero at some distances. When adjustment terms are used in the detection function, then constraints are required to prevent the fitted function from having “bumps” where detection probability increases with increasing distance and also to prevent detection probability from becoming less than zero. The former are called monotonicity constraints and are set using the monotonicity argument in ds or in the meta.data argument in ddf; monotonicity is set on by default. In practice, monotonicity and values less than zero are monitored at a finite set of distances between the 0 and the right truncation point, and (for historical reasons) this set of distances is different for the R-based and MCDS.exe optimizers. This typically makes no difference to the optimization, but particularly in borderline cases it can result in different fitted functions. Plotting the fitted functions (as we did in the wren example above) can reveal when there is an issue with a fitted function, and if this occurs the associated optimizer should not be used. In the future we plan to bring the two into line so they use the same distances for checking.

    +
      +
    • Update: As of mrds 3.0.0 and Distance 2.0.0 these are now aligned, so this difference should have gone away.
    • +
    +
  • +
  • Detection functions with many adjustment terms. The two optimizers use different algorithms for optimization: the R-based optimizer uses a routine called nlminb while MCDS.exe uses a nonlinear constrained optimizer routine produced by the IMSL group. In cases where there are multiple adjustment terms, and hence several parameters to estimate (that are often correlated) the likelihood maximization is harder, and one or other routine can sometimes fail to find the maximum. In this case, choosing the routine with the higher likelihood (i.e., lower negative log-likelihod, or equivalently lower AIC) is the right thing to do, and this is the default behaviour of the software.

  • +
  • Update: in mrds 3.0.0 we now use a Sequential Least Squares Programming (SLSQP) algorithm from the ‘nloptr’ package via nlminb in the R-based optimizer (rather than the old solnp algorithm). The old algorithm can be accessed from the ds() function in Distance using the argument mono_method = "solnp" or with the ddf() function in mrds using the argument control(mono.method = "solnp"). However, the new one shows improved performance in our testing, and so we do not recommend using the old algorithm except for reasons of backwards compatibility.

  • +
  • Detection functions that are “overdispersed” or with a “spike” in the detection function close to zero distance. Similarly to the above, the detection function can then be hard to maximize and hence on or other optimizer can fail to find the maximum. Solution is as above. Overdispersed data is common in camera trap distance sampling because many detections can be generated by the same individual crossing in front of the camera.

  • +
  • Update is as above.

  • +
+

If you are interested in seeing more comparisons of the optimizers on various datasets, we maintain a test suite of both straightforward and challenging datasets together with test code to run and compare the two optimizers – this is available at the MCDS_mrds_compare repository.

+

If you encounter difficulties when using both optimizers, one possible troubleshooting step is to run the analysis first choosing one optimizer (e.g., specifing the argument optimizer = "MCDS") and then choosing the other (optimizer = "R"). This allows you clearly to see what the output of each optimizer is (including any error messages) and facilitates their comparison.

+

One other criterion to favour one optimizer over the other is speed. We found that for large datasets the MCDS.exe optimizer was quicker, but as of Distance 2.0.0 and mrds 3.0.0 this is no longer necessarily the case.

+

One thing to note is that the MCDS.exe file will get deleted each time you update the mrds package, so you’ll need to re-download the file if you want to continue using the MCDS.exe optimizer. As shown above, this only requires running one line of code.

+
+
+

References +

+
+
+Buckland, S. T. (2006). Point transect surveys for songbirds: Robust methodologies. The Auk, 123(2), 345–345. https://doi.org/10.1642/0004-8038(2006)123[345:psfsrm]2.0.co;2 +
+
+Buckland, S., Rexstad, E., Marques, T., & Oedekoven, C. (2015). Distance sampling: Methods and applications. Springer. +
+
+Thomas, L., Buckland, S. T., Rexstad, E. A., Laake, J. L., Strindberg, S., Hedley, S. L., … Marques, T. A. (2010). Distance software: Design and analysis of distance sampling surveys for estimating population size. Journal of Applied Ecology, 47, 5–14. https://doi.org/110.1111/j.1365-2664.2009.01737.x +
+
+
+
+
+ + + +
+ + + +
+
+ + + + + + + diff --git a/docs/articles/web-only/alt-optimise/mcds-dot-exe_files/figure-html/mcds-1.png b/docs/articles/web-only/alt-optimise/mcds-dot-exe_files/figure-html/mcds-1.png new file mode 100644 index 0000000..53e54f4 Binary files /dev/null and b/docs/articles/web-only/alt-optimise/mcds-dot-exe_files/figure-html/mcds-1.png differ diff --git a/docs/articles/web-only/alt-optimise/mcds-dot-exe_files/figure-html/usingr-1.png b/docs/articles/web-only/alt-optimise/mcds-dot-exe_files/figure-html/usingr-1.png new file mode 100644 index 0000000..a7edfeb Binary files /dev/null and b/docs/articles/web-only/alt-optimise/mcds-dot-exe_files/figure-html/usingr-1.png differ diff --git a/docs/articles/web-only/arapaho.jpg b/docs/articles/web-only/arapaho.jpg new file mode 100644 index 0000000..4633ecf Binary files /dev/null and b/docs/articles/web-only/arapaho.jpg differ diff --git a/docs/articles/web-only/cues/cuecounts-distill.html b/docs/articles/web-only/cues/cuecounts-distill.html new file mode 100644 index 0000000..7d5f384 --- /dev/null +++ b/docs/articles/web-only/cues/cuecounts-distill.html @@ -0,0 +1,287 @@ + + + + + + + +Analysis of cue count surveys • Distance + + + + + + + + + + + + Skip to contents + + +
+ + +
+
+ + + +

In this exercise, we use R (R Core Team, 2019) and the Distance package (Miller, Rexstad, Thomas, Marshall, & Laake, 2019) to fit different detection function models to point transect cue count survey data of winter wren (Troglodytes troglodytes) density and abundance. These data were part of a study described by Buckland (2006).

+
+

Objectives +

+
    +
  • Estimate density of cues from point transect data
  • +
  • Convert cue density to animal density using rate of song production
  • +
+
+
+

Survey design +

+

Each of the 32 point count stations were visited twice. During each visit, the observer recorded distances to all songs detected during a 5-minute sampling period (Figure 1).

+
+ +Montrave study area; white circles are point count stations.

+Figure 1: Montrave study area; white circles are point count stations. +

+
+

In addition, 43 male winter wrens were observed and their rate of song production was measured. The mean cue rate, along with its standard error (between individuals) was calculated and included in the data set to serve as a multiplier.

+

The fields of the wren_cuecount data set are:

+
    +
  • Region.Label - identifier of regions: in this case there is only one region and set to ‘Montrave’
  • +
  • Area - size of the study region (hectares): 33.2ha
  • +
  • Sample.Label - point transect identifier (numbered 1-32)
  • +
  • Cue.rate - production of cues (per minute)
  • +
  • Cue.rate.SE - standard error of cue production rate (between individuals)
  • +
  • object - unique identifier for each detected winter wren
  • +
  • distance - radial distance (metres) to each detection
  • +
  • Search.time - Duration of listening at each station (minutes)
  • +
  • Study.Area - this is the name of the study, ‘Montrave 3’
  • +
+
+
+

Accessing the Distance package and cue count data +

+

This command assumes that the dsdata package has been installed on your computer. The R workspace wren_cuecount contains detections of winter wrens from the line transect surveys of Buckland (2006).

+
+library(Distance)
+data(wren_cuecount)
+

Examine the first few rows of wren_cuecount using the function head()

+
+head(wren_cuecount)
+
##   Region.Label Area Sample.Label Cue.rate Cue.rate.SE object distance
+## 1     Montrave 33.2            1   1.4558      0.2428     38       50
+## 2     Montrave 33.2            1   1.4558      0.2428     39       55
+## 3     Montrave 33.2            1   1.4558      0.2428     40       55
+## 4     Montrave 33.2            1   1.4558      0.2428     41       55
+## 5     Montrave 33.2            1   1.4558      0.2428     46       50
+## 6     Montrave 33.2            1   1.4558      0.2428     47       50
+##   Study.Area Search.time
+## 1 montrave 3          10
+## 2 montrave 3          10
+## 3 montrave 3          10
+## 4 montrave 3          10
+## 5 montrave 3          10
+## 6 montrave 3          10
+

Note there is no field in the data to indicate sampling effort. With line transects, the lengths of each transect were provided to measure effort. For point transects, the number of visits to each station was specified. In this data set, all that is specified is Search.time the length of time each station was sampled. Note, each station was visited twice and sampling was 5 minutes in length on each visit. Hence Search.time is recorded as 10. Note also the units of measure of Search.time must be consistent with the units of measure of cue rate.

+
+
+

Examine the distribution of detection distances +

+

Gain familiarity with the perpendicular distance data using the hist() function (Figure 2).

+
+hist(wren_cuecount$distance, xlab="Distance (m)", main="Song detection distances")
+
+ +Radial detection distances of winter wren song bursts.

+Figure 2: Radial detection distances of winter wren song bursts. +

+
+

Note the long right tail we will cut off with the truncation argument to ds().

+
+
+

Fitting a simple detection function model with ds +

+

As noted above, Effort is missing from the data. With cue count surveys, effort is measured in time rather than length or number of visits. Therefore we define a new field Effort and set it equal to the Search.time field.

+

Note: no converstion.factor is specified in the call to ds() because it is only the detection function that is of interest at this step of the analysis, nothing about density or abundance.

+
+conversion.factor <- convert_units("meter", NULL, "hectare")
+wren_cuecount$Effort <- wren_cuecount$Search.time
+wrensong.hr <- ds(wren_cuecount, transect="point", key="hr", adjustment=NULL, 
+                  truncation=100)
+

Visually inspect the fitted detection function with the plot() function, specifying the cutpoints histogram with argument breaks (Figure 3).

+
+cutpoints <- c(0,5,10,15,20,30,40,50,65,80,100)
+plot(wrensong.hr, breaks=cutpoints, pdf=TRUE, main="Hazard rate function fit to winter wren song counts.")
+
+ +Fit of hazard rate detection function to winter wren song detection distances.

+Figure 3: Fit of hazard rate detection function to winter wren song detection distances. +

+
+
+

Caution +

+

Do not examine the abundance or density estimates produced by summary(wrensong.hr) because as the results it contains are nonsense. These summary values do not properly recognise that the unit of effort is time rather than visits for the point count survey. This additional component of the analysis is provided in the next step.

+
+
+
+

Introducing a new function dht2 +

+

The function dht2 provides additional capacity for providing density or abundance estimates in novel situations such as cue counts where multipliers need to be incorporated.

+

The argument multipliers in dht2 provides the mechanism whereby the cue production rate and its uncertainty are incorporated into the analysis.

+

To properly perform the calculations responsible for converting song density to bird density, we enlist the aide of the function dht2. The additional information about cue rates and their variability are provided in a list. The multiplier in the list is required to have the name creation and it contains both the cue rate point estimate and its associated measure of precision.

+
+cuerate <- unique(wren_cuecount[ , c("Cue.rate","Cue.rate.SE")])
+names(cuerate) <- c("rate", "SE")
+(mult <- list(creation=cuerate))
+
## $creation
+##     rate     SE
+## 1 1.4558 0.2428
+

Additional arguments are also passed to dht2. flatfile is the name of the data set and strat_formula contains information about stratification that might exist in the survey design. The Montrave study had no stratification, inference was only for the 33 hectare woodland, so strat_formula here is simply constant ~1.

+

Results of the overall winter wren density estimate is provided by a print method, specifying report="density". The alternative for the report argument is report="abundance".

+
+wren.estimate <- dht2(wrensong.hr, flatfile=wren_cuecount, strat_formula=~1,
+                 multipliers=mult, convert_units=conversion.factor)
+print(wren.estimate, report="density")
+
## Density estimates from distance sampling
+## Stratification : geographical 
+## Variance       : P2, n/L 
+## Multipliers    : creation 
+## Sample fraction : 1 
+## 
+## 
+## Summary statistics:
+##  .Label Area CoveredArea Effort   n  k    ER se.ER cv.ER
+##   Total 33.2     1005.31    320 771 32 2.409 0.236 0.098
+## 
+## Density estimates:
+##  .Label Estimate    se    cv    LCI    UCI      df
+##   Total   1.2018 0.238 0.198 0.8172 1.7674 520.679
+## 
+## Component percentages of variance:
+##  .Label Detection    ER Multipliers
+##   Total      4.83 24.38       70.79
+
+

Absolute goodness of fit +

+

We assess the goodness of fit of the hazard rate model to the winter wren cue count data (Figure 4).

+
+gof_ds(wrensong.hr)
+
+ +Q-Q plot of hazard rate model to winter wren radial detection distances.

+Figure 4: Q-Q plot of hazard rate model to winter wren radial detection distances. +

+
+
## 
+## Goodness of fit results for ddf object
+## 
+## Distance sampling Cramer-von Mises test (unweighted)
+## Test statistic = 1.69439 p-value = 6.24759e-05
+

Note the distinct lack of fit to the song data. This is because of many detections at the identical distances from birds being stationary and singing. This induces a phenomenon known as over dispersion.

+
+
+
+

Notes regarding the cue count estimates of Montrave winter wrens +

+

This vignette uses the function dht2 because that function knows how to incorporate multipliers such as cue rates and propogate the uncertainty in cue rate into overall uncertainty in density and abundance. Because there is uncertainty coming not only from encounter rate variability and uncertainty in detection function parameters, but also from cue rate variability, the relative contribution of each source of uncertainty is tablated. This is the last table produced by printing the wren.estimate object. For the Montrave winter wren data, only 4% of the uncertainty in the density estimate is attributable to the detection function, 24% attributable to encounter rate variability and 71% attributable to between-individual variability in call rate.

+

This insight suggests that if this survey was to be repeated, exerting more effort in measuring between-individual variation in call rate would likely yield the most benefits in tightening the precision in density estimates.

+

Also note the poor fit of the model to the data; the P-value for the Cramer von-Mises test is <<0.05. This is caused by over-dispersion in the distribution of detected call distances. A single individual may sit on a tree branch and emit many song bursts, leading to a jagged distribution of call distances that is not well fitted by a smooth detection function. That over-dispersion will not bias the density estimates.

+
+
+

References +

+
+
+Buckland, S. T. (2006). Point transect surveys for songbirds: Robust methodologies. The Auk, 123(2), 345–345. https://doi.org/10.1642/0004-8038(2006)123[345:psfsrm]2.0.co;2 +
+
+Miller, D. L., Rexstad, E., Thomas, L., Marshall, L., & Laake, J. L. (2019). Distance sampling in r. Journal of Statistical Software, 89(1), 1–28. https://doi.org/10.18637/jss.v089.i01 +
+
+R Core Team. (2019). R: A language and environment for statistical computing. Vienna Austria: R Foundation for Statistical Computing. +
+
+
+
+
+ + + +
+ + + +
+
+ + + + + + + diff --git a/docs/articles/web-only/cues/cuecounts-distill_files/figure-html/fit-1.png b/docs/articles/web-only/cues/cuecounts-distill_files/figure-html/fit-1.png new file mode 100644 index 0000000..5e77170 Binary files /dev/null and b/docs/articles/web-only/cues/cuecounts-distill_files/figure-html/fit-1.png differ diff --git a/docs/articles/web-only/cues/cuecounts-distill_files/figure-html/gof-1.png b/docs/articles/web-only/cues/cuecounts-distill_files/figure-html/gof-1.png new file mode 100644 index 0000000..31d5b51 Binary files /dev/null and b/docs/articles/web-only/cues/cuecounts-distill_files/figure-html/gof-1.png differ diff --git a/docs/articles/web-only/cues/cuecounts-distill_files/figure-html/hist-1.png b/docs/articles/web-only/cues/cuecounts-distill_files/figure-html/hist-1.png new file mode 100644 index 0000000..5d5fde0 Binary files /dev/null and b/docs/articles/web-only/cues/cuecounts-distill_files/figure-html/hist-1.png differ diff --git a/docs/articles/web-only/cues/montrave.jpg b/docs/articles/web-only/cues/montrave.jpg new file mode 100644 index 0000000..01bc5bf Binary files /dev/null and b/docs/articles/web-only/cues/montrave.jpg differ diff --git a/docs/articles/web-only/differences/differences.html b/docs/articles/web-only/differences/differences.html new file mode 100644 index 0000000..a8c4acd --- /dev/null +++ b/docs/articles/web-only/differences/differences.html @@ -0,0 +1,290 @@ + + + + + + + +Detecting density estimate differences • Distance + + + + + + + + + + + + Skip to contents + + +
+ + +
+
+ + + +
+

Management context +

+

Often ecological questions extend beyond simply wanting an estimate of density in a study region. It is common for inference to extend to differences in density over time or space.

+
+
+

Conventional analysis +

+

In Buckland et al. (2001, Sect. 3.6.5) methods are described to produce tests of significance based on t-test methods. That section presents formulas for comparing two density estimates under two scenarios

+
    +
  • the two estimates have separate detection functions, or
  • +
  • the estimates share a common detection function.
  • +
+

The situation that Buckland et al. (2001) does not consider is the situation in which the two estimates are linked via a covariate in the detection function. Because the t-test framework cannot deal with this intermediate situation, an alternative approach, employing the bootstrap, can be employed. The bootstrap provides the added advantage that no parametric assumptions (t-distribution) need to be invoked when making inference.

+
+
+

Bootstrap analysis +

+

A function in the Distance R package (Miller, Rexstad, Thomas, Marshall, & Laake, 2019) exists for computing uncertainty in density estimates via bootstrapping. This vignette demonstrates a function that harnesses the bootdht function to produce a sampling distribution of the difference between pairs of density estimates embedded as strata within a data set.

+

Recognise that strata can represent not only geographic divisions of a study area, but potentially also a survey of the same study area at another time. If a data set is organised in this manner, then the assessment of differences between strata would be an assessment of the possible change in density over time. Furthermore, as shown in the example of multi-species surveys, species could serve as strata. In this context, assessing the difference in stratum-specific density would examine the difference in density between species.

+
+#' @title differences.bootstrap
+#' 
+#' @description Test for pairwise density differences between strata
+#'
+#' Test is performed by producing replicate stratum-specific estimates and calculating
+#' differences of each replicate.  Differencing is done for all pairs of strata in
+#' the survey, e.g. if there are 4 strata there are \code{choose(4,2)=6} pairwise 
+#' comparisons computed.
+#' 
+#' Histograms are produced for each comparison, designating the median of the distribution
+#' and a percentile-based 95% confidence interval from the sampling distribution
+#' 
+#' Difficulties can arise from very long left or right tails of the distribution
+#' resulting from awkward bootstrap replicates.  The limits of the histogram are
+#' cut off at 5*median so histogram shape does not appear degenerate. Code presumes differences will be positive.
+#'
+#' @param dsobj dsmodel object generated by \code{ds}
+#' @param flatfile flatfile of survey data analysed by \code{ds}
+#' @param nboot number of bootstrap replicates to compute
+#'
+#' @return Histogram showing sampling distribution of differences plus named list
+#' \itemize{
+#'   \item medians - median of sampling distribution
+#'   \item ps - P-value for two-tailed test that difference is zero
+#'   \item thematrix - Matrix of replicate pairwise differences
+#' }
+#' @importFrom Distance bootdht
+#' @export
+#'
+#' @examples
+#' library(Distance)
+#' data(minke)
+#' hn.pooled <- ds(minke)  # pooled detection function with hn key
+#' result <- differences.bootstrap(hn.pooled, minke, nboot=100)
+differences.bootstrap <- function(dsobj, flatfile, nboot) {
+  
+  num.strata <- length(dsobj$dht$individuals$D$Estimate) - 1
+  stopifnot(
+    'first argument is not a dsmodel object'           = class(dsobj) == 'dsmodel',
+    'study area must have >1 stratum'                  = num.strata > 1,
+    'specified flatfile object is not a data.frame   ' = class(flatfile) == 'data.frame'
+  )
+  d.point.ests <- dsobj$dht$individuals$D$Estimate
+  strata.names <- dsobj$dht$individuals$D$Label
+#   Following function used by bootdht to collect density point estimates
+#     from each bootstrap replicate
+  pullout.D <- function(ests, fit) {
+    bill <- ests$individuals$D$Estimate
+    extract <- data.frame(t(bill))
+    colnames(extract) <- ests$individuals$D$Label
+    return(extract)
+  }
+  outcome <- bootdht(dsobj, flatfile=flatfile, cores=10,
+                     summary_fun=pullout.D, nboot=nboot)
+#   Having run the bootstrap, calculate number of pairwise comparisons btwn strata
+#     create objects to receive the replicate-wise differences for each comparison
+#     median differences are reported and empirical P-value computed for each comparison
+#     histograms of sampling distribution for differences are shown with CIs
+#  allstrata <- complete.cases(outcome)
+  num.compare <- choose(num.strata, 2)
+  pairs <- t(combn(1:num.strata, 2))
+  result.matrix <- matrix(data=NA, nrow=nrow(outcome), ncol=num.compare)
+  themedian <- array(data=NA, dim=num.compare)
+  pvalue <- array(data=NA, dim=num.compare)
+  par(mfrow=c(num.compare, 1))
+  for (i in 1:num.compare) {
+    result.matrix[,i] <- mapply('-', outcome[pairs[i,2]], outcome[pairs[i,1]])
+    themedian[i] <- median(result.matrix[,i], na.rm=TRUE)
+    pvalue[i] <- ifelse(themedian[i]>0,
+                        sum(result.matrix[,i]<0, na.rm=TRUE) / sum(!is.na(result.matrix[ ,i])),
+                        sum(result.matrix[,i]>0, na.rm=TRUE) / sum(!is.na(result.matrix[ ,i])))
+    tmp <- result.matrix[ ,i]
+    hist(tmp[abs(tmp)<5*abs(themedian[i])], 
+         breaks=30, xlab="Estimated difference",
+         main=paste("Bootstrap test of equality of two density estimates",
+                    "\nMedian difference=", round(themedian[i],4),
+                    " Two-tailed P-value=", round(2*pvalue[i],4)))
+    abline(v=themedian[i])
+    abline(v=quantile(result.matrix[,i], probs = c(0.025, 0.975), na.rm=TRUE), lty=3)
+    first <- pairs[i, 1]
+    second <- pairs[i, 2]
+    line1 <- bquote(hat(D)[.(strata.names[first])] == .(round(d.point.ests[first], 4)))
+    line2 <- bquote(hat(D)[.(strata.names[second])] == .(round(d.point.ests[second], 4)))
+    legend("topleft", legend=as.expression(c(line1, line2)))
+  }
+  par(mfrow=c(1,1))
+  return(list(medians=themedian, ps=2*pvalue, thematrix=result.matrix))
+}
+
+
+

Examples +

+

Several examples of the use of differences.bootstrap are provided. They make use of data sets that are included in the Distance package.

+
+

Two strata with pooled detection function +

+

The simplest example uses the minke data set that consists of two geographic strata (North and South). A model that can be fitted to these data assumes the two strata share a common detection function

+
+library(Distance)
+data(minke)
+hr.pooled <- ds(minke, key="hr", truncation=1.5)
+result <- differences.bootstrap(hr.pooled, flatfile=minke, nboot=250)
+
+ +Strata share a pooled detection function.

+Figure 1: Strata share a pooled detection function. +

+
+

Output from the function consists primarily of a histogram of the replicate density differences. This approximates the sampling distribution of the estimated density difference. A solid vertical line depicts the median of that distribution (medians are less influenced by outliers than are means). Dotted vertical lines depict the 95th percentiles around the estimated difference. The two-tailed P-value is presented in the histogram main title. In the legend box are presented the density estimates from the two strata, labelled using the Region.Label values found in the dsmodel object passed to the function.

+
+
+

Two strata with stratum as covariate +

+

Working with the same minke data set, we present an alternative analysis in which stratum-specific detection functions are derived using stratum as a covariate in the detection function. Having fitted that detection function model to the data, the comparison of the densities in the strata are performed using the same function.

+
+hr.covar <- ds(minke, key="hr", truncation=1.5, formula=~Region.Label)
+resultcovar <- differences.bootstrap(hr.covar, flatfile=minke, nboot=250)
+
+ +Two strata with Region.Label as a covariate in detection function.

+Figure 2: Two strata with Region.Label as a covariate in detection function. +

+
+

The evidence that densities differ in the two strata appear stronger in this analysis because the dependence in the two estimates is reduced as a result of stratum-specific detection functions being used. Of course, inference would not be drawn from two different analyses of the same data set, this is merely to demonstrate the use of the function. If we were to perform model selection upon the two detection function models fitted to the minke data, we would find the model with stratum as a covariate is preferable and our inference should be based upon this second analysis.

+
+
+

Three strata with stratum as covariate +

+

Another data set, Savannah_sparrow_1980, is derived from a point transect survey of a study area with three strata. We will fit a model with stratum as a covariate and send the result to our function to assess whether there are differences between the three strata.

+
+data("Savannah_sparrow_1980")
+hn.sparrow <- ds(Savannah_sparrow_1980, transect="point", key="hn", truncation="10%", 
+                 convert_units=convert_units("meter", NULL, "hectare"), formula=~Region.Label)
+resultsparrow <- differences.bootstrap(hn.sparrow, 
+                                       flatfile=Savannah_sparrow_1980, 
+                                       nboot=250)
+
+ +Two strata with Region.Label as a covariate in detection function.

+Figure 3: Two strata with Region.Label as a covariate in detection function. +

+
+

Note here, when there are three strata, there are three pairwise comparisons. The function can cope with any number of strata, but recognise the number of comparisons (hence number of histograms) grows rapidly when the number of strata exceeds roughly 5.

+
+
+
+

Limitations +

+

This function cannot compute significance of density estimate differences when estimation is carried out via multiple calls to ds(), as would be the case when analysing data from different study areas residing in different data files. However, based upon the provided code, it should be clear how to produce replicate density estimates via bootdht() and then difference them with a single line of code. Depending upon circumstances, it might also be possible to combine the two data sets into a single data file and treat them as strata which could allow use of the provided function.

+
+
+

References +

+
+
+Buckland, S. T., Anderson, D. R., Burnham, K. P., Laake, J. L., Borchers, D. L., & Thomas, L. (2001). Introduction to distance sampling: Estimating abundance of biological populations. Oxford, New York: Oxford University Press. +
+
+Miller, D. L., Rexstad, E., Thomas, L., Marshall, L., & Laake, J. L. (2019). Distance Sampling in R. Journal of Statistical Software, 89(1), 1–28. https://doi.org/10.18637/jss.v089.i01 +
+
+
+
+
+ + + +
+ + + +
+
+ + + + + + + diff --git a/docs/articles/web-only/differences/differences_files/figure-html/pooled-1.png b/docs/articles/web-only/differences/differences_files/figure-html/pooled-1.png new file mode 100644 index 0000000..301c9d5 Binary files /dev/null and b/docs/articles/web-only/differences/differences_files/figure-html/pooled-1.png differ diff --git a/docs/articles/web-only/differences/differences_files/figure-html/sparrow-1.png b/docs/articles/web-only/differences/differences_files/figure-html/sparrow-1.png new file mode 100644 index 0000000..9220a99 Binary files /dev/null and b/docs/articles/web-only/differences/differences_files/figure-html/sparrow-1.png differ diff --git a/docs/articles/web-only/differences/differences_files/figure-html/two-covar-1.png b/docs/articles/web-only/differences/differences_files/figure-html/two-covar-1.png new file mode 100644 index 0000000..954dd4a Binary files /dev/null and b/docs/articles/web-only/differences/differences_files/figure-html/two-covar-1.png differ diff --git a/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys.html b/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys.html new file mode 100644 index 0000000..7ba4638 --- /dev/null +++ b/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys.html @@ -0,0 +1,529 @@ + + + + + + + +Solving the size bias problem • Distance + + + + + + + + + + + + Skip to contents + + +
+ + +
+
+ + + +

In this example we have a sample of sightings data from eastern tropical Pacific (ETP) offshore spotted dolphin, collected by observers board tuna vessels (the data were made available by the Inter-American Tropical Tuna Commission - IATTC). More details about surveys of dolphins in the ETP can be found in T. Gerrodette & Forcada (2005) and Tim Gerrodette (2008). In the ETP, schools of yellow fin tuna commonly associate with schools of certain species of dolphins, and so vessels fishing for tuna often search for dolphins in the hopes of also locating tuna. For each school detected by the tuna vessels, the observer records the species, sighting angle and distance (later converted to perpendicular distance and truncated at 5 nautical miles), school size, and a number of covariates associated with each detected school.

+

A variety of search methods were used to find the dolphins from these tuna vessels. The coding in the data set is shown below.

+ + + + + + + + + + + + + + + + + + + + + + + + +
+Table 1: Table 2: Search method coding from tuna vessels in ETP. +
+Method + +code +
+Crows nest + +0 +
+Bridge + +2 +
+Helicopter + +3 +
+Radar + +5 +
+

Some of these methods may have a wider range of search than the others, and so it is possible that the detection function varies according to the method being used.

+

For each sighting the initial cue type is recorded. This may be birds flying above the school, splashes on the water, floating objects such as logs, or some other unspecified cue.

+ + + + + + + + + + + + + + + + + + + + + + + + +
+Table 3: Table 4: Cue coding from tuna vessels in ETP. +
+Cue + +code +
+Birds + +1 +
+Splashes + +2 +
+Unspecified cue + +3 +
+Floating objects + +4 +
+

Another covariate that potentially affects the detection function is sea state. Beaufort levels are grouped into two categories, the first including Beaufort values ranging from 0 to 2 (coded as 1) and the second containing values from 3 to 5 (coded as 2).

+

The sample data encompasses sightings made over a three month summer period.

+ + + + + + + + + + + + + + + + + + + + +
+Table 5: Table 6: Month coding from tuna vessels in ETP. +
+Month + +code +
+June + +6 +
+July + +7 +
+August + +8 +
+
+

Prepare data for analysis +

+
+
+

Exploratory data analysis +

+

As described, there are a number of potential covariates that might influence dolphin detectability. Rather than throw all covariates into detection function models, examine the distribution of detection distances (y-axis of figure below) as a function of the plausible factor covariates.

+
+ +Exploratory data analysis using violin plots.  Prepared using the `vioplot` package.  Number of detections show above plots.

+Figure 1: Exploratory data analysis using violin plots. Prepared using the vioplot package. Number of detections show above plots. +

+
+

From Fig. 1 there are several decisions to be made concerning the remaining analysis:

+
    +
  • there is no discernible effect of month or sea state upon distribution of detection distances in this data set. Those covariates will not feature in subsequent modelling.
    +
  • +
  • the distribution of detection distances by cue type appears to differ for splashes and floating objects. However, the number of detections associated with splash (n=25) or float objects (n=22) cues is small, accounting for ~4% of the total number of detections. I choose to ignore variability in detection probability associated with cue type.
  • +
  • shape of the distribution of detections likely does change for the different search methods. However, the method for which detection distances are most different is the helicopter. The violin plot shows there to be roughly an equal number of pods detected between 4 and 5 nautical miles as were detected between 0 and 1 nautical miles. +
      +
    • the proper way to handle this situation would be to remove helicopter sightings from the detection function modelling. Detectability could be assumed perfect out to the truncation distance, hence treat the helicopter portion of the survey as a strip transect. The number of pods detected by helicopters could be added into the estimated number of pods within the covered area. We will remove detections by helicopter from the remainder of our analysis.
    • +
    +
  • +
  • the number of detections by radar is small and unlikely to exert much influence upon detection function modelling.
  • +
+
+

Evidence for size bias +

+

Size bias (Buckland et al., 2001) can be examined by plotting distribution of group size as a function of detection distances.

+
+ +Box plot of observed group sizes by perpendicular distance band. Outliers are not shown; notches indicate discernable difference in mean group size at 2nm.

+Figure 2: Box plot of observed group sizes by perpendicular distance band. Outliers are not shown; notches indicate discernable difference in mean group size at 2nm. +

+
+

Fig. 2 indicates a difference in observed mean group size at 2nm; with average group size being distinctly larger at distances greater than 2nm. Hence, average group size in the sample is an overestimate of the average group size in the population. Our modelling of the detection function will need to counteract this bias by including group size in the detection function.

+
+
+
+

Stage one of detection function modelling +

+

Before creating a host of candidate models, we should address with the question of the appropriate key function for these data. Recall we are not including sightings made from the helicopter platform in our analyses.

+

Fitting models with half normal key function without adjustments and with and without Search.method

+
+hn <- ds(nochopper, key="hn", adjustment = NULL)
+hn.method <- ds(nochopper, key="hn", formula = ~factor(Search.method))
+par(mfrow=c(1,2))
+gof_ds(hn, main="HN key, no adj", cex=0.5)
+
## 
+## Goodness of fit results for ddf object
+## 
+## Distance sampling Cramer-von Mises test (unweighted)
+## Test statistic = 0.656421 p-value = 0.0162635
+
+gof_ds(hn.method, main="HN key + method", cex=0.5)
+
+ +Q-Q goodness of fit plots for half normal key function without adjustments also including search method as a covariate.

+Figure 3: Q-Q goodness of fit plots for half normal key function without adjustments also including search method as a covariate. +

+
+
## 
+## Goodness of fit results for ddf object
+## 
+## Distance sampling Cramer-von Mises test (unweighted)
+## Test statistic = 0.672219 p-value = 0.0148816
+
+par(mfrow=c(1,2))
+

indicates a lack of fit of the half normal key function models. After some rounding to the trackline, the detection function maintains a shoulder before falling away quite rapidly. Even taking into consideration the idea that the sample size is very large (n=961), making the goodness of fit test quite powerful, there is some doubt that the half normal key function is appropriate for these data. We will remove the half normal from further modelling, as the hazard rate will serve our purposes, as the hazard rate without adjustments or covariates, adequately fit the data.

+
+hr <- ds(nochopper, key="hr")
+
## Starting AIC adjustment term selection.
+
## Fitting hazard-rate key function
+
## AIC= 2920.797
+
## Fitting hazard-rate key function with cosine(2) adjustments
+
## Warning in check.mono(result, n.pts = control$mono.points): Detection function
+## is greater than 1 at some distances
+## Warning in check.mono(result, n.pts = control$mono.points): Detection function
+## is greater than 1 at some distances
+
## AIC= 2922.8
+
## 
+## Hazard-rate key function selected.
+
+gof_ds(hr, plot=FALSE)
+
## 
+## Goodness of fit results for ddf object
+## 
+## Distance sampling Cramer-von Mises test (unweighted)
+## Test statistic = 0.130299 p-value = 0.455606
+
+

Counteracting size bias +

+

Conducting our modeling using the hazard rate key function, we turn our attention to incorporating group size into the detection function. The way to counteract the effect of size bias is to include group size in the detection function.

+
+hr.size <- ds(nochopper, key="hr", formula = ~size)
+
## Model contains covariate term(s): no adjustment terms will be included.
+
## Fitting hazard-rate key function
+
## AIC= 2919.357
+

It is a disappointment to learn that a model including group size as a covariate fails to converge. There are numerical difficulties associated with a covariate that spans three orders of magnitude. For more about fitting issues with covariates, consult the covariate example with amakihi.

+

The distribution of group sizes is strongly skewed to the right, with a very long right tail. A transformation by natural logs will both reduce the range of log(size) to one order of magnitude and shift the centre of the distribution of the covariate (Fig. 4).

+
+ +Effect of log transformation upon distribution of observed group sizes.

+Figure 4: Effect of log transformation upon distribution of observed group sizes. +

+
+

The convergence problems associated with using size as a covariate in the detection function are alleviated as a result of the transformation.

+
+hr.clus <- ds(nochopper, key="hr", formula = ~log(size))
+
## Model contains covariate term(s): no adjustment terms will be included.
+
## Fitting hazard-rate key function
+
## AIC= 2904.307
+

Having successfully incorporated group size into the detection function, we proceed to examine the consequence of using Search.method as a covariate and a model incorporating both covariates.

+
+hr.method <- ds(nochopper, key="hr", formula = ~factor(Search.method))
+hr.clus.method <- ds(nochopper, key="hr", formula = ~log(size) + factor(Search.method))
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Table 7: Table 8: Models with hazard rate key function fitted to tuna fishing vessel sightings of dolphins. Sightings from helicopter not included in modelling. +
+Model + +Key function + +Formula + +C-vM p-value + +\(\hat{P_a}\) + +se(\(\hat{P_a}\)) + +\(\Delta\)AIC +
+ + +Hazard-rate + +~log(size) + +0.465 + +0.551 + +0.035 + +0.000 +
+ + +Hazard-rate + +~log(size) + factor(Search.method) + +0.458 + +0.547 + +0.036 + +2.604 +
+ + +Hazard-rate + +~1 + +0.456 + +0.564 + +0.036 + +16.490 +
+ + +Hazard-rate + +~factor(Search.method) + +0.463 + +0.553 + +0.037 + +18.232 +
+
+
+
+

Interpretation of findings +

+

All of the fitted models using the hazard rate as the key function fit the data. In addition, note the estimates of \(\widehat{P_a}\) for all four models. Inclusion of covariates has a negligible effect upon estimated detection probability. Despite a \(\Delta\)AIC value > 15, the model without covariates produces a virtually identical estimate of detection probability. This is another example of the remarkable property of pooling robustness of distance sampling estimators (Rexstad, Buckland, Marshall, & Borchers, 2023).

+

We discuss estimates of group and individual density from this data set. However, this data set does not accurately reflect survey effort. The Effort column is filled with 1 and there is only a single transect labelled in the data. Hence, the density estimates do not reflect biological reality; nevertheless the comparisons between models are legitimate. Variability between transects is also not properly incorporated into this analysis, so I won’t present measures of precision associated with any of the following point estimates.

+

This slight variation in \(\widehat{P_a}\) among the hazard rate candidate models is reflected in the equally similar estimates of dolphin pod density among the competing models. The model with the largest \(\widehat{P_a}\) produces the lowest estimate of \(\widehat{D_s}\) (170.5); while the model with the smallest \(\widehat{P_a}\) produces the largest estimate of \(\widehat{D_s}\) (175.8).

+

However, the most important consideration in analysis of this data set is proper treatment of size bias. The hazard rate models without group size in the detection function, estimate average group size in the population to be 515 whereas the model incorporating group size in the detection function estimates average group size in the population to be 408. Based on the evidence presented in Fig. 2, there is reason to believe that estimates of average group size without incorporating group size in the detection function results in a positively biased estimate of group size in the population. From the group size estimates under the two models, it appears the magnitude of that positive size bias in this data set is 26.2.

+

This difference in estimated average group size is magnified in the estimates of individual density \(\widehat{D_I}\). The model without covariates estimates \(\widehat{D_I}\) = 87805 while the model with group size as a covariate estimates \(\widehat{D_I}\) to be 71150.

+
+
+

Summary +

+

Take home points:

+
    +
  • Before incorporating covariates into the detection function, do a thorough exploratory data analysis with lots of plots.
  • +
  • Make at least a preliminary decision regarding key functions to consider before building an extensive candidate model set.
  • +
  • For this data set, there is little difference in the fit of the detection functions through the inclusion of covariates (pooling robustness).
    +
  • +
  • However, exploratory data analysis suggested that small dolphin groups were missed at large distances, resulting in size bias in the estimate of average group size in the population.
  • +
  • Incorporating group size as a covariate in the detection function reduced the estimate group size in the population by 26.2%. This reduction in estimated group size compensated for the size bias induced by the detection process.
  • +
+
+
+

References +

+
+
+Buckland, S. T., Anderson, D. R., Burnham, K. P., Laake, J. L., Borchers, D. L., & Thomas, L. (2001). Introduction to distance sampling: Estimating abundance of biological populations. Oxford, New York: Oxford University Press. +
+
+Gerrodette, Tim. (2008). Estimates of 2006 dolphin abundance in the eastern tropical pacific, with revised estimates from 1986-2003. NOAA-TM-NMFS-SWFSC;422. +
+
+Gerrodette, T., & Forcada, J. (2005). Non-recovery of two spotted and spinner dolphin populations in the eastern tropical pacific ocean. Marine Ecology Progress Series, 291, 1–21. https://doi.org/10.3354/meps291001 +
+
+Rexstad, E., Buckland, S., Marshall, L., & Borchers, D. (2023). Pooling robustness in distance sampling: Avoiding bias when there is unmodelled heterogeneity. Ecology and Evolution, 13(1), e9684. https://doi.org/10.1002/ece3.9684 +
+
+
+
+
+ + + +
+ + + +
+
+ + + + + + + diff --git a/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/figure-html/EDA-1.png b/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/figure-html/EDA-1.png new file mode 100644 index 0000000..82b84db Binary files /dev/null and b/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/figure-html/EDA-1.png differ diff --git a/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/figure-html/boxplot-1.png b/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/figure-html/boxplot-1.png new file mode 100644 index 0000000..275bdac Binary files /dev/null and b/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/figure-html/boxplot-1.png differ diff --git a/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/figure-html/transf-1.png b/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/figure-html/transf-1.png new file mode 100644 index 0000000..3bd47ef Binary files /dev/null and b/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/figure-html/transf-1.png differ diff --git a/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/figure-html/unnamed-chunk-5-1.png b/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/figure-html/unnamed-chunk-5-1.png new file mode 100644 index 0000000..07ce80d Binary files /dev/null and b/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/figure-html/unnamed-chunk-5-1.png differ diff --git a/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/kePrint-0.0.1/kePrint.js b/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/kePrint-0.0.1/kePrint.js new file mode 100644 index 0000000..e6fbbfc --- /dev/null +++ b/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/kePrint-0.0.1/kePrint.js @@ -0,0 +1,8 @@ +$(document).ready(function(){ + if (typeof $('[data-toggle="tooltip"]').tooltip === 'function') { + $('[data-toggle="tooltip"]').tooltip(); + } + if ($('[data-toggle="popover"]').popover === 'function') { + $('[data-toggle="popover"]').popover(); + } +}); diff --git a/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/lightable-0.0.1/lightable.css b/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/lightable-0.0.1/lightable.css new file mode 100644 index 0000000..3be3be9 --- /dev/null +++ b/docs/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys_files/lightable-0.0.1/lightable.css @@ -0,0 +1,272 @@ +/*! + * lightable v0.0.1 + * Copyright 2020 Hao Zhu + * Licensed under MIT (https://github.com/haozhu233/kableExtra/blob/master/LICENSE) + */ + +.lightable-minimal { + border-collapse: separate; + border-spacing: 16px 1px; + width: 100%; + margin-bottom: 10px; +} + +.lightable-minimal td { + margin-left: 5px; + margin-right: 5px; +} + +.lightable-minimal th { + margin-left: 5px; + margin-right: 5px; +} + +.lightable-minimal thead tr:last-child th { + border-bottom: 2px solid #00000050; + empty-cells: hide; + +} + +.lightable-minimal tbody tr:first-child td { + padding-top: 0.5em; +} + +.lightable-minimal.lightable-hover tbody tr:hover { + background-color: #f5f5f5; +} + +.lightable-minimal.lightable-striped tbody tr:nth-child(even) { + background-color: #f5f5f5; +} + +.lightable-classic { + border-top: 0.16em solid #111111; + border-bottom: 0.16em solid #111111; + width: 100%; + margin-bottom: 10px; + margin: 10px 5px; +} + +.lightable-classic tfoot tr td { + border: 0; +} + +.lightable-classic tfoot tr:first-child td { + border-top: 0.14em solid #111111; +} + +.lightable-classic caption { + color: #222222; +} + +.lightable-classic td { + padding-left: 5px; + padding-right: 5px; + color: #222222; +} + +.lightable-classic th { + padding-left: 5px; + padding-right: 5px; + font-weight: normal; + color: #222222; +} + +.lightable-classic thead tr:last-child th { + border-bottom: 0.10em solid #111111; +} + +.lightable-classic.lightable-hover tbody tr:hover { + background-color: #F9EEC1; +} + +.lightable-classic.lightable-striped tbody tr:nth-child(even) { + background-color: #f5f5f5; +} + +.lightable-classic-2 { + border-top: 3px double #111111; + border-bottom: 3px double #111111; + width: 100%; + margin-bottom: 10px; +} + +.lightable-classic-2 tfoot tr td { + border: 0; +} + +.lightable-classic-2 tfoot tr:first-child td { + border-top: 3px double #111111; +} + +.lightable-classic-2 caption { + color: #222222; +} + +.lightable-classic-2 td { + padding-left: 5px; + padding-right: 5px; + color: #222222; +} + +.lightable-classic-2 th { + padding-left: 5px; + padding-right: 5px; + font-weight: normal; + color: #222222; +} + +.lightable-classic-2 tbody tr:last-child td { + border-bottom: 3px double #111111; +} + +.lightable-classic-2 thead tr:last-child th { + border-bottom: 1px solid #111111; +} + +.lightable-classic-2.lightable-hover tbody tr:hover { + background-color: #F9EEC1; +} + +.lightable-classic-2.lightable-striped tbody tr:nth-child(even) { + background-color: #f5f5f5; +} + +.lightable-material { + min-width: 100%; + white-space: nowrap; + table-layout: fixed; + font-family: Roboto, sans-serif; + border: 1px solid #EEE; + border-collapse: collapse; + margin-bottom: 10px; +} + +.lightable-material tfoot tr td { + border: 0; +} + +.lightable-material tfoot tr:first-child td { + border-top: 1px solid #EEE; +} + +.lightable-material th { + height: 56px; + padding-left: 16px; + padding-right: 16px; +} + +.lightable-material td { + height: 52px; + padding-left: 16px; + padding-right: 16px; + border-top: 1px solid #eeeeee; +} + +.lightable-material.lightable-hover tbody tr:hover { + background-color: #f5f5f5; +} + +.lightable-material.lightable-striped tbody tr:nth-child(even) { + background-color: #f5f5f5; +} + +.lightable-material.lightable-striped tbody td { + border: 0; +} + +.lightable-material.lightable-striped thead tr:last-child th { + border-bottom: 1px solid #ddd; +} + +.lightable-material-dark { + min-width: 100%; + white-space: nowrap; + table-layout: fixed; + font-family: Roboto, sans-serif; + border: 1px solid #FFFFFF12; + border-collapse: collapse; + margin-bottom: 10px; + background-color: #363640; +} + +.lightable-material-dark tfoot tr td { + border: 0; +} + +.lightable-material-dark tfoot tr:first-child td { + border-top: 1px solid #FFFFFF12; +} + +.lightable-material-dark th { + height: 56px; + padding-left: 16px; + padding-right: 16px; + color: #FFFFFF60; +} + +.lightable-material-dark td { + height: 52px; + padding-left: 16px; + padding-right: 16px; + color: #FFFFFF; + border-top: 1px solid #FFFFFF12; +} + +.lightable-material-dark.lightable-hover tbody tr:hover { + background-color: #FFFFFF12; +} + +.lightable-material-dark.lightable-striped tbody tr:nth-child(even) { + background-color: #FFFFFF12; +} + +.lightable-material-dark.lightable-striped tbody td { + border: 0; +} + +.lightable-material-dark.lightable-striped thead tr:last-child th { + border-bottom: 1px solid #FFFFFF12; +} + +.lightable-paper { + width: 100%; + margin-bottom: 10px; + color: #444; +} + +.lightable-paper tfoot tr td { + border: 0; +} + +.lightable-paper tfoot tr:first-child td { + border-top: 1px solid #00000020; +} + +.lightable-paper thead tr:last-child th { + color: #666; + vertical-align: bottom; + border-bottom: 1px solid #00000020; + line-height: 1.15em; + padding: 10px 5px; +} + +.lightable-paper td { + vertical-align: middle; + border-bottom: 1px solid #00000010; + line-height: 1.15em; + padding: 7px 5px; +} + +.lightable-paper.lightable-hover tbody tr:hover { + background-color: #F9EEC1; +} + +.lightable-paper.lightable-striped tbody tr:nth-child(even) { + background-color: #00000008; +} + +.lightable-paper.lightable-striped tbody td { + border: 0; +} + diff --git a/docs/articles/web-only/multipliers/Prac_9_Figure_1.png b/docs/articles/web-only/multipliers/Prac_9_Figure_1.png new file mode 100644 index 0000000..b834a80 Binary files /dev/null and b/docs/articles/web-only/multipliers/Prac_9_Figure_1.png differ diff --git a/docs/articles/web-only/multipliers/multipliers-distill.html b/docs/articles/web-only/multipliers/multipliers-distill.html new file mode 100644 index 0000000..0ce84e6 --- /dev/null +++ b/docs/articles/web-only/multipliers/multipliers-distill.html @@ -0,0 +1,351 @@ + + + + + + + +Multipliers and indirect surveys • Distance + + + + + + + + + + + + Skip to contents + + +
+ + +
+
+ + + +

We consider indirect methods to estimate abundance and hence include multipliers in the abundance calculations. The first problem uses data from a dung survey of deer and there are two levels of multipliers that need to be incorporated in the analysis (dung production rate and dung decay rate).

+
+

Objectives +

+

The objectives of this exercise are to

+
    +
  • Fit detection functions to cues
  • +
  • Obtain relevant multipliers
  • +
  • Use the multipliers in the dht2 function to obtain animal abundances.
  • +
+
+
+

Dung survey of deer +

+

The question is how to estimate of the density of sika deer in a number of woodlands in the Scottish Borders (Marques et al., 2001). These animals are shy and will be aware of the presence of an observer before the observer detects them, making surveys of this species challenging. As a consequence, indirect estimation methods have been applied to this problem. In this manner, an estimate of density is produced for some sign generated by deer (in this case, faecal or dung pellets) and this estimate is transformed to density of deer (\(D_{\textrm{deer}}\)) by

+

\[ \hat D_{\textrm{deer}} = \frac{\textrm{dung deposited daily}}{\textrm{dung production rate (per animal)}} \] +where the dung deposited daily is given by

+

\[ \textrm{dung deposited daily} = \frac{\hat D_{\textrm{pellet groups}}}{\textrm{mean time to decay}} \] +Hence, we use distance sampling to produce a pellet group density estimate, then adjust it accordingly to account for the production and decay processes operating during the time the data were being acquired. We will also take uncertainty in the dung production and decay rates into account in our final estimate of deer density.

+

Data from 9 woodlands (labelled A-H and J) were collected according to the survey design (Figure 1) but note that data from block D were not included in this exercise.

+
+ +Location of sika deer survey in southern Scotland and the survey design (from  [@Maretal01]). Note the differing amounts of effort in different woodlands based on information derived from pilot surveys.

+Figure 1: Location of sika deer survey in southern Scotland and the survey design (from (Marques et al., 2001)). Note the differing amounts of effort in different woodlands based on information derived from pilot surveys. +

+
+

In addition to these data, we also require estimates of the production rate. From a literature search, we learn that sika deer produce 25 pellet groups daily but this source did not provide a measure of variability of this estimate. During the course of our surveys we also followed the fate of some marked pellet groups to estimate the decay (disappearance) rates of a pellet group. A thorough discussion of methods useful for estimating decay rates and associated measures of precision can be found in Laing et al. (2003).

+

There are many factors that might influence both production and decay rates, and for purposes of this exercise we will make the simplifying assumption that decay rate is homogeneous across these woodlands; with their mean time to decay of 163 days and a standard error of 13 days. (If you were to conduct a survey such as this, you would want to investigate this assumption more thoroughly.)

+
+

Getting started +

+

These data (called sikadeer) are available in the Distance package. Detection of deer dung takes place at small spatial scales; perpendicular distances are measured in centimeters. But transects were long; measured in kilometers and deer densities are customarily reported in numbers kilometer-2.

+
+library(Distance)
+data(sikadeer)
+conversion.factor <- convert_units("centimeter", "kilometer", "square kilometer")
+
+
+

Fit detection function to dung pellets +

+

Fit the usual series of models (i.e. half normal, hazard rate, uniform) models to the distances to pellet groups and decide on a detection function. This detection function (Figure 2) will be used to obtain \(\hat D_{\textrm{pellet groups}}\).

+
+deer.df <- ds(sikadeer, key="hn", truncation="10%", convert_units = conversion.factor)
+plot(deer.df, main="Half normal detection function")
+
+ +Simple detection function to deer pellet line transect data.

+Figure 2: Simple detection function to deer pellet line transect data. +

+
+
+print(deer.df$dht$individuals$summary)
+
##   Region Area CoveredArea Effort    n  k        ER      se.ER     cv.ER
+## 1      A 13.9    0.005950   1.70 1217 13 715.88234 119.918872 0.1675120
+## 2      B 10.3    0.003850   1.10  396 10 359.99999  86.859289 0.2412758
+## 3      C  8.6    0.001575   0.45   17  3  37.77778   8.521202 0.2255612
+## 4      E  8.0    0.002975   0.85   30  5  35.29412  16.568939 0.4694533
+## 5      F 14.0    0.000700   0.20   29  1 145.00000   0.000000 0.0000000
+## 6      G 15.2    0.001400   0.40   32  3  80.00000  39.686269 0.4960784
+## 7      H 11.3    0.000700   0.20    3  1  15.00000   0.000000 0.0000000
+## 8      J  9.6    0.000350   0.10    7  1  70.00000   0.000000 0.0000000
+## 9  Total 90.9    0.017500   5.00 1731 37 201.90876   0.000000 0.0000000
+

Have a look at the Summary statistics for this model - note some woodlands have but a single transect of effort allocated.

+
+
+

Multipliers +

+

The next step is to create an object which contains the multipliers we wish to use. We already have estimates of dung production rates but need similar information on dung decay (or persistence) rate. Analysis is based upon methods presented in Laing et al. (2003).

+

Data to calculate dung persistence has been collected in the file dung_persistence.csv. Following code from (Meredith, 2017).

+
+MIKE.persistence <- function(DATA) {
+  
+#  Purpose: calculate mean persistence time (mean time to decay) for dung/nest data 
+#  Input: data frame with at least two columns:
+#         DAYS - calendar day on which dung status was observed
+#         STATE - dung status: 1-intact, 0-decayed
+#  Output: point estimate, standard error and CV of mean persistence time
+#
+#  Attribution: code from Mike Meredith website: 
+#      http://www.mikemeredith.net/blog/2017/Sign_persistence.htm
+#   Citing: CITES elephant protocol
+#      https://cites.org/sites/default/files/common/prog/mike/survey/dung_standards.pdf
+  
+  ##   Fit logistic regression model to STATE on DAYS, extract coefficients
+  dung.glm <- glm(STATE ~ DAYS, data=DATA, family=binomial(link = "logit"))
+  betas <- coefficients(dung.glm)
+  ##   Calculate mean persistence time
+  mean.decay <- -(1+exp(-betas[1])) * log(1+exp(betas[1])) / betas[2]
+  ## Calculate the variance of the estimate
+  vcovar <- vcov(dung.glm)
+  var0 <- vcovar[1,1]  # variance of beta0
+  var1 <- vcovar[2,2]  # variance of beta1
+  covar <- vcovar[2,1] # covariance
+  deriv0 <- -(1-exp(-betas[1]) * log(1+exp(betas[1])))/betas[2]
+  deriv1 <- -mean.decay/betas[2]
+  var.mean <- var0*deriv0^2 + 2*covar*deriv0*deriv1 + var1*deriv1^2
+  ## Calculate the SE and CV and return
+  se.mean <- sqrt(var.mean)
+  cv.mean <- se.mean/mean.decay
+  out <- c(mean.decay, se.mean, 100*cv.mean)
+  names(out) <- c("Mean persistence time", "SE", "%CV")
+  plot(decay$DAYS, jitter(decay$STATE, amount=0.10), xlab="Days since initiation",
+       ylab="Dung persists (yes=1)",
+       main="Eight dung piles revisited over time")
+  curve(predict(dung.glm, data.frame(DAYS=x), type="resp"), add=TRUE)
+  abline(v=mean.decay, lwd=2, lty=3)
+  return(out)
+}
+decay <- read.csv("dung_persistence.csv")
+persistence.time <- MIKE.persistence(decay)
+
+ +Logistic curve fitted to pellet persistence survey data.  Vertical line represents day at which 50% of pellets have decayed to non-detectable.

+Figure 3: Logistic curve fitted to pellet persistence survey data. Vertical line represents day at which 50% of pellets have decayed to non-detectable. +

+
+
+print(persistence.time)
+
## Mean persistence time                    SE                   %CV 
+##            163.396748             14.226998              8.707026
+

Running the above command should have produced a plot of dung persistence versus days since produced and fitted a logistic regression (this is like a simple linear regression but restricts the response to taking values between 0 and 1). Note the points can in reality only take values between 0 and 1 but for the purposes of plotting have been ‘jittered’ to avoid over-plotting.

+

An estimate of mean persistence time and measure of variability are also provided - make a note of these as they will be required below. Dotted vertical line indicates the time at which the estimated probability of persistence is 0.5.

+

As stated above, we want an object which contains information on the dung production rate (and standard error) and dung decay rate (and standard error). The following command creates a list containing two data frames:

+
    +
  • +creation contains estimates of the dung production rate and associated standard error
  • +
  • +decay contains the dung decay rate and associated standard error where XX and YY are the estimates obtained from the dung decay rate analysis.
  • +
+
+# Create list of multipliers
+mult <- list(creation = data.frame(rate=25, SE=0),
+             decay    = data.frame(rate=163, SE=14.2))
+print(mult)
+
## $creation
+##   rate SE
+## 1   25  0
+## 
+## $decay
+##   rate   SE
+## 1  163 14.2
+

The final step is to use these multipliers to convert \(\hat D_{\textrm{pellet groups}}\) to \(\hat D_{\textrm{deer}}\) (as in the equations above) - for this we need to employ the dht2 function. In the command below the multipliers= argument allows us to specify the rates and standard errors. There are a couple of other function arguments that need some explanation:

+
    +
  • +strat_formula=~Region.Label is specified to take into account the design (i.e. different woodlands or blocks).
  • +
  • +stratification="geographical" is specified because we want to produce an overall estimate density that is the mean of the woodland specific densities weighted by area of each block.
  • +
  • +deer.df is the detection function you have fitted.
  • +
+
+deer.ests <- dht2(deer.df, flatfile=sikadeer, strat_formula=~Region.Label,
+                 convert_units=conversion.factor, multipliers=mult, 
+                 stratification="geographical")
+
## Warning in dht2(deer.df, flatfile = sikadeer, strat_formula = ~Region.Label, :
+## One or more strata have only one transect, cannot calculate empirical encounter
+## rate variance
+
+print(deer.ests, report="density")
+
## Density estimates from distance sampling
+## Stratification : geographical 
+## Variance       : R2, n/L 
+## Multipliers    : creation, decay 
+## Sample fraction : 1 
+## 
+## 
+## Summary statistics:
+##  Region.Label Area CoveredArea Effort    n  k      ER   se.ER cv.ER
+##             A 13.9    0.005950   1.70 1217 13 715.882 119.919 0.168
+##             B 10.3    0.003850   1.10  396 10 360.000  86.859 0.241
+##             C  8.6    0.001575   0.45   17  3  37.778   8.521 0.226
+##             E  8.0    0.002975   0.85   30  5  35.294  16.569 0.469
+##             F 14.0    0.000700   0.20   29  1 145.000   0.000 0.000
+##             G 15.2    0.001400   0.40   32  3  80.000  39.686 0.496
+##             H 11.3    0.000700   0.20    3  1  15.000   0.000 0.000
+##             J  9.6    0.000350   0.10    7  1  70.000   0.000 0.000
+##         Total 90.9    0.017500   5.00 1731 37 346.200  68.158 0.197
+## 
+## Density estimates:
+##  Region.Label Estimate     se    cv     LCI      UCI        df
+##             A  73.9167 14.248 0.193 49.6889 109.9576    21.037
+##             B  37.1709  9.643 0.259 21.3191  64.8093    12.031
+##             C   3.9007  0.955 0.245  1.7460   8.7142     2.779
+##             E   3.6442  1.746 0.479  1.0713  12.3958     4.337
+##             F  14.9716  1.428 0.095 12.4246  18.0407 63231.773
+##             G   8.2602  4.173 0.505  1.2114  56.3218     2.151
+##             H   1.5488  0.148 0.095  1.2853   1.8663 63231.773
+##             J   7.2277  0.689 0.095  5.9981   8.7093 63231.773
+##         Total  20.8476  3.011 0.144 15.5123  28.0180    25.610
+## 
+## Component percentages of variance:
+##  Region.Label Detection    ER Multipliers
+##             A      4.05 75.53       20.43
+##             B      2.23 86.49       11.28
+##             C      2.51 84.84       12.65
+##             E      0.66 96.04        3.31
+##             F     16.54  0.00       83.46
+##             G      0.59 96.44        2.97
+##             H     16.54  0.00       83.46
+##             J     16.54  0.00       83.46
+##         Total      3.73 96.27        0.00
+
+
+
+

Other stratification choices with dht2 +

+

This example of Sika deer on different hunting estates uses geographical stratification. There is also the option of using the option replicate for the stratification argument. This is useful when there are repeated surveys in a geographic area; the average abundance is computed and variance is variability between surveys. Alternatively effort_sum is used with replicate surveys, but few replicates reporting average variance. Finally, the specification of stratification="object" can be used when detections are made of different species, sexes or ages of animals. This option will produce species-specific abundance estimates as well as abundance estimate over all species, properly calculating variance of total abundance. More information is available in this diagramatic comparison as well as in the help file for ?dht2.

+

The function dht2 also provides information on the components of variance. Make a note of the these (contribution of detection function, encounter rate, decay rate and what happened to production rate component?) in each strata.

+
+
+

Notes regarding this dung survey +

+
    +
  • overall estimate of density +
      +
    • most effort took place in woodland A where deer density was high. Therefore, the overall estimate is between the estimated density in woodland A and the lower densities in the other woodlands.
    • +
    +
  • +
  • components of variance +
      +
    • we now have uncertainty associated with the encounter rate, detection function and decay rate (note there was no uncertainty associated with the production rate) and so the components of variation for all three components are provided.
    • +
    +
  • +
+

In woodland A, there were 13 transects on which over 1,200 pellet groups were detected: uncertainty in the estimated density (measured by CV) was 19% and the variance components were apportioned as detection probability 4%, encounter rate 76% and multipliers 20%.

+

In woodland E, there were 5 transects and 30 pellet groups resulting in a coefficient of variation (CV) of 48%: the variance components were apportioned as detection probability 0.7%, encounter rate 96% and multipliers 3%.

+

The CV of the abundance estimates for blocks F, H and J are identical (9%) because a pooled detection function was used across all blocks and the dung deposition and decay rates were not block-specific. The only element of the computation remaining that is block-specific is the encounter rate; and for these three blocks there was but a single transect per block, meaning the encounter rate variance could not be computed and was set to zero.

+

The estimated abundance across all blocks had a CV of 14%. But far and away, the greatest contribution to this uncertainty was encounter rate variance–differences in pellet encounters between transects. In the context of distance sampling, the uncertainty in the parameter estimates of the detection function accounts for <1% in the total estimate of deer abundance across the blocks.

+
+
+

References +

+
+
+Laing, S. E., Buckland, S. T., Burn, R. W., Lambie, D., & Amphlett, A. (2003). Dung and nest surveys: Estimating decay rate. Journal of Applied Ecology, 40, 1102–1111. https://doi.org/https://doi.org/10.1111/j.1365-2664.2003.00861.x +
+
+Marques, F. F. C., Buckland, S. T., Goffin, D., Dixon, C. E., Borchers, D. L., Mayle, B. A., & Peace, A. J. (2001). Estimating deer abundance from line transect surveys of dung: Sika deer in southern scotland. Journal of Applied Ecology, 38, 349–363. https://doi.org/https://doi.org/10.1046/j.1365-2664.2001.00584.x +
+
+Meredith, M. (2017). How long do animal signs remain visible? Retrieved from http://www.mikemeredith.net/blog/2017/Sign_persistence.htm +
+
+
+
+
+ + + +
+ + + +
+
+ + + + + + + diff --git a/docs/articles/web-only/multipliers/multipliers-distill_files/figure-html/detfn-1.png b/docs/articles/web-only/multipliers/multipliers-distill_files/figure-html/detfn-1.png new file mode 100644 index 0000000..9888274 Binary files /dev/null and b/docs/articles/web-only/multipliers/multipliers-distill_files/figure-html/detfn-1.png differ diff --git a/docs/articles/web-only/multipliers/multipliers-distill_files/figure-html/logistic-1.png b/docs/articles/web-only/multipliers/multipliers-distill_files/figure-html/logistic-1.png new file mode 100644 index 0000000..c99e708 Binary files /dev/null and b/docs/articles/web-only/multipliers/multipliers-distill_files/figure-html/logistic-1.png differ diff --git a/docs/articles/web-only/multispecies/multispecies-multioccasion-analysis.html b/docs/articles/web-only/multispecies/multispecies-multioccasion-analysis.html new file mode 100644 index 0000000..0807419 --- /dev/null +++ b/docs/articles/web-only/multispecies/multispecies-multioccasion-analysis.html @@ -0,0 +1,867 @@ + + + + + + + +Perils of multispecies and multisession distance sampling analysis • Distance + + + + + + + + + + + + Skip to contents + + +
+ + +
+
+ + + +
+

A multispecies data set with multiple visits +

+

It is increasingly common for investigators to conduct surveys in which multiple species are detected and density estimates for several species are of interest. There are many ways of analysing such data sets, but care must be taken. Not all approaches will produce correct density estimates. To demonstrate one of the ways to produce incorrect estimates, we will use the line transect survey data reported in Buckland (2006). This survey (and data file) recorded detections of four species of songbirds. We conduct an analysis of chaffinch (Fringilla coelebs) (coded c in the data file), but similar results would arise with the other species.

+

Begin by reading the flat file in a comma delimited format. Note the URL for the data file is very long, double check that you can read the URL including the Github token.

+
+URLpart1 <- "https://raw.githubusercontent.com/distanceexamples/Distance-multispecies/main/montrave-line.csv"
+URLpart2 <- "?token=GHSAT0AAAAAABP6QDHAQ677QTIJEKSK2WYEYWG4EYA"
+birds <- read.csv(file=paste0(URLpart1, URLpart2))
+
+
+

Survey design +

+

Buckland’s design consisted of visiting each of the 19 transects in his study twice. To examine some of the errors that can arise from improper analysis, I choose to treat the two visits as strata for the express purpose of generating stratum (visit) -specific density estimates. Density estimates reported in Buckland (2006) are in units of birds \(\cdot hectare^{-1}\).

+
+birds$Region.Label <- birds$visit
+cu <- convert_units("meter", "kilometer", "hectare")
+
+
+

Analysis of only one species (incorrectly) +

+

The direct approach to producing a density estimate for the chaffinch would be to subset the original data frame and use the species-specific data frame for analysis. Begin by performing the subset operation.

+
+chaf <- birds[birds$species=="c", ]
+

When the data are subset, the integrity of the survey design is not preserved. A simple frequency table of the species-specific data frame flags up a number of transect/visit combinations where no chaffinches were detected. The result is that the subset data frame suggests 3 of the 19 transects lacked chaffinch detections on the first visit and one of the 19 transects lacked chaffinch detections on the second visit. This revelation, in itself, causes no problems for our estimate of density of chaffinches.

+
+detects <- table(chaf$Sample.Label, chaf$visit)
+detects <- as.data.frame(detects)
+names(detects) <- c("Transect", "Visit", "Detections")
+detects$Detections <- cell_spec(detects$Detections, 
+                          background = ifelse(detects$Detections==0, "red", "white"))
+knitr::kable(detects, escape=FALSE) %>%
+  kable_paper(full_width=FALSE)
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Transect + +Visit + +Detections +
+1 + +1 + +3 +
+2 + +1 + +3 +
+3 + +1 + +4 +
+4 + +1 + +3 +
+5 + +1 + +5 +
+6 + +1 + +4 +
+7 + +1 + +2 +
+8 + +1 + +0 +
+9 + +1 + +1 +
+10 + +1 + +1 +
+11 + +1 + +0 +
+13 + +1 + +1 +
+14 + +1 + +1 +
+15 + +1 + +3 +
+16 + +1 + +2 +
+17 + +1 + +3 +
+18 + +1 + +3 +
+19 + +1 + +0 +
+1 + +2 + +1 +
+2 + +2 + +4 +
+3 + +2 + +3 +
+4 + +2 + +2 +
+5 + +2 + +4 +
+6 + +2 + +3 +
+7 + +2 + +3 +
+8 + +2 + +1 +
+9 + +2 + +0 +
+10 + +2 + +2 +
+11 + +2 + +1 +
+13 + +2 + +1 +
+14 + +2 + +1 +
+15 + +2 + +1 +
+16 + +2 + +1 +
+17 + +2 + +1 +
+18 + +2 + +4 +
+19 + +2 + +1 +
+

However, there is a problem hidden within the table above. Transect 12 does not appear in the table because there were no detections of chaffinches on either visit. Consequently, there were 4 transects without chaffinches on the first visit and 2 transects without chaffinches on the second visit, rather than the 3 transects and 1 transect you might mistakenly conclude do not have chaffinch detections if you relied completely upon the table.

+

Let’s see what the ds() function thinks about the survey effort using information from the species-specific data frame.

+
+chaf.wrong <- ds(chaf, key="hn", convert_units = cu, truncation=95, formula = ~Region.Label)
+knitr::kable(chaf.wrong$dht$individuals$summary) %>%
+  kable_paper(full_width=FALSE) %>%
+  column_spec(6, background="salmon") %>%
+  column_spec(7, background="steelblue")
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Region + +Area + +CoveredArea + +Effort + +n + +k + +ER + +se.ER + +cv.ER +
+1 + +33.2 + +82.061 + +4.319 + +39 + +15 + +9.029868 + +1.1159303 + +0.1235821 +
+2 + +33.2 + +83.562 + +4.398 + +34 + +17 + +7.730787 + +0.9798153 + +0.1267420 +
+Total + +66.4 + +165.623 + +8.717 + +73 + +32 + +8.380327 + +0.7425191 + +0.0886026 +
+

Examine the column labelled k (the number of transects) for each of the visits. Rather than the 19 transects that were surveyed on each visit, the ds() function erroneously believes there were only 15 transects surveyed on the first visit and 17 transects surveyed on the second visit.

+

Note also the number of detections per kilometer; roughly 9 on the first visit and 7.7 on the second visit. These encounter rates exclude kilometers of effort on transects where there were no detections. We will return to this comparison later.

+
+
+

Use explicit data hierarchy +

+

Additional arguments can be passed to ds() to resolve this problem. Consulting the ds() documentation

+
+

Help file for ds +

+
    +
  • region_table data.frame with two columns: +
      +
    • Region.Label label for the region
    • +
    • Area area of the region
    • +
    • region_table has one row for each stratum. If there is no stratification then region_table has one entry with Area corresponding to the total survey area. If Area is omitted density estimates only are produced.
    • +
    +
  • +
  • sample_table data.frame mapping the regions to the samples (i.e. transects). There are three columns: +
      +
    • Sample.Label label for the sample
    • +
    • Region.Label label for the region that the sample belongs to.
    • +
    • Effort the effort expended in that sample (e.g. transect length).
    • +
    +
  • +
+
+

This analysis that produces erroneous results can be remedied by explicitly letting the ds() function know about the study design; specifically, how many strata and the number of transects within each stratum (and associated transect lengths).

+

Construct the region table and sample table showing the two strata with equal areas and each labelled transect (of given length) is repeated two times.

+
+birds.regiontable <- data.frame(Region.Label=as.factor(c(1,2)), Area=c(33.2,33.2))
+birds.sampletable <- data.frame(Region.Label=as.factor(rep(c(1,2), each=19)),
+                                Sample.Label=rep(1:19, times=2),
+                                Effort=c(0.208, 0.401, 0.401, 0.299, 0.350,
+                                         0.401, 0.393, 0.405, 0.385, 0.204,
+                                         0.039, 0.047, 0.204, 0.271, 0.236,
+                                         0.189, 0.177, 0.200, 0.020))
+
+
+

Simple detection function model +

+

The chaffinch analysis is performed again, this time supplying the region_table and sample_table information to ds(). The correct number of transects (19) sampled on both visits (even though chaffinch was not detected on 4 transects on visit 1 and 2 transects on visit 2) is now recognised. Hence, the use of region table and sample table solves the problem of effort miscalculation if a species is not detected on all transects.

+
+tr <- 95   # as per Buckland (2006)
+onlycf <- ds(data=birds[birds$species=="c", ], 
+             region_table = birds.regiontable,
+             sample_table = birds.sampletable,
+             trunc=tr, convert_units=cu, key="hn", formula = ~Region.Label)
+knitr::kable(onlycf$dht$individuals$summary) %>%
+  kable_paper(full_width=FALSE) %>%
+  column_spec(6, background="salmon") %>%
+  column_spec(7, background="steelblue")
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Region + +Area + +CoveredArea + +Effort + +n + +k + +ER + +se.ER + +cv.ER +
+1 + +33.2 + +91.77 + +4.83 + +39 + +19 + +8.074534 + +1.2196305 + +0.1510465 +
+2 + +33.2 + +91.77 + +4.83 + +34 + +19 + +7.039338 + +1.0612781 + +0.1507639 +
+Total + +66.4 + +183.54 + +9.66 + +73 + +38 + +7.556936 + +0.8083641 + +0.1069698 +
+
+
+

Consequence of incorrect analysis +

+

To drive home the consequence of failing to properly specify the survey effort, contrast the encounter rate for the two visits from the incorrect calculations above (9.0 and 7.7 respectively), with the correct calculation (8.1 and 7.0 respectively). The number of transects is incorrect with the knock-on effect of effort being incorrect. If effort is incorrect then so too is covered area.
+The ripple effect from incomplete information about the survey design results in positively biased estimates of density.

+
+
+

References +

+
+
+Buckland, S. T. (2006). Point transect surveys for songbirds: Robust methodologies. The Auk, 123(2), 345–357. https://doi.org/10.1093/auk/123.2.345 +
+
+
+
+
+ + + +
+ + + +
+
+ + + + + + + diff --git a/docs/articles/web-only/multispecies/multispecies-multioccasion-analysis_files/kePrint-0.0.1/kePrint.js b/docs/articles/web-only/multispecies/multispecies-multioccasion-analysis_files/kePrint-0.0.1/kePrint.js new file mode 100644 index 0000000..e6fbbfc --- /dev/null +++ b/docs/articles/web-only/multispecies/multispecies-multioccasion-analysis_files/kePrint-0.0.1/kePrint.js @@ -0,0 +1,8 @@ +$(document).ready(function(){ + if (typeof $('[data-toggle="tooltip"]').tooltip === 'function') { + $('[data-toggle="tooltip"]').tooltip(); + } + if ($('[data-toggle="popover"]').popover === 'function') { + $('[data-toggle="popover"]').popover(); + } +}); diff --git a/docs/articles/web-only/multispecies/multispecies-multioccasion-analysis_files/lightable-0.0.1/lightable.css b/docs/articles/web-only/multispecies/multispecies-multioccasion-analysis_files/lightable-0.0.1/lightable.css new file mode 100644 index 0000000..3be3be9 --- /dev/null +++ b/docs/articles/web-only/multispecies/multispecies-multioccasion-analysis_files/lightable-0.0.1/lightable.css @@ -0,0 +1,272 @@ +/*! + * lightable v0.0.1 + * Copyright 2020 Hao Zhu + * Licensed under MIT (https://github.com/haozhu233/kableExtra/blob/master/LICENSE) + */ + +.lightable-minimal { + border-collapse: separate; + border-spacing: 16px 1px; + width: 100%; + margin-bottom: 10px; +} + +.lightable-minimal td { + margin-left: 5px; + margin-right: 5px; +} + +.lightable-minimal th { + margin-left: 5px; + margin-right: 5px; +} + +.lightable-minimal thead tr:last-child th { + border-bottom: 2px solid #00000050; + empty-cells: hide; + +} + +.lightable-minimal tbody tr:first-child td { + padding-top: 0.5em; +} + +.lightable-minimal.lightable-hover tbody tr:hover { + background-color: #f5f5f5; +} + +.lightable-minimal.lightable-striped tbody tr:nth-child(even) { + background-color: #f5f5f5; +} + +.lightable-classic { + border-top: 0.16em solid #111111; + border-bottom: 0.16em solid #111111; + width: 100%; + margin-bottom: 10px; + margin: 10px 5px; +} + +.lightable-classic tfoot tr td { + border: 0; +} + +.lightable-classic tfoot tr:first-child td { + border-top: 0.14em solid #111111; +} + +.lightable-classic caption { + color: #222222; +} + +.lightable-classic td { + padding-left: 5px; + padding-right: 5px; + color: #222222; +} + +.lightable-classic th { + padding-left: 5px; + padding-right: 5px; + font-weight: normal; + color: #222222; +} + +.lightable-classic thead tr:last-child th { + border-bottom: 0.10em solid #111111; +} + +.lightable-classic.lightable-hover tbody tr:hover { + background-color: #F9EEC1; +} + +.lightable-classic.lightable-striped tbody tr:nth-child(even) { + background-color: #f5f5f5; +} + +.lightable-classic-2 { + border-top: 3px double #111111; + border-bottom: 3px double #111111; + width: 100%; + margin-bottom: 10px; +} + +.lightable-classic-2 tfoot tr td { + border: 0; +} + +.lightable-classic-2 tfoot tr:first-child td { + border-top: 3px double #111111; +} + +.lightable-classic-2 caption { + color: #222222; +} + +.lightable-classic-2 td { + padding-left: 5px; + padding-right: 5px; + color: #222222; +} + +.lightable-classic-2 th { + padding-left: 5px; + padding-right: 5px; + font-weight: normal; + color: #222222; +} + +.lightable-classic-2 tbody tr:last-child td { + border-bottom: 3px double #111111; +} + +.lightable-classic-2 thead tr:last-child th { + border-bottom: 1px solid #111111; +} + +.lightable-classic-2.lightable-hover tbody tr:hover { + background-color: #F9EEC1; +} + +.lightable-classic-2.lightable-striped tbody tr:nth-child(even) { + background-color: #f5f5f5; +} + +.lightable-material { + min-width: 100%; + white-space: nowrap; + table-layout: fixed; + font-family: Roboto, sans-serif; + border: 1px solid #EEE; + border-collapse: collapse; + margin-bottom: 10px; +} + +.lightable-material tfoot tr td { + border: 0; +} + +.lightable-material tfoot tr:first-child td { + border-top: 1px solid #EEE; +} + +.lightable-material th { + height: 56px; + padding-left: 16px; + padding-right: 16px; +} + +.lightable-material td { + height: 52px; + padding-left: 16px; + padding-right: 16px; + border-top: 1px solid #eeeeee; +} + +.lightable-material.lightable-hover tbody tr:hover { + background-color: #f5f5f5; +} + +.lightable-material.lightable-striped tbody tr:nth-child(even) { + background-color: #f5f5f5; +} + +.lightable-material.lightable-striped tbody td { + border: 0; +} + +.lightable-material.lightable-striped thead tr:last-child th { + border-bottom: 1px solid #ddd; +} + +.lightable-material-dark { + min-width: 100%; + white-space: nowrap; + table-layout: fixed; + font-family: Roboto, sans-serif; + border: 1px solid #FFFFFF12; + border-collapse: collapse; + margin-bottom: 10px; + background-color: #363640; +} + +.lightable-material-dark tfoot tr td { + border: 0; +} + +.lightable-material-dark tfoot tr:first-child td { + border-top: 1px solid #FFFFFF12; +} + +.lightable-material-dark th { + height: 56px; + padding-left: 16px; + padding-right: 16px; + color: #FFFFFF60; +} + +.lightable-material-dark td { + height: 52px; + padding-left: 16px; + padding-right: 16px; + color: #FFFFFF; + border-top: 1px solid #FFFFFF12; +} + +.lightable-material-dark.lightable-hover tbody tr:hover { + background-color: #FFFFFF12; +} + +.lightable-material-dark.lightable-striped tbody tr:nth-child(even) { + background-color: #FFFFFF12; +} + +.lightable-material-dark.lightable-striped tbody td { + border: 0; +} + +.lightable-material-dark.lightable-striped thead tr:last-child th { + border-bottom: 1px solid #FFFFFF12; +} + +.lightable-paper { + width: 100%; + margin-bottom: 10px; + color: #444; +} + +.lightable-paper tfoot tr td { + border: 0; +} + +.lightable-paper tfoot tr:first-child td { + border-top: 1px solid #00000020; +} + +.lightable-paper thead tr:last-child th { + color: #666; + vertical-align: bottom; + border-bottom: 1px solid #00000020; + line-height: 1.15em; + padding: 10px 5px; +} + +.lightable-paper td { + vertical-align: middle; + border-bottom: 1px solid #00000010; + line-height: 1.15em; + padding: 7px 5px; +} + +.lightable-paper.lightable-hover tbody tr:hover { + background-color: #F9EEC1; +} + +.lightable-paper.lightable-striped tbody tr:nth-child(even) { + background-color: #00000008; +} + +.lightable-paper.lightable-striped tbody td { + border: 0; +} + diff --git a/docs/articles/web-only/points/arapaho.jpg b/docs/articles/web-only/points/arapaho.jpg new file mode 100644 index 0000000..4633ecf Binary files /dev/null and b/docs/articles/web-only/points/arapaho.jpg differ diff --git a/docs/articles/web-only/points/pointtransects-distill.html b/docs/articles/web-only/points/pointtransects-distill.html new file mode 100644 index 0000000..963b418 --- /dev/null +++ b/docs/articles/web-only/points/pointtransects-distill.html @@ -0,0 +1,443 @@ + + + + + + + +Point transect density estimation • Distance + + + + + + + + + + + + Skip to contents + + +
+ + +
+
+ + + +

In this exercise, we use R (R Core Team, 2019) and the Distance package (Miller, Rexstad, Thomas, Marshall, & Laake, 2019) to fit different detection function models to point transect survey data of savanna sparrows (Passerculus sandwichensis) density and abundance. These data were part of a study examining the effect of livestock grazing upon vegetation structure and consequently upon the avian community described by Knopf et al. (1988).

+

Steps in this analysis are similar to the steps taken in the line transect analysis of winter wren data.

+
+

Objectives +

+
    +
  • Fit a basic detection function using the ds function
  • +
  • Plot and examine a detection function
  • +
  • Fit different detection function forms.
  • +
+
+
+

Survey design +

+

A total of 373 point transects were placed in three pastures in the Arapaho National Wildlife Refuge in Colorado (Figure 1). Elevation of these pastures was ~2500m. We will not deal with pasture-level analysis of these data in this vignette and will alter the data to remove the strata designations.

+
+ +Summer grazed pastures along Illinois River Arapaho National Wildlife Refuge, Colorado.  Figure from [@knopf_guild_1988].

+Figure 1: Summer grazed pastures along Illinois River Arapaho National Wildlife Refuge, Colorado. Figure from (Knopf et al., 1988). +

+
+

The fields of the Savannah_sparrow_1980 data set are:

+
    +
  • Region.Label - three pastures that constituted sections of the study area. However, for this vignette we are going to make all labels identical. This will treat the data as if they were all detected in the same pasture. The matter of stratification will be taken up in another vignette.
  • +
  • Area - size of the study region. A place holder, because pasture sizes are not known. Estimates of density and abundance will be equivalent.
  • +
  • Sample.Label - point transect identifier (total of 373 points)
  • +
  • Effort - number of visits to each point
  • +
  • object - unique identifier for each detected savanna sparrow
  • +
  • distance - radial distance (metres) to each detection
  • +
  • Study.Area - only data for savanna sparrow (SASP) are included in this data set
  • +
+
+
+

Make the data available for R session +

+

This command assumes that the dsdata package has been installed on your computer. The R workspace Savannah_sparrow_1980 contains detections of savanna sparrows from point transect surveys of Knopf et al. (1988).

+
+library(Distance)
+data(Savannah_sparrow_1980)
+#  remove pasture-level identifier in Region.Label
+Savannah_sparrow_1980$Region.Label <- "Single_stratum"
+

The code above overwrites the strata designations in the original data to make it appear that all data were derived from a single stratum. This makes the analysis simpler to perform. There are examples of analysis of stratified data in another vignette.

+

Examine the first few rows of Savannah_sparrow_1980 using the function head()

+
+head(Savannah_sparrow_1980)
+
##     Region.Label Area Sample.Label Effort object distance Study.Area
+## 1 Single_stratum    1    POINT   1      1     NA       NA  SASP 1980
+## 2 Single_stratum    1    POINT   2      1     NA       NA  SASP 1980
+## 3 Single_stratum    1    POINT   3      1     NA       NA  SASP 1980
+## 4 Single_stratum    1    POINT   4      1     NA       NA  SASP 1980
+## 5 Single_stratum    1    POINT   5      1     NA       NA  SASP 1980
+## 6 Single_stratum    1    POINT   6      1     NA       NA  SASP 1980
+

The object Savannah_sparrow_1980 is a dataframe object made up of rows and columns. In contrast to the Montrave winter wren line transect data used in the previous vignette, savannah sparrows were not detected at all point transects. Radial distances receive the value NA for transects where there were no detections. To determine the number of detections in this data set, we total the number of values in the distance field that are not NA

+
+sum(!is.na(Savannah_sparrow_1980$distance))
+
## [1] 276
+
+
+

Examine the distribution of detection distances +

+

Gain familiarity with the radial distance data using the hist() function (Figure 2).

+
+hist(Savannah_sparrow_1980$distance, xlab="Distance (m)", 
+     main="Savannah sparrow point transects")
+
+ +Histogram of radial distances of savannah sparrows across all pastures.

+Figure 2: Histogram of radial distances of savannah sparrows across all pastures. +

+
+

Note the shape of the radial distance histogram does not resemble the shape of perpendicular distances gathered from line transect sampling (Buckland, Rexstad, Marques, & Oedekoven, 2015, sec. 1.3).

+
+
+

Specify unit conversions +

+

With point transects, there are only units of measure associated with the size of the study area and the radial distance measures, because effort is measured in number of visits, rather than distance.

+
    +
  • distance_units +
      +
    • units of measure for radial distances
    • +
    +
  • +
  • effort_units +
      +
    • units of measure for effort (NULL for point transects)
    • +
    +
  • +
  • area_units +
      +
    • units of measure for the study area. Recall this data set has set the size of the study area to be 1, resulting in abundance and density to be equal.
    • +
    +
  • +
+
+conversion.factor <- convert_units("meter", NULL, "hectare")
+
+
+

Fitting a simple detection function model with ds +

+

Detection functions are fitted using the ds function and this function requires a data frame to have a column called distance. We have this in our nests data, therefore, we can simply supply the name of the data frame to the function along with additional arguments.

+

Details about the arguments for this function:

+
    +
  • +key="hn" +
      +
    • fit a half-normal key detection function
    • +
    +
  • +
  • +adjustment=NULL +
      +
    • do not include adjustment terms
    • +
    +
  • +
  • +transect="point" +
      +
    • necessary to indicate this is point transect data
    • +
    +
  • +
  • +convert_units=conversion.factor +
      +
    • required because, for this example, the radial distances are in metres . Our density estimates will be reported in number of birds per hectare.
    • +
    +
  • +
  • +truncation="5%" +
      +
    • right truncation (described below)
    • +
    +
  • +
+

As is customary, right truncation is employed to remove 5% of the observations most distant from the transects, as detections at these distances contain little information about the shape of the fitted probability density function near the point.

+
+sasp.hn <- ds(data=Savannah_sparrow_1980, key="hn", adjustment=NULL,
+              transect="point", convert_units=conversion.factor, truncation="5%")
+

On calling the ds function, information is provided to the screen reminding the user what model has been fitted and the associated AIC value. More information is supplied by applying the summary() function to the object created by ds().

+
+summary(sasp.hn)
+
## 
+## Summary for distance analysis 
+## Number of observations :  262 
+## Distance range         :  0  -  51.025 
+## 
+## Model       : Half-normal key function 
+## AIC         :  2021.776 
+## Optimisation:  mrds (nlminb) 
+## 
+## Detection function parameters
+## Scale coefficient(s):  
+##             estimate         se
+## (Intercept) 3.044624 0.04270318
+## 
+##                       Estimate          SE         CV
+## Average p             0.321125  0.02296165 0.07150378
+## N in covered region 815.881752 71.61153776 0.08777196
+## 
+## Summary statistics:
+##           Region Area CoveredArea Effort   n   k        ER      se.ER
+## 1 Single_stratum    1    305.0877    373 262 373 0.7024129 0.04726421
+##        cv.ER
+## 1 0.06728836
+## 
+## Abundance:
+##   Label Estimate        se         cv      lcl      ucl       df
+## 1 Total 2.674253 0.2625745 0.09818612 2.206266 3.241509 598.5905
+## 
+## Density:
+##   Label Estimate        se         cv      lcl      ucl       df
+## 1 Total 2.674253 0.2625745 0.09818612 2.206266 3.241509 598.5905
+

Visually inspect the fitted detection function with the plot() function, specifying the cutpoints histogram with argument breaks. Add the argument pdf so the plot shows the probability densiy function rather than the detection function. The probability density function is preferred for assessing model fit because the PDF incorporates information about the availability of animals to be detected. There are few animals available to be detected at small distances, therefore lack of fit at small distances is not as consequential for points as it is for lines (Figure 3).

+
+cutpoints <- c(0,5,10,15,20,30,40,max(Savannah_sparrow_1980$distance, na.rm=TRUE))
+plot(sasp.hn, breaks=cutpoints, pdf=TRUE, main="Savannah sparrow point transect data.")
+
+ +Fit of half normal detection function to savannah sparrow data.

+Figure 3: Fit of half normal detection function to savannah sparrow data. +

+
+
+
+

Specifying different detection functions +

+

Detection function forms and shapes, are specified by changing the key and adjustment arguments.

+

The options available for key and adjustment elements detection functions are:

+
    +
  • half normal (key="hn") - default
  • +
  • hazard rate (key="hr")
  • +
  • uniform (key="unif")
  • +
  • no adjustment terms (adjustment=NULL)
  • +
  • cosine (adjustment="cos") - default
  • +
  • Hermite polynomial (adjustment="herm")
  • +
  • Simple polynomial (adjustment="poly")
  • +
+

To fit a uniform key function with cosine adjustment terms, use the command:

+
+sasp.unif.cos <- ds(Savannah_sparrow_1980, key="unif", adjustment="cos",
+                    transect="point", convert_units=conversion.factor, truncation="5%")
+

To fit a hazard rate key function with simple polynomial adjustment terms, then use the command:

+
+sasp.hr.poly <- ds(Savannah_sparrow_1980, key="hr", adjustment="poly", 
+                   transect="point", convert_units=conversion.factor, truncation="5%")
+
## Warning in ddf.ds(dsmodel = dsmodel, data = data, meta.data = meta.data, :
+## Estimated hazard-rate scale parameter close to 0 (on log scale). Possible
+## problem in data (e.g., spike near zero distance).
+## Warning in ddf.ds(dsmodel = dsmodel, data = data, meta.data = meta.data, :
+## Estimated hazard-rate scale parameter close to 0 (on log scale). Possible
+## problem in data (e.g., spike near zero distance).
+
+
+

Model comparison +

+

Each fitted detection function produces a different estimate of Savannah sparrow abundance and density. The estimate depends upon the model chosen. The model selection tool for distance sampling data is AIC.

+
+AIC(sasp.hn, sasp.hr.poly, sasp.unif.cos)
+
##               df      AIC
+## sasp.hn        1 2021.776
+## sasp.hr.poly   3 2024.785
+## sasp.unif.cos  1 2023.178
+
+

Absolute goodness of fit +

+

In addition to the relative ranking of models provided by AIC, it is also important to know whether selected model(s) actually fit the data. The model is the basis of inference, so it is dangerous to make inference from a model that does not fit the data. Goodness of fit is assessed using the function gof_ds (Figure 4).

+
+gof_ds(sasp.hn)
+
+ +Q-Q plot of half normal detection function to savannah sparrow data.

+Figure 4: Q-Q plot of half normal detection function to savannah sparrow data. +

+
+
## 
+## Goodness of fit results for ddf object
+## 
+## Distance sampling Cramer-von Mises test (unweighted)
+## Test statistic = 0.0835959 p-value = 0.671325
+
+
+
+

Model comparison tables +

+

The function summarise_ds_models combines the work of AIC and gof_ds to produce a table of fitted models and summary statistics.

+
+knitr::kable(summarize_ds_models(sasp.hn, sasp.hr.poly, sasp.unif.cos),digits=3,
+             caption="Model selection summary of savannah sparrow point transect data.")
+ + ++++++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Table 1: Model selection summary of savannah sparrow point transect data.
ModelKey functionFormulaC-vM p-value\(\hat{P_a}\)se(\(\hat{P_a}\)) +\(\Delta\)AIC
1Half-normal~10.6710.3210.0230.000
3Uniform with cosine adjustment term of order 1NA0.3640.3500.0151.402
2Hazard-rate with simple polynomial adjustment term of order 4~10.9040.2950.0533.009
+
+
+

Conclusions +

+

Key differences between analysis of line transect data and point transect data

+
    +
  • argument transect in ds() must be set to "point",
  • +
  • histogram of radial detection distances is characteristically “humped” because few individuals are available to be detected near the points,
  • +
  • because of the hump shape (Figure 2), plotting to assess fit of data to detection distribution usually assessed via pdf=TRUE argument added to plot() function,
  • +
  • for the Arapaho National Refuge Savannah sparrow data, the three candidate models all provide adequeate fit to the data and produce comparable estimates of \(P_a\).
  • +
+
+
+

References +

+
+
+Buckland, S., Rexstad, E., Marques, T., & Oedekoven, C. (2015). Distance sampling: Methods and applications. Springer. +
+
+Knopf, F. L., Sedgwick, J. A., & Cannon, R. W. (1988). Guild structure of a riparian avifauna relative to seasonal cattle grazing. The Journal of Wildlife Management, 52(2), 280–290. https://doi.org/10.2307/3801235 +
+
+Miller, D. L., Rexstad, E., Thomas, L., Marshall, L., & Laake, J. L. (2019). Distance sampling in r. Journal of Statistical Software, 89(1), 1–28. https://doi.org/10.18637/jss.v089.i01 +
+
+R Core Team. (2019). R: A language and environment for statistical computing. Vienna Austria: R Foundation for Statistical Computing. +
+
+
+
+
+ + + +
+ + + +
+
+ + + + + + + diff --git a/docs/articles/web-only/points/pointtransects-distill_files/figure-html/basichist-1.png b/docs/articles/web-only/points/pointtransects-distill_files/figure-html/basichist-1.png new file mode 100644 index 0000000..2ee2d1d Binary files /dev/null and b/docs/articles/web-only/points/pointtransects-distill_files/figure-html/basichist-1.png differ diff --git a/docs/articles/web-only/points/pointtransects-distill_files/figure-html/gof-1.png b/docs/articles/web-only/points/pointtransects-distill_files/figure-html/gof-1.png new file mode 100644 index 0000000..013f839 Binary files /dev/null and b/docs/articles/web-only/points/pointtransects-distill_files/figure-html/gof-1.png differ diff --git a/docs/articles/web-only/points/pointtransects-distill_files/figure-html/modelfit-1.png b/docs/articles/web-only/points/pointtransects-distill_files/figure-html/modelfit-1.png new file mode 100644 index 0000000..35023e4 Binary files /dev/null and b/docs/articles/web-only/points/pointtransects-distill_files/figure-html/modelfit-1.png differ diff --git a/docs/articles/web-only/pointtransects-distill.html b/docs/articles/web-only/pointtransects-distill.html new file mode 100644 index 0000000..ecdc3c0 --- /dev/null +++ b/docs/articles/web-only/pointtransects-distill.html @@ -0,0 +1,444 @@ + + + + + + + + +Point transect density estimation • Distance + + + + + + + + + + Skip to contents + + +
+ + +
+
+ + + +

In this exercise, we use R (R Core Team, 2019) and the Distance package (Miller, Rexstad, Thomas, Marshall, & Laake, 2019) to fit different detection function models to point transect survey data of savanna sparrows (Passerculus sandwichensis) density and abundance. These data were part of a study examining the effect of livestock grazing upon vegetation structure and consequently upon the avian community described by Knopf et al. (1988).

+

Steps in this analysis are similar to the steps taken in the line transect analysis of winter wren data.

+
+

Objectives +

+
    +
  • Import a data file
  • +
  • Fit a basic detection function using the ds function
  • +
  • Plot and examine a detection function
  • +
  • Fit different detection function forms.
  • +
+
+
+

Survey design +

+

A total of 373 point transects were placed in three pastures in the Arapaho National Wildlife Refuge in Colorado (Figure 1). Elevation of these pastures was ~2500m. We will not deal with pasture-level analysis of these data in this vignette and will alter the data to remove the strata designations.

+
+ +Summer grazed pastures along Illinois River Arapaho National Wildlife Refuge, Colorado.  Figure from [@knopf_guild_1988].

+Figure 1: Summer grazed pastures along Illinois River Arapaho National Wildlife Refuge, Colorado. Figure from (Knopf et al., 1988). +

+
+

The fields of the Savannah_sparrow_1980 data set are:

+
    +
  • Region.Label - three pastures that constituted sections of the study area. However, for this vignette we are going to make all labels identical. This will treat the data as if they were all detected in the same pasture. The matter of stratification will be taken up in another vignette.
  • +
  • Area - size of the study region. A place holder, because pasture sizes are not known. Estimates of density and abundance will be equivalent.
  • +
  • Sample.Label - point transect identifier (total of 373 points)
  • +
  • Effort - number of visits to each point
  • +
  • object - unique identifier for each detected savanna sparrow
  • +
  • distance - radial distance (metres) to each detection
  • +
  • Study.Area - only data for savanna sparrow (SASP) are included in this data set
  • +
+
+
+

Make the data available for R session +

+

This command assumes that the dsdata package has been installed on your computer. The R workspace Savannah_sparrow_1980 contains detections of savanna sparrows from point transect surveys of Knopf et al. (1988).

+
+library(Distance)
+data(Savannah_sparrow_1980)
+#  remove pasture-level identifier in Region.Label
+Savannah_sparrow_1980$Region.Label <- "Single_stratum"
+

The code above overwrites the strata designations in the original data to make it appear that all data were derived from a single stratum. This makes the analysis simpler to perform. There are examples of analysis of stratified data in another vignette.

+

Examine the first few rows of Savannah_sparrow_1980 using the function head()

+
+head(Savannah_sparrow_1980)
+
##     Region.Label Area Sample.Label Effort object distance Study.Area
+## 1 Single_stratum    1    POINT   1      1     NA       NA  SASP 1980
+## 2 Single_stratum    1    POINT   2      1     NA       NA  SASP 1980
+## 3 Single_stratum    1    POINT   3      1     NA       NA  SASP 1980
+## 4 Single_stratum    1    POINT   4      1     NA       NA  SASP 1980
+## 5 Single_stratum    1    POINT   5      1     NA       NA  SASP 1980
+## 6 Single_stratum    1    POINT   6      1     NA       NA  SASP 1980
+

The object Savannah_sparrow_1980 is a dataframe object made up of rows and columns. In contrast to the Montrave winter wren line transect data used in the previous vignette, savannah sparrows were not detected at all point transects. Radial distances receive the value NA for transects where there were no detections. To determine the number of detections in this data set, we total the number of values in the distance field that are not NA

+
+sum(!is.na(Savannah_sparrow_1980$distance))
+
## [1] 276
+
+
+

Examine the distribution of detection distances +

+

Gain familiarity with the radial distance data using the hist() function (Figure 2).

+
+hist(Savannah_sparrow_1980$distance, xlab="Distance (m)", 
+     main="Savannah sparrow point transects")
+
+ +Histogram of radial distances of savannah sparrows across all pastures.

+Figure 2: Histogram of radial distances of savannah sparrows across all pastures. +

+
+

Note the shape of the radial distance histogram does not resemble the shape of perpendicular distances gathered from line transect sampling (Buckland, Rexstad, Marques, & Oedekoven, 2015, sec. 1.3).

+
+
+

Specify unit conversions +

+

With point transects, there are only units of measure associated with the size of the study area and the radial distance measures, because effort is measured in number of visits, rather than distance.

+
    +
  • distance_units +
      +
    • units of measure for radial distances
    • +
    +
  • +
  • effort_units +
      +
    • units of measure for effort (NULL for point transects)
    • +
    +
  • +
  • area_units +
      +
    • units of measure for the study area. Recall this data set has set the size of the study area to be 1, resulting in abundance and density to be equal.
    • +
    +
  • +
+
+conversion.factor <- convert_units("meter", NULL, "hectare")
+
+
+

Fitting a simple detection function model with ds +

+

Detection functions are fitted using the ds function and this function requires a data frame to have a column called distance. We have this in our nests data, therefore, we can simply supply the name of the data frame to the function along with additional arguments.

+

Details about the arguments for this function:

+
    +
  • +key="hn" +
      +
    • fit a half-normal key detection function
    • +
    +
  • +
  • +adjustment=NULL +
      +
    • do not include adjustment terms
    • +
    +
  • +
  • +transect="point" +
      +
    • necessary to indicate this is point transect data
    • +
    +
  • +
  • +convert_units=conversion.factor +
      +
    • required because, for this example, the radial distances are in metres . Our density estimates will be reported in number of birds per hectare.
    • +
    +
  • +
  • +truncation="5%" +
      +
    • right truncation (described below)
    • +
    +
  • +
+

As is customary, right truncation is employed to remove 5% of the observations most distant from the transects, as detections at these distances contain little information about the shape of the fitted probability density function near the point.

+
+sasp.hn <- ds(data=Savannah_sparrow_1980, key="hn", adjustment=NULL,
+              transect="point", convert_units=conversion.factor, truncation="5%")
+

On calling the ds function, information is provided to the screen reminding the user what model has been fitted and the associated AIC value. More information is supplied by applying the summary() function to the object created by ds().

+
+summary(sasp.hn)
+
## 
+## Summary for distance analysis 
+## Number of observations :  262 
+## Distance range         :  0  -  51.025 
+## 
+## Model       : Half-normal key function 
+## AIC         :  2021.776 
+## Optimisation:  mrds (nlminb) 
+## 
+## Detection function parameters
+## Scale coefficient(s):  
+##             estimate         se
+## (Intercept) 3.044624 0.04270318
+## 
+##                       Estimate          SE         CV
+## Average p             0.321125  0.02296165 0.07150378
+## N in covered region 815.881752 71.61153776 0.08777196
+## 
+## Summary statistics:
+##           Region Area CoveredArea Effort   n   k        ER      se.ER
+## 1 Single_stratum    1    305.0877    373 262 373 0.7024129 0.04726421
+##        cv.ER
+## 1 0.06728836
+## 
+## Abundance:
+##   Label Estimate        se         cv      lcl      ucl       df
+## 1 Total 2.674253 0.2625745 0.09818612 2.206266 3.241509 598.5905
+## 
+## Density:
+##   Label Estimate        se         cv      lcl      ucl       df
+## 1 Total 2.674253 0.2625745 0.09818612 2.206266 3.241509 598.5905
+

Visually inspect the fitted detection function with the plot() function, specifying the cutpoints histogram with argument breaks. Add the argument pdf so the plot shows the probability densiy function rather than the detection function. The probability density function is preferred for assessing model fit because the PDF incorporates information about the availability of animals to be detected. There are few animals available to be detected at small distances, therefore lack of fit at small distances is not as consequential for points as it is for lines (Figure 3).

+
+cutpoints <- c(0,5,10,15,20,30,40,max(Savannah_sparrow_1980$distance, na.rm=TRUE))
+plot(sasp.hn, breaks=cutpoints, pdf=TRUE, main="Savannah sparrow point transect data.")
+
+ +Fit of half normal detection function to savannah sparrow data.

+Figure 3: Fit of half normal detection function to savannah sparrow data. +

+
+
+
+

Specifying different detection functions +

+

Detection function forms and shapes, are specified by changing the key and adjustment arguments.

+

The options available for key and adjustment elements detection functions are:

+
    +
  • half normal (key="hn") - default
  • +
  • hazard rate (key="hr")
  • +
  • uniform (key="unif")
  • +
  • no adjustment terms (adjustment=NULL)
  • +
  • cosine (adjustment="cos") - default
  • +
  • Hermite polynomial (adjustment="herm")
  • +
  • Simple polynomial (adjustment="poly")
  • +
+

To fit a uniform key function with cosine adjustment terms, use the command:

+
+sasp.unif.cos <- ds(Savannah_sparrow_1980, key="unif", adjustment="cos",
+                    transect="point", convert_units=conversion.factor, truncation="5%")
+

To fit a hazard rate key function with simple polynomial adjustment terms, then use the command:

+
+sasp.hr.poly <- ds(Savannah_sparrow_1980, key="hr", adjustment="poly", 
+                   transect="point", convert_units=conversion.factor, truncation="5%")
+
+
+

Model comparison +

+

Each fitted detection function produces a different estimate of Savannah sparrow abundance and density. The estimate depends upon the model chosen. The model selection tool for distance sampling data is AIC.

+
+AIC(sasp.hn, sasp.hr.poly, sasp.unif.cos)
+
##               df      AIC
+## sasp.hn        1 2021.776
+## sasp.hr.poly   3 2024.785
+## sasp.unif.cos  1 2023.178
+
+

Absolute goodness of fit +

+

In addition to the relative ranking of models provided by AIC, it is also important to know whether selected model(s) actually fit the data. The model is the basis of inference, so it is dangerous to make inference from a model that does not fit the data. Goodness of fit is assessed using the function gof_ds (Figure 4).

+
+gof_ds(sasp.hn)
+
+ +Q-Q plot of half normal detection function to savannah sparrow data.

+Figure 4: Q-Q plot of half normal detection function to savannah sparrow data. +

+
+
## 
+## Goodness of fit results for ddf object
+## 
+## Distance sampling Cramer-von Mises test (unweighted)
+## Test statistic = 0.0835959 p-value = 0.671325
+
+
+
+

Model comparison tables +

+

The function summarise_ds_models combines the work of AIC and gof_ds to produce a table of fitted models and summary statistics.

+
+knitr::kable(summarize_ds_models(sasp.hn, sasp.hr.poly, sasp.unif.cos),digits=3,
+             caption="Model selection summary of savannah sparrow point transect data.")
+ + ++++++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Table 1: Model selection summary of savannah sparrow point transect data.
ModelKey functionFormulaC-vM p-value\(\hat{P_a}\)se(\(\hat{P_a}\)) +\(\Delta\)AIC
1Half-normal~10.6710.3210.0230.000
3Uniform with cosine adjustment term of order 1NA0.3640.3500.0151.402
2Hazard-rate with simple polynomial adjustment term of order 4~10.9040.2950.0533.009
+
+
+

Conclusions +

+

Key differences between analysis of line transect data and point transect data

+
    +
  • argument transect in ds() must be set to "point",
  • +
  • histogram of radial detection distances is characteristically “humped” because few individuals are available to be detected near the points,
  • +
  • because of the hump shape (Figure 2), plotting to assess fit of data to detection distribution usually assessed via pdf=TRUE argument added to plot() function,
  • +
  • for the Arapaho National Refuge Savannah sparrow data, the three candidate models all provide adequeate fit to the data and produce comparable estimates of \(P_a\).
  • +
+
+
+Buckland, S., Rexstad, E., Marques, T., & Oedekoven, C. (2015). Distance sampling: Methods and applications. Springer. +
+
+Knopf, F. L., Sedgwick, J. A., & Cannon, R. W. (1988). Guild structure of a riparian avifauna relative to seasonal cattle grazing. The Journal of Wildlife Management, 52(2), 280–290. https://doi.org/10.2307/3801235 +
+
+Miller, D. L., Rexstad, E., Thomas, L., Marshall, L., & Laake, J. L. (2019). Distance sampling in r. Journal of Statistical Software, 89(1), 1–28. https://doi.org/10.18637/jss.v089.i01 +
+
+R Core Team. (2019). R: A language and environment for statistical computing. Vienna Austria: R Foundation for Statistical Computing. +
+
+
+
+
+ + + +
+ + + +
+
+ + + + + + + diff --git a/docs/articles/web-only/pointtransects-distill_files/figure-html/basichist-1.png b/docs/articles/web-only/pointtransects-distill_files/figure-html/basichist-1.png new file mode 100644 index 0000000..2ee2d1d Binary files /dev/null and b/docs/articles/web-only/pointtransects-distill_files/figure-html/basichist-1.png differ diff --git a/docs/articles/web-only/pointtransects-distill_files/figure-html/gof-1.png b/docs/articles/web-only/pointtransects-distill_files/figure-html/gof-1.png new file mode 100644 index 0000000..013f839 Binary files /dev/null and b/docs/articles/web-only/pointtransects-distill_files/figure-html/gof-1.png differ diff --git a/docs/articles/web-only/pointtransects-distill_files/figure-html/modelfit-1.png b/docs/articles/web-only/pointtransects-distill_files/figure-html/modelfit-1.png new file mode 100644 index 0000000..35023e4 Binary files /dev/null and b/docs/articles/web-only/pointtransects-distill_files/figure-html/modelfit-1.png differ diff --git a/docs/articles/web-only/strata/arapaho.jpg b/docs/articles/web-only/strata/arapaho.jpg new file mode 100644 index 0000000..4633ecf Binary files /dev/null and b/docs/articles/web-only/strata/arapaho.jpg differ diff --git a/docs/articles/web-only/strata/strata-distill.html b/docs/articles/web-only/strata/strata-distill.html new file mode 100644 index 0000000..f147899 --- /dev/null +++ b/docs/articles/web-only/strata/strata-distill.html @@ -0,0 +1,253 @@ + + + + + + + +Analysis of stratified survey designs • Distance + + + + + + + + + + + + Skip to contents + + +
+ + +
+
+ + + +

In this exercise, we use R (R Core Team, 2019) and the Distance package (Miller, Rexstad, Thomas, Marshall, & Laake, 2019) to fit different detection function models to point transect survey data of savanna sparrows (Passerculus sandwichensis) density and abundance. These data were part of a study examining the effect of livestock grazing upon vegetation structure and consequently upon the avian community described by Knopf et al. (1988). This dataset was also used to demonstrate point transect analysis

+
+

Objectives +

+
    +
  • Fit a detection function pooling data across pastures,
  • +
  • Fit pasture-specific detection functions,
  • +
  • Choose most appropriate analysis using model selection.
  • +
+
+
+

Survey design +

+

A total of 373 point transects were placed in three pastures in the Arapaho National Wildlife Refuge in Colorado (Figure 1). Elevation of these pastures was ~2500m. In this example, we will perform pasture-level analysis of these data.

+
+ +Summer grazed pastures along Illinois River Arapaho National Wildlife Refuge, Colorado.
+Figure from [@knopf_guild_1988].

+Figure 1: Summer grazed pastures along Illinois River Arapaho National Wildlife Refuge, Colorado. +Figure from (Knopf et al., 1988). +

+
+

The fields of the Savannah_sparrow_1980 data set are:

+
    +
  • Region.Label - three pastures that constituted sections of the study area.
    +
  • +
  • Area - size of the study region. A place holder, because pasture sizes are not known. Estimates of density and abundance will be equivalent.
  • +
  • Sample.Label - point transect identifier (total of 273)
  • +
  • Effort - number of visits to each point
  • +
  • object - unique identifier for each detected savanna sparrow
  • +
  • distance - radial distance (metres) to each detection
  • +
  • Study.Area - only data for savanna sparrow (SASP) are included in this data set
  • +
+
+
+

Make the data available for R session +

+

This command assumes that the dsdata package has been installed on your computer. The R workspace Savannah_sparrow_1980 contains detections of savanna sparrows from point transect surveys of Knopf et al. (1988).

+
+library(Distance)
+data(Savannah_sparrow_1980)
+conversion.factor <- convert_units("meter", NULL, "hectare")
+
+
+

Separate data into pasture-specific data sets +

+

The simplest way to fit pasture-specific detection functions is to subset the data. This could be done at the time the ds() function is called, but we perform the step here as a data preparation step.

+
+sasp.past1 <- subset(Savannah_sparrow_1980, Region.Label == "PASTURE 1")
+sasp.past2 <- subset(Savannah_sparrow_1980, Region.Label == "PASTURE 2")
+sasp.past3 <- subset(Savannah_sparrow_1980, Region.Label == "PASTURE 3")
+
+
+

Pasture (stratum)-specific detection functions +

+

Fit half-normal key functions without adjustments to each pasture separately after performing 5% right truncation.

+
+past1.hn <- ds(data=sasp.past1, key="hn", adjustment=NULL,
+              transect="point", convert_units=conversion.factor, truncation="5%")
+past2.hn <- ds(data=sasp.past2, key="hn", adjustment=NULL,
+              transect="point", convert_units=conversion.factor, truncation="5%")
+past3.hn <- ds(data=sasp.past3, key="hn", adjustment=NULL,
+              transect="point", convert_units=conversion.factor, truncation="5%")
+

The total AIC for the model that fits separate detection functions to each pasture is the sum of the AICs for the individual pastures.

+
+model.separate.AIC <- sum(AIC(past1.hn, past2.hn, past3.hn)$AIC) 
+
+
+

Common detection function across pastures +

+

This model is much simpler to fit because there is only a single call to ds() using the original data.

+
+model.pooled <- ds(data=Savannah_sparrow_1980, key="hn", adjustment=NULL,
+                   transect="point", convert_units = conversion.factor, truncation = "5%")
+model.pooled.AIC <- AIC(model.pooled)
+
+
+

Comparison of AIC scores +

+
+cat(paste("Stratum-specific detection AIC", round(model.separate.AIC),
+      "\nCommon detection function AIC", round(model.pooled.AIC$AIC)), sep=" ")
+
## Stratum-specific detection AIC 2007 
+## Common detection function AIC 2022
+

Because the AIC for model with stratum-specific detection functions (2007) is less than AIC for model with pooled detection function (2022), we base our inference upon the stratum-specific detection function model (depicted in Figure 2).

+
+cutpoints <- c(0,5,10,15,20,30,40,53)
+par(mfrow=c(1,3))
+plot(past1.hn, breaks=cutpoints, pdf=TRUE, main="Pasture 1")
+plot(past2.hn, breaks=cutpoints, pdf=TRUE, main="Pasture 2")
+plot(past3.hn, breaks=cutpoints, pdf=TRUE, main="Pasture 3")
+
+ +Pasture-specific detection functions based upon half-normal key function.

+Figure 2: Pasture-specific detection functions based upon half-normal key function. +

+
+
+

Absolute goodness of fit +

+

Always best to check the fit of the preferred model to the data.

+
+gof_ds(past1.hn, plot = FALSE)
+gof_ds(past2.hn, plot = FALSE)
+gof_ds(past3.hn, plot = FALSE)
+
## 
+## Goodness of fit results for ddf object
+## 
+## Distance sampling Cramer-von Mises test (unweighted)
+## Test statistic = 0.0939637 p-value = 0.615284
+## 
+## Goodness of fit results for ddf object
+## 
+## Distance sampling Cramer-von Mises test (unweighted)
+## Test statistic = 0.0478577 p-value = 0.889162
+## 
+## Goodness of fit results for ddf object
+## 
+## Distance sampling Cramer-von Mises test (unweighted)
+## Test statistic = 0.0402974 p-value = 0.931609
+

Further exploration of analyses involving stratification can be found in the example of dung survey analysis.

+
+
+
+

Comments +

+

Note there is a difference of 14 AIC units between the model using stratum-specific detection functions and the model using a pooled detection function, with the stratum-specific detection function model being preferrable. To be thorough, absolute goodness of fit for the three stratum-specific detection functions is checked, and all models fit the data adequately.

+

This vignette focuses upon use of stratum-specific detection functions as a model selection exercise. Consequently, the vignette does not examine stratum-specific abundance or density estimates. That output is not included in this example analysis, but can easily be produced by continuing the analysis begun in this example.

+
+
+

References +

+
+
+Knopf, F. L., Sedgwick, J. A., & Cannon, R. W. (1988). Guild structure of a riparian avifauna relative to seasonal cattle grazing. The Journal of Wildlife Management, 52(2), 280–290. https://doi.org/10.2307/3801235 +
+
+Miller, D. L., Rexstad, E., Thomas, L., Marshall, L., & Laake, J. L. (2019). Distance sampling in r. Journal of Statistical Software, 89(1), 1–28. https://doi.org/10.18637/jss.v089.i01 +
+
+R Core Team. (2019). R: A language and environment for statistical computing. Vienna Austria: R Foundation for Statistical Computing. +
+
+
+
+
+ + + +
+ + + +
+
+ + + + + + + diff --git a/docs/articles/web-only/strata/strata-distill_files/figure-html/threeplot-1.png b/docs/articles/web-only/strata/strata-distill_files/figure-html/threeplot-1.png new file mode 100644 index 0000000..0b1d208 Binary files /dev/null and b/docs/articles/web-only/strata/strata-distill_files/figure-html/threeplot-1.png differ diff --git a/docs/articles/web-only/variance/variance-distill.html b/docs/articles/web-only/variance/variance-distill.html new file mode 100644 index 0000000..0062de6 --- /dev/null +++ b/docs/articles/web-only/variance/variance-distill.html @@ -0,0 +1,252 @@ + + + + + + + +Variance estimation • Distance + + + + + + + + + + + + Skip to contents + + +
+ + +
+
+ + + +

Continuing with the Montrave winter wren line transect data from the line transect vignette, we focus upon producing robust estimates of precision in our point estimates of abundance and density. The analysis in R (R Core Team, 2019) makes use of the Distance package (Miller, Rexstad, Thomas, Marshall, & Laake, 2019).

+
+

Objectives +

+
    +
  • Estimate precision in the standard manner
  • +
  • Use the bootstrap to estimate precision
  • +
  • Incorporate model uncertainty in our estimates of precision
  • +
+
+
+

Survey data +

+

The R workspace wren_lt contains detections of winter wrens from the line transect surveys of S. T. Buckland (2006).

+
+library(Distance)
+data(wren_lt)
+

The function names() allows you to see the names of the columns of the data frame wren_lt. Definitions of those fields were provided in the line transect vignette.

+

The effort, or transect length has been adjusted to recognise each transect is walked twice.

+
+conversion.factor <- convert_units("meter", "kilometer", "hectare")
+
+
+

Fitting a suitable detection function +

+

Rather than refitting models used in the line transect vignette, we move directly to the model selected by S. T. Buckland (2006).

+
+wren.unif.cos <- ds(wren_lt, key="unif", adjustment="cos",
+                  convert_units=conversion.factor)
+

Based upon experience in the field, the uniform cosine model was used for inference.

+
+
+

Estimation of precision +

+

Looking at the density estimates from the uniform cosine model

+
+print(wren.unif.cos$dht$individuals$D)
+
##   Label Estimate        se        cv       lcl      ucl      df
+## 1 Total 1.066101 0.2126892 0.1995019 0.7218009 1.574632 168.204
+

The coefficient of variation (CV) is 0.2, and confidence interval bounds are (0.72 - 1.57) birds per hectare. The coefficient of variation is based upon a delta-method approximation of the uncertainty in both the parameters of the detection function and the variability in encounter rates between transects.

+

\[[CV(\hat{D})]^2 = [CV(\frac{n}{L})]^2 + [CV(P_a)]^2\] +where

+
    +
  • +\(n\) is number of detections
  • +
  • +\(L\) is total effort
  • +
  • +\(P_a\) is probability of detection given a bird is within the covered region.
  • +
+

These confidence interval bounds assume the sampling distribution of \(\hat{D}\) is log-normal (S. Buckland, Rexstad, Marques, & Oedekoven, 2015, sec. 6.2.1).

+
+

Bootstrap estimates of precision +

+

Rather than relying upon the delta-method approximation that assumes independence between uncertainty in the detection function and variability in encounter rate, a bootstrap procedure can be employed. Resampling with replacement of the transects produces replicate samples with which a sampling distribution of \(\hat{D}\) is approximated. From that sampling distribution, the percentile method is used to produce confidence interval bounds respecting the shape of the sampling distribution (S. Buckland et al., 2015, sec. 6.3.1.2).

+

The function bootdht_Nhat_summarize is included in the Distance package. It is used to extract information from the object created by bootdht. I will modify it slightly so as to extract the density estimates rather than the abundance estimates.

+
+bootdht_Dhat_summarize <- function(ests, fit) {
+  return(data.frame(D=ests$individuals$D$Estimate))
+}
+

After the summary function is defined, the bootstrap procedure can be performed. Arguments here are the name of the fitted object, the object containing the data, conversion factor and number of bootstrap replicates. Here, I use the cores= argument to use multiple cores to process the bootstraps in parallel. If you do not have this many cores in your computer, you will need to reduce/remove the argument.

+
+nboots <- 300
+est.boot <- bootdht(model=wren.unif.cos, flatfile=wren_lt,
+                    summary_fun=bootdht_Dhat_summarize,
+                    convert_units=conversion.factor, nboot=nboots, cores=10)
+

The object est.boot contains a data frame with two columns consisting of \(\hat{D}\) as specified in bootdht_Dhat_summarize. This data frame can be processed to produce a histogram (Fig. 1) representing the sampling distribution of the estimated parameters as well as the percentile confidence interval bounds.

+
+alpha <- 0.05
+(bootci <- quantile(est.boot$D, probs = c(alpha/2, 1-alpha/2), na.rm=TRUE))
+
##      2.5%     97.5% 
+## 0.7940937 1.4088653
+
+hist(est.boot$D, nc=30,
+     main="Distribution of bootstrap estimates\nwithout model uncertainty",
+     xlab="Estimated density")
+abline(v=bootci, lwd=2, lty=2)
+
+ +Sampling distribution of $\hat{D}$ approximated from bootstrap.

+Figure 1: Sampling distribution of \(\hat{D}\) approximated from bootstrap. +

+
+
+
+
+

Incorporating model uncertainty in precision estimates +

+

The argument model in bootdht can be a single model as shown above, or it can consist of a list of models. In the later instance, all models in the list are fitted to each bootstrap replicate and model selection based on AIC is performed for each replicate. The consequence is that model uncertainty is incorporated into the resulting estimate of precision (Fig. 2).

+
+wren.hn <- ds(wren_lt, key="hn", adjustment="cos",
+                  convert_units=conversion.factor)
+
## Warning in check.mono(result, n.pts = control$mono.points): Detection function
+## is not strictly monotonic!
+## Warning in check.mono(result, n.pts = control$mono.points): Detection function
+## is not strictly monotonic!
+
+wren.hr.poly <- ds(wren_lt, key="hr", adjustment="poly",
+                  convert_units=conversion.factor)
+est.boot.uncert <- bootdht(model=list(wren.hn, wren.hr.poly, wren.unif.cos), 
+                           flatfile=wren_lt,
+                           summary_fun=bootdht_Dhat_summarize,
+                           convert_units=conversion.factor, nboot=nboots, cores=10)
+
+(modselci <- quantile(est.boot.uncert$D, probs = c(alpha/2, 1-alpha/2), na.rm=TRUE))
+
##      2.5%     97.5% 
+## 0.8080775 1.3620822
+
+hist(est.boot.uncert$D, nc=30, 
+     main="Distribution of bootstrap estimates\nincluding model uncertainty",
+     xlab="Estimated density")
+abline(v=modselci, lwd=2, lty=2)
+
+ +Sampling distribution of $\hat{D}$ approximated from bootstrap including model uncertainty.

+Figure 2: Sampling distribution of \(\hat{D}\) approximated from bootstrap including model uncertainty. +

+
+
+
+

Comments +

+

Recognise that producing bootstrap estimates of precision is computer-intensive. In this example we have created only 300 bootstrap replicates in the interest of computation time. For inference you wish to draw, you will likely increase the number of bootstrap replicates to 999.

+

For this data set, the bootstrap estimate of precision is greater than the delta-method approximation precision (based on confidence interval width). In addition, incorporating model uncertainty into the estimate of precision for density changes the precision estimate very little. The confidence interval width without incorporating model uncertainty is 0.615 while the confidence interval including model uncertainty is 0.554. This represents a change of -10% due to uncertainty regarding the best model for these data.

+
+
+

References +

+
+
+Buckland, S. T. (2006). Point transect surveys for songbirds: Robust methodologies. The Auk, 123(2), 345–345. https://doi.org/10.1642/0004-8038(2006)123[345:psfsrm]2.0.co;2 +
+
+Buckland, S., Rexstad, E., Marques, T., & Oedekoven, C. (2015). Distance sampling: Methods and applications. Springer. +
+
+Miller, D. L., Rexstad, E., Thomas, L., Marshall, L., & Laake, J. L. (2019). Distance sampling in r. Journal of Statistical Software, 89(1), 1–28. https://doi.org/10.18637/jss.v089.i01 +
+
+R Core Team. (2019). R: A language and environment for statistical computing. Vienna Austria: R Foundation for Statistical Computing. +
+
+
+
+
+ + + +
+ + + +
+
+ + + + + + + diff --git a/docs/articles/web-only/variance/variance-distill_files/figure-html/single-1.png b/docs/articles/web-only/variance/variance-distill_files/figure-html/single-1.png new file mode 100644 index 0000000..116f22b Binary files /dev/null and b/docs/articles/web-only/variance/variance-distill_files/figure-html/single-1.png differ diff --git a/docs/articles/web-only/variance/variance-distill_files/figure-html/triple-1.png b/docs/articles/web-only/variance/variance-distill_files/figure-html/triple-1.png new file mode 100644 index 0000000..1ed0052 Binary files /dev/null and b/docs/articles/web-only/variance/variance-distill_files/figure-html/triple-1.png differ diff --git a/docs/articles/web-only/variance/variance-distill_files/figure-html/unnamed-chunk-10-1.png b/docs/articles/web-only/variance/variance-distill_files/figure-html/unnamed-chunk-10-1.png new file mode 100644 index 0000000..74438f5 Binary files /dev/null and b/docs/articles/web-only/variance/variance-distill_files/figure-html/unnamed-chunk-10-1.png differ diff --git a/docs/articles/web-only/variance/variance-distill_files/figure-html/unnamed-chunk-8-1.png b/docs/articles/web-only/variance/variance-distill_files/figure-html/unnamed-chunk-8-1.png new file mode 100644 index 0000000..669976e Binary files /dev/null and b/docs/articles/web-only/variance/variance-distill_files/figure-html/unnamed-chunk-8-1.png differ diff --git a/docs/authors.html b/docs/authors.html new file mode 100644 index 0000000..c6e73d5 --- /dev/null +++ b/docs/authors.html @@ -0,0 +1,120 @@ + +Authors and Citation • Distance + Skip to contents + + +
+
+
+ +
+

Authors

+ +
  • +

    Laura Marshall. Maintainer. +

    +
  • +
  • +

    David Miller. Author. +

    +
  • +
  • +

    T.J. Clark-Wolf. Author. +

    +
  • +
  • +

    Len Thomas. Contributor. +

    +
  • +
  • +

    Jeff Laake. Contributor. +

    +
  • +
  • +

    Eric Rexstad. Reviewer. +

    +
  • +
+ +
+

Citation

+

Source: inst/CITATION

+ +

Miller DL, Rexstad E, Thomas L, Marshall L, Laake JL (2019). +“Distance Sampling in R.” +Journal of Statistical Software, 89(1), 1–28. +doi:10.18637/jss.v089.i01. +

+
@Article{,
+  title = {Distance Sampling in {R}},
+  author = {David L. Miller and Eric Rexstad and Len Thomas and Laura Marshall and Jeffrey L. Laake},
+  journal = {Journal of Statistical Software},
+  year = {2019},
+  volume = {89},
+  number = {1},
+  pages = {1--28},
+  doi = {10.18637/jss.v089.i01},
+}
+
+ +
+ + +
+ + + +
+ + + + + + + diff --git a/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu4WxKOzY.woff2 b/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu4WxKOzY.woff2 new file mode 100644 index 0000000..fc71d94 Binary files /dev/null and b/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu4WxKOzY.woff2 differ diff --git a/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu4mxK.woff2 b/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu4mxK.woff2 new file mode 100644 index 0000000..020729e Binary files /dev/null and b/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu4mxK.woff2 differ diff --git a/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu5mxKOzY.woff2 b/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu5mxKOzY.woff2 new file mode 100644 index 0000000..47da362 Binary files /dev/null and b/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu5mxKOzY.woff2 differ diff --git a/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu72xKOzY.woff2 b/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu72xKOzY.woff2 new file mode 100644 index 0000000..22ddee9 Binary files /dev/null and b/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu72xKOzY.woff2 differ diff --git a/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu7GxKOzY.woff2 b/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu7GxKOzY.woff2 new file mode 100644 index 0000000..8a8de61 Binary files /dev/null and b/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu7GxKOzY.woff2 differ diff --git a/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu7WxKOzY.woff2 b/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu7WxKOzY.woff2 new file mode 100644 index 0000000..6284d2e Binary files /dev/null and b/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu7WxKOzY.woff2 differ diff --git a/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu7mxKOzY.woff2 b/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu7mxKOzY.woff2 new file mode 100644 index 0000000..72ce0e9 Binary files /dev/null and b/docs/deps/Roboto-0.4.9/KFOmCnqEu92Fr1Mu7mxKOzY.woff2 differ diff --git a/docs/deps/Roboto-0.4.9/font.css b/docs/deps/Roboto-0.4.9/font.css new file mode 100644 index 0000000..171e30a --- /dev/null +++ b/docs/deps/Roboto-0.4.9/font.css @@ -0,0 +1,63 @@ +/* cyrillic-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url(KFOmCnqEu92Fr1Mu72xKOzY.woff2) format('woff2'); + unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; +} +/* cyrillic */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url(KFOmCnqEu92Fr1Mu5mxKOzY.woff2) format('woff2'); + unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +} +/* greek-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url(KFOmCnqEu92Fr1Mu7mxKOzY.woff2) format('woff2'); + unicode-range: U+1F00-1FFF; +} +/* greek */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url(KFOmCnqEu92Fr1Mu4WxKOzY.woff2) format('woff2'); + unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF; +} +/* vietnamese */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url(KFOmCnqEu92Fr1Mu7WxKOzY.woff2) format('woff2'); + unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; +} +/* latin-ext */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url(KFOmCnqEu92Fr1Mu7GxKOzY.woff2) format('woff2'); + unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* latin */ +@font-face { + font-family: 'Roboto'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url(KFOmCnqEu92Fr1Mu4mxK.woff2) format('woff2'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} diff --git a/docs/deps/bootstrap-5.3.1/bootstrap.bundle.min.js b/docs/deps/bootstrap-5.3.1/bootstrap.bundle.min.js new file mode 100644 index 0000000..e8f21f7 --- /dev/null +++ b/docs/deps/bootstrap-5.3.1/bootstrap.bundle.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap v5.3.1 (https://getbootstrap.com/) + * Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).bootstrap=e()}(this,(function(){"use strict";const t=new Map,e={set(e,i,n){t.has(e)||t.set(e,new Map);const s=t.get(e);s.has(i)||0===s.size?s.set(i,n):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(s.keys())[0]}.`)},get:(e,i)=>t.has(e)&&t.get(e).get(i)||null,remove(e,i){if(!t.has(e))return;const n=t.get(e);n.delete(i),0===n.size&&t.delete(e)}},i="transitionend",n=t=>(t&&window.CSS&&window.CSS.escape&&(t=t.replace(/#([^\s"#']+)/g,((t,e)=>`#${CSS.escape(e)}`))),t),s=t=>{t.dispatchEvent(new Event(i))},o=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),r=t=>o(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?document.querySelector(n(t)):null,a=t=>{if(!o(t)||0===t.getClientRects().length)return!1;const e="visible"===getComputedStyle(t).getPropertyValue("visibility"),i=t.closest("details:not([open])");if(!i)return e;if(i!==t){const e=t.closest("summary");if(e&&e.parentNode!==i)return!1;if(null===e)return!1}return e},l=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),c=t=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof t.getRootNode){const e=t.getRootNode();return e instanceof ShadowRoot?e:null}return t instanceof ShadowRoot?t:t.parentNode?c(t.parentNode):null},h=()=>{},d=t=>{t.offsetHeight},u=()=>window.jQuery&&!document.body.hasAttribute("data-bs-no-jquery")?window.jQuery:null,f=[],p=()=>"rtl"===document.documentElement.dir,m=t=>{var e;e=()=>{const e=u();if(e){const i=t.NAME,n=e.fn[i];e.fn[i]=t.jQueryInterface,e.fn[i].Constructor=t,e.fn[i].noConflict=()=>(e.fn[i]=n,t.jQueryInterface)}},"loading"===document.readyState?(f.length||document.addEventListener("DOMContentLoaded",(()=>{for(const t of f)t()})),f.push(e)):e()},g=(t,e=[],i=t)=>"function"==typeof t?t(...e):i,_=(t,e,n=!0)=>{if(!n)return void g(t);const o=(t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:i}=window.getComputedStyle(t);const n=Number.parseFloat(e),s=Number.parseFloat(i);return n||s?(e=e.split(",")[0],i=i.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(i))):0})(e)+5;let r=!1;const a=({target:n})=>{n===e&&(r=!0,e.removeEventListener(i,a),g(t))};e.addEventListener(i,a),setTimeout((()=>{r||s(e)}),o)},b=(t,e,i,n)=>{const s=t.length;let o=t.indexOf(e);return-1===o?!i&&n?t[s-1]:t[0]:(o+=i?1:-1,n&&(o=(o+s)%s),t[Math.max(0,Math.min(o,s-1))])},v=/[^.]*(?=\..*)\.|.*/,y=/\..*/,w=/::\d+$/,A={};let E=1;const T={mouseenter:"mouseover",mouseleave:"mouseout"},C=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function O(t,e){return e&&`${e}::${E++}`||t.uidEvent||E++}function x(t){const e=O(t);return t.uidEvent=e,A[e]=A[e]||{},A[e]}function k(t,e,i=null){return Object.values(t).find((t=>t.callable===e&&t.delegationSelector===i))}function L(t,e,i){const n="string"==typeof e,s=n?i:e||i;let o=I(t);return C.has(o)||(o=t),[n,s,o]}function S(t,e,i,n,s){if("string"!=typeof e||!t)return;let[o,r,a]=L(e,i,n);if(e in T){const t=t=>function(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};r=t(r)}const l=x(t),c=l[a]||(l[a]={}),h=k(c,r,o?i:null);if(h)return void(h.oneOff=h.oneOff&&s);const d=O(r,e.replace(v,"")),u=o?function(t,e,i){return function n(s){const o=t.querySelectorAll(e);for(let{target:r}=s;r&&r!==this;r=r.parentNode)for(const a of o)if(a===r)return P(s,{delegateTarget:r}),n.oneOff&&N.off(t,s.type,e,i),i.apply(r,[s])}}(t,i,r):function(t,e){return function i(n){return P(n,{delegateTarget:t}),i.oneOff&&N.off(t,n.type,e),e.apply(t,[n])}}(t,r);u.delegationSelector=o?i:null,u.callable=r,u.oneOff=s,u.uidEvent=d,c[d]=u,t.addEventListener(a,u,o)}function D(t,e,i,n,s){const o=k(e[i],n,s);o&&(t.removeEventListener(i,o,Boolean(s)),delete e[i][o.uidEvent])}function $(t,e,i,n){const s=e[i]||{};for(const[o,r]of Object.entries(s))o.includes(n)&&D(t,e,i,r.callable,r.delegationSelector)}function I(t){return t=t.replace(y,""),T[t]||t}const N={on(t,e,i,n){S(t,e,i,n,!1)},one(t,e,i,n){S(t,e,i,n,!0)},off(t,e,i,n){if("string"!=typeof e||!t)return;const[s,o,r]=L(e,i,n),a=r!==e,l=x(t),c=l[r]||{},h=e.startsWith(".");if(void 0===o){if(h)for(const i of Object.keys(l))$(t,l,i,e.slice(1));for(const[i,n]of Object.entries(c)){const s=i.replace(w,"");a&&!e.includes(s)||D(t,l,r,n.callable,n.delegationSelector)}}else{if(!Object.keys(c).length)return;D(t,l,r,o,s?i:null)}},trigger(t,e,i){if("string"!=typeof e||!t)return null;const n=u();let s=null,o=!0,r=!0,a=!1;e!==I(e)&&n&&(s=n.Event(e,i),n(t).trigger(s),o=!s.isPropagationStopped(),r=!s.isImmediatePropagationStopped(),a=s.isDefaultPrevented());const l=P(new Event(e,{bubbles:o,cancelable:!0}),i);return a&&l.preventDefault(),r&&t.dispatchEvent(l),l.defaultPrevented&&s&&s.preventDefault(),l}};function P(t,e={}){for(const[i,n]of Object.entries(e))try{t[i]=n}catch(e){Object.defineProperty(t,i,{configurable:!0,get:()=>n})}return t}function M(t){if("true"===t)return!0;if("false"===t)return!1;if(t===Number(t).toString())return Number(t);if(""===t||"null"===t)return null;if("string"!=typeof t)return t;try{return JSON.parse(decodeURIComponent(t))}catch(e){return t}}function j(t){return t.replace(/[A-Z]/g,(t=>`-${t.toLowerCase()}`))}const F={setDataAttribute(t,e,i){t.setAttribute(`data-bs-${j(e)}`,i)},removeDataAttribute(t,e){t.removeAttribute(`data-bs-${j(e)}`)},getDataAttributes(t){if(!t)return{};const e={},i=Object.keys(t.dataset).filter((t=>t.startsWith("bs")&&!t.startsWith("bsConfig")));for(const n of i){let i=n.replace(/^bs/,"");i=i.charAt(0).toLowerCase()+i.slice(1,i.length),e[i]=M(t.dataset[n])}return e},getDataAttribute:(t,e)=>M(t.getAttribute(`data-bs-${j(e)}`))};class H{static get Default(){return{}}static get DefaultType(){return{}}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}_getConfig(t){return t=this._mergeConfigObj(t),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}_configAfterMerge(t){return t}_mergeConfigObj(t,e){const i=o(e)?F.getDataAttribute(e,"config"):{};return{...this.constructor.Default,..."object"==typeof i?i:{},...o(e)?F.getDataAttributes(e):{},..."object"==typeof t?t:{}}}_typeCheckConfig(t,e=this.constructor.DefaultType){for(const[n,s]of Object.entries(e)){const e=t[n],r=o(e)?"element":null==(i=e)?`${i}`:Object.prototype.toString.call(i).match(/\s([a-z]+)/i)[1].toLowerCase();if(!new RegExp(s).test(r))throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${n}" provided type "${r}" but expected type "${s}".`)}var i}}class W extends H{constructor(t,i){super(),(t=r(t))&&(this._element=t,this._config=this._getConfig(i),e.set(this._element,this.constructor.DATA_KEY,this))}dispose(){e.remove(this._element,this.constructor.DATA_KEY),N.off(this._element,this.constructor.EVENT_KEY);for(const t of Object.getOwnPropertyNames(this))this[t]=null}_queueCallback(t,e,i=!0){_(t,e,i)}_getConfig(t){return t=this._mergeConfigObj(t,this._element),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}static getInstance(t){return e.get(r(t),this.DATA_KEY)}static getOrCreateInstance(t,e={}){return this.getInstance(t)||new this(t,"object"==typeof e?e:null)}static get VERSION(){return"5.3.1"}static get DATA_KEY(){return`bs.${this.NAME}`}static get EVENT_KEY(){return`.${this.DATA_KEY}`}static eventName(t){return`${t}${this.EVENT_KEY}`}}const B=t=>{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let i=t.getAttribute("href");if(!i||!i.includes("#")&&!i.startsWith("."))return null;i.includes("#")&&!i.startsWith("#")&&(i=`#${i.split("#")[1]}`),e=i&&"#"!==i?i.trim():null}return n(e)},z={find:(t,e=document.documentElement)=>[].concat(...Element.prototype.querySelectorAll.call(e,t)),findOne:(t,e=document.documentElement)=>Element.prototype.querySelector.call(e,t),children:(t,e)=>[].concat(...t.children).filter((t=>t.matches(e))),parents(t,e){const i=[];let n=t.parentNode.closest(e);for(;n;)i.push(n),n=n.parentNode.closest(e);return i},prev(t,e){let i=t.previousElementSibling;for(;i;){if(i.matches(e))return[i];i=i.previousElementSibling}return[]},next(t,e){let i=t.nextElementSibling;for(;i;){if(i.matches(e))return[i];i=i.nextElementSibling}return[]},focusableChildren(t){const e=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map((t=>`${t}:not([tabindex^="-"])`)).join(",");return this.find(e,t).filter((t=>!l(t)&&a(t)))},getSelectorFromElement(t){const e=B(t);return e&&z.findOne(e)?e:null},getElementFromSelector(t){const e=B(t);return e?z.findOne(e):null},getMultipleElementsFromSelector(t){const e=B(t);return e?z.find(e):[]}},R=(t,e="hide")=>{const i=`click.dismiss${t.EVENT_KEY}`,n=t.NAME;N.on(document,i,`[data-bs-dismiss="${n}"]`,(function(i){if(["A","AREA"].includes(this.tagName)&&i.preventDefault(),l(this))return;const s=z.getElementFromSelector(this)||this.closest(`.${n}`);t.getOrCreateInstance(s)[e]()}))},q=".bs.alert",V=`close${q}`,K=`closed${q}`;class Q extends W{static get NAME(){return"alert"}close(){if(N.trigger(this._element,V).defaultPrevented)return;this._element.classList.remove("show");const t=this._element.classList.contains("fade");this._queueCallback((()=>this._destroyElement()),this._element,t)}_destroyElement(){this._element.remove(),N.trigger(this._element,K),this.dispose()}static jQueryInterface(t){return this.each((function(){const e=Q.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}R(Q,"close"),m(Q);const X='[data-bs-toggle="button"]';class Y extends W{static get NAME(){return"button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(t){return this.each((function(){const e=Y.getOrCreateInstance(this);"toggle"===t&&e[t]()}))}}N.on(document,"click.bs.button.data-api",X,(t=>{t.preventDefault();const e=t.target.closest(X);Y.getOrCreateInstance(e).toggle()})),m(Y);const U=".bs.swipe",G=`touchstart${U}`,J=`touchmove${U}`,Z=`touchend${U}`,tt=`pointerdown${U}`,et=`pointerup${U}`,it={endCallback:null,leftCallback:null,rightCallback:null},nt={endCallback:"(function|null)",leftCallback:"(function|null)",rightCallback:"(function|null)"};class st extends H{constructor(t,e){super(),this._element=t,t&&st.isSupported()&&(this._config=this._getConfig(e),this._deltaX=0,this._supportPointerEvents=Boolean(window.PointerEvent),this._initEvents())}static get Default(){return it}static get DefaultType(){return nt}static get NAME(){return"swipe"}dispose(){N.off(this._element,U)}_start(t){this._supportPointerEvents?this._eventIsPointerPenTouch(t)&&(this._deltaX=t.clientX):this._deltaX=t.touches[0].clientX}_end(t){this._eventIsPointerPenTouch(t)&&(this._deltaX=t.clientX-this._deltaX),this._handleSwipe(),g(this._config.endCallback)}_move(t){this._deltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this._deltaX}_handleSwipe(){const t=Math.abs(this._deltaX);if(t<=40)return;const e=t/this._deltaX;this._deltaX=0,e&&g(e>0?this._config.rightCallback:this._config.leftCallback)}_initEvents(){this._supportPointerEvents?(N.on(this._element,tt,(t=>this._start(t))),N.on(this._element,et,(t=>this._end(t))),this._element.classList.add("pointer-event")):(N.on(this._element,G,(t=>this._start(t))),N.on(this._element,J,(t=>this._move(t))),N.on(this._element,Z,(t=>this._end(t))))}_eventIsPointerPenTouch(t){return this._supportPointerEvents&&("pen"===t.pointerType||"touch"===t.pointerType)}static isSupported(){return"ontouchstart"in document.documentElement||navigator.maxTouchPoints>0}}const ot=".bs.carousel",rt=".data-api",at="next",lt="prev",ct="left",ht="right",dt=`slide${ot}`,ut=`slid${ot}`,ft=`keydown${ot}`,pt=`mouseenter${ot}`,mt=`mouseleave${ot}`,gt=`dragstart${ot}`,_t=`load${ot}${rt}`,bt=`click${ot}${rt}`,vt="carousel",yt="active",wt=".active",At=".carousel-item",Et=wt+At,Tt={ArrowLeft:ht,ArrowRight:ct},Ct={interval:5e3,keyboard:!0,pause:"hover",ride:!1,touch:!0,wrap:!0},Ot={interval:"(number|boolean)",keyboard:"boolean",pause:"(string|boolean)",ride:"(boolean|string)",touch:"boolean",wrap:"boolean"};class xt extends W{constructor(t,e){super(t,e),this._interval=null,this._activeElement=null,this._isSliding=!1,this.touchTimeout=null,this._swipeHelper=null,this._indicatorsElement=z.findOne(".carousel-indicators",this._element),this._addEventListeners(),this._config.ride===vt&&this.cycle()}static get Default(){return Ct}static get DefaultType(){return Ot}static get NAME(){return"carousel"}next(){this._slide(at)}nextWhenVisible(){!document.hidden&&a(this._element)&&this.next()}prev(){this._slide(lt)}pause(){this._isSliding&&s(this._element),this._clearInterval()}cycle(){this._clearInterval(),this._updateInterval(),this._interval=setInterval((()=>this.nextWhenVisible()),this._config.interval)}_maybeEnableCycle(){this._config.ride&&(this._isSliding?N.one(this._element,ut,(()=>this.cycle())):this.cycle())}to(t){const e=this._getItems();if(t>e.length-1||t<0)return;if(this._isSliding)return void N.one(this._element,ut,(()=>this.to(t)));const i=this._getItemIndex(this._getActive());if(i===t)return;const n=t>i?at:lt;this._slide(n,e[t])}dispose(){this._swipeHelper&&this._swipeHelper.dispose(),super.dispose()}_configAfterMerge(t){return t.defaultInterval=t.interval,t}_addEventListeners(){this._config.keyboard&&N.on(this._element,ft,(t=>this._keydown(t))),"hover"===this._config.pause&&(N.on(this._element,pt,(()=>this.pause())),N.on(this._element,mt,(()=>this._maybeEnableCycle()))),this._config.touch&&st.isSupported()&&this._addTouchEventListeners()}_addTouchEventListeners(){for(const t of z.find(".carousel-item img",this._element))N.on(t,gt,(t=>t.preventDefault()));const t={leftCallback:()=>this._slide(this._directionToOrder(ct)),rightCallback:()=>this._slide(this._directionToOrder(ht)),endCallback:()=>{"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout((()=>this._maybeEnableCycle()),500+this._config.interval))}};this._swipeHelper=new st(this._element,t)}_keydown(t){if(/input|textarea/i.test(t.target.tagName))return;const e=Tt[t.key];e&&(t.preventDefault(),this._slide(this._directionToOrder(e)))}_getItemIndex(t){return this._getItems().indexOf(t)}_setActiveIndicatorElement(t){if(!this._indicatorsElement)return;const e=z.findOne(wt,this._indicatorsElement);e.classList.remove(yt),e.removeAttribute("aria-current");const i=z.findOne(`[data-bs-slide-to="${t}"]`,this._indicatorsElement);i&&(i.classList.add(yt),i.setAttribute("aria-current","true"))}_updateInterval(){const t=this._activeElement||this._getActive();if(!t)return;const e=Number.parseInt(t.getAttribute("data-bs-interval"),10);this._config.interval=e||this._config.defaultInterval}_slide(t,e=null){if(this._isSliding)return;const i=this._getActive(),n=t===at,s=e||b(this._getItems(),i,n,this._config.wrap);if(s===i)return;const o=this._getItemIndex(s),r=e=>N.trigger(this._element,e,{relatedTarget:s,direction:this._orderToDirection(t),from:this._getItemIndex(i),to:o});if(r(dt).defaultPrevented)return;if(!i||!s)return;const a=Boolean(this._interval);this.pause(),this._isSliding=!0,this._setActiveIndicatorElement(o),this._activeElement=s;const l=n?"carousel-item-start":"carousel-item-end",c=n?"carousel-item-next":"carousel-item-prev";s.classList.add(c),d(s),i.classList.add(l),s.classList.add(l),this._queueCallback((()=>{s.classList.remove(l,c),s.classList.add(yt),i.classList.remove(yt,c,l),this._isSliding=!1,r(ut)}),i,this._isAnimated()),a&&this.cycle()}_isAnimated(){return this._element.classList.contains("slide")}_getActive(){return z.findOne(Et,this._element)}_getItems(){return z.find(At,this._element)}_clearInterval(){this._interval&&(clearInterval(this._interval),this._interval=null)}_directionToOrder(t){return p()?t===ct?lt:at:t===ct?at:lt}_orderToDirection(t){return p()?t===lt?ct:ht:t===lt?ht:ct}static jQueryInterface(t){return this.each((function(){const e=xt.getOrCreateInstance(this,t);if("number"!=typeof t){if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}else e.to(t)}))}}N.on(document,bt,"[data-bs-slide], [data-bs-slide-to]",(function(t){const e=z.getElementFromSelector(this);if(!e||!e.classList.contains(vt))return;t.preventDefault();const i=xt.getOrCreateInstance(e),n=this.getAttribute("data-bs-slide-to");return n?(i.to(n),void i._maybeEnableCycle()):"next"===F.getDataAttribute(this,"slide")?(i.next(),void i._maybeEnableCycle()):(i.prev(),void i._maybeEnableCycle())})),N.on(window,_t,(()=>{const t=z.find('[data-bs-ride="carousel"]');for(const e of t)xt.getOrCreateInstance(e)})),m(xt);const kt=".bs.collapse",Lt=`show${kt}`,St=`shown${kt}`,Dt=`hide${kt}`,$t=`hidden${kt}`,It=`click${kt}.data-api`,Nt="show",Pt="collapse",Mt="collapsing",jt=`:scope .${Pt} .${Pt}`,Ft='[data-bs-toggle="collapse"]',Ht={parent:null,toggle:!0},Wt={parent:"(null|element)",toggle:"boolean"};class Bt extends W{constructor(t,e){super(t,e),this._isTransitioning=!1,this._triggerArray=[];const i=z.find(Ft);for(const t of i){const e=z.getSelectorFromElement(t),i=z.find(e).filter((t=>t===this._element));null!==e&&i.length&&this._triggerArray.push(t)}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return Ht}static get DefaultType(){return Wt}static get NAME(){return"collapse"}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[];if(this._config.parent&&(t=this._getFirstLevelChildren(".collapse.show, .collapse.collapsing").filter((t=>t!==this._element)).map((t=>Bt.getOrCreateInstance(t,{toggle:!1})))),t.length&&t[0]._isTransitioning)return;if(N.trigger(this._element,Lt).defaultPrevented)return;for(const e of t)e.hide();const e=this._getDimension();this._element.classList.remove(Pt),this._element.classList.add(Mt),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;const i=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(Mt),this._element.classList.add(Pt,Nt),this._element.style[e]="",N.trigger(this._element,St)}),this._element,!0),this._element.style[e]=`${this._element[i]}px`}hide(){if(this._isTransitioning||!this._isShown())return;if(N.trigger(this._element,Dt).defaultPrevented)return;const t=this._getDimension();this._element.style[t]=`${this._element.getBoundingClientRect()[t]}px`,d(this._element),this._element.classList.add(Mt),this._element.classList.remove(Pt,Nt);for(const t of this._triggerArray){const e=z.getElementFromSelector(t);e&&!this._isShown(e)&&this._addAriaAndCollapsedClass([t],!1)}this._isTransitioning=!0,this._element.style[t]="",this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(Mt),this._element.classList.add(Pt),N.trigger(this._element,$t)}),this._element,!0)}_isShown(t=this._element){return t.classList.contains(Nt)}_configAfterMerge(t){return t.toggle=Boolean(t.toggle),t.parent=r(t.parent),t}_getDimension(){return this._element.classList.contains("collapse-horizontal")?"width":"height"}_initializeChildren(){if(!this._config.parent)return;const t=this._getFirstLevelChildren(Ft);for(const e of t){const t=z.getElementFromSelector(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))}}_getFirstLevelChildren(t){const e=z.find(jt,this._config.parent);return z.find(t,this._config.parent).filter((t=>!e.includes(t)))}_addAriaAndCollapsedClass(t,e){if(t.length)for(const i of t)i.classList.toggle("collapsed",!e),i.setAttribute("aria-expanded",e)}static jQueryInterface(t){const e={};return"string"==typeof t&&/show|hide/.test(t)&&(e.toggle=!1),this.each((function(){const i=Bt.getOrCreateInstance(this,e);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t]()}}))}}N.on(document,It,Ft,(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();for(const t of z.getMultipleElementsFromSelector(this))Bt.getOrCreateInstance(t,{toggle:!1}).toggle()})),m(Bt);var zt="top",Rt="bottom",qt="right",Vt="left",Kt="auto",Qt=[zt,Rt,qt,Vt],Xt="start",Yt="end",Ut="clippingParents",Gt="viewport",Jt="popper",Zt="reference",te=Qt.reduce((function(t,e){return t.concat([e+"-"+Xt,e+"-"+Yt])}),[]),ee=[].concat(Qt,[Kt]).reduce((function(t,e){return t.concat([e,e+"-"+Xt,e+"-"+Yt])}),[]),ie="beforeRead",ne="read",se="afterRead",oe="beforeMain",re="main",ae="afterMain",le="beforeWrite",ce="write",he="afterWrite",de=[ie,ne,se,oe,re,ae,le,ce,he];function ue(t){return t?(t.nodeName||"").toLowerCase():null}function fe(t){if(null==t)return window;if("[object Window]"!==t.toString()){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function pe(t){return t instanceof fe(t).Element||t instanceof Element}function me(t){return t instanceof fe(t).HTMLElement||t instanceof HTMLElement}function ge(t){return"undefined"!=typeof ShadowRoot&&(t instanceof fe(t).ShadowRoot||t instanceof ShadowRoot)}const _e={name:"applyStyles",enabled:!0,phase:"write",fn:function(t){var e=t.state;Object.keys(e.elements).forEach((function(t){var i=e.styles[t]||{},n=e.attributes[t]||{},s=e.elements[t];me(s)&&ue(s)&&(Object.assign(s.style,i),Object.keys(n).forEach((function(t){var e=n[t];!1===e?s.removeAttribute(t):s.setAttribute(t,!0===e?"":e)})))}))},effect:function(t){var e=t.state,i={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,i.popper),e.styles=i,e.elements.arrow&&Object.assign(e.elements.arrow.style,i.arrow),function(){Object.keys(e.elements).forEach((function(t){var n=e.elements[t],s=e.attributes[t]||{},o=Object.keys(e.styles.hasOwnProperty(t)?e.styles[t]:i[t]).reduce((function(t,e){return t[e]="",t}),{});me(n)&&ue(n)&&(Object.assign(n.style,o),Object.keys(s).forEach((function(t){n.removeAttribute(t)})))}))}},requires:["computeStyles"]};function be(t){return t.split("-")[0]}var ve=Math.max,ye=Math.min,we=Math.round;function Ae(){var t=navigator.userAgentData;return null!=t&&t.brands&&Array.isArray(t.brands)?t.brands.map((function(t){return t.brand+"/"+t.version})).join(" "):navigator.userAgent}function Ee(){return!/^((?!chrome|android).)*safari/i.test(Ae())}function Te(t,e,i){void 0===e&&(e=!1),void 0===i&&(i=!1);var n=t.getBoundingClientRect(),s=1,o=1;e&&me(t)&&(s=t.offsetWidth>0&&we(n.width)/t.offsetWidth||1,o=t.offsetHeight>0&&we(n.height)/t.offsetHeight||1);var r=(pe(t)?fe(t):window).visualViewport,a=!Ee()&&i,l=(n.left+(a&&r?r.offsetLeft:0))/s,c=(n.top+(a&&r?r.offsetTop:0))/o,h=n.width/s,d=n.height/o;return{width:h,height:d,top:c,right:l+h,bottom:c+d,left:l,x:l,y:c}}function Ce(t){var e=Te(t),i=t.offsetWidth,n=t.offsetHeight;return Math.abs(e.width-i)<=1&&(i=e.width),Math.abs(e.height-n)<=1&&(n=e.height),{x:t.offsetLeft,y:t.offsetTop,width:i,height:n}}function Oe(t,e){var i=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(i&&ge(i)){var n=e;do{if(n&&t.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function xe(t){return fe(t).getComputedStyle(t)}function ke(t){return["table","td","th"].indexOf(ue(t))>=0}function Le(t){return((pe(t)?t.ownerDocument:t.document)||window.document).documentElement}function Se(t){return"html"===ue(t)?t:t.assignedSlot||t.parentNode||(ge(t)?t.host:null)||Le(t)}function De(t){return me(t)&&"fixed"!==xe(t).position?t.offsetParent:null}function $e(t){for(var e=fe(t),i=De(t);i&&ke(i)&&"static"===xe(i).position;)i=De(i);return i&&("html"===ue(i)||"body"===ue(i)&&"static"===xe(i).position)?e:i||function(t){var e=/firefox/i.test(Ae());if(/Trident/i.test(Ae())&&me(t)&&"fixed"===xe(t).position)return null;var i=Se(t);for(ge(i)&&(i=i.host);me(i)&&["html","body"].indexOf(ue(i))<0;){var n=xe(i);if("none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||e&&"filter"===n.willChange||e&&n.filter&&"none"!==n.filter)return i;i=i.parentNode}return null}(t)||e}function Ie(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}function Ne(t,e,i){return ve(t,ye(e,i))}function Pe(t){return Object.assign({},{top:0,right:0,bottom:0,left:0},t)}function Me(t,e){return e.reduce((function(e,i){return e[i]=t,e}),{})}const je={name:"arrow",enabled:!0,phase:"main",fn:function(t){var e,i=t.state,n=t.name,s=t.options,o=i.elements.arrow,r=i.modifiersData.popperOffsets,a=be(i.placement),l=Ie(a),c=[Vt,qt].indexOf(a)>=0?"height":"width";if(o&&r){var h=function(t,e){return Pe("number"!=typeof(t="function"==typeof t?t(Object.assign({},e.rects,{placement:e.placement})):t)?t:Me(t,Qt))}(s.padding,i),d=Ce(o),u="y"===l?zt:Vt,f="y"===l?Rt:qt,p=i.rects.reference[c]+i.rects.reference[l]-r[l]-i.rects.popper[c],m=r[l]-i.rects.reference[l],g=$e(o),_=g?"y"===l?g.clientHeight||0:g.clientWidth||0:0,b=p/2-m/2,v=h[u],y=_-d[c]-h[f],w=_/2-d[c]/2+b,A=Ne(v,w,y),E=l;i.modifiersData[n]=((e={})[E]=A,e.centerOffset=A-w,e)}},effect:function(t){var e=t.state,i=t.options.element,n=void 0===i?"[data-popper-arrow]":i;null!=n&&("string"!=typeof n||(n=e.elements.popper.querySelector(n)))&&Oe(e.elements.popper,n)&&(e.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Fe(t){return t.split("-")[1]}var He={top:"auto",right:"auto",bottom:"auto",left:"auto"};function We(t){var e,i=t.popper,n=t.popperRect,s=t.placement,o=t.variation,r=t.offsets,a=t.position,l=t.gpuAcceleration,c=t.adaptive,h=t.roundOffsets,d=t.isFixed,u=r.x,f=void 0===u?0:u,p=r.y,m=void 0===p?0:p,g="function"==typeof h?h({x:f,y:m}):{x:f,y:m};f=g.x,m=g.y;var _=r.hasOwnProperty("x"),b=r.hasOwnProperty("y"),v=Vt,y=zt,w=window;if(c){var A=$e(i),E="clientHeight",T="clientWidth";A===fe(i)&&"static"!==xe(A=Le(i)).position&&"absolute"===a&&(E="scrollHeight",T="scrollWidth"),(s===zt||(s===Vt||s===qt)&&o===Yt)&&(y=Rt,m-=(d&&A===w&&w.visualViewport?w.visualViewport.height:A[E])-n.height,m*=l?1:-1),s!==Vt&&(s!==zt&&s!==Rt||o!==Yt)||(v=qt,f-=(d&&A===w&&w.visualViewport?w.visualViewport.width:A[T])-n.width,f*=l?1:-1)}var C,O=Object.assign({position:a},c&&He),x=!0===h?function(t,e){var i=t.x,n=t.y,s=e.devicePixelRatio||1;return{x:we(i*s)/s||0,y:we(n*s)/s||0}}({x:f,y:m},fe(i)):{x:f,y:m};return f=x.x,m=x.y,l?Object.assign({},O,((C={})[y]=b?"0":"",C[v]=_?"0":"",C.transform=(w.devicePixelRatio||1)<=1?"translate("+f+"px, "+m+"px)":"translate3d("+f+"px, "+m+"px, 0)",C)):Object.assign({},O,((e={})[y]=b?m+"px":"",e[v]=_?f+"px":"",e.transform="",e))}const Be={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(t){var e=t.state,i=t.options,n=i.gpuAcceleration,s=void 0===n||n,o=i.adaptive,r=void 0===o||o,a=i.roundOffsets,l=void 0===a||a,c={placement:be(e.placement),variation:Fe(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:s,isFixed:"fixed"===e.options.strategy};null!=e.modifiersData.popperOffsets&&(e.styles.popper=Object.assign({},e.styles.popper,We(Object.assign({},c,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:r,roundOffsets:l})))),null!=e.modifiersData.arrow&&(e.styles.arrow=Object.assign({},e.styles.arrow,We(Object.assign({},c,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})},data:{}};var ze={passive:!0};const Re={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(t){var e=t.state,i=t.instance,n=t.options,s=n.scroll,o=void 0===s||s,r=n.resize,a=void 0===r||r,l=fe(e.elements.popper),c=[].concat(e.scrollParents.reference,e.scrollParents.popper);return o&&c.forEach((function(t){t.addEventListener("scroll",i.update,ze)})),a&&l.addEventListener("resize",i.update,ze),function(){o&&c.forEach((function(t){t.removeEventListener("scroll",i.update,ze)})),a&&l.removeEventListener("resize",i.update,ze)}},data:{}};var qe={left:"right",right:"left",bottom:"top",top:"bottom"};function Ve(t){return t.replace(/left|right|bottom|top/g,(function(t){return qe[t]}))}var Ke={start:"end",end:"start"};function Qe(t){return t.replace(/start|end/g,(function(t){return Ke[t]}))}function Xe(t){var e=fe(t);return{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function Ye(t){return Te(Le(t)).left+Xe(t).scrollLeft}function Ue(t){var e=xe(t),i=e.overflow,n=e.overflowX,s=e.overflowY;return/auto|scroll|overlay|hidden/.test(i+s+n)}function Ge(t){return["html","body","#document"].indexOf(ue(t))>=0?t.ownerDocument.body:me(t)&&Ue(t)?t:Ge(Se(t))}function Je(t,e){var i;void 0===e&&(e=[]);var n=Ge(t),s=n===(null==(i=t.ownerDocument)?void 0:i.body),o=fe(n),r=s?[o].concat(o.visualViewport||[],Ue(n)?n:[]):n,a=e.concat(r);return s?a:a.concat(Je(Se(r)))}function Ze(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function ti(t,e,i){return e===Gt?Ze(function(t,e){var i=fe(t),n=Le(t),s=i.visualViewport,o=n.clientWidth,r=n.clientHeight,a=0,l=0;if(s){o=s.width,r=s.height;var c=Ee();(c||!c&&"fixed"===e)&&(a=s.offsetLeft,l=s.offsetTop)}return{width:o,height:r,x:a+Ye(t),y:l}}(t,i)):pe(e)?function(t,e){var i=Te(t,!1,"fixed"===e);return i.top=i.top+t.clientTop,i.left=i.left+t.clientLeft,i.bottom=i.top+t.clientHeight,i.right=i.left+t.clientWidth,i.width=t.clientWidth,i.height=t.clientHeight,i.x=i.left,i.y=i.top,i}(e,i):Ze(function(t){var e,i=Le(t),n=Xe(t),s=null==(e=t.ownerDocument)?void 0:e.body,o=ve(i.scrollWidth,i.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),r=ve(i.scrollHeight,i.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0),a=-n.scrollLeft+Ye(t),l=-n.scrollTop;return"rtl"===xe(s||i).direction&&(a+=ve(i.clientWidth,s?s.clientWidth:0)-o),{width:o,height:r,x:a,y:l}}(Le(t)))}function ei(t){var e,i=t.reference,n=t.element,s=t.placement,o=s?be(s):null,r=s?Fe(s):null,a=i.x+i.width/2-n.width/2,l=i.y+i.height/2-n.height/2;switch(o){case zt:e={x:a,y:i.y-n.height};break;case Rt:e={x:a,y:i.y+i.height};break;case qt:e={x:i.x+i.width,y:l};break;case Vt:e={x:i.x-n.width,y:l};break;default:e={x:i.x,y:i.y}}var c=o?Ie(o):null;if(null!=c){var h="y"===c?"height":"width";switch(r){case Xt:e[c]=e[c]-(i[h]/2-n[h]/2);break;case Yt:e[c]=e[c]+(i[h]/2-n[h]/2)}}return e}function ii(t,e){void 0===e&&(e={});var i=e,n=i.placement,s=void 0===n?t.placement:n,o=i.strategy,r=void 0===o?t.strategy:o,a=i.boundary,l=void 0===a?Ut:a,c=i.rootBoundary,h=void 0===c?Gt:c,d=i.elementContext,u=void 0===d?Jt:d,f=i.altBoundary,p=void 0!==f&&f,m=i.padding,g=void 0===m?0:m,_=Pe("number"!=typeof g?g:Me(g,Qt)),b=u===Jt?Zt:Jt,v=t.rects.popper,y=t.elements[p?b:u],w=function(t,e,i,n){var s="clippingParents"===e?function(t){var e=Je(Se(t)),i=["absolute","fixed"].indexOf(xe(t).position)>=0&&me(t)?$e(t):t;return pe(i)?e.filter((function(t){return pe(t)&&Oe(t,i)&&"body"!==ue(t)})):[]}(t):[].concat(e),o=[].concat(s,[i]),r=o[0],a=o.reduce((function(e,i){var s=ti(t,i,n);return e.top=ve(s.top,e.top),e.right=ye(s.right,e.right),e.bottom=ye(s.bottom,e.bottom),e.left=ve(s.left,e.left),e}),ti(t,r,n));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}(pe(y)?y:y.contextElement||Le(t.elements.popper),l,h,r),A=Te(t.elements.reference),E=ei({reference:A,element:v,strategy:"absolute",placement:s}),T=Ze(Object.assign({},v,E)),C=u===Jt?T:A,O={top:w.top-C.top+_.top,bottom:C.bottom-w.bottom+_.bottom,left:w.left-C.left+_.left,right:C.right-w.right+_.right},x=t.modifiersData.offset;if(u===Jt&&x){var k=x[s];Object.keys(O).forEach((function(t){var e=[qt,Rt].indexOf(t)>=0?1:-1,i=[zt,Rt].indexOf(t)>=0?"y":"x";O[t]+=k[i]*e}))}return O}function ni(t,e){void 0===e&&(e={});var i=e,n=i.placement,s=i.boundary,o=i.rootBoundary,r=i.padding,a=i.flipVariations,l=i.allowedAutoPlacements,c=void 0===l?ee:l,h=Fe(n),d=h?a?te:te.filter((function(t){return Fe(t)===h})):Qt,u=d.filter((function(t){return c.indexOf(t)>=0}));0===u.length&&(u=d);var f=u.reduce((function(e,i){return e[i]=ii(t,{placement:i,boundary:s,rootBoundary:o,padding:r})[be(i)],e}),{});return Object.keys(f).sort((function(t,e){return f[t]-f[e]}))}const si={name:"flip",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,n=t.name;if(!e.modifiersData[n]._skip){for(var s=i.mainAxis,o=void 0===s||s,r=i.altAxis,a=void 0===r||r,l=i.fallbackPlacements,c=i.padding,h=i.boundary,d=i.rootBoundary,u=i.altBoundary,f=i.flipVariations,p=void 0===f||f,m=i.allowedAutoPlacements,g=e.options.placement,_=be(g),b=l||(_!==g&&p?function(t){if(be(t)===Kt)return[];var e=Ve(t);return[Qe(t),e,Qe(e)]}(g):[Ve(g)]),v=[g].concat(b).reduce((function(t,i){return t.concat(be(i)===Kt?ni(e,{placement:i,boundary:h,rootBoundary:d,padding:c,flipVariations:p,allowedAutoPlacements:m}):i)}),[]),y=e.rects.reference,w=e.rects.popper,A=new Map,E=!0,T=v[0],C=0;C=0,S=L?"width":"height",D=ii(e,{placement:O,boundary:h,rootBoundary:d,altBoundary:u,padding:c}),$=L?k?qt:Vt:k?Rt:zt;y[S]>w[S]&&($=Ve($));var I=Ve($),N=[];if(o&&N.push(D[x]<=0),a&&N.push(D[$]<=0,D[I]<=0),N.every((function(t){return t}))){T=O,E=!1;break}A.set(O,N)}if(E)for(var P=function(t){var e=v.find((function(e){var i=A.get(e);if(i)return i.slice(0,t).every((function(t){return t}))}));if(e)return T=e,"break"},M=p?3:1;M>0&&"break"!==P(M);M--);e.placement!==T&&(e.modifiersData[n]._skip=!0,e.placement=T,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function oi(t,e,i){return void 0===i&&(i={x:0,y:0}),{top:t.top-e.height-i.y,right:t.right-e.width+i.x,bottom:t.bottom-e.height+i.y,left:t.left-e.width-i.x}}function ri(t){return[zt,qt,Rt,Vt].some((function(e){return t[e]>=0}))}const ai={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(t){var e=t.state,i=t.name,n=e.rects.reference,s=e.rects.popper,o=e.modifiersData.preventOverflow,r=ii(e,{elementContext:"reference"}),a=ii(e,{altBoundary:!0}),l=oi(r,n),c=oi(a,s,o),h=ri(l),d=ri(c);e.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:h,hasPopperEscaped:d},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":h,"data-popper-escaped":d})}},li={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(t){var e=t.state,i=t.options,n=t.name,s=i.offset,o=void 0===s?[0,0]:s,r=ee.reduce((function(t,i){return t[i]=function(t,e,i){var n=be(t),s=[Vt,zt].indexOf(n)>=0?-1:1,o="function"==typeof i?i(Object.assign({},e,{placement:t})):i,r=o[0],a=o[1];return r=r||0,a=(a||0)*s,[Vt,qt].indexOf(n)>=0?{x:a,y:r}:{x:r,y:a}}(i,e.rects,o),t}),{}),a=r[e.placement],l=a.x,c=a.y;null!=e.modifiersData.popperOffsets&&(e.modifiersData.popperOffsets.x+=l,e.modifiersData.popperOffsets.y+=c),e.modifiersData[n]=r}},ci={name:"popperOffsets",enabled:!0,phase:"read",fn:function(t){var e=t.state,i=t.name;e.modifiersData[i]=ei({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})},data:{}},hi={name:"preventOverflow",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,n=t.name,s=i.mainAxis,o=void 0===s||s,r=i.altAxis,a=void 0!==r&&r,l=i.boundary,c=i.rootBoundary,h=i.altBoundary,d=i.padding,u=i.tether,f=void 0===u||u,p=i.tetherOffset,m=void 0===p?0:p,g=ii(e,{boundary:l,rootBoundary:c,padding:d,altBoundary:h}),_=be(e.placement),b=Fe(e.placement),v=!b,y=Ie(_),w="x"===y?"y":"x",A=e.modifiersData.popperOffsets,E=e.rects.reference,T=e.rects.popper,C="function"==typeof m?m(Object.assign({},e.rects,{placement:e.placement})):m,O="number"==typeof C?{mainAxis:C,altAxis:C}:Object.assign({mainAxis:0,altAxis:0},C),x=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,k={x:0,y:0};if(A){if(o){var L,S="y"===y?zt:Vt,D="y"===y?Rt:qt,$="y"===y?"height":"width",I=A[y],N=I+g[S],P=I-g[D],M=f?-T[$]/2:0,j=b===Xt?E[$]:T[$],F=b===Xt?-T[$]:-E[$],H=e.elements.arrow,W=f&&H?Ce(H):{width:0,height:0},B=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},z=B[S],R=B[D],q=Ne(0,E[$],W[$]),V=v?E[$]/2-M-q-z-O.mainAxis:j-q-z-O.mainAxis,K=v?-E[$]/2+M+q+R+O.mainAxis:F+q+R+O.mainAxis,Q=e.elements.arrow&&$e(e.elements.arrow),X=Q?"y"===y?Q.clientTop||0:Q.clientLeft||0:0,Y=null!=(L=null==x?void 0:x[y])?L:0,U=I+K-Y,G=Ne(f?ye(N,I+V-Y-X):N,I,f?ve(P,U):P);A[y]=G,k[y]=G-I}if(a){var J,Z="x"===y?zt:Vt,tt="x"===y?Rt:qt,et=A[w],it="y"===w?"height":"width",nt=et+g[Z],st=et-g[tt],ot=-1!==[zt,Vt].indexOf(_),rt=null!=(J=null==x?void 0:x[w])?J:0,at=ot?nt:et-E[it]-T[it]-rt+O.altAxis,lt=ot?et+E[it]+T[it]-rt-O.altAxis:st,ct=f&&ot?function(t,e,i){var n=Ne(t,e,i);return n>i?i:n}(at,et,lt):Ne(f?at:nt,et,f?lt:st);A[w]=ct,k[w]=ct-et}e.modifiersData[n]=k}},requiresIfExists:["offset"]};function di(t,e,i){void 0===i&&(i=!1);var n,s,o=me(e),r=me(e)&&function(t){var e=t.getBoundingClientRect(),i=we(e.width)/t.offsetWidth||1,n=we(e.height)/t.offsetHeight||1;return 1!==i||1!==n}(e),a=Le(e),l=Te(t,r,i),c={scrollLeft:0,scrollTop:0},h={x:0,y:0};return(o||!o&&!i)&&(("body"!==ue(e)||Ue(a))&&(c=(n=e)!==fe(n)&&me(n)?{scrollLeft:(s=n).scrollLeft,scrollTop:s.scrollTop}:Xe(n)),me(e)?((h=Te(e,!0)).x+=e.clientLeft,h.y+=e.clientTop):a&&(h.x=Ye(a))),{x:l.left+c.scrollLeft-h.x,y:l.top+c.scrollTop-h.y,width:l.width,height:l.height}}function ui(t){var e=new Map,i=new Set,n=[];function s(t){i.add(t.name),[].concat(t.requires||[],t.requiresIfExists||[]).forEach((function(t){if(!i.has(t)){var n=e.get(t);n&&s(n)}})),n.push(t)}return t.forEach((function(t){e.set(t.name,t)})),t.forEach((function(t){i.has(t.name)||s(t)})),n}var fi={placement:"bottom",modifiers:[],strategy:"absolute"};function pi(){for(var t=arguments.length,e=new Array(t),i=0;iNumber.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(){const t={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return(this._inNavbar||"static"===this._config.display)&&(F.setDataAttribute(this._menu,"popper","static"),t.modifiers=[{name:"applyStyles",enabled:!1}]),{...t,...g(this._config.popperConfig,[t])}}_selectMenuItem({key:t,target:e}){const i=z.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter((t=>a(t)));i.length&&b(i,e,t===Ti,!i.includes(e)).focus()}static jQueryInterface(t){return this.each((function(){const e=qi.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}static clearMenus(t){if(2===t.button||"keyup"===t.type&&"Tab"!==t.key)return;const e=z.find(Ni);for(const i of e){const e=qi.getInstance(i);if(!e||!1===e._config.autoClose)continue;const n=t.composedPath(),s=n.includes(e._menu);if(n.includes(e._element)||"inside"===e._config.autoClose&&!s||"outside"===e._config.autoClose&&s)continue;if(e._menu.contains(t.target)&&("keyup"===t.type&&"Tab"===t.key||/input|select|option|textarea|form/i.test(t.target.tagName)))continue;const o={relatedTarget:e._element};"click"===t.type&&(o.clickEvent=t),e._completeHide(o)}}static dataApiKeydownHandler(t){const e=/input|textarea/i.test(t.target.tagName),i="Escape"===t.key,n=[Ei,Ti].includes(t.key);if(!n&&!i)return;if(e&&!i)return;t.preventDefault();const s=this.matches(Ii)?this:z.prev(this,Ii)[0]||z.next(this,Ii)[0]||z.findOne(Ii,t.delegateTarget.parentNode),o=qi.getOrCreateInstance(s);if(n)return t.stopPropagation(),o.show(),void o._selectMenuItem(t);o._isShown()&&(t.stopPropagation(),o.hide(),s.focus())}}N.on(document,Si,Ii,qi.dataApiKeydownHandler),N.on(document,Si,Pi,qi.dataApiKeydownHandler),N.on(document,Li,qi.clearMenus),N.on(document,Di,qi.clearMenus),N.on(document,Li,Ii,(function(t){t.preventDefault(),qi.getOrCreateInstance(this).toggle()})),m(qi);const Vi="backdrop",Ki="show",Qi=`mousedown.bs.${Vi}`,Xi={className:"modal-backdrop",clickCallback:null,isAnimated:!1,isVisible:!0,rootElement:"body"},Yi={className:"string",clickCallback:"(function|null)",isAnimated:"boolean",isVisible:"boolean",rootElement:"(element|string)"};class Ui extends H{constructor(t){super(),this._config=this._getConfig(t),this._isAppended=!1,this._element=null}static get Default(){return Xi}static get DefaultType(){return Yi}static get NAME(){return Vi}show(t){if(!this._config.isVisible)return void g(t);this._append();const e=this._getElement();this._config.isAnimated&&d(e),e.classList.add(Ki),this._emulateAnimation((()=>{g(t)}))}hide(t){this._config.isVisible?(this._getElement().classList.remove(Ki),this._emulateAnimation((()=>{this.dispose(),g(t)}))):g(t)}dispose(){this._isAppended&&(N.off(this._element,Qi),this._element.remove(),this._isAppended=!1)}_getElement(){if(!this._element){const t=document.createElement("div");t.className=this._config.className,this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_configAfterMerge(t){return t.rootElement=r(t.rootElement),t}_append(){if(this._isAppended)return;const t=this._getElement();this._config.rootElement.append(t),N.on(t,Qi,(()=>{g(this._config.clickCallback)})),this._isAppended=!0}_emulateAnimation(t){_(t,this._getElement(),this._config.isAnimated)}}const Gi=".bs.focustrap",Ji=`focusin${Gi}`,Zi=`keydown.tab${Gi}`,tn="backward",en={autofocus:!0,trapElement:null},nn={autofocus:"boolean",trapElement:"element"};class sn extends H{constructor(t){super(),this._config=this._getConfig(t),this._isActive=!1,this._lastTabNavDirection=null}static get Default(){return en}static get DefaultType(){return nn}static get NAME(){return"focustrap"}activate(){this._isActive||(this._config.autofocus&&this._config.trapElement.focus(),N.off(document,Gi),N.on(document,Ji,(t=>this._handleFocusin(t))),N.on(document,Zi,(t=>this._handleKeydown(t))),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,N.off(document,Gi))}_handleFocusin(t){const{trapElement:e}=this._config;if(t.target===document||t.target===e||e.contains(t.target))return;const i=z.focusableChildren(e);0===i.length?e.focus():this._lastTabNavDirection===tn?i[i.length-1].focus():i[0].focus()}_handleKeydown(t){"Tab"===t.key&&(this._lastTabNavDirection=t.shiftKey?tn:"forward")}}const on=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",rn=".sticky-top",an="padding-right",ln="margin-right";class cn{constructor(){this._element=document.body}getWidth(){const t=document.documentElement.clientWidth;return Math.abs(window.innerWidth-t)}hide(){const t=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,an,(e=>e+t)),this._setElementAttributes(on,an,(e=>e+t)),this._setElementAttributes(rn,ln,(e=>e-t))}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,an),this._resetElementAttributes(on,an),this._resetElementAttributes(rn,ln)}isOverflowing(){return this.getWidth()>0}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(t,e,i){const n=this.getWidth();this._applyManipulationCallback(t,(t=>{if(t!==this._element&&window.innerWidth>t.clientWidth+n)return;this._saveInitialAttribute(t,e);const s=window.getComputedStyle(t).getPropertyValue(e);t.style.setProperty(e,`${i(Number.parseFloat(s))}px`)}))}_saveInitialAttribute(t,e){const i=t.style.getPropertyValue(e);i&&F.setDataAttribute(t,e,i)}_resetElementAttributes(t,e){this._applyManipulationCallback(t,(t=>{const i=F.getDataAttribute(t,e);null!==i?(F.removeDataAttribute(t,e),t.style.setProperty(e,i)):t.style.removeProperty(e)}))}_applyManipulationCallback(t,e){if(o(t))e(t);else for(const i of z.find(t,this._element))e(i)}}const hn=".bs.modal",dn=`hide${hn}`,un=`hidePrevented${hn}`,fn=`hidden${hn}`,pn=`show${hn}`,mn=`shown${hn}`,gn=`resize${hn}`,_n=`click.dismiss${hn}`,bn=`mousedown.dismiss${hn}`,vn=`keydown.dismiss${hn}`,yn=`click${hn}.data-api`,wn="modal-open",An="show",En="modal-static",Tn={backdrop:!0,focus:!0,keyboard:!0},Cn={backdrop:"(boolean|string)",focus:"boolean",keyboard:"boolean"};class On extends W{constructor(t,e){super(t,e),this._dialog=z.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._isTransitioning=!1,this._scrollBar=new cn,this._addEventListeners()}static get Default(){return Tn}static get DefaultType(){return Cn}static get NAME(){return"modal"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||this._isTransitioning||N.trigger(this._element,pn,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._isTransitioning=!0,this._scrollBar.hide(),document.body.classList.add(wn),this._adjustDialog(),this._backdrop.show((()=>this._showElement(t))))}hide(){this._isShown&&!this._isTransitioning&&(N.trigger(this._element,dn).defaultPrevented||(this._isShown=!1,this._isTransitioning=!0,this._focustrap.deactivate(),this._element.classList.remove(An),this._queueCallback((()=>this._hideModal()),this._element,this._isAnimated())))}dispose(){N.off(window,hn),N.off(this._dialog,hn),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new Ui({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new sn({trapElement:this._element})}_showElement(t){document.body.contains(this._element)||document.body.append(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0;const e=z.findOne(".modal-body",this._dialog);e&&(e.scrollTop=0),d(this._element),this._element.classList.add(An),this._queueCallback((()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,N.trigger(this._element,mn,{relatedTarget:t})}),this._dialog,this._isAnimated())}_addEventListeners(){N.on(this._element,vn,(t=>{"Escape"===t.key&&(this._config.keyboard?this.hide():this._triggerBackdropTransition())})),N.on(window,gn,(()=>{this._isShown&&!this._isTransitioning&&this._adjustDialog()})),N.on(this._element,bn,(t=>{N.one(this._element,_n,(e=>{this._element===t.target&&this._element===e.target&&("static"!==this._config.backdrop?this._config.backdrop&&this.hide():this._triggerBackdropTransition())}))}))}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide((()=>{document.body.classList.remove(wn),this._resetAdjustments(),this._scrollBar.reset(),N.trigger(this._element,fn)}))}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(N.trigger(this._element,un).defaultPrevented)return;const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._element.style.overflowY;"hidden"===e||this._element.classList.contains(En)||(t||(this._element.style.overflowY="hidden"),this._element.classList.add(En),this._queueCallback((()=>{this._element.classList.remove(En),this._queueCallback((()=>{this._element.style.overflowY=e}),this._dialog)}),this._dialog),this._element.focus())}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._scrollBar.getWidth(),i=e>0;if(i&&!t){const t=p()?"paddingLeft":"paddingRight";this._element.style[t]=`${e}px`}if(!i&&t){const t=p()?"paddingRight":"paddingLeft";this._element.style[t]=`${e}px`}}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(t,e){return this.each((function(){const i=On.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t](e)}}))}}N.on(document,yn,'[data-bs-toggle="modal"]',(function(t){const e=z.getElementFromSelector(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),N.one(e,pn,(t=>{t.defaultPrevented||N.one(e,fn,(()=>{a(this)&&this.focus()}))}));const i=z.findOne(".modal.show");i&&On.getInstance(i).hide(),On.getOrCreateInstance(e).toggle(this)})),R(On),m(On);const xn=".bs.offcanvas",kn=".data-api",Ln=`load${xn}${kn}`,Sn="show",Dn="showing",$n="hiding",In=".offcanvas.show",Nn=`show${xn}`,Pn=`shown${xn}`,Mn=`hide${xn}`,jn=`hidePrevented${xn}`,Fn=`hidden${xn}`,Hn=`resize${xn}`,Wn=`click${xn}${kn}`,Bn=`keydown.dismiss${xn}`,zn={backdrop:!0,keyboard:!0,scroll:!1},Rn={backdrop:"(boolean|string)",keyboard:"boolean",scroll:"boolean"};class qn extends W{constructor(t,e){super(t,e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get Default(){return zn}static get DefaultType(){return Rn}static get NAME(){return"offcanvas"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||N.trigger(this._element,Nn,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._backdrop.show(),this._config.scroll||(new cn).hide(),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(Dn),this._queueCallback((()=>{this._config.scroll&&!this._config.backdrop||this._focustrap.activate(),this._element.classList.add(Sn),this._element.classList.remove(Dn),N.trigger(this._element,Pn,{relatedTarget:t})}),this._element,!0))}hide(){this._isShown&&(N.trigger(this._element,Mn).defaultPrevented||(this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.add($n),this._backdrop.hide(),this._queueCallback((()=>{this._element.classList.remove(Sn,$n),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._config.scroll||(new cn).reset(),N.trigger(this._element,Fn)}),this._element,!0)))}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_initializeBackDrop(){const t=Boolean(this._config.backdrop);return new Ui({className:"offcanvas-backdrop",isVisible:t,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:t?()=>{"static"!==this._config.backdrop?this.hide():N.trigger(this._element,jn)}:null})}_initializeFocusTrap(){return new sn({trapElement:this._element})}_addEventListeners(){N.on(this._element,Bn,(t=>{"Escape"===t.key&&(this._config.keyboard?this.hide():N.trigger(this._element,jn))}))}static jQueryInterface(t){return this.each((function(){const e=qn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}N.on(document,Wn,'[data-bs-toggle="offcanvas"]',(function(t){const e=z.getElementFromSelector(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),l(this))return;N.one(e,Fn,(()=>{a(this)&&this.focus()}));const i=z.findOne(In);i&&i!==e&&qn.getInstance(i).hide(),qn.getOrCreateInstance(e).toggle(this)})),N.on(window,Ln,(()=>{for(const t of z.find(In))qn.getOrCreateInstance(t).show()})),N.on(window,Hn,(()=>{for(const t of z.find("[aria-modal][class*=show][class*=offcanvas-]"))"fixed"!==getComputedStyle(t).position&&qn.getOrCreateInstance(t).hide()})),R(qn),m(qn);const Vn={"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","srcset","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},Kn=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Qn=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i,Xn=(t,e)=>{const i=t.nodeName.toLowerCase();return e.includes(i)?!Kn.has(i)||Boolean(Qn.test(t.nodeValue)):e.filter((t=>t instanceof RegExp)).some((t=>t.test(i)))},Yn={allowList:Vn,content:{},extraClass:"",html:!1,sanitize:!0,sanitizeFn:null,template:"
"},Un={allowList:"object",content:"object",extraClass:"(string|function)",html:"boolean",sanitize:"boolean",sanitizeFn:"(null|function)",template:"string"},Gn={entry:"(string|element|function|null)",selector:"(string|element)"};class Jn extends H{constructor(t){super(),this._config=this._getConfig(t)}static get Default(){return Yn}static get DefaultType(){return Un}static get NAME(){return"TemplateFactory"}getContent(){return Object.values(this._config.content).map((t=>this._resolvePossibleFunction(t))).filter(Boolean)}hasContent(){return this.getContent().length>0}changeContent(t){return this._checkContent(t),this._config.content={...this._config.content,...t},this}toHtml(){const t=document.createElement("div");t.innerHTML=this._maybeSanitize(this._config.template);for(const[e,i]of Object.entries(this._config.content))this._setContent(t,i,e);const e=t.children[0],i=this._resolvePossibleFunction(this._config.extraClass);return i&&e.classList.add(...i.split(" ")),e}_typeCheckConfig(t){super._typeCheckConfig(t),this._checkContent(t.content)}_checkContent(t){for(const[e,i]of Object.entries(t))super._typeCheckConfig({selector:e,entry:i},Gn)}_setContent(t,e,i){const n=z.findOne(i,t);n&&((e=this._resolvePossibleFunction(e))?o(e)?this._putElementInTemplate(r(e),n):this._config.html?n.innerHTML=this._maybeSanitize(e):n.textContent=e:n.remove())}_maybeSanitize(t){return this._config.sanitize?function(t,e,i){if(!t.length)return t;if(i&&"function"==typeof i)return i(t);const n=(new window.DOMParser).parseFromString(t,"text/html"),s=[].concat(...n.body.querySelectorAll("*"));for(const t of s){const i=t.nodeName.toLowerCase();if(!Object.keys(e).includes(i)){t.remove();continue}const n=[].concat(...t.attributes),s=[].concat(e["*"]||[],e[i]||[]);for(const e of n)Xn(e,s)||t.removeAttribute(e.nodeName)}return n.body.innerHTML}(t,this._config.allowList,this._config.sanitizeFn):t}_resolvePossibleFunction(t){return g(t,[this])}_putElementInTemplate(t,e){if(this._config.html)return e.innerHTML="",void e.append(t);e.textContent=t.textContent}}const Zn=new Set(["sanitize","allowList","sanitizeFn"]),ts="fade",es="show",is=".modal",ns="hide.bs.modal",ss="hover",os="focus",rs={AUTO:"auto",TOP:"top",RIGHT:p()?"left":"right",BOTTOM:"bottom",LEFT:p()?"right":"left"},as={allowList:Vn,animation:!0,boundary:"clippingParents",container:!1,customClass:"",delay:0,fallbackPlacements:["top","right","bottom","left"],html:!1,offset:[0,6],placement:"top",popperConfig:null,sanitize:!0,sanitizeFn:null,selector:!1,template:'',title:"",trigger:"hover focus"},ls={allowList:"object",animation:"boolean",boundary:"(string|element)",container:"(string|element|boolean)",customClass:"(string|function)",delay:"(number|object)",fallbackPlacements:"array",html:"boolean",offset:"(array|string|function)",placement:"(string|function)",popperConfig:"(null|object|function)",sanitize:"boolean",sanitizeFn:"(null|function)",selector:"(string|boolean)",template:"string",title:"(string|element|function)",trigger:"string"};class cs extends W{constructor(t,e){if(void 0===vi)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(t,e),this._isEnabled=!0,this._timeout=0,this._isHovered=null,this._activeTrigger={},this._popper=null,this._templateFactory=null,this._newContent=null,this.tip=null,this._setListeners(),this._config.selector||this._fixTitle()}static get Default(){return as}static get DefaultType(){return ls}static get NAME(){return"tooltip"}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(){this._isEnabled&&(this._activeTrigger.click=!this._activeTrigger.click,this._isShown()?this._leave():this._enter())}dispose(){clearTimeout(this._timeout),N.off(this._element.closest(is),ns,this._hideModalHandler),this._element.getAttribute("data-bs-original-title")&&this._element.setAttribute("title",this._element.getAttribute("data-bs-original-title")),this._disposePopper(),super.dispose()}show(){if("none"===this._element.style.display)throw new Error("Please use show on visible elements");if(!this._isWithContent()||!this._isEnabled)return;const t=N.trigger(this._element,this.constructor.eventName("show")),e=(c(this._element)||this._element.ownerDocument.documentElement).contains(this._element);if(t.defaultPrevented||!e)return;this._disposePopper();const i=this._getTipElement();this._element.setAttribute("aria-describedby",i.getAttribute("id"));const{container:n}=this._config;if(this._element.ownerDocument.documentElement.contains(this.tip)||(n.append(i),N.trigger(this._element,this.constructor.eventName("inserted"))),this._popper=this._createPopper(i),i.classList.add(es),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))N.on(t,"mouseover",h);this._queueCallback((()=>{N.trigger(this._element,this.constructor.eventName("shown")),!1===this._isHovered&&this._leave(),this._isHovered=!1}),this.tip,this._isAnimated())}hide(){if(this._isShown()&&!N.trigger(this._element,this.constructor.eventName("hide")).defaultPrevented){if(this._getTipElement().classList.remove(es),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))N.off(t,"mouseover",h);this._activeTrigger.click=!1,this._activeTrigger[os]=!1,this._activeTrigger[ss]=!1,this._isHovered=null,this._queueCallback((()=>{this._isWithActiveTrigger()||(this._isHovered||this._disposePopper(),this._element.removeAttribute("aria-describedby"),N.trigger(this._element,this.constructor.eventName("hidden")))}),this.tip,this._isAnimated())}}update(){this._popper&&this._popper.update()}_isWithContent(){return Boolean(this._getTitle())}_getTipElement(){return this.tip||(this.tip=this._createTipElement(this._newContent||this._getContentForTemplate())),this.tip}_createTipElement(t){const e=this._getTemplateFactory(t).toHtml();if(!e)return null;e.classList.remove(ts,es),e.classList.add(`bs-${this.constructor.NAME}-auto`);const i=(t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t})(this.constructor.NAME).toString();return e.setAttribute("id",i),this._isAnimated()&&e.classList.add(ts),e}setContent(t){this._newContent=t,this._isShown()&&(this._disposePopper(),this.show())}_getTemplateFactory(t){return this._templateFactory?this._templateFactory.changeContent(t):this._templateFactory=new Jn({...this._config,content:t,extraClass:this._resolvePossibleFunction(this._config.customClass)}),this._templateFactory}_getContentForTemplate(){return{".tooltip-inner":this._getTitle()}}_getTitle(){return this._resolvePossibleFunction(this._config.title)||this._element.getAttribute("data-bs-original-title")}_initializeOnDelegatedTarget(t){return this.constructor.getOrCreateInstance(t.delegateTarget,this._getDelegateConfig())}_isAnimated(){return this._config.animation||this.tip&&this.tip.classList.contains(ts)}_isShown(){return this.tip&&this.tip.classList.contains(es)}_createPopper(t){const e=g(this._config.placement,[this,t,this._element]),i=rs[e.toUpperCase()];return bi(this._element,t,this._getPopperConfig(i))}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map((t=>Number.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_resolvePossibleFunction(t){return g(t,[this._element])}_getPopperConfig(t){const e={placement:t,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"preSetPlacement",enabled:!0,phase:"beforeMain",fn:t=>{this._getTipElement().setAttribute("data-popper-placement",t.state.placement)}}]};return{...e,...g(this._config.popperConfig,[e])}}_setListeners(){const t=this._config.trigger.split(" ");for(const e of t)if("click"===e)N.on(this._element,this.constructor.eventName("click"),this._config.selector,(t=>{this._initializeOnDelegatedTarget(t).toggle()}));else if("manual"!==e){const t=e===ss?this.constructor.eventName("mouseenter"):this.constructor.eventName("focusin"),i=e===ss?this.constructor.eventName("mouseleave"):this.constructor.eventName("focusout");N.on(this._element,t,this._config.selector,(t=>{const e=this._initializeOnDelegatedTarget(t);e._activeTrigger["focusin"===t.type?os:ss]=!0,e._enter()})),N.on(this._element,i,this._config.selector,(t=>{const e=this._initializeOnDelegatedTarget(t);e._activeTrigger["focusout"===t.type?os:ss]=e._element.contains(t.relatedTarget),e._leave()}))}this._hideModalHandler=()=>{this._element&&this.hide()},N.on(this._element.closest(is),ns,this._hideModalHandler)}_fixTitle(){const t=this._element.getAttribute("title");t&&(this._element.getAttribute("aria-label")||this._element.textContent.trim()||this._element.setAttribute("aria-label",t),this._element.setAttribute("data-bs-original-title",t),this._element.removeAttribute("title"))}_enter(){this._isShown()||this._isHovered?this._isHovered=!0:(this._isHovered=!0,this._setTimeout((()=>{this._isHovered&&this.show()}),this._config.delay.show))}_leave(){this._isWithActiveTrigger()||(this._isHovered=!1,this._setTimeout((()=>{this._isHovered||this.hide()}),this._config.delay.hide))}_setTimeout(t,e){clearTimeout(this._timeout),this._timeout=setTimeout(t,e)}_isWithActiveTrigger(){return Object.values(this._activeTrigger).includes(!0)}_getConfig(t){const e=F.getDataAttributes(this._element);for(const t of Object.keys(e))Zn.has(t)&&delete e[t];return t={...e,..."object"==typeof t&&t?t:{}},t=this._mergeConfigObj(t),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}_configAfterMerge(t){return t.container=!1===t.container?document.body:r(t.container),"number"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),t}_getDelegateConfig(){const t={};for(const[e,i]of Object.entries(this._config))this.constructor.Default[e]!==i&&(t[e]=i);return t.selector=!1,t.trigger="manual",t}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null),this.tip&&(this.tip.remove(),this.tip=null)}static jQueryInterface(t){return this.each((function(){const e=cs.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}m(cs);const hs={...cs.Default,content:"",offset:[0,8],placement:"right",template:'',trigger:"click"},ds={...cs.DefaultType,content:"(null|string|element|function)"};class us extends cs{static get Default(){return hs}static get DefaultType(){return ds}static get NAME(){return"popover"}_isWithContent(){return this._getTitle()||this._getContent()}_getContentForTemplate(){return{".popover-header":this._getTitle(),".popover-body":this._getContent()}}_getContent(){return this._resolvePossibleFunction(this._config.content)}static jQueryInterface(t){return this.each((function(){const e=us.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}m(us);const fs=".bs.scrollspy",ps=`activate${fs}`,ms=`click${fs}`,gs=`load${fs}.data-api`,_s="active",bs="[href]",vs=".nav-link",ys=`${vs}, .nav-item > ${vs}, .list-group-item`,ws={offset:null,rootMargin:"0px 0px -25%",smoothScroll:!1,target:null,threshold:[.1,.5,1]},As={offset:"(number|null)",rootMargin:"string",smoothScroll:"boolean",target:"element",threshold:"array"};class Es extends W{constructor(t,e){super(t,e),this._targetLinks=new Map,this._observableSections=new Map,this._rootElement="visible"===getComputedStyle(this._element).overflowY?null:this._element,this._activeTarget=null,this._observer=null,this._previousScrollData={visibleEntryTop:0,parentScrollTop:0},this.refresh()}static get Default(){return ws}static get DefaultType(){return As}static get NAME(){return"scrollspy"}refresh(){this._initializeTargetsAndObservables(),this._maybeEnableSmoothScroll(),this._observer?this._observer.disconnect():this._observer=this._getNewObserver();for(const t of this._observableSections.values())this._observer.observe(t)}dispose(){this._observer.disconnect(),super.dispose()}_configAfterMerge(t){return t.target=r(t.target)||document.body,t.rootMargin=t.offset?`${t.offset}px 0px -30%`:t.rootMargin,"string"==typeof t.threshold&&(t.threshold=t.threshold.split(",").map((t=>Number.parseFloat(t)))),t}_maybeEnableSmoothScroll(){this._config.smoothScroll&&(N.off(this._config.target,ms),N.on(this._config.target,ms,bs,(t=>{const e=this._observableSections.get(t.target.hash);if(e){t.preventDefault();const i=this._rootElement||window,n=e.offsetTop-this._element.offsetTop;if(i.scrollTo)return void i.scrollTo({top:n,behavior:"smooth"});i.scrollTop=n}})))}_getNewObserver(){const t={root:this._rootElement,threshold:this._config.threshold,rootMargin:this._config.rootMargin};return new IntersectionObserver((t=>this._observerCallback(t)),t)}_observerCallback(t){const e=t=>this._targetLinks.get(`#${t.target.id}`),i=t=>{this._previousScrollData.visibleEntryTop=t.target.offsetTop,this._process(e(t))},n=(this._rootElement||document.documentElement).scrollTop,s=n>=this._previousScrollData.parentScrollTop;this._previousScrollData.parentScrollTop=n;for(const o of t){if(!o.isIntersecting){this._activeTarget=null,this._clearActiveClass(e(o));continue}const t=o.target.offsetTop>=this._previousScrollData.visibleEntryTop;if(s&&t){if(i(o),!n)return}else s||t||i(o)}}_initializeTargetsAndObservables(){this._targetLinks=new Map,this._observableSections=new Map;const t=z.find(bs,this._config.target);for(const e of t){if(!e.hash||l(e))continue;const t=z.findOne(decodeURI(e.hash),this._element);a(t)&&(this._targetLinks.set(decodeURI(e.hash),e),this._observableSections.set(e.hash,t))}}_process(t){this._activeTarget!==t&&(this._clearActiveClass(this._config.target),this._activeTarget=t,t.classList.add(_s),this._activateParents(t),N.trigger(this._element,ps,{relatedTarget:t}))}_activateParents(t){if(t.classList.contains("dropdown-item"))z.findOne(".dropdown-toggle",t.closest(".dropdown")).classList.add(_s);else for(const e of z.parents(t,".nav, .list-group"))for(const t of z.prev(e,ys))t.classList.add(_s)}_clearActiveClass(t){t.classList.remove(_s);const e=z.find(`${bs}.${_s}`,t);for(const t of e)t.classList.remove(_s)}static jQueryInterface(t){return this.each((function(){const e=Es.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}))}}N.on(window,gs,(()=>{for(const t of z.find('[data-bs-spy="scroll"]'))Es.getOrCreateInstance(t)})),m(Es);const Ts=".bs.tab",Cs=`hide${Ts}`,Os=`hidden${Ts}`,xs=`show${Ts}`,ks=`shown${Ts}`,Ls=`click${Ts}`,Ss=`keydown${Ts}`,Ds=`load${Ts}`,$s="ArrowLeft",Is="ArrowRight",Ns="ArrowUp",Ps="ArrowDown",Ms="Home",js="End",Fs="active",Hs="fade",Ws="show",Bs=":not(.dropdown-toggle)",zs='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',Rs=`.nav-link${Bs}, .list-group-item${Bs}, [role="tab"]${Bs}, ${zs}`,qs=`.${Fs}[data-bs-toggle="tab"], .${Fs}[data-bs-toggle="pill"], .${Fs}[data-bs-toggle="list"]`;class Vs extends W{constructor(t){super(t),this._parent=this._element.closest('.list-group, .nav, [role="tablist"]'),this._parent&&(this._setInitialAttributes(this._parent,this._getChildren()),N.on(this._element,Ss,(t=>this._keydown(t))))}static get NAME(){return"tab"}show(){const t=this._element;if(this._elemIsActive(t))return;const e=this._getActiveElem(),i=e?N.trigger(e,Cs,{relatedTarget:t}):null;N.trigger(t,xs,{relatedTarget:e}).defaultPrevented||i&&i.defaultPrevented||(this._deactivate(e,t),this._activate(t,e))}_activate(t,e){t&&(t.classList.add(Fs),this._activate(z.getElementFromSelector(t)),this._queueCallback((()=>{"tab"===t.getAttribute("role")?(t.removeAttribute("tabindex"),t.setAttribute("aria-selected",!0),this._toggleDropDown(t,!0),N.trigger(t,ks,{relatedTarget:e})):t.classList.add(Ws)}),t,t.classList.contains(Hs)))}_deactivate(t,e){t&&(t.classList.remove(Fs),t.blur(),this._deactivate(z.getElementFromSelector(t)),this._queueCallback((()=>{"tab"===t.getAttribute("role")?(t.setAttribute("aria-selected",!1),t.setAttribute("tabindex","-1"),this._toggleDropDown(t,!1),N.trigger(t,Os,{relatedTarget:e})):t.classList.remove(Ws)}),t,t.classList.contains(Hs)))}_keydown(t){if(![$s,Is,Ns,Ps,Ms,js].includes(t.key))return;t.stopPropagation(),t.preventDefault();const e=this._getChildren().filter((t=>!l(t)));let i;if([Ms,js].includes(t.key))i=e[t.key===Ms?0:e.length-1];else{const n=[Is,Ps].includes(t.key);i=b(e,t.target,n,!0)}i&&(i.focus({preventScroll:!0}),Vs.getOrCreateInstance(i).show())}_getChildren(){return z.find(Rs,this._parent)}_getActiveElem(){return this._getChildren().find((t=>this._elemIsActive(t)))||null}_setInitialAttributes(t,e){this._setAttributeIfNotExists(t,"role","tablist");for(const t of e)this._setInitialAttributesOnChild(t)}_setInitialAttributesOnChild(t){t=this._getInnerElement(t);const e=this._elemIsActive(t),i=this._getOuterElement(t);t.setAttribute("aria-selected",e),i!==t&&this._setAttributeIfNotExists(i,"role","presentation"),e||t.setAttribute("tabindex","-1"),this._setAttributeIfNotExists(t,"role","tab"),this._setInitialAttributesOnTargetPanel(t)}_setInitialAttributesOnTargetPanel(t){const e=z.getElementFromSelector(t);e&&(this._setAttributeIfNotExists(e,"role","tabpanel"),t.id&&this._setAttributeIfNotExists(e,"aria-labelledby",`${t.id}`))}_toggleDropDown(t,e){const i=this._getOuterElement(t);if(!i.classList.contains("dropdown"))return;const n=(t,n)=>{const s=z.findOne(t,i);s&&s.classList.toggle(n,e)};n(".dropdown-toggle",Fs),n(".dropdown-menu",Ws),i.setAttribute("aria-expanded",e)}_setAttributeIfNotExists(t,e,i){t.hasAttribute(e)||t.setAttribute(e,i)}_elemIsActive(t){return t.classList.contains(Fs)}_getInnerElement(t){return t.matches(Rs)?t:z.findOne(Rs,t)}_getOuterElement(t){return t.closest(".nav-item, .list-group-item")||t}static jQueryInterface(t){return this.each((function(){const e=Vs.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}))}}N.on(document,Ls,zs,(function(t){["A","AREA"].includes(this.tagName)&&t.preventDefault(),l(this)||Vs.getOrCreateInstance(this).show()})),N.on(window,Ds,(()=>{for(const t of z.find(qs))Vs.getOrCreateInstance(t)})),m(Vs);const Ks=".bs.toast",Qs=`mouseover${Ks}`,Xs=`mouseout${Ks}`,Ys=`focusin${Ks}`,Us=`focusout${Ks}`,Gs=`hide${Ks}`,Js=`hidden${Ks}`,Zs=`show${Ks}`,to=`shown${Ks}`,eo="hide",io="show",no="showing",so={animation:"boolean",autohide:"boolean",delay:"number"},oo={animation:!0,autohide:!0,delay:5e3};class ro extends W{constructor(t,e){super(t,e),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get Default(){return oo}static get DefaultType(){return so}static get NAME(){return"toast"}show(){N.trigger(this._element,Zs).defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove(eo),d(this._element),this._element.classList.add(io,no),this._queueCallback((()=>{this._element.classList.remove(no),N.trigger(this._element,to),this._maybeScheduleHide()}),this._element,this._config.animation))}hide(){this.isShown()&&(N.trigger(this._element,Gs).defaultPrevented||(this._element.classList.add(no),this._queueCallback((()=>{this._element.classList.add(eo),this._element.classList.remove(no,io),N.trigger(this._element,Js)}),this._element,this._config.animation)))}dispose(){this._clearTimeout(),this.isShown()&&this._element.classList.remove(io),super.dispose()}isShown(){return this._element.classList.contains(io)}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout((()=>{this.hide()}),this._config.delay)))}_onInteraction(t,e){switch(t.type){case"mouseover":case"mouseout":this._hasMouseInteraction=e;break;case"focusin":case"focusout":this._hasKeyboardInteraction=e}if(e)return void this._clearTimeout();const i=t.relatedTarget;this._element===i||this._element.contains(i)||this._maybeScheduleHide()}_setListeners(){N.on(this._element,Qs,(t=>this._onInteraction(t,!0))),N.on(this._element,Xs,(t=>this._onInteraction(t,!1))),N.on(this._element,Ys,(t=>this._onInteraction(t,!0))),N.on(this._element,Us,(t=>this._onInteraction(t,!1)))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(t){return this.each((function(){const e=ro.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}return R(ro),m(ro),{Alert:Q,Button:Y,Carousel:xt,Collapse:Bt,Dropdown:qi,Modal:On,Offcanvas:qn,Popover:us,ScrollSpy:Es,Tab:Vs,Toast:ro,Tooltip:cs}})); +//# sourceMappingURL=bootstrap.bundle.min.js.map \ No newline at end of file diff --git a/docs/deps/bootstrap-5.3.1/bootstrap.bundle.min.js.map b/docs/deps/bootstrap-5.3.1/bootstrap.bundle.min.js.map new file mode 100644 index 0000000..3863da8 --- /dev/null +++ b/docs/deps/bootstrap-5.3.1/bootstrap.bundle.min.js.map @@ -0,0 +1 @@ +{"version":3,"names":["elementMap","Map","Data","set","element","key","instance","has","instanceMap","get","size","console","error","Array","from","keys","remove","delete","TRANSITION_END","parseSelector","selector","window","CSS","escape","replace","match","id","triggerTransitionEnd","dispatchEvent","Event","isElement","object","jquery","nodeType","getElement","length","document","querySelector","isVisible","getClientRects","elementIsVisible","getComputedStyle","getPropertyValue","closedDetails","closest","summary","parentNode","isDisabled","Node","ELEMENT_NODE","classList","contains","disabled","hasAttribute","getAttribute","findShadowRoot","documentElement","attachShadow","getRootNode","root","ShadowRoot","noop","reflow","offsetHeight","getjQuery","jQuery","body","DOMContentLoadedCallbacks","isRTL","dir","defineJQueryPlugin","plugin","callback","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","readyState","addEventListener","push","execute","possibleCallback","args","defaultValue","executeAfterTransition","transitionElement","waitForTransition","emulatedDuration","transitionDuration","transitionDelay","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","split","getTransitionDurationFromElement","called","handler","target","removeEventListener","setTimeout","getNextActiveElement","list","activeElement","shouldGetNext","isCycleAllowed","listLength","index","indexOf","Math","max","min","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","nativeEvents","Set","makeEventUid","uid","getElementEvents","findHandler","events","callable","delegationSelector","Object","values","find","event","normalizeParameters","originalTypeEvent","delegationFunction","isDelegated","typeEvent","getTypeEvent","addHandler","oneOff","wrapFunction","relatedTarget","delegateTarget","call","this","handlers","previousFunction","domElements","querySelectorAll","domElement","hydrateObj","EventHandler","off","type","apply","bootstrapDelegationHandler","bootstrapHandler","removeHandler","Boolean","removeNamespacedHandlers","namespace","storeElementEvent","handlerKey","entries","includes","on","one","inNamespace","isNamespace","startsWith","elementEvent","slice","keyHandlers","trigger","jQueryEvent","bubbles","nativeDispatch","defaultPrevented","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","evt","cancelable","preventDefault","obj","meta","value","_unused","defineProperty","configurable","normalizeData","toString","JSON","parse","decodeURIComponent","normalizeDataKey","chr","toLowerCase","Manipulator","setDataAttribute","setAttribute","removeDataAttribute","removeAttribute","getDataAttributes","attributes","bsKeys","dataset","filter","pureKey","charAt","getDataAttribute","Config","Default","DefaultType","Error","_getConfig","config","_mergeConfigObj","_configAfterMerge","_typeCheckConfig","jsonConfig","constructor","configTypes","property","expectedTypes","valueType","prototype","RegExp","test","TypeError","toUpperCase","BaseComponent","super","_element","_config","DATA_KEY","dispose","EVENT_KEY","propertyName","getOwnPropertyNames","_queueCallback","isAnimated","getInstance","getOrCreateInstance","VERSION","eventName","getSelector","hrefAttribute","trim","SelectorEngine","concat","Element","findOne","children","child","matches","parents","ancestor","prev","previous","previousElementSibling","next","nextElementSibling","focusableChildren","focusables","map","join","el","getSelectorFromElement","getElementFromSelector","getMultipleElementsFromSelector","enableDismissTrigger","component","method","clickEvent","tagName","EVENT_CLOSE","EVENT_CLOSED","Alert","close","_destroyElement","each","data","undefined","SELECTOR_DATA_TOGGLE","Button","toggle","button","EVENT_TOUCHSTART","EVENT_TOUCHMOVE","EVENT_TOUCHEND","EVENT_POINTERDOWN","EVENT_POINTERUP","endCallback","leftCallback","rightCallback","Swipe","isSupported","_deltaX","_supportPointerEvents","PointerEvent","_initEvents","_start","_eventIsPointerPenTouch","clientX","touches","_end","_handleSwipe","_move","absDeltaX","abs","direction","add","pointerType","navigator","maxTouchPoints","DATA_API_KEY","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","EVENT_SLIDE","EVENT_SLID","EVENT_KEYDOWN","EVENT_MOUSEENTER","EVENT_MOUSELEAVE","EVENT_DRAG_START","EVENT_LOAD_DATA_API","EVENT_CLICK_DATA_API","CLASS_NAME_CAROUSEL","CLASS_NAME_ACTIVE","SELECTOR_ACTIVE","SELECTOR_ITEM","SELECTOR_ACTIVE_ITEM","KEY_TO_DIRECTION","ArrowLeft","ArrowRight","interval","keyboard","pause","ride","touch","wrap","Carousel","_interval","_activeElement","_isSliding","touchTimeout","_swipeHelper","_indicatorsElement","_addEventListeners","cycle","_slide","nextWhenVisible","hidden","_clearInterval","_updateInterval","setInterval","_maybeEnableCycle","to","items","_getItems","activeIndex","_getItemIndex","_getActive","order","defaultInterval","_keydown","_addTouchEventListeners","img","swipeConfig","_directionToOrder","endCallBack","clearTimeout","_setActiveIndicatorElement","activeIndicator","newActiveIndicator","elementInterval","parseInt","isNext","nextElement","nextElementIndex","triggerEvent","_orderToDirection","isCycling","directionalClassName","orderClassName","completeCallBack","_isAnimated","clearInterval","carousel","slideIndex","carousels","EVENT_SHOW","EVENT_SHOWN","EVENT_HIDE","EVENT_HIDDEN","CLASS_NAME_SHOW","CLASS_NAME_COLLAPSE","CLASS_NAME_COLLAPSING","CLASS_NAME_DEEPER_CHILDREN","parent","Collapse","_isTransitioning","_triggerArray","toggleList","elem","filterElement","foundElement","_initializeChildren","_addAriaAndCollapsedClass","_isShown","hide","show","activeChildren","_getFirstLevelChildren","activeInstance","dimension","_getDimension","style","scrollSize","complete","getBoundingClientRect","selected","triggerArray","isOpen","top","bottom","right","left","auto","basePlacements","start","end","clippingParents","viewport","popper","reference","variationPlacements","reduce","acc","placement","placements","beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite","modifierPhases","getNodeName","nodeName","getWindow","node","ownerDocument","defaultView","isHTMLElement","HTMLElement","isShadowRoot","applyStyles$1","enabled","phase","_ref","state","elements","forEach","styles","assign","effect","_ref2","initialStyles","position","options","strategy","margin","arrow","hasOwnProperty","attribute","requires","getBasePlacement","round","getUAString","uaData","userAgentData","brands","isArray","item","brand","version","userAgent","isLayoutViewport","includeScale","isFixedStrategy","clientRect","scaleX","scaleY","offsetWidth","width","height","visualViewport","addVisualOffsets","x","offsetLeft","y","offsetTop","getLayoutRect","rootNode","isSameNode","host","isTableElement","getDocumentElement","getParentNode","assignedSlot","getTrueOffsetParent","offsetParent","getOffsetParent","isFirefox","currentNode","css","transform","perspective","contain","willChange","getContainingBlock","getMainAxisFromPlacement","within","mathMax","mathMin","mergePaddingObject","paddingObject","expandToHashMap","hashMap","arrow$1","_state$modifiersData$","arrowElement","popperOffsets","modifiersData","basePlacement","axis","len","padding","rects","toPaddingObject","arrowRect","minProp","maxProp","endDiff","startDiff","arrowOffsetParent","clientSize","clientHeight","clientWidth","centerToReference","center","offset","axisProp","centerOffset","_options$element","requiresIfExists","getVariation","unsetSides","mapToStyles","_Object$assign2","popperRect","variation","offsets","gpuAcceleration","adaptive","roundOffsets","isFixed","_offsets$x","_offsets$y","_ref3","hasX","hasY","sideX","sideY","win","heightProp","widthProp","_Object$assign","commonStyles","_ref4","dpr","devicePixelRatio","roundOffsetsByDPR","computeStyles$1","_ref5","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","passive","eventListeners","_options$scroll","scroll","_options$resize","resize","scrollParents","scrollParent","update","hash","getOppositePlacement","matched","getOppositeVariationPlacement","getWindowScroll","scrollLeft","pageXOffset","scrollTop","pageYOffset","getWindowScrollBarX","isScrollParent","_getComputedStyle","overflow","overflowX","overflowY","getScrollParent","listScrollParents","_element$ownerDocumen","isBody","updatedList","rectToClientRect","rect","getClientRectFromMixedType","clippingParent","html","layoutViewport","getViewportRect","clientTop","clientLeft","getInnerBoundingClientRect","winScroll","scrollWidth","scrollHeight","getDocumentRect","computeOffsets","commonX","commonY","mainAxis","detectOverflow","_options","_options$placement","_options$strategy","_options$boundary","boundary","_options$rootBoundary","rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","clippingClientRect","mainClippingParents","clipperElement","getClippingParents","firstClippingParent","clippingRect","accRect","getClippingRect","contextElement","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","multiply","computeAutoPlacement","flipVariations","_options$allowedAutoP","allowedAutoPlacements","allPlacements","allowedPlacements","overflows","sort","a","b","flip$1","_skip","_options$mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","_options$flipVariatio","preferredPlacement","oppositePlacement","getExpandedFallbackPlacements","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","i","_basePlacement","isStartVariation","isVertical","mainVariationSide","altVariationSide","checks","every","check","_loop","_i","fittingPlacement","reset","getSideOffsets","preventedOffsets","isAnySideFullyClipped","some","side","hide$1","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","offset$1","_options$offset","invertDistance","skidding","distance","distanceAndSkiddingToXY","_data$state$placement","popperOffsets$1","preventOverflow$1","_options$tether","tether","_options$tetherOffset","tetherOffset","isBasePlacement","tetherOffsetValue","normalizedTetherOffsetValue","offsetModifierState","_offsetModifierState$","mainSide","altSide","additive","minLen","maxLen","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","clientOffset","offsetModifierValue","tetherMax","preventedOffset","_offsetModifierState$2","_mainSide","_altSide","_offset","_len","_min","_max","isOriginSide","_offsetModifierValue","_tetherMin","_tetherMax","_preventedOffset","v","withinMaxClamp","getCompositeRect","elementOrVirtualElement","isOffsetParentAnElement","offsetParentIsScaled","isElementScaled","modifiers","visited","result","modifier","dep","depModifier","DEFAULT_OPTIONS","areValidElements","arguments","_key","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","pending","orderedModifiers","effectCleanupFns","isDestroyed","setOptions","setOptionsAction","cleanupModifierEffects","merged","orderModifiers","current","existing","m","_ref$options","cleanupFn","forceUpdate","_state$elements","_state$orderedModifie","_state$orderedModifie2","Promise","resolve","then","destroy","onFirstUpdate","createPopper","computeStyles","applyStyles","flip","ARROW_UP_KEY","ARROW_DOWN_KEY","EVENT_KEYDOWN_DATA_API","EVENT_KEYUP_DATA_API","SELECTOR_DATA_TOGGLE_SHOWN","SELECTOR_MENU","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","autoClose","display","popperConfig","Dropdown","_popper","_parent","_menu","_inNavbar","_detectNavbar","_createPopper","focus","_completeHide","Popper","referenceElement","_getPopperConfig","_getPlacement","parentDropdown","isEnd","_getOffset","popperData","defaultBsPopperConfig","_selectMenuItem","clearMenus","openToggles","context","composedPath","isMenuTarget","dataApiKeydownHandler","isInput","isEscapeEvent","isUpOrDownEvent","getToggleButton","stopPropagation","EVENT_MOUSEDOWN","className","clickCallback","rootElement","Backdrop","_isAppended","_append","_getElement","_emulateAnimation","backdrop","createElement","append","EVENT_FOCUSIN","EVENT_KEYDOWN_TAB","TAB_NAV_BACKWARD","autofocus","trapElement","FocusTrap","_isActive","_lastTabNavDirection","activate","_handleFocusin","_handleKeydown","deactivate","shiftKey","SELECTOR_FIXED_CONTENT","SELECTOR_STICKY_CONTENT","PROPERTY_PADDING","PROPERTY_MARGIN","ScrollBarHelper","getWidth","documentWidth","innerWidth","_disableOverFlow","_setElementAttributes","calculatedValue","_resetElementAttributes","isOverflowing","_saveInitialAttribute","styleProperty","scrollbarWidth","_applyManipulationCallback","setProperty","actualValue","removeProperty","callBack","sel","EVENT_HIDE_PREVENTED","EVENT_RESIZE","EVENT_CLICK_DISMISS","EVENT_MOUSEDOWN_DISMISS","EVENT_KEYDOWN_DISMISS","CLASS_NAME_OPEN","CLASS_NAME_STATIC","Modal","_dialog","_backdrop","_initializeBackDrop","_focustrap","_initializeFocusTrap","_scrollBar","_adjustDialog","_showElement","_hideModal","handleUpdate","modalBody","transitionComplete","_triggerBackdropTransition","event2","_resetAdjustments","isModalOverflowing","initialOverflowY","isBodyOverflowing","paddingLeft","paddingRight","showEvent","alreadyOpen","CLASS_NAME_SHOWING","CLASS_NAME_HIDING","OPEN_SELECTOR","Offcanvas","blur","completeCallback","DefaultAllowlist","area","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","uriAttributes","SAFE_URL_PATTERN","allowedAttribute","allowedAttributeList","attributeName","nodeValue","attributeRegex","regex","allowList","content","extraClass","sanitize","sanitizeFn","template","DefaultContentType","entry","TemplateFactory","getContent","_resolvePossibleFunction","hasContent","changeContent","_checkContent","toHtml","templateWrapper","innerHTML","_maybeSanitize","text","_setContent","arg","templateElement","_putElementInTemplate","textContent","unsafeHtml","sanitizeFunction","createdDocument","DOMParser","parseFromString","elementName","attributeList","allowedAttributes","sanitizeHtml","DISALLOWED_ATTRIBUTES","CLASS_NAME_FADE","SELECTOR_MODAL","EVENT_MODAL_HIDE","TRIGGER_HOVER","TRIGGER_FOCUS","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","animation","container","customClass","delay","title","Tooltip","_isEnabled","_timeout","_isHovered","_activeTrigger","_templateFactory","_newContent","tip","_setListeners","_fixTitle","enable","disable","toggleEnabled","click","_leave","_enter","_hideModalHandler","_disposePopper","_isWithContent","isInTheDom","_getTipElement","_isWithActiveTrigger","_getTitle","_createTipElement","_getContentForTemplate","_getTemplateFactory","tipId","prefix","floor","random","getElementById","getUID","setContent","_initializeOnDelegatedTarget","_getDelegateConfig","attachment","triggers","eventIn","eventOut","_setTimeout","timeout","dataAttributes","dataAttribute","Popover","_getContent","EVENT_ACTIVATE","EVENT_CLICK","SELECTOR_TARGET_LINKS","SELECTOR_NAV_LINKS","SELECTOR_LINK_ITEMS","rootMargin","smoothScroll","threshold","ScrollSpy","_targetLinks","_observableSections","_rootElement","_activeTarget","_observer","_previousScrollData","visibleEntryTop","parentScrollTop","refresh","_initializeTargetsAndObservables","_maybeEnableSmoothScroll","disconnect","_getNewObserver","section","observe","observableSection","scrollTo","behavior","IntersectionObserver","_observerCallback","targetElement","_process","userScrollsDown","isIntersecting","_clearActiveClass","entryIsLowerThanPrevious","targetLinks","anchor","decodeURI","_activateParents","listGroup","activeNodes","spy","ARROW_LEFT_KEY","ARROW_RIGHT_KEY","HOME_KEY","END_KEY","NOT_SELECTOR_DROPDOWN_TOGGLE","SELECTOR_INNER_ELEM","SELECTOR_DATA_TOGGLE_ACTIVE","Tab","_setInitialAttributes","_getChildren","innerElem","_elemIsActive","active","_getActiveElem","hideEvent","_deactivate","_activate","relatedElem","_toggleDropDown","nextActiveElement","preventScroll","_setAttributeIfNotExists","_setInitialAttributesOnChild","_getInnerElement","isActive","outerElem","_getOuterElement","_setInitialAttributesOnTargetPanel","open","EVENT_MOUSEOVER","EVENT_MOUSEOUT","EVENT_FOCUSOUT","CLASS_NAME_HIDE","autohide","Toast","_hasMouseInteraction","_hasKeyboardInteraction","_clearTimeout","_maybeScheduleHide","isShown","_onInteraction","isInteracting"],"sources":["../../js/src/dom/data.js","../../js/src/util/index.js","../../js/src/dom/event-handler.js","../../js/src/dom/manipulator.js","../../js/src/util/config.js","../../js/src/base-component.js","../../js/src/dom/selector-engine.js","../../js/src/util/component-functions.js","../../js/src/alert.js","../../js/src/button.js","../../js/src/util/swipe.js","../../js/src/carousel.js","../../js/src/collapse.js","../../node_modules/@popperjs/core/lib/enums.js","../../node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../../node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../../node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../../node_modules/@popperjs/core/lib/modifiers/applyStyles.js","../../node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../../node_modules/@popperjs/core/lib/utils/math.js","../../node_modules/@popperjs/core/lib/utils/userAgent.js","../../node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js","../../node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../../node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../../node_modules/@popperjs/core/lib/dom-utils/contains.js","../../node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../../node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../../node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../../node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../../node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../../node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../../node_modules/@popperjs/core/lib/utils/within.js","../../node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../../node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../../node_modules/@popperjs/core/lib/modifiers/arrow.js","../../node_modules/@popperjs/core/lib/utils/getVariation.js","../../node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../../node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../../node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../../node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../../node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../../node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../../node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../../node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../../node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../../node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../../node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../../node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../../node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../../node_modules/@popperjs/core/lib/utils/computeOffsets.js","../../node_modules/@popperjs/core/lib/utils/detectOverflow.js","../../node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../../node_modules/@popperjs/core/lib/modifiers/flip.js","../../node_modules/@popperjs/core/lib/modifiers/hide.js","../../node_modules/@popperjs/core/lib/modifiers/offset.js","../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../../node_modules/@popperjs/core/lib/utils/getAltAxis.js","../../node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../../node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../../node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../../node_modules/@popperjs/core/lib/utils/orderModifiers.js","../../node_modules/@popperjs/core/lib/createPopper.js","../../node_modules/@popperjs/core/lib/utils/debounce.js","../../node_modules/@popperjs/core/lib/utils/mergeByName.js","../../node_modules/@popperjs/core/lib/popper-lite.js","../../node_modules/@popperjs/core/lib/popper.js","../../js/src/dropdown.js","../../js/src/util/backdrop.js","../../js/src/util/focustrap.js","../../js/src/util/scrollbar.js","../../js/src/modal.js","../../js/src/offcanvas.js","../../js/src/util/sanitizer.js","../../js/src/util/template-factory.js","../../js/src/tooltip.js","../../js/src/popover.js","../../js/src/scrollspy.js","../../js/src/tab.js","../../js/src/toast.js","../../js/index.umd.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * Constants\n */\n\nconst elementMap = new Map()\n\nexport default {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map())\n }\n\n const instanceMap = elementMap.get(element)\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`)\n return\n }\n\n instanceMap.set(key, instance)\n },\n\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null\n }\n\n return null\n },\n\n remove(element, key) {\n if (!elementMap.has(element)) {\n return\n }\n\n const instanceMap = elementMap.get(element)\n\n instanceMap.delete(key)\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element)\n }\n }\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1_000_000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n/**\n * Properly escape IDs selectors to handle weird IDs\n * @param {string} selector\n * @returns {string}\n */\nconst parseSelector = selector => {\n if (selector && window.CSS && window.CSS.escape) {\n // document.querySelector needs escaping to handle IDs (html5+) containing for instance /\n selector = selector.replace(/#([^\\s\"#']+)/g, (match, id) => `#${CSS.escape(id)}`)\n }\n\n return selector\n}\n\n// Shout-out Angus Croll (https://goo.gl/pxwQGp)\nconst toType = object => {\n if (object === null || object === undefined) {\n return `${object}`\n }\n\n return Object.prototype.toString.call(object).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * Public Util API\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = object => {\n if (!object || typeof object !== 'object') {\n return false\n }\n\n if (typeof object.jquery !== 'undefined') {\n object = object[0]\n }\n\n return typeof object.nodeType !== 'undefined'\n}\n\nconst getElement = object => {\n // it's a jQuery object or a node element\n if (isElement(object)) {\n return object.jquery ? object[0] : object\n }\n\n if (typeof object === 'string' && object.length > 0) {\n return document.querySelector(parseSelector(object))\n }\n\n return null\n}\n\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false\n }\n\n const elementIsVisible = getComputedStyle(element).getPropertyValue('visibility') === 'visible'\n // Handle `details` element as its content may falsie appear visible when it is closed\n const closedDetails = element.closest('details:not([open])')\n\n if (!closedDetails) {\n return elementIsVisible\n }\n\n if (closedDetails !== element) {\n const summary = element.closest('summary')\n if (summary && summary.parentNode !== closedDetails) {\n return false\n }\n\n if (summary === null) {\n return false\n }\n }\n\n return elementIsVisible\n}\n\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true\n }\n\n if (element.classList.contains('disabled')) {\n return true\n }\n\n if (typeof element.disabled !== 'undefined') {\n return element.disabled\n }\n\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => {}\n\n/**\n * Trick to restart an element's animation\n *\n * @param {HTMLElement} element\n * @return void\n *\n * @see https://www.charistheo.io/blog/2021/02/restart-a-css-animation-with-javascript/#restarting-a-css-animation\n */\nconst reflow = element => {\n element.offsetHeight // eslint-disable-line no-unused-expressions\n}\n\nconst getjQuery = () => {\n if (window.jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return window.jQuery\n }\n\n return null\n}\n\nconst DOMContentLoadedCallbacks = []\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n for (const callback of DOMContentLoadedCallbacks) {\n callback()\n }\n })\n }\n\n DOMContentLoadedCallbacks.push(callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = () => document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nconst execute = (possibleCallback, args = [], defaultValue = possibleCallback) => {\n return typeof possibleCallback === 'function' ? possibleCallback(...args) : defaultValue\n}\n\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback)\n return\n }\n\n const durationPadding = 5\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding\n\n let called = false\n\n const handler = ({ target }) => {\n if (target !== transitionElement) {\n return\n }\n\n called = true\n transitionElement.removeEventListener(TRANSITION_END, handler)\n execute(callback)\n }\n\n transitionElement.addEventListener(TRANSITION_END, handler)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement)\n }\n }, emulatedDuration)\n}\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n const listLength = list.length\n let index = list.indexOf(activeElement)\n\n // if the element does not exist in the list return an element\n // depending on the direction and if cycle is allowed\n if (index === -1) {\n return !shouldGetNext && isCycleAllowed ? list[listLength - 1] : list[0]\n }\n\n index += shouldGetNext ? 1 : -1\n\n if (isCycleAllowed) {\n index = (index + listLength) % listLength\n }\n\n return list[Math.max(0, Math.min(index, listLength - 1))]\n}\n\nexport {\n defineJQueryPlugin,\n execute,\n executeAfterTransition,\n findShadowRoot,\n getElement,\n getjQuery,\n getNextActiveElement,\n getTransitionDurationFromElement,\n getUID,\n isDisabled,\n isElement,\n isRTL,\n isVisible,\n noop,\n onDOMContentLoaded,\n parseSelector,\n reflow,\n triggerTransitionEnd,\n toType\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { getjQuery } from '../util/index.js'\n\n/**\n * Constants\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/\nconst stripNameRegex = /\\..*/\nconst stripUidRegex = /::\\d+$/\nconst eventRegistry = {} // Events storage\nlet uidEvent = 1\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n}\n\nconst nativeEvents = new Set([\n 'click',\n 'dblclick',\n 'mouseup',\n 'mousedown',\n 'contextmenu',\n 'mousewheel',\n 'DOMMouseScroll',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'selectstart',\n 'selectend',\n 'keydown',\n 'keypress',\n 'keyup',\n 'orientationchange',\n 'touchstart',\n 'touchmove',\n 'touchend',\n 'touchcancel',\n 'pointerdown',\n 'pointermove',\n 'pointerup',\n 'pointerleave',\n 'pointercancel',\n 'gesturestart',\n 'gesturechange',\n 'gestureend',\n 'focus',\n 'blur',\n 'change',\n 'reset',\n 'select',\n 'submit',\n 'focusin',\n 'focusout',\n 'load',\n 'unload',\n 'beforeunload',\n 'resize',\n 'move',\n 'DOMContentLoaded',\n 'readystatechange',\n 'error',\n 'abort',\n 'scroll'\n])\n\n/**\n * Private methods\n */\n\nfunction makeEventUid(element, uid) {\n return (uid && `${uid}::${uidEvent++}`) || element.uidEvent || uidEvent++\n}\n\nfunction getElementEvents(element) {\n const uid = makeEventUid(element)\n\n element.uidEvent = uid\n eventRegistry[uid] = eventRegistry[uid] || {}\n\n return eventRegistry[uid]\n}\n\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n hydrateObj(event, { delegateTarget: element })\n\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn)\n }\n\n return fn.apply(element, [event])\n }\n}\n\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector)\n\n for (let { target } = event; target && target !== this; target = target.parentNode) {\n for (const domElement of domElements) {\n if (domElement !== target) {\n continue\n }\n\n hydrateObj(event, { delegateTarget: target })\n\n if (handler.oneOff) {\n EventHandler.off(element, event.type, selector, fn)\n }\n\n return fn.apply(target, [event])\n }\n }\n }\n}\n\nfunction findHandler(events, callable, delegationSelector = null) {\n return Object.values(events)\n .find(event => event.callable === callable && event.delegationSelector === delegationSelector)\n}\n\nfunction normalizeParameters(originalTypeEvent, handler, delegationFunction) {\n const isDelegated = typeof handler === 'string'\n // TODO: tooltip passes `false` instead of selector, so we need to check\n const callable = isDelegated ? delegationFunction : (handler || delegationFunction)\n let typeEvent = getTypeEvent(originalTypeEvent)\n\n if (!nativeEvents.has(typeEvent)) {\n typeEvent = originalTypeEvent\n }\n\n return [isDelegated, callable, typeEvent]\n}\n\nfunction addHandler(element, originalTypeEvent, handler, delegationFunction, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n let [isDelegated, callable, typeEvent] = normalizeParameters(originalTypeEvent, handler, delegationFunction)\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (originalTypeEvent in customEvents) {\n const wrapFunction = fn => {\n return function (event) {\n if (!event.relatedTarget || (event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget))) {\n return fn.call(this, event)\n }\n }\n }\n\n callable = wrapFunction(callable)\n }\n\n const events = getElementEvents(element)\n const handlers = events[typeEvent] || (events[typeEvent] = {})\n const previousFunction = findHandler(handlers, callable, isDelegated ? handler : null)\n\n if (previousFunction) {\n previousFunction.oneOff = previousFunction.oneOff && oneOff\n\n return\n }\n\n const uid = makeEventUid(callable, originalTypeEvent.replace(namespaceRegex, ''))\n const fn = isDelegated ?\n bootstrapDelegationHandler(element, handler, callable) :\n bootstrapHandler(element, callable)\n\n fn.delegationSelector = isDelegated ? handler : null\n fn.callable = callable\n fn.oneOff = oneOff\n fn.uidEvent = uid\n handlers[uid] = fn\n\n element.addEventListener(typeEvent, fn, isDelegated)\n}\n\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector)\n\n if (!fn) {\n return\n }\n\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector))\n delete events[typeEvent][fn.uidEvent]\n}\n\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {}\n\n for (const [handlerKey, event] of Object.entries(storeElementEvent)) {\n if (handlerKey.includes(namespace)) {\n removeHandler(element, events, typeEvent, event.callable, event.delegationSelector)\n }\n }\n}\n\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '')\n return customEvents[event] || event\n}\n\nconst EventHandler = {\n on(element, event, handler, delegationFunction) {\n addHandler(element, event, handler, delegationFunction, false)\n },\n\n one(element, event, handler, delegationFunction) {\n addHandler(element, event, handler, delegationFunction, true)\n },\n\n off(element, originalTypeEvent, handler, delegationFunction) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n const [isDelegated, callable, typeEvent] = normalizeParameters(originalTypeEvent, handler, delegationFunction)\n const inNamespace = typeEvent !== originalTypeEvent\n const events = getElementEvents(element)\n const storeElementEvent = events[typeEvent] || {}\n const isNamespace = originalTypeEvent.startsWith('.')\n\n if (typeof callable !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!Object.keys(storeElementEvent).length) {\n return\n }\n\n removeHandler(element, events, typeEvent, callable, isDelegated ? handler : null)\n return\n }\n\n if (isNamespace) {\n for (const elementEvent of Object.keys(events)) {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1))\n }\n }\n\n for (const [keyHandlers, event] of Object.entries(storeElementEvent)) {\n const handlerKey = keyHandlers.replace(stripUidRegex, '')\n\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n removeHandler(element, events, typeEvent, event.callable, event.delegationSelector)\n }\n }\n },\n\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null\n }\n\n const $ = getjQuery()\n const typeEvent = getTypeEvent(event)\n const inNamespace = event !== typeEvent\n\n let jQueryEvent = null\n let bubbles = true\n let nativeDispatch = true\n let defaultPrevented = false\n\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args)\n\n $(element).trigger(jQueryEvent)\n bubbles = !jQueryEvent.isPropagationStopped()\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped()\n defaultPrevented = jQueryEvent.isDefaultPrevented()\n }\n\n const evt = hydrateObj(new Event(event, { bubbles, cancelable: true }), args)\n\n if (defaultPrevented) {\n evt.preventDefault()\n }\n\n if (nativeDispatch) {\n element.dispatchEvent(evt)\n }\n\n if (evt.defaultPrevented && jQueryEvent) {\n jQueryEvent.preventDefault()\n }\n\n return evt\n }\n}\n\nfunction hydrateObj(obj, meta = {}) {\n for (const [key, value] of Object.entries(meta)) {\n try {\n obj[key] = value\n } catch {\n Object.defineProperty(obj, key, {\n configurable: true,\n get() {\n return value\n }\n })\n }\n }\n\n return obj\n}\n\nexport default EventHandler\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(value) {\n if (value === 'true') {\n return true\n }\n\n if (value === 'false') {\n return false\n }\n\n if (value === Number(value).toString()) {\n return Number(value)\n }\n\n if (value === '' || value === 'null') {\n return null\n }\n\n if (typeof value !== 'string') {\n return value\n }\n\n try {\n return JSON.parse(decodeURIComponent(value))\n } catch {\n return value\n }\n}\n\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`)\n}\n\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value)\n },\n\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`)\n },\n\n getDataAttributes(element) {\n if (!element) {\n return {}\n }\n\n const attributes = {}\n const bsKeys = Object.keys(element.dataset).filter(key => key.startsWith('bs') && !key.startsWith('bsConfig'))\n\n for (const key of bsKeys) {\n let pureKey = key.replace(/^bs/, '')\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length)\n attributes[pureKey] = normalizeData(element.dataset[key])\n }\n\n return attributes\n },\n\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`))\n }\n}\n\nexport default Manipulator\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap util/config.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Manipulator from '../dom/manipulator.js'\nimport { isElement, toType } from './index.js'\n\n/**\n * Class definition\n */\n\nclass Config {\n // Getters\n static get Default() {\n return {}\n }\n\n static get DefaultType() {\n return {}\n }\n\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!')\n }\n\n _getConfig(config) {\n config = this._mergeConfigObj(config)\n config = this._configAfterMerge(config)\n this._typeCheckConfig(config)\n return config\n }\n\n _configAfterMerge(config) {\n return config\n }\n\n _mergeConfigObj(config, element) {\n const jsonConfig = isElement(element) ? Manipulator.getDataAttribute(element, 'config') : {} // try to parse\n\n return {\n ...this.constructor.Default,\n ...(typeof jsonConfig === 'object' ? jsonConfig : {}),\n ...(isElement(element) ? Manipulator.getDataAttributes(element) : {}),\n ...(typeof config === 'object' ? config : {})\n }\n }\n\n _typeCheckConfig(config, configTypes = this.constructor.DefaultType) {\n for (const [property, expectedTypes] of Object.entries(configTypes)) {\n const value = config[property]\n const valueType = isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${this.constructor.NAME.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n }\n }\n}\n\nexport default Config\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data.js'\nimport EventHandler from './dom/event-handler.js'\nimport Config from './util/config.js'\nimport { executeAfterTransition, getElement } from './util/index.js'\n\n/**\n * Constants\n */\n\nconst VERSION = '5.3.1'\n\n/**\n * Class definition\n */\n\nclass BaseComponent extends Config {\n constructor(element, config) {\n super()\n\n element = getElement(element)\n if (!element) {\n return\n }\n\n this._element = element\n this._config = this._getConfig(config)\n\n Data.set(this._element, this.constructor.DATA_KEY, this)\n }\n\n // Public\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY)\n EventHandler.off(this._element, this.constructor.EVENT_KEY)\n\n for (const propertyName of Object.getOwnPropertyNames(this)) {\n this[propertyName] = null\n }\n }\n\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated)\n }\n\n _getConfig(config) {\n config = this._mergeConfigObj(config, this._element)\n config = this._configAfterMerge(config)\n this._typeCheckConfig(config)\n return config\n }\n\n // Static\n static getInstance(element) {\n return Data.get(getElement(element), this.DATA_KEY)\n }\n\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null)\n }\n\n static get VERSION() {\n return VERSION\n }\n\n static get DATA_KEY() {\n return `bs.${this.NAME}`\n }\n\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`\n }\n\n static eventName(name) {\n return `${name}${this.EVENT_KEY}`\n }\n}\n\nexport default BaseComponent\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { isDisabled, isVisible, parseSelector } from '../util/index.js'\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target')\n\n if (!selector || selector === '#') {\n let hrefAttribute = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttribute || (!hrefAttribute.includes('#') && !hrefAttribute.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttribute.includes('#') && !hrefAttribute.startsWith('#')) {\n hrefAttribute = `#${hrefAttribute.split('#')[1]}`\n }\n\n selector = hrefAttribute && hrefAttribute !== '#' ? hrefAttribute.trim() : null\n }\n\n return parseSelector(selector)\n}\n\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector))\n },\n\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector)\n },\n\n children(element, selector) {\n return [].concat(...element.children).filter(child => child.matches(selector))\n },\n\n parents(element, selector) {\n const parents = []\n let ancestor = element.parentNode.closest(selector)\n\n while (ancestor) {\n parents.push(ancestor)\n ancestor = ancestor.parentNode.closest(selector)\n }\n\n return parents\n },\n\n prev(element, selector) {\n let previous = element.previousElementSibling\n\n while (previous) {\n if (previous.matches(selector)) {\n return [previous]\n }\n\n previous = previous.previousElementSibling\n }\n\n return []\n },\n // TODO: this is now unused; remove later along with prev()\n next(element, selector) {\n let next = element.nextElementSibling\n\n while (next) {\n if (next.matches(selector)) {\n return [next]\n }\n\n next = next.nextElementSibling\n }\n\n return []\n },\n\n focusableChildren(element) {\n const focusables = [\n 'a',\n 'button',\n 'input',\n 'textarea',\n 'select',\n 'details',\n '[tabindex]',\n '[contenteditable=\"true\"]'\n ].map(selector => `${selector}:not([tabindex^=\"-\"])`).join(',')\n\n return this.find(focusables, element).filter(el => !isDisabled(el) && isVisible(el))\n },\n\n getSelectorFromElement(element) {\n const selector = getSelector(element)\n\n if (selector) {\n return SelectorEngine.findOne(selector) ? selector : null\n }\n\n return null\n },\n\n getElementFromSelector(element) {\n const selector = getSelector(element)\n\n return selector ? SelectorEngine.findOne(selector) : null\n },\n\n getMultipleElementsFromSelector(element) {\n const selector = getSelector(element)\n\n return selector ? SelectorEngine.find(selector) : []\n }\n}\n\nexport default SelectorEngine\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap util/component-functions.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler.js'\nimport SelectorEngine from '../dom/selector-engine.js'\nimport { isDisabled } from './index.js'\n\nconst enableDismissTrigger = (component, method = 'hide') => {\n const clickEvent = `click.dismiss${component.EVENT_KEY}`\n const name = component.NAME\n\n EventHandler.on(document, clickEvent, `[data-bs-dismiss=\"${name}\"]`, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const target = SelectorEngine.getElementFromSelector(this) || this.closest(`.${name}`)\n const instance = component.getOrCreateInstance(target)\n\n // Method argument is left, for Alert and only, as it doesn't implement the 'hide' method\n instance[method]()\n })\n}\n\nexport {\n enableDismissTrigger\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport EventHandler from './dom/event-handler.js'\nimport { enableDismissTrigger } from './util/component-functions.js'\nimport { defineJQueryPlugin } from './util/index.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'alert'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_CLOSE = `close${EVENT_KEY}`\nconst EVENT_CLOSED = `closed${EVENT_KEY}`\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\n/**\n * Class definition\n */\n\nclass Alert extends BaseComponent {\n // Getters\n static get NAME() {\n return NAME\n }\n\n // Public\n close() {\n const closeEvent = EventHandler.trigger(this._element, EVENT_CLOSE)\n\n if (closeEvent.defaultPrevented) {\n return\n }\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n const isAnimated = this._element.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(() => this._destroyElement(), this._element, isAnimated)\n }\n\n // Private\n _destroyElement() {\n this._element.remove()\n EventHandler.trigger(this._element, EVENT_CLOSED)\n this.dispose()\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * Data API implementation\n */\n\nenableDismissTrigger(Alert, 'close')\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Alert)\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport EventHandler from './dom/event-handler.js'\nimport { defineJQueryPlugin } from './util/index.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'button'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst CLASS_NAME_ACTIVE = 'active'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"button\"]'\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\n/**\n * Class definition\n */\n\nclass Button extends BaseComponent {\n // Getters\n static get NAME() {\n return NAME\n }\n\n // Public\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this)\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n\n const button = event.target.closest(SELECTOR_DATA_TOGGLE)\n const data = Button.getOrCreateInstance(button)\n\n data.toggle()\n})\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Button)\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap util/swipe.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler.js'\nimport Config from './config.js'\nimport { execute } from './index.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'swipe'\nconst EVENT_KEY = '.bs.swipe'\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY}`\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY}`\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY}`\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY}`\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY}`\nconst POINTER_TYPE_TOUCH = 'touch'\nconst POINTER_TYPE_PEN = 'pen'\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event'\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n endCallback: null,\n leftCallback: null,\n rightCallback: null\n}\n\nconst DefaultType = {\n endCallback: '(function|null)',\n leftCallback: '(function|null)',\n rightCallback: '(function|null)'\n}\n\n/**\n * Class definition\n */\n\nclass Swipe extends Config {\n constructor(element, config) {\n super()\n this._element = element\n\n if (!element || !Swipe.isSupported()) {\n return\n }\n\n this._config = this._getConfig(config)\n this._deltaX = 0\n this._supportPointerEvents = Boolean(window.PointerEvent)\n this._initEvents()\n }\n\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n dispose() {\n EventHandler.off(this._element, EVENT_KEY)\n }\n\n // Private\n _start(event) {\n if (!this._supportPointerEvents) {\n this._deltaX = event.touches[0].clientX\n\n return\n }\n\n if (this._eventIsPointerPenTouch(event)) {\n this._deltaX = event.clientX\n }\n }\n\n _end(event) {\n if (this._eventIsPointerPenTouch(event)) {\n this._deltaX = event.clientX - this._deltaX\n }\n\n this._handleSwipe()\n execute(this._config.endCallback)\n }\n\n _move(event) {\n this._deltaX = event.touches && event.touches.length > 1 ?\n 0 :\n event.touches[0].clientX - this._deltaX\n }\n\n _handleSwipe() {\n const absDeltaX = Math.abs(this._deltaX)\n\n if (absDeltaX <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltaX / this._deltaX\n\n this._deltaX = 0\n\n if (!direction) {\n return\n }\n\n execute(direction > 0 ? this._config.rightCallback : this._config.leftCallback)\n }\n\n _initEvents() {\n if (this._supportPointerEvents) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => this._start(event))\n EventHandler.on(this._element, EVENT_POINTERUP, event => this._end(event))\n\n this._element.classList.add(CLASS_NAME_POINTER_EVENT)\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => this._start(event))\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => this._move(event))\n EventHandler.on(this._element, EVENT_TOUCHEND, event => this._end(event))\n }\n }\n\n _eventIsPointerPenTouch(event) {\n return this._supportPointerEvents && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)\n }\n\n // Static\n static isSupported() {\n return 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n }\n}\n\nexport default Swipe\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport EventHandler from './dom/event-handler.js'\nimport Manipulator from './dom/manipulator.js'\nimport SelectorEngine from './dom/selector-engine.js'\nimport {\n defineJQueryPlugin,\n getNextActiveElement,\n isRTL,\n isVisible,\n reflow,\n triggerTransitionEnd\n} from './util/index.js'\nimport Swipe from './util/swipe.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'carousel'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\n\nconst ORDER_NEXT = 'next'\nconst ORDER_PREV = 'prev'\nconst DIRECTION_LEFT = 'left'\nconst DIRECTION_RIGHT = 'right'\n\nconst EVENT_SLIDE = `slide${EVENT_KEY}`\nconst EVENT_SLID = `slid${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_MOUSEENTER = `mouseenter${EVENT_KEY}`\nconst EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY}`\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_CAROUSEL = 'carousel'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SLIDE = 'slide'\nconst CLASS_NAME_END = 'carousel-item-end'\nconst CLASS_NAME_START = 'carousel-item-start'\nconst CLASS_NAME_NEXT = 'carousel-item-next'\nconst CLASS_NAME_PREV = 'carousel-item-prev'\n\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ITEM = '.carousel-item'\nconst SELECTOR_ACTIVE_ITEM = SELECTOR_ACTIVE + SELECTOR_ITEM\nconst SELECTOR_ITEM_IMG = '.carousel-item img'\nconst SELECTOR_INDICATORS = '.carousel-indicators'\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]'\n\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY]: DIRECTION_LEFT\n}\n\nconst Default = {\n interval: 5000,\n keyboard: true,\n pause: 'hover',\n ride: false,\n touch: true,\n wrap: true\n}\n\nconst DefaultType = {\n interval: '(number|boolean)', // TODO:v6 remove boolean support\n keyboard: 'boolean',\n pause: '(string|boolean)',\n ride: '(boolean|string)',\n touch: 'boolean',\n wrap: 'boolean'\n}\n\n/**\n * Class definition\n */\n\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element, config)\n\n this._interval = null\n this._activeElement = null\n this._isSliding = false\n this.touchTimeout = null\n this._swipeHelper = null\n\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element)\n this._addEventListeners()\n\n if (this._config.ride === CLASS_NAME_CAROUSEL) {\n this.cycle()\n }\n }\n\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n next() {\n this._slide(ORDER_NEXT)\n }\n\n nextWhenVisible() {\n // FIXME TODO use `document.visibilityState`\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next()\n }\n }\n\n prev() {\n this._slide(ORDER_PREV)\n }\n\n pause() {\n if (this._isSliding) {\n triggerTransitionEnd(this._element)\n }\n\n this._clearInterval()\n }\n\n cycle() {\n this._clearInterval()\n this._updateInterval()\n\n this._interval = setInterval(() => this.nextWhenVisible(), this._config.interval)\n }\n\n _maybeEnableCycle() {\n if (!this._config.ride) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.cycle())\n return\n }\n\n this.cycle()\n }\n\n to(index) {\n const items = this._getItems()\n if (index > items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index))\n return\n }\n\n const activeIndex = this._getItemIndex(this._getActive())\n if (activeIndex === index) {\n return\n }\n\n const order = index > activeIndex ? ORDER_NEXT : ORDER_PREV\n\n this._slide(order, items[index])\n }\n\n dispose() {\n if (this._swipeHelper) {\n this._swipeHelper.dispose()\n }\n\n super.dispose()\n }\n\n // Private\n _configAfterMerge(config) {\n config.defaultInterval = config.interval\n return config\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER, () => this.pause())\n EventHandler.on(this._element, EVENT_MOUSELEAVE, () => this._maybeEnableCycle())\n }\n\n if (this._config.touch && Swipe.isSupported()) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n for (const img of SelectorEngine.find(SELECTOR_ITEM_IMG, this._element)) {\n EventHandler.on(img, EVENT_DRAG_START, event => event.preventDefault())\n }\n\n const endCallBack = () => {\n if (this._config.pause !== 'hover') {\n return\n }\n\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n\n this.touchTimeout = setTimeout(() => this._maybeEnableCycle(), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n\n const swipeConfig = {\n leftCallback: () => this._slide(this._directionToOrder(DIRECTION_LEFT)),\n rightCallback: () => this._slide(this._directionToOrder(DIRECTION_RIGHT)),\n endCallback: endCallBack\n }\n\n this._swipeHelper = new Swipe(this._element, swipeConfig)\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n const direction = KEY_TO_DIRECTION[event.key]\n if (direction) {\n event.preventDefault()\n this._slide(this._directionToOrder(direction))\n }\n }\n\n _getItemIndex(element) {\n return this._getItems().indexOf(element)\n }\n\n _setActiveIndicatorElement(index) {\n if (!this._indicatorsElement) {\n return\n }\n\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement)\n\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE)\n activeIndicator.removeAttribute('aria-current')\n\n const newActiveIndicator = SelectorEngine.findOne(`[data-bs-slide-to=\"${index}\"]`, this._indicatorsElement)\n\n if (newActiveIndicator) {\n newActiveIndicator.classList.add(CLASS_NAME_ACTIVE)\n newActiveIndicator.setAttribute('aria-current', 'true')\n }\n }\n\n _updateInterval() {\n const element = this._activeElement || this._getActive()\n\n if (!element) {\n return\n }\n\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10)\n\n this._config.interval = elementInterval || this._config.defaultInterval\n }\n\n _slide(order, element = null) {\n if (this._isSliding) {\n return\n }\n\n const activeElement = this._getActive()\n const isNext = order === ORDER_NEXT\n const nextElement = element || getNextActiveElement(this._getItems(), activeElement, isNext, this._config.wrap)\n\n if (nextElement === activeElement) {\n return\n }\n\n const nextElementIndex = this._getItemIndex(nextElement)\n\n const triggerEvent = eventName => {\n return EventHandler.trigger(this._element, eventName, {\n relatedTarget: nextElement,\n direction: this._orderToDirection(order),\n from: this._getItemIndex(activeElement),\n to: nextElementIndex\n })\n }\n\n const slideEvent = triggerEvent(EVENT_SLIDE)\n\n if (slideEvent.defaultPrevented) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n // TODO: change tests that use empty divs to avoid this check\n return\n }\n\n const isCycling = Boolean(this._interval)\n this.pause()\n\n this._isSliding = true\n\n this._setActiveIndicatorElement(nextElementIndex)\n this._activeElement = nextElement\n\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV\n\n nextElement.classList.add(orderClassName)\n\n reflow(nextElement)\n\n activeElement.classList.add(directionalClassName)\n nextElement.classList.add(directionalClassName)\n\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)\n\n this._isSliding = false\n\n triggerEvent(EVENT_SLID)\n }\n\n this._queueCallback(completeCallBack, activeElement, this._isAnimated())\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_SLIDE)\n }\n\n _getActive() {\n return SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n }\n\n _getItems() {\n return SelectorEngine.find(SELECTOR_ITEM, this._element)\n }\n\n _clearInterval() {\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n }\n\n _directionToOrder(direction) {\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT\n }\n\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV\n }\n\n _orderToDirection(order) {\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT\n }\n\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Carousel.getOrCreateInstance(this, config)\n\n if (typeof config === 'number') {\n data.to(config)\n return\n }\n\n if (typeof config === 'string') {\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, function (event) {\n const target = SelectorEngine.getElementFromSelector(this)\n\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return\n }\n\n event.preventDefault()\n\n const carousel = Carousel.getOrCreateInstance(target)\n const slideIndex = this.getAttribute('data-bs-slide-to')\n\n if (slideIndex) {\n carousel.to(slideIndex)\n carousel._maybeEnableCycle()\n return\n }\n\n if (Manipulator.getDataAttribute(this, 'slide') === 'next') {\n carousel.next()\n carousel._maybeEnableCycle()\n return\n }\n\n carousel.prev()\n carousel._maybeEnableCycle()\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE)\n\n for (const carousel of carousels) {\n Carousel.getOrCreateInstance(carousel)\n }\n})\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Carousel)\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport EventHandler from './dom/event-handler.js'\nimport SelectorEngine from './dom/selector-engine.js'\nimport {\n defineJQueryPlugin,\n getElement,\n reflow\n} from './util/index.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'collapse'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_COLLAPSE = 'collapse'\nconst CLASS_NAME_COLLAPSING = 'collapsing'\nconst CLASS_NAME_COLLAPSED = 'collapsed'\nconst CLASS_NAME_DEEPER_CHILDREN = `:scope .${CLASS_NAME_COLLAPSE} .${CLASS_NAME_COLLAPSE}`\nconst CLASS_NAME_HORIZONTAL = 'collapse-horizontal'\n\nconst WIDTH = 'width'\nconst HEIGHT = 'height'\n\nconst SELECTOR_ACTIVES = '.collapse.show, .collapse.collapsing'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"collapse\"]'\n\nconst Default = {\n parent: null,\n toggle: true\n}\n\nconst DefaultType = {\n parent: '(null|element)',\n toggle: 'boolean'\n}\n\n/**\n * Class definition\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element, config)\n\n this._isTransitioning = false\n this._triggerArray = []\n\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (const elem of toggleList) {\n const selector = SelectorEngine.getSelectorFromElement(elem)\n const filterElement = SelectorEngine.find(selector)\n .filter(foundElement => foundElement === this._element)\n\n if (selector !== null && filterElement.length) {\n this._triggerArray.push(elem)\n }\n }\n\n this._initializeChildren()\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._triggerArray, this._isShown())\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n toggle() {\n if (this._isShown()) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning || this._isShown()) {\n return\n }\n\n let activeChildren = []\n\n // find active children\n if (this._config.parent) {\n activeChildren = this._getFirstLevelChildren(SELECTOR_ACTIVES)\n .filter(element => element !== this._element)\n .map(element => Collapse.getOrCreateInstance(element, { toggle: false }))\n }\n\n if (activeChildren.length && activeChildren[0]._isTransitioning) {\n return\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n if (startEvent.defaultPrevented) {\n return\n }\n\n for (const activeInstance of activeChildren) {\n activeInstance.hide()\n }\n\n const dimension = this._getDimension()\n\n this._element.classList.remove(CLASS_NAME_COLLAPSE)\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n\n this._element.style[dimension] = 0\n\n this._addAriaAndCollapsedClass(this._triggerArray, true)\n this._isTransitioning = true\n\n const complete = () => {\n this._isTransitioning = false\n\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n this._element.style[dimension] = ''\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n\n this._queueCallback(complete, this._element, true)\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning || !this._isShown()) {\n return\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n if (startEvent.defaultPrevented) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n reflow(this._element)\n\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n for (const trigger of this._triggerArray) {\n const element = SelectorEngine.getElementFromSelector(trigger)\n\n if (element && !this._isShown(element)) {\n this._addAriaAndCollapsedClass([trigger], false)\n }\n }\n\n this._isTransitioning = true\n\n const complete = () => {\n this._isTransitioning = false\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.style[dimension] = ''\n\n this._queueCallback(complete, this._element, true)\n }\n\n _isShown(element = this._element) {\n return element.classList.contains(CLASS_NAME_SHOW)\n }\n\n // Private\n _configAfterMerge(config) {\n config.toggle = Boolean(config.toggle) // Coerce string values\n config.parent = getElement(config.parent)\n return config\n }\n\n _getDimension() {\n return this._element.classList.contains(CLASS_NAME_HORIZONTAL) ? WIDTH : HEIGHT\n }\n\n _initializeChildren() {\n if (!this._config.parent) {\n return\n }\n\n const children = this._getFirstLevelChildren(SELECTOR_DATA_TOGGLE)\n\n for (const element of children) {\n const selected = SelectorEngine.getElementFromSelector(element)\n\n if (selected) {\n this._addAriaAndCollapsedClass([element], this._isShown(selected))\n }\n }\n }\n\n _getFirstLevelChildren(selector) {\n const children = SelectorEngine.find(CLASS_NAME_DEEPER_CHILDREN, this._config.parent)\n // remove children if greater depth\n return SelectorEngine.find(selector, this._config.parent).filter(element => !children.includes(element))\n }\n\n _addAriaAndCollapsedClass(triggerArray, isOpen) {\n if (!triggerArray.length) {\n return\n }\n\n for (const element of triggerArray) {\n element.classList.toggle(CLASS_NAME_COLLAPSED, !isOpen)\n element.setAttribute('aria-expanded', isOpen)\n }\n }\n\n // Static\n static jQueryInterface(config) {\n const _config = {}\n if (typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n return this.each(function () {\n const data = Collapse.getOrCreateInstance(this, _config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n // preventDefault only for elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || (event.delegateTarget && event.delegateTarget.tagName === 'A')) {\n event.preventDefault()\n }\n\n for (const element of SelectorEngine.getMultipleElementsFromSelector(this)) {\n Collapse.getOrCreateInstance(element, { toggle: false }).toggle()\n }\n})\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Collapse)\n\nexport default Collapse\n","export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];","export default function getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}","export default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","import getWindow from \"./getWindow.js\";\n\nfunction isElement(node) {\n var OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n var OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n\n var OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };","import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n};","import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","export var max = Math.max;\nexport var min = Math.min;\nexport var round = Math.round;","export default function getUAString() {\n var uaData = navigator.userAgentData;\n\n if (uaData != null && uaData.brands && Array.isArray(uaData.brands)) {\n return uaData.brands.map(function (item) {\n return item.brand + \"/\" + item.version;\n }).join(' ');\n }\n\n return navigator.userAgent;\n}","import getUAString from \"../utils/userAgent.js\";\nexport default function isLayoutViewport() {\n return !/^((?!chrome|android).)*safari/i.test(getUAString());\n}","import { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport { round } from \"../utils/math.js\";\nimport getWindow from \"./getWindow.js\";\nimport isLayoutViewport from \"./isLayoutViewport.js\";\nexport default function getBoundingClientRect(element, includeScale, isFixedStrategy) {\n if (includeScale === void 0) {\n includeScale = false;\n }\n\n if (isFixedStrategy === void 0) {\n isFixedStrategy = false;\n }\n\n var clientRect = element.getBoundingClientRect();\n var scaleX = 1;\n var scaleY = 1;\n\n if (includeScale && isHTMLElement(element)) {\n scaleX = element.offsetWidth > 0 ? round(clientRect.width) / element.offsetWidth || 1 : 1;\n scaleY = element.offsetHeight > 0 ? round(clientRect.height) / element.offsetHeight || 1 : 1;\n }\n\n var _ref = isElement(element) ? getWindow(element) : window,\n visualViewport = _ref.visualViewport;\n\n var addVisualOffsets = !isLayoutViewport() && isFixedStrategy;\n var x = (clientRect.left + (addVisualOffsets && visualViewport ? visualViewport.offsetLeft : 0)) / scaleX;\n var y = (clientRect.top + (addVisualOffsets && visualViewport ? visualViewport.offsetTop : 0)) / scaleY;\n var width = clientRect.width / scaleX;\n var height = clientRect.height / scaleY;\n return {\n width: width,\n height: height,\n top: y,\n right: x + width,\n bottom: y + height,\n left: x,\n x: x,\n y: y\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\"; // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nexport default function getLayoutRect(element) {\n var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: width,\n height: height\n };\n}","import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n var next = child;\n\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n\n return false;\n}","import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}","import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}","import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}","import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport { isShadowRoot } from \"./instanceOf.js\";\nexport default function getParentNode(element) {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || ( // DOM Element detected\n isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n\n );\n}","import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement, isShadowRoot } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getUAString from \"../utils/userAgent.js\";\n\nfunction getTrueOffsetParent(element) {\n if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed') {\n return null;\n }\n\n return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n var isFirefox = /firefox/i.test(getUAString());\n var isIE = /Trident/i.test(getUAString());\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n var elementCss = getComputedStyle(element);\n\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n var currentNode = getParentNode(element);\n\n if (isShadowRoot(currentNode)) {\n currentNode = currentNode.host;\n }\n\n while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n var window = getWindow(element);\n var offsetParent = getTrueOffsetParent(element);\n\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}","export default function getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}","import { max as mathMax, min as mathMin } from \"./math.js\";\nexport function within(min, value, max) {\n return mathMax(min, mathMin(value, max));\n}\nexport function withinMaxClamp(min, value, max) {\n var v = within(min, value, max);\n return v > max ? max : v;\n}","import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n return Object.assign({}, getFreshSideObject(), paddingObject);\n}","export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","export default function expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport { within } from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n placement: state.placement\n })) : padding;\n return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n var _state$modifiersData$;\n\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = getBasePlacement(state.placement);\n var axis = getMainAxisFromPlacement(basePlacement);\n var isVertical = [left, right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n var paddingObject = toPaddingObject(options.padding, state);\n var arrowRect = getLayoutRect(arrowElement);\n var minProp = axis === 'y' ? top : left;\n var maxProp = axis === 'y' ? bottom : right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = getOffsetParent(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n return;\n }\n\n state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n};","export default function getVariation(placement) {\n return placement.split('-')[1];\n}","import { top, left, right, bottom, end } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport { round } from \"../utils/math.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref, win) {\n var x = _ref.x,\n y = _ref.y;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: round(x * dpr) / dpr || 0,\n y: round(y * dpr) / dpr || 0\n };\n}\n\nexport function mapToStyles(_ref2) {\n var _Object$assign2;\n\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n variation = _ref2.variation,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets,\n isFixed = _ref2.isFixed;\n var _offsets$x = offsets.x,\n x = _offsets$x === void 0 ? 0 : _offsets$x,\n _offsets$y = offsets.y,\n y = _offsets$y === void 0 ? 0 : _offsets$y;\n\n var _ref3 = typeof roundOffsets === 'function' ? roundOffsets({\n x: x,\n y: y\n }) : {\n x: x,\n y: y\n };\n\n x = _ref3.x;\n y = _ref3.y;\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = left;\n var sideY = top;\n var win = window;\n\n if (adaptive) {\n var offsetParent = getOffsetParent(popper);\n var heightProp = 'clientHeight';\n var widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (getComputedStyle(offsetParent).position !== 'static' && position === 'absolute') {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n offsetParent = offsetParent;\n\n if (placement === top || (placement === left || placement === right) && variation === end) {\n sideY = bottom;\n var offsetY = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.height : // $FlowFixMe[prop-missing]\n offsetParent[heightProp];\n y -= offsetY - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (placement === left || (placement === top || placement === bottom) && variation === end) {\n sideX = right;\n var offsetX = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.width : // $FlowFixMe[prop-missing]\n offsetParent[widthProp];\n x -= offsetX - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n\n var _ref4 = roundOffsets === true ? roundOffsetsByDPR({\n x: x,\n y: y\n }, getWindow(popper)) : {\n x: x,\n y: y\n };\n\n x = _ref4.x;\n y = _ref4.y;\n\n if (gpuAcceleration) {\n var _Object$assign;\n\n return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) <= 1 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n\n return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref5) {\n var state = _ref5.state,\n options = _ref5.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n var commonStyles = {\n placement: getBasePlacement(state.placement),\n variation: getVariation(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration,\n isFixed: state.options.strategy === 'fixed'\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n};","import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\n\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = getWindow(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n};","var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","var hash = {\n start: 'end',\n end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}","import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n var win = getWindow(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n // If has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on \n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}","import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = getComputedStyle(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}","import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}","import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n var _element$ownerDocumen;\n\n if (list === void 0) {\n list = [];\n }\n\n var scrollParent = getScrollParent(element);\n var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n var win = getWindow(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}","export default function rectToClientRect(rect) {\n return Object.assign({}, rect, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}","import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\nimport { max, min } from \"../utils/math.js\";\n\nfunction getInnerBoundingClientRect(element, strategy) {\n var rect = getBoundingClientRect(element, false, strategy === 'fixed');\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent, strategy) {\n return clippingParent === viewport ? rectToClientRect(getViewportRect(element, strategy)) : isElement(clippingParent) ? getInnerBoundingClientRect(clippingParent, strategy) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n var clippingParents = listScrollParents(getParentNode(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n if (!isElement(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n return clippingParents.filter(function (clippingParent) {\n return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary, strategy) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent, strategy);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent, strategy));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}","import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport isLayoutViewport from \"./isLayoutViewport.js\";\nexport default function getViewportRect(element, strategy) {\n var win = getWindow(element);\n var html = getDocumentElement(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0;\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n var layoutViewport = isLayoutViewport();\n\n if (layoutViewport || !layoutViewport && strategy === 'fixed') {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width: width,\n height: height,\n x: x + getWindowScrollBarX(element),\n y: y\n };\n}","import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nimport { max } from \"../utils/math.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `` and `` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n var _element$ownerDocumen;\n\n var html = getDocumentElement(element);\n var winScroll = getWindowScroll(element);\n var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n var y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}","import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? getBasePlacement(placement) : null;\n var variation = placement ? getVariation(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n\n var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n\n case end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n\n default:\n }\n }\n\n return offsets;\n}","import getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$strategy = _options.strategy,\n strategy = _options$strategy === void 0 ? state.strategy : _options$strategy,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n var altContext = elementContext === popper ? reference : popper;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary, strategy);\n var referenceClientRect = getBoundingClientRect(state.elements.reference);\n var popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}","import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\nexport default function computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n var variation = getVariation(placement);\n var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n return getVariation(placement) === variation;\n }) : basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[getBasePlacement(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}","import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n var oppositePlacement = getOppositePlacement(placement);\n return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = getBasePlacement(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n\n var _basePlacement = getBasePlacement(placement);\n\n var isStartVariation = getVariation(placement) === start;\n var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n var altVariationSide = getOppositePlacement(mainVariationSide);\n var checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n\n if (_ret === \"break\") break;\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n};","import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n return [top, right, bottom, left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\n\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = detectOverflow(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = detectOverflow(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n};","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = getBasePlacement(placement);\n var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [left, right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\n\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n};","import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n};","import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport { within, withinMaxClamp } from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\nimport { min as mathMin, max as mathMax } from \"../utils/math.js\";\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = detectOverflow(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = getBasePlacement(state.placement);\n var variation = getVariation(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = getMainAxisFromPlacement(basePlacement);\n var altAxis = getAltAxis(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n placement: state.placement\n })) : tetherOffset;\n var normalizedTetherOffsetValue = typeof tetherOffsetValue === 'number' ? {\n mainAxis: tetherOffsetValue,\n altAxis: tetherOffsetValue\n } : Object.assign({\n mainAxis: 0,\n altAxis: 0\n }, tetherOffsetValue);\n var offsetModifierState = state.modifiersData.offset ? state.modifiersData.offset[state.placement] : null;\n var data = {\n x: 0,\n y: 0\n };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis) {\n var _offsetModifierState$;\n\n var mainSide = mainAxis === 'y' ? top : left;\n var altSide = mainAxis === 'y' ? bottom : right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = offset + overflow[mainSide];\n var max = offset - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis : minLen - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis : maxLen + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis;\n var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = (_offsetModifierState$ = offsetModifierState == null ? void 0 : offsetModifierState[mainAxis]) != null ? _offsetModifierState$ : 0;\n var tetherMin = offset + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = offset + maxOffset - offsetModifierValue;\n var preventedOffset = within(tether ? mathMin(min, tetherMin) : min, offset, tether ? mathMax(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n var _offsetModifierState$2;\n\n var _mainSide = mainAxis === 'x' ? top : left;\n\n var _altSide = mainAxis === 'x' ? bottom : right;\n\n var _offset = popperOffsets[altAxis];\n\n var _len = altAxis === 'y' ? 'height' : 'width';\n\n var _min = _offset + overflow[_mainSide];\n\n var _max = _offset - overflow[_altSide];\n\n var isOriginSide = [top, left].indexOf(basePlacement) !== -1;\n\n var _offsetModifierValue = (_offsetModifierState$2 = offsetModifierState == null ? void 0 : offsetModifierState[altAxis]) != null ? _offsetModifierState$2 : 0;\n\n var _tetherMin = isOriginSide ? _min : _offset - referenceRect[_len] - popperRect[_len] - _offsetModifierValue + normalizedTetherOffsetValue.altAxis;\n\n var _tetherMax = isOriginSide ? _offset + referenceRect[_len] + popperRect[_len] - _offsetModifierValue - normalizedTetherOffsetValue.altAxis : _max;\n\n var _preventedOffset = tether && isOriginSide ? withinMaxClamp(_tetherMin, _offset, _tetherMax) : within(tether ? _tetherMin : _min, _offset, tether ? _tetherMax : _max);\n\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n};","export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport { round } from \"../utils/math.js\";\n\nfunction isElementScaled(element) {\n var rect = element.getBoundingClientRect();\n var scaleX = round(rect.width) / element.offsetWidth || 1;\n var scaleY = round(rect.height) / element.offsetHeight || 1;\n return scaleX !== 1 || scaleY !== 1;\n} // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n\n var isOffsetParentAnElement = isHTMLElement(offsetParent);\n var offsetParentIsScaled = isHTMLElement(offsetParent) && isElementScaled(offsetParent);\n var documentElement = getDocumentElement(offsetParent);\n var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled, isFixed);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent, true);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}","import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}","export default function getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}","import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\n\nexport default function orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}","import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\n\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\n\nexport function popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(setOptionsAction) {\n var options = typeof setOptionsAction === 'function' ? setOptionsAction(state.options) : setOptionsAction;\n cleanupModifierEffects();\n state.options = Object.assign({}, defaultOptions, state.options, options);\n state.scrollParents = {\n reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n popper: listScrollParents(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n });\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n\n state.rects = {\n reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n popper: getLayoutRect(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n\n if (!areValidElements(reference, popper)) {\n return instance;\n }\n\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref) {\n var name = _ref.name,\n _ref$options = _ref.options,\n options = _ref$options === void 0 ? {} : _ref$options,\n effect = _ref.effect;\n\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n\n var noopFn = function noopFn() {};\n\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };","export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","export default function mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign({}, existing, current, {\n options: Object.assign({}, existing.options, current.options),\n data: Object.assign({}, existing.data, current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";","/**\n * --------------------------------------------------------------------------\n * Bootstrap dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\nimport BaseComponent from './base-component.js'\nimport EventHandler from './dom/event-handler.js'\nimport Manipulator from './dom/manipulator.js'\nimport SelectorEngine from './dom/selector-engine.js'\nimport {\n defineJQueryPlugin,\n execute,\n getElement,\n getNextActiveElement,\n isDisabled,\n isElement,\n isRTL,\n isVisible,\n noop\n} from './util/index.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'dropdown'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ESCAPE_KEY = 'Escape'\nconst TAB_KEY = 'Tab'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst RIGHT_MOUSE_BUTTON = 2 // MouseEvent.button value for the secondary button, usually the right button\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_DROPUP = 'dropup'\nconst CLASS_NAME_DROPEND = 'dropend'\nconst CLASS_NAME_DROPSTART = 'dropstart'\nconst CLASS_NAME_DROPUP_CENTER = 'dropup-center'\nconst CLASS_NAME_DROPDOWN_CENTER = 'dropdown-center'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"dropdown\"]:not(.disabled):not(:disabled)'\nconst SELECTOR_DATA_TOGGLE_SHOWN = `${SELECTOR_DATA_TOGGLE}.${CLASS_NAME_SHOW}`\nconst SELECTOR_MENU = '.dropdown-menu'\nconst SELECTOR_NAVBAR = '.navbar'\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav'\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'\nconst PLACEMENT_TOPCENTER = 'top'\nconst PLACEMENT_BOTTOMCENTER = 'bottom'\n\nconst Default = {\n autoClose: true,\n boundary: 'clippingParents',\n display: 'dynamic',\n offset: [0, 2],\n popperConfig: null,\n reference: 'toggle'\n}\n\nconst DefaultType = {\n autoClose: '(boolean|string)',\n boundary: '(string|element)',\n display: 'string',\n offset: '(array|string|function)',\n popperConfig: '(null|object|function)',\n reference: '(string|element|object)'\n}\n\n/**\n * Class definition\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element, config)\n\n this._popper = null\n this._parent = this._element.parentNode // dropdown wrapper\n // TODO: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/\n this._menu = SelectorEngine.next(this._element, SELECTOR_MENU)[0] ||\n SelectorEngine.prev(this._element, SELECTOR_MENU)[0] ||\n SelectorEngine.findOne(SELECTOR_MENU, this._parent)\n this._inNavbar = this._detectNavbar()\n }\n\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n toggle() {\n return this._isShown() ? this.hide() : this.show()\n }\n\n show() {\n if (isDisabled(this._element) || this._isShown()) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, relatedTarget)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._createPopper()\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement && !this._parent.closest(SELECTOR_NAVBAR_NAV)) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.on(element, 'mouseover', noop)\n }\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n this._menu.classList.add(CLASS_NAME_SHOW)\n this._element.classList.add(CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_SHOWN, relatedTarget)\n }\n\n hide() {\n if (isDisabled(this._element) || !this._isShown()) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n this._completeHide(relatedTarget)\n }\n\n dispose() {\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Private\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE, relatedTarget)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.off(element, 'mouseover', noop)\n }\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n this._menu.classList.remove(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._element.setAttribute('aria-expanded', 'false')\n Manipulator.removeDataAttribute(this._menu, 'popper')\n EventHandler.trigger(this._element, EVENT_HIDDEN, relatedTarget)\n }\n\n _getConfig(config) {\n config = super._getConfig(config)\n\n if (typeof config.reference === 'object' && !isElement(config.reference) &&\n typeof config.reference.getBoundingClientRect !== 'function'\n ) {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`)\n }\n\n return config\n }\n\n _createPopper() {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = this._parent\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference)\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference\n }\n\n const popperConfig = this._getPopperConfig()\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig)\n }\n\n _isShown() {\n return this._menu.classList.contains(CLASS_NAME_SHOW)\n }\n\n _getPlacement() {\n const parentDropdown = this._parent\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP_CENTER)) {\n return PLACEMENT_TOPCENTER\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPDOWN_CENTER)) {\n return PLACEMENT_BOTTOMCENTER\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP\n }\n\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM\n }\n\n _detectNavbar() {\n return this._element.closest(SELECTOR_NAVBAR) !== null\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(value => Number.parseInt(value, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n }\n\n // Disable Popper if we have a static display or Dropdown is in Navbar\n if (this._inNavbar || this._config.display === 'static') {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static') // TODO: v6 remove\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...execute(this._config.popperConfig, [defaultBsPopperConfig])\n }\n }\n\n _selectMenuItem({ key, target }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(element => isVisible(element))\n\n if (!items.length) {\n return\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus()\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Dropdown.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n\n static clearMenus(event) {\n if (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY)) {\n return\n }\n\n const openToggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE_SHOWN)\n\n for (const toggle of openToggles) {\n const context = Dropdown.getInstance(toggle)\n if (!context || context._config.autoClose === false) {\n continue\n }\n\n const composedPath = event.composedPath()\n const isMenuTarget = composedPath.includes(context._menu)\n if (\n composedPath.includes(context._element) ||\n (context._config.autoClose === 'inside' && !isMenuTarget) ||\n (context._config.autoClose === 'outside' && isMenuTarget)\n ) {\n continue\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue\n }\n\n const relatedTarget = { relatedTarget: context._element }\n\n if (event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n\n context._completeHide(relatedTarget)\n }\n }\n\n static dataApiKeydownHandler(event) {\n // If not an UP | DOWN | ESCAPE key => not a dropdown command\n // If input/textarea && if key is other than ESCAPE => not a dropdown command\n\n const isInput = /input|textarea/i.test(event.target.tagName)\n const isEscapeEvent = event.key === ESCAPE_KEY\n const isUpOrDownEvent = [ARROW_UP_KEY, ARROW_DOWN_KEY].includes(event.key)\n\n if (!isUpOrDownEvent && !isEscapeEvent) {\n return\n }\n\n if (isInput && !isEscapeEvent) {\n return\n }\n\n event.preventDefault()\n\n // TODO: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/\n const getToggleButton = this.matches(SELECTOR_DATA_TOGGLE) ?\n this :\n (SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0] ||\n SelectorEngine.next(this, SELECTOR_DATA_TOGGLE)[0] ||\n SelectorEngine.findOne(SELECTOR_DATA_TOGGLE, event.delegateTarget.parentNode))\n\n const instance = Dropdown.getOrCreateInstance(getToggleButton)\n\n if (isUpOrDownEvent) {\n event.stopPropagation()\n instance.show()\n instance._selectMenuItem(event)\n return\n }\n\n if (instance._isShown()) { // else is escape and we check if it is shown\n event.stopPropagation()\n instance.hide()\n getToggleButton.focus()\n }\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_CLICK_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n event.preventDefault()\n Dropdown.getOrCreateInstance(this).toggle()\n})\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Dropdown)\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler.js'\nimport Config from './config.js'\nimport { execute, executeAfterTransition, getElement, reflow } from './index.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'backdrop'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`\n\nconst Default = {\n className: 'modal-backdrop',\n clickCallback: null,\n isAnimated: false,\n isVisible: true, // if false, we use the backdrop helper without adding any element to the dom\n rootElement: 'body' // give the choice to place backdrop under different elements\n}\n\nconst DefaultType = {\n className: 'string',\n clickCallback: '(function|null)',\n isAnimated: 'boolean',\n isVisible: 'boolean',\n rootElement: '(element|string)'\n}\n\n/**\n * Class definition\n */\n\nclass Backdrop extends Config {\n constructor(config) {\n super()\n this._config = this._getConfig(config)\n this._isAppended = false\n this._element = null\n }\n\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._append()\n\n const element = this._getElement()\n if (this._config.isAnimated) {\n reflow(element)\n }\n\n element.classList.add(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n execute(callback)\n })\n }\n\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._getElement().classList.remove(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n this.dispose()\n execute(callback)\n })\n }\n\n dispose() {\n if (!this._isAppended) {\n return\n }\n\n EventHandler.off(this._element, EVENT_MOUSEDOWN)\n\n this._element.remove()\n this._isAppended = false\n }\n\n // Private\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div')\n backdrop.className = this._config.className\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE)\n }\n\n this._element = backdrop\n }\n\n return this._element\n }\n\n _configAfterMerge(config) {\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement)\n return config\n }\n\n _append() {\n if (this._isAppended) {\n return\n }\n\n const element = this._getElement()\n this._config.rootElement.append(element)\n\n EventHandler.on(element, EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback)\n })\n\n this._isAppended = true\n }\n\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated)\n }\n}\n\nexport default Backdrop\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap util/focustrap.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler.js'\nimport SelectorEngine from '../dom/selector-engine.js'\nimport Config from './config.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'focustrap'\nconst DATA_KEY = 'bs.focustrap'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_KEYDOWN_TAB = `keydown.tab${EVENT_KEY}`\n\nconst TAB_KEY = 'Tab'\nconst TAB_NAV_FORWARD = 'forward'\nconst TAB_NAV_BACKWARD = 'backward'\n\nconst Default = {\n autofocus: true,\n trapElement: null // The element to trap focus inside of\n}\n\nconst DefaultType = {\n autofocus: 'boolean',\n trapElement: 'element'\n}\n\n/**\n * Class definition\n */\n\nclass FocusTrap extends Config {\n constructor(config) {\n super()\n this._config = this._getConfig(config)\n this._isActive = false\n this._lastTabNavDirection = null\n }\n\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n activate() {\n if (this._isActive) {\n return\n }\n\n if (this._config.autofocus) {\n this._config.trapElement.focus()\n }\n\n EventHandler.off(document, EVENT_KEY) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => this._handleFocusin(event))\n EventHandler.on(document, EVENT_KEYDOWN_TAB, event => this._handleKeydown(event))\n\n this._isActive = true\n }\n\n deactivate() {\n if (!this._isActive) {\n return\n }\n\n this._isActive = false\n EventHandler.off(document, EVENT_KEY)\n }\n\n // Private\n _handleFocusin(event) {\n const { trapElement } = this._config\n\n if (event.target === document || event.target === trapElement || trapElement.contains(event.target)) {\n return\n }\n\n const elements = SelectorEngine.focusableChildren(trapElement)\n\n if (elements.length === 0) {\n trapElement.focus()\n } else if (this._lastTabNavDirection === TAB_NAV_BACKWARD) {\n elements[elements.length - 1].focus()\n } else {\n elements[0].focus()\n }\n }\n\n _handleKeydown(event) {\n if (event.key !== TAB_KEY) {\n return\n }\n\n this._lastTabNavDirection = event.shiftKey ? TAB_NAV_BACKWARD : TAB_NAV_FORWARD\n }\n}\n\nexport default FocusTrap\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Manipulator from '../dom/manipulator.js'\nimport SelectorEngine from '../dom/selector-engine.js'\nimport { isElement } from './index.js'\n\n/**\n * Constants\n */\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\nconst PROPERTY_PADDING = 'padding-right'\nconst PROPERTY_MARGIN = 'margin-right'\n\n/**\n * Class definition\n */\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body\n }\n\n // Public\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth\n return Math.abs(window.innerWidth - documentWidth)\n }\n\n hide() {\n const width = this.getWidth()\n this._disableOverFlow()\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, PROPERTY_PADDING, calculatedValue => calculatedValue + width)\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING, calculatedValue => calculatedValue + width)\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN, calculatedValue => calculatedValue - width)\n }\n\n reset() {\n this._resetElementAttributes(this._element, 'overflow')\n this._resetElementAttributes(this._element, PROPERTY_PADDING)\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING)\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN)\n }\n\n isOverflowing() {\n return this.getWidth() > 0\n }\n\n // Private\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow')\n this._element.style.overflow = 'hidden'\n }\n\n _setElementAttributes(selector, styleProperty, callback) {\n const scrollbarWidth = this.getWidth()\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return\n }\n\n this._saveInitialAttribute(element, styleProperty)\n const calculatedValue = window.getComputedStyle(element).getPropertyValue(styleProperty)\n element.style.setProperty(styleProperty, `${callback(Number.parseFloat(calculatedValue))}px`)\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n _saveInitialAttribute(element, styleProperty) {\n const actualValue = element.style.getPropertyValue(styleProperty)\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProperty, actualValue)\n }\n }\n\n _resetElementAttributes(selector, styleProperty) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProperty)\n // We only want to remove the property if the value is `null`; the value can also be zero\n if (value === null) {\n element.style.removeProperty(styleProperty)\n return\n }\n\n Manipulator.removeDataAttribute(element, styleProperty)\n element.style.setProperty(styleProperty, value)\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector)\n return\n }\n\n for (const sel of SelectorEngine.find(selector, this._element)) {\n callBack(sel)\n }\n }\n}\n\nexport default ScrollBarHelper\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport EventHandler from './dom/event-handler.js'\nimport SelectorEngine from './dom/selector-engine.js'\nimport Backdrop from './util/backdrop.js'\nimport { enableDismissTrigger } from './util/component-functions.js'\nimport FocusTrap from './util/focustrap.js'\nimport { defineJQueryPlugin, isRTL, isVisible, reflow } from './util/index.js'\nimport ScrollBarHelper from './util/scrollbar.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'modal'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst ESCAPE_KEY = 'Escape'\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_OPEN = 'modal-open'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_STATIC = 'modal-static'\n\nconst OPEN_SELECTOR = '.modal.show'\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"modal\"]'\n\nconst Default = {\n backdrop: true,\n focus: true,\n keyboard: true\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n focus: 'boolean',\n keyboard: 'boolean'\n}\n\n/**\n * Class definition\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element, config)\n\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element)\n this._backdrop = this._initializeBackDrop()\n this._focustrap = this._initializeFocusTrap()\n this._isShown = false\n this._isTransitioning = false\n this._scrollBar = new ScrollBarHelper()\n\n this._addEventListeners()\n }\n\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget\n })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._isTransitioning = true\n\n this._scrollBar.hide()\n\n document.body.classList.add(CLASS_NAME_OPEN)\n\n this._adjustDialog()\n\n this._backdrop.show(() => this._showElement(relatedTarget))\n }\n\n hide() {\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._isShown = false\n this._isTransitioning = true\n this._focustrap.deactivate()\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n this._queueCallback(() => this._hideModal(), this._element, this._isAnimated())\n }\n\n dispose() {\n EventHandler.off(window, EVENT_KEY)\n EventHandler.off(this._dialog, EVENT_KEY)\n\n this._backdrop.dispose()\n this._focustrap.deactivate()\n\n super.dispose()\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop), // 'static' option will be translated to true, and booleans will keep their value,\n isAnimated: this._isAnimated()\n })\n }\n\n _initializeFocusTrap() {\n return new FocusTrap({\n trapElement: this._element\n })\n }\n\n _showElement(relatedTarget) {\n // try to append dynamic modal\n if (!document.body.contains(this._element)) {\n document.body.append(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.scrollTop = 0\n\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog)\n if (modalBody) {\n modalBody.scrollTop = 0\n }\n\n reflow(this._element)\n\n this._element.classList.add(CLASS_NAME_SHOW)\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._focustrap.activate()\n }\n\n this._isTransitioning = false\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget\n })\n }\n\n this._queueCallback(transitionComplete, this._dialog, this._isAnimated())\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (event.key !== ESCAPE_KEY) {\n return\n }\n\n if (this._config.keyboard) {\n this.hide()\n return\n }\n\n this._triggerBackdropTransition()\n })\n\n EventHandler.on(window, EVENT_RESIZE, () => {\n if (this._isShown && !this._isTransitioning) {\n this._adjustDialog()\n }\n })\n\n EventHandler.on(this._element, EVENT_MOUSEDOWN_DISMISS, event => {\n // a bad trick to segregate clicks that may start inside dialog but end outside, and avoid listen to scrollbar clicks\n EventHandler.one(this._element, EVENT_CLICK_DISMISS, event2 => {\n if (this._element !== event.target || this._element !== event2.target) {\n return\n }\n\n if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition()\n return\n }\n\n if (this._config.backdrop) {\n this.hide()\n }\n })\n })\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._isTransitioning = false\n\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN)\n this._resetAdjustments()\n this._scrollBar.reset()\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n })\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE)\n }\n\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n const initialOverflowY = this._element.style.overflowY\n // return if the following background transition hasn't yet completed\n if (initialOverflowY === 'hidden' || this._element.classList.contains(CLASS_NAME_STATIC)) {\n return\n }\n\n if (!isModalOverflowing) {\n this._element.style.overflowY = 'hidden'\n }\n\n this._element.classList.add(CLASS_NAME_STATIC)\n this._queueCallback(() => {\n this._element.classList.remove(CLASS_NAME_STATIC)\n this._queueCallback(() => {\n this._element.style.overflowY = initialOverflowY\n }, this._dialog)\n }, this._dialog)\n\n this._element.focus()\n }\n\n /**\n * The following methods are used to handle overflowing modals\n */\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n const scrollbarWidth = this._scrollBar.getWidth()\n const isBodyOverflowing = scrollbarWidth > 0\n\n if (isBodyOverflowing && !isModalOverflowing) {\n const property = isRTL() ? 'paddingLeft' : 'paddingRight'\n this._element.style[property] = `${scrollbarWidth}px`\n }\n\n if (!isBodyOverflowing && isModalOverflowing) {\n const property = isRTL() ? 'paddingRight' : 'paddingLeft'\n this._element.style[property] = `${scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n // Static\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](relatedTarget)\n })\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = SelectorEngine.getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n EventHandler.one(target, EVENT_SHOW, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n if (isVisible(this)) {\n this.focus()\n }\n })\n })\n\n // avoid conflict when clicking modal toggler while another one is open\n const alreadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (alreadyOpen) {\n Modal.getInstance(alreadyOpen).hide()\n }\n\n const data = Modal.getOrCreateInstance(target)\n\n data.toggle(this)\n})\n\nenableDismissTrigger(Modal)\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Modal)\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport EventHandler from './dom/event-handler.js'\nimport SelectorEngine from './dom/selector-engine.js'\nimport Backdrop from './util/backdrop.js'\nimport { enableDismissTrigger } from './util/component-functions.js'\nimport FocusTrap from './util/focustrap.js'\nimport {\n defineJQueryPlugin,\n isDisabled,\n isVisible\n} from './util/index.js'\nimport ScrollBarHelper from './util/scrollbar.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'offcanvas'\nconst DATA_KEY = 'bs.offcanvas'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst ESCAPE_KEY = 'Escape'\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\nconst CLASS_NAME_HIDING = 'hiding'\nconst CLASS_NAME_BACKDROP = 'offcanvas-backdrop'\nconst OPEN_SELECTOR = '.offcanvas.show'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"offcanvas\"]'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n scroll: false\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n scroll: 'boolean'\n}\n\n/**\n * Class definition\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element, config)\n\n this._isShown = false\n this._backdrop = this._initializeBackDrop()\n this._focustrap = this._initializeFocusTrap()\n this._addEventListeners()\n }\n\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, { relatedTarget })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._backdrop.show()\n\n if (!this._config.scroll) {\n new ScrollBarHelper().hide()\n }\n\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.classList.add(CLASS_NAME_SHOWING)\n\n const completeCallBack = () => {\n if (!this._config.scroll || this._config.backdrop) {\n this._focustrap.activate()\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOWING)\n EventHandler.trigger(this._element, EVENT_SHOWN, { relatedTarget })\n }\n\n this._queueCallback(completeCallBack, this._element, true)\n }\n\n hide() {\n if (!this._isShown) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._focustrap.deactivate()\n this._element.blur()\n this._isShown = false\n this._element.classList.add(CLASS_NAME_HIDING)\n this._backdrop.hide()\n\n const completeCallback = () => {\n this._element.classList.remove(CLASS_NAME_SHOW, CLASS_NAME_HIDING)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n\n if (!this._config.scroll) {\n new ScrollBarHelper().reset()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._queueCallback(completeCallback, this._element, true)\n }\n\n dispose() {\n this._backdrop.dispose()\n this._focustrap.deactivate()\n super.dispose()\n }\n\n // Private\n _initializeBackDrop() {\n const clickCallback = () => {\n if (this._config.backdrop === 'static') {\n EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n return\n }\n\n this.hide()\n }\n\n // 'static' option will be translated to true, and booleans will keep their value\n const isVisible = Boolean(this._config.backdrop)\n\n return new Backdrop({\n className: CLASS_NAME_BACKDROP,\n isVisible,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: isVisible ? clickCallback : null\n })\n }\n\n _initializeFocusTrap() {\n return new FocusTrap({\n trapElement: this._element\n })\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (event.key !== ESCAPE_KEY) {\n return\n }\n\n if (this._config.keyboard) {\n this.hide()\n return\n }\n\n EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n })\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = SelectorEngine.getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus()\n }\n })\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const alreadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (alreadyOpen && alreadyOpen !== target) {\n Offcanvas.getInstance(alreadyOpen).hide()\n }\n\n const data = Offcanvas.getOrCreateInstance(target)\n data.toggle(this)\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n for (const selector of SelectorEngine.find(OPEN_SELECTOR)) {\n Offcanvas.getOrCreateInstance(selector).show()\n }\n})\n\nEventHandler.on(window, EVENT_RESIZE, () => {\n for (const element of SelectorEngine.find('[aria-modal][class*=show][class*=offcanvas-]')) {\n if (getComputedStyle(element).position !== 'fixed') {\n Offcanvas.getOrCreateInstance(element).hide()\n }\n }\n})\n\nenableDismissTrigger(Offcanvas)\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Offcanvas)\n\nexport default Offcanvas\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n// js-docs-start allow-list\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n// js-docs-end allow-list\n\nconst uriAttributes = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\n/**\n * A pattern that recognizes URLs that are safe wrt. XSS in URL navigation\n * contexts.\n *\n * Shout-out to Angular https://github.com/angular/angular/blob/15.2.8/packages/core/src/sanitization/url_sanitizer.ts#L38\n */\n// eslint-disable-next-line unicorn/better-regex\nconst SAFE_URL_PATTERN = /^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i\n\nconst allowedAttribute = (attribute, allowedAttributeList) => {\n const attributeName = attribute.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attributeName)) {\n if (uriAttributes.has(attributeName)) {\n return Boolean(SAFE_URL_PATTERN.test(attribute.nodeValue))\n }\n\n return true\n }\n\n // Check if a regular expression validates the attribute.\n return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp)\n .some(regex => regex.test(attributeName))\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFunction) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFunction && typeof sanitizeFunction === 'function') {\n return sanitizeFunction(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (const element of elements) {\n const elementName = element.nodeName.toLowerCase()\n\n if (!Object.keys(allowList).includes(elementName)) {\n element.remove()\n continue\n }\n\n const attributeList = [].concat(...element.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elementName] || [])\n\n for (const attribute of attributeList) {\n if (!allowedAttribute(attribute, allowedAttributes)) {\n element.removeAttribute(attribute.nodeName)\n }\n }\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap util/template-factory.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport SelectorEngine from '../dom/selector-engine.js'\nimport Config from './config.js'\nimport { DefaultAllowlist, sanitizeHtml } from './sanitizer.js'\nimport { execute, getElement, isElement } from './index.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'TemplateFactory'\n\nconst Default = {\n allowList: DefaultAllowlist,\n content: {}, // { selector : text , selector2 : text2 , }\n extraClass: '',\n html: false,\n sanitize: true,\n sanitizeFn: null,\n template: '
'\n}\n\nconst DefaultType = {\n allowList: 'object',\n content: 'object',\n extraClass: '(string|function)',\n html: 'boolean',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n template: 'string'\n}\n\nconst DefaultContentType = {\n entry: '(string|element|function|null)',\n selector: '(string|element)'\n}\n\n/**\n * Class definition\n */\n\nclass TemplateFactory extends Config {\n constructor(config) {\n super()\n this._config = this._getConfig(config)\n }\n\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n getContent() {\n return Object.values(this._config.content)\n .map(config => this._resolvePossibleFunction(config))\n .filter(Boolean)\n }\n\n hasContent() {\n return this.getContent().length > 0\n }\n\n changeContent(content) {\n this._checkContent(content)\n this._config.content = { ...this._config.content, ...content }\n return this\n }\n\n toHtml() {\n const templateWrapper = document.createElement('div')\n templateWrapper.innerHTML = this._maybeSanitize(this._config.template)\n\n for (const [selector, text] of Object.entries(this._config.content)) {\n this._setContent(templateWrapper, text, selector)\n }\n\n const template = templateWrapper.children[0]\n const extraClass = this._resolvePossibleFunction(this._config.extraClass)\n\n if (extraClass) {\n template.classList.add(...extraClass.split(' '))\n }\n\n return template\n }\n\n // Private\n _typeCheckConfig(config) {\n super._typeCheckConfig(config)\n this._checkContent(config.content)\n }\n\n _checkContent(arg) {\n for (const [selector, content] of Object.entries(arg)) {\n super._typeCheckConfig({ selector, entry: content }, DefaultContentType)\n }\n }\n\n _setContent(template, content, selector) {\n const templateElement = SelectorEngine.findOne(selector, template)\n\n if (!templateElement) {\n return\n }\n\n content = this._resolvePossibleFunction(content)\n\n if (!content) {\n templateElement.remove()\n return\n }\n\n if (isElement(content)) {\n this._putElementInTemplate(getElement(content), templateElement)\n return\n }\n\n if (this._config.html) {\n templateElement.innerHTML = this._maybeSanitize(content)\n return\n }\n\n templateElement.textContent = content\n }\n\n _maybeSanitize(arg) {\n return this._config.sanitize ? sanitizeHtml(arg, this._config.allowList, this._config.sanitizeFn) : arg\n }\n\n _resolvePossibleFunction(arg) {\n return execute(arg, [this])\n }\n\n _putElementInTemplate(element, templateElement) {\n if (this._config.html) {\n templateElement.innerHTML = ''\n templateElement.append(element)\n return\n }\n\n templateElement.textContent = element.textContent\n }\n}\n\nexport default TemplateFactory\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\nimport BaseComponent from './base-component.js'\nimport EventHandler from './dom/event-handler.js'\nimport Manipulator from './dom/manipulator.js'\nimport { defineJQueryPlugin, execute, findShadowRoot, getElement, getUID, isRTL, noop } from './util/index.js'\nimport { DefaultAllowlist } from './util/sanitizer.js'\nimport TemplateFactory from './util/template-factory.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'tooltip'\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\nconst SELECTOR_MODAL = `.${CLASS_NAME_MODAL}`\n\nconst EVENT_MODAL_HIDE = 'hide.bs.modal'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\nconst EVENT_HIDE = 'hide'\nconst EVENT_HIDDEN = 'hidden'\nconst EVENT_SHOW = 'show'\nconst EVENT_SHOWN = 'shown'\nconst EVENT_INSERTED = 'inserted'\nconst EVENT_CLICK = 'click'\nconst EVENT_FOCUSIN = 'focusin'\nconst EVENT_FOCUSOUT = 'focusout'\nconst EVENT_MOUSEENTER = 'mouseenter'\nconst EVENT_MOUSELEAVE = 'mouseleave'\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n allowList: DefaultAllowlist,\n animation: true,\n boundary: 'clippingParents',\n container: false,\n customClass: '',\n delay: 0,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n html: false,\n offset: [0, 6],\n placement: 'top',\n popperConfig: null,\n sanitize: true,\n sanitizeFn: null,\n selector: false,\n template: '
' +\n '
' +\n '
' +\n '
',\n title: '',\n trigger: 'hover focus'\n}\n\nconst DefaultType = {\n allowList: 'object',\n animation: 'boolean',\n boundary: '(string|element)',\n container: '(string|element|boolean)',\n customClass: '(string|function)',\n delay: '(number|object)',\n fallbackPlacements: 'array',\n html: 'boolean',\n offset: '(array|string|function)',\n placement: '(string|function)',\n popperConfig: '(null|object|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n selector: '(string|boolean)',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string'\n}\n\n/**\n * Class definition\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element, config)\n\n // Private\n this._isEnabled = true\n this._timeout = 0\n this._isHovered = null\n this._activeTrigger = {}\n this._popper = null\n this._templateFactory = null\n this._newContent = null\n\n // Protected\n this.tip = null\n\n this._setListeners()\n\n if (!this._config.selector) {\n this._fixTitle()\n }\n }\n\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle() {\n if (!this._isEnabled) {\n return\n }\n\n this._activeTrigger.click = !this._activeTrigger.click\n if (this._isShown()) {\n this._leave()\n return\n }\n\n this._enter()\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler)\n\n if (this._element.getAttribute('data-bs-original-title')) {\n this._element.setAttribute('title', this._element.getAttribute('data-bs-original-title'))\n }\n\n this._disposePopper()\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this._isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOW))\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = (shadowRoot || this._element.ownerDocument.documentElement).contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n // TODO: v6 remove this or make it optional\n this._disposePopper()\n\n const tip = this._getTipElement()\n\n this._element.setAttribute('aria-describedby', tip.getAttribute('id'))\n\n const { container } = this._config\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.append(tip)\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_INSERTED))\n }\n\n this._popper = this._createPopper(tip)\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.on(element, 'mouseover', noop)\n }\n }\n\n const complete = () => {\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOWN))\n\n if (this._isHovered === false) {\n this._leave()\n }\n\n this._isHovered = false\n }\n\n this._queueCallback(complete, this.tip, this._isAnimated())\n }\n\n hide() {\n if (!this._isShown()) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDE))\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const tip = this._getTipElement()\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.off(element, 'mouseover', noop)\n }\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n this._isHovered = null // it is a trick to support manual triggering\n\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (!this._isHovered) {\n this._disposePopper()\n }\n\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDDEN))\n }\n\n this._queueCallback(complete, this.tip, this._isAnimated())\n }\n\n update() {\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Protected\n _isWithContent() {\n return Boolean(this._getTitle())\n }\n\n _getTipElement() {\n if (!this.tip) {\n this.tip = this._createTipElement(this._newContent || this._getContentForTemplate())\n }\n\n return this.tip\n }\n\n _createTipElement(content) {\n const tip = this._getTemplateFactory(content).toHtml()\n\n // TODO: remove this check in v6\n if (!tip) {\n return null\n }\n\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n // TODO: v6 the following can be achieved with CSS only\n tip.classList.add(`bs-${this.constructor.NAME}-auto`)\n\n const tipId = getUID(this.constructor.NAME).toString()\n\n tip.setAttribute('id', tipId)\n\n if (this._isAnimated()) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n return tip\n }\n\n setContent(content) {\n this._newContent = content\n if (this._isShown()) {\n this._disposePopper()\n this.show()\n }\n }\n\n _getTemplateFactory(content) {\n if (this._templateFactory) {\n this._templateFactory.changeContent(content)\n } else {\n this._templateFactory = new TemplateFactory({\n ...this._config,\n // the `content` var has to be after `this._config`\n // to override config.content in case of popover\n content,\n extraClass: this._resolvePossibleFunction(this._config.customClass)\n })\n }\n\n return this._templateFactory\n }\n\n _getContentForTemplate() {\n return {\n [SELECTOR_TOOLTIP_INNER]: this._getTitle()\n }\n }\n\n _getTitle() {\n return this._resolvePossibleFunction(this._config.title) || this._element.getAttribute('data-bs-original-title')\n }\n\n // Private\n _initializeOnDelegatedTarget(event) {\n return this.constructor.getOrCreateInstance(event.delegateTarget, this._getDelegateConfig())\n }\n\n _isAnimated() {\n return this._config.animation || (this.tip && this.tip.classList.contains(CLASS_NAME_FADE))\n }\n\n _isShown() {\n return this.tip && this.tip.classList.contains(CLASS_NAME_SHOW)\n }\n\n _createPopper(tip) {\n const placement = execute(this._config.placement, [this, tip, this._element])\n const attachment = AttachmentMap[placement.toUpperCase()]\n return Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(value => Number.parseInt(value, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _resolvePossibleFunction(arg) {\n return execute(arg, [this._element])\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'preSetPlacement',\n enabled: true,\n phase: 'beforeMain',\n fn: data => {\n // Pre-set Popper's placement attribute in order to read the arrow sizes properly.\n // Otherwise, Popper mixes up the width and height dimensions since the initial arrow style is for top placement\n this._getTipElement().setAttribute('data-popper-placement', data.state.placement)\n }\n }\n ]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...execute(this._config.popperConfig, [defaultBsPopperConfig])\n }\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n for (const trigger of triggers) {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.eventName(EVENT_CLICK), this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event)\n context.toggle()\n })\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.eventName(EVENT_MOUSEENTER) :\n this.constructor.eventName(EVENT_FOCUSIN)\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.eventName(EVENT_MOUSELEAVE) :\n this.constructor.eventName(EVENT_FOCUSOUT)\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event)\n context._activeTrigger[event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER] = true\n context._enter()\n })\n EventHandler.on(this._element, eventOut, this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event)\n context._activeTrigger[event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER] =\n context._element.contains(event.relatedTarget)\n\n context._leave()\n })\n }\n }\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler)\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n\n if (!title) {\n return\n }\n\n if (!this._element.getAttribute('aria-label') && !this._element.textContent.trim()) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('data-bs-original-title', title) // DO NOT USE IT. Is only for backwards compatibility\n this._element.removeAttribute('title')\n }\n\n _enter() {\n if (this._isShown() || this._isHovered) {\n this._isHovered = true\n return\n }\n\n this._isHovered = true\n\n this._setTimeout(() => {\n if (this._isHovered) {\n this.show()\n }\n }, this._config.delay.show)\n }\n\n _leave() {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n this._isHovered = false\n\n this._setTimeout(() => {\n if (!this._isHovered) {\n this.hide()\n }\n }, this._config.delay.hide)\n }\n\n _setTimeout(handler, timeout) {\n clearTimeout(this._timeout)\n this._timeout = setTimeout(handler, timeout)\n }\n\n _isWithActiveTrigger() {\n return Object.values(this._activeTrigger).includes(true)\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n for (const dataAttribute of Object.keys(dataAttributes)) {\n if (DISALLOWED_ATTRIBUTES.has(dataAttribute)) {\n delete dataAttributes[dataAttribute]\n }\n }\n\n config = {\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n config = this._mergeConfigObj(config)\n config = this._configAfterMerge(config)\n this._typeCheckConfig(config)\n return config\n }\n\n _configAfterMerge(config) {\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n for (const [key, value] of Object.entries(this._config)) {\n if (this.constructor.Default[key] !== value) {\n config[key] = value\n }\n }\n\n config.selector = false\n config.trigger = 'manual'\n\n // In the future can be replaced with:\n // const keysWithDifferentValues = Object.entries(this._config).filter(entry => this.constructor.Default[entry[0]] !== this._config[entry[0]])\n // `Object.fromEntries(keysWithDifferentValues)`\n return config\n }\n\n _disposePopper() {\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n\n if (this.tip) {\n this.tip.remove()\n this.tip = null\n }\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Tooltip from './tooltip.js'\nimport { defineJQueryPlugin } from './util/index.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'popover'\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\nconst Default = {\n ...Tooltip.Default,\n content: '',\n offset: [0, 8],\n placement: 'right',\n template: '
' +\n '
' +\n '

' +\n '
' +\n '
',\n trigger: 'click'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(null|string|element|function)'\n}\n\n/**\n * Class definition\n */\n\nclass Popover extends Tooltip {\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Overrides\n _isWithContent() {\n return this._getTitle() || this._getContent()\n }\n\n // Private\n _getContentForTemplate() {\n return {\n [SELECTOR_TITLE]: this._getTitle(),\n [SELECTOR_CONTENT]: this._getContent()\n }\n }\n\n _getContent() {\n return this._resolvePossibleFunction(this._config.content)\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Popover)\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport EventHandler from './dom/event-handler.js'\nimport SelectorEngine from './dom/selector-engine.js'\nimport { defineJQueryPlugin, getElement, isDisabled, isVisible } from './util/index.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]'\nconst SELECTOR_TARGET_LINKS = '[href]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_LINK_ITEMS = `${SELECTOR_NAV_LINKS}, ${SELECTOR_NAV_ITEMS} > ${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst Default = {\n offset: null, // TODO: v6 @deprecated, keep it for backwards compatibility reasons\n rootMargin: '0px 0px -25%',\n smoothScroll: false,\n target: null,\n threshold: [0.1, 0.5, 1]\n}\n\nconst DefaultType = {\n offset: '(number|null)', // TODO v6 @deprecated, keep it for backwards compatibility reasons\n rootMargin: 'string',\n smoothScroll: 'boolean',\n target: 'element',\n threshold: 'array'\n}\n\n/**\n * Class definition\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element, config)\n\n // this._element is the observablesContainer and config.target the menu links wrapper\n this._targetLinks = new Map()\n this._observableSections = new Map()\n this._rootElement = getComputedStyle(this._element).overflowY === 'visible' ? null : this._element\n this._activeTarget = null\n this._observer = null\n this._previousScrollData = {\n visibleEntryTop: 0,\n parentScrollTop: 0\n }\n this.refresh() // initialize\n }\n\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n refresh() {\n this._initializeTargetsAndObservables()\n this._maybeEnableSmoothScroll()\n\n if (this._observer) {\n this._observer.disconnect()\n } else {\n this._observer = this._getNewObserver()\n }\n\n for (const section of this._observableSections.values()) {\n this._observer.observe(section)\n }\n }\n\n dispose() {\n this._observer.disconnect()\n super.dispose()\n }\n\n // Private\n _configAfterMerge(config) {\n // TODO: on v6 target should be given explicitly & remove the {target: 'ss-target'} case\n config.target = getElement(config.target) || document.body\n\n // TODO: v6 Only for backwards compatibility reasons. Use rootMargin only\n config.rootMargin = config.offset ? `${config.offset}px 0px -30%` : config.rootMargin\n\n if (typeof config.threshold === 'string') {\n config.threshold = config.threshold.split(',').map(value => Number.parseFloat(value))\n }\n\n return config\n }\n\n _maybeEnableSmoothScroll() {\n if (!this._config.smoothScroll) {\n return\n }\n\n // unregister any previous listeners\n EventHandler.off(this._config.target, EVENT_CLICK)\n\n EventHandler.on(this._config.target, EVENT_CLICK, SELECTOR_TARGET_LINKS, event => {\n const observableSection = this._observableSections.get(event.target.hash)\n if (observableSection) {\n event.preventDefault()\n const root = this._rootElement || window\n const height = observableSection.offsetTop - this._element.offsetTop\n if (root.scrollTo) {\n root.scrollTo({ top: height, behavior: 'smooth' })\n return\n }\n\n // Chrome 60 doesn't support `scrollTo`\n root.scrollTop = height\n }\n })\n }\n\n _getNewObserver() {\n const options = {\n root: this._rootElement,\n threshold: this._config.threshold,\n rootMargin: this._config.rootMargin\n }\n\n return new IntersectionObserver(entries => this._observerCallback(entries), options)\n }\n\n // The logic of selection\n _observerCallback(entries) {\n const targetElement = entry => this._targetLinks.get(`#${entry.target.id}`)\n const activate = entry => {\n this._previousScrollData.visibleEntryTop = entry.target.offsetTop\n this._process(targetElement(entry))\n }\n\n const parentScrollTop = (this._rootElement || document.documentElement).scrollTop\n const userScrollsDown = parentScrollTop >= this._previousScrollData.parentScrollTop\n this._previousScrollData.parentScrollTop = parentScrollTop\n\n for (const entry of entries) {\n if (!entry.isIntersecting) {\n this._activeTarget = null\n this._clearActiveClass(targetElement(entry))\n\n continue\n }\n\n const entryIsLowerThanPrevious = entry.target.offsetTop >= this._previousScrollData.visibleEntryTop\n // if we are scrolling down, pick the bigger offsetTop\n if (userScrollsDown && entryIsLowerThanPrevious) {\n activate(entry)\n // if parent isn't scrolled, let's keep the first visible item, breaking the iteration\n if (!parentScrollTop) {\n return\n }\n\n continue\n }\n\n // if we are scrolling up, pick the smallest offsetTop\n if (!userScrollsDown && !entryIsLowerThanPrevious) {\n activate(entry)\n }\n }\n }\n\n _initializeTargetsAndObservables() {\n this._targetLinks = new Map()\n this._observableSections = new Map()\n\n const targetLinks = SelectorEngine.find(SELECTOR_TARGET_LINKS, this._config.target)\n\n for (const anchor of targetLinks) {\n // ensure that the anchor has an id and is not disabled\n if (!anchor.hash || isDisabled(anchor)) {\n continue\n }\n\n const observableSection = SelectorEngine.findOne(decodeURI(anchor.hash), this._element)\n\n // ensure that the observableSection exists & is visible\n if (isVisible(observableSection)) {\n this._targetLinks.set(decodeURI(anchor.hash), anchor)\n this._observableSections.set(anchor.hash, observableSection)\n }\n }\n }\n\n _process(target) {\n if (this._activeTarget === target) {\n return\n }\n\n this._clearActiveClass(this._config.target)\n this._activeTarget = target\n target.classList.add(CLASS_NAME_ACTIVE)\n this._activateParents(target)\n\n EventHandler.trigger(this._element, EVENT_ACTIVATE, { relatedTarget: target })\n }\n\n _activateParents(target) {\n // Activate dropdown parents\n if (target.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, target.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n return\n }\n\n for (const listGroup of SelectorEngine.parents(target, SELECTOR_NAV_LIST_GROUP)) {\n // Set triggered links parents as active\n // With both
    and
')},createChildNavList:function(e){var t=this.createNavList();return e.append(t),t},generateNavEl:function(e,t){var n=a('
');n.attr("href","#"+e),n.text(t);var r=a("
  • ");return r.append(n),r},generateNavItem:function(e){var t=this.generateAnchor(e),n=a(e),r=n.data("toc-text")||n.text();return this.generateNavEl(t,r)},getTopLevel:function(e){for(var t=1;t<=6;t++){if(1 + + + + + + + + + + + + + diff --git a/docs/deps/font-awesome-6.4.2/css/all.css b/docs/deps/font-awesome-6.4.2/css/all.css new file mode 100644 index 0000000..bdb6e3a --- /dev/null +++ b/docs/deps/font-awesome-6.4.2/css/all.css @@ -0,0 +1,7968 @@ +/*! + * Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + * Copyright 2023 Fonticons, Inc. + */ +.fa { + font-family: var(--fa-style-family, "Font Awesome 6 Free"); + font-weight: var(--fa-style, 900); } + +.fa, +.fa-classic, +.fa-sharp, +.fas, +.fa-solid, +.far, +.fa-regular, +.fab, +.fa-brands { + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + display: var(--fa-display, inline-block); + font-style: normal; + font-variant: normal; + line-height: 1; + text-rendering: auto; } + +.fas, +.fa-classic, +.fa-solid, +.far, +.fa-regular { + font-family: 'Font Awesome 6 Free'; } + +.fab, +.fa-brands { + font-family: 'Font Awesome 6 Brands'; } + +.fa-1x { + font-size: 1em; } + +.fa-2x { + font-size: 2em; } + +.fa-3x { + font-size: 3em; } + +.fa-4x { + font-size: 4em; } + +.fa-5x { + font-size: 5em; } + +.fa-6x { + font-size: 6em; } + +.fa-7x { + font-size: 7em; } + +.fa-8x { + font-size: 8em; } + +.fa-9x { + font-size: 9em; } + +.fa-10x { + font-size: 10em; } + +.fa-2xs { + font-size: 0.625em; + line-height: 0.1em; + vertical-align: 0.225em; } + +.fa-xs { + font-size: 0.75em; + line-height: 0.08333em; + vertical-align: 0.125em; } + +.fa-sm { + font-size: 0.875em; + line-height: 0.07143em; + vertical-align: 0.05357em; } + +.fa-lg { + font-size: 1.25em; + line-height: 0.05em; + vertical-align: -0.075em; } + +.fa-xl { + font-size: 1.5em; + line-height: 0.04167em; + vertical-align: -0.125em; } + +.fa-2xl { + font-size: 2em; + line-height: 0.03125em; + vertical-align: -0.1875em; } + +.fa-fw { + text-align: center; + width: 1.25em; } + +.fa-ul { + list-style-type: none; + margin-left: var(--fa-li-margin, 2.5em); + padding-left: 0; } + .fa-ul > li { + position: relative; } + +.fa-li { + left: calc(var(--fa-li-width, 2em) * -1); + position: absolute; + text-align: center; + width: var(--fa-li-width, 2em); + line-height: inherit; } + +.fa-border { + border-color: var(--fa-border-color, #eee); + border-radius: var(--fa-border-radius, 0.1em); + border-style: var(--fa-border-style, solid); + border-width: var(--fa-border-width, 0.08em); + padding: var(--fa-border-padding, 0.2em 0.25em 0.15em); } + +.fa-pull-left { + float: left; + margin-right: var(--fa-pull-margin, 0.3em); } + +.fa-pull-right { + float: right; + margin-left: var(--fa-pull-margin, 0.3em); } + +.fa-beat { + -webkit-animation-name: fa-beat; + animation-name: fa-beat; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out); + animation-timing-function: var(--fa-animation-timing, ease-in-out); } + +.fa-bounce { + -webkit-animation-name: fa-bounce; + animation-name: fa-bounce; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1)); + animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1)); } + +.fa-fade { + -webkit-animation-name: fa-fade; + animation-name: fa-fade; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); + animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); } + +.fa-beat-fade { + -webkit-animation-name: fa-beat-fade; + animation-name: fa-beat-fade; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); + animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); } + +.fa-flip { + -webkit-animation-name: fa-flip; + animation-name: fa-flip; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out); + animation-timing-function: var(--fa-animation-timing, ease-in-out); } + +.fa-shake { + -webkit-animation-name: fa-shake; + animation-name: fa-shake; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, linear); + animation-timing-function: var(--fa-animation-timing, linear); } + +.fa-spin { + -webkit-animation-name: fa-spin; + animation-name: fa-spin; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 2s); + animation-duration: var(--fa-animation-duration, 2s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, linear); + animation-timing-function: var(--fa-animation-timing, linear); } + +.fa-spin-reverse { + --fa-animation-direction: reverse; } + +.fa-pulse, +.fa-spin-pulse { + -webkit-animation-name: fa-spin; + animation-name: fa-spin; + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, steps(8)); + animation-timing-function: var(--fa-animation-timing, steps(8)); } + +@media (prefers-reduced-motion: reduce) { + .fa-beat, + .fa-bounce, + .fa-fade, + .fa-beat-fade, + .fa-flip, + .fa-pulse, + .fa-shake, + .fa-spin, + .fa-spin-pulse { + -webkit-animation-delay: -1ms; + animation-delay: -1ms; + -webkit-animation-duration: 1ms; + animation-duration: 1ms; + -webkit-animation-iteration-count: 1; + animation-iteration-count: 1; + -webkit-transition-delay: 0s; + transition-delay: 0s; + -webkit-transition-duration: 0s; + transition-duration: 0s; } } + +@-webkit-keyframes fa-beat { + 0%, 90% { + -webkit-transform: scale(1); + transform: scale(1); } + 45% { + -webkit-transform: scale(var(--fa-beat-scale, 1.25)); + transform: scale(var(--fa-beat-scale, 1.25)); } } + +@keyframes fa-beat { + 0%, 90% { + -webkit-transform: scale(1); + transform: scale(1); } + 45% { + -webkit-transform: scale(var(--fa-beat-scale, 1.25)); + transform: scale(var(--fa-beat-scale, 1.25)); } } + +@-webkit-keyframes fa-bounce { + 0% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); } + 10% { + -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); + transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); } + 30% { + -webkit-transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); + transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); } + 50% { + -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); + transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); } + 57% { + -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); + transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); } + 64% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); } + 100% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); } } + +@keyframes fa-bounce { + 0% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); } + 10% { + -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); + transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); } + 30% { + -webkit-transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); + transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); } + 50% { + -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); + transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); } + 57% { + -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); + transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); } + 64% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); } + 100% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); } } + +@-webkit-keyframes fa-fade { + 50% { + opacity: var(--fa-fade-opacity, 0.4); } } + +@keyframes fa-fade { + 50% { + opacity: var(--fa-fade-opacity, 0.4); } } + +@-webkit-keyframes fa-beat-fade { + 0%, 100% { + opacity: var(--fa-beat-fade-opacity, 0.4); + -webkit-transform: scale(1); + transform: scale(1); } + 50% { + opacity: 1; + -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125)); + transform: scale(var(--fa-beat-fade-scale, 1.125)); } } + +@keyframes fa-beat-fade { + 0%, 100% { + opacity: var(--fa-beat-fade-opacity, 0.4); + -webkit-transform: scale(1); + transform: scale(1); } + 50% { + opacity: 1; + -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125)); + transform: scale(var(--fa-beat-fade-scale, 1.125)); } } + +@-webkit-keyframes fa-flip { + 50% { + -webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); + transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); } } + +@keyframes fa-flip { + 50% { + -webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); + transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); } } + +@-webkit-keyframes fa-shake { + 0% { + -webkit-transform: rotate(-15deg); + transform: rotate(-15deg); } + 4% { + -webkit-transform: rotate(15deg); + transform: rotate(15deg); } + 8%, 24% { + -webkit-transform: rotate(-18deg); + transform: rotate(-18deg); } + 12%, 28% { + -webkit-transform: rotate(18deg); + transform: rotate(18deg); } + 16% { + -webkit-transform: rotate(-22deg); + transform: rotate(-22deg); } + 20% { + -webkit-transform: rotate(22deg); + transform: rotate(22deg); } + 32% { + -webkit-transform: rotate(-12deg); + transform: rotate(-12deg); } + 36% { + -webkit-transform: rotate(12deg); + transform: rotate(12deg); } + 40%, 100% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); } } + +@keyframes fa-shake { + 0% { + -webkit-transform: rotate(-15deg); + transform: rotate(-15deg); } + 4% { + -webkit-transform: rotate(15deg); + transform: rotate(15deg); } + 8%, 24% { + -webkit-transform: rotate(-18deg); + transform: rotate(-18deg); } + 12%, 28% { + -webkit-transform: rotate(18deg); + transform: rotate(18deg); } + 16% { + -webkit-transform: rotate(-22deg); + transform: rotate(-22deg); } + 20% { + -webkit-transform: rotate(22deg); + transform: rotate(22deg); } + 32% { + -webkit-transform: rotate(-12deg); + transform: rotate(-12deg); } + 36% { + -webkit-transform: rotate(12deg); + transform: rotate(12deg); } + 40%, 100% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); } } + +@-webkit-keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +@keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +.fa-rotate-90 { + -webkit-transform: rotate(90deg); + transform: rotate(90deg); } + +.fa-rotate-180 { + -webkit-transform: rotate(180deg); + transform: rotate(180deg); } + +.fa-rotate-270 { + -webkit-transform: rotate(270deg); + transform: rotate(270deg); } + +.fa-flip-horizontal { + -webkit-transform: scale(-1, 1); + transform: scale(-1, 1); } + +.fa-flip-vertical { + -webkit-transform: scale(1, -1); + transform: scale(1, -1); } + +.fa-flip-both, +.fa-flip-horizontal.fa-flip-vertical { + -webkit-transform: scale(-1, -1); + transform: scale(-1, -1); } + +.fa-rotate-by { + -webkit-transform: rotate(var(--fa-rotate-angle, none)); + transform: rotate(var(--fa-rotate-angle, none)); } + +.fa-stack { + display: inline-block; + height: 2em; + line-height: 2em; + position: relative; + vertical-align: middle; + width: 2.5em; } + +.fa-stack-1x, +.fa-stack-2x { + left: 0; + position: absolute; + text-align: center; + width: 100%; + z-index: var(--fa-stack-z-index, auto); } + +.fa-stack-1x { + line-height: inherit; } + +.fa-stack-2x { + font-size: 2em; } + +.fa-inverse { + color: var(--fa-inverse, #fff); } + +/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen +readers do not read off random characters that represent icons */ + +.fa-0::before { + content: "\30"; } + +.fa-1::before { + content: "\31"; } + +.fa-2::before { + content: "\32"; } + +.fa-3::before { + content: "\33"; } + +.fa-4::before { + content: "\34"; } + +.fa-5::before { + content: "\35"; } + +.fa-6::before { + content: "\36"; } + +.fa-7::before { + content: "\37"; } + +.fa-8::before { + content: "\38"; } + +.fa-9::before { + content: "\39"; } + +.fa-fill-drip::before { + content: "\f576"; } + +.fa-arrows-to-circle::before { + content: "\e4bd"; } + +.fa-circle-chevron-right::before { + content: "\f138"; } + +.fa-chevron-circle-right::before { + content: "\f138"; } + +.fa-at::before { + content: "\40"; } + +.fa-trash-can::before { + content: "\f2ed"; } + +.fa-trash-alt::before { + content: "\f2ed"; } + +.fa-text-height::before { + content: "\f034"; } + +.fa-user-xmark::before { + content: "\f235"; } + +.fa-user-times::before { + content: "\f235"; } + +.fa-stethoscope::before { + content: "\f0f1"; } + +.fa-message::before { + content: "\f27a"; } + +.fa-comment-alt::before { + content: "\f27a"; } + +.fa-info::before { + content: "\f129"; } + +.fa-down-left-and-up-right-to-center::before { + content: "\f422"; } + +.fa-compress-alt::before { + content: "\f422"; } + +.fa-explosion::before { + content: "\e4e9"; } + +.fa-file-lines::before { + content: "\f15c"; } + +.fa-file-alt::before { + content: "\f15c"; } + +.fa-file-text::before { + content: "\f15c"; } + +.fa-wave-square::before { + content: "\f83e"; } + +.fa-ring::before { + content: "\f70b"; } + +.fa-building-un::before { + content: "\e4d9"; } + +.fa-dice-three::before { + content: "\f527"; } + +.fa-calendar-days::before { + content: "\f073"; } + +.fa-calendar-alt::before { + content: "\f073"; } + +.fa-anchor-circle-check::before { + content: "\e4aa"; } + +.fa-building-circle-arrow-right::before { + content: "\e4d1"; } + +.fa-volleyball::before { + content: "\f45f"; } + +.fa-volleyball-ball::before { + content: "\f45f"; } + +.fa-arrows-up-to-line::before { + content: "\e4c2"; } + +.fa-sort-down::before { + content: "\f0dd"; } + +.fa-sort-desc::before { + content: "\f0dd"; } + +.fa-circle-minus::before { + content: "\f056"; } + +.fa-minus-circle::before { + content: "\f056"; } + +.fa-door-open::before { + content: "\f52b"; } + +.fa-right-from-bracket::before { + content: "\f2f5"; } + +.fa-sign-out-alt::before { + content: "\f2f5"; } + +.fa-atom::before { + content: "\f5d2"; } + +.fa-soap::before { + content: "\e06e"; } + +.fa-icons::before { + content: "\f86d"; } + +.fa-heart-music-camera-bolt::before { + content: "\f86d"; } + +.fa-microphone-lines-slash::before { + content: "\f539"; } + +.fa-microphone-alt-slash::before { + content: "\f539"; } + +.fa-bridge-circle-check::before { + content: "\e4c9"; } + +.fa-pump-medical::before { + content: "\e06a"; } + +.fa-fingerprint::before { + content: "\f577"; } + +.fa-hand-point-right::before { + content: "\f0a4"; } + +.fa-magnifying-glass-location::before { + content: "\f689"; } + +.fa-search-location::before { + content: "\f689"; } + +.fa-forward-step::before { + content: "\f051"; } + +.fa-step-forward::before { + content: "\f051"; } + +.fa-face-smile-beam::before { + content: "\f5b8"; } + +.fa-smile-beam::before { + content: "\f5b8"; } + +.fa-flag-checkered::before { + content: "\f11e"; } + +.fa-football::before { + content: "\f44e"; } + +.fa-football-ball::before { + content: "\f44e"; } + +.fa-school-circle-exclamation::before { + content: "\e56c"; } + +.fa-crop::before { + content: "\f125"; } + +.fa-angles-down::before { + content: "\f103"; } + +.fa-angle-double-down::before { + content: "\f103"; } + +.fa-users-rectangle::before { + content: "\e594"; } + +.fa-people-roof::before { + content: "\e537"; } + +.fa-people-line::before { + content: "\e534"; } + +.fa-beer-mug-empty::before { + content: "\f0fc"; } + +.fa-beer::before { + content: "\f0fc"; } + +.fa-diagram-predecessor::before { + content: "\e477"; } + +.fa-arrow-up-long::before { + content: "\f176"; } + +.fa-long-arrow-up::before { + content: "\f176"; } + +.fa-fire-flame-simple::before { + content: "\f46a"; } + +.fa-burn::before { + content: "\f46a"; } + +.fa-person::before { + content: "\f183"; } + +.fa-male::before { + content: "\f183"; } + +.fa-laptop::before { + content: "\f109"; } + +.fa-file-csv::before { + content: "\f6dd"; } + +.fa-menorah::before { + content: "\f676"; } + +.fa-truck-plane::before { + content: "\e58f"; } + +.fa-record-vinyl::before { + content: "\f8d9"; } + +.fa-face-grin-stars::before { + content: "\f587"; } + +.fa-grin-stars::before { + content: "\f587"; } + +.fa-bong::before { + content: "\f55c"; } + +.fa-spaghetti-monster-flying::before { + content: "\f67b"; } + +.fa-pastafarianism::before { + content: "\f67b"; } + +.fa-arrow-down-up-across-line::before { + content: "\e4af"; } + +.fa-spoon::before { + content: "\f2e5"; } + +.fa-utensil-spoon::before { + content: "\f2e5"; } + +.fa-jar-wheat::before { + content: "\e517"; } + +.fa-envelopes-bulk::before { + content: "\f674"; } + +.fa-mail-bulk::before { + content: "\f674"; } + +.fa-file-circle-exclamation::before { + content: "\e4eb"; } + +.fa-circle-h::before { + content: "\f47e"; } + +.fa-hospital-symbol::before { + content: "\f47e"; } + +.fa-pager::before { + content: "\f815"; } + +.fa-address-book::before { + content: "\f2b9"; } + +.fa-contact-book::before { + content: "\f2b9"; } + +.fa-strikethrough::before { + content: "\f0cc"; } + +.fa-k::before { + content: "\4b"; } + +.fa-landmark-flag::before { + content: "\e51c"; } + +.fa-pencil::before { + content: "\f303"; } + +.fa-pencil-alt::before { + content: "\f303"; } + +.fa-backward::before { + content: "\f04a"; } + +.fa-caret-right::before { + content: "\f0da"; } + +.fa-comments::before { + content: "\f086"; } + +.fa-paste::before { + content: "\f0ea"; } + +.fa-file-clipboard::before { + content: "\f0ea"; } + +.fa-code-pull-request::before { + content: "\e13c"; } + +.fa-clipboard-list::before { + content: "\f46d"; } + +.fa-truck-ramp-box::before { + content: "\f4de"; } + +.fa-truck-loading::before { + content: "\f4de"; } + +.fa-user-check::before { + content: "\f4fc"; } + +.fa-vial-virus::before { + content: "\e597"; } + +.fa-sheet-plastic::before { + content: "\e571"; } + +.fa-blog::before { + content: "\f781"; } + +.fa-user-ninja::before { + content: "\f504"; } + +.fa-person-arrow-up-from-line::before { + content: "\e539"; } + +.fa-scroll-torah::before { + content: "\f6a0"; } + +.fa-torah::before { + content: "\f6a0"; } + +.fa-broom-ball::before { + content: "\f458"; } + +.fa-quidditch::before { + content: "\f458"; } + +.fa-quidditch-broom-ball::before { + content: "\f458"; } + +.fa-toggle-off::before { + content: "\f204"; } + +.fa-box-archive::before { + content: "\f187"; } + +.fa-archive::before { + content: "\f187"; } + +.fa-person-drowning::before { + content: "\e545"; } + +.fa-arrow-down-9-1::before { + content: "\f886"; } + +.fa-sort-numeric-desc::before { + content: "\f886"; } + +.fa-sort-numeric-down-alt::before { + content: "\f886"; } + +.fa-face-grin-tongue-squint::before { + content: "\f58a"; } + +.fa-grin-tongue-squint::before { + content: "\f58a"; } + +.fa-spray-can::before { + content: "\f5bd"; } + +.fa-truck-monster::before { + content: "\f63b"; } + +.fa-w::before { + content: "\57"; } + +.fa-earth-africa::before { + content: "\f57c"; } + +.fa-globe-africa::before { + content: "\f57c"; } + +.fa-rainbow::before { + content: "\f75b"; } + +.fa-circle-notch::before { + content: "\f1ce"; } + +.fa-tablet-screen-button::before { + content: "\f3fa"; } + +.fa-tablet-alt::before { + content: "\f3fa"; } + +.fa-paw::before { + content: "\f1b0"; } + +.fa-cloud::before { + content: "\f0c2"; } + +.fa-trowel-bricks::before { + content: "\e58a"; } + +.fa-face-flushed::before { + content: "\f579"; } + +.fa-flushed::before { + content: "\f579"; } + +.fa-hospital-user::before { + content: "\f80d"; } + +.fa-tent-arrow-left-right::before { + content: "\e57f"; } + +.fa-gavel::before { + content: "\f0e3"; } + +.fa-legal::before { + content: "\f0e3"; } + +.fa-binoculars::before { + content: "\f1e5"; } + +.fa-microphone-slash::before { + content: "\f131"; } + +.fa-box-tissue::before { + content: "\e05b"; } + +.fa-motorcycle::before { + content: "\f21c"; } + +.fa-bell-concierge::before { + content: "\f562"; } + +.fa-concierge-bell::before { + content: "\f562"; } + +.fa-pen-ruler::before { + content: "\f5ae"; } + +.fa-pencil-ruler::before { + content: "\f5ae"; } + +.fa-people-arrows::before { + content: "\e068"; } + +.fa-people-arrows-left-right::before { + content: "\e068"; } + +.fa-mars-and-venus-burst::before { + content: "\e523"; } + +.fa-square-caret-right::before { + content: "\f152"; } + +.fa-caret-square-right::before { + content: "\f152"; } + +.fa-scissors::before { + content: "\f0c4"; } + +.fa-cut::before { + content: "\f0c4"; } + +.fa-sun-plant-wilt::before { + content: "\e57a"; } + +.fa-toilets-portable::before { + content: "\e584"; } + +.fa-hockey-puck::before { + content: "\f453"; } + +.fa-table::before { + content: "\f0ce"; } + +.fa-magnifying-glass-arrow-right::before { + content: "\e521"; } + +.fa-tachograph-digital::before { + content: "\f566"; } + +.fa-digital-tachograph::before { + content: "\f566"; } + +.fa-users-slash::before { + content: "\e073"; } + +.fa-clover::before { + content: "\e139"; } + +.fa-reply::before { + content: "\f3e5"; } + +.fa-mail-reply::before { + content: "\f3e5"; } + +.fa-star-and-crescent::before { + content: "\f699"; } + +.fa-house-fire::before { + content: "\e50c"; } + +.fa-square-minus::before { + content: "\f146"; } + +.fa-minus-square::before { + content: "\f146"; } + +.fa-helicopter::before { + content: "\f533"; } + +.fa-compass::before { + content: "\f14e"; } + +.fa-square-caret-down::before { + content: "\f150"; } + +.fa-caret-square-down::before { + content: "\f150"; } + +.fa-file-circle-question::before { + content: "\e4ef"; } + +.fa-laptop-code::before { + content: "\f5fc"; } + +.fa-swatchbook::before { + content: "\f5c3"; } + +.fa-prescription-bottle::before { + content: "\f485"; } + +.fa-bars::before { + content: "\f0c9"; } + +.fa-navicon::before { + content: "\f0c9"; } + +.fa-people-group::before { + content: "\e533"; } + +.fa-hourglass-end::before { + content: "\f253"; } + +.fa-hourglass-3::before { + content: "\f253"; } + +.fa-heart-crack::before { + content: "\f7a9"; } + +.fa-heart-broken::before { + content: "\f7a9"; } + +.fa-square-up-right::before { + content: "\f360"; } + +.fa-external-link-square-alt::before { + content: "\f360"; } + +.fa-face-kiss-beam::before { + content: "\f597"; } + +.fa-kiss-beam::before { + content: "\f597"; } + +.fa-film::before { + content: "\f008"; } + +.fa-ruler-horizontal::before { + content: "\f547"; } + +.fa-people-robbery::before { + content: "\e536"; } + +.fa-lightbulb::before { + content: "\f0eb"; } + +.fa-caret-left::before { + content: "\f0d9"; } + +.fa-circle-exclamation::before { + content: "\f06a"; } + +.fa-exclamation-circle::before { + content: "\f06a"; } + +.fa-school-circle-xmark::before { + content: "\e56d"; } + +.fa-arrow-right-from-bracket::before { + content: "\f08b"; } + +.fa-sign-out::before { + content: "\f08b"; } + +.fa-circle-chevron-down::before { + content: "\f13a"; } + +.fa-chevron-circle-down::before { + content: "\f13a"; } + +.fa-unlock-keyhole::before { + content: "\f13e"; } + +.fa-unlock-alt::before { + content: "\f13e"; } + +.fa-cloud-showers-heavy::before { + content: "\f740"; } + +.fa-headphones-simple::before { + content: "\f58f"; } + +.fa-headphones-alt::before { + content: "\f58f"; } + +.fa-sitemap::before { + content: "\f0e8"; } + +.fa-circle-dollar-to-slot::before { + content: "\f4b9"; } + +.fa-donate::before { + content: "\f4b9"; } + +.fa-memory::before { + content: "\f538"; } + +.fa-road-spikes::before { + content: "\e568"; } + +.fa-fire-burner::before { + content: "\e4f1"; } + +.fa-flag::before { + content: "\f024"; } + +.fa-hanukiah::before { + content: "\f6e6"; } + +.fa-feather::before { + content: "\f52d"; } + +.fa-volume-low::before { + content: "\f027"; } + +.fa-volume-down::before { + content: "\f027"; } + +.fa-comment-slash::before { + content: "\f4b3"; } + +.fa-cloud-sun-rain::before { + content: "\f743"; } + +.fa-compress::before { + content: "\f066"; } + +.fa-wheat-awn::before { + content: "\e2cd"; } + +.fa-wheat-alt::before { + content: "\e2cd"; } + +.fa-ankh::before { + content: "\f644"; } + +.fa-hands-holding-child::before { + content: "\e4fa"; } + +.fa-asterisk::before { + content: "\2a"; } + +.fa-square-check::before { + content: "\f14a"; } + +.fa-check-square::before { + content: "\f14a"; } + +.fa-peseta-sign::before { + content: "\e221"; } + +.fa-heading::before { + content: "\f1dc"; } + +.fa-header::before { + content: "\f1dc"; } + +.fa-ghost::before { + content: "\f6e2"; } + +.fa-list::before { + content: "\f03a"; } + +.fa-list-squares::before { + content: "\f03a"; } + +.fa-square-phone-flip::before { + content: "\f87b"; } + +.fa-phone-square-alt::before { + content: "\f87b"; } + +.fa-cart-plus::before { + content: "\f217"; } + +.fa-gamepad::before { + content: "\f11b"; } + +.fa-circle-dot::before { + content: "\f192"; } + +.fa-dot-circle::before { + content: "\f192"; } + +.fa-face-dizzy::before { + content: "\f567"; } + +.fa-dizzy::before { + content: "\f567"; } + +.fa-egg::before { + content: "\f7fb"; } + +.fa-house-medical-circle-xmark::before { + content: "\e513"; } + +.fa-campground::before { + content: "\f6bb"; } + +.fa-folder-plus::before { + content: "\f65e"; } + +.fa-futbol::before { + content: "\f1e3"; } + +.fa-futbol-ball::before { + content: "\f1e3"; } + +.fa-soccer-ball::before { + content: "\f1e3"; } + +.fa-paintbrush::before { + content: "\f1fc"; } + +.fa-paint-brush::before { + content: "\f1fc"; } + +.fa-lock::before { + content: "\f023"; } + +.fa-gas-pump::before { + content: "\f52f"; } + +.fa-hot-tub-person::before { + content: "\f593"; } + +.fa-hot-tub::before { + content: "\f593"; } + +.fa-map-location::before { + content: "\f59f"; } + +.fa-map-marked::before { + content: "\f59f"; } + +.fa-house-flood-water::before { + content: "\e50e"; } + +.fa-tree::before { + content: "\f1bb"; } + +.fa-bridge-lock::before { + content: "\e4cc"; } + +.fa-sack-dollar::before { + content: "\f81d"; } + +.fa-pen-to-square::before { + content: "\f044"; } + +.fa-edit::before { + content: "\f044"; } + +.fa-car-side::before { + content: "\f5e4"; } + +.fa-share-nodes::before { + content: "\f1e0"; } + +.fa-share-alt::before { + content: "\f1e0"; } + +.fa-heart-circle-minus::before { + content: "\e4ff"; } + +.fa-hourglass-half::before { + content: "\f252"; } + +.fa-hourglass-2::before { + content: "\f252"; } + +.fa-microscope::before { + content: "\f610"; } + +.fa-sink::before { + content: "\e06d"; } + +.fa-bag-shopping::before { + content: "\f290"; } + +.fa-shopping-bag::before { + content: "\f290"; } + +.fa-arrow-down-z-a::before { + content: "\f881"; } + +.fa-sort-alpha-desc::before { + content: "\f881"; } + +.fa-sort-alpha-down-alt::before { + content: "\f881"; } + +.fa-mitten::before { + content: "\f7b5"; } + +.fa-person-rays::before { + content: "\e54d"; } + +.fa-users::before { + content: "\f0c0"; } + +.fa-eye-slash::before { + content: "\f070"; } + +.fa-flask-vial::before { + content: "\e4f3"; } + +.fa-hand::before { + content: "\f256"; } + +.fa-hand-paper::before { + content: "\f256"; } + +.fa-om::before { + content: "\f679"; } + +.fa-worm::before { + content: "\e599"; } + +.fa-house-circle-xmark::before { + content: "\e50b"; } + +.fa-plug::before { + content: "\f1e6"; } + +.fa-chevron-up::before { + content: "\f077"; } + +.fa-hand-spock::before { + content: "\f259"; } + +.fa-stopwatch::before { + content: "\f2f2"; } + +.fa-face-kiss::before { + content: "\f596"; } + +.fa-kiss::before { + content: "\f596"; } + +.fa-bridge-circle-xmark::before { + content: "\e4cb"; } + +.fa-face-grin-tongue::before { + content: "\f589"; } + +.fa-grin-tongue::before { + content: "\f589"; } + +.fa-chess-bishop::before { + content: "\f43a"; } + +.fa-face-grin-wink::before { + content: "\f58c"; } + +.fa-grin-wink::before { + content: "\f58c"; } + +.fa-ear-deaf::before { + content: "\f2a4"; } + +.fa-deaf::before { + content: "\f2a4"; } + +.fa-deafness::before { + content: "\f2a4"; } + +.fa-hard-of-hearing::before { + content: "\f2a4"; } + +.fa-road-circle-check::before { + content: "\e564"; } + +.fa-dice-five::before { + content: "\f523"; } + +.fa-square-rss::before { + content: "\f143"; } + +.fa-rss-square::before { + content: "\f143"; } + +.fa-land-mine-on::before { + content: "\e51b"; } + +.fa-i-cursor::before { + content: "\f246"; } + +.fa-stamp::before { + content: "\f5bf"; } + +.fa-stairs::before { + content: "\e289"; } + +.fa-i::before { + content: "\49"; } + +.fa-hryvnia-sign::before { + content: "\f6f2"; } + +.fa-hryvnia::before { + content: "\f6f2"; } + +.fa-pills::before { + content: "\f484"; } + +.fa-face-grin-wide::before { + content: "\f581"; } + +.fa-grin-alt::before { + content: "\f581"; } + +.fa-tooth::before { + content: "\f5c9"; } + +.fa-v::before { + content: "\56"; } + +.fa-bangladeshi-taka-sign::before { + content: "\e2e6"; } + +.fa-bicycle::before { + content: "\f206"; } + +.fa-staff-snake::before { + content: "\e579"; } + +.fa-rod-asclepius::before { + content: "\e579"; } + +.fa-rod-snake::before { + content: "\e579"; } + +.fa-staff-aesculapius::before { + content: "\e579"; } + +.fa-head-side-cough-slash::before { + content: "\e062"; } + +.fa-truck-medical::before { + content: "\f0f9"; } + +.fa-ambulance::before { + content: "\f0f9"; } + +.fa-wheat-awn-circle-exclamation::before { + content: "\e598"; } + +.fa-snowman::before { + content: "\f7d0"; } + +.fa-mortar-pestle::before { + content: "\f5a7"; } + +.fa-road-barrier::before { + content: "\e562"; } + +.fa-school::before { + content: "\f549"; } + +.fa-igloo::before { + content: "\f7ae"; } + +.fa-joint::before { + content: "\f595"; } + +.fa-angle-right::before { + content: "\f105"; } + +.fa-horse::before { + content: "\f6f0"; } + +.fa-q::before { + content: "\51"; } + +.fa-g::before { + content: "\47"; } + +.fa-notes-medical::before { + content: "\f481"; } + +.fa-temperature-half::before { + content: "\f2c9"; } + +.fa-temperature-2::before { + content: "\f2c9"; } + +.fa-thermometer-2::before { + content: "\f2c9"; } + +.fa-thermometer-half::before { + content: "\f2c9"; } + +.fa-dong-sign::before { + content: "\e169"; } + +.fa-capsules::before { + content: "\f46b"; } + +.fa-poo-storm::before { + content: "\f75a"; } + +.fa-poo-bolt::before { + content: "\f75a"; } + +.fa-face-frown-open::before { + content: "\f57a"; } + +.fa-frown-open::before { + content: "\f57a"; } + +.fa-hand-point-up::before { + content: "\f0a6"; } + +.fa-money-bill::before { + content: "\f0d6"; } + +.fa-bookmark::before { + content: "\f02e"; } + +.fa-align-justify::before { + content: "\f039"; } + +.fa-umbrella-beach::before { + content: "\f5ca"; } + +.fa-helmet-un::before { + content: "\e503"; } + +.fa-bullseye::before { + content: "\f140"; } + +.fa-bacon::before { + content: "\f7e5"; } + +.fa-hand-point-down::before { + content: "\f0a7"; } + +.fa-arrow-up-from-bracket::before { + content: "\e09a"; } + +.fa-folder::before { + content: "\f07b"; } + +.fa-folder-blank::before { + content: "\f07b"; } + +.fa-file-waveform::before { + content: "\f478"; } + +.fa-file-medical-alt::before { + content: "\f478"; } + +.fa-radiation::before { + content: "\f7b9"; } + +.fa-chart-simple::before { + content: "\e473"; } + +.fa-mars-stroke::before { + content: "\f229"; } + +.fa-vial::before { + content: "\f492"; } + +.fa-gauge::before { + content: "\f624"; } + +.fa-dashboard::before { + content: "\f624"; } + +.fa-gauge-med::before { + content: "\f624"; } + +.fa-tachometer-alt-average::before { + content: "\f624"; } + +.fa-wand-magic-sparkles::before { + content: "\e2ca"; } + +.fa-magic-wand-sparkles::before { + content: "\e2ca"; } + +.fa-e::before { + content: "\45"; } + +.fa-pen-clip::before { + content: "\f305"; } + +.fa-pen-alt::before { + content: "\f305"; } + +.fa-bridge-circle-exclamation::before { + content: "\e4ca"; } + +.fa-user::before { + content: "\f007"; } + +.fa-school-circle-check::before { + content: "\e56b"; } + +.fa-dumpster::before { + content: "\f793"; } + +.fa-van-shuttle::before { + content: "\f5b6"; } + +.fa-shuttle-van::before { + content: "\f5b6"; } + +.fa-building-user::before { + content: "\e4da"; } + +.fa-square-caret-left::before { + content: "\f191"; } + +.fa-caret-square-left::before { + content: "\f191"; } + +.fa-highlighter::before { + content: "\f591"; } + +.fa-key::before { + content: "\f084"; } + +.fa-bullhorn::before { + content: "\f0a1"; } + +.fa-globe::before { + content: "\f0ac"; } + +.fa-synagogue::before { + content: "\f69b"; } + +.fa-person-half-dress::before { + content: "\e548"; } + +.fa-road-bridge::before { + content: "\e563"; } + +.fa-location-arrow::before { + content: "\f124"; } + +.fa-c::before { + content: "\43"; } + +.fa-tablet-button::before { + content: "\f10a"; } + +.fa-building-lock::before { + content: "\e4d6"; } + +.fa-pizza-slice::before { + content: "\f818"; } + +.fa-money-bill-wave::before { + content: "\f53a"; } + +.fa-chart-area::before { + content: "\f1fe"; } + +.fa-area-chart::before { + content: "\f1fe"; } + +.fa-house-flag::before { + content: "\e50d"; } + +.fa-person-circle-minus::before { + content: "\e540"; } + +.fa-ban::before { + content: "\f05e"; } + +.fa-cancel::before { + content: "\f05e"; } + +.fa-camera-rotate::before { + content: "\e0d8"; } + +.fa-spray-can-sparkles::before { + content: "\f5d0"; } + +.fa-air-freshener::before { + content: "\f5d0"; } + +.fa-star::before { + content: "\f005"; } + +.fa-repeat::before { + content: "\f363"; } + +.fa-cross::before { + content: "\f654"; } + +.fa-box::before { + content: "\f466"; } + +.fa-venus-mars::before { + content: "\f228"; } + +.fa-arrow-pointer::before { + content: "\f245"; } + +.fa-mouse-pointer::before { + content: "\f245"; } + +.fa-maximize::before { + content: "\f31e"; } + +.fa-expand-arrows-alt::before { + content: "\f31e"; } + +.fa-charging-station::before { + content: "\f5e7"; } + +.fa-shapes::before { + content: "\f61f"; } + +.fa-triangle-circle-square::before { + content: "\f61f"; } + +.fa-shuffle::before { + content: "\f074"; } + +.fa-random::before { + content: "\f074"; } + +.fa-person-running::before { + content: "\f70c"; } + +.fa-running::before { + content: "\f70c"; } + +.fa-mobile-retro::before { + content: "\e527"; } + +.fa-grip-lines-vertical::before { + content: "\f7a5"; } + +.fa-spider::before { + content: "\f717"; } + +.fa-hands-bound::before { + content: "\e4f9"; } + +.fa-file-invoice-dollar::before { + content: "\f571"; } + +.fa-plane-circle-exclamation::before { + content: "\e556"; } + +.fa-x-ray::before { + content: "\f497"; } + +.fa-spell-check::before { + content: "\f891"; } + +.fa-slash::before { + content: "\f715"; } + +.fa-computer-mouse::before { + content: "\f8cc"; } + +.fa-mouse::before { + content: "\f8cc"; } + +.fa-arrow-right-to-bracket::before { + content: "\f090"; } + +.fa-sign-in::before { + content: "\f090"; } + +.fa-shop-slash::before { + content: "\e070"; } + +.fa-store-alt-slash::before { + content: "\e070"; } + +.fa-server::before { + content: "\f233"; } + +.fa-virus-covid-slash::before { + content: "\e4a9"; } + +.fa-shop-lock::before { + content: "\e4a5"; } + +.fa-hourglass-start::before { + content: "\f251"; } + +.fa-hourglass-1::before { + content: "\f251"; } + +.fa-blender-phone::before { + content: "\f6b6"; } + +.fa-building-wheat::before { + content: "\e4db"; } + +.fa-person-breastfeeding::before { + content: "\e53a"; } + +.fa-right-to-bracket::before { + content: "\f2f6"; } + +.fa-sign-in-alt::before { + content: "\f2f6"; } + +.fa-venus::before { + content: "\f221"; } + +.fa-passport::before { + content: "\f5ab"; } + +.fa-heart-pulse::before { + content: "\f21e"; } + +.fa-heartbeat::before { + content: "\f21e"; } + +.fa-people-carry-box::before { + content: "\f4ce"; } + +.fa-people-carry::before { + content: "\f4ce"; } + +.fa-temperature-high::before { + content: "\f769"; } + +.fa-microchip::before { + content: "\f2db"; } + +.fa-crown::before { + content: "\f521"; } + +.fa-weight-hanging::before { + content: "\f5cd"; } + +.fa-xmarks-lines::before { + content: "\e59a"; } + +.fa-file-prescription::before { + content: "\f572"; } + +.fa-weight-scale::before { + content: "\f496"; } + +.fa-weight::before { + content: "\f496"; } + +.fa-user-group::before { + content: "\f500"; } + +.fa-user-friends::before { + content: "\f500"; } + +.fa-arrow-up-a-z::before { + content: "\f15e"; } + +.fa-sort-alpha-up::before { + content: "\f15e"; } + +.fa-chess-knight::before { + content: "\f441"; } + +.fa-face-laugh-squint::before { + content: "\f59b"; } + +.fa-laugh-squint::before { + content: "\f59b"; } + +.fa-wheelchair::before { + content: "\f193"; } + +.fa-circle-arrow-up::before { + content: "\f0aa"; } + +.fa-arrow-circle-up::before { + content: "\f0aa"; } + +.fa-toggle-on::before { + content: "\f205"; } + +.fa-person-walking::before { + content: "\f554"; } + +.fa-walking::before { + content: "\f554"; } + +.fa-l::before { + content: "\4c"; } + +.fa-fire::before { + content: "\f06d"; } + +.fa-bed-pulse::before { + content: "\f487"; } + +.fa-procedures::before { + content: "\f487"; } + +.fa-shuttle-space::before { + content: "\f197"; } + +.fa-space-shuttle::before { + content: "\f197"; } + +.fa-face-laugh::before { + content: "\f599"; } + +.fa-laugh::before { + content: "\f599"; } + +.fa-folder-open::before { + content: "\f07c"; } + +.fa-heart-circle-plus::before { + content: "\e500"; } + +.fa-code-fork::before { + content: "\e13b"; } + +.fa-city::before { + content: "\f64f"; } + +.fa-microphone-lines::before { + content: "\f3c9"; } + +.fa-microphone-alt::before { + content: "\f3c9"; } + +.fa-pepper-hot::before { + content: "\f816"; } + +.fa-unlock::before { + content: "\f09c"; } + +.fa-colon-sign::before { + content: "\e140"; } + +.fa-headset::before { + content: "\f590"; } + +.fa-store-slash::before { + content: "\e071"; } + +.fa-road-circle-xmark::before { + content: "\e566"; } + +.fa-user-minus::before { + content: "\f503"; } + +.fa-mars-stroke-up::before { + content: "\f22a"; } + +.fa-mars-stroke-v::before { + content: "\f22a"; } + +.fa-champagne-glasses::before { + content: "\f79f"; } + +.fa-glass-cheers::before { + content: "\f79f"; } + +.fa-clipboard::before { + content: "\f328"; } + +.fa-house-circle-exclamation::before { + content: "\e50a"; } + +.fa-file-arrow-up::before { + content: "\f574"; } + +.fa-file-upload::before { + content: "\f574"; } + +.fa-wifi::before { + content: "\f1eb"; } + +.fa-wifi-3::before { + content: "\f1eb"; } + +.fa-wifi-strong::before { + content: "\f1eb"; } + +.fa-bath::before { + content: "\f2cd"; } + +.fa-bathtub::before { + content: "\f2cd"; } + +.fa-underline::before { + content: "\f0cd"; } + +.fa-user-pen::before { + content: "\f4ff"; } + +.fa-user-edit::before { + content: "\f4ff"; } + +.fa-signature::before { + content: "\f5b7"; } + +.fa-stroopwafel::before { + content: "\f551"; } + +.fa-bold::before { + content: "\f032"; } + +.fa-anchor-lock::before { + content: "\e4ad"; } + +.fa-building-ngo::before { + content: "\e4d7"; } + +.fa-manat-sign::before { + content: "\e1d5"; } + +.fa-not-equal::before { + content: "\f53e"; } + +.fa-border-top-left::before { + content: "\f853"; } + +.fa-border-style::before { + content: "\f853"; } + +.fa-map-location-dot::before { + content: "\f5a0"; } + +.fa-map-marked-alt::before { + content: "\f5a0"; } + +.fa-jedi::before { + content: "\f669"; } + +.fa-square-poll-vertical::before { + content: "\f681"; } + +.fa-poll::before { + content: "\f681"; } + +.fa-mug-hot::before { + content: "\f7b6"; } + +.fa-car-battery::before { + content: "\f5df"; } + +.fa-battery-car::before { + content: "\f5df"; } + +.fa-gift::before { + content: "\f06b"; } + +.fa-dice-two::before { + content: "\f528"; } + +.fa-chess-queen::before { + content: "\f445"; } + +.fa-glasses::before { + content: "\f530"; } + +.fa-chess-board::before { + content: "\f43c"; } + +.fa-building-circle-check::before { + content: "\e4d2"; } + +.fa-person-chalkboard::before { + content: "\e53d"; } + +.fa-mars-stroke-right::before { + content: "\f22b"; } + +.fa-mars-stroke-h::before { + content: "\f22b"; } + +.fa-hand-back-fist::before { + content: "\f255"; } + +.fa-hand-rock::before { + content: "\f255"; } + +.fa-square-caret-up::before { + content: "\f151"; } + +.fa-caret-square-up::before { + content: "\f151"; } + +.fa-cloud-showers-water::before { + content: "\e4e4"; } + +.fa-chart-bar::before { + content: "\f080"; } + +.fa-bar-chart::before { + content: "\f080"; } + +.fa-hands-bubbles::before { + content: "\e05e"; } + +.fa-hands-wash::before { + content: "\e05e"; } + +.fa-less-than-equal::before { + content: "\f537"; } + +.fa-train::before { + content: "\f238"; } + +.fa-eye-low-vision::before { + content: "\f2a8"; } + +.fa-low-vision::before { + content: "\f2a8"; } + +.fa-crow::before { + content: "\f520"; } + +.fa-sailboat::before { + content: "\e445"; } + +.fa-window-restore::before { + content: "\f2d2"; } + +.fa-square-plus::before { + content: "\f0fe"; } + +.fa-plus-square::before { + content: "\f0fe"; } + +.fa-torii-gate::before { + content: "\f6a1"; } + +.fa-frog::before { + content: "\f52e"; } + +.fa-bucket::before { + content: "\e4cf"; } + +.fa-image::before { + content: "\f03e"; } + +.fa-microphone::before { + content: "\f130"; } + +.fa-cow::before { + content: "\f6c8"; } + +.fa-caret-up::before { + content: "\f0d8"; } + +.fa-screwdriver::before { + content: "\f54a"; } + +.fa-folder-closed::before { + content: "\e185"; } + +.fa-house-tsunami::before { + content: "\e515"; } + +.fa-square-nfi::before { + content: "\e576"; } + +.fa-arrow-up-from-ground-water::before { + content: "\e4b5"; } + +.fa-martini-glass::before { + content: "\f57b"; } + +.fa-glass-martini-alt::before { + content: "\f57b"; } + +.fa-rotate-left::before { + content: "\f2ea"; } + +.fa-rotate-back::before { + content: "\f2ea"; } + +.fa-rotate-backward::before { + content: "\f2ea"; } + +.fa-undo-alt::before { + content: "\f2ea"; } + +.fa-table-columns::before { + content: "\f0db"; } + +.fa-columns::before { + content: "\f0db"; } + +.fa-lemon::before { + content: "\f094"; } + +.fa-head-side-mask::before { + content: "\e063"; } + +.fa-handshake::before { + content: "\f2b5"; } + +.fa-gem::before { + content: "\f3a5"; } + +.fa-dolly::before { + content: "\f472"; } + +.fa-dolly-box::before { + content: "\f472"; } + +.fa-smoking::before { + content: "\f48d"; } + +.fa-minimize::before { + content: "\f78c"; } + +.fa-compress-arrows-alt::before { + content: "\f78c"; } + +.fa-monument::before { + content: "\f5a6"; } + +.fa-snowplow::before { + content: "\f7d2"; } + +.fa-angles-right::before { + content: "\f101"; } + +.fa-angle-double-right::before { + content: "\f101"; } + +.fa-cannabis::before { + content: "\f55f"; } + +.fa-circle-play::before { + content: "\f144"; } + +.fa-play-circle::before { + content: "\f144"; } + +.fa-tablets::before { + content: "\f490"; } + +.fa-ethernet::before { + content: "\f796"; } + +.fa-euro-sign::before { + content: "\f153"; } + +.fa-eur::before { + content: "\f153"; } + +.fa-euro::before { + content: "\f153"; } + +.fa-chair::before { + content: "\f6c0"; } + +.fa-circle-check::before { + content: "\f058"; } + +.fa-check-circle::before { + content: "\f058"; } + +.fa-circle-stop::before { + content: "\f28d"; } + +.fa-stop-circle::before { + content: "\f28d"; } + +.fa-compass-drafting::before { + content: "\f568"; } + +.fa-drafting-compass::before { + content: "\f568"; } + +.fa-plate-wheat::before { + content: "\e55a"; } + +.fa-icicles::before { + content: "\f7ad"; } + +.fa-person-shelter::before { + content: "\e54f"; } + +.fa-neuter::before { + content: "\f22c"; } + +.fa-id-badge::before { + content: "\f2c1"; } + +.fa-marker::before { + content: "\f5a1"; } + +.fa-face-laugh-beam::before { + content: "\f59a"; } + +.fa-laugh-beam::before { + content: "\f59a"; } + +.fa-helicopter-symbol::before { + content: "\e502"; } + +.fa-universal-access::before { + content: "\f29a"; } + +.fa-circle-chevron-up::before { + content: "\f139"; } + +.fa-chevron-circle-up::before { + content: "\f139"; } + +.fa-lari-sign::before { + content: "\e1c8"; } + +.fa-volcano::before { + content: "\f770"; } + +.fa-person-walking-dashed-line-arrow-right::before { + content: "\e553"; } + +.fa-sterling-sign::before { + content: "\f154"; } + +.fa-gbp::before { + content: "\f154"; } + +.fa-pound-sign::before { + content: "\f154"; } + +.fa-viruses::before { + content: "\e076"; } + +.fa-square-person-confined::before { + content: "\e577"; } + +.fa-user-tie::before { + content: "\f508"; } + +.fa-arrow-down-long::before { + content: "\f175"; } + +.fa-long-arrow-down::before { + content: "\f175"; } + +.fa-tent-arrow-down-to-line::before { + content: "\e57e"; } + +.fa-certificate::before { + content: "\f0a3"; } + +.fa-reply-all::before { + content: "\f122"; } + +.fa-mail-reply-all::before { + content: "\f122"; } + +.fa-suitcase::before { + content: "\f0f2"; } + +.fa-person-skating::before { + content: "\f7c5"; } + +.fa-skating::before { + content: "\f7c5"; } + +.fa-filter-circle-dollar::before { + content: "\f662"; } + +.fa-funnel-dollar::before { + content: "\f662"; } + +.fa-camera-retro::before { + content: "\f083"; } + +.fa-circle-arrow-down::before { + content: "\f0ab"; } + +.fa-arrow-circle-down::before { + content: "\f0ab"; } + +.fa-file-import::before { + content: "\f56f"; } + +.fa-arrow-right-to-file::before { + content: "\f56f"; } + +.fa-square-arrow-up-right::before { + content: "\f14c"; } + +.fa-external-link-square::before { + content: "\f14c"; } + +.fa-box-open::before { + content: "\f49e"; } + +.fa-scroll::before { + content: "\f70e"; } + +.fa-spa::before { + content: "\f5bb"; } + +.fa-location-pin-lock::before { + content: "\e51f"; } + +.fa-pause::before { + content: "\f04c"; } + +.fa-hill-avalanche::before { + content: "\e507"; } + +.fa-temperature-empty::before { + content: "\f2cb"; } + +.fa-temperature-0::before { + content: "\f2cb"; } + +.fa-thermometer-0::before { + content: "\f2cb"; } + +.fa-thermometer-empty::before { + content: "\f2cb"; } + +.fa-bomb::before { + content: "\f1e2"; } + +.fa-registered::before { + content: "\f25d"; } + +.fa-address-card::before { + content: "\f2bb"; } + +.fa-contact-card::before { + content: "\f2bb"; } + +.fa-vcard::before { + content: "\f2bb"; } + +.fa-scale-unbalanced-flip::before { + content: "\f516"; } + +.fa-balance-scale-right::before { + content: "\f516"; } + +.fa-subscript::before { + content: "\f12c"; } + +.fa-diamond-turn-right::before { + content: "\f5eb"; } + +.fa-directions::before { + content: "\f5eb"; } + +.fa-burst::before { + content: "\e4dc"; } + +.fa-house-laptop::before { + content: "\e066"; } + +.fa-laptop-house::before { + content: "\e066"; } + +.fa-face-tired::before { + content: "\f5c8"; } + +.fa-tired::before { + content: "\f5c8"; } + +.fa-money-bills::before { + content: "\e1f3"; } + +.fa-smog::before { + content: "\f75f"; } + +.fa-crutch::before { + content: "\f7f7"; } + +.fa-cloud-arrow-up::before { + content: "\f0ee"; } + +.fa-cloud-upload::before { + content: "\f0ee"; } + +.fa-cloud-upload-alt::before { + content: "\f0ee"; } + +.fa-palette::before { + content: "\f53f"; } + +.fa-arrows-turn-right::before { + content: "\e4c0"; } + +.fa-vest::before { + content: "\e085"; } + +.fa-ferry::before { + content: "\e4ea"; } + +.fa-arrows-down-to-people::before { + content: "\e4b9"; } + +.fa-seedling::before { + content: "\f4d8"; } + +.fa-sprout::before { + content: "\f4d8"; } + +.fa-left-right::before { + content: "\f337"; } + +.fa-arrows-alt-h::before { + content: "\f337"; } + +.fa-boxes-packing::before { + content: "\e4c7"; } + +.fa-circle-arrow-left::before { + content: "\f0a8"; } + +.fa-arrow-circle-left::before { + content: "\f0a8"; } + +.fa-group-arrows-rotate::before { + content: "\e4f6"; } + +.fa-bowl-food::before { + content: "\e4c6"; } + +.fa-candy-cane::before { + content: "\f786"; } + +.fa-arrow-down-wide-short::before { + content: "\f160"; } + +.fa-sort-amount-asc::before { + content: "\f160"; } + +.fa-sort-amount-down::before { + content: "\f160"; } + +.fa-cloud-bolt::before { + content: "\f76c"; } + +.fa-thunderstorm::before { + content: "\f76c"; } + +.fa-text-slash::before { + content: "\f87d"; } + +.fa-remove-format::before { + content: "\f87d"; } + +.fa-face-smile-wink::before { + content: "\f4da"; } + +.fa-smile-wink::before { + content: "\f4da"; } + +.fa-file-word::before { + content: "\f1c2"; } + +.fa-file-powerpoint::before { + content: "\f1c4"; } + +.fa-arrows-left-right::before { + content: "\f07e"; } + +.fa-arrows-h::before { + content: "\f07e"; } + +.fa-house-lock::before { + content: "\e510"; } + +.fa-cloud-arrow-down::before { + content: "\f0ed"; } + +.fa-cloud-download::before { + content: "\f0ed"; } + +.fa-cloud-download-alt::before { + content: "\f0ed"; } + +.fa-children::before { + content: "\e4e1"; } + +.fa-chalkboard::before { + content: "\f51b"; } + +.fa-blackboard::before { + content: "\f51b"; } + +.fa-user-large-slash::before { + content: "\f4fa"; } + +.fa-user-alt-slash::before { + content: "\f4fa"; } + +.fa-envelope-open::before { + content: "\f2b6"; } + +.fa-handshake-simple-slash::before { + content: "\e05f"; } + +.fa-handshake-alt-slash::before { + content: "\e05f"; } + +.fa-mattress-pillow::before { + content: "\e525"; } + +.fa-guarani-sign::before { + content: "\e19a"; } + +.fa-arrows-rotate::before { + content: "\f021"; } + +.fa-refresh::before { + content: "\f021"; } + +.fa-sync::before { + content: "\f021"; } + +.fa-fire-extinguisher::before { + content: "\f134"; } + +.fa-cruzeiro-sign::before { + content: "\e152"; } + +.fa-greater-than-equal::before { + content: "\f532"; } + +.fa-shield-halved::before { + content: "\f3ed"; } + +.fa-shield-alt::before { + content: "\f3ed"; } + +.fa-book-atlas::before { + content: "\f558"; } + +.fa-atlas::before { + content: "\f558"; } + +.fa-virus::before { + content: "\e074"; } + +.fa-envelope-circle-check::before { + content: "\e4e8"; } + +.fa-layer-group::before { + content: "\f5fd"; } + +.fa-arrows-to-dot::before { + content: "\e4be"; } + +.fa-archway::before { + content: "\f557"; } + +.fa-heart-circle-check::before { + content: "\e4fd"; } + +.fa-house-chimney-crack::before { + content: "\f6f1"; } + +.fa-house-damage::before { + content: "\f6f1"; } + +.fa-file-zipper::before { + content: "\f1c6"; } + +.fa-file-archive::before { + content: "\f1c6"; } + +.fa-square::before { + content: "\f0c8"; } + +.fa-martini-glass-empty::before { + content: "\f000"; } + +.fa-glass-martini::before { + content: "\f000"; } + +.fa-couch::before { + content: "\f4b8"; } + +.fa-cedi-sign::before { + content: "\e0df"; } + +.fa-italic::before { + content: "\f033"; } + +.fa-church::before { + content: "\f51d"; } + +.fa-comments-dollar::before { + content: "\f653"; } + +.fa-democrat::before { + content: "\f747"; } + +.fa-z::before { + content: "\5a"; } + +.fa-person-skiing::before { + content: "\f7c9"; } + +.fa-skiing::before { + content: "\f7c9"; } + +.fa-road-lock::before { + content: "\e567"; } + +.fa-a::before { + content: "\41"; } + +.fa-temperature-arrow-down::before { + content: "\e03f"; } + +.fa-temperature-down::before { + content: "\e03f"; } + +.fa-feather-pointed::before { + content: "\f56b"; } + +.fa-feather-alt::before { + content: "\f56b"; } + +.fa-p::before { + content: "\50"; } + +.fa-snowflake::before { + content: "\f2dc"; } + +.fa-newspaper::before { + content: "\f1ea"; } + +.fa-rectangle-ad::before { + content: "\f641"; } + +.fa-ad::before { + content: "\f641"; } + +.fa-circle-arrow-right::before { + content: "\f0a9"; } + +.fa-arrow-circle-right::before { + content: "\f0a9"; } + +.fa-filter-circle-xmark::before { + content: "\e17b"; } + +.fa-locust::before { + content: "\e520"; } + +.fa-sort::before { + content: "\f0dc"; } + +.fa-unsorted::before { + content: "\f0dc"; } + +.fa-list-ol::before { + content: "\f0cb"; } + +.fa-list-1-2::before { + content: "\f0cb"; } + +.fa-list-numeric::before { + content: "\f0cb"; } + +.fa-person-dress-burst::before { + content: "\e544"; } + +.fa-money-check-dollar::before { + content: "\f53d"; } + +.fa-money-check-alt::before { + content: "\f53d"; } + +.fa-vector-square::before { + content: "\f5cb"; } + +.fa-bread-slice::before { + content: "\f7ec"; } + +.fa-language::before { + content: "\f1ab"; } + +.fa-face-kiss-wink-heart::before { + content: "\f598"; } + +.fa-kiss-wink-heart::before { + content: "\f598"; } + +.fa-filter::before { + content: "\f0b0"; } + +.fa-question::before { + content: "\3f"; } + +.fa-file-signature::before { + content: "\f573"; } + +.fa-up-down-left-right::before { + content: "\f0b2"; } + +.fa-arrows-alt::before { + content: "\f0b2"; } + +.fa-house-chimney-user::before { + content: "\e065"; } + +.fa-hand-holding-heart::before { + content: "\f4be"; } + +.fa-puzzle-piece::before { + content: "\f12e"; } + +.fa-money-check::before { + content: "\f53c"; } + +.fa-star-half-stroke::before { + content: "\f5c0"; } + +.fa-star-half-alt::before { + content: "\f5c0"; } + +.fa-code::before { + content: "\f121"; } + +.fa-whiskey-glass::before { + content: "\f7a0"; } + +.fa-glass-whiskey::before { + content: "\f7a0"; } + +.fa-building-circle-exclamation::before { + content: "\e4d3"; } + +.fa-magnifying-glass-chart::before { + content: "\e522"; } + +.fa-arrow-up-right-from-square::before { + content: "\f08e"; } + +.fa-external-link::before { + content: "\f08e"; } + +.fa-cubes-stacked::before { + content: "\e4e6"; } + +.fa-won-sign::before { + content: "\f159"; } + +.fa-krw::before { + content: "\f159"; } + +.fa-won::before { + content: "\f159"; } + +.fa-virus-covid::before { + content: "\e4a8"; } + +.fa-austral-sign::before { + content: "\e0a9"; } + +.fa-f::before { + content: "\46"; } + +.fa-leaf::before { + content: "\f06c"; } + +.fa-road::before { + content: "\f018"; } + +.fa-taxi::before { + content: "\f1ba"; } + +.fa-cab::before { + content: "\f1ba"; } + +.fa-person-circle-plus::before { + content: "\e541"; } + +.fa-chart-pie::before { + content: "\f200"; } + +.fa-pie-chart::before { + content: "\f200"; } + +.fa-bolt-lightning::before { + content: "\e0b7"; } + +.fa-sack-xmark::before { + content: "\e56a"; } + +.fa-file-excel::before { + content: "\f1c3"; } + +.fa-file-contract::before { + content: "\f56c"; } + +.fa-fish-fins::before { + content: "\e4f2"; } + +.fa-building-flag::before { + content: "\e4d5"; } + +.fa-face-grin-beam::before { + content: "\f582"; } + +.fa-grin-beam::before { + content: "\f582"; } + +.fa-object-ungroup::before { + content: "\f248"; } + +.fa-poop::before { + content: "\f619"; } + +.fa-location-pin::before { + content: "\f041"; } + +.fa-map-marker::before { + content: "\f041"; } + +.fa-kaaba::before { + content: "\f66b"; } + +.fa-toilet-paper::before { + content: "\f71e"; } + +.fa-helmet-safety::before { + content: "\f807"; } + +.fa-hard-hat::before { + content: "\f807"; } + +.fa-hat-hard::before { + content: "\f807"; } + +.fa-eject::before { + content: "\f052"; } + +.fa-circle-right::before { + content: "\f35a"; } + +.fa-arrow-alt-circle-right::before { + content: "\f35a"; } + +.fa-plane-circle-check::before { + content: "\e555"; } + +.fa-face-rolling-eyes::before { + content: "\f5a5"; } + +.fa-meh-rolling-eyes::before { + content: "\f5a5"; } + +.fa-object-group::before { + content: "\f247"; } + +.fa-chart-line::before { + content: "\f201"; } + +.fa-line-chart::before { + content: "\f201"; } + +.fa-mask-ventilator::before { + content: "\e524"; } + +.fa-arrow-right::before { + content: "\f061"; } + +.fa-signs-post::before { + content: "\f277"; } + +.fa-map-signs::before { + content: "\f277"; } + +.fa-cash-register::before { + content: "\f788"; } + +.fa-person-circle-question::before { + content: "\e542"; } + +.fa-h::before { + content: "\48"; } + +.fa-tarp::before { + content: "\e57b"; } + +.fa-screwdriver-wrench::before { + content: "\f7d9"; } + +.fa-tools::before { + content: "\f7d9"; } + +.fa-arrows-to-eye::before { + content: "\e4bf"; } + +.fa-plug-circle-bolt::before { + content: "\e55b"; } + +.fa-heart::before { + content: "\f004"; } + +.fa-mars-and-venus::before { + content: "\f224"; } + +.fa-house-user::before { + content: "\e1b0"; } + +.fa-home-user::before { + content: "\e1b0"; } + +.fa-dumpster-fire::before { + content: "\f794"; } + +.fa-house-crack::before { + content: "\e3b1"; } + +.fa-martini-glass-citrus::before { + content: "\f561"; } + +.fa-cocktail::before { + content: "\f561"; } + +.fa-face-surprise::before { + content: "\f5c2"; } + +.fa-surprise::before { + content: "\f5c2"; } + +.fa-bottle-water::before { + content: "\e4c5"; } + +.fa-circle-pause::before { + content: "\f28b"; } + +.fa-pause-circle::before { + content: "\f28b"; } + +.fa-toilet-paper-slash::before { + content: "\e072"; } + +.fa-apple-whole::before { + content: "\f5d1"; } + +.fa-apple-alt::before { + content: "\f5d1"; } + +.fa-kitchen-set::before { + content: "\e51a"; } + +.fa-r::before { + content: "\52"; } + +.fa-temperature-quarter::before { + content: "\f2ca"; } + +.fa-temperature-1::before { + content: "\f2ca"; } + +.fa-thermometer-1::before { + content: "\f2ca"; } + +.fa-thermometer-quarter::before { + content: "\f2ca"; } + +.fa-cube::before { + content: "\f1b2"; } + +.fa-bitcoin-sign::before { + content: "\e0b4"; } + +.fa-shield-dog::before { + content: "\e573"; } + +.fa-solar-panel::before { + content: "\f5ba"; } + +.fa-lock-open::before { + content: "\f3c1"; } + +.fa-elevator::before { + content: "\e16d"; } + +.fa-money-bill-transfer::before { + content: "\e528"; } + +.fa-money-bill-trend-up::before { + content: "\e529"; } + +.fa-house-flood-water-circle-arrow-right::before { + content: "\e50f"; } + +.fa-square-poll-horizontal::before { + content: "\f682"; } + +.fa-poll-h::before { + content: "\f682"; } + +.fa-circle::before { + content: "\f111"; } + +.fa-backward-fast::before { + content: "\f049"; } + +.fa-fast-backward::before { + content: "\f049"; } + +.fa-recycle::before { + content: "\f1b8"; } + +.fa-user-astronaut::before { + content: "\f4fb"; } + +.fa-plane-slash::before { + content: "\e069"; } + +.fa-trademark::before { + content: "\f25c"; } + +.fa-basketball::before { + content: "\f434"; } + +.fa-basketball-ball::before { + content: "\f434"; } + +.fa-satellite-dish::before { + content: "\f7c0"; } + +.fa-circle-up::before { + content: "\f35b"; } + +.fa-arrow-alt-circle-up::before { + content: "\f35b"; } + +.fa-mobile-screen-button::before { + content: "\f3cd"; } + +.fa-mobile-alt::before { + content: "\f3cd"; } + +.fa-volume-high::before { + content: "\f028"; } + +.fa-volume-up::before { + content: "\f028"; } + +.fa-users-rays::before { + content: "\e593"; } + +.fa-wallet::before { + content: "\f555"; } + +.fa-clipboard-check::before { + content: "\f46c"; } + +.fa-file-audio::before { + content: "\f1c7"; } + +.fa-burger::before { + content: "\f805"; } + +.fa-hamburger::before { + content: "\f805"; } + +.fa-wrench::before { + content: "\f0ad"; } + +.fa-bugs::before { + content: "\e4d0"; } + +.fa-rupee-sign::before { + content: "\f156"; } + +.fa-rupee::before { + content: "\f156"; } + +.fa-file-image::before { + content: "\f1c5"; } + +.fa-circle-question::before { + content: "\f059"; } + +.fa-question-circle::before { + content: "\f059"; } + +.fa-plane-departure::before { + content: "\f5b0"; } + +.fa-handshake-slash::before { + content: "\e060"; } + +.fa-book-bookmark::before { + content: "\e0bb"; } + +.fa-code-branch::before { + content: "\f126"; } + +.fa-hat-cowboy::before { + content: "\f8c0"; } + +.fa-bridge::before { + content: "\e4c8"; } + +.fa-phone-flip::before { + content: "\f879"; } + +.fa-phone-alt::before { + content: "\f879"; } + +.fa-truck-front::before { + content: "\e2b7"; } + +.fa-cat::before { + content: "\f6be"; } + +.fa-anchor-circle-exclamation::before { + content: "\e4ab"; } + +.fa-truck-field::before { + content: "\e58d"; } + +.fa-route::before { + content: "\f4d7"; } + +.fa-clipboard-question::before { + content: "\e4e3"; } + +.fa-panorama::before { + content: "\e209"; } + +.fa-comment-medical::before { + content: "\f7f5"; } + +.fa-teeth-open::before { + content: "\f62f"; } + +.fa-file-circle-minus::before { + content: "\e4ed"; } + +.fa-tags::before { + content: "\f02c"; } + +.fa-wine-glass::before { + content: "\f4e3"; } + +.fa-forward-fast::before { + content: "\f050"; } + +.fa-fast-forward::before { + content: "\f050"; } + +.fa-face-meh-blank::before { + content: "\f5a4"; } + +.fa-meh-blank::before { + content: "\f5a4"; } + +.fa-square-parking::before { + content: "\f540"; } + +.fa-parking::before { + content: "\f540"; } + +.fa-house-signal::before { + content: "\e012"; } + +.fa-bars-progress::before { + content: "\f828"; } + +.fa-tasks-alt::before { + content: "\f828"; } + +.fa-faucet-drip::before { + content: "\e006"; } + +.fa-cart-flatbed::before { + content: "\f474"; } + +.fa-dolly-flatbed::before { + content: "\f474"; } + +.fa-ban-smoking::before { + content: "\f54d"; } + +.fa-smoking-ban::before { + content: "\f54d"; } + +.fa-terminal::before { + content: "\f120"; } + +.fa-mobile-button::before { + content: "\f10b"; } + +.fa-house-medical-flag::before { + content: "\e514"; } + +.fa-basket-shopping::before { + content: "\f291"; } + +.fa-shopping-basket::before { + content: "\f291"; } + +.fa-tape::before { + content: "\f4db"; } + +.fa-bus-simple::before { + content: "\f55e"; } + +.fa-bus-alt::before { + content: "\f55e"; } + +.fa-eye::before { + content: "\f06e"; } + +.fa-face-sad-cry::before { + content: "\f5b3"; } + +.fa-sad-cry::before { + content: "\f5b3"; } + +.fa-audio-description::before { + content: "\f29e"; } + +.fa-person-military-to-person::before { + content: "\e54c"; } + +.fa-file-shield::before { + content: "\e4f0"; } + +.fa-user-slash::before { + content: "\f506"; } + +.fa-pen::before { + content: "\f304"; } + +.fa-tower-observation::before { + content: "\e586"; } + +.fa-file-code::before { + content: "\f1c9"; } + +.fa-signal::before { + content: "\f012"; } + +.fa-signal-5::before { + content: "\f012"; } + +.fa-signal-perfect::before { + content: "\f012"; } + +.fa-bus::before { + content: "\f207"; } + +.fa-heart-circle-xmark::before { + content: "\e501"; } + +.fa-house-chimney::before { + content: "\e3af"; } + +.fa-home-lg::before { + content: "\e3af"; } + +.fa-window-maximize::before { + content: "\f2d0"; } + +.fa-face-frown::before { + content: "\f119"; } + +.fa-frown::before { + content: "\f119"; } + +.fa-prescription::before { + content: "\f5b1"; } + +.fa-shop::before { + content: "\f54f"; } + +.fa-store-alt::before { + content: "\f54f"; } + +.fa-floppy-disk::before { + content: "\f0c7"; } + +.fa-save::before { + content: "\f0c7"; } + +.fa-vihara::before { + content: "\f6a7"; } + +.fa-scale-unbalanced::before { + content: "\f515"; } + +.fa-balance-scale-left::before { + content: "\f515"; } + +.fa-sort-up::before { + content: "\f0de"; } + +.fa-sort-asc::before { + content: "\f0de"; } + +.fa-comment-dots::before { + content: "\f4ad"; } + +.fa-commenting::before { + content: "\f4ad"; } + +.fa-plant-wilt::before { + content: "\e5aa"; } + +.fa-diamond::before { + content: "\f219"; } + +.fa-face-grin-squint::before { + content: "\f585"; } + +.fa-grin-squint::before { + content: "\f585"; } + +.fa-hand-holding-dollar::before { + content: "\f4c0"; } + +.fa-hand-holding-usd::before { + content: "\f4c0"; } + +.fa-bacterium::before { + content: "\e05a"; } + +.fa-hand-pointer::before { + content: "\f25a"; } + +.fa-drum-steelpan::before { + content: "\f56a"; } + +.fa-hand-scissors::before { + content: "\f257"; } + +.fa-hands-praying::before { + content: "\f684"; } + +.fa-praying-hands::before { + content: "\f684"; } + +.fa-arrow-rotate-right::before { + content: "\f01e"; } + +.fa-arrow-right-rotate::before { + content: "\f01e"; } + +.fa-arrow-rotate-forward::before { + content: "\f01e"; } + +.fa-redo::before { + content: "\f01e"; } + +.fa-biohazard::before { + content: "\f780"; } + +.fa-location-crosshairs::before { + content: "\f601"; } + +.fa-location::before { + content: "\f601"; } + +.fa-mars-double::before { + content: "\f227"; } + +.fa-child-dress::before { + content: "\e59c"; } + +.fa-users-between-lines::before { + content: "\e591"; } + +.fa-lungs-virus::before { + content: "\e067"; } + +.fa-face-grin-tears::before { + content: "\f588"; } + +.fa-grin-tears::before { + content: "\f588"; } + +.fa-phone::before { + content: "\f095"; } + +.fa-calendar-xmark::before { + content: "\f273"; } + +.fa-calendar-times::before { + content: "\f273"; } + +.fa-child-reaching::before { + content: "\e59d"; } + +.fa-head-side-virus::before { + content: "\e064"; } + +.fa-user-gear::before { + content: "\f4fe"; } + +.fa-user-cog::before { + content: "\f4fe"; } + +.fa-arrow-up-1-9::before { + content: "\f163"; } + +.fa-sort-numeric-up::before { + content: "\f163"; } + +.fa-door-closed::before { + content: "\f52a"; } + +.fa-shield-virus::before { + content: "\e06c"; } + +.fa-dice-six::before { + content: "\f526"; } + +.fa-mosquito-net::before { + content: "\e52c"; } + +.fa-bridge-water::before { + content: "\e4ce"; } + +.fa-person-booth::before { + content: "\f756"; } + +.fa-text-width::before { + content: "\f035"; } + +.fa-hat-wizard::before { + content: "\f6e8"; } + +.fa-pen-fancy::before { + content: "\f5ac"; } + +.fa-person-digging::before { + content: "\f85e"; } + +.fa-digging::before { + content: "\f85e"; } + +.fa-trash::before { + content: "\f1f8"; } + +.fa-gauge-simple::before { + content: "\f629"; } + +.fa-gauge-simple-med::before { + content: "\f629"; } + +.fa-tachometer-average::before { + content: "\f629"; } + +.fa-book-medical::before { + content: "\f7e6"; } + +.fa-poo::before { + content: "\f2fe"; } + +.fa-quote-right::before { + content: "\f10e"; } + +.fa-quote-right-alt::before { + content: "\f10e"; } + +.fa-shirt::before { + content: "\f553"; } + +.fa-t-shirt::before { + content: "\f553"; } + +.fa-tshirt::before { + content: "\f553"; } + +.fa-cubes::before { + content: "\f1b3"; } + +.fa-divide::before { + content: "\f529"; } + +.fa-tenge-sign::before { + content: "\f7d7"; } + +.fa-tenge::before { + content: "\f7d7"; } + +.fa-headphones::before { + content: "\f025"; } + +.fa-hands-holding::before { + content: "\f4c2"; } + +.fa-hands-clapping::before { + content: "\e1a8"; } + +.fa-republican::before { + content: "\f75e"; } + +.fa-arrow-left::before { + content: "\f060"; } + +.fa-person-circle-xmark::before { + content: "\e543"; } + +.fa-ruler::before { + content: "\f545"; } + +.fa-align-left::before { + content: "\f036"; } + +.fa-dice-d6::before { + content: "\f6d1"; } + +.fa-restroom::before { + content: "\f7bd"; } + +.fa-j::before { + content: "\4a"; } + +.fa-users-viewfinder::before { + content: "\e595"; } + +.fa-file-video::before { + content: "\f1c8"; } + +.fa-up-right-from-square::before { + content: "\f35d"; } + +.fa-external-link-alt::before { + content: "\f35d"; } + +.fa-table-cells::before { + content: "\f00a"; } + +.fa-th::before { + content: "\f00a"; } + +.fa-file-pdf::before { + content: "\f1c1"; } + +.fa-book-bible::before { + content: "\f647"; } + +.fa-bible::before { + content: "\f647"; } + +.fa-o::before { + content: "\4f"; } + +.fa-suitcase-medical::before { + content: "\f0fa"; } + +.fa-medkit::before { + content: "\f0fa"; } + +.fa-user-secret::before { + content: "\f21b"; } + +.fa-otter::before { + content: "\f700"; } + +.fa-person-dress::before { + content: "\f182"; } + +.fa-female::before { + content: "\f182"; } + +.fa-comment-dollar::before { + content: "\f651"; } + +.fa-business-time::before { + content: "\f64a"; } + +.fa-briefcase-clock::before { + content: "\f64a"; } + +.fa-table-cells-large::before { + content: "\f009"; } + +.fa-th-large::before { + content: "\f009"; } + +.fa-book-tanakh::before { + content: "\f827"; } + +.fa-tanakh::before { + content: "\f827"; } + +.fa-phone-volume::before { + content: "\f2a0"; } + +.fa-volume-control-phone::before { + content: "\f2a0"; } + +.fa-hat-cowboy-side::before { + content: "\f8c1"; } + +.fa-clipboard-user::before { + content: "\f7f3"; } + +.fa-child::before { + content: "\f1ae"; } + +.fa-lira-sign::before { + content: "\f195"; } + +.fa-satellite::before { + content: "\f7bf"; } + +.fa-plane-lock::before { + content: "\e558"; } + +.fa-tag::before { + content: "\f02b"; } + +.fa-comment::before { + content: "\f075"; } + +.fa-cake-candles::before { + content: "\f1fd"; } + +.fa-birthday-cake::before { + content: "\f1fd"; } + +.fa-cake::before { + content: "\f1fd"; } + +.fa-envelope::before { + content: "\f0e0"; } + +.fa-angles-up::before { + content: "\f102"; } + +.fa-angle-double-up::before { + content: "\f102"; } + +.fa-paperclip::before { + content: "\f0c6"; } + +.fa-arrow-right-to-city::before { + content: "\e4b3"; } + +.fa-ribbon::before { + content: "\f4d6"; } + +.fa-lungs::before { + content: "\f604"; } + +.fa-arrow-up-9-1::before { + content: "\f887"; } + +.fa-sort-numeric-up-alt::before { + content: "\f887"; } + +.fa-litecoin-sign::before { + content: "\e1d3"; } + +.fa-border-none::before { + content: "\f850"; } + +.fa-circle-nodes::before { + content: "\e4e2"; } + +.fa-parachute-box::before { + content: "\f4cd"; } + +.fa-indent::before { + content: "\f03c"; } + +.fa-truck-field-un::before { + content: "\e58e"; } + +.fa-hourglass::before { + content: "\f254"; } + +.fa-hourglass-empty::before { + content: "\f254"; } + +.fa-mountain::before { + content: "\f6fc"; } + +.fa-user-doctor::before { + content: "\f0f0"; } + +.fa-user-md::before { + content: "\f0f0"; } + +.fa-circle-info::before { + content: "\f05a"; } + +.fa-info-circle::before { + content: "\f05a"; } + +.fa-cloud-meatball::before { + content: "\f73b"; } + +.fa-camera::before { + content: "\f030"; } + +.fa-camera-alt::before { + content: "\f030"; } + +.fa-square-virus::before { + content: "\e578"; } + +.fa-meteor::before { + content: "\f753"; } + +.fa-car-on::before { + content: "\e4dd"; } + +.fa-sleigh::before { + content: "\f7cc"; } + +.fa-arrow-down-1-9::before { + content: "\f162"; } + +.fa-sort-numeric-asc::before { + content: "\f162"; } + +.fa-sort-numeric-down::before { + content: "\f162"; } + +.fa-hand-holding-droplet::before { + content: "\f4c1"; } + +.fa-hand-holding-water::before { + content: "\f4c1"; } + +.fa-water::before { + content: "\f773"; } + +.fa-calendar-check::before { + content: "\f274"; } + +.fa-braille::before { + content: "\f2a1"; } + +.fa-prescription-bottle-medical::before { + content: "\f486"; } + +.fa-prescription-bottle-alt::before { + content: "\f486"; } + +.fa-landmark::before { + content: "\f66f"; } + +.fa-truck::before { + content: "\f0d1"; } + +.fa-crosshairs::before { + content: "\f05b"; } + +.fa-person-cane::before { + content: "\e53c"; } + +.fa-tent::before { + content: "\e57d"; } + +.fa-vest-patches::before { + content: "\e086"; } + +.fa-check-double::before { + content: "\f560"; } + +.fa-arrow-down-a-z::before { + content: "\f15d"; } + +.fa-sort-alpha-asc::before { + content: "\f15d"; } + +.fa-sort-alpha-down::before { + content: "\f15d"; } + +.fa-money-bill-wheat::before { + content: "\e52a"; } + +.fa-cookie::before { + content: "\f563"; } + +.fa-arrow-rotate-left::before { + content: "\f0e2"; } + +.fa-arrow-left-rotate::before { + content: "\f0e2"; } + +.fa-arrow-rotate-back::before { + content: "\f0e2"; } + +.fa-arrow-rotate-backward::before { + content: "\f0e2"; } + +.fa-undo::before { + content: "\f0e2"; } + +.fa-hard-drive::before { + content: "\f0a0"; } + +.fa-hdd::before { + content: "\f0a0"; } + +.fa-face-grin-squint-tears::before { + content: "\f586"; } + +.fa-grin-squint-tears::before { + content: "\f586"; } + +.fa-dumbbell::before { + content: "\f44b"; } + +.fa-rectangle-list::before { + content: "\f022"; } + +.fa-list-alt::before { + content: "\f022"; } + +.fa-tarp-droplet::before { + content: "\e57c"; } + +.fa-house-medical-circle-check::before { + content: "\e511"; } + +.fa-person-skiing-nordic::before { + content: "\f7ca"; } + +.fa-skiing-nordic::before { + content: "\f7ca"; } + +.fa-calendar-plus::before { + content: "\f271"; } + +.fa-plane-arrival::before { + content: "\f5af"; } + +.fa-circle-left::before { + content: "\f359"; } + +.fa-arrow-alt-circle-left::before { + content: "\f359"; } + +.fa-train-subway::before { + content: "\f239"; } + +.fa-subway::before { + content: "\f239"; } + +.fa-chart-gantt::before { + content: "\e0e4"; } + +.fa-indian-rupee-sign::before { + content: "\e1bc"; } + +.fa-indian-rupee::before { + content: "\e1bc"; } + +.fa-inr::before { + content: "\e1bc"; } + +.fa-crop-simple::before { + content: "\f565"; } + +.fa-crop-alt::before { + content: "\f565"; } + +.fa-money-bill-1::before { + content: "\f3d1"; } + +.fa-money-bill-alt::before { + content: "\f3d1"; } + +.fa-left-long::before { + content: "\f30a"; } + +.fa-long-arrow-alt-left::before { + content: "\f30a"; } + +.fa-dna::before { + content: "\f471"; } + +.fa-virus-slash::before { + content: "\e075"; } + +.fa-minus::before { + content: "\f068"; } + +.fa-subtract::before { + content: "\f068"; } + +.fa-chess::before { + content: "\f439"; } + +.fa-arrow-left-long::before { + content: "\f177"; } + +.fa-long-arrow-left::before { + content: "\f177"; } + +.fa-plug-circle-check::before { + content: "\e55c"; } + +.fa-street-view::before { + content: "\f21d"; } + +.fa-franc-sign::before { + content: "\e18f"; } + +.fa-volume-off::before { + content: "\f026"; } + +.fa-hands-asl-interpreting::before { + content: "\f2a3"; } + +.fa-american-sign-language-interpreting::before { + content: "\f2a3"; } + +.fa-asl-interpreting::before { + content: "\f2a3"; } + +.fa-hands-american-sign-language-interpreting::before { + content: "\f2a3"; } + +.fa-gear::before { + content: "\f013"; } + +.fa-cog::before { + content: "\f013"; } + +.fa-droplet-slash::before { + content: "\f5c7"; } + +.fa-tint-slash::before { + content: "\f5c7"; } + +.fa-mosque::before { + content: "\f678"; } + +.fa-mosquito::before { + content: "\e52b"; } + +.fa-star-of-david::before { + content: "\f69a"; } + +.fa-person-military-rifle::before { + content: "\e54b"; } + +.fa-cart-shopping::before { + content: "\f07a"; } + +.fa-shopping-cart::before { + content: "\f07a"; } + +.fa-vials::before { + content: "\f493"; } + +.fa-plug-circle-plus::before { + content: "\e55f"; } + +.fa-place-of-worship::before { + content: "\f67f"; } + +.fa-grip-vertical::before { + content: "\f58e"; } + +.fa-arrow-turn-up::before { + content: "\f148"; } + +.fa-level-up::before { + content: "\f148"; } + +.fa-u::before { + content: "\55"; } + +.fa-square-root-variable::before { + content: "\f698"; } + +.fa-square-root-alt::before { + content: "\f698"; } + +.fa-clock::before { + content: "\f017"; } + +.fa-clock-four::before { + content: "\f017"; } + +.fa-backward-step::before { + content: "\f048"; } + +.fa-step-backward::before { + content: "\f048"; } + +.fa-pallet::before { + content: "\f482"; } + +.fa-faucet::before { + content: "\e005"; } + +.fa-baseball-bat-ball::before { + content: "\f432"; } + +.fa-s::before { + content: "\53"; } + +.fa-timeline::before { + content: "\e29c"; } + +.fa-keyboard::before { + content: "\f11c"; } + +.fa-caret-down::before { + content: "\f0d7"; } + +.fa-house-chimney-medical::before { + content: "\f7f2"; } + +.fa-clinic-medical::before { + content: "\f7f2"; } + +.fa-temperature-three-quarters::before { + content: "\f2c8"; } + +.fa-temperature-3::before { + content: "\f2c8"; } + +.fa-thermometer-3::before { + content: "\f2c8"; } + +.fa-thermometer-three-quarters::before { + content: "\f2c8"; } + +.fa-mobile-screen::before { + content: "\f3cf"; } + +.fa-mobile-android-alt::before { + content: "\f3cf"; } + +.fa-plane-up::before { + content: "\e22d"; } + +.fa-piggy-bank::before { + content: "\f4d3"; } + +.fa-battery-half::before { + content: "\f242"; } + +.fa-battery-3::before { + content: "\f242"; } + +.fa-mountain-city::before { + content: "\e52e"; } + +.fa-coins::before { + content: "\f51e"; } + +.fa-khanda::before { + content: "\f66d"; } + +.fa-sliders::before { + content: "\f1de"; } + +.fa-sliders-h::before { + content: "\f1de"; } + +.fa-folder-tree::before { + content: "\f802"; } + +.fa-network-wired::before { + content: "\f6ff"; } + +.fa-map-pin::before { + content: "\f276"; } + +.fa-hamsa::before { + content: "\f665"; } + +.fa-cent-sign::before { + content: "\e3f5"; } + +.fa-flask::before { + content: "\f0c3"; } + +.fa-person-pregnant::before { + content: "\e31e"; } + +.fa-wand-sparkles::before { + content: "\f72b"; } + +.fa-ellipsis-vertical::before { + content: "\f142"; } + +.fa-ellipsis-v::before { + content: "\f142"; } + +.fa-ticket::before { + content: "\f145"; } + +.fa-power-off::before { + content: "\f011"; } + +.fa-right-long::before { + content: "\f30b"; } + +.fa-long-arrow-alt-right::before { + content: "\f30b"; } + +.fa-flag-usa::before { + content: "\f74d"; } + +.fa-laptop-file::before { + content: "\e51d"; } + +.fa-tty::before { + content: "\f1e4"; } + +.fa-teletype::before { + content: "\f1e4"; } + +.fa-diagram-next::before { + content: "\e476"; } + +.fa-person-rifle::before { + content: "\e54e"; } + +.fa-house-medical-circle-exclamation::before { + content: "\e512"; } + +.fa-closed-captioning::before { + content: "\f20a"; } + +.fa-person-hiking::before { + content: "\f6ec"; } + +.fa-hiking::before { + content: "\f6ec"; } + +.fa-venus-double::before { + content: "\f226"; } + +.fa-images::before { + content: "\f302"; } + +.fa-calculator::before { + content: "\f1ec"; } + +.fa-people-pulling::before { + content: "\e535"; } + +.fa-n::before { + content: "\4e"; } + +.fa-cable-car::before { + content: "\f7da"; } + +.fa-tram::before { + content: "\f7da"; } + +.fa-cloud-rain::before { + content: "\f73d"; } + +.fa-building-circle-xmark::before { + content: "\e4d4"; } + +.fa-ship::before { + content: "\f21a"; } + +.fa-arrows-down-to-line::before { + content: "\e4b8"; } + +.fa-download::before { + content: "\f019"; } + +.fa-face-grin::before { + content: "\f580"; } + +.fa-grin::before { + content: "\f580"; } + +.fa-delete-left::before { + content: "\f55a"; } + +.fa-backspace::before { + content: "\f55a"; } + +.fa-eye-dropper::before { + content: "\f1fb"; } + +.fa-eye-dropper-empty::before { + content: "\f1fb"; } + +.fa-eyedropper::before { + content: "\f1fb"; } + +.fa-file-circle-check::before { + content: "\e5a0"; } + +.fa-forward::before { + content: "\f04e"; } + +.fa-mobile::before { + content: "\f3ce"; } + +.fa-mobile-android::before { + content: "\f3ce"; } + +.fa-mobile-phone::before { + content: "\f3ce"; } + +.fa-face-meh::before { + content: "\f11a"; } + +.fa-meh::before { + content: "\f11a"; } + +.fa-align-center::before { + content: "\f037"; } + +.fa-book-skull::before { + content: "\f6b7"; } + +.fa-book-dead::before { + content: "\f6b7"; } + +.fa-id-card::before { + content: "\f2c2"; } + +.fa-drivers-license::before { + content: "\f2c2"; } + +.fa-outdent::before { + content: "\f03b"; } + +.fa-dedent::before { + content: "\f03b"; } + +.fa-heart-circle-exclamation::before { + content: "\e4fe"; } + +.fa-house::before { + content: "\f015"; } + +.fa-home::before { + content: "\f015"; } + +.fa-home-alt::before { + content: "\f015"; } + +.fa-home-lg-alt::before { + content: "\f015"; } + +.fa-calendar-week::before { + content: "\f784"; } + +.fa-laptop-medical::before { + content: "\f812"; } + +.fa-b::before { + content: "\42"; } + +.fa-file-medical::before { + content: "\f477"; } + +.fa-dice-one::before { + content: "\f525"; } + +.fa-kiwi-bird::before { + content: "\f535"; } + +.fa-arrow-right-arrow-left::before { + content: "\f0ec"; } + +.fa-exchange::before { + content: "\f0ec"; } + +.fa-rotate-right::before { + content: "\f2f9"; } + +.fa-redo-alt::before { + content: "\f2f9"; } + +.fa-rotate-forward::before { + content: "\f2f9"; } + +.fa-utensils::before { + content: "\f2e7"; } + +.fa-cutlery::before { + content: "\f2e7"; } + +.fa-arrow-up-wide-short::before { + content: "\f161"; } + +.fa-sort-amount-up::before { + content: "\f161"; } + +.fa-mill-sign::before { + content: "\e1ed"; } + +.fa-bowl-rice::before { + content: "\e2eb"; } + +.fa-skull::before { + content: "\f54c"; } + +.fa-tower-broadcast::before { + content: "\f519"; } + +.fa-broadcast-tower::before { + content: "\f519"; } + +.fa-truck-pickup::before { + content: "\f63c"; } + +.fa-up-long::before { + content: "\f30c"; } + +.fa-long-arrow-alt-up::before { + content: "\f30c"; } + +.fa-stop::before { + content: "\f04d"; } + +.fa-code-merge::before { + content: "\f387"; } + +.fa-upload::before { + content: "\f093"; } + +.fa-hurricane::before { + content: "\f751"; } + +.fa-mound::before { + content: "\e52d"; } + +.fa-toilet-portable::before { + content: "\e583"; } + +.fa-compact-disc::before { + content: "\f51f"; } + +.fa-file-arrow-down::before { + content: "\f56d"; } + +.fa-file-download::before { + content: "\f56d"; } + +.fa-caravan::before { + content: "\f8ff"; } + +.fa-shield-cat::before { + content: "\e572"; } + +.fa-bolt::before { + content: "\f0e7"; } + +.fa-zap::before { + content: "\f0e7"; } + +.fa-glass-water::before { + content: "\e4f4"; } + +.fa-oil-well::before { + content: "\e532"; } + +.fa-vault::before { + content: "\e2c5"; } + +.fa-mars::before { + content: "\f222"; } + +.fa-toilet::before { + content: "\f7d8"; } + +.fa-plane-circle-xmark::before { + content: "\e557"; } + +.fa-yen-sign::before { + content: "\f157"; } + +.fa-cny::before { + content: "\f157"; } + +.fa-jpy::before { + content: "\f157"; } + +.fa-rmb::before { + content: "\f157"; } + +.fa-yen::before { + content: "\f157"; } + +.fa-ruble-sign::before { + content: "\f158"; } + +.fa-rouble::before { + content: "\f158"; } + +.fa-rub::before { + content: "\f158"; } + +.fa-ruble::before { + content: "\f158"; } + +.fa-sun::before { + content: "\f185"; } + +.fa-guitar::before { + content: "\f7a6"; } + +.fa-face-laugh-wink::before { + content: "\f59c"; } + +.fa-laugh-wink::before { + content: "\f59c"; } + +.fa-horse-head::before { + content: "\f7ab"; } + +.fa-bore-hole::before { + content: "\e4c3"; } + +.fa-industry::before { + content: "\f275"; } + +.fa-circle-down::before { + content: "\f358"; } + +.fa-arrow-alt-circle-down::before { + content: "\f358"; } + +.fa-arrows-turn-to-dots::before { + content: "\e4c1"; } + +.fa-florin-sign::before { + content: "\e184"; } + +.fa-arrow-down-short-wide::before { + content: "\f884"; } + +.fa-sort-amount-desc::before { + content: "\f884"; } + +.fa-sort-amount-down-alt::before { + content: "\f884"; } + +.fa-less-than::before { + content: "\3c"; } + +.fa-angle-down::before { + content: "\f107"; } + +.fa-car-tunnel::before { + content: "\e4de"; } + +.fa-head-side-cough::before { + content: "\e061"; } + +.fa-grip-lines::before { + content: "\f7a4"; } + +.fa-thumbs-down::before { + content: "\f165"; } + +.fa-user-lock::before { + content: "\f502"; } + +.fa-arrow-right-long::before { + content: "\f178"; } + +.fa-long-arrow-right::before { + content: "\f178"; } + +.fa-anchor-circle-xmark::before { + content: "\e4ac"; } + +.fa-ellipsis::before { + content: "\f141"; } + +.fa-ellipsis-h::before { + content: "\f141"; } + +.fa-chess-pawn::before { + content: "\f443"; } + +.fa-kit-medical::before { + content: "\f479"; } + +.fa-first-aid::before { + content: "\f479"; } + +.fa-person-through-window::before { + content: "\e5a9"; } + +.fa-toolbox::before { + content: "\f552"; } + +.fa-hands-holding-circle::before { + content: "\e4fb"; } + +.fa-bug::before { + content: "\f188"; } + +.fa-credit-card::before { + content: "\f09d"; } + +.fa-credit-card-alt::before { + content: "\f09d"; } + +.fa-car::before { + content: "\f1b9"; } + +.fa-automobile::before { + content: "\f1b9"; } + +.fa-hand-holding-hand::before { + content: "\e4f7"; } + +.fa-book-open-reader::before { + content: "\f5da"; } + +.fa-book-reader::before { + content: "\f5da"; } + +.fa-mountain-sun::before { + content: "\e52f"; } + +.fa-arrows-left-right-to-line::before { + content: "\e4ba"; } + +.fa-dice-d20::before { + content: "\f6cf"; } + +.fa-truck-droplet::before { + content: "\e58c"; } + +.fa-file-circle-xmark::before { + content: "\e5a1"; } + +.fa-temperature-arrow-up::before { + content: "\e040"; } + +.fa-temperature-up::before { + content: "\e040"; } + +.fa-medal::before { + content: "\f5a2"; } + +.fa-bed::before { + content: "\f236"; } + +.fa-square-h::before { + content: "\f0fd"; } + +.fa-h-square::before { + content: "\f0fd"; } + +.fa-podcast::before { + content: "\f2ce"; } + +.fa-temperature-full::before { + content: "\f2c7"; } + +.fa-temperature-4::before { + content: "\f2c7"; } + +.fa-thermometer-4::before { + content: "\f2c7"; } + +.fa-thermometer-full::before { + content: "\f2c7"; } + +.fa-bell::before { + content: "\f0f3"; } + +.fa-superscript::before { + content: "\f12b"; } + +.fa-plug-circle-xmark::before { + content: "\e560"; } + +.fa-star-of-life::before { + content: "\f621"; } + +.fa-phone-slash::before { + content: "\f3dd"; } + +.fa-paint-roller::before { + content: "\f5aa"; } + +.fa-handshake-angle::before { + content: "\f4c4"; } + +.fa-hands-helping::before { + content: "\f4c4"; } + +.fa-location-dot::before { + content: "\f3c5"; } + +.fa-map-marker-alt::before { + content: "\f3c5"; } + +.fa-file::before { + content: "\f15b"; } + +.fa-greater-than::before { + content: "\3e"; } + +.fa-person-swimming::before { + content: "\f5c4"; } + +.fa-swimmer::before { + content: "\f5c4"; } + +.fa-arrow-down::before { + content: "\f063"; } + +.fa-droplet::before { + content: "\f043"; } + +.fa-tint::before { + content: "\f043"; } + +.fa-eraser::before { + content: "\f12d"; } + +.fa-earth-americas::before { + content: "\f57d"; } + +.fa-earth::before { + content: "\f57d"; } + +.fa-earth-america::before { + content: "\f57d"; } + +.fa-globe-americas::before { + content: "\f57d"; } + +.fa-person-burst::before { + content: "\e53b"; } + +.fa-dove::before { + content: "\f4ba"; } + +.fa-battery-empty::before { + content: "\f244"; } + +.fa-battery-0::before { + content: "\f244"; } + +.fa-socks::before { + content: "\f696"; } + +.fa-inbox::before { + content: "\f01c"; } + +.fa-section::before { + content: "\e447"; } + +.fa-gauge-high::before { + content: "\f625"; } + +.fa-tachometer-alt::before { + content: "\f625"; } + +.fa-tachometer-alt-fast::before { + content: "\f625"; } + +.fa-envelope-open-text::before { + content: "\f658"; } + +.fa-hospital::before { + content: "\f0f8"; } + +.fa-hospital-alt::before { + content: "\f0f8"; } + +.fa-hospital-wide::before { + content: "\f0f8"; } + +.fa-wine-bottle::before { + content: "\f72f"; } + +.fa-chess-rook::before { + content: "\f447"; } + +.fa-bars-staggered::before { + content: "\f550"; } + +.fa-reorder::before { + content: "\f550"; } + +.fa-stream::before { + content: "\f550"; } + +.fa-dharmachakra::before { + content: "\f655"; } + +.fa-hotdog::before { + content: "\f80f"; } + +.fa-person-walking-with-cane::before { + content: "\f29d"; } + +.fa-blind::before { + content: "\f29d"; } + +.fa-drum::before { + content: "\f569"; } + +.fa-ice-cream::before { + content: "\f810"; } + +.fa-heart-circle-bolt::before { + content: "\e4fc"; } + +.fa-fax::before { + content: "\f1ac"; } + +.fa-paragraph::before { + content: "\f1dd"; } + +.fa-check-to-slot::before { + content: "\f772"; } + +.fa-vote-yea::before { + content: "\f772"; } + +.fa-star-half::before { + content: "\f089"; } + +.fa-boxes-stacked::before { + content: "\f468"; } + +.fa-boxes::before { + content: "\f468"; } + +.fa-boxes-alt::before { + content: "\f468"; } + +.fa-link::before { + content: "\f0c1"; } + +.fa-chain::before { + content: "\f0c1"; } + +.fa-ear-listen::before { + content: "\f2a2"; } + +.fa-assistive-listening-systems::before { + content: "\f2a2"; } + +.fa-tree-city::before { + content: "\e587"; } + +.fa-play::before { + content: "\f04b"; } + +.fa-font::before { + content: "\f031"; } + +.fa-rupiah-sign::before { + content: "\e23d"; } + +.fa-magnifying-glass::before { + content: "\f002"; } + +.fa-search::before { + content: "\f002"; } + +.fa-table-tennis-paddle-ball::before { + content: "\f45d"; } + +.fa-ping-pong-paddle-ball::before { + content: "\f45d"; } + +.fa-table-tennis::before { + content: "\f45d"; } + +.fa-person-dots-from-line::before { + content: "\f470"; } + +.fa-diagnoses::before { + content: "\f470"; } + +.fa-trash-can-arrow-up::before { + content: "\f82a"; } + +.fa-trash-restore-alt::before { + content: "\f82a"; } + +.fa-naira-sign::before { + content: "\e1f6"; } + +.fa-cart-arrow-down::before { + content: "\f218"; } + +.fa-walkie-talkie::before { + content: "\f8ef"; } + +.fa-file-pen::before { + content: "\f31c"; } + +.fa-file-edit::before { + content: "\f31c"; } + +.fa-receipt::before { + content: "\f543"; } + +.fa-square-pen::before { + content: "\f14b"; } + +.fa-pen-square::before { + content: "\f14b"; } + +.fa-pencil-square::before { + content: "\f14b"; } + +.fa-suitcase-rolling::before { + content: "\f5c1"; } + +.fa-person-circle-exclamation::before { + content: "\e53f"; } + +.fa-chevron-down::before { + content: "\f078"; } + +.fa-battery-full::before { + content: "\f240"; } + +.fa-battery::before { + content: "\f240"; } + +.fa-battery-5::before { + content: "\f240"; } + +.fa-skull-crossbones::before { + content: "\f714"; } + +.fa-code-compare::before { + content: "\e13a"; } + +.fa-list-ul::before { + content: "\f0ca"; } + +.fa-list-dots::before { + content: "\f0ca"; } + +.fa-school-lock::before { + content: "\e56f"; } + +.fa-tower-cell::before { + content: "\e585"; } + +.fa-down-long::before { + content: "\f309"; } + +.fa-long-arrow-alt-down::before { + content: "\f309"; } + +.fa-ranking-star::before { + content: "\e561"; } + +.fa-chess-king::before { + content: "\f43f"; } + +.fa-person-harassing::before { + content: "\e549"; } + +.fa-brazilian-real-sign::before { + content: "\e46c"; } + +.fa-landmark-dome::before { + content: "\f752"; } + +.fa-landmark-alt::before { + content: "\f752"; } + +.fa-arrow-up::before { + content: "\f062"; } + +.fa-tv::before { + content: "\f26c"; } + +.fa-television::before { + content: "\f26c"; } + +.fa-tv-alt::before { + content: "\f26c"; } + +.fa-shrimp::before { + content: "\e448"; } + +.fa-list-check::before { + content: "\f0ae"; } + +.fa-tasks::before { + content: "\f0ae"; } + +.fa-jug-detergent::before { + content: "\e519"; } + +.fa-circle-user::before { + content: "\f2bd"; } + +.fa-user-circle::before { + content: "\f2bd"; } + +.fa-user-shield::before { + content: "\f505"; } + +.fa-wind::before { + content: "\f72e"; } + +.fa-car-burst::before { + content: "\f5e1"; } + +.fa-car-crash::before { + content: "\f5e1"; } + +.fa-y::before { + content: "\59"; } + +.fa-person-snowboarding::before { + content: "\f7ce"; } + +.fa-snowboarding::before { + content: "\f7ce"; } + +.fa-truck-fast::before { + content: "\f48b"; } + +.fa-shipping-fast::before { + content: "\f48b"; } + +.fa-fish::before { + content: "\f578"; } + +.fa-user-graduate::before { + content: "\f501"; } + +.fa-circle-half-stroke::before { + content: "\f042"; } + +.fa-adjust::before { + content: "\f042"; } + +.fa-clapperboard::before { + content: "\e131"; } + +.fa-circle-radiation::before { + content: "\f7ba"; } + +.fa-radiation-alt::before { + content: "\f7ba"; } + +.fa-baseball::before { + content: "\f433"; } + +.fa-baseball-ball::before { + content: "\f433"; } + +.fa-jet-fighter-up::before { + content: "\e518"; } + +.fa-diagram-project::before { + content: "\f542"; } + +.fa-project-diagram::before { + content: "\f542"; } + +.fa-copy::before { + content: "\f0c5"; } + +.fa-volume-xmark::before { + content: "\f6a9"; } + +.fa-volume-mute::before { + content: "\f6a9"; } + +.fa-volume-times::before { + content: "\f6a9"; } + +.fa-hand-sparkles::before { + content: "\e05d"; } + +.fa-grip::before { + content: "\f58d"; } + +.fa-grip-horizontal::before { + content: "\f58d"; } + +.fa-share-from-square::before { + content: "\f14d"; } + +.fa-share-square::before { + content: "\f14d"; } + +.fa-child-combatant::before { + content: "\e4e0"; } + +.fa-child-rifle::before { + content: "\e4e0"; } + +.fa-gun::before { + content: "\e19b"; } + +.fa-square-phone::before { + content: "\f098"; } + +.fa-phone-square::before { + content: "\f098"; } + +.fa-plus::before { + content: "\2b"; } + +.fa-add::before { + content: "\2b"; } + +.fa-expand::before { + content: "\f065"; } + +.fa-computer::before { + content: "\e4e5"; } + +.fa-xmark::before { + content: "\f00d"; } + +.fa-close::before { + content: "\f00d"; } + +.fa-multiply::before { + content: "\f00d"; } + +.fa-remove::before { + content: "\f00d"; } + +.fa-times::before { + content: "\f00d"; } + +.fa-arrows-up-down-left-right::before { + content: "\f047"; } + +.fa-arrows::before { + content: "\f047"; } + +.fa-chalkboard-user::before { + content: "\f51c"; } + +.fa-chalkboard-teacher::before { + content: "\f51c"; } + +.fa-peso-sign::before { + content: "\e222"; } + +.fa-building-shield::before { + content: "\e4d8"; } + +.fa-baby::before { + content: "\f77c"; } + +.fa-users-line::before { + content: "\e592"; } + +.fa-quote-left::before { + content: "\f10d"; } + +.fa-quote-left-alt::before { + content: "\f10d"; } + +.fa-tractor::before { + content: "\f722"; } + +.fa-trash-arrow-up::before { + content: "\f829"; } + +.fa-trash-restore::before { + content: "\f829"; } + +.fa-arrow-down-up-lock::before { + content: "\e4b0"; } + +.fa-lines-leaning::before { + content: "\e51e"; } + +.fa-ruler-combined::before { + content: "\f546"; } + +.fa-copyright::before { + content: "\f1f9"; } + +.fa-equals::before { + content: "\3d"; } + +.fa-blender::before { + content: "\f517"; } + +.fa-teeth::before { + content: "\f62e"; } + +.fa-shekel-sign::before { + content: "\f20b"; } + +.fa-ils::before { + content: "\f20b"; } + +.fa-shekel::before { + content: "\f20b"; } + +.fa-sheqel::before { + content: "\f20b"; } + +.fa-sheqel-sign::before { + content: "\f20b"; } + +.fa-map::before { + content: "\f279"; } + +.fa-rocket::before { + content: "\f135"; } + +.fa-photo-film::before { + content: "\f87c"; } + +.fa-photo-video::before { + content: "\f87c"; } + +.fa-folder-minus::before { + content: "\f65d"; } + +.fa-store::before { + content: "\f54e"; } + +.fa-arrow-trend-up::before { + content: "\e098"; } + +.fa-plug-circle-minus::before { + content: "\e55e"; } + +.fa-sign-hanging::before { + content: "\f4d9"; } + +.fa-sign::before { + content: "\f4d9"; } + +.fa-bezier-curve::before { + content: "\f55b"; } + +.fa-bell-slash::before { + content: "\f1f6"; } + +.fa-tablet::before { + content: "\f3fb"; } + +.fa-tablet-android::before { + content: "\f3fb"; } + +.fa-school-flag::before { + content: "\e56e"; } + +.fa-fill::before { + content: "\f575"; } + +.fa-angle-up::before { + content: "\f106"; } + +.fa-drumstick-bite::before { + content: "\f6d7"; } + +.fa-holly-berry::before { + content: "\f7aa"; } + +.fa-chevron-left::before { + content: "\f053"; } + +.fa-bacteria::before { + content: "\e059"; } + +.fa-hand-lizard::before { + content: "\f258"; } + +.fa-notdef::before { + content: "\e1fe"; } + +.fa-disease::before { + content: "\f7fa"; } + +.fa-briefcase-medical::before { + content: "\f469"; } + +.fa-genderless::before { + content: "\f22d"; } + +.fa-chevron-right::before { + content: "\f054"; } + +.fa-retweet::before { + content: "\f079"; } + +.fa-car-rear::before { + content: "\f5de"; } + +.fa-car-alt::before { + content: "\f5de"; } + +.fa-pump-soap::before { + content: "\e06b"; } + +.fa-video-slash::before { + content: "\f4e2"; } + +.fa-battery-quarter::before { + content: "\f243"; } + +.fa-battery-2::before { + content: "\f243"; } + +.fa-radio::before { + content: "\f8d7"; } + +.fa-baby-carriage::before { + content: "\f77d"; } + +.fa-carriage-baby::before { + content: "\f77d"; } + +.fa-traffic-light::before { + content: "\f637"; } + +.fa-thermometer::before { + content: "\f491"; } + +.fa-vr-cardboard::before { + content: "\f729"; } + +.fa-hand-middle-finger::before { + content: "\f806"; } + +.fa-percent::before { + content: "\25"; } + +.fa-percentage::before { + content: "\25"; } + +.fa-truck-moving::before { + content: "\f4df"; } + +.fa-glass-water-droplet::before { + content: "\e4f5"; } + +.fa-display::before { + content: "\e163"; } + +.fa-face-smile::before { + content: "\f118"; } + +.fa-smile::before { + content: "\f118"; } + +.fa-thumbtack::before { + content: "\f08d"; } + +.fa-thumb-tack::before { + content: "\f08d"; } + +.fa-trophy::before { + content: "\f091"; } + +.fa-person-praying::before { + content: "\f683"; } + +.fa-pray::before { + content: "\f683"; } + +.fa-hammer::before { + content: "\f6e3"; } + +.fa-hand-peace::before { + content: "\f25b"; } + +.fa-rotate::before { + content: "\f2f1"; } + +.fa-sync-alt::before { + content: "\f2f1"; } + +.fa-spinner::before { + content: "\f110"; } + +.fa-robot::before { + content: "\f544"; } + +.fa-peace::before { + content: "\f67c"; } + +.fa-gears::before { + content: "\f085"; } + +.fa-cogs::before { + content: "\f085"; } + +.fa-warehouse::before { + content: "\f494"; } + +.fa-arrow-up-right-dots::before { + content: "\e4b7"; } + +.fa-splotch::before { + content: "\f5bc"; } + +.fa-face-grin-hearts::before { + content: "\f584"; } + +.fa-grin-hearts::before { + content: "\f584"; } + +.fa-dice-four::before { + content: "\f524"; } + +.fa-sim-card::before { + content: "\f7c4"; } + +.fa-transgender::before { + content: "\f225"; } + +.fa-transgender-alt::before { + content: "\f225"; } + +.fa-mercury::before { + content: "\f223"; } + +.fa-arrow-turn-down::before { + content: "\f149"; } + +.fa-level-down::before { + content: "\f149"; } + +.fa-person-falling-burst::before { + content: "\e547"; } + +.fa-award::before { + content: "\f559"; } + +.fa-ticket-simple::before { + content: "\f3ff"; } + +.fa-ticket-alt::before { + content: "\f3ff"; } + +.fa-building::before { + content: "\f1ad"; } + +.fa-angles-left::before { + content: "\f100"; } + +.fa-angle-double-left::before { + content: "\f100"; } + +.fa-qrcode::before { + content: "\f029"; } + +.fa-clock-rotate-left::before { + content: "\f1da"; } + +.fa-history::before { + content: "\f1da"; } + +.fa-face-grin-beam-sweat::before { + content: "\f583"; } + +.fa-grin-beam-sweat::before { + content: "\f583"; } + +.fa-file-export::before { + content: "\f56e"; } + +.fa-arrow-right-from-file::before { + content: "\f56e"; } + +.fa-shield::before { + content: "\f132"; } + +.fa-shield-blank::before { + content: "\f132"; } + +.fa-arrow-up-short-wide::before { + content: "\f885"; } + +.fa-sort-amount-up-alt::before { + content: "\f885"; } + +.fa-house-medical::before { + content: "\e3b2"; } + +.fa-golf-ball-tee::before { + content: "\f450"; } + +.fa-golf-ball::before { + content: "\f450"; } + +.fa-circle-chevron-left::before { + content: "\f137"; } + +.fa-chevron-circle-left::before { + content: "\f137"; } + +.fa-house-chimney-window::before { + content: "\e00d"; } + +.fa-pen-nib::before { + content: "\f5ad"; } + +.fa-tent-arrow-turn-left::before { + content: "\e580"; } + +.fa-tents::before { + content: "\e582"; } + +.fa-wand-magic::before { + content: "\f0d0"; } + +.fa-magic::before { + content: "\f0d0"; } + +.fa-dog::before { + content: "\f6d3"; } + +.fa-carrot::before { + content: "\f787"; } + +.fa-moon::before { + content: "\f186"; } + +.fa-wine-glass-empty::before { + content: "\f5ce"; } + +.fa-wine-glass-alt::before { + content: "\f5ce"; } + +.fa-cheese::before { + content: "\f7ef"; } + +.fa-yin-yang::before { + content: "\f6ad"; } + +.fa-music::before { + content: "\f001"; } + +.fa-code-commit::before { + content: "\f386"; } + +.fa-temperature-low::before { + content: "\f76b"; } + +.fa-person-biking::before { + content: "\f84a"; } + +.fa-biking::before { + content: "\f84a"; } + +.fa-broom::before { + content: "\f51a"; } + +.fa-shield-heart::before { + content: "\e574"; } + +.fa-gopuram::before { + content: "\f664"; } + +.fa-earth-oceania::before { + content: "\e47b"; } + +.fa-globe-oceania::before { + content: "\e47b"; } + +.fa-square-xmark::before { + content: "\f2d3"; } + +.fa-times-square::before { + content: "\f2d3"; } + +.fa-xmark-square::before { + content: "\f2d3"; } + +.fa-hashtag::before { + content: "\23"; } + +.fa-up-right-and-down-left-from-center::before { + content: "\f424"; } + +.fa-expand-alt::before { + content: "\f424"; } + +.fa-oil-can::before { + content: "\f613"; } + +.fa-t::before { + content: "\54"; } + +.fa-hippo::before { + content: "\f6ed"; } + +.fa-chart-column::before { + content: "\e0e3"; } + +.fa-infinity::before { + content: "\f534"; } + +.fa-vial-circle-check::before { + content: "\e596"; } + +.fa-person-arrow-down-to-line::before { + content: "\e538"; } + +.fa-voicemail::before { + content: "\f897"; } + +.fa-fan::before { + content: "\f863"; } + +.fa-person-walking-luggage::before { + content: "\e554"; } + +.fa-up-down::before { + content: "\f338"; } + +.fa-arrows-alt-v::before { + content: "\f338"; } + +.fa-cloud-moon-rain::before { + content: "\f73c"; } + +.fa-calendar::before { + content: "\f133"; } + +.fa-trailer::before { + content: "\e041"; } + +.fa-bahai::before { + content: "\f666"; } + +.fa-haykal::before { + content: "\f666"; } + +.fa-sd-card::before { + content: "\f7c2"; } + +.fa-dragon::before { + content: "\f6d5"; } + +.fa-shoe-prints::before { + content: "\f54b"; } + +.fa-circle-plus::before { + content: "\f055"; } + +.fa-plus-circle::before { + content: "\f055"; } + +.fa-face-grin-tongue-wink::before { + content: "\f58b"; } + +.fa-grin-tongue-wink::before { + content: "\f58b"; } + +.fa-hand-holding::before { + content: "\f4bd"; } + +.fa-plug-circle-exclamation::before { + content: "\e55d"; } + +.fa-link-slash::before { + content: "\f127"; } + +.fa-chain-broken::before { + content: "\f127"; } + +.fa-chain-slash::before { + content: "\f127"; } + +.fa-unlink::before { + content: "\f127"; } + +.fa-clone::before { + content: "\f24d"; } + +.fa-person-walking-arrow-loop-left::before { + content: "\e551"; } + +.fa-arrow-up-z-a::before { + content: "\f882"; } + +.fa-sort-alpha-up-alt::before { + content: "\f882"; } + +.fa-fire-flame-curved::before { + content: "\f7e4"; } + +.fa-fire-alt::before { + content: "\f7e4"; } + +.fa-tornado::before { + content: "\f76f"; } + +.fa-file-circle-plus::before { + content: "\e494"; } + +.fa-book-quran::before { + content: "\f687"; } + +.fa-quran::before { + content: "\f687"; } + +.fa-anchor::before { + content: "\f13d"; } + +.fa-border-all::before { + content: "\f84c"; } + +.fa-face-angry::before { + content: "\f556"; } + +.fa-angry::before { + content: "\f556"; } + +.fa-cookie-bite::before { + content: "\f564"; } + +.fa-arrow-trend-down::before { + content: "\e097"; } + +.fa-rss::before { + content: "\f09e"; } + +.fa-feed::before { + content: "\f09e"; } + +.fa-draw-polygon::before { + content: "\f5ee"; } + +.fa-scale-balanced::before { + content: "\f24e"; } + +.fa-balance-scale::before { + content: "\f24e"; } + +.fa-gauge-simple-high::before { + content: "\f62a"; } + +.fa-tachometer::before { + content: "\f62a"; } + +.fa-tachometer-fast::before { + content: "\f62a"; } + +.fa-shower::before { + content: "\f2cc"; } + +.fa-desktop::before { + content: "\f390"; } + +.fa-desktop-alt::before { + content: "\f390"; } + +.fa-m::before { + content: "\4d"; } + +.fa-table-list::before { + content: "\f00b"; } + +.fa-th-list::before { + content: "\f00b"; } + +.fa-comment-sms::before { + content: "\f7cd"; } + +.fa-sms::before { + content: "\f7cd"; } + +.fa-book::before { + content: "\f02d"; } + +.fa-user-plus::before { + content: "\f234"; } + +.fa-check::before { + content: "\f00c"; } + +.fa-battery-three-quarters::before { + content: "\f241"; } + +.fa-battery-4::before { + content: "\f241"; } + +.fa-house-circle-check::before { + content: "\e509"; } + +.fa-angle-left::before { + content: "\f104"; } + +.fa-diagram-successor::before { + content: "\e47a"; } + +.fa-truck-arrow-right::before { + content: "\e58b"; } + +.fa-arrows-split-up-and-left::before { + content: "\e4bc"; } + +.fa-hand-fist::before { + content: "\f6de"; } + +.fa-fist-raised::before { + content: "\f6de"; } + +.fa-cloud-moon::before { + content: "\f6c3"; } + +.fa-briefcase::before { + content: "\f0b1"; } + +.fa-person-falling::before { + content: "\e546"; } + +.fa-image-portrait::before { + content: "\f3e0"; } + +.fa-portrait::before { + content: "\f3e0"; } + +.fa-user-tag::before { + content: "\f507"; } + +.fa-rug::before { + content: "\e569"; } + +.fa-earth-europe::before { + content: "\f7a2"; } + +.fa-globe-europe::before { + content: "\f7a2"; } + +.fa-cart-flatbed-suitcase::before { + content: "\f59d"; } + +.fa-luggage-cart::before { + content: "\f59d"; } + +.fa-rectangle-xmark::before { + content: "\f410"; } + +.fa-rectangle-times::before { + content: "\f410"; } + +.fa-times-rectangle::before { + content: "\f410"; } + +.fa-window-close::before { + content: "\f410"; } + +.fa-baht-sign::before { + content: "\e0ac"; } + +.fa-book-open::before { + content: "\f518"; } + +.fa-book-journal-whills::before { + content: "\f66a"; } + +.fa-journal-whills::before { + content: "\f66a"; } + +.fa-handcuffs::before { + content: "\e4f8"; } + +.fa-triangle-exclamation::before { + content: "\f071"; } + +.fa-exclamation-triangle::before { + content: "\f071"; } + +.fa-warning::before { + content: "\f071"; } + +.fa-database::before { + content: "\f1c0"; } + +.fa-share::before { + content: "\f064"; } + +.fa-arrow-turn-right::before { + content: "\f064"; } + +.fa-mail-forward::before { + content: "\f064"; } + +.fa-bottle-droplet::before { + content: "\e4c4"; } + +.fa-mask-face::before { + content: "\e1d7"; } + +.fa-hill-rockslide::before { + content: "\e508"; } + +.fa-right-left::before { + content: "\f362"; } + +.fa-exchange-alt::before { + content: "\f362"; } + +.fa-paper-plane::before { + content: "\f1d8"; } + +.fa-road-circle-exclamation::before { + content: "\e565"; } + +.fa-dungeon::before { + content: "\f6d9"; } + +.fa-align-right::before { + content: "\f038"; } + +.fa-money-bill-1-wave::before { + content: "\f53b"; } + +.fa-money-bill-wave-alt::before { + content: "\f53b"; } + +.fa-life-ring::before { + content: "\f1cd"; } + +.fa-hands::before { + content: "\f2a7"; } + +.fa-sign-language::before { + content: "\f2a7"; } + +.fa-signing::before { + content: "\f2a7"; } + +.fa-calendar-day::before { + content: "\f783"; } + +.fa-water-ladder::before { + content: "\f5c5"; } + +.fa-ladder-water::before { + content: "\f5c5"; } + +.fa-swimming-pool::before { + content: "\f5c5"; } + +.fa-arrows-up-down::before { + content: "\f07d"; } + +.fa-arrows-v::before { + content: "\f07d"; } + +.fa-face-grimace::before { + content: "\f57f"; } + +.fa-grimace::before { + content: "\f57f"; } + +.fa-wheelchair-move::before { + content: "\e2ce"; } + +.fa-wheelchair-alt::before { + content: "\e2ce"; } + +.fa-turn-down::before { + content: "\f3be"; } + +.fa-level-down-alt::before { + content: "\f3be"; } + +.fa-person-walking-arrow-right::before { + content: "\e552"; } + +.fa-square-envelope::before { + content: "\f199"; } + +.fa-envelope-square::before { + content: "\f199"; } + +.fa-dice::before { + content: "\f522"; } + +.fa-bowling-ball::before { + content: "\f436"; } + +.fa-brain::before { + content: "\f5dc"; } + +.fa-bandage::before { + content: "\f462"; } + +.fa-band-aid::before { + content: "\f462"; } + +.fa-calendar-minus::before { + content: "\f272"; } + +.fa-circle-xmark::before { + content: "\f057"; } + +.fa-times-circle::before { + content: "\f057"; } + +.fa-xmark-circle::before { + content: "\f057"; } + +.fa-gifts::before { + content: "\f79c"; } + +.fa-hotel::before { + content: "\f594"; } + +.fa-earth-asia::before { + content: "\f57e"; } + +.fa-globe-asia::before { + content: "\f57e"; } + +.fa-id-card-clip::before { + content: "\f47f"; } + +.fa-id-card-alt::before { + content: "\f47f"; } + +.fa-magnifying-glass-plus::before { + content: "\f00e"; } + +.fa-search-plus::before { + content: "\f00e"; } + +.fa-thumbs-up::before { + content: "\f164"; } + +.fa-user-clock::before { + content: "\f4fd"; } + +.fa-hand-dots::before { + content: "\f461"; } + +.fa-allergies::before { + content: "\f461"; } + +.fa-file-invoice::before { + content: "\f570"; } + +.fa-window-minimize::before { + content: "\f2d1"; } + +.fa-mug-saucer::before { + content: "\f0f4"; } + +.fa-coffee::before { + content: "\f0f4"; } + +.fa-brush::before { + content: "\f55d"; } + +.fa-mask::before { + content: "\f6fa"; } + +.fa-magnifying-glass-minus::before { + content: "\f010"; } + +.fa-search-minus::before { + content: "\f010"; } + +.fa-ruler-vertical::before { + content: "\f548"; } + +.fa-user-large::before { + content: "\f406"; } + +.fa-user-alt::before { + content: "\f406"; } + +.fa-train-tram::before { + content: "\e5b4"; } + +.fa-user-nurse::before { + content: "\f82f"; } + +.fa-syringe::before { + content: "\f48e"; } + +.fa-cloud-sun::before { + content: "\f6c4"; } + +.fa-stopwatch-20::before { + content: "\e06f"; } + +.fa-square-full::before { + content: "\f45c"; } + +.fa-magnet::before { + content: "\f076"; } + +.fa-jar::before { + content: "\e516"; } + +.fa-note-sticky::before { + content: "\f249"; } + +.fa-sticky-note::before { + content: "\f249"; } + +.fa-bug-slash::before { + content: "\e490"; } + +.fa-arrow-up-from-water-pump::before { + content: "\e4b6"; } + +.fa-bone::before { + content: "\f5d7"; } + +.fa-user-injured::before { + content: "\f728"; } + +.fa-face-sad-tear::before { + content: "\f5b4"; } + +.fa-sad-tear::before { + content: "\f5b4"; } + +.fa-plane::before { + content: "\f072"; } + +.fa-tent-arrows-down::before { + content: "\e581"; } + +.fa-exclamation::before { + content: "\21"; } + +.fa-arrows-spin::before { + content: "\e4bb"; } + +.fa-print::before { + content: "\f02f"; } + +.fa-turkish-lira-sign::before { + content: "\e2bb"; } + +.fa-try::before { + content: "\e2bb"; } + +.fa-turkish-lira::before { + content: "\e2bb"; } + +.fa-dollar-sign::before { + content: "\24"; } + +.fa-dollar::before { + content: "\24"; } + +.fa-usd::before { + content: "\24"; } + +.fa-x::before { + content: "\58"; } + +.fa-magnifying-glass-dollar::before { + content: "\f688"; } + +.fa-search-dollar::before { + content: "\f688"; } + +.fa-users-gear::before { + content: "\f509"; } + +.fa-users-cog::before { + content: "\f509"; } + +.fa-person-military-pointing::before { + content: "\e54a"; } + +.fa-building-columns::before { + content: "\f19c"; } + +.fa-bank::before { + content: "\f19c"; } + +.fa-institution::before { + content: "\f19c"; } + +.fa-museum::before { + content: "\f19c"; } + +.fa-university::before { + content: "\f19c"; } + +.fa-umbrella::before { + content: "\f0e9"; } + +.fa-trowel::before { + content: "\e589"; } + +.fa-d::before { + content: "\44"; } + +.fa-stapler::before { + content: "\e5af"; } + +.fa-masks-theater::before { + content: "\f630"; } + +.fa-theater-masks::before { + content: "\f630"; } + +.fa-kip-sign::before { + content: "\e1c4"; } + +.fa-hand-point-left::before { + content: "\f0a5"; } + +.fa-handshake-simple::before { + content: "\f4c6"; } + +.fa-handshake-alt::before { + content: "\f4c6"; } + +.fa-jet-fighter::before { + content: "\f0fb"; } + +.fa-fighter-jet::before { + content: "\f0fb"; } + +.fa-square-share-nodes::before { + content: "\f1e1"; } + +.fa-share-alt-square::before { + content: "\f1e1"; } + +.fa-barcode::before { + content: "\f02a"; } + +.fa-plus-minus::before { + content: "\e43c"; } + +.fa-video::before { + content: "\f03d"; } + +.fa-video-camera::before { + content: "\f03d"; } + +.fa-graduation-cap::before { + content: "\f19d"; } + +.fa-mortar-board::before { + content: "\f19d"; } + +.fa-hand-holding-medical::before { + content: "\e05c"; } + +.fa-person-circle-check::before { + content: "\e53e"; } + +.fa-turn-up::before { + content: "\f3bf"; } + +.fa-level-up-alt::before { + content: "\f3bf"; } + +.sr-only, +.fa-sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + white-space: nowrap; + border-width: 0; } + +.sr-only-focusable:not(:focus), +.fa-sr-only-focusable:not(:focus) { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + white-space: nowrap; + border-width: 0; } +:root, :host { + --fa-style-family-brands: 'Font Awesome 6 Brands'; + --fa-font-brands: normal 400 1em/1 'Font Awesome 6 Brands'; } + +@font-face { + font-family: 'Font Awesome 6 Brands'; + font-style: normal; + font-weight: 400; + font-display: block; + src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); } + +.fab, +.fa-brands { + font-weight: 400; } + +.fa-monero:before { + content: "\f3d0"; } + +.fa-hooli:before { + content: "\f427"; } + +.fa-yelp:before { + content: "\f1e9"; } + +.fa-cc-visa:before { + content: "\f1f0"; } + +.fa-lastfm:before { + content: "\f202"; } + +.fa-shopware:before { + content: "\f5b5"; } + +.fa-creative-commons-nc:before { + content: "\f4e8"; } + +.fa-aws:before { + content: "\f375"; } + +.fa-redhat:before { + content: "\f7bc"; } + +.fa-yoast:before { + content: "\f2b1"; } + +.fa-cloudflare:before { + content: "\e07d"; } + +.fa-ups:before { + content: "\f7e0"; } + +.fa-wpexplorer:before { + content: "\f2de"; } + +.fa-dyalog:before { + content: "\f399"; } + +.fa-bity:before { + content: "\f37a"; } + +.fa-stackpath:before { + content: "\f842"; } + +.fa-buysellads:before { + content: "\f20d"; } + +.fa-first-order:before { + content: "\f2b0"; } + +.fa-modx:before { + content: "\f285"; } + +.fa-guilded:before { + content: "\e07e"; } + +.fa-vnv:before { + content: "\f40b"; } + +.fa-square-js:before { + content: "\f3b9"; } + +.fa-js-square:before { + content: "\f3b9"; } + +.fa-microsoft:before { + content: "\f3ca"; } + +.fa-qq:before { + content: "\f1d6"; } + +.fa-orcid:before { + content: "\f8d2"; } + +.fa-java:before { + content: "\f4e4"; } + +.fa-invision:before { + content: "\f7b0"; } + +.fa-creative-commons-pd-alt:before { + content: "\f4ed"; } + +.fa-centercode:before { + content: "\f380"; } + +.fa-glide-g:before { + content: "\f2a6"; } + +.fa-drupal:before { + content: "\f1a9"; } + +.fa-hire-a-helper:before { + content: "\f3b0"; } + +.fa-creative-commons-by:before { + content: "\f4e7"; } + +.fa-unity:before { + content: "\e049"; } + +.fa-whmcs:before { + content: "\f40d"; } + +.fa-rocketchat:before { + content: "\f3e8"; } + +.fa-vk:before { + content: "\f189"; } + +.fa-untappd:before { + content: "\f405"; } + +.fa-mailchimp:before { + content: "\f59e"; } + +.fa-css3-alt:before { + content: "\f38b"; } + +.fa-square-reddit:before { + content: "\f1a2"; } + +.fa-reddit-square:before { + content: "\f1a2"; } + +.fa-vimeo-v:before { + content: "\f27d"; } + +.fa-contao:before { + content: "\f26d"; } + +.fa-square-font-awesome:before { + content: "\e5ad"; } + +.fa-deskpro:before { + content: "\f38f"; } + +.fa-sistrix:before { + content: "\f3ee"; } + +.fa-square-instagram:before { + content: "\e055"; } + +.fa-instagram-square:before { + content: "\e055"; } + +.fa-battle-net:before { + content: "\f835"; } + +.fa-the-red-yeti:before { + content: "\f69d"; } + +.fa-square-hacker-news:before { + content: "\f3af"; } + +.fa-hacker-news-square:before { + content: "\f3af"; } + +.fa-edge:before { + content: "\f282"; } + +.fa-threads:before { + content: "\e618"; } + +.fa-napster:before { + content: "\f3d2"; } + +.fa-square-snapchat:before { + content: "\f2ad"; } + +.fa-snapchat-square:before { + content: "\f2ad"; } + +.fa-google-plus-g:before { + content: "\f0d5"; } + +.fa-artstation:before { + content: "\f77a"; } + +.fa-markdown:before { + content: "\f60f"; } + +.fa-sourcetree:before { + content: "\f7d3"; } + +.fa-google-plus:before { + content: "\f2b3"; } + +.fa-diaspora:before { + content: "\f791"; } + +.fa-foursquare:before { + content: "\f180"; } + +.fa-stack-overflow:before { + content: "\f16c"; } + +.fa-github-alt:before { + content: "\f113"; } + +.fa-phoenix-squadron:before { + content: "\f511"; } + +.fa-pagelines:before { + content: "\f18c"; } + +.fa-algolia:before { + content: "\f36c"; } + +.fa-red-river:before { + content: "\f3e3"; } + +.fa-creative-commons-sa:before { + content: "\f4ef"; } + +.fa-safari:before { + content: "\f267"; } + +.fa-google:before { + content: "\f1a0"; } + +.fa-square-font-awesome-stroke:before { + content: "\f35c"; } + +.fa-font-awesome-alt:before { + content: "\f35c"; } + +.fa-atlassian:before { + content: "\f77b"; } + +.fa-linkedin-in:before { + content: "\f0e1"; } + +.fa-digital-ocean:before { + content: "\f391"; } + +.fa-nimblr:before { + content: "\f5a8"; } + +.fa-chromecast:before { + content: "\f838"; } + +.fa-evernote:before { + content: "\f839"; } + +.fa-hacker-news:before { + content: "\f1d4"; } + +.fa-creative-commons-sampling:before { + content: "\f4f0"; } + +.fa-adversal:before { + content: "\f36a"; } + +.fa-creative-commons:before { + content: "\f25e"; } + +.fa-watchman-monitoring:before { + content: "\e087"; } + +.fa-fonticons:before { + content: "\f280"; } + +.fa-weixin:before { + content: "\f1d7"; } + +.fa-shirtsinbulk:before { + content: "\f214"; } + +.fa-codepen:before { + content: "\f1cb"; } + +.fa-git-alt:before { + content: "\f841"; } + +.fa-lyft:before { + content: "\f3c3"; } + +.fa-rev:before { + content: "\f5b2"; } + +.fa-windows:before { + content: "\f17a"; } + +.fa-wizards-of-the-coast:before { + content: "\f730"; } + +.fa-square-viadeo:before { + content: "\f2aa"; } + +.fa-viadeo-square:before { + content: "\f2aa"; } + +.fa-meetup:before { + content: "\f2e0"; } + +.fa-centos:before { + content: "\f789"; } + +.fa-adn:before { + content: "\f170"; } + +.fa-cloudsmith:before { + content: "\f384"; } + +.fa-pied-piper-alt:before { + content: "\f1a8"; } + +.fa-square-dribbble:before { + content: "\f397"; } + +.fa-dribbble-square:before { + content: "\f397"; } + +.fa-codiepie:before { + content: "\f284"; } + +.fa-node:before { + content: "\f419"; } + +.fa-mix:before { + content: "\f3cb"; } + +.fa-steam:before { + content: "\f1b6"; } + +.fa-cc-apple-pay:before { + content: "\f416"; } + +.fa-scribd:before { + content: "\f28a"; } + +.fa-debian:before { + content: "\e60b"; } + +.fa-openid:before { + content: "\f19b"; } + +.fa-instalod:before { + content: "\e081"; } + +.fa-expeditedssl:before { + content: "\f23e"; } + +.fa-sellcast:before { + content: "\f2da"; } + +.fa-square-twitter:before { + content: "\f081"; } + +.fa-twitter-square:before { + content: "\f081"; } + +.fa-r-project:before { + content: "\f4f7"; } + +.fa-delicious:before { + content: "\f1a5"; } + +.fa-freebsd:before { + content: "\f3a4"; } + +.fa-vuejs:before { + content: "\f41f"; } + +.fa-accusoft:before { + content: "\f369"; } + +.fa-ioxhost:before { + content: "\f208"; } + +.fa-fonticons-fi:before { + content: "\f3a2"; } + +.fa-app-store:before { + content: "\f36f"; } + +.fa-cc-mastercard:before { + content: "\f1f1"; } + +.fa-itunes-note:before { + content: "\f3b5"; } + +.fa-golang:before { + content: "\e40f"; } + +.fa-kickstarter:before { + content: "\f3bb"; } + +.fa-grav:before { + content: "\f2d6"; } + +.fa-weibo:before { + content: "\f18a"; } + +.fa-uncharted:before { + content: "\e084"; } + +.fa-firstdraft:before { + content: "\f3a1"; } + +.fa-square-youtube:before { + content: "\f431"; } + +.fa-youtube-square:before { + content: "\f431"; } + +.fa-wikipedia-w:before { + content: "\f266"; } + +.fa-wpressr:before { + content: "\f3e4"; } + +.fa-rendact:before { + content: "\f3e4"; } + +.fa-angellist:before { + content: "\f209"; } + +.fa-galactic-republic:before { + content: "\f50c"; } + +.fa-nfc-directional:before { + content: "\e530"; } + +.fa-skype:before { + content: "\f17e"; } + +.fa-joget:before { + content: "\f3b7"; } + +.fa-fedora:before { + content: "\f798"; } + +.fa-stripe-s:before { + content: "\f42a"; } + +.fa-meta:before { + content: "\e49b"; } + +.fa-laravel:before { + content: "\f3bd"; } + +.fa-hotjar:before { + content: "\f3b1"; } + +.fa-bluetooth-b:before { + content: "\f294"; } + +.fa-sticker-mule:before { + content: "\f3f7"; } + +.fa-creative-commons-zero:before { + content: "\f4f3"; } + +.fa-hips:before { + content: "\f452"; } + +.fa-behance:before { + content: "\f1b4"; } + +.fa-reddit:before { + content: "\f1a1"; } + +.fa-discord:before { + content: "\f392"; } + +.fa-chrome:before { + content: "\f268"; } + +.fa-app-store-ios:before { + content: "\f370"; } + +.fa-cc-discover:before { + content: "\f1f2"; } + +.fa-wpbeginner:before { + content: "\f297"; } + +.fa-confluence:before { + content: "\f78d"; } + +.fa-mdb:before { + content: "\f8ca"; } + +.fa-dochub:before { + content: "\f394"; } + +.fa-accessible-icon:before { + content: "\f368"; } + +.fa-ebay:before { + content: "\f4f4"; } + +.fa-amazon:before { + content: "\f270"; } + +.fa-unsplash:before { + content: "\e07c"; } + +.fa-yarn:before { + content: "\f7e3"; } + +.fa-square-steam:before { + content: "\f1b7"; } + +.fa-steam-square:before { + content: "\f1b7"; } + +.fa-500px:before { + content: "\f26e"; } + +.fa-square-vimeo:before { + content: "\f194"; } + +.fa-vimeo-square:before { + content: "\f194"; } + +.fa-asymmetrik:before { + content: "\f372"; } + +.fa-font-awesome:before { + content: "\f2b4"; } + +.fa-font-awesome-flag:before { + content: "\f2b4"; } + +.fa-font-awesome-logo-full:before { + content: "\f2b4"; } + +.fa-gratipay:before { + content: "\f184"; } + +.fa-apple:before { + content: "\f179"; } + +.fa-hive:before { + content: "\e07f"; } + +.fa-gitkraken:before { + content: "\f3a6"; } + +.fa-keybase:before { + content: "\f4f5"; } + +.fa-apple-pay:before { + content: "\f415"; } + +.fa-padlet:before { + content: "\e4a0"; } + +.fa-amazon-pay:before { + content: "\f42c"; } + +.fa-square-github:before { + content: "\f092"; } + +.fa-github-square:before { + content: "\f092"; } + +.fa-stumbleupon:before { + content: "\f1a4"; } + +.fa-fedex:before { + content: "\f797"; } + +.fa-phoenix-framework:before { + content: "\f3dc"; } + +.fa-shopify:before { + content: "\e057"; } + +.fa-neos:before { + content: "\f612"; } + +.fa-square-threads:before { + content: "\e619"; } + +.fa-hackerrank:before { + content: "\f5f7"; } + +.fa-researchgate:before { + content: "\f4f8"; } + +.fa-swift:before { + content: "\f8e1"; } + +.fa-angular:before { + content: "\f420"; } + +.fa-speakap:before { + content: "\f3f3"; } + +.fa-angrycreative:before { + content: "\f36e"; } + +.fa-y-combinator:before { + content: "\f23b"; } + +.fa-empire:before { + content: "\f1d1"; } + +.fa-envira:before { + content: "\f299"; } + +.fa-square-gitlab:before { + content: "\e5ae"; } + +.fa-gitlab-square:before { + content: "\e5ae"; } + +.fa-studiovinari:before { + content: "\f3f8"; } + +.fa-pied-piper:before { + content: "\f2ae"; } + +.fa-wordpress:before { + content: "\f19a"; } + +.fa-product-hunt:before { + content: "\f288"; } + +.fa-firefox:before { + content: "\f269"; } + +.fa-linode:before { + content: "\f2b8"; } + +.fa-goodreads:before { + content: "\f3a8"; } + +.fa-square-odnoklassniki:before { + content: "\f264"; } + +.fa-odnoklassniki-square:before { + content: "\f264"; } + +.fa-jsfiddle:before { + content: "\f1cc"; } + +.fa-sith:before { + content: "\f512"; } + +.fa-themeisle:before { + content: "\f2b2"; } + +.fa-page4:before { + content: "\f3d7"; } + +.fa-hashnode:before { + content: "\e499"; } + +.fa-react:before { + content: "\f41b"; } + +.fa-cc-paypal:before { + content: "\f1f4"; } + +.fa-squarespace:before { + content: "\f5be"; } + +.fa-cc-stripe:before { + content: "\f1f5"; } + +.fa-creative-commons-share:before { + content: "\f4f2"; } + +.fa-bitcoin:before { + content: "\f379"; } + +.fa-keycdn:before { + content: "\f3ba"; } + +.fa-opera:before { + content: "\f26a"; } + +.fa-itch-io:before { + content: "\f83a"; } + +.fa-umbraco:before { + content: "\f8e8"; } + +.fa-galactic-senate:before { + content: "\f50d"; } + +.fa-ubuntu:before { + content: "\f7df"; } + +.fa-draft2digital:before { + content: "\f396"; } + +.fa-stripe:before { + content: "\f429"; } + +.fa-houzz:before { + content: "\f27c"; } + +.fa-gg:before { + content: "\f260"; } + +.fa-dhl:before { + content: "\f790"; } + +.fa-square-pinterest:before { + content: "\f0d3"; } + +.fa-pinterest-square:before { + content: "\f0d3"; } + +.fa-xing:before { + content: "\f168"; } + +.fa-blackberry:before { + content: "\f37b"; } + +.fa-creative-commons-pd:before { + content: "\f4ec"; } + +.fa-playstation:before { + content: "\f3df"; } + +.fa-quinscape:before { + content: "\f459"; } + +.fa-less:before { + content: "\f41d"; } + +.fa-blogger-b:before { + content: "\f37d"; } + +.fa-opencart:before { + content: "\f23d"; } + +.fa-vine:before { + content: "\f1ca"; } + +.fa-paypal:before { + content: "\f1ed"; } + +.fa-gitlab:before { + content: "\f296"; } + +.fa-typo3:before { + content: "\f42b"; } + +.fa-reddit-alien:before { + content: "\f281"; } + +.fa-yahoo:before { + content: "\f19e"; } + +.fa-dailymotion:before { + content: "\e052"; } + +.fa-affiliatetheme:before { + content: "\f36b"; } + +.fa-pied-piper-pp:before { + content: "\f1a7"; } + +.fa-bootstrap:before { + content: "\f836"; } + +.fa-odnoklassniki:before { + content: "\f263"; } + +.fa-nfc-symbol:before { + content: "\e531"; } + +.fa-ethereum:before { + content: "\f42e"; } + +.fa-speaker-deck:before { + content: "\f83c"; } + +.fa-creative-commons-nc-eu:before { + content: "\f4e9"; } + +.fa-patreon:before { + content: "\f3d9"; } + +.fa-avianex:before { + content: "\f374"; } + +.fa-ello:before { + content: "\f5f1"; } + +.fa-gofore:before { + content: "\f3a7"; } + +.fa-bimobject:before { + content: "\f378"; } + +.fa-facebook-f:before { + content: "\f39e"; } + +.fa-square-google-plus:before { + content: "\f0d4"; } + +.fa-google-plus-square:before { + content: "\f0d4"; } + +.fa-mandalorian:before { + content: "\f50f"; } + +.fa-first-order-alt:before { + content: "\f50a"; } + +.fa-osi:before { + content: "\f41a"; } + +.fa-google-wallet:before { + content: "\f1ee"; } + +.fa-d-and-d-beyond:before { + content: "\f6ca"; } + +.fa-periscope:before { + content: "\f3da"; } + +.fa-fulcrum:before { + content: "\f50b"; } + +.fa-cloudscale:before { + content: "\f383"; } + +.fa-forumbee:before { + content: "\f211"; } + +.fa-mizuni:before { + content: "\f3cc"; } + +.fa-schlix:before { + content: "\f3ea"; } + +.fa-square-xing:before { + content: "\f169"; } + +.fa-xing-square:before { + content: "\f169"; } + +.fa-bandcamp:before { + content: "\f2d5"; } + +.fa-wpforms:before { + content: "\f298"; } + +.fa-cloudversify:before { + content: "\f385"; } + +.fa-usps:before { + content: "\f7e1"; } + +.fa-megaport:before { + content: "\f5a3"; } + +.fa-magento:before { + content: "\f3c4"; } + +.fa-spotify:before { + content: "\f1bc"; } + +.fa-optin-monster:before { + content: "\f23c"; } + +.fa-fly:before { + content: "\f417"; } + +.fa-aviato:before { + content: "\f421"; } + +.fa-itunes:before { + content: "\f3b4"; } + +.fa-cuttlefish:before { + content: "\f38c"; } + +.fa-blogger:before { + content: "\f37c"; } + +.fa-flickr:before { + content: "\f16e"; } + +.fa-viber:before { + content: "\f409"; } + +.fa-soundcloud:before { + content: "\f1be"; } + +.fa-digg:before { + content: "\f1a6"; } + +.fa-tencent-weibo:before { + content: "\f1d5"; } + +.fa-symfony:before { + content: "\f83d"; } + +.fa-maxcdn:before { + content: "\f136"; } + +.fa-etsy:before { + content: "\f2d7"; } + +.fa-facebook-messenger:before { + content: "\f39f"; } + +.fa-audible:before { + content: "\f373"; } + +.fa-think-peaks:before { + content: "\f731"; } + +.fa-bilibili:before { + content: "\e3d9"; } + +.fa-erlang:before { + content: "\f39d"; } + +.fa-x-twitter:before { + content: "\e61b"; } + +.fa-cotton-bureau:before { + content: "\f89e"; } + +.fa-dashcube:before { + content: "\f210"; } + +.fa-42-group:before { + content: "\e080"; } + +.fa-innosoft:before { + content: "\e080"; } + +.fa-stack-exchange:before { + content: "\f18d"; } + +.fa-elementor:before { + content: "\f430"; } + +.fa-square-pied-piper:before { + content: "\e01e"; } + +.fa-pied-piper-square:before { + content: "\e01e"; } + +.fa-creative-commons-nd:before { + content: "\f4eb"; } + +.fa-palfed:before { + content: "\f3d8"; } + +.fa-superpowers:before { + content: "\f2dd"; } + +.fa-resolving:before { + content: "\f3e7"; } + +.fa-xbox:before { + content: "\f412"; } + +.fa-searchengin:before { + content: "\f3eb"; } + +.fa-tiktok:before { + content: "\e07b"; } + +.fa-square-facebook:before { + content: "\f082"; } + +.fa-facebook-square:before { + content: "\f082"; } + +.fa-renren:before { + content: "\f18b"; } + +.fa-linux:before { + content: "\f17c"; } + +.fa-glide:before { + content: "\f2a5"; } + +.fa-linkedin:before { + content: "\f08c"; } + +.fa-hubspot:before { + content: "\f3b2"; } + +.fa-deploydog:before { + content: "\f38e"; } + +.fa-twitch:before { + content: "\f1e8"; } + +.fa-ravelry:before { + content: "\f2d9"; } + +.fa-mixer:before { + content: "\e056"; } + +.fa-square-lastfm:before { + content: "\f203"; } + +.fa-lastfm-square:before { + content: "\f203"; } + +.fa-vimeo:before { + content: "\f40a"; } + +.fa-mendeley:before { + content: "\f7b3"; } + +.fa-uniregistry:before { + content: "\f404"; } + +.fa-figma:before { + content: "\f799"; } + +.fa-creative-commons-remix:before { + content: "\f4ee"; } + +.fa-cc-amazon-pay:before { + content: "\f42d"; } + +.fa-dropbox:before { + content: "\f16b"; } + +.fa-instagram:before { + content: "\f16d"; } + +.fa-cmplid:before { + content: "\e360"; } + +.fa-facebook:before { + content: "\f09a"; } + +.fa-gripfire:before { + content: "\f3ac"; } + +.fa-jedi-order:before { + content: "\f50e"; } + +.fa-uikit:before { + content: "\f403"; } + +.fa-fort-awesome-alt:before { + content: "\f3a3"; } + +.fa-phabricator:before { + content: "\f3db"; } + +.fa-ussunnah:before { + content: "\f407"; } + +.fa-earlybirds:before { + content: "\f39a"; } + +.fa-trade-federation:before { + content: "\f513"; } + +.fa-autoprefixer:before { + content: "\f41c"; } + +.fa-whatsapp:before { + content: "\f232"; } + +.fa-slideshare:before { + content: "\f1e7"; } + +.fa-google-play:before { + content: "\f3ab"; } + +.fa-viadeo:before { + content: "\f2a9"; } + +.fa-line:before { + content: "\f3c0"; } + +.fa-google-drive:before { + content: "\f3aa"; } + +.fa-servicestack:before { + content: "\f3ec"; } + +.fa-simplybuilt:before { + content: "\f215"; } + +.fa-bitbucket:before { + content: "\f171"; } + +.fa-imdb:before { + content: "\f2d8"; } + +.fa-deezer:before { + content: "\e077"; } + +.fa-raspberry-pi:before { + content: "\f7bb"; } + +.fa-jira:before { + content: "\f7b1"; } + +.fa-docker:before { + content: "\f395"; } + +.fa-screenpal:before { + content: "\e570"; } + +.fa-bluetooth:before { + content: "\f293"; } + +.fa-gitter:before { + content: "\f426"; } + +.fa-d-and-d:before { + content: "\f38d"; } + +.fa-microblog:before { + content: "\e01a"; } + +.fa-cc-diners-club:before { + content: "\f24c"; } + +.fa-gg-circle:before { + content: "\f261"; } + +.fa-pied-piper-hat:before { + content: "\f4e5"; } + +.fa-kickstarter-k:before { + content: "\f3bc"; } + +.fa-yandex:before { + content: "\f413"; } + +.fa-readme:before { + content: "\f4d5"; } + +.fa-html5:before { + content: "\f13b"; } + +.fa-sellsy:before { + content: "\f213"; } + +.fa-sass:before { + content: "\f41e"; } + +.fa-wirsindhandwerk:before { + content: "\e2d0"; } + +.fa-wsh:before { + content: "\e2d0"; } + +.fa-buromobelexperte:before { + content: "\f37f"; } + +.fa-salesforce:before { + content: "\f83b"; } + +.fa-octopus-deploy:before { + content: "\e082"; } + +.fa-medapps:before { + content: "\f3c6"; } + +.fa-ns8:before { + content: "\f3d5"; } + +.fa-pinterest-p:before { + content: "\f231"; } + +.fa-apper:before { + content: "\f371"; } + +.fa-fort-awesome:before { + content: "\f286"; } + +.fa-waze:before { + content: "\f83f"; } + +.fa-cc-jcb:before { + content: "\f24b"; } + +.fa-snapchat:before { + content: "\f2ab"; } + +.fa-snapchat-ghost:before { + content: "\f2ab"; } + +.fa-fantasy-flight-games:before { + content: "\f6dc"; } + +.fa-rust:before { + content: "\e07a"; } + +.fa-wix:before { + content: "\f5cf"; } + +.fa-square-behance:before { + content: "\f1b5"; } + +.fa-behance-square:before { + content: "\f1b5"; } + +.fa-supple:before { + content: "\f3f9"; } + +.fa-rebel:before { + content: "\f1d0"; } + +.fa-css3:before { + content: "\f13c"; } + +.fa-staylinked:before { + content: "\f3f5"; } + +.fa-kaggle:before { + content: "\f5fa"; } + +.fa-space-awesome:before { + content: "\e5ac"; } + +.fa-deviantart:before { + content: "\f1bd"; } + +.fa-cpanel:before { + content: "\f388"; } + +.fa-goodreads-g:before { + content: "\f3a9"; } + +.fa-square-git:before { + content: "\f1d2"; } + +.fa-git-square:before { + content: "\f1d2"; } + +.fa-square-tumblr:before { + content: "\f174"; } + +.fa-tumblr-square:before { + content: "\f174"; } + +.fa-trello:before { + content: "\f181"; } + +.fa-creative-commons-nc-jp:before { + content: "\f4ea"; } + +.fa-get-pocket:before { + content: "\f265"; } + +.fa-perbyte:before { + content: "\e083"; } + +.fa-grunt:before { + content: "\f3ad"; } + +.fa-weebly:before { + content: "\f5cc"; } + +.fa-connectdevelop:before { + content: "\f20e"; } + +.fa-leanpub:before { + content: "\f212"; } + +.fa-black-tie:before { + content: "\f27e"; } + +.fa-themeco:before { + content: "\f5c6"; } + +.fa-python:before { + content: "\f3e2"; } + +.fa-android:before { + content: "\f17b"; } + +.fa-bots:before { + content: "\e340"; } + +.fa-free-code-camp:before { + content: "\f2c5"; } + +.fa-hornbill:before { + content: "\f592"; } + +.fa-js:before { + content: "\f3b8"; } + +.fa-ideal:before { + content: "\e013"; } + +.fa-git:before { + content: "\f1d3"; } + +.fa-dev:before { + content: "\f6cc"; } + +.fa-sketch:before { + content: "\f7c6"; } + +.fa-yandex-international:before { + content: "\f414"; } + +.fa-cc-amex:before { + content: "\f1f3"; } + +.fa-uber:before { + content: "\f402"; } + +.fa-github:before { + content: "\f09b"; } + +.fa-php:before { + content: "\f457"; } + +.fa-alipay:before { + content: "\f642"; } + +.fa-youtube:before { + content: "\f167"; } + +.fa-skyatlas:before { + content: "\f216"; } + +.fa-firefox-browser:before { + content: "\e007"; } + +.fa-replyd:before { + content: "\f3e6"; } + +.fa-suse:before { + content: "\f7d6"; } + +.fa-jenkins:before { + content: "\f3b6"; } + +.fa-twitter:before { + content: "\f099"; } + +.fa-rockrms:before { + content: "\f3e9"; } + +.fa-pinterest:before { + content: "\f0d2"; } + +.fa-buffer:before { + content: "\f837"; } + +.fa-npm:before { + content: "\f3d4"; } + +.fa-yammer:before { + content: "\f840"; } + +.fa-btc:before { + content: "\f15a"; } + +.fa-dribbble:before { + content: "\f17d"; } + +.fa-stumbleupon-circle:before { + content: "\f1a3"; } + +.fa-internet-explorer:before { + content: "\f26b"; } + +.fa-stubber:before { + content: "\e5c7"; } + +.fa-telegram:before { + content: "\f2c6"; } + +.fa-telegram-plane:before { + content: "\f2c6"; } + +.fa-old-republic:before { + content: "\f510"; } + +.fa-odysee:before { + content: "\e5c6"; } + +.fa-square-whatsapp:before { + content: "\f40c"; } + +.fa-whatsapp-square:before { + content: "\f40c"; } + +.fa-node-js:before { + content: "\f3d3"; } + +.fa-edge-legacy:before { + content: "\e078"; } + +.fa-slack:before { + content: "\f198"; } + +.fa-slack-hash:before { + content: "\f198"; } + +.fa-medrt:before { + content: "\f3c8"; } + +.fa-usb:before { + content: "\f287"; } + +.fa-tumblr:before { + content: "\f173"; } + +.fa-vaadin:before { + content: "\f408"; } + +.fa-quora:before { + content: "\f2c4"; } + +.fa-square-x-twitter:before { + content: "\e61a"; } + +.fa-reacteurope:before { + content: "\f75d"; } + +.fa-medium:before { + content: "\f23a"; } + +.fa-medium-m:before { + content: "\f23a"; } + +.fa-amilia:before { + content: "\f36d"; } + +.fa-mixcloud:before { + content: "\f289"; } + +.fa-flipboard:before { + content: "\f44d"; } + +.fa-viacoin:before { + content: "\f237"; } + +.fa-critical-role:before { + content: "\f6c9"; } + +.fa-sitrox:before { + content: "\e44a"; } + +.fa-discourse:before { + content: "\f393"; } + +.fa-joomla:before { + content: "\f1aa"; } + +.fa-mastodon:before { + content: "\f4f6"; } + +.fa-airbnb:before { + content: "\f834"; } + +.fa-wolf-pack-battalion:before { + content: "\f514"; } + +.fa-buy-n-large:before { + content: "\f8a6"; } + +.fa-gulp:before { + content: "\f3ae"; } + +.fa-creative-commons-sampling-plus:before { + content: "\f4f1"; } + +.fa-strava:before { + content: "\f428"; } + +.fa-ember:before { + content: "\f423"; } + +.fa-canadian-maple-leaf:before { + content: "\f785"; } + +.fa-teamspeak:before { + content: "\f4f9"; } + +.fa-pushed:before { + content: "\f3e1"; } + +.fa-wordpress-simple:before { + content: "\f411"; } + +.fa-nutritionix:before { + content: "\f3d6"; } + +.fa-wodu:before { + content: "\e088"; } + +.fa-google-pay:before { + content: "\e079"; } + +.fa-intercom:before { + content: "\f7af"; } + +.fa-zhihu:before { + content: "\f63f"; } + +.fa-korvue:before { + content: "\f42f"; } + +.fa-pix:before { + content: "\e43a"; } + +.fa-steam-symbol:before { + content: "\f3f6"; } +:root, :host { + --fa-style-family-classic: 'Font Awesome 6 Free'; + --fa-font-regular: normal 400 1em/1 'Font Awesome 6 Free'; } + +@font-face { + font-family: 'Font Awesome 6 Free'; + font-style: normal; + font-weight: 400; + font-display: block; + src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); } + +.far, +.fa-regular { + font-weight: 400; } +:root, :host { + --fa-style-family-classic: 'Font Awesome 6 Free'; + --fa-font-solid: normal 900 1em/1 'Font Awesome 6 Free'; } + +@font-face { + font-family: 'Font Awesome 6 Free'; + font-style: normal; + font-weight: 900; + font-display: block; + src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); } + +.fas, +.fa-solid { + font-weight: 900; } +@font-face { + font-family: 'Font Awesome 5 Brands'; + font-display: block; + font-weight: 400; + src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); } + +@font-face { + font-family: 'Font Awesome 5 Free'; + font-display: block; + font-weight: 900; + src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); } + +@font-face { + font-family: 'Font Awesome 5 Free'; + font-display: block; + font-weight: 400; + src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); } +@font-face { + font-family: 'FontAwesome'; + font-display: block; + src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); } + +@font-face { + font-family: 'FontAwesome'; + font-display: block; + src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); } + +@font-face { + font-family: 'FontAwesome'; + font-display: block; + src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); } + +@font-face { + font-family: 'FontAwesome'; + font-display: block; + src: url("../webfonts/fa-v4compatibility.woff2") format("woff2"), url("../webfonts/fa-v4compatibility.ttf") format("truetype"); } diff --git a/docs/deps/font-awesome-6.4.2/css/all.min.css b/docs/deps/font-awesome-6.4.2/css/all.min.css new file mode 100644 index 0000000..6604a06 --- /dev/null +++ b/docs/deps/font-awesome-6.4.2/css/all.min.css @@ -0,0 +1,9 @@ +/*! + * Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + * Copyright 2023 Fonticons, Inc. + */ +.fa{font-family:var(--fa-style-family,"Font Awesome 6 Free");font-weight:var(--fa-style,900)}.fa,.fa-brands,.fa-classic,.fa-regular,.fa-sharp,.fa-solid,.fab,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:var(--fa-display,inline-block);font-style:normal;font-variant:normal;line-height:1;text-rendering:auto}.fa-classic,.fa-regular,.fa-solid,.far,.fas{font-family:"Font Awesome 6 Free"}.fa-brands,.fab{font-family:"Font Awesome 6 Brands"}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.08em) var(--fa-border-style,solid) var(--fa-border-color,#eee);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{-webkit-animation-name:fa-beat;animation-name:fa-beat;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{-webkit-animation-name:fa-bounce;animation-name:fa-bounce;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{-webkit-animation-name:fa-fade;animation-name:fa-fade;-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{-webkit-animation-name:fa-beat-fade;animation-name:fa-beat-fade;-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{-webkit-animation-name:fa-flip;animation-name:fa-flip;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{-webkit-animation-name:fa-shake;animation-name:fa-shake;-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-duration:var(--fa-animation-duration,2s);animation-duration:var(--fa-animation-duration,2s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,steps(8));animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{-webkit-animation-delay:-1ms;animation-delay:-1ms;-webkit-animation-duration:1ms;animation-duration:1ms;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-transition-delay:0s;transition-delay:0s;-webkit-transition-duration:0s;transition-duration:0s}}@-webkit-keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@-webkit-keyframes fa-bounce{0%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}to{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@keyframes fa-bounce{0%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}to{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@-webkit-keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@-webkit-keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@-webkit-keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@-webkit-keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}8%,24%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}8%,24%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}.fa-rotate-by{-webkit-transform:rotate(var(--fa-rotate-angle,none));transform:rotate(var(--fa-rotate-angle,none))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%;z-index:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:var(--fa-inverse,#fff)} + +.fa-0:before{content:"\30"}.fa-1:before{content:"\31"}.fa-2:before{content:"\32"}.fa-3:before{content:"\33"}.fa-4:before{content:"\34"}.fa-5:before{content:"\35"}.fa-6:before{content:"\36"}.fa-7:before{content:"\37"}.fa-8:before{content:"\38"}.fa-9:before{content:"\39"}.fa-fill-drip:before{content:"\f576"}.fa-arrows-to-circle:before{content:"\e4bd"}.fa-chevron-circle-right:before,.fa-circle-chevron-right:before{content:"\f138"}.fa-at:before{content:"\40"}.fa-trash-alt:before,.fa-trash-can:before{content:"\f2ed"}.fa-text-height:before{content:"\f034"}.fa-user-times:before,.fa-user-xmark:before{content:"\f235"}.fa-stethoscope:before{content:"\f0f1"}.fa-comment-alt:before,.fa-message:before{content:"\f27a"}.fa-info:before{content:"\f129"}.fa-compress-alt:before,.fa-down-left-and-up-right-to-center:before{content:"\f422"}.fa-explosion:before{content:"\e4e9"}.fa-file-alt:before,.fa-file-lines:before,.fa-file-text:before{content:"\f15c"}.fa-wave-square:before{content:"\f83e"}.fa-ring:before{content:"\f70b"}.fa-building-un:before{content:"\e4d9"}.fa-dice-three:before{content:"\f527"}.fa-calendar-alt:before,.fa-calendar-days:before{content:"\f073"}.fa-anchor-circle-check:before{content:"\e4aa"}.fa-building-circle-arrow-right:before{content:"\e4d1"}.fa-volleyball-ball:before,.fa-volleyball:before{content:"\f45f"}.fa-arrows-up-to-line:before{content:"\e4c2"}.fa-sort-desc:before,.fa-sort-down:before{content:"\f0dd"}.fa-circle-minus:before,.fa-minus-circle:before{content:"\f056"}.fa-door-open:before{content:"\f52b"}.fa-right-from-bracket:before,.fa-sign-out-alt:before{content:"\f2f5"}.fa-atom:before{content:"\f5d2"}.fa-soap:before{content:"\e06e"}.fa-heart-music-camera-bolt:before,.fa-icons:before{content:"\f86d"}.fa-microphone-alt-slash:before,.fa-microphone-lines-slash:before{content:"\f539"}.fa-bridge-circle-check:before{content:"\e4c9"}.fa-pump-medical:before{content:"\e06a"}.fa-fingerprint:before{content:"\f577"}.fa-hand-point-right:before{content:"\f0a4"}.fa-magnifying-glass-location:before,.fa-search-location:before{content:"\f689"}.fa-forward-step:before,.fa-step-forward:before{content:"\f051"}.fa-face-smile-beam:before,.fa-smile-beam:before{content:"\f5b8"}.fa-flag-checkered:before{content:"\f11e"}.fa-football-ball:before,.fa-football:before{content:"\f44e"}.fa-school-circle-exclamation:before{content:"\e56c"}.fa-crop:before{content:"\f125"}.fa-angle-double-down:before,.fa-angles-down:before{content:"\f103"}.fa-users-rectangle:before{content:"\e594"}.fa-people-roof:before{content:"\e537"}.fa-people-line:before{content:"\e534"}.fa-beer-mug-empty:before,.fa-beer:before{content:"\f0fc"}.fa-diagram-predecessor:before{content:"\e477"}.fa-arrow-up-long:before,.fa-long-arrow-up:before{content:"\f176"}.fa-burn:before,.fa-fire-flame-simple:before{content:"\f46a"}.fa-male:before,.fa-person:before{content:"\f183"}.fa-laptop:before{content:"\f109"}.fa-file-csv:before{content:"\f6dd"}.fa-menorah:before{content:"\f676"}.fa-truck-plane:before{content:"\e58f"}.fa-record-vinyl:before{content:"\f8d9"}.fa-face-grin-stars:before,.fa-grin-stars:before{content:"\f587"}.fa-bong:before{content:"\f55c"}.fa-pastafarianism:before,.fa-spaghetti-monster-flying:before{content:"\f67b"}.fa-arrow-down-up-across-line:before{content:"\e4af"}.fa-spoon:before,.fa-utensil-spoon:before{content:"\f2e5"}.fa-jar-wheat:before{content:"\e517"}.fa-envelopes-bulk:before,.fa-mail-bulk:before{content:"\f674"}.fa-file-circle-exclamation:before{content:"\e4eb"}.fa-circle-h:before,.fa-hospital-symbol:before{content:"\f47e"}.fa-pager:before{content:"\f815"}.fa-address-book:before,.fa-contact-book:before{content:"\f2b9"}.fa-strikethrough:before{content:"\f0cc"}.fa-k:before{content:"\4b"}.fa-landmark-flag:before{content:"\e51c"}.fa-pencil-alt:before,.fa-pencil:before{content:"\f303"}.fa-backward:before{content:"\f04a"}.fa-caret-right:before{content:"\f0da"}.fa-comments:before{content:"\f086"}.fa-file-clipboard:before,.fa-paste:before{content:"\f0ea"}.fa-code-pull-request:before{content:"\e13c"}.fa-clipboard-list:before{content:"\f46d"}.fa-truck-loading:before,.fa-truck-ramp-box:before{content:"\f4de"}.fa-user-check:before{content:"\f4fc"}.fa-vial-virus:before{content:"\e597"}.fa-sheet-plastic:before{content:"\e571"}.fa-blog:before{content:"\f781"}.fa-user-ninja:before{content:"\f504"}.fa-person-arrow-up-from-line:before{content:"\e539"}.fa-scroll-torah:before,.fa-torah:before{content:"\f6a0"}.fa-broom-ball:before,.fa-quidditch-broom-ball:before,.fa-quidditch:before{content:"\f458"}.fa-toggle-off:before{content:"\f204"}.fa-archive:before,.fa-box-archive:before{content:"\f187"}.fa-person-drowning:before{content:"\e545"}.fa-arrow-down-9-1:before,.fa-sort-numeric-desc:before,.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-face-grin-tongue-squint:before,.fa-grin-tongue-squint:before{content:"\f58a"}.fa-spray-can:before{content:"\f5bd"}.fa-truck-monster:before{content:"\f63b"}.fa-w:before{content:"\57"}.fa-earth-africa:before,.fa-globe-africa:before{content:"\f57c"}.fa-rainbow:before{content:"\f75b"}.fa-circle-notch:before{content:"\f1ce"}.fa-tablet-alt:before,.fa-tablet-screen-button:before{content:"\f3fa"}.fa-paw:before{content:"\f1b0"}.fa-cloud:before{content:"\f0c2"}.fa-trowel-bricks:before{content:"\e58a"}.fa-face-flushed:before,.fa-flushed:before{content:"\f579"}.fa-hospital-user:before{content:"\f80d"}.fa-tent-arrow-left-right:before{content:"\e57f"}.fa-gavel:before,.fa-legal:before{content:"\f0e3"}.fa-binoculars:before{content:"\f1e5"}.fa-microphone-slash:before{content:"\f131"}.fa-box-tissue:before{content:"\e05b"}.fa-motorcycle:before{content:"\f21c"}.fa-bell-concierge:before,.fa-concierge-bell:before{content:"\f562"}.fa-pen-ruler:before,.fa-pencil-ruler:before{content:"\f5ae"}.fa-people-arrows-left-right:before,.fa-people-arrows:before{content:"\e068"}.fa-mars-and-venus-burst:before{content:"\e523"}.fa-caret-square-right:before,.fa-square-caret-right:before{content:"\f152"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-sun-plant-wilt:before{content:"\e57a"}.fa-toilets-portable:before{content:"\e584"}.fa-hockey-puck:before{content:"\f453"}.fa-table:before{content:"\f0ce"}.fa-magnifying-glass-arrow-right:before{content:"\e521"}.fa-digital-tachograph:before,.fa-tachograph-digital:before{content:"\f566"}.fa-users-slash:before{content:"\e073"}.fa-clover:before{content:"\e139"}.fa-mail-reply:before,.fa-reply:before{content:"\f3e5"}.fa-star-and-crescent:before{content:"\f699"}.fa-house-fire:before{content:"\e50c"}.fa-minus-square:before,.fa-square-minus:before{content:"\f146"}.fa-helicopter:before{content:"\f533"}.fa-compass:before{content:"\f14e"}.fa-caret-square-down:before,.fa-square-caret-down:before{content:"\f150"}.fa-file-circle-question:before{content:"\e4ef"}.fa-laptop-code:before{content:"\f5fc"}.fa-swatchbook:before{content:"\f5c3"}.fa-prescription-bottle:before{content:"\f485"}.fa-bars:before,.fa-navicon:before{content:"\f0c9"}.fa-people-group:before{content:"\e533"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-heart-broken:before,.fa-heart-crack:before{content:"\f7a9"}.fa-external-link-square-alt:before,.fa-square-up-right:before{content:"\f360"}.fa-face-kiss-beam:before,.fa-kiss-beam:before{content:"\f597"}.fa-film:before{content:"\f008"}.fa-ruler-horizontal:before{content:"\f547"}.fa-people-robbery:before{content:"\e536"}.fa-lightbulb:before{content:"\f0eb"}.fa-caret-left:before{content:"\f0d9"}.fa-circle-exclamation:before,.fa-exclamation-circle:before{content:"\f06a"}.fa-school-circle-xmark:before{content:"\e56d"}.fa-arrow-right-from-bracket:before,.fa-sign-out:before{content:"\f08b"}.fa-chevron-circle-down:before,.fa-circle-chevron-down:before{content:"\f13a"}.fa-unlock-alt:before,.fa-unlock-keyhole:before{content:"\f13e"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-headphones-alt:before,.fa-headphones-simple:before{content:"\f58f"}.fa-sitemap:before{content:"\f0e8"}.fa-circle-dollar-to-slot:before,.fa-donate:before{content:"\f4b9"}.fa-memory:before{content:"\f538"}.fa-road-spikes:before{content:"\e568"}.fa-fire-burner:before{content:"\e4f1"}.fa-flag:before{content:"\f024"}.fa-hanukiah:before{content:"\f6e6"}.fa-feather:before{content:"\f52d"}.fa-volume-down:before,.fa-volume-low:before{content:"\f027"}.fa-comment-slash:before{content:"\f4b3"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-compress:before{content:"\f066"}.fa-wheat-alt:before,.fa-wheat-awn:before{content:"\e2cd"}.fa-ankh:before{content:"\f644"}.fa-hands-holding-child:before{content:"\e4fa"}.fa-asterisk:before{content:"\2a"}.fa-check-square:before,.fa-square-check:before{content:"\f14a"}.fa-peseta-sign:before{content:"\e221"}.fa-header:before,.fa-heading:before{content:"\f1dc"}.fa-ghost:before{content:"\f6e2"}.fa-list-squares:before,.fa-list:before{content:"\f03a"}.fa-phone-square-alt:before,.fa-square-phone-flip:before{content:"\f87b"}.fa-cart-plus:before{content:"\f217"}.fa-gamepad:before{content:"\f11b"}.fa-circle-dot:before,.fa-dot-circle:before{content:"\f192"}.fa-dizzy:before,.fa-face-dizzy:before{content:"\f567"}.fa-egg:before{content:"\f7fb"}.fa-house-medical-circle-xmark:before{content:"\e513"}.fa-campground:before{content:"\f6bb"}.fa-folder-plus:before{content:"\f65e"}.fa-futbol-ball:before,.fa-futbol:before,.fa-soccer-ball:before{content:"\f1e3"}.fa-paint-brush:before,.fa-paintbrush:before{content:"\f1fc"}.fa-lock:before{content:"\f023"}.fa-gas-pump:before{content:"\f52f"}.fa-hot-tub-person:before,.fa-hot-tub:before{content:"\f593"}.fa-map-location:before,.fa-map-marked:before{content:"\f59f"}.fa-house-flood-water:before{content:"\e50e"}.fa-tree:before{content:"\f1bb"}.fa-bridge-lock:before{content:"\e4cc"}.fa-sack-dollar:before{content:"\f81d"}.fa-edit:before,.fa-pen-to-square:before{content:"\f044"}.fa-car-side:before{content:"\f5e4"}.fa-share-alt:before,.fa-share-nodes:before{content:"\f1e0"}.fa-heart-circle-minus:before{content:"\e4ff"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-microscope:before{content:"\f610"}.fa-sink:before{content:"\e06d"}.fa-bag-shopping:before,.fa-shopping-bag:before{content:"\f290"}.fa-arrow-down-z-a:before,.fa-sort-alpha-desc:before,.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-mitten:before{content:"\f7b5"}.fa-person-rays:before{content:"\e54d"}.fa-users:before{content:"\f0c0"}.fa-eye-slash:before{content:"\f070"}.fa-flask-vial:before{content:"\e4f3"}.fa-hand-paper:before,.fa-hand:before{content:"\f256"}.fa-om:before{content:"\f679"}.fa-worm:before{content:"\e599"}.fa-house-circle-xmark:before{content:"\e50b"}.fa-plug:before{content:"\f1e6"}.fa-chevron-up:before{content:"\f077"}.fa-hand-spock:before{content:"\f259"}.fa-stopwatch:before{content:"\f2f2"}.fa-face-kiss:before,.fa-kiss:before{content:"\f596"}.fa-bridge-circle-xmark:before{content:"\e4cb"}.fa-face-grin-tongue:before,.fa-grin-tongue:before{content:"\f589"}.fa-chess-bishop:before{content:"\f43a"}.fa-face-grin-wink:before,.fa-grin-wink:before{content:"\f58c"}.fa-deaf:before,.fa-deafness:before,.fa-ear-deaf:before,.fa-hard-of-hearing:before{content:"\f2a4"}.fa-road-circle-check:before{content:"\e564"}.fa-dice-five:before{content:"\f523"}.fa-rss-square:before,.fa-square-rss:before{content:"\f143"}.fa-land-mine-on:before{content:"\e51b"}.fa-i-cursor:before{content:"\f246"}.fa-stamp:before{content:"\f5bf"}.fa-stairs:before{content:"\e289"}.fa-i:before{content:"\49"}.fa-hryvnia-sign:before,.fa-hryvnia:before{content:"\f6f2"}.fa-pills:before{content:"\f484"}.fa-face-grin-wide:before,.fa-grin-alt:before{content:"\f581"}.fa-tooth:before{content:"\f5c9"}.fa-v:before{content:"\56"}.fa-bangladeshi-taka-sign:before{content:"\e2e6"}.fa-bicycle:before{content:"\f206"}.fa-rod-asclepius:before,.fa-rod-snake:before,.fa-staff-aesculapius:before,.fa-staff-snake:before{content:"\e579"}.fa-head-side-cough-slash:before{content:"\e062"}.fa-ambulance:before,.fa-truck-medical:before{content:"\f0f9"}.fa-wheat-awn-circle-exclamation:before{content:"\e598"}.fa-snowman:before{content:"\f7d0"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-road-barrier:before{content:"\e562"}.fa-school:before{content:"\f549"}.fa-igloo:before{content:"\f7ae"}.fa-joint:before{content:"\f595"}.fa-angle-right:before{content:"\f105"}.fa-horse:before{content:"\f6f0"}.fa-q:before{content:"\51"}.fa-g:before{content:"\47"}.fa-notes-medical:before{content:"\f481"}.fa-temperature-2:before,.fa-temperature-half:before,.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-dong-sign:before{content:"\e169"}.fa-capsules:before{content:"\f46b"}.fa-poo-bolt:before,.fa-poo-storm:before{content:"\f75a"}.fa-face-frown-open:before,.fa-frown-open:before{content:"\f57a"}.fa-hand-point-up:before{content:"\f0a6"}.fa-money-bill:before{content:"\f0d6"}.fa-bookmark:before{content:"\f02e"}.fa-align-justify:before{content:"\f039"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-helmet-un:before{content:"\e503"}.fa-bullseye:before{content:"\f140"}.fa-bacon:before{content:"\f7e5"}.fa-hand-point-down:before{content:"\f0a7"}.fa-arrow-up-from-bracket:before{content:"\e09a"}.fa-folder-blank:before,.fa-folder:before{content:"\f07b"}.fa-file-medical-alt:before,.fa-file-waveform:before{content:"\f478"}.fa-radiation:before{content:"\f7b9"}.fa-chart-simple:before{content:"\e473"}.fa-mars-stroke:before{content:"\f229"}.fa-vial:before{content:"\f492"}.fa-dashboard:before,.fa-gauge-med:before,.fa-gauge:before,.fa-tachometer-alt-average:before{content:"\f624"}.fa-magic-wand-sparkles:before,.fa-wand-magic-sparkles:before{content:"\e2ca"}.fa-e:before{content:"\45"}.fa-pen-alt:before,.fa-pen-clip:before{content:"\f305"}.fa-bridge-circle-exclamation:before{content:"\e4ca"}.fa-user:before{content:"\f007"}.fa-school-circle-check:before{content:"\e56b"}.fa-dumpster:before{content:"\f793"}.fa-shuttle-van:before,.fa-van-shuttle:before{content:"\f5b6"}.fa-building-user:before{content:"\e4da"}.fa-caret-square-left:before,.fa-square-caret-left:before{content:"\f191"}.fa-highlighter:before{content:"\f591"}.fa-key:before{content:"\f084"}.fa-bullhorn:before{content:"\f0a1"}.fa-globe:before{content:"\f0ac"}.fa-synagogue:before{content:"\f69b"}.fa-person-half-dress:before{content:"\e548"}.fa-road-bridge:before{content:"\e563"}.fa-location-arrow:before{content:"\f124"}.fa-c:before{content:"\43"}.fa-tablet-button:before{content:"\f10a"}.fa-building-lock:before{content:"\e4d6"}.fa-pizza-slice:before{content:"\f818"}.fa-money-bill-wave:before{content:"\f53a"}.fa-area-chart:before,.fa-chart-area:before{content:"\f1fe"}.fa-house-flag:before{content:"\e50d"}.fa-person-circle-minus:before{content:"\e540"}.fa-ban:before,.fa-cancel:before{content:"\f05e"}.fa-camera-rotate:before{content:"\e0d8"}.fa-air-freshener:before,.fa-spray-can-sparkles:before{content:"\f5d0"}.fa-star:before{content:"\f005"}.fa-repeat:before{content:"\f363"}.fa-cross:before{content:"\f654"}.fa-box:before{content:"\f466"}.fa-venus-mars:before{content:"\f228"}.fa-arrow-pointer:before,.fa-mouse-pointer:before{content:"\f245"}.fa-expand-arrows-alt:before,.fa-maximize:before{content:"\f31e"}.fa-charging-station:before{content:"\f5e7"}.fa-shapes:before,.fa-triangle-circle-square:before{content:"\f61f"}.fa-random:before,.fa-shuffle:before{content:"\f074"}.fa-person-running:before,.fa-running:before{content:"\f70c"}.fa-mobile-retro:before{content:"\e527"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-spider:before{content:"\f717"}.fa-hands-bound:before{content:"\e4f9"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-plane-circle-exclamation:before{content:"\e556"}.fa-x-ray:before{content:"\f497"}.fa-spell-check:before{content:"\f891"}.fa-slash:before{content:"\f715"}.fa-computer-mouse:before,.fa-mouse:before{content:"\f8cc"}.fa-arrow-right-to-bracket:before,.fa-sign-in:before{content:"\f090"}.fa-shop-slash:before,.fa-store-alt-slash:before{content:"\e070"}.fa-server:before{content:"\f233"}.fa-virus-covid-slash:before{content:"\e4a9"}.fa-shop-lock:before{content:"\e4a5"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-blender-phone:before{content:"\f6b6"}.fa-building-wheat:before{content:"\e4db"}.fa-person-breastfeeding:before{content:"\e53a"}.fa-right-to-bracket:before,.fa-sign-in-alt:before{content:"\f2f6"}.fa-venus:before{content:"\f221"}.fa-passport:before{content:"\f5ab"}.fa-heart-pulse:before,.fa-heartbeat:before{content:"\f21e"}.fa-people-carry-box:before,.fa-people-carry:before{content:"\f4ce"}.fa-temperature-high:before{content:"\f769"}.fa-microchip:before{content:"\f2db"}.fa-crown:before{content:"\f521"}.fa-weight-hanging:before{content:"\f5cd"}.fa-xmarks-lines:before{content:"\e59a"}.fa-file-prescription:before{content:"\f572"}.fa-weight-scale:before,.fa-weight:before{content:"\f496"}.fa-user-friends:before,.fa-user-group:before{content:"\f500"}.fa-arrow-up-a-z:before,.fa-sort-alpha-up:before{content:"\f15e"}.fa-chess-knight:before{content:"\f441"}.fa-face-laugh-squint:before,.fa-laugh-squint:before{content:"\f59b"}.fa-wheelchair:before{content:"\f193"}.fa-arrow-circle-up:before,.fa-circle-arrow-up:before{content:"\f0aa"}.fa-toggle-on:before{content:"\f205"}.fa-person-walking:before,.fa-walking:before{content:"\f554"}.fa-l:before{content:"\4c"}.fa-fire:before{content:"\f06d"}.fa-bed-pulse:before,.fa-procedures:before{content:"\f487"}.fa-shuttle-space:before,.fa-space-shuttle:before{content:"\f197"}.fa-face-laugh:before,.fa-laugh:before{content:"\f599"}.fa-folder-open:before{content:"\f07c"}.fa-heart-circle-plus:before{content:"\e500"}.fa-code-fork:before{content:"\e13b"}.fa-city:before{content:"\f64f"}.fa-microphone-alt:before,.fa-microphone-lines:before{content:"\f3c9"}.fa-pepper-hot:before{content:"\f816"}.fa-unlock:before{content:"\f09c"}.fa-colon-sign:before{content:"\e140"}.fa-headset:before{content:"\f590"}.fa-store-slash:before{content:"\e071"}.fa-road-circle-xmark:before{content:"\e566"}.fa-user-minus:before{content:"\f503"}.fa-mars-stroke-up:before,.fa-mars-stroke-v:before{content:"\f22a"}.fa-champagne-glasses:before,.fa-glass-cheers:before{content:"\f79f"}.fa-clipboard:before{content:"\f328"}.fa-house-circle-exclamation:before{content:"\e50a"}.fa-file-arrow-up:before,.fa-file-upload:before{content:"\f574"}.fa-wifi-3:before,.fa-wifi-strong:before,.fa-wifi:before{content:"\f1eb"}.fa-bath:before,.fa-bathtub:before{content:"\f2cd"}.fa-underline:before{content:"\f0cd"}.fa-user-edit:before,.fa-user-pen:before{content:"\f4ff"}.fa-signature:before{content:"\f5b7"}.fa-stroopwafel:before{content:"\f551"}.fa-bold:before{content:"\f032"}.fa-anchor-lock:before{content:"\e4ad"}.fa-building-ngo:before{content:"\e4d7"}.fa-manat-sign:before{content:"\e1d5"}.fa-not-equal:before{content:"\f53e"}.fa-border-style:before,.fa-border-top-left:before{content:"\f853"}.fa-map-location-dot:before,.fa-map-marked-alt:before{content:"\f5a0"}.fa-jedi:before{content:"\f669"}.fa-poll:before,.fa-square-poll-vertical:before{content:"\f681"}.fa-mug-hot:before{content:"\f7b6"}.fa-battery-car:before,.fa-car-battery:before{content:"\f5df"}.fa-gift:before{content:"\f06b"}.fa-dice-two:before{content:"\f528"}.fa-chess-queen:before{content:"\f445"}.fa-glasses:before{content:"\f530"}.fa-chess-board:before{content:"\f43c"}.fa-building-circle-check:before{content:"\e4d2"}.fa-person-chalkboard:before{content:"\e53d"}.fa-mars-stroke-h:before,.fa-mars-stroke-right:before{content:"\f22b"}.fa-hand-back-fist:before,.fa-hand-rock:before{content:"\f255"}.fa-caret-square-up:before,.fa-square-caret-up:before{content:"\f151"}.fa-cloud-showers-water:before{content:"\e4e4"}.fa-bar-chart:before,.fa-chart-bar:before{content:"\f080"}.fa-hands-bubbles:before,.fa-hands-wash:before{content:"\e05e"}.fa-less-than-equal:before{content:"\f537"}.fa-train:before{content:"\f238"}.fa-eye-low-vision:before,.fa-low-vision:before{content:"\f2a8"}.fa-crow:before{content:"\f520"}.fa-sailboat:before{content:"\e445"}.fa-window-restore:before{content:"\f2d2"}.fa-plus-square:before,.fa-square-plus:before{content:"\f0fe"}.fa-torii-gate:before{content:"\f6a1"}.fa-frog:before{content:"\f52e"}.fa-bucket:before{content:"\e4cf"}.fa-image:before{content:"\f03e"}.fa-microphone:before{content:"\f130"}.fa-cow:before{content:"\f6c8"}.fa-caret-up:before{content:"\f0d8"}.fa-screwdriver:before{content:"\f54a"}.fa-folder-closed:before{content:"\e185"}.fa-house-tsunami:before{content:"\e515"}.fa-square-nfi:before{content:"\e576"}.fa-arrow-up-from-ground-water:before{content:"\e4b5"}.fa-glass-martini-alt:before,.fa-martini-glass:before{content:"\f57b"}.fa-rotate-back:before,.fa-rotate-backward:before,.fa-rotate-left:before,.fa-undo-alt:before{content:"\f2ea"}.fa-columns:before,.fa-table-columns:before{content:"\f0db"}.fa-lemon:before{content:"\f094"}.fa-head-side-mask:before{content:"\e063"}.fa-handshake:before{content:"\f2b5"}.fa-gem:before{content:"\f3a5"}.fa-dolly-box:before,.fa-dolly:before{content:"\f472"}.fa-smoking:before{content:"\f48d"}.fa-compress-arrows-alt:before,.fa-minimize:before{content:"\f78c"}.fa-monument:before{content:"\f5a6"}.fa-snowplow:before{content:"\f7d2"}.fa-angle-double-right:before,.fa-angles-right:before{content:"\f101"}.fa-cannabis:before{content:"\f55f"}.fa-circle-play:before,.fa-play-circle:before{content:"\f144"}.fa-tablets:before{content:"\f490"}.fa-ethernet:before{content:"\f796"}.fa-eur:before,.fa-euro-sign:before,.fa-euro:before{content:"\f153"}.fa-chair:before{content:"\f6c0"}.fa-check-circle:before,.fa-circle-check:before{content:"\f058"}.fa-circle-stop:before,.fa-stop-circle:before{content:"\f28d"}.fa-compass-drafting:before,.fa-drafting-compass:before{content:"\f568"}.fa-plate-wheat:before{content:"\e55a"}.fa-icicles:before{content:"\f7ad"}.fa-person-shelter:before{content:"\e54f"}.fa-neuter:before{content:"\f22c"}.fa-id-badge:before{content:"\f2c1"}.fa-marker:before{content:"\f5a1"}.fa-face-laugh-beam:before,.fa-laugh-beam:before{content:"\f59a"}.fa-helicopter-symbol:before{content:"\e502"}.fa-universal-access:before{content:"\f29a"}.fa-chevron-circle-up:before,.fa-circle-chevron-up:before{content:"\f139"}.fa-lari-sign:before{content:"\e1c8"}.fa-volcano:before{content:"\f770"}.fa-person-walking-dashed-line-arrow-right:before{content:"\e553"}.fa-gbp:before,.fa-pound-sign:before,.fa-sterling-sign:before{content:"\f154"}.fa-viruses:before{content:"\e076"}.fa-square-person-confined:before{content:"\e577"}.fa-user-tie:before{content:"\f508"}.fa-arrow-down-long:before,.fa-long-arrow-down:before{content:"\f175"}.fa-tent-arrow-down-to-line:before{content:"\e57e"}.fa-certificate:before{content:"\f0a3"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-suitcase:before{content:"\f0f2"}.fa-person-skating:before,.fa-skating:before{content:"\f7c5"}.fa-filter-circle-dollar:before,.fa-funnel-dollar:before{content:"\f662"}.fa-camera-retro:before{content:"\f083"}.fa-arrow-circle-down:before,.fa-circle-arrow-down:before{content:"\f0ab"}.fa-arrow-right-to-file:before,.fa-file-import:before{content:"\f56f"}.fa-external-link-square:before,.fa-square-arrow-up-right:before{content:"\f14c"}.fa-box-open:before{content:"\f49e"}.fa-scroll:before{content:"\f70e"}.fa-spa:before{content:"\f5bb"}.fa-location-pin-lock:before{content:"\e51f"}.fa-pause:before{content:"\f04c"}.fa-hill-avalanche:before{content:"\e507"}.fa-temperature-0:before,.fa-temperature-empty:before,.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-bomb:before{content:"\f1e2"}.fa-registered:before{content:"\f25d"}.fa-address-card:before,.fa-contact-card:before,.fa-vcard:before{content:"\f2bb"}.fa-balance-scale-right:before,.fa-scale-unbalanced-flip:before{content:"\f516"}.fa-subscript:before{content:"\f12c"}.fa-diamond-turn-right:before,.fa-directions:before{content:"\f5eb"}.fa-burst:before{content:"\e4dc"}.fa-house-laptop:before,.fa-laptop-house:before{content:"\e066"}.fa-face-tired:before,.fa-tired:before{content:"\f5c8"}.fa-money-bills:before{content:"\e1f3"}.fa-smog:before{content:"\f75f"}.fa-crutch:before{content:"\f7f7"}.fa-cloud-arrow-up:before,.fa-cloud-upload-alt:before,.fa-cloud-upload:before{content:"\f0ee"}.fa-palette:before{content:"\f53f"}.fa-arrows-turn-right:before{content:"\e4c0"}.fa-vest:before{content:"\e085"}.fa-ferry:before{content:"\e4ea"}.fa-arrows-down-to-people:before{content:"\e4b9"}.fa-seedling:before,.fa-sprout:before{content:"\f4d8"}.fa-arrows-alt-h:before,.fa-left-right:before{content:"\f337"}.fa-boxes-packing:before{content:"\e4c7"}.fa-arrow-circle-left:before,.fa-circle-arrow-left:before{content:"\f0a8"}.fa-group-arrows-rotate:before{content:"\e4f6"}.fa-bowl-food:before{content:"\e4c6"}.fa-candy-cane:before{content:"\f786"}.fa-arrow-down-wide-short:before,.fa-sort-amount-asc:before,.fa-sort-amount-down:before{content:"\f160"}.fa-cloud-bolt:before,.fa-thunderstorm:before{content:"\f76c"}.fa-remove-format:before,.fa-text-slash:before{content:"\f87d"}.fa-face-smile-wink:before,.fa-smile-wink:before{content:"\f4da"}.fa-file-word:before{content:"\f1c2"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-arrows-h:before,.fa-arrows-left-right:before{content:"\f07e"}.fa-house-lock:before{content:"\e510"}.fa-cloud-arrow-down:before,.fa-cloud-download-alt:before,.fa-cloud-download:before{content:"\f0ed"}.fa-children:before{content:"\e4e1"}.fa-blackboard:before,.fa-chalkboard:before{content:"\f51b"}.fa-user-alt-slash:before,.fa-user-large-slash:before{content:"\f4fa"}.fa-envelope-open:before{content:"\f2b6"}.fa-handshake-alt-slash:before,.fa-handshake-simple-slash:before{content:"\e05f"}.fa-mattress-pillow:before{content:"\e525"}.fa-guarani-sign:before{content:"\e19a"}.fa-arrows-rotate:before,.fa-refresh:before,.fa-sync:before{content:"\f021"}.fa-fire-extinguisher:before{content:"\f134"}.fa-cruzeiro-sign:before{content:"\e152"}.fa-greater-than-equal:before{content:"\f532"}.fa-shield-alt:before,.fa-shield-halved:before{content:"\f3ed"}.fa-atlas:before,.fa-book-atlas:before{content:"\f558"}.fa-virus:before{content:"\e074"}.fa-envelope-circle-check:before{content:"\e4e8"}.fa-layer-group:before{content:"\f5fd"}.fa-arrows-to-dot:before{content:"\e4be"}.fa-archway:before{content:"\f557"}.fa-heart-circle-check:before{content:"\e4fd"}.fa-house-chimney-crack:before,.fa-house-damage:before{content:"\f6f1"}.fa-file-archive:before,.fa-file-zipper:before{content:"\f1c6"}.fa-square:before{content:"\f0c8"}.fa-glass-martini:before,.fa-martini-glass-empty:before{content:"\f000"}.fa-couch:before{content:"\f4b8"}.fa-cedi-sign:before{content:"\e0df"}.fa-italic:before{content:"\f033"}.fa-church:before{content:"\f51d"}.fa-comments-dollar:before{content:"\f653"}.fa-democrat:before{content:"\f747"}.fa-z:before{content:"\5a"}.fa-person-skiing:before,.fa-skiing:before{content:"\f7c9"}.fa-road-lock:before{content:"\e567"}.fa-a:before{content:"\41"}.fa-temperature-arrow-down:before,.fa-temperature-down:before{content:"\e03f"}.fa-feather-alt:before,.fa-feather-pointed:before{content:"\f56b"}.fa-p:before{content:"\50"}.fa-snowflake:before{content:"\f2dc"}.fa-newspaper:before{content:"\f1ea"}.fa-ad:before,.fa-rectangle-ad:before{content:"\f641"}.fa-arrow-circle-right:before,.fa-circle-arrow-right:before{content:"\f0a9"}.fa-filter-circle-xmark:before{content:"\e17b"}.fa-locust:before{content:"\e520"}.fa-sort:before,.fa-unsorted:before{content:"\f0dc"}.fa-list-1-2:before,.fa-list-numeric:before,.fa-list-ol:before{content:"\f0cb"}.fa-person-dress-burst:before{content:"\e544"}.fa-money-check-alt:before,.fa-money-check-dollar:before{content:"\f53d"}.fa-vector-square:before{content:"\f5cb"}.fa-bread-slice:before{content:"\f7ec"}.fa-language:before{content:"\f1ab"}.fa-face-kiss-wink-heart:before,.fa-kiss-wink-heart:before{content:"\f598"}.fa-filter:before{content:"\f0b0"}.fa-question:before{content:"\3f"}.fa-file-signature:before{content:"\f573"}.fa-arrows-alt:before,.fa-up-down-left-right:before{content:"\f0b2"}.fa-house-chimney-user:before{content:"\e065"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-puzzle-piece:before{content:"\f12e"}.fa-money-check:before{content:"\f53c"}.fa-star-half-alt:before,.fa-star-half-stroke:before{content:"\f5c0"}.fa-code:before{content:"\f121"}.fa-glass-whiskey:before,.fa-whiskey-glass:before{content:"\f7a0"}.fa-building-circle-exclamation:before{content:"\e4d3"}.fa-magnifying-glass-chart:before{content:"\e522"}.fa-arrow-up-right-from-square:before,.fa-external-link:before{content:"\f08e"}.fa-cubes-stacked:before{content:"\e4e6"}.fa-krw:before,.fa-won-sign:before,.fa-won:before{content:"\f159"}.fa-virus-covid:before{content:"\e4a8"}.fa-austral-sign:before{content:"\e0a9"}.fa-f:before{content:"\46"}.fa-leaf:before{content:"\f06c"}.fa-road:before{content:"\f018"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-person-circle-plus:before{content:"\e541"}.fa-chart-pie:before,.fa-pie-chart:before{content:"\f200"}.fa-bolt-lightning:before{content:"\e0b7"}.fa-sack-xmark:before{content:"\e56a"}.fa-file-excel:before{content:"\f1c3"}.fa-file-contract:before{content:"\f56c"}.fa-fish-fins:before{content:"\e4f2"}.fa-building-flag:before{content:"\e4d5"}.fa-face-grin-beam:before,.fa-grin-beam:before{content:"\f582"}.fa-object-ungroup:before{content:"\f248"}.fa-poop:before{content:"\f619"}.fa-location-pin:before,.fa-map-marker:before{content:"\f041"}.fa-kaaba:before{content:"\f66b"}.fa-toilet-paper:before{content:"\f71e"}.fa-hard-hat:before,.fa-hat-hard:before,.fa-helmet-safety:before{content:"\f807"}.fa-eject:before{content:"\f052"}.fa-arrow-alt-circle-right:before,.fa-circle-right:before{content:"\f35a"}.fa-plane-circle-check:before{content:"\e555"}.fa-face-rolling-eyes:before,.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-object-group:before{content:"\f247"}.fa-chart-line:before,.fa-line-chart:before{content:"\f201"}.fa-mask-ventilator:before{content:"\e524"}.fa-arrow-right:before{content:"\f061"}.fa-map-signs:before,.fa-signs-post:before{content:"\f277"}.fa-cash-register:before{content:"\f788"}.fa-person-circle-question:before{content:"\e542"}.fa-h:before{content:"\48"}.fa-tarp:before{content:"\e57b"}.fa-screwdriver-wrench:before,.fa-tools:before{content:"\f7d9"}.fa-arrows-to-eye:before{content:"\e4bf"}.fa-plug-circle-bolt:before{content:"\e55b"}.fa-heart:before{content:"\f004"}.fa-mars-and-venus:before{content:"\f224"}.fa-home-user:before,.fa-house-user:before{content:"\e1b0"}.fa-dumpster-fire:before{content:"\f794"}.fa-house-crack:before{content:"\e3b1"}.fa-cocktail:before,.fa-martini-glass-citrus:before{content:"\f561"}.fa-face-surprise:before,.fa-surprise:before{content:"\f5c2"}.fa-bottle-water:before{content:"\e4c5"}.fa-circle-pause:before,.fa-pause-circle:before{content:"\f28b"}.fa-toilet-paper-slash:before{content:"\e072"}.fa-apple-alt:before,.fa-apple-whole:before{content:"\f5d1"}.fa-kitchen-set:before{content:"\e51a"}.fa-r:before{content:"\52"}.fa-temperature-1:before,.fa-temperature-quarter:before,.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-cube:before{content:"\f1b2"}.fa-bitcoin-sign:before{content:"\e0b4"}.fa-shield-dog:before{content:"\e573"}.fa-solar-panel:before{content:"\f5ba"}.fa-lock-open:before{content:"\f3c1"}.fa-elevator:before{content:"\e16d"}.fa-money-bill-transfer:before{content:"\e528"}.fa-money-bill-trend-up:before{content:"\e529"}.fa-house-flood-water-circle-arrow-right:before{content:"\e50f"}.fa-poll-h:before,.fa-square-poll-horizontal:before{content:"\f682"}.fa-circle:before{content:"\f111"}.fa-backward-fast:before,.fa-fast-backward:before{content:"\f049"}.fa-recycle:before{content:"\f1b8"}.fa-user-astronaut:before{content:"\f4fb"}.fa-plane-slash:before{content:"\e069"}.fa-trademark:before{content:"\f25c"}.fa-basketball-ball:before,.fa-basketball:before{content:"\f434"}.fa-satellite-dish:before{content:"\f7c0"}.fa-arrow-alt-circle-up:before,.fa-circle-up:before{content:"\f35b"}.fa-mobile-alt:before,.fa-mobile-screen-button:before{content:"\f3cd"}.fa-volume-high:before,.fa-volume-up:before{content:"\f028"}.fa-users-rays:before{content:"\e593"}.fa-wallet:before{content:"\f555"}.fa-clipboard-check:before{content:"\f46c"}.fa-file-audio:before{content:"\f1c7"}.fa-burger:before,.fa-hamburger:before{content:"\f805"}.fa-wrench:before{content:"\f0ad"}.fa-bugs:before{content:"\e4d0"}.fa-rupee-sign:before,.fa-rupee:before{content:"\f156"}.fa-file-image:before{content:"\f1c5"}.fa-circle-question:before,.fa-question-circle:before{content:"\f059"}.fa-plane-departure:before{content:"\f5b0"}.fa-handshake-slash:before{content:"\e060"}.fa-book-bookmark:before{content:"\e0bb"}.fa-code-branch:before{content:"\f126"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-bridge:before{content:"\e4c8"}.fa-phone-alt:before,.fa-phone-flip:before{content:"\f879"}.fa-truck-front:before{content:"\e2b7"}.fa-cat:before{content:"\f6be"}.fa-anchor-circle-exclamation:before{content:"\e4ab"}.fa-truck-field:before{content:"\e58d"}.fa-route:before{content:"\f4d7"}.fa-clipboard-question:before{content:"\e4e3"}.fa-panorama:before{content:"\e209"}.fa-comment-medical:before{content:"\f7f5"}.fa-teeth-open:before{content:"\f62f"}.fa-file-circle-minus:before{content:"\e4ed"}.fa-tags:before{content:"\f02c"}.fa-wine-glass:before{content:"\f4e3"}.fa-fast-forward:before,.fa-forward-fast:before{content:"\f050"}.fa-face-meh-blank:before,.fa-meh-blank:before{content:"\f5a4"}.fa-parking:before,.fa-square-parking:before{content:"\f540"}.fa-house-signal:before{content:"\e012"}.fa-bars-progress:before,.fa-tasks-alt:before{content:"\f828"}.fa-faucet-drip:before{content:"\e006"}.fa-cart-flatbed:before,.fa-dolly-flatbed:before{content:"\f474"}.fa-ban-smoking:before,.fa-smoking-ban:before{content:"\f54d"}.fa-terminal:before{content:"\f120"}.fa-mobile-button:before{content:"\f10b"}.fa-house-medical-flag:before{content:"\e514"}.fa-basket-shopping:before,.fa-shopping-basket:before{content:"\f291"}.fa-tape:before{content:"\f4db"}.fa-bus-alt:before,.fa-bus-simple:before{content:"\f55e"}.fa-eye:before{content:"\f06e"}.fa-face-sad-cry:before,.fa-sad-cry:before{content:"\f5b3"}.fa-audio-description:before{content:"\f29e"}.fa-person-military-to-person:before{content:"\e54c"}.fa-file-shield:before{content:"\e4f0"}.fa-user-slash:before{content:"\f506"}.fa-pen:before{content:"\f304"}.fa-tower-observation:before{content:"\e586"}.fa-file-code:before{content:"\f1c9"}.fa-signal-5:before,.fa-signal-perfect:before,.fa-signal:before{content:"\f012"}.fa-bus:before{content:"\f207"}.fa-heart-circle-xmark:before{content:"\e501"}.fa-home-lg:before,.fa-house-chimney:before{content:"\e3af"}.fa-window-maximize:before{content:"\f2d0"}.fa-face-frown:before,.fa-frown:before{content:"\f119"}.fa-prescription:before{content:"\f5b1"}.fa-shop:before,.fa-store-alt:before{content:"\f54f"}.fa-floppy-disk:before,.fa-save:before{content:"\f0c7"}.fa-vihara:before{content:"\f6a7"}.fa-balance-scale-left:before,.fa-scale-unbalanced:before{content:"\f515"}.fa-sort-asc:before,.fa-sort-up:before{content:"\f0de"}.fa-comment-dots:before,.fa-commenting:before{content:"\f4ad"}.fa-plant-wilt:before{content:"\e5aa"}.fa-diamond:before{content:"\f219"}.fa-face-grin-squint:before,.fa-grin-squint:before{content:"\f585"}.fa-hand-holding-dollar:before,.fa-hand-holding-usd:before{content:"\f4c0"}.fa-bacterium:before{content:"\e05a"}.fa-hand-pointer:before{content:"\f25a"}.fa-drum-steelpan:before{content:"\f56a"}.fa-hand-scissors:before{content:"\f257"}.fa-hands-praying:before,.fa-praying-hands:before{content:"\f684"}.fa-arrow-right-rotate:before,.fa-arrow-rotate-forward:before,.fa-arrow-rotate-right:before,.fa-redo:before{content:"\f01e"}.fa-biohazard:before{content:"\f780"}.fa-location-crosshairs:before,.fa-location:before{content:"\f601"}.fa-mars-double:before{content:"\f227"}.fa-child-dress:before{content:"\e59c"}.fa-users-between-lines:before{content:"\e591"}.fa-lungs-virus:before{content:"\e067"}.fa-face-grin-tears:before,.fa-grin-tears:before{content:"\f588"}.fa-phone:before{content:"\f095"}.fa-calendar-times:before,.fa-calendar-xmark:before{content:"\f273"}.fa-child-reaching:before{content:"\e59d"}.fa-head-side-virus:before{content:"\e064"}.fa-user-cog:before,.fa-user-gear:before{content:"\f4fe"}.fa-arrow-up-1-9:before,.fa-sort-numeric-up:before{content:"\f163"}.fa-door-closed:before{content:"\f52a"}.fa-shield-virus:before{content:"\e06c"}.fa-dice-six:before{content:"\f526"}.fa-mosquito-net:before{content:"\e52c"}.fa-bridge-water:before{content:"\e4ce"}.fa-person-booth:before{content:"\f756"}.fa-text-width:before{content:"\f035"}.fa-hat-wizard:before{content:"\f6e8"}.fa-pen-fancy:before{content:"\f5ac"}.fa-digging:before,.fa-person-digging:before{content:"\f85e"}.fa-trash:before{content:"\f1f8"}.fa-gauge-simple-med:before,.fa-gauge-simple:before,.fa-tachometer-average:before{content:"\f629"}.fa-book-medical:before{content:"\f7e6"}.fa-poo:before{content:"\f2fe"}.fa-quote-right-alt:before,.fa-quote-right:before{content:"\f10e"}.fa-shirt:before,.fa-t-shirt:before,.fa-tshirt:before{content:"\f553"}.fa-cubes:before{content:"\f1b3"}.fa-divide:before{content:"\f529"}.fa-tenge-sign:before,.fa-tenge:before{content:"\f7d7"}.fa-headphones:before{content:"\f025"}.fa-hands-holding:before{content:"\f4c2"}.fa-hands-clapping:before{content:"\e1a8"}.fa-republican:before{content:"\f75e"}.fa-arrow-left:before{content:"\f060"}.fa-person-circle-xmark:before{content:"\e543"}.fa-ruler:before{content:"\f545"}.fa-align-left:before{content:"\f036"}.fa-dice-d6:before{content:"\f6d1"}.fa-restroom:before{content:"\f7bd"}.fa-j:before{content:"\4a"}.fa-users-viewfinder:before{content:"\e595"}.fa-file-video:before{content:"\f1c8"}.fa-external-link-alt:before,.fa-up-right-from-square:before{content:"\f35d"}.fa-table-cells:before,.fa-th:before{content:"\f00a"}.fa-file-pdf:before{content:"\f1c1"}.fa-bible:before,.fa-book-bible:before{content:"\f647"}.fa-o:before{content:"\4f"}.fa-medkit:before,.fa-suitcase-medical:before{content:"\f0fa"}.fa-user-secret:before{content:"\f21b"}.fa-otter:before{content:"\f700"}.fa-female:before,.fa-person-dress:before{content:"\f182"}.fa-comment-dollar:before{content:"\f651"}.fa-briefcase-clock:before,.fa-business-time:before{content:"\f64a"}.fa-table-cells-large:before,.fa-th-large:before{content:"\f009"}.fa-book-tanakh:before,.fa-tanakh:before{content:"\f827"}.fa-phone-volume:before,.fa-volume-control-phone:before{content:"\f2a0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-clipboard-user:before{content:"\f7f3"}.fa-child:before{content:"\f1ae"}.fa-lira-sign:before{content:"\f195"}.fa-satellite:before{content:"\f7bf"}.fa-plane-lock:before{content:"\e558"}.fa-tag:before{content:"\f02b"}.fa-comment:before{content:"\f075"}.fa-birthday-cake:before,.fa-cake-candles:before,.fa-cake:before{content:"\f1fd"}.fa-envelope:before{content:"\f0e0"}.fa-angle-double-up:before,.fa-angles-up:before{content:"\f102"}.fa-paperclip:before{content:"\f0c6"}.fa-arrow-right-to-city:before{content:"\e4b3"}.fa-ribbon:before{content:"\f4d6"}.fa-lungs:before{content:"\f604"}.fa-arrow-up-9-1:before,.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-litecoin-sign:before{content:"\e1d3"}.fa-border-none:before{content:"\f850"}.fa-circle-nodes:before{content:"\e4e2"}.fa-parachute-box:before{content:"\f4cd"}.fa-indent:before{content:"\f03c"}.fa-truck-field-un:before{content:"\e58e"}.fa-hourglass-empty:before,.fa-hourglass:before{content:"\f254"}.fa-mountain:before{content:"\f6fc"}.fa-user-doctor:before,.fa-user-md:before{content:"\f0f0"}.fa-circle-info:before,.fa-info-circle:before{content:"\f05a"}.fa-cloud-meatball:before{content:"\f73b"}.fa-camera-alt:before,.fa-camera:before{content:"\f030"}.fa-square-virus:before{content:"\e578"}.fa-meteor:before{content:"\f753"}.fa-car-on:before{content:"\e4dd"}.fa-sleigh:before{content:"\f7cc"}.fa-arrow-down-1-9:before,.fa-sort-numeric-asc:before,.fa-sort-numeric-down:before{content:"\f162"}.fa-hand-holding-droplet:before,.fa-hand-holding-water:before{content:"\f4c1"}.fa-water:before{content:"\f773"}.fa-calendar-check:before{content:"\f274"}.fa-braille:before{content:"\f2a1"}.fa-prescription-bottle-alt:before,.fa-prescription-bottle-medical:before{content:"\f486"}.fa-landmark:before{content:"\f66f"}.fa-truck:before{content:"\f0d1"}.fa-crosshairs:before{content:"\f05b"}.fa-person-cane:before{content:"\e53c"}.fa-tent:before{content:"\e57d"}.fa-vest-patches:before{content:"\e086"}.fa-check-double:before{content:"\f560"}.fa-arrow-down-a-z:before,.fa-sort-alpha-asc:before,.fa-sort-alpha-down:before{content:"\f15d"}.fa-money-bill-wheat:before{content:"\e52a"}.fa-cookie:before{content:"\f563"}.fa-arrow-left-rotate:before,.fa-arrow-rotate-back:before,.fa-arrow-rotate-backward:before,.fa-arrow-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-hard-drive:before,.fa-hdd:before{content:"\f0a0"}.fa-face-grin-squint-tears:before,.fa-grin-squint-tears:before{content:"\f586"}.fa-dumbbell:before{content:"\f44b"}.fa-list-alt:before,.fa-rectangle-list:before{content:"\f022"}.fa-tarp-droplet:before{content:"\e57c"}.fa-house-medical-circle-check:before{content:"\e511"}.fa-person-skiing-nordic:before,.fa-skiing-nordic:before{content:"\f7ca"}.fa-calendar-plus:before{content:"\f271"}.fa-plane-arrival:before{content:"\f5af"}.fa-arrow-alt-circle-left:before,.fa-circle-left:before{content:"\f359"}.fa-subway:before,.fa-train-subway:before{content:"\f239"}.fa-chart-gantt:before{content:"\e0e4"}.fa-indian-rupee-sign:before,.fa-indian-rupee:before,.fa-inr:before{content:"\e1bc"}.fa-crop-alt:before,.fa-crop-simple:before{content:"\f565"}.fa-money-bill-1:before,.fa-money-bill-alt:before{content:"\f3d1"}.fa-left-long:before,.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-dna:before{content:"\f471"}.fa-virus-slash:before{content:"\e075"}.fa-minus:before,.fa-subtract:before{content:"\f068"}.fa-chess:before{content:"\f439"}.fa-arrow-left-long:before,.fa-long-arrow-left:before{content:"\f177"}.fa-plug-circle-check:before{content:"\e55c"}.fa-street-view:before{content:"\f21d"}.fa-franc-sign:before{content:"\e18f"}.fa-volume-off:before{content:"\f026"}.fa-american-sign-language-interpreting:before,.fa-asl-interpreting:before,.fa-hands-american-sign-language-interpreting:before,.fa-hands-asl-interpreting:before{content:"\f2a3"}.fa-cog:before,.fa-gear:before{content:"\f013"}.fa-droplet-slash:before,.fa-tint-slash:before{content:"\f5c7"}.fa-mosque:before{content:"\f678"}.fa-mosquito:before{content:"\e52b"}.fa-star-of-david:before{content:"\f69a"}.fa-person-military-rifle:before{content:"\e54b"}.fa-cart-shopping:before,.fa-shopping-cart:before{content:"\f07a"}.fa-vials:before{content:"\f493"}.fa-plug-circle-plus:before{content:"\e55f"}.fa-place-of-worship:before{content:"\f67f"}.fa-grip-vertical:before{content:"\f58e"}.fa-arrow-turn-up:before,.fa-level-up:before{content:"\f148"}.fa-u:before{content:"\55"}.fa-square-root-alt:before,.fa-square-root-variable:before{content:"\f698"}.fa-clock-four:before,.fa-clock:before{content:"\f017"}.fa-backward-step:before,.fa-step-backward:before{content:"\f048"}.fa-pallet:before{content:"\f482"}.fa-faucet:before{content:"\e005"}.fa-baseball-bat-ball:before{content:"\f432"}.fa-s:before{content:"\53"}.fa-timeline:before{content:"\e29c"}.fa-keyboard:before{content:"\f11c"}.fa-caret-down:before{content:"\f0d7"}.fa-clinic-medical:before,.fa-house-chimney-medical:before{content:"\f7f2"}.fa-temperature-3:before,.fa-temperature-three-quarters:before,.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-mobile-android-alt:before,.fa-mobile-screen:before{content:"\f3cf"}.fa-plane-up:before{content:"\e22d"}.fa-piggy-bank:before{content:"\f4d3"}.fa-battery-3:before,.fa-battery-half:before{content:"\f242"}.fa-mountain-city:before{content:"\e52e"}.fa-coins:before{content:"\f51e"}.fa-khanda:before{content:"\f66d"}.fa-sliders-h:before,.fa-sliders:before{content:"\f1de"}.fa-folder-tree:before{content:"\f802"}.fa-network-wired:before{content:"\f6ff"}.fa-map-pin:before{content:"\f276"}.fa-hamsa:before{content:"\f665"}.fa-cent-sign:before{content:"\e3f5"}.fa-flask:before{content:"\f0c3"}.fa-person-pregnant:before{content:"\e31e"}.fa-wand-sparkles:before{content:"\f72b"}.fa-ellipsis-v:before,.fa-ellipsis-vertical:before{content:"\f142"}.fa-ticket:before{content:"\f145"}.fa-power-off:before{content:"\f011"}.fa-long-arrow-alt-right:before,.fa-right-long:before{content:"\f30b"}.fa-flag-usa:before{content:"\f74d"}.fa-laptop-file:before{content:"\e51d"}.fa-teletype:before,.fa-tty:before{content:"\f1e4"}.fa-diagram-next:before{content:"\e476"}.fa-person-rifle:before{content:"\e54e"}.fa-house-medical-circle-exclamation:before{content:"\e512"}.fa-closed-captioning:before{content:"\f20a"}.fa-hiking:before,.fa-person-hiking:before{content:"\f6ec"}.fa-venus-double:before{content:"\f226"}.fa-images:before{content:"\f302"}.fa-calculator:before{content:"\f1ec"}.fa-people-pulling:before{content:"\e535"}.fa-n:before{content:"\4e"}.fa-cable-car:before,.fa-tram:before{content:"\f7da"}.fa-cloud-rain:before{content:"\f73d"}.fa-building-circle-xmark:before{content:"\e4d4"}.fa-ship:before{content:"\f21a"}.fa-arrows-down-to-line:before{content:"\e4b8"}.fa-download:before{content:"\f019"}.fa-face-grin:before,.fa-grin:before{content:"\f580"}.fa-backspace:before,.fa-delete-left:before{content:"\f55a"}.fa-eye-dropper-empty:before,.fa-eye-dropper:before,.fa-eyedropper:before{content:"\f1fb"}.fa-file-circle-check:before{content:"\e5a0"}.fa-forward:before{content:"\f04e"}.fa-mobile-android:before,.fa-mobile-phone:before,.fa-mobile:before{content:"\f3ce"}.fa-face-meh:before,.fa-meh:before{content:"\f11a"}.fa-align-center:before{content:"\f037"}.fa-book-dead:before,.fa-book-skull:before{content:"\f6b7"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-heart-circle-exclamation:before{content:"\e4fe"}.fa-home-alt:before,.fa-home-lg-alt:before,.fa-home:before,.fa-house:before{content:"\f015"}.fa-calendar-week:before{content:"\f784"}.fa-laptop-medical:before{content:"\f812"}.fa-b:before{content:"\42"}.fa-file-medical:before{content:"\f477"}.fa-dice-one:before{content:"\f525"}.fa-kiwi-bird:before{content:"\f535"}.fa-arrow-right-arrow-left:before,.fa-exchange:before{content:"\f0ec"}.fa-redo-alt:before,.fa-rotate-forward:before,.fa-rotate-right:before{content:"\f2f9"}.fa-cutlery:before,.fa-utensils:before{content:"\f2e7"}.fa-arrow-up-wide-short:before,.fa-sort-amount-up:before{content:"\f161"}.fa-mill-sign:before{content:"\e1ed"}.fa-bowl-rice:before{content:"\e2eb"}.fa-skull:before{content:"\f54c"}.fa-broadcast-tower:before,.fa-tower-broadcast:before{content:"\f519"}.fa-truck-pickup:before{content:"\f63c"}.fa-long-arrow-alt-up:before,.fa-up-long:before{content:"\f30c"}.fa-stop:before{content:"\f04d"}.fa-code-merge:before{content:"\f387"}.fa-upload:before{content:"\f093"}.fa-hurricane:before{content:"\f751"}.fa-mound:before{content:"\e52d"}.fa-toilet-portable:before{content:"\e583"}.fa-compact-disc:before{content:"\f51f"}.fa-file-arrow-down:before,.fa-file-download:before{content:"\f56d"}.fa-caravan:before{content:"\f8ff"}.fa-shield-cat:before{content:"\e572"}.fa-bolt:before,.fa-zap:before{content:"\f0e7"}.fa-glass-water:before{content:"\e4f4"}.fa-oil-well:before{content:"\e532"}.fa-vault:before{content:"\e2c5"}.fa-mars:before{content:"\f222"}.fa-toilet:before{content:"\f7d8"}.fa-plane-circle-xmark:before{content:"\e557"}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen-sign:before,.fa-yen:before{content:"\f157"}.fa-rouble:before,.fa-rub:before,.fa-ruble-sign:before,.fa-ruble:before{content:"\f158"}.fa-sun:before{content:"\f185"}.fa-guitar:before{content:"\f7a6"}.fa-face-laugh-wink:before,.fa-laugh-wink:before{content:"\f59c"}.fa-horse-head:before{content:"\f7ab"}.fa-bore-hole:before{content:"\e4c3"}.fa-industry:before{content:"\f275"}.fa-arrow-alt-circle-down:before,.fa-circle-down:before{content:"\f358"}.fa-arrows-turn-to-dots:before{content:"\e4c1"}.fa-florin-sign:before{content:"\e184"}.fa-arrow-down-short-wide:before,.fa-sort-amount-desc:before,.fa-sort-amount-down-alt:before{content:"\f884"}.fa-less-than:before{content:"\3c"}.fa-angle-down:before{content:"\f107"}.fa-car-tunnel:before{content:"\e4de"}.fa-head-side-cough:before{content:"\e061"}.fa-grip-lines:before{content:"\f7a4"}.fa-thumbs-down:before{content:"\f165"}.fa-user-lock:before{content:"\f502"}.fa-arrow-right-long:before,.fa-long-arrow-right:before{content:"\f178"}.fa-anchor-circle-xmark:before{content:"\e4ac"}.fa-ellipsis-h:before,.fa-ellipsis:before{content:"\f141"}.fa-chess-pawn:before{content:"\f443"}.fa-first-aid:before,.fa-kit-medical:before{content:"\f479"}.fa-person-through-window:before{content:"\e5a9"}.fa-toolbox:before{content:"\f552"}.fa-hands-holding-circle:before{content:"\e4fb"}.fa-bug:before{content:"\f188"}.fa-credit-card-alt:before,.fa-credit-card:before{content:"\f09d"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-hand-holding-hand:before{content:"\e4f7"}.fa-book-open-reader:before,.fa-book-reader:before{content:"\f5da"}.fa-mountain-sun:before{content:"\e52f"}.fa-arrows-left-right-to-line:before{content:"\e4ba"}.fa-dice-d20:before{content:"\f6cf"}.fa-truck-droplet:before{content:"\e58c"}.fa-file-circle-xmark:before{content:"\e5a1"}.fa-temperature-arrow-up:before,.fa-temperature-up:before{content:"\e040"}.fa-medal:before{content:"\f5a2"}.fa-bed:before{content:"\f236"}.fa-h-square:before,.fa-square-h:before{content:"\f0fd"}.fa-podcast:before{content:"\f2ce"}.fa-temperature-4:before,.fa-temperature-full:before,.fa-thermometer-4:before,.fa-thermometer-full:before{content:"\f2c7"}.fa-bell:before{content:"\f0f3"}.fa-superscript:before{content:"\f12b"}.fa-plug-circle-xmark:before{content:"\e560"}.fa-star-of-life:before{content:"\f621"}.fa-phone-slash:before{content:"\f3dd"}.fa-paint-roller:before{content:"\f5aa"}.fa-hands-helping:before,.fa-handshake-angle:before{content:"\f4c4"}.fa-location-dot:before,.fa-map-marker-alt:before{content:"\f3c5"}.fa-file:before{content:"\f15b"}.fa-greater-than:before{content:"\3e"}.fa-person-swimming:before,.fa-swimmer:before{content:"\f5c4"}.fa-arrow-down:before{content:"\f063"}.fa-droplet:before,.fa-tint:before{content:"\f043"}.fa-eraser:before{content:"\f12d"}.fa-earth-america:before,.fa-earth-americas:before,.fa-earth:before,.fa-globe-americas:before{content:"\f57d"}.fa-person-burst:before{content:"\e53b"}.fa-dove:before{content:"\f4ba"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-socks:before{content:"\f696"}.fa-inbox:before{content:"\f01c"}.fa-section:before{content:"\e447"}.fa-gauge-high:before,.fa-tachometer-alt-fast:before,.fa-tachometer-alt:before{content:"\f625"}.fa-envelope-open-text:before{content:"\f658"}.fa-hospital-alt:before,.fa-hospital-wide:before,.fa-hospital:before{content:"\f0f8"}.fa-wine-bottle:before{content:"\f72f"}.fa-chess-rook:before{content:"\f447"}.fa-bars-staggered:before,.fa-reorder:before,.fa-stream:before{content:"\f550"}.fa-dharmachakra:before{content:"\f655"}.fa-hotdog:before{content:"\f80f"}.fa-blind:before,.fa-person-walking-with-cane:before{content:"\f29d"}.fa-drum:before{content:"\f569"}.fa-ice-cream:before{content:"\f810"}.fa-heart-circle-bolt:before{content:"\e4fc"}.fa-fax:before{content:"\f1ac"}.fa-paragraph:before{content:"\f1dd"}.fa-check-to-slot:before,.fa-vote-yea:before{content:"\f772"}.fa-star-half:before{content:"\f089"}.fa-boxes-alt:before,.fa-boxes-stacked:before,.fa-boxes:before{content:"\f468"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-assistive-listening-systems:before,.fa-ear-listen:before{content:"\f2a2"}.fa-tree-city:before{content:"\e587"}.fa-play:before{content:"\f04b"}.fa-font:before{content:"\f031"}.fa-rupiah-sign:before{content:"\e23d"}.fa-magnifying-glass:before,.fa-search:before{content:"\f002"}.fa-ping-pong-paddle-ball:before,.fa-table-tennis-paddle-ball:before,.fa-table-tennis:before{content:"\f45d"}.fa-diagnoses:before,.fa-person-dots-from-line:before{content:"\f470"}.fa-trash-can-arrow-up:before,.fa-trash-restore-alt:before{content:"\f82a"}.fa-naira-sign:before{content:"\e1f6"}.fa-cart-arrow-down:before{content:"\f218"}.fa-walkie-talkie:before{content:"\f8ef"}.fa-file-edit:before,.fa-file-pen:before{content:"\f31c"}.fa-receipt:before{content:"\f543"}.fa-pen-square:before,.fa-pencil-square:before,.fa-square-pen:before{content:"\f14b"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-person-circle-exclamation:before{content:"\e53f"}.fa-chevron-down:before{content:"\f078"}.fa-battery-5:before,.fa-battery-full:before,.fa-battery:before{content:"\f240"}.fa-skull-crossbones:before{content:"\f714"}.fa-code-compare:before{content:"\e13a"}.fa-list-dots:before,.fa-list-ul:before{content:"\f0ca"}.fa-school-lock:before{content:"\e56f"}.fa-tower-cell:before{content:"\e585"}.fa-down-long:before,.fa-long-arrow-alt-down:before{content:"\f309"}.fa-ranking-star:before{content:"\e561"}.fa-chess-king:before{content:"\f43f"}.fa-person-harassing:before{content:"\e549"}.fa-brazilian-real-sign:before{content:"\e46c"}.fa-landmark-alt:before,.fa-landmark-dome:before{content:"\f752"}.fa-arrow-up:before{content:"\f062"}.fa-television:before,.fa-tv-alt:before,.fa-tv:before{content:"\f26c"}.fa-shrimp:before{content:"\e448"}.fa-list-check:before,.fa-tasks:before{content:"\f0ae"}.fa-jug-detergent:before{content:"\e519"}.fa-circle-user:before,.fa-user-circle:before{content:"\f2bd"}.fa-user-shield:before{content:"\f505"}.fa-wind:before{content:"\f72e"}.fa-car-burst:before,.fa-car-crash:before{content:"\f5e1"}.fa-y:before{content:"\59"}.fa-person-snowboarding:before,.fa-snowboarding:before{content:"\f7ce"}.fa-shipping-fast:before,.fa-truck-fast:before{content:"\f48b"}.fa-fish:before{content:"\f578"}.fa-user-graduate:before{content:"\f501"}.fa-adjust:before,.fa-circle-half-stroke:before{content:"\f042"}.fa-clapperboard:before{content:"\e131"}.fa-circle-radiation:before,.fa-radiation-alt:before{content:"\f7ba"}.fa-baseball-ball:before,.fa-baseball:before{content:"\f433"}.fa-jet-fighter-up:before{content:"\e518"}.fa-diagram-project:before,.fa-project-diagram:before{content:"\f542"}.fa-copy:before{content:"\f0c5"}.fa-volume-mute:before,.fa-volume-times:before,.fa-volume-xmark:before{content:"\f6a9"}.fa-hand-sparkles:before{content:"\e05d"}.fa-grip-horizontal:before,.fa-grip:before{content:"\f58d"}.fa-share-from-square:before,.fa-share-square:before{content:"\f14d"}.fa-child-combatant:before,.fa-child-rifle:before{content:"\e4e0"}.fa-gun:before{content:"\e19b"}.fa-phone-square:before,.fa-square-phone:before{content:"\f098"}.fa-add:before,.fa-plus:before{content:"\2b"}.fa-expand:before{content:"\f065"}.fa-computer:before{content:"\e4e5"}.fa-close:before,.fa-multiply:before,.fa-remove:before,.fa-times:before,.fa-xmark:before{content:"\f00d"}.fa-arrows-up-down-left-right:before,.fa-arrows:before{content:"\f047"}.fa-chalkboard-teacher:before,.fa-chalkboard-user:before{content:"\f51c"}.fa-peso-sign:before{content:"\e222"}.fa-building-shield:before{content:"\e4d8"}.fa-baby:before{content:"\f77c"}.fa-users-line:before{content:"\e592"}.fa-quote-left-alt:before,.fa-quote-left:before{content:"\f10d"}.fa-tractor:before{content:"\f722"}.fa-trash-arrow-up:before,.fa-trash-restore:before{content:"\f829"}.fa-arrow-down-up-lock:before{content:"\e4b0"}.fa-lines-leaning:before{content:"\e51e"}.fa-ruler-combined:before{content:"\f546"}.fa-copyright:before{content:"\f1f9"}.fa-equals:before{content:"\3d"}.fa-blender:before{content:"\f517"}.fa-teeth:before{content:"\f62e"}.fa-ils:before,.fa-shekel-sign:before,.fa-shekel:before,.fa-sheqel-sign:before,.fa-sheqel:before{content:"\f20b"}.fa-map:before{content:"\f279"}.fa-rocket:before{content:"\f135"}.fa-photo-film:before,.fa-photo-video:before{content:"\f87c"}.fa-folder-minus:before{content:"\f65d"}.fa-store:before{content:"\f54e"}.fa-arrow-trend-up:before{content:"\e098"}.fa-plug-circle-minus:before{content:"\e55e"}.fa-sign-hanging:before,.fa-sign:before{content:"\f4d9"}.fa-bezier-curve:before{content:"\f55b"}.fa-bell-slash:before{content:"\f1f6"}.fa-tablet-android:before,.fa-tablet:before{content:"\f3fb"}.fa-school-flag:before{content:"\e56e"}.fa-fill:before{content:"\f575"}.fa-angle-up:before{content:"\f106"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-holly-berry:before{content:"\f7aa"}.fa-chevron-left:before{content:"\f053"}.fa-bacteria:before{content:"\e059"}.fa-hand-lizard:before{content:"\f258"}.fa-notdef:before{content:"\e1fe"}.fa-disease:before{content:"\f7fa"}.fa-briefcase-medical:before{content:"\f469"}.fa-genderless:before{content:"\f22d"}.fa-chevron-right:before{content:"\f054"}.fa-retweet:before{content:"\f079"}.fa-car-alt:before,.fa-car-rear:before{content:"\f5de"}.fa-pump-soap:before{content:"\e06b"}.fa-video-slash:before{content:"\f4e2"}.fa-battery-2:before,.fa-battery-quarter:before{content:"\f243"}.fa-radio:before{content:"\f8d7"}.fa-baby-carriage:before,.fa-carriage-baby:before{content:"\f77d"}.fa-traffic-light:before{content:"\f637"}.fa-thermometer:before{content:"\f491"}.fa-vr-cardboard:before{content:"\f729"}.fa-hand-middle-finger:before{content:"\f806"}.fa-percent:before,.fa-percentage:before{content:"\25"}.fa-truck-moving:before{content:"\f4df"}.fa-glass-water-droplet:before{content:"\e4f5"}.fa-display:before{content:"\e163"}.fa-face-smile:before,.fa-smile:before{content:"\f118"}.fa-thumb-tack:before,.fa-thumbtack:before{content:"\f08d"}.fa-trophy:before{content:"\f091"}.fa-person-praying:before,.fa-pray:before{content:"\f683"}.fa-hammer:before{content:"\f6e3"}.fa-hand-peace:before{content:"\f25b"}.fa-rotate:before,.fa-sync-alt:before{content:"\f2f1"}.fa-spinner:before{content:"\f110"}.fa-robot:before{content:"\f544"}.fa-peace:before{content:"\f67c"}.fa-cogs:before,.fa-gears:before{content:"\f085"}.fa-warehouse:before{content:"\f494"}.fa-arrow-up-right-dots:before{content:"\e4b7"}.fa-splotch:before{content:"\f5bc"}.fa-face-grin-hearts:before,.fa-grin-hearts:before{content:"\f584"}.fa-dice-four:before{content:"\f524"}.fa-sim-card:before{content:"\f7c4"}.fa-transgender-alt:before,.fa-transgender:before{content:"\f225"}.fa-mercury:before{content:"\f223"}.fa-arrow-turn-down:before,.fa-level-down:before{content:"\f149"}.fa-person-falling-burst:before{content:"\e547"}.fa-award:before{content:"\f559"}.fa-ticket-alt:before,.fa-ticket-simple:before{content:"\f3ff"}.fa-building:before{content:"\f1ad"}.fa-angle-double-left:before,.fa-angles-left:before{content:"\f100"}.fa-qrcode:before{content:"\f029"}.fa-clock-rotate-left:before,.fa-history:before{content:"\f1da"}.fa-face-grin-beam-sweat:before,.fa-grin-beam-sweat:before{content:"\f583"}.fa-arrow-right-from-file:before,.fa-file-export:before{content:"\f56e"}.fa-shield-blank:before,.fa-shield:before{content:"\f132"}.fa-arrow-up-short-wide:before,.fa-sort-amount-up-alt:before{content:"\f885"}.fa-house-medical:before{content:"\e3b2"}.fa-golf-ball-tee:before,.fa-golf-ball:before{content:"\f450"}.fa-chevron-circle-left:before,.fa-circle-chevron-left:before{content:"\f137"}.fa-house-chimney-window:before{content:"\e00d"}.fa-pen-nib:before{content:"\f5ad"}.fa-tent-arrow-turn-left:before{content:"\e580"}.fa-tents:before{content:"\e582"}.fa-magic:before,.fa-wand-magic:before{content:"\f0d0"}.fa-dog:before{content:"\f6d3"}.fa-carrot:before{content:"\f787"}.fa-moon:before{content:"\f186"}.fa-wine-glass-alt:before,.fa-wine-glass-empty:before{content:"\f5ce"}.fa-cheese:before{content:"\f7ef"}.fa-yin-yang:before{content:"\f6ad"}.fa-music:before{content:"\f001"}.fa-code-commit:before{content:"\f386"}.fa-temperature-low:before{content:"\f76b"}.fa-biking:before,.fa-person-biking:before{content:"\f84a"}.fa-broom:before{content:"\f51a"}.fa-shield-heart:before{content:"\e574"}.fa-gopuram:before{content:"\f664"}.fa-earth-oceania:before,.fa-globe-oceania:before{content:"\e47b"}.fa-square-xmark:before,.fa-times-square:before,.fa-xmark-square:before{content:"\f2d3"}.fa-hashtag:before{content:"\23"}.fa-expand-alt:before,.fa-up-right-and-down-left-from-center:before{content:"\f424"}.fa-oil-can:before{content:"\f613"}.fa-t:before{content:"\54"}.fa-hippo:before{content:"\f6ed"}.fa-chart-column:before{content:"\e0e3"}.fa-infinity:before{content:"\f534"}.fa-vial-circle-check:before{content:"\e596"}.fa-person-arrow-down-to-line:before{content:"\e538"}.fa-voicemail:before{content:"\f897"}.fa-fan:before{content:"\f863"}.fa-person-walking-luggage:before{content:"\e554"}.fa-arrows-alt-v:before,.fa-up-down:before{content:"\f338"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-calendar:before{content:"\f133"}.fa-trailer:before{content:"\e041"}.fa-bahai:before,.fa-haykal:before{content:"\f666"}.fa-sd-card:before{content:"\f7c2"}.fa-dragon:before{content:"\f6d5"}.fa-shoe-prints:before{content:"\f54b"}.fa-circle-plus:before,.fa-plus-circle:before{content:"\f055"}.fa-face-grin-tongue-wink:before,.fa-grin-tongue-wink:before{content:"\f58b"}.fa-hand-holding:before{content:"\f4bd"}.fa-plug-circle-exclamation:before{content:"\e55d"}.fa-chain-broken:before,.fa-chain-slash:before,.fa-link-slash:before,.fa-unlink:before{content:"\f127"}.fa-clone:before{content:"\f24d"}.fa-person-walking-arrow-loop-left:before{content:"\e551"}.fa-arrow-up-z-a:before,.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-fire-alt:before,.fa-fire-flame-curved:before{content:"\f7e4"}.fa-tornado:before{content:"\f76f"}.fa-file-circle-plus:before{content:"\e494"}.fa-book-quran:before,.fa-quran:before{content:"\f687"}.fa-anchor:before{content:"\f13d"}.fa-border-all:before{content:"\f84c"}.fa-angry:before,.fa-face-angry:before{content:"\f556"}.fa-cookie-bite:before{content:"\f564"}.fa-arrow-trend-down:before{content:"\e097"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-draw-polygon:before{content:"\f5ee"}.fa-balance-scale:before,.fa-scale-balanced:before{content:"\f24e"}.fa-gauge-simple-high:before,.fa-tachometer-fast:before,.fa-tachometer:before{content:"\f62a"}.fa-shower:before{content:"\f2cc"}.fa-desktop-alt:before,.fa-desktop:before{content:"\f390"}.fa-m:before{content:"\4d"}.fa-table-list:before,.fa-th-list:before{content:"\f00b"}.fa-comment-sms:before,.fa-sms:before{content:"\f7cd"}.fa-book:before{content:"\f02d"}.fa-user-plus:before{content:"\f234"}.fa-check:before{content:"\f00c"}.fa-battery-4:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-house-circle-check:before{content:"\e509"}.fa-angle-left:before{content:"\f104"}.fa-diagram-successor:before{content:"\e47a"}.fa-truck-arrow-right:before{content:"\e58b"}.fa-arrows-split-up-and-left:before{content:"\e4bc"}.fa-fist-raised:before,.fa-hand-fist:before{content:"\f6de"}.fa-cloud-moon:before{content:"\f6c3"}.fa-briefcase:before{content:"\f0b1"}.fa-person-falling:before{content:"\e546"}.fa-image-portrait:before,.fa-portrait:before{content:"\f3e0"}.fa-user-tag:before{content:"\f507"}.fa-rug:before{content:"\e569"}.fa-earth-europe:before,.fa-globe-europe:before{content:"\f7a2"}.fa-cart-flatbed-suitcase:before,.fa-luggage-cart:before{content:"\f59d"}.fa-rectangle-times:before,.fa-rectangle-xmark:before,.fa-times-rectangle:before,.fa-window-close:before{content:"\f410"}.fa-baht-sign:before{content:"\e0ac"}.fa-book-open:before{content:"\f518"}.fa-book-journal-whills:before,.fa-journal-whills:before{content:"\f66a"}.fa-handcuffs:before{content:"\e4f8"}.fa-exclamation-triangle:before,.fa-triangle-exclamation:before,.fa-warning:before{content:"\f071"}.fa-database:before{content:"\f1c0"}.fa-arrow-turn-right:before,.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-bottle-droplet:before{content:"\e4c4"}.fa-mask-face:before{content:"\e1d7"}.fa-hill-rockslide:before{content:"\e508"}.fa-exchange-alt:before,.fa-right-left:before{content:"\f362"}.fa-paper-plane:before{content:"\f1d8"}.fa-road-circle-exclamation:before{content:"\e565"}.fa-dungeon:before{content:"\f6d9"}.fa-align-right:before{content:"\f038"}.fa-money-bill-1-wave:before,.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-life-ring:before{content:"\f1cd"}.fa-hands:before,.fa-sign-language:before,.fa-signing:before{content:"\f2a7"}.fa-calendar-day:before{content:"\f783"}.fa-ladder-water:before,.fa-swimming-pool:before,.fa-water-ladder:before{content:"\f5c5"}.fa-arrows-up-down:before,.fa-arrows-v:before{content:"\f07d"}.fa-face-grimace:before,.fa-grimace:before{content:"\f57f"}.fa-wheelchair-alt:before,.fa-wheelchair-move:before{content:"\e2ce"}.fa-level-down-alt:before,.fa-turn-down:before{content:"\f3be"}.fa-person-walking-arrow-right:before{content:"\e552"}.fa-envelope-square:before,.fa-square-envelope:before{content:"\f199"}.fa-dice:before{content:"\f522"}.fa-bowling-ball:before{content:"\f436"}.fa-brain:before{content:"\f5dc"}.fa-band-aid:before,.fa-bandage:before{content:"\f462"}.fa-calendar-minus:before{content:"\f272"}.fa-circle-xmark:before,.fa-times-circle:before,.fa-xmark-circle:before{content:"\f057"}.fa-gifts:before{content:"\f79c"}.fa-hotel:before{content:"\f594"}.fa-earth-asia:before,.fa-globe-asia:before{content:"\f57e"}.fa-id-card-alt:before,.fa-id-card-clip:before{content:"\f47f"}.fa-magnifying-glass-plus:before,.fa-search-plus:before{content:"\f00e"}.fa-thumbs-up:before{content:"\f164"}.fa-user-clock:before{content:"\f4fd"}.fa-allergies:before,.fa-hand-dots:before{content:"\f461"}.fa-file-invoice:before{content:"\f570"}.fa-window-minimize:before{content:"\f2d1"}.fa-coffee:before,.fa-mug-saucer:before{content:"\f0f4"}.fa-brush:before{content:"\f55d"}.fa-mask:before{content:"\f6fa"}.fa-magnifying-glass-minus:before,.fa-search-minus:before{content:"\f010"}.fa-ruler-vertical:before{content:"\f548"}.fa-user-alt:before,.fa-user-large:before{content:"\f406"}.fa-train-tram:before{content:"\e5b4"}.fa-user-nurse:before{content:"\f82f"}.fa-syringe:before{content:"\f48e"}.fa-cloud-sun:before{content:"\f6c4"}.fa-stopwatch-20:before{content:"\e06f"}.fa-square-full:before{content:"\f45c"}.fa-magnet:before{content:"\f076"}.fa-jar:before{content:"\e516"}.fa-note-sticky:before,.fa-sticky-note:before{content:"\f249"}.fa-bug-slash:before{content:"\e490"}.fa-arrow-up-from-water-pump:before{content:"\e4b6"}.fa-bone:before{content:"\f5d7"}.fa-user-injured:before{content:"\f728"}.fa-face-sad-tear:before,.fa-sad-tear:before{content:"\f5b4"}.fa-plane:before{content:"\f072"}.fa-tent-arrows-down:before{content:"\e581"}.fa-exclamation:before{content:"\21"}.fa-arrows-spin:before{content:"\e4bb"}.fa-print:before{content:"\f02f"}.fa-try:before,.fa-turkish-lira-sign:before,.fa-turkish-lira:before{content:"\e2bb"}.fa-dollar-sign:before,.fa-dollar:before,.fa-usd:before{content:"\24"}.fa-x:before{content:"\58"}.fa-magnifying-glass-dollar:before,.fa-search-dollar:before{content:"\f688"}.fa-users-cog:before,.fa-users-gear:before{content:"\f509"}.fa-person-military-pointing:before{content:"\e54a"}.fa-bank:before,.fa-building-columns:before,.fa-institution:before,.fa-museum:before,.fa-university:before{content:"\f19c"}.fa-umbrella:before{content:"\f0e9"}.fa-trowel:before{content:"\e589"}.fa-d:before{content:"\44"}.fa-stapler:before{content:"\e5af"}.fa-masks-theater:before,.fa-theater-masks:before{content:"\f630"}.fa-kip-sign:before{content:"\e1c4"}.fa-hand-point-left:before{content:"\f0a5"}.fa-handshake-alt:before,.fa-handshake-simple:before{content:"\f4c6"}.fa-fighter-jet:before,.fa-jet-fighter:before{content:"\f0fb"}.fa-share-alt-square:before,.fa-square-share-nodes:before{content:"\f1e1"}.fa-barcode:before{content:"\f02a"}.fa-plus-minus:before{content:"\e43c"}.fa-video-camera:before,.fa-video:before{content:"\f03d"}.fa-graduation-cap:before,.fa-mortar-board:before{content:"\f19d"}.fa-hand-holding-medical:before{content:"\e05c"}.fa-person-circle-check:before{content:"\e53e"}.fa-level-up-alt:before,.fa-turn-up:before{content:"\f3bf"} +.fa-sr-only,.fa-sr-only-focusable:not(:focus),.sr-only,.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:host,:root{--fa-style-family-brands:"Font Awesome 6 Brands";--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands"}@font-face{font-family:"Font Awesome 6 Brands";font-style:normal;font-weight:400;font-display:block;src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); }.fa-brands,.fab{font-weight:400}.fa-monero:before{content:"\f3d0"}.fa-hooli:before{content:"\f427"}.fa-yelp:before{content:"\f1e9"}.fa-cc-visa:before{content:"\f1f0"}.fa-lastfm:before{content:"\f202"}.fa-shopware:before{content:"\f5b5"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-aws:before{content:"\f375"}.fa-redhat:before{content:"\f7bc"}.fa-yoast:before{content:"\f2b1"}.fa-cloudflare:before{content:"\e07d"}.fa-ups:before{content:"\f7e0"}.fa-wpexplorer:before{content:"\f2de"}.fa-dyalog:before{content:"\f399"}.fa-bity:before{content:"\f37a"}.fa-stackpath:before{content:"\f842"}.fa-buysellads:before{content:"\f20d"}.fa-first-order:before{content:"\f2b0"}.fa-modx:before{content:"\f285"}.fa-guilded:before{content:"\e07e"}.fa-vnv:before{content:"\f40b"}.fa-js-square:before,.fa-square-js:before{content:"\f3b9"}.fa-microsoft:before{content:"\f3ca"}.fa-qq:before{content:"\f1d6"}.fa-orcid:before{content:"\f8d2"}.fa-java:before{content:"\f4e4"}.fa-invision:before{content:"\f7b0"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-centercode:before{content:"\f380"}.fa-glide-g:before{content:"\f2a6"}.fa-drupal:before{content:"\f1a9"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-unity:before{content:"\e049"}.fa-whmcs:before{content:"\f40d"}.fa-rocketchat:before{content:"\f3e8"}.fa-vk:before{content:"\f189"}.fa-untappd:before{content:"\f405"}.fa-mailchimp:before{content:"\f59e"}.fa-css3-alt:before{content:"\f38b"}.fa-reddit-square:before,.fa-square-reddit:before{content:"\f1a2"}.fa-vimeo-v:before{content:"\f27d"}.fa-contao:before{content:"\f26d"}.fa-square-font-awesome:before{content:"\e5ad"}.fa-deskpro:before{content:"\f38f"}.fa-sistrix:before{content:"\f3ee"}.fa-instagram-square:before,.fa-square-instagram:before{content:"\e055"}.fa-battle-net:before{content:"\f835"}.fa-the-red-yeti:before{content:"\f69d"}.fa-hacker-news-square:before,.fa-square-hacker-news:before{content:"\f3af"}.fa-edge:before{content:"\f282"}.fa-threads:before{content:"\e618"}.fa-napster:before{content:"\f3d2"}.fa-snapchat-square:before,.fa-square-snapchat:before{content:"\f2ad"}.fa-google-plus-g:before{content:"\f0d5"}.fa-artstation:before{content:"\f77a"}.fa-markdown:before{content:"\f60f"}.fa-sourcetree:before{content:"\f7d3"}.fa-google-plus:before{content:"\f2b3"}.fa-diaspora:before{content:"\f791"}.fa-foursquare:before{content:"\f180"}.fa-stack-overflow:before{content:"\f16c"}.fa-github-alt:before{content:"\f113"}.fa-phoenix-squadron:before{content:"\f511"}.fa-pagelines:before{content:"\f18c"}.fa-algolia:before{content:"\f36c"}.fa-red-river:before{content:"\f3e3"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-safari:before{content:"\f267"}.fa-google:before{content:"\f1a0"}.fa-font-awesome-alt:before,.fa-square-font-awesome-stroke:before{content:"\f35c"}.fa-atlassian:before{content:"\f77b"}.fa-linkedin-in:before{content:"\f0e1"}.fa-digital-ocean:before{content:"\f391"}.fa-nimblr:before{content:"\f5a8"}.fa-chromecast:before{content:"\f838"}.fa-evernote:before{content:"\f839"}.fa-hacker-news:before{content:"\f1d4"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-adversal:before{content:"\f36a"}.fa-creative-commons:before{content:"\f25e"}.fa-watchman-monitoring:before{content:"\e087"}.fa-fonticons:before{content:"\f280"}.fa-weixin:before{content:"\f1d7"}.fa-shirtsinbulk:before{content:"\f214"}.fa-codepen:before{content:"\f1cb"}.fa-git-alt:before{content:"\f841"}.fa-lyft:before{content:"\f3c3"}.fa-rev:before{content:"\f5b2"}.fa-windows:before{content:"\f17a"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-square-viadeo:before,.fa-viadeo-square:before{content:"\f2aa"}.fa-meetup:before{content:"\f2e0"}.fa-centos:before{content:"\f789"}.fa-adn:before{content:"\f170"}.fa-cloudsmith:before{content:"\f384"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-dribbble-square:before,.fa-square-dribbble:before{content:"\f397"}.fa-codiepie:before{content:"\f284"}.fa-node:before{content:"\f419"}.fa-mix:before{content:"\f3cb"}.fa-steam:before{content:"\f1b6"}.fa-cc-apple-pay:before{content:"\f416"}.fa-scribd:before{content:"\f28a"}.fa-debian:before{content:"\e60b"}.fa-openid:before{content:"\f19b"}.fa-instalod:before{content:"\e081"}.fa-expeditedssl:before{content:"\f23e"}.fa-sellcast:before{content:"\f2da"}.fa-square-twitter:before,.fa-twitter-square:before{content:"\f081"}.fa-r-project:before{content:"\f4f7"}.fa-delicious:before{content:"\f1a5"}.fa-freebsd:before{content:"\f3a4"}.fa-vuejs:before{content:"\f41f"}.fa-accusoft:before{content:"\f369"}.fa-ioxhost:before{content:"\f208"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-app-store:before{content:"\f36f"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-itunes-note:before{content:"\f3b5"}.fa-golang:before{content:"\e40f"}.fa-kickstarter:before{content:"\f3bb"}.fa-grav:before{content:"\f2d6"}.fa-weibo:before{content:"\f18a"}.fa-uncharted:before{content:"\e084"}.fa-firstdraft:before{content:"\f3a1"}.fa-square-youtube:before,.fa-youtube-square:before{content:"\f431"}.fa-wikipedia-w:before{content:"\f266"}.fa-rendact:before,.fa-wpressr:before{content:"\f3e4"}.fa-angellist:before{content:"\f209"}.fa-galactic-republic:before{content:"\f50c"}.fa-nfc-directional:before{content:"\e530"}.fa-skype:before{content:"\f17e"}.fa-joget:before{content:"\f3b7"}.fa-fedora:before{content:"\f798"}.fa-stripe-s:before{content:"\f42a"}.fa-meta:before{content:"\e49b"}.fa-laravel:before{content:"\f3bd"}.fa-hotjar:before{content:"\f3b1"}.fa-bluetooth-b:before{content:"\f294"}.fa-sticker-mule:before{content:"\f3f7"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-hips:before{content:"\f452"}.fa-behance:before{content:"\f1b4"}.fa-reddit:before{content:"\f1a1"}.fa-discord:before{content:"\f392"}.fa-chrome:before{content:"\f268"}.fa-app-store-ios:before{content:"\f370"}.fa-cc-discover:before{content:"\f1f2"}.fa-wpbeginner:before{content:"\f297"}.fa-confluence:before{content:"\f78d"}.fa-mdb:before{content:"\f8ca"}.fa-dochub:before{content:"\f394"}.fa-accessible-icon:before{content:"\f368"}.fa-ebay:before{content:"\f4f4"}.fa-amazon:before{content:"\f270"}.fa-unsplash:before{content:"\e07c"}.fa-yarn:before{content:"\f7e3"}.fa-square-steam:before,.fa-steam-square:before{content:"\f1b7"}.fa-500px:before{content:"\f26e"}.fa-square-vimeo:before,.fa-vimeo-square:before{content:"\f194"}.fa-asymmetrik:before{content:"\f372"}.fa-font-awesome-flag:before,.fa-font-awesome-logo-full:before,.fa-font-awesome:before{content:"\f2b4"}.fa-gratipay:before{content:"\f184"}.fa-apple:before{content:"\f179"}.fa-hive:before{content:"\e07f"}.fa-gitkraken:before{content:"\f3a6"}.fa-keybase:before{content:"\f4f5"}.fa-apple-pay:before{content:"\f415"}.fa-padlet:before{content:"\e4a0"}.fa-amazon-pay:before{content:"\f42c"}.fa-github-square:before,.fa-square-github:before{content:"\f092"}.fa-stumbleupon:before{content:"\f1a4"}.fa-fedex:before{content:"\f797"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-shopify:before{content:"\e057"}.fa-neos:before{content:"\f612"}.fa-square-threads:before{content:"\e619"}.fa-hackerrank:before{content:"\f5f7"}.fa-researchgate:before{content:"\f4f8"}.fa-swift:before{content:"\f8e1"}.fa-angular:before{content:"\f420"}.fa-speakap:before{content:"\f3f3"}.fa-angrycreative:before{content:"\f36e"}.fa-y-combinator:before{content:"\f23b"}.fa-empire:before{content:"\f1d1"}.fa-envira:before{content:"\f299"}.fa-gitlab-square:before,.fa-square-gitlab:before{content:"\e5ae"}.fa-studiovinari:before{content:"\f3f8"}.fa-pied-piper:before{content:"\f2ae"}.fa-wordpress:before{content:"\f19a"}.fa-product-hunt:before{content:"\f288"}.fa-firefox:before{content:"\f269"}.fa-linode:before{content:"\f2b8"}.fa-goodreads:before{content:"\f3a8"}.fa-odnoklassniki-square:before,.fa-square-odnoklassniki:before{content:"\f264"}.fa-jsfiddle:before{content:"\f1cc"}.fa-sith:before{content:"\f512"}.fa-themeisle:before{content:"\f2b2"}.fa-page4:before{content:"\f3d7"}.fa-hashnode:before{content:"\e499"}.fa-react:before{content:"\f41b"}.fa-cc-paypal:before{content:"\f1f4"}.fa-squarespace:before{content:"\f5be"}.fa-cc-stripe:before{content:"\f1f5"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-bitcoin:before{content:"\f379"}.fa-keycdn:before{content:"\f3ba"}.fa-opera:before{content:"\f26a"}.fa-itch-io:before{content:"\f83a"}.fa-umbraco:before{content:"\f8e8"}.fa-galactic-senate:before{content:"\f50d"}.fa-ubuntu:before{content:"\f7df"}.fa-draft2digital:before{content:"\f396"}.fa-stripe:before{content:"\f429"}.fa-houzz:before{content:"\f27c"}.fa-gg:before{content:"\f260"}.fa-dhl:before{content:"\f790"}.fa-pinterest-square:before,.fa-square-pinterest:before{content:"\f0d3"}.fa-xing:before{content:"\f168"}.fa-blackberry:before{content:"\f37b"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-playstation:before{content:"\f3df"}.fa-quinscape:before{content:"\f459"}.fa-less:before{content:"\f41d"}.fa-blogger-b:before{content:"\f37d"}.fa-opencart:before{content:"\f23d"}.fa-vine:before{content:"\f1ca"}.fa-paypal:before{content:"\f1ed"}.fa-gitlab:before{content:"\f296"}.fa-typo3:before{content:"\f42b"}.fa-reddit-alien:before{content:"\f281"}.fa-yahoo:before{content:"\f19e"}.fa-dailymotion:before{content:"\e052"}.fa-affiliatetheme:before{content:"\f36b"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-bootstrap:before{content:"\f836"}.fa-odnoklassniki:before{content:"\f263"}.fa-nfc-symbol:before{content:"\e531"}.fa-ethereum:before{content:"\f42e"}.fa-speaker-deck:before{content:"\f83c"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-patreon:before{content:"\f3d9"}.fa-avianex:before{content:"\f374"}.fa-ello:before{content:"\f5f1"}.fa-gofore:before{content:"\f3a7"}.fa-bimobject:before{content:"\f378"}.fa-facebook-f:before{content:"\f39e"}.fa-google-plus-square:before,.fa-square-google-plus:before{content:"\f0d4"}.fa-mandalorian:before{content:"\f50f"}.fa-first-order-alt:before{content:"\f50a"}.fa-osi:before{content:"\f41a"}.fa-google-wallet:before{content:"\f1ee"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-periscope:before{content:"\f3da"}.fa-fulcrum:before{content:"\f50b"}.fa-cloudscale:before{content:"\f383"}.fa-forumbee:before{content:"\f211"}.fa-mizuni:before{content:"\f3cc"}.fa-schlix:before{content:"\f3ea"}.fa-square-xing:before,.fa-xing-square:before{content:"\f169"}.fa-bandcamp:before{content:"\f2d5"}.fa-wpforms:before{content:"\f298"}.fa-cloudversify:before{content:"\f385"}.fa-usps:before{content:"\f7e1"}.fa-megaport:before{content:"\f5a3"}.fa-magento:before{content:"\f3c4"}.fa-spotify:before{content:"\f1bc"}.fa-optin-monster:before{content:"\f23c"}.fa-fly:before{content:"\f417"}.fa-aviato:before{content:"\f421"}.fa-itunes:before{content:"\f3b4"}.fa-cuttlefish:before{content:"\f38c"}.fa-blogger:before{content:"\f37c"}.fa-flickr:before{content:"\f16e"}.fa-viber:before{content:"\f409"}.fa-soundcloud:before{content:"\f1be"}.fa-digg:before{content:"\f1a6"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-symfony:before{content:"\f83d"}.fa-maxcdn:before{content:"\f136"}.fa-etsy:before{content:"\f2d7"}.fa-facebook-messenger:before{content:"\f39f"}.fa-audible:before{content:"\f373"}.fa-think-peaks:before{content:"\f731"}.fa-bilibili:before{content:"\e3d9"}.fa-erlang:before{content:"\f39d"}.fa-x-twitter:before{content:"\e61b"}.fa-cotton-bureau:before{content:"\f89e"}.fa-dashcube:before{content:"\f210"}.fa-42-group:before,.fa-innosoft:before{content:"\e080"}.fa-stack-exchange:before{content:"\f18d"}.fa-elementor:before{content:"\f430"}.fa-pied-piper-square:before,.fa-square-pied-piper:before{content:"\e01e"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-palfed:before{content:"\f3d8"}.fa-superpowers:before{content:"\f2dd"}.fa-resolving:before{content:"\f3e7"}.fa-xbox:before{content:"\f412"}.fa-searchengin:before{content:"\f3eb"}.fa-tiktok:before{content:"\e07b"}.fa-facebook-square:before,.fa-square-facebook:before{content:"\f082"}.fa-renren:before{content:"\f18b"}.fa-linux:before{content:"\f17c"}.fa-glide:before{content:"\f2a5"}.fa-linkedin:before{content:"\f08c"}.fa-hubspot:before{content:"\f3b2"}.fa-deploydog:before{content:"\f38e"}.fa-twitch:before{content:"\f1e8"}.fa-ravelry:before{content:"\f2d9"}.fa-mixer:before{content:"\e056"}.fa-lastfm-square:before,.fa-square-lastfm:before{content:"\f203"}.fa-vimeo:before{content:"\f40a"}.fa-mendeley:before{content:"\f7b3"}.fa-uniregistry:before{content:"\f404"}.fa-figma:before{content:"\f799"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-dropbox:before{content:"\f16b"}.fa-instagram:before{content:"\f16d"}.fa-cmplid:before{content:"\e360"}.fa-facebook:before{content:"\f09a"}.fa-gripfire:before{content:"\f3ac"}.fa-jedi-order:before{content:"\f50e"}.fa-uikit:before{content:"\f403"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-phabricator:before{content:"\f3db"}.fa-ussunnah:before{content:"\f407"}.fa-earlybirds:before{content:"\f39a"}.fa-trade-federation:before{content:"\f513"}.fa-autoprefixer:before{content:"\f41c"}.fa-whatsapp:before{content:"\f232"}.fa-slideshare:before{content:"\f1e7"}.fa-google-play:before{content:"\f3ab"}.fa-viadeo:before{content:"\f2a9"}.fa-line:before{content:"\f3c0"}.fa-google-drive:before{content:"\f3aa"}.fa-servicestack:before{content:"\f3ec"}.fa-simplybuilt:before{content:"\f215"}.fa-bitbucket:before{content:"\f171"}.fa-imdb:before{content:"\f2d8"}.fa-deezer:before{content:"\e077"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-jira:before{content:"\f7b1"}.fa-docker:before{content:"\f395"}.fa-screenpal:before{content:"\e570"}.fa-bluetooth:before{content:"\f293"}.fa-gitter:before{content:"\f426"}.fa-d-and-d:before{content:"\f38d"}.fa-microblog:before{content:"\e01a"}.fa-cc-diners-club:before{content:"\f24c"}.fa-gg-circle:before{content:"\f261"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-yandex:before{content:"\f413"}.fa-readme:before{content:"\f4d5"}.fa-html5:before{content:"\f13b"}.fa-sellsy:before{content:"\f213"}.fa-sass:before{content:"\f41e"}.fa-wirsindhandwerk:before,.fa-wsh:before{content:"\e2d0"}.fa-buromobelexperte:before{content:"\f37f"}.fa-salesforce:before{content:"\f83b"}.fa-octopus-deploy:before{content:"\e082"}.fa-medapps:before{content:"\f3c6"}.fa-ns8:before{content:"\f3d5"}.fa-pinterest-p:before{content:"\f231"}.fa-apper:before{content:"\f371"}.fa-fort-awesome:before{content:"\f286"}.fa-waze:before{content:"\f83f"}.fa-cc-jcb:before{content:"\f24b"}.fa-snapchat-ghost:before,.fa-snapchat:before{content:"\f2ab"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-rust:before{content:"\e07a"}.fa-wix:before{content:"\f5cf"}.fa-behance-square:before,.fa-square-behance:before{content:"\f1b5"}.fa-supple:before{content:"\f3f9"}.fa-rebel:before{content:"\f1d0"}.fa-css3:before{content:"\f13c"}.fa-staylinked:before{content:"\f3f5"}.fa-kaggle:before{content:"\f5fa"}.fa-space-awesome:before{content:"\e5ac"}.fa-deviantart:before{content:"\f1bd"}.fa-cpanel:before{content:"\f388"}.fa-goodreads-g:before{content:"\f3a9"}.fa-git-square:before,.fa-square-git:before{content:"\f1d2"}.fa-square-tumblr:before,.fa-tumblr-square:before{content:"\f174"}.fa-trello:before{content:"\f181"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-get-pocket:before{content:"\f265"}.fa-perbyte:before{content:"\e083"}.fa-grunt:before{content:"\f3ad"}.fa-weebly:before{content:"\f5cc"}.fa-connectdevelop:before{content:"\f20e"}.fa-leanpub:before{content:"\f212"}.fa-black-tie:before{content:"\f27e"}.fa-themeco:before{content:"\f5c6"}.fa-python:before{content:"\f3e2"}.fa-android:before{content:"\f17b"}.fa-bots:before{content:"\e340"}.fa-free-code-camp:before{content:"\f2c5"}.fa-hornbill:before{content:"\f592"}.fa-js:before{content:"\f3b8"}.fa-ideal:before{content:"\e013"}.fa-git:before{content:"\f1d3"}.fa-dev:before{content:"\f6cc"}.fa-sketch:before{content:"\f7c6"}.fa-yandex-international:before{content:"\f414"}.fa-cc-amex:before{content:"\f1f3"}.fa-uber:before{content:"\f402"}.fa-github:before{content:"\f09b"}.fa-php:before{content:"\f457"}.fa-alipay:before{content:"\f642"}.fa-youtube:before{content:"\f167"}.fa-skyatlas:before{content:"\f216"}.fa-firefox-browser:before{content:"\e007"}.fa-replyd:before{content:"\f3e6"}.fa-suse:before{content:"\f7d6"}.fa-jenkins:before{content:"\f3b6"}.fa-twitter:before{content:"\f099"}.fa-rockrms:before{content:"\f3e9"}.fa-pinterest:before{content:"\f0d2"}.fa-buffer:before{content:"\f837"}.fa-npm:before{content:"\f3d4"}.fa-yammer:before{content:"\f840"}.fa-btc:before{content:"\f15a"}.fa-dribbble:before{content:"\f17d"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-internet-explorer:before{content:"\f26b"}.fa-stubber:before{content:"\e5c7"}.fa-telegram-plane:before,.fa-telegram:before{content:"\f2c6"}.fa-old-republic:before{content:"\f510"}.fa-odysee:before{content:"\e5c6"}.fa-square-whatsapp:before,.fa-whatsapp-square:before{content:"\f40c"}.fa-node-js:before{content:"\f3d3"}.fa-edge-legacy:before{content:"\e078"}.fa-slack-hash:before,.fa-slack:before{content:"\f198"}.fa-medrt:before{content:"\f3c8"}.fa-usb:before{content:"\f287"}.fa-tumblr:before{content:"\f173"}.fa-vaadin:before{content:"\f408"}.fa-quora:before{content:"\f2c4"}.fa-square-x-twitter:before{content:"\e61a"}.fa-reacteurope:before{content:"\f75d"}.fa-medium-m:before,.fa-medium:before{content:"\f23a"}.fa-amilia:before{content:"\f36d"}.fa-mixcloud:before{content:"\f289"}.fa-flipboard:before{content:"\f44d"}.fa-viacoin:before{content:"\f237"}.fa-critical-role:before{content:"\f6c9"}.fa-sitrox:before{content:"\e44a"}.fa-discourse:before{content:"\f393"}.fa-joomla:before{content:"\f1aa"}.fa-mastodon:before{content:"\f4f6"}.fa-airbnb:before{content:"\f834"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-buy-n-large:before{content:"\f8a6"}.fa-gulp:before{content:"\f3ae"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-strava:before{content:"\f428"}.fa-ember:before{content:"\f423"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-teamspeak:before{content:"\f4f9"}.fa-pushed:before{content:"\f3e1"}.fa-wordpress-simple:before{content:"\f411"}.fa-nutritionix:before{content:"\f3d6"}.fa-wodu:before{content:"\e088"}.fa-google-pay:before{content:"\e079"}.fa-intercom:before{content:"\f7af"}.fa-zhihu:before{content:"\f63f"}.fa-korvue:before{content:"\f42f"}.fa-pix:before{content:"\e43a"}.fa-steam-symbol:before{content:"\f3f6"}:host,:root{--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:400;font-display:block;src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); }.fa-regular,.far{font-weight:400}:host,:root{--fa-style-family-classic:"Font Awesome 6 Free";--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:block;src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }.fa-solid,.fas{font-weight:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); }@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); }@font-face{font-family:"FontAwesome";font-display:block;src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }@font-face{font-family:"FontAwesome";font-display:block;src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); }@font-face{font-family:"FontAwesome";font-display:block;src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); }@font-face{font-family:"FontAwesome";font-display:block;src: url("../webfonts/fa-v4compatibility.woff2") format("woff2"), url("../webfonts/fa-v4compatibility.ttf") format("truetype"); } \ No newline at end of file diff --git a/docs/deps/font-awesome-6.4.2/css/v4-shims.css b/docs/deps/font-awesome-6.4.2/css/v4-shims.css new file mode 100644 index 0000000..a85953d --- /dev/null +++ b/docs/deps/font-awesome-6.4.2/css/v4-shims.css @@ -0,0 +1,2194 @@ +/*! + * Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + * Copyright 2023 Fonticons, Inc. + */ +.fa.fa-glass:before { + content: "\f000"; } + +.fa.fa-envelope-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-envelope-o:before { + content: "\f0e0"; } + +.fa.fa-star-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-star-o:before { + content: "\f005"; } + +.fa.fa-remove:before { + content: "\f00d"; } + +.fa.fa-close:before { + content: "\f00d"; } + +.fa.fa-gear:before { + content: "\f013"; } + +.fa.fa-trash-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-trash-o:before { + content: "\f2ed"; } + +.fa.fa-home:before { + content: "\f015"; } + +.fa.fa-file-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-o:before { + content: "\f15b"; } + +.fa.fa-clock-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-clock-o:before { + content: "\f017"; } + +.fa.fa-arrow-circle-o-down { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-arrow-circle-o-down:before { + content: "\f358"; } + +.fa.fa-arrow-circle-o-up { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-arrow-circle-o-up:before { + content: "\f35b"; } + +.fa.fa-play-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-play-circle-o:before { + content: "\f144"; } + +.fa.fa-repeat:before { + content: "\f01e"; } + +.fa.fa-rotate-right:before { + content: "\f01e"; } + +.fa.fa-refresh:before { + content: "\f021"; } + +.fa.fa-list-alt { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-list-alt:before { + content: "\f022"; } + +.fa.fa-dedent:before { + content: "\f03b"; } + +.fa.fa-video-camera:before { + content: "\f03d"; } + +.fa.fa-picture-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-picture-o:before { + content: "\f03e"; } + +.fa.fa-photo { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-photo:before { + content: "\f03e"; } + +.fa.fa-image { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-image:before { + content: "\f03e"; } + +.fa.fa-map-marker:before { + content: "\f3c5"; } + +.fa.fa-pencil-square-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-pencil-square-o:before { + content: "\f044"; } + +.fa.fa-edit { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-edit:before { + content: "\f044"; } + +.fa.fa-share-square-o:before { + content: "\f14d"; } + +.fa.fa-check-square-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-check-square-o:before { + content: "\f14a"; } + +.fa.fa-arrows:before { + content: "\f0b2"; } + +.fa.fa-times-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-times-circle-o:before { + content: "\f057"; } + +.fa.fa-check-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-check-circle-o:before { + content: "\f058"; } + +.fa.fa-mail-forward:before { + content: "\f064"; } + +.fa.fa-expand:before { + content: "\f424"; } + +.fa.fa-compress:before { + content: "\f422"; } + +.fa.fa-eye { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-eye-slash { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-warning:before { + content: "\f071"; } + +.fa.fa-calendar:before { + content: "\f073"; } + +.fa.fa-arrows-v:before { + content: "\f338"; } + +.fa.fa-arrows-h:before { + content: "\f337"; } + +.fa.fa-bar-chart:before { + content: "\e0e3"; } + +.fa.fa-bar-chart-o:before { + content: "\e0e3"; } + +.fa.fa-twitter-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-twitter-square:before { + content: "\f081"; } + +.fa.fa-facebook-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-facebook-square:before { + content: "\f082"; } + +.fa.fa-gears:before { + content: "\f085"; } + +.fa.fa-thumbs-o-up { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-thumbs-o-up:before { + content: "\f164"; } + +.fa.fa-thumbs-o-down { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-thumbs-o-down:before { + content: "\f165"; } + +.fa.fa-heart-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-heart-o:before { + content: "\f004"; } + +.fa.fa-sign-out:before { + content: "\f2f5"; } + +.fa.fa-linkedin-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-linkedin-square:before { + content: "\f08c"; } + +.fa.fa-thumb-tack:before { + content: "\f08d"; } + +.fa.fa-external-link:before { + content: "\f35d"; } + +.fa.fa-sign-in:before { + content: "\f2f6"; } + +.fa.fa-github-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-github-square:before { + content: "\f092"; } + +.fa.fa-lemon-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-lemon-o:before { + content: "\f094"; } + +.fa.fa-square-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-square-o:before { + content: "\f0c8"; } + +.fa.fa-bookmark-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-bookmark-o:before { + content: "\f02e"; } + +.fa.fa-twitter { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-facebook { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-facebook:before { + content: "\f39e"; } + +.fa.fa-facebook-f { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-facebook-f:before { + content: "\f39e"; } + +.fa.fa-github { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-credit-card { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-feed:before { + content: "\f09e"; } + +.fa.fa-hdd-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hdd-o:before { + content: "\f0a0"; } + +.fa.fa-hand-o-right { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-o-right:before { + content: "\f0a4"; } + +.fa.fa-hand-o-left { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-o-left:before { + content: "\f0a5"; } + +.fa.fa-hand-o-up { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-o-up:before { + content: "\f0a6"; } + +.fa.fa-hand-o-down { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-o-down:before { + content: "\f0a7"; } + +.fa.fa-globe:before { + content: "\f57d"; } + +.fa.fa-tasks:before { + content: "\f828"; } + +.fa.fa-arrows-alt:before { + content: "\f31e"; } + +.fa.fa-group:before { + content: "\f0c0"; } + +.fa.fa-chain:before { + content: "\f0c1"; } + +.fa.fa-cut:before { + content: "\f0c4"; } + +.fa.fa-files-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-files-o:before { + content: "\f0c5"; } + +.fa.fa-floppy-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-floppy-o:before { + content: "\f0c7"; } + +.fa.fa-save { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-save:before { + content: "\f0c7"; } + +.fa.fa-navicon:before { + content: "\f0c9"; } + +.fa.fa-reorder:before { + content: "\f0c9"; } + +.fa.fa-magic:before { + content: "\e2ca"; } + +.fa.fa-pinterest { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-pinterest-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-pinterest-square:before { + content: "\f0d3"; } + +.fa.fa-google-plus-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-google-plus-square:before { + content: "\f0d4"; } + +.fa.fa-google-plus { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-google-plus:before { + content: "\f0d5"; } + +.fa.fa-money:before { + content: "\f3d1"; } + +.fa.fa-unsorted:before { + content: "\f0dc"; } + +.fa.fa-sort-desc:before { + content: "\f0dd"; } + +.fa.fa-sort-asc:before { + content: "\f0de"; } + +.fa.fa-linkedin { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-linkedin:before { + content: "\f0e1"; } + +.fa.fa-rotate-left:before { + content: "\f0e2"; } + +.fa.fa-legal:before { + content: "\f0e3"; } + +.fa.fa-tachometer:before { + content: "\f625"; } + +.fa.fa-dashboard:before { + content: "\f625"; } + +.fa.fa-comment-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-comment-o:before { + content: "\f075"; } + +.fa.fa-comments-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-comments-o:before { + content: "\f086"; } + +.fa.fa-flash:before { + content: "\f0e7"; } + +.fa.fa-clipboard:before { + content: "\f0ea"; } + +.fa.fa-lightbulb-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-lightbulb-o:before { + content: "\f0eb"; } + +.fa.fa-exchange:before { + content: "\f362"; } + +.fa.fa-cloud-download:before { + content: "\f0ed"; } + +.fa.fa-cloud-upload:before { + content: "\f0ee"; } + +.fa.fa-bell-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-bell-o:before { + content: "\f0f3"; } + +.fa.fa-cutlery:before { + content: "\f2e7"; } + +.fa.fa-file-text-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-text-o:before { + content: "\f15c"; } + +.fa.fa-building-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-building-o:before { + content: "\f1ad"; } + +.fa.fa-hospital-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hospital-o:before { + content: "\f0f8"; } + +.fa.fa-tablet:before { + content: "\f3fa"; } + +.fa.fa-mobile:before { + content: "\f3cd"; } + +.fa.fa-mobile-phone:before { + content: "\f3cd"; } + +.fa.fa-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-circle-o:before { + content: "\f111"; } + +.fa.fa-mail-reply:before { + content: "\f3e5"; } + +.fa.fa-github-alt { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-folder-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-folder-o:before { + content: "\f07b"; } + +.fa.fa-folder-open-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-folder-open-o:before { + content: "\f07c"; } + +.fa.fa-smile-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-smile-o:before { + content: "\f118"; } + +.fa.fa-frown-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-frown-o:before { + content: "\f119"; } + +.fa.fa-meh-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-meh-o:before { + content: "\f11a"; } + +.fa.fa-keyboard-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-keyboard-o:before { + content: "\f11c"; } + +.fa.fa-flag-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-flag-o:before { + content: "\f024"; } + +.fa.fa-mail-reply-all:before { + content: "\f122"; } + +.fa.fa-star-half-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-star-half-o:before { + content: "\f5c0"; } + +.fa.fa-star-half-empty { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-star-half-empty:before { + content: "\f5c0"; } + +.fa.fa-star-half-full { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-star-half-full:before { + content: "\f5c0"; } + +.fa.fa-code-fork:before { + content: "\f126"; } + +.fa.fa-chain-broken:before { + content: "\f127"; } + +.fa.fa-unlink:before { + content: "\f127"; } + +.fa.fa-calendar-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-calendar-o:before { + content: "\f133"; } + +.fa.fa-maxcdn { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-html5 { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-css3 { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-unlock-alt:before { + content: "\f09c"; } + +.fa.fa-minus-square-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-minus-square-o:before { + content: "\f146"; } + +.fa.fa-level-up:before { + content: "\f3bf"; } + +.fa.fa-level-down:before { + content: "\f3be"; } + +.fa.fa-pencil-square:before { + content: "\f14b"; } + +.fa.fa-external-link-square:before { + content: "\f360"; } + +.fa.fa-compass { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-caret-square-o-down { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-caret-square-o-down:before { + content: "\f150"; } + +.fa.fa-toggle-down { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-toggle-down:before { + content: "\f150"; } + +.fa.fa-caret-square-o-up { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-caret-square-o-up:before { + content: "\f151"; } + +.fa.fa-toggle-up { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-toggle-up:before { + content: "\f151"; } + +.fa.fa-caret-square-o-right { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-caret-square-o-right:before { + content: "\f152"; } + +.fa.fa-toggle-right { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-toggle-right:before { + content: "\f152"; } + +.fa.fa-eur:before { + content: "\f153"; } + +.fa.fa-euro:before { + content: "\f153"; } + +.fa.fa-gbp:before { + content: "\f154"; } + +.fa.fa-usd:before { + content: "\24"; } + +.fa.fa-dollar:before { + content: "\24"; } + +.fa.fa-inr:before { + content: "\e1bc"; } + +.fa.fa-rupee:before { + content: "\e1bc"; } + +.fa.fa-jpy:before { + content: "\f157"; } + +.fa.fa-cny:before { + content: "\f157"; } + +.fa.fa-rmb:before { + content: "\f157"; } + +.fa.fa-yen:before { + content: "\f157"; } + +.fa.fa-rub:before { + content: "\f158"; } + +.fa.fa-ruble:before { + content: "\f158"; } + +.fa.fa-rouble:before { + content: "\f158"; } + +.fa.fa-krw:before { + content: "\f159"; } + +.fa.fa-won:before { + content: "\f159"; } + +.fa.fa-btc { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-bitcoin { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-bitcoin:before { + content: "\f15a"; } + +.fa.fa-file-text:before { + content: "\f15c"; } + +.fa.fa-sort-alpha-asc:before { + content: "\f15d"; } + +.fa.fa-sort-alpha-desc:before { + content: "\f881"; } + +.fa.fa-sort-amount-asc:before { + content: "\f884"; } + +.fa.fa-sort-amount-desc:before { + content: "\f160"; } + +.fa.fa-sort-numeric-asc:before { + content: "\f162"; } + +.fa.fa-sort-numeric-desc:before { + content: "\f886"; } + +.fa.fa-youtube-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-youtube-square:before { + content: "\f431"; } + +.fa.fa-youtube { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-xing { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-xing-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-xing-square:before { + content: "\f169"; } + +.fa.fa-youtube-play { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-youtube-play:before { + content: "\f167"; } + +.fa.fa-dropbox { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-stack-overflow { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-instagram { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-flickr { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-adn { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-bitbucket { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-bitbucket-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-bitbucket-square:before { + content: "\f171"; } + +.fa.fa-tumblr { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-tumblr-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-tumblr-square:before { + content: "\f174"; } + +.fa.fa-long-arrow-down:before { + content: "\f309"; } + +.fa.fa-long-arrow-up:before { + content: "\f30c"; } + +.fa.fa-long-arrow-left:before { + content: "\f30a"; } + +.fa.fa-long-arrow-right:before { + content: "\f30b"; } + +.fa.fa-apple { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-windows { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-android { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-linux { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-dribbble { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-skype { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-foursquare { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-trello { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-gratipay { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-gittip { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-gittip:before { + content: "\f184"; } + +.fa.fa-sun-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-sun-o:before { + content: "\f185"; } + +.fa.fa-moon-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-moon-o:before { + content: "\f186"; } + +.fa.fa-vk { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-weibo { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-renren { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-pagelines { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-stack-exchange { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-arrow-circle-o-right { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-arrow-circle-o-right:before { + content: "\f35a"; } + +.fa.fa-arrow-circle-o-left { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-arrow-circle-o-left:before { + content: "\f359"; } + +.fa.fa-caret-square-o-left { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-caret-square-o-left:before { + content: "\f191"; } + +.fa.fa-toggle-left { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-toggle-left:before { + content: "\f191"; } + +.fa.fa-dot-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-dot-circle-o:before { + content: "\f192"; } + +.fa.fa-vimeo-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-vimeo-square:before { + content: "\f194"; } + +.fa.fa-try:before { + content: "\e2bb"; } + +.fa.fa-turkish-lira:before { + content: "\e2bb"; } + +.fa.fa-plus-square-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-plus-square-o:before { + content: "\f0fe"; } + +.fa.fa-slack { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wordpress { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-openid { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-institution:before { + content: "\f19c"; } + +.fa.fa-bank:before { + content: "\f19c"; } + +.fa.fa-mortar-board:before { + content: "\f19d"; } + +.fa.fa-yahoo { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-google { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-reddit { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-reddit-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-reddit-square:before { + content: "\f1a2"; } + +.fa.fa-stumbleupon-circle { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-stumbleupon { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-delicious { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-digg { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-pied-piper-pp { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-pied-piper-alt { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-drupal { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-joomla { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-behance { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-behance-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-behance-square:before { + content: "\f1b5"; } + +.fa.fa-steam { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-steam-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-steam-square:before { + content: "\f1b7"; } + +.fa.fa-automobile:before { + content: "\f1b9"; } + +.fa.fa-cab:before { + content: "\f1ba"; } + +.fa.fa-spotify { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-deviantart { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-soundcloud { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-file-pdf-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-pdf-o:before { + content: "\f1c1"; } + +.fa.fa-file-word-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-word-o:before { + content: "\f1c2"; } + +.fa.fa-file-excel-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-excel-o:before { + content: "\f1c3"; } + +.fa.fa-file-powerpoint-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-powerpoint-o:before { + content: "\f1c4"; } + +.fa.fa-file-image-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-image-o:before { + content: "\f1c5"; } + +.fa.fa-file-photo-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-photo-o:before { + content: "\f1c5"; } + +.fa.fa-file-picture-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-picture-o:before { + content: "\f1c5"; } + +.fa.fa-file-archive-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-archive-o:before { + content: "\f1c6"; } + +.fa.fa-file-zip-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-zip-o:before { + content: "\f1c6"; } + +.fa.fa-file-audio-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-audio-o:before { + content: "\f1c7"; } + +.fa.fa-file-sound-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-sound-o:before { + content: "\f1c7"; } + +.fa.fa-file-video-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-video-o:before { + content: "\f1c8"; } + +.fa.fa-file-movie-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-movie-o:before { + content: "\f1c8"; } + +.fa.fa-file-code-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-code-o:before { + content: "\f1c9"; } + +.fa.fa-vine { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-codepen { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-jsfiddle { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-life-bouy:before { + content: "\f1cd"; } + +.fa.fa-life-buoy:before { + content: "\f1cd"; } + +.fa.fa-life-saver:before { + content: "\f1cd"; } + +.fa.fa-support:before { + content: "\f1cd"; } + +.fa.fa-circle-o-notch:before { + content: "\f1ce"; } + +.fa.fa-rebel { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-ra { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-ra:before { + content: "\f1d0"; } + +.fa.fa-resistance { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-resistance:before { + content: "\f1d0"; } + +.fa.fa-empire { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-ge { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-ge:before { + content: "\f1d1"; } + +.fa.fa-git-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-git-square:before { + content: "\f1d2"; } + +.fa.fa-git { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-hacker-news { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-y-combinator-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-y-combinator-square:before { + content: "\f1d4"; } + +.fa.fa-yc-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-yc-square:before { + content: "\f1d4"; } + +.fa.fa-tencent-weibo { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-qq { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-weixin { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wechat { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wechat:before { + content: "\f1d7"; } + +.fa.fa-send:before { + content: "\f1d8"; } + +.fa.fa-paper-plane-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-paper-plane-o:before { + content: "\f1d8"; } + +.fa.fa-send-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-send-o:before { + content: "\f1d8"; } + +.fa.fa-circle-thin { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-circle-thin:before { + content: "\f111"; } + +.fa.fa-header:before { + content: "\f1dc"; } + +.fa.fa-futbol-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-futbol-o:before { + content: "\f1e3"; } + +.fa.fa-soccer-ball-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-soccer-ball-o:before { + content: "\f1e3"; } + +.fa.fa-slideshare { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-twitch { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-yelp { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-newspaper-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-newspaper-o:before { + content: "\f1ea"; } + +.fa.fa-paypal { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-google-wallet { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-cc-visa { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-cc-mastercard { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-cc-discover { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-cc-amex { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-cc-paypal { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-cc-stripe { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-bell-slash-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-bell-slash-o:before { + content: "\f1f6"; } + +.fa.fa-trash:before { + content: "\f2ed"; } + +.fa.fa-copyright { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-eyedropper:before { + content: "\f1fb"; } + +.fa.fa-area-chart:before { + content: "\f1fe"; } + +.fa.fa-pie-chart:before { + content: "\f200"; } + +.fa.fa-line-chart:before { + content: "\f201"; } + +.fa.fa-lastfm { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-lastfm-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-lastfm-square:before { + content: "\f203"; } + +.fa.fa-ioxhost { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-angellist { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-cc { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-cc:before { + content: "\f20a"; } + +.fa.fa-ils:before { + content: "\f20b"; } + +.fa.fa-shekel:before { + content: "\f20b"; } + +.fa.fa-sheqel:before { + content: "\f20b"; } + +.fa.fa-buysellads { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-connectdevelop { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-dashcube { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-forumbee { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-leanpub { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-sellsy { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-shirtsinbulk { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-simplybuilt { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-skyatlas { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-diamond { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-diamond:before { + content: "\f3a5"; } + +.fa.fa-transgender:before { + content: "\f224"; } + +.fa.fa-intersex:before { + content: "\f224"; } + +.fa.fa-transgender-alt:before { + content: "\f225"; } + +.fa.fa-facebook-official { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-facebook-official:before { + content: "\f09a"; } + +.fa.fa-pinterest-p { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-whatsapp { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-hotel:before { + content: "\f236"; } + +.fa.fa-viacoin { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-medium { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-y-combinator { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-yc { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-yc:before { + content: "\f23b"; } + +.fa.fa-optin-monster { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-opencart { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-expeditedssl { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-battery-4:before { + content: "\f240"; } + +.fa.fa-battery:before { + content: "\f240"; } + +.fa.fa-battery-3:before { + content: "\f241"; } + +.fa.fa-battery-2:before { + content: "\f242"; } + +.fa.fa-battery-1:before { + content: "\f243"; } + +.fa.fa-battery-0:before { + content: "\f244"; } + +.fa.fa-object-group { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-object-ungroup { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-sticky-note-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-sticky-note-o:before { + content: "\f249"; } + +.fa.fa-cc-jcb { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-cc-diners-club { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-clone { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hourglass-o:before { + content: "\f254"; } + +.fa.fa-hourglass-1:before { + content: "\f251"; } + +.fa.fa-hourglass-2:before { + content: "\f252"; } + +.fa.fa-hourglass-3:before { + content: "\f253"; } + +.fa.fa-hand-rock-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-rock-o:before { + content: "\f255"; } + +.fa.fa-hand-grab-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-grab-o:before { + content: "\f255"; } + +.fa.fa-hand-paper-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-paper-o:before { + content: "\f256"; } + +.fa.fa-hand-stop-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-stop-o:before { + content: "\f256"; } + +.fa.fa-hand-scissors-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-scissors-o:before { + content: "\f257"; } + +.fa.fa-hand-lizard-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-lizard-o:before { + content: "\f258"; } + +.fa.fa-hand-spock-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-spock-o:before { + content: "\f259"; } + +.fa.fa-hand-pointer-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-pointer-o:before { + content: "\f25a"; } + +.fa.fa-hand-peace-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-peace-o:before { + content: "\f25b"; } + +.fa.fa-registered { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-creative-commons { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-gg { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-gg-circle { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-odnoklassniki { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-odnoklassniki-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-odnoklassniki-square:before { + content: "\f264"; } + +.fa.fa-get-pocket { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wikipedia-w { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-safari { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-chrome { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-firefox { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-opera { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-internet-explorer { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-television:before { + content: "\f26c"; } + +.fa.fa-contao { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-500px { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-amazon { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-calendar-plus-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-calendar-plus-o:before { + content: "\f271"; } + +.fa.fa-calendar-minus-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-calendar-minus-o:before { + content: "\f272"; } + +.fa.fa-calendar-times-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-calendar-times-o:before { + content: "\f273"; } + +.fa.fa-calendar-check-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-calendar-check-o:before { + content: "\f274"; } + +.fa.fa-map-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-map-o:before { + content: "\f279"; } + +.fa.fa-commenting:before { + content: "\f4ad"; } + +.fa.fa-commenting-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-commenting-o:before { + content: "\f4ad"; } + +.fa.fa-houzz { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-vimeo { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-vimeo:before { + content: "\f27d"; } + +.fa.fa-black-tie { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-fonticons { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-reddit-alien { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-edge { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-credit-card-alt:before { + content: "\f09d"; } + +.fa.fa-codiepie { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-modx { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-fort-awesome { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-usb { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-product-hunt { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-mixcloud { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-scribd { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-pause-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-pause-circle-o:before { + content: "\f28b"; } + +.fa.fa-stop-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-stop-circle-o:before { + content: "\f28d"; } + +.fa.fa-bluetooth { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-bluetooth-b { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-gitlab { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wpbeginner { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wpforms { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-envira { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wheelchair-alt { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wheelchair-alt:before { + content: "\f368"; } + +.fa.fa-question-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-question-circle-o:before { + content: "\f059"; } + +.fa.fa-volume-control-phone:before { + content: "\f2a0"; } + +.fa.fa-asl-interpreting:before { + content: "\f2a3"; } + +.fa.fa-deafness:before { + content: "\f2a4"; } + +.fa.fa-hard-of-hearing:before { + content: "\f2a4"; } + +.fa.fa-glide { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-glide-g { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-signing:before { + content: "\f2a7"; } + +.fa.fa-viadeo { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-viadeo-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-viadeo-square:before { + content: "\f2aa"; } + +.fa.fa-snapchat { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-snapchat-ghost { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-snapchat-ghost:before { + content: "\f2ab"; } + +.fa.fa-snapchat-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-snapchat-square:before { + content: "\f2ad"; } + +.fa.fa-pied-piper { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-first-order { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-yoast { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-themeisle { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-google-plus-official { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-google-plus-official:before { + content: "\f2b3"; } + +.fa.fa-google-plus-circle { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-google-plus-circle:before { + content: "\f2b3"; } + +.fa.fa-font-awesome { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-fa { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-fa:before { + content: "\f2b4"; } + +.fa.fa-handshake-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-handshake-o:before { + content: "\f2b5"; } + +.fa.fa-envelope-open-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-envelope-open-o:before { + content: "\f2b6"; } + +.fa.fa-linode { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-address-book-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-address-book-o:before { + content: "\f2b9"; } + +.fa.fa-vcard:before { + content: "\f2bb"; } + +.fa.fa-address-card-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-address-card-o:before { + content: "\f2bb"; } + +.fa.fa-vcard-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-vcard-o:before { + content: "\f2bb"; } + +.fa.fa-user-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-user-circle-o:before { + content: "\f2bd"; } + +.fa.fa-user-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-user-o:before { + content: "\f007"; } + +.fa.fa-id-badge { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-drivers-license:before { + content: "\f2c2"; } + +.fa.fa-id-card-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-id-card-o:before { + content: "\f2c2"; } + +.fa.fa-drivers-license-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-drivers-license-o:before { + content: "\f2c2"; } + +.fa.fa-quora { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-free-code-camp { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-telegram { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-thermometer-4:before { + content: "\f2c7"; } + +.fa.fa-thermometer:before { + content: "\f2c7"; } + +.fa.fa-thermometer-3:before { + content: "\f2c8"; } + +.fa.fa-thermometer-2:before { + content: "\f2c9"; } + +.fa.fa-thermometer-1:before { + content: "\f2ca"; } + +.fa.fa-thermometer-0:before { + content: "\f2cb"; } + +.fa.fa-bathtub:before { + content: "\f2cd"; } + +.fa.fa-s15:before { + content: "\f2cd"; } + +.fa.fa-window-maximize { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-window-restore { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-times-rectangle:before { + content: "\f410"; } + +.fa.fa-window-close-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-window-close-o:before { + content: "\f410"; } + +.fa.fa-times-rectangle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-times-rectangle-o:before { + content: "\f410"; } + +.fa.fa-bandcamp { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-grav { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-etsy { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-imdb { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-ravelry { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-eercast { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-eercast:before { + content: "\f2da"; } + +.fa.fa-snowflake-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-snowflake-o:before { + content: "\f2dc"; } + +.fa.fa-superpowers { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wpexplorer { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-meetup { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } diff --git a/docs/deps/font-awesome-6.4.2/css/v4-shims.min.css b/docs/deps/font-awesome-6.4.2/css/v4-shims.min.css new file mode 100644 index 0000000..64e4e8d --- /dev/null +++ b/docs/deps/font-awesome-6.4.2/css/v4-shims.min.css @@ -0,0 +1,6 @@ +/*! + * Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + * Copyright 2023 Fonticons, Inc. + */ +.fa.fa-glass:before{content:"\f000"}.fa.fa-envelope-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-envelope-o:before{content:"\f0e0"}.fa.fa-star-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-star-o:before{content:"\f005"}.fa.fa-close:before,.fa.fa-remove:before{content:"\f00d"}.fa.fa-gear:before{content:"\f013"}.fa.fa-trash-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-trash-o:before{content:"\f2ed"}.fa.fa-home:before{content:"\f015"}.fa.fa-file-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-o:before{content:"\f15b"}.fa.fa-clock-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-clock-o:before{content:"\f017"}.fa.fa-arrow-circle-o-down{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-arrow-circle-o-down:before{content:"\f358"}.fa.fa-arrow-circle-o-up{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-arrow-circle-o-up:before{content:"\f35b"}.fa.fa-play-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-play-circle-o:before{content:"\f144"}.fa.fa-repeat:before,.fa.fa-rotate-right:before{content:"\f01e"}.fa.fa-refresh:before{content:"\f021"}.fa.fa-list-alt{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-list-alt:before{content:"\f022"}.fa.fa-dedent:before{content:"\f03b"}.fa.fa-video-camera:before{content:"\f03d"}.fa.fa-picture-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-picture-o:before{content:"\f03e"}.fa.fa-photo{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-photo:before{content:"\f03e"}.fa.fa-image{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-image:before{content:"\f03e"}.fa.fa-map-marker:before{content:"\f3c5"}.fa.fa-pencil-square-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-pencil-square-o:before{content:"\f044"}.fa.fa-edit{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-edit:before{content:"\f044"}.fa.fa-share-square-o:before{content:"\f14d"}.fa.fa-check-square-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-check-square-o:before{content:"\f14a"}.fa.fa-arrows:before{content:"\f0b2"}.fa.fa-times-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-times-circle-o:before{content:"\f057"}.fa.fa-check-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-check-circle-o:before{content:"\f058"}.fa.fa-mail-forward:before{content:"\f064"}.fa.fa-expand:before{content:"\f424"}.fa.fa-compress:before{content:"\f422"}.fa.fa-eye,.fa.fa-eye-slash{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-warning:before{content:"\f071"}.fa.fa-calendar:before{content:"\f073"}.fa.fa-arrows-v:before{content:"\f338"}.fa.fa-arrows-h:before{content:"\f337"}.fa.fa-bar-chart-o:before,.fa.fa-bar-chart:before{content:"\e0e3"}.fa.fa-twitter-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-twitter-square:before{content:"\f081"}.fa.fa-facebook-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-facebook-square:before{content:"\f082"}.fa.fa-gears:before{content:"\f085"}.fa.fa-thumbs-o-up{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-thumbs-o-up:before{content:"\f164"}.fa.fa-thumbs-o-down{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-thumbs-o-down:before{content:"\f165"}.fa.fa-heart-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-heart-o:before{content:"\f004"}.fa.fa-sign-out:before{content:"\f2f5"}.fa.fa-linkedin-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-linkedin-square:before{content:"\f08c"}.fa.fa-thumb-tack:before{content:"\f08d"}.fa.fa-external-link:before{content:"\f35d"}.fa.fa-sign-in:before{content:"\f2f6"}.fa.fa-github-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-github-square:before{content:"\f092"}.fa.fa-lemon-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-lemon-o:before{content:"\f094"}.fa.fa-square-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-square-o:before{content:"\f0c8"}.fa.fa-bookmark-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-bookmark-o:before{content:"\f02e"}.fa.fa-facebook,.fa.fa-twitter{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-facebook:before{content:"\f39e"}.fa.fa-facebook-f{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-facebook-f:before{content:"\f39e"}.fa.fa-github{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-credit-card{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-feed:before{content:"\f09e"}.fa.fa-hdd-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hdd-o:before{content:"\f0a0"}.fa.fa-hand-o-right{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-o-right:before{content:"\f0a4"}.fa.fa-hand-o-left{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-o-left:before{content:"\f0a5"}.fa.fa-hand-o-up{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-o-up:before{content:"\f0a6"}.fa.fa-hand-o-down{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-o-down:before{content:"\f0a7"}.fa.fa-globe:before{content:"\f57d"}.fa.fa-tasks:before{content:"\f828"}.fa.fa-arrows-alt:before{content:"\f31e"}.fa.fa-group:before{content:"\f0c0"}.fa.fa-chain:before{content:"\f0c1"}.fa.fa-cut:before{content:"\f0c4"}.fa.fa-files-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-files-o:before{content:"\f0c5"}.fa.fa-floppy-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-floppy-o:before{content:"\f0c7"}.fa.fa-save{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-save:before{content:"\f0c7"}.fa.fa-navicon:before,.fa.fa-reorder:before{content:"\f0c9"}.fa.fa-magic:before{content:"\e2ca"}.fa.fa-pinterest,.fa.fa-pinterest-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-pinterest-square:before{content:"\f0d3"}.fa.fa-google-plus-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-google-plus-square:before{content:"\f0d4"}.fa.fa-google-plus{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-google-plus:before{content:"\f0d5"}.fa.fa-money:before{content:"\f3d1"}.fa.fa-unsorted:before{content:"\f0dc"}.fa.fa-sort-desc:before{content:"\f0dd"}.fa.fa-sort-asc:before{content:"\f0de"}.fa.fa-linkedin{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-linkedin:before{content:"\f0e1"}.fa.fa-rotate-left:before{content:"\f0e2"}.fa.fa-legal:before{content:"\f0e3"}.fa.fa-dashboard:before,.fa.fa-tachometer:before{content:"\f625"}.fa.fa-comment-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-comment-o:before{content:"\f075"}.fa.fa-comments-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-comments-o:before{content:"\f086"}.fa.fa-flash:before{content:"\f0e7"}.fa.fa-clipboard:before{content:"\f0ea"}.fa.fa-lightbulb-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-lightbulb-o:before{content:"\f0eb"}.fa.fa-exchange:before{content:"\f362"}.fa.fa-cloud-download:before{content:"\f0ed"}.fa.fa-cloud-upload:before{content:"\f0ee"}.fa.fa-bell-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-bell-o:before{content:"\f0f3"}.fa.fa-cutlery:before{content:"\f2e7"}.fa.fa-file-text-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-text-o:before{content:"\f15c"}.fa.fa-building-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-building-o:before{content:"\f1ad"}.fa.fa-hospital-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hospital-o:before{content:"\f0f8"}.fa.fa-tablet:before{content:"\f3fa"}.fa.fa-mobile-phone:before,.fa.fa-mobile:before{content:"\f3cd"}.fa.fa-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-circle-o:before{content:"\f111"}.fa.fa-mail-reply:before{content:"\f3e5"}.fa.fa-github-alt{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-folder-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-folder-o:before{content:"\f07b"}.fa.fa-folder-open-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-folder-open-o:before{content:"\f07c"}.fa.fa-smile-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-smile-o:before{content:"\f118"}.fa.fa-frown-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-frown-o:before{content:"\f119"}.fa.fa-meh-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-meh-o:before{content:"\f11a"}.fa.fa-keyboard-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-keyboard-o:before{content:"\f11c"}.fa.fa-flag-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-flag-o:before{content:"\f024"}.fa.fa-mail-reply-all:before{content:"\f122"}.fa.fa-star-half-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-star-half-o:before{content:"\f5c0"}.fa.fa-star-half-empty{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-star-half-empty:before{content:"\f5c0"}.fa.fa-star-half-full{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-star-half-full:before{content:"\f5c0"}.fa.fa-code-fork:before{content:"\f126"}.fa.fa-chain-broken:before,.fa.fa-unlink:before{content:"\f127"}.fa.fa-calendar-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-calendar-o:before{content:"\f133"}.fa.fa-css3,.fa.fa-html5,.fa.fa-maxcdn{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-unlock-alt:before{content:"\f09c"}.fa.fa-minus-square-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-minus-square-o:before{content:"\f146"}.fa.fa-level-up:before{content:"\f3bf"}.fa.fa-level-down:before{content:"\f3be"}.fa.fa-pencil-square:before{content:"\f14b"}.fa.fa-external-link-square:before{content:"\f360"}.fa.fa-compass{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-caret-square-o-down{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-caret-square-o-down:before{content:"\f150"}.fa.fa-toggle-down{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-toggle-down:before{content:"\f150"}.fa.fa-caret-square-o-up{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-caret-square-o-up:before{content:"\f151"}.fa.fa-toggle-up{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-toggle-up:before{content:"\f151"}.fa.fa-caret-square-o-right{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-caret-square-o-right:before{content:"\f152"}.fa.fa-toggle-right{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-toggle-right:before{content:"\f152"}.fa.fa-eur:before,.fa.fa-euro:before{content:"\f153"}.fa.fa-gbp:before{content:"\f154"}.fa.fa-dollar:before,.fa.fa-usd:before{content:"\24"}.fa.fa-inr:before,.fa.fa-rupee:before{content:"\e1bc"}.fa.fa-cny:before,.fa.fa-jpy:before,.fa.fa-rmb:before,.fa.fa-yen:before{content:"\f157"}.fa.fa-rouble:before,.fa.fa-rub:before,.fa.fa-ruble:before{content:"\f158"}.fa.fa-krw:before,.fa.fa-won:before{content:"\f159"}.fa.fa-bitcoin,.fa.fa-btc{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-bitcoin:before{content:"\f15a"}.fa.fa-file-text:before{content:"\f15c"}.fa.fa-sort-alpha-asc:before{content:"\f15d"}.fa.fa-sort-alpha-desc:before{content:"\f881"}.fa.fa-sort-amount-asc:before{content:"\f884"}.fa.fa-sort-amount-desc:before{content:"\f160"}.fa.fa-sort-numeric-asc:before{content:"\f162"}.fa.fa-sort-numeric-desc:before{content:"\f886"}.fa.fa-youtube-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-youtube-square:before{content:"\f431"}.fa.fa-xing,.fa.fa-xing-square,.fa.fa-youtube{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-xing-square:before{content:"\f169"}.fa.fa-youtube-play{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-youtube-play:before{content:"\f167"}.fa.fa-adn,.fa.fa-bitbucket,.fa.fa-bitbucket-square,.fa.fa-dropbox,.fa.fa-flickr,.fa.fa-instagram,.fa.fa-stack-overflow{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-bitbucket-square:before{content:"\f171"}.fa.fa-tumblr,.fa.fa-tumblr-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-tumblr-square:before{content:"\f174"}.fa.fa-long-arrow-down:before{content:"\f309"}.fa.fa-long-arrow-up:before{content:"\f30c"}.fa.fa-long-arrow-left:before{content:"\f30a"}.fa.fa-long-arrow-right:before{content:"\f30b"}.fa.fa-android,.fa.fa-apple,.fa.fa-dribbble,.fa.fa-foursquare,.fa.fa-gittip,.fa.fa-gratipay,.fa.fa-linux,.fa.fa-skype,.fa.fa-trello,.fa.fa-windows{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-gittip:before{content:"\f184"}.fa.fa-sun-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-sun-o:before{content:"\f185"}.fa.fa-moon-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-moon-o:before{content:"\f186"}.fa.fa-pagelines,.fa.fa-renren,.fa.fa-stack-exchange,.fa.fa-vk,.fa.fa-weibo{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-arrow-circle-o-right{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-arrow-circle-o-right:before{content:"\f35a"}.fa.fa-arrow-circle-o-left{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-arrow-circle-o-left:before{content:"\f359"}.fa.fa-caret-square-o-left{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-caret-square-o-left:before{content:"\f191"}.fa.fa-toggle-left{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-toggle-left:before{content:"\f191"}.fa.fa-dot-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-dot-circle-o:before{content:"\f192"}.fa.fa-vimeo-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-vimeo-square:before{content:"\f194"}.fa.fa-try:before,.fa.fa-turkish-lira:before{content:"\e2bb"}.fa.fa-plus-square-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-plus-square-o:before{content:"\f0fe"}.fa.fa-openid,.fa.fa-slack,.fa.fa-wordpress{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-bank:before,.fa.fa-institution:before{content:"\f19c"}.fa.fa-mortar-board:before{content:"\f19d"}.fa.fa-google,.fa.fa-reddit,.fa.fa-reddit-square,.fa.fa-yahoo{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-reddit-square:before{content:"\f1a2"}.fa.fa-behance,.fa.fa-behance-square,.fa.fa-delicious,.fa.fa-digg,.fa.fa-drupal,.fa.fa-joomla,.fa.fa-pied-piper-alt,.fa.fa-pied-piper-pp,.fa.fa-stumbleupon,.fa.fa-stumbleupon-circle{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-behance-square:before{content:"\f1b5"}.fa.fa-steam,.fa.fa-steam-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-steam-square:before{content:"\f1b7"}.fa.fa-automobile:before{content:"\f1b9"}.fa.fa-cab:before{content:"\f1ba"}.fa.fa-deviantart,.fa.fa-soundcloud,.fa.fa-spotify{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-file-pdf-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-pdf-o:before{content:"\f1c1"}.fa.fa-file-word-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-word-o:before{content:"\f1c2"}.fa.fa-file-excel-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-excel-o:before{content:"\f1c3"}.fa.fa-file-powerpoint-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-powerpoint-o:before{content:"\f1c4"}.fa.fa-file-image-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-image-o:before{content:"\f1c5"}.fa.fa-file-photo-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-photo-o:before{content:"\f1c5"}.fa.fa-file-picture-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-picture-o:before{content:"\f1c5"}.fa.fa-file-archive-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-archive-o:before{content:"\f1c6"}.fa.fa-file-zip-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-zip-o:before{content:"\f1c6"}.fa.fa-file-audio-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-audio-o:before{content:"\f1c7"}.fa.fa-file-sound-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-sound-o:before{content:"\f1c7"}.fa.fa-file-video-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-video-o:before{content:"\f1c8"}.fa.fa-file-movie-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-movie-o:before{content:"\f1c8"}.fa.fa-file-code-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-code-o:before{content:"\f1c9"}.fa.fa-codepen,.fa.fa-jsfiddle,.fa.fa-vine{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-life-bouy:before,.fa.fa-life-buoy:before,.fa.fa-life-saver:before,.fa.fa-support:before{content:"\f1cd"}.fa.fa-circle-o-notch:before{content:"\f1ce"}.fa.fa-ra,.fa.fa-rebel{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-ra:before{content:"\f1d0"}.fa.fa-resistance{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-resistance:before{content:"\f1d0"}.fa.fa-empire,.fa.fa-ge{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-ge:before{content:"\f1d1"}.fa.fa-git-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-git-square:before{content:"\f1d2"}.fa.fa-git,.fa.fa-hacker-news,.fa.fa-y-combinator-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-y-combinator-square:before{content:"\f1d4"}.fa.fa-yc-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-yc-square:before{content:"\f1d4"}.fa.fa-qq,.fa.fa-tencent-weibo,.fa.fa-wechat,.fa.fa-weixin{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-wechat:before{content:"\f1d7"}.fa.fa-send:before{content:"\f1d8"}.fa.fa-paper-plane-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-paper-plane-o:before{content:"\f1d8"}.fa.fa-send-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-send-o:before{content:"\f1d8"}.fa.fa-circle-thin{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-circle-thin:before{content:"\f111"}.fa.fa-header:before{content:"\f1dc"}.fa.fa-futbol-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-futbol-o:before{content:"\f1e3"}.fa.fa-soccer-ball-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-soccer-ball-o:before{content:"\f1e3"}.fa.fa-slideshare,.fa.fa-twitch,.fa.fa-yelp{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-newspaper-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-newspaper-o:before{content:"\f1ea"}.fa.fa-cc-amex,.fa.fa-cc-discover,.fa.fa-cc-mastercard,.fa.fa-cc-paypal,.fa.fa-cc-stripe,.fa.fa-cc-visa,.fa.fa-google-wallet,.fa.fa-paypal{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-bell-slash-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-bell-slash-o:before{content:"\f1f6"}.fa.fa-trash:before{content:"\f2ed"}.fa.fa-copyright{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-eyedropper:before{content:"\f1fb"}.fa.fa-area-chart:before{content:"\f1fe"}.fa.fa-pie-chart:before{content:"\f200"}.fa.fa-line-chart:before{content:"\f201"}.fa.fa-lastfm,.fa.fa-lastfm-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-lastfm-square:before{content:"\f203"}.fa.fa-angellist,.fa.fa-ioxhost{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-cc{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-cc:before{content:"\f20a"}.fa.fa-ils:before,.fa.fa-shekel:before,.fa.fa-sheqel:before{content:"\f20b"}.fa.fa-buysellads,.fa.fa-connectdevelop,.fa.fa-dashcube,.fa.fa-forumbee,.fa.fa-leanpub,.fa.fa-sellsy,.fa.fa-shirtsinbulk,.fa.fa-simplybuilt,.fa.fa-skyatlas{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-diamond{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-diamond:before{content:"\f3a5"}.fa.fa-intersex:before,.fa.fa-transgender:before{content:"\f224"}.fa.fa-transgender-alt:before{content:"\f225"}.fa.fa-facebook-official{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-facebook-official:before{content:"\f09a"}.fa.fa-pinterest-p,.fa.fa-whatsapp{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-hotel:before{content:"\f236"}.fa.fa-medium,.fa.fa-viacoin,.fa.fa-y-combinator,.fa.fa-yc{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-yc:before{content:"\f23b"}.fa.fa-expeditedssl,.fa.fa-opencart,.fa.fa-optin-monster{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-battery-4:before,.fa.fa-battery:before{content:"\f240"}.fa.fa-battery-3:before{content:"\f241"}.fa.fa-battery-2:before{content:"\f242"}.fa.fa-battery-1:before{content:"\f243"}.fa.fa-battery-0:before{content:"\f244"}.fa.fa-object-group,.fa.fa-object-ungroup,.fa.fa-sticky-note-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-sticky-note-o:before{content:"\f249"}.fa.fa-cc-diners-club,.fa.fa-cc-jcb{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-clone{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hourglass-o:before{content:"\f254"}.fa.fa-hourglass-1:before{content:"\f251"}.fa.fa-hourglass-2:before{content:"\f252"}.fa.fa-hourglass-3:before{content:"\f253"}.fa.fa-hand-rock-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-rock-o:before{content:"\f255"}.fa.fa-hand-grab-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-grab-o:before{content:"\f255"}.fa.fa-hand-paper-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-paper-o:before{content:"\f256"}.fa.fa-hand-stop-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-stop-o:before{content:"\f256"}.fa.fa-hand-scissors-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-scissors-o:before{content:"\f257"}.fa.fa-hand-lizard-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-lizard-o:before{content:"\f258"}.fa.fa-hand-spock-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-spock-o:before{content:"\f259"}.fa.fa-hand-pointer-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-pointer-o:before{content:"\f25a"}.fa.fa-hand-peace-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-peace-o:before{content:"\f25b"}.fa.fa-registered{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-creative-commons,.fa.fa-gg,.fa.fa-gg-circle,.fa.fa-odnoklassniki,.fa.fa-odnoklassniki-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-odnoklassniki-square:before{content:"\f264"}.fa.fa-chrome,.fa.fa-firefox,.fa.fa-get-pocket,.fa.fa-internet-explorer,.fa.fa-opera,.fa.fa-safari,.fa.fa-wikipedia-w{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-television:before{content:"\f26c"}.fa.fa-500px,.fa.fa-amazon,.fa.fa-contao{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-calendar-plus-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-calendar-plus-o:before{content:"\f271"}.fa.fa-calendar-minus-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-calendar-minus-o:before{content:"\f272"}.fa.fa-calendar-times-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-calendar-times-o:before{content:"\f273"}.fa.fa-calendar-check-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-calendar-check-o:before{content:"\f274"}.fa.fa-map-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-map-o:before{content:"\f279"}.fa.fa-commenting:before{content:"\f4ad"}.fa.fa-commenting-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-commenting-o:before{content:"\f4ad"}.fa.fa-houzz,.fa.fa-vimeo{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-vimeo:before{content:"\f27d"}.fa.fa-black-tie,.fa.fa-edge,.fa.fa-fonticons,.fa.fa-reddit-alien{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-credit-card-alt:before{content:"\f09d"}.fa.fa-codiepie,.fa.fa-fort-awesome,.fa.fa-mixcloud,.fa.fa-modx,.fa.fa-product-hunt,.fa.fa-scribd,.fa.fa-usb{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-pause-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-pause-circle-o:before{content:"\f28b"}.fa.fa-stop-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-stop-circle-o:before{content:"\f28d"}.fa.fa-bluetooth,.fa.fa-bluetooth-b,.fa.fa-envira,.fa.fa-gitlab,.fa.fa-wheelchair-alt,.fa.fa-wpbeginner,.fa.fa-wpforms{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-wheelchair-alt:before{content:"\f368"}.fa.fa-question-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-question-circle-o:before{content:"\f059"}.fa.fa-volume-control-phone:before{content:"\f2a0"}.fa.fa-asl-interpreting:before{content:"\f2a3"}.fa.fa-deafness:before,.fa.fa-hard-of-hearing:before{content:"\f2a4"}.fa.fa-glide,.fa.fa-glide-g{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-signing:before{content:"\f2a7"}.fa.fa-viadeo,.fa.fa-viadeo-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-viadeo-square:before{content:"\f2aa"}.fa.fa-snapchat,.fa.fa-snapchat-ghost{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-snapchat-ghost:before{content:"\f2ab"}.fa.fa-snapchat-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-snapchat-square:before{content:"\f2ad"}.fa.fa-first-order,.fa.fa-google-plus-official,.fa.fa-pied-piper,.fa.fa-themeisle,.fa.fa-yoast{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-google-plus-official:before{content:"\f2b3"}.fa.fa-google-plus-circle{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-google-plus-circle:before{content:"\f2b3"}.fa.fa-fa,.fa.fa-font-awesome{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-fa:before{content:"\f2b4"}.fa.fa-handshake-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-handshake-o:before{content:"\f2b5"}.fa.fa-envelope-open-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-envelope-open-o:before{content:"\f2b6"}.fa.fa-linode{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-address-book-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-address-book-o:before{content:"\f2b9"}.fa.fa-vcard:before{content:"\f2bb"}.fa.fa-address-card-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-address-card-o:before{content:"\f2bb"}.fa.fa-vcard-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-vcard-o:before{content:"\f2bb"}.fa.fa-user-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-user-circle-o:before{content:"\f2bd"}.fa.fa-user-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-user-o:before{content:"\f007"}.fa.fa-id-badge{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-drivers-license:before{content:"\f2c2"}.fa.fa-id-card-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-id-card-o:before{content:"\f2c2"}.fa.fa-drivers-license-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-drivers-license-o:before{content:"\f2c2"}.fa.fa-free-code-camp,.fa.fa-quora,.fa.fa-telegram{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-thermometer-4:before,.fa.fa-thermometer:before{content:"\f2c7"}.fa.fa-thermometer-3:before{content:"\f2c8"}.fa.fa-thermometer-2:before{content:"\f2c9"}.fa.fa-thermometer-1:before{content:"\f2ca"}.fa.fa-thermometer-0:before{content:"\f2cb"}.fa.fa-bathtub:before,.fa.fa-s15:before{content:"\f2cd"}.fa.fa-window-maximize,.fa.fa-window-restore{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-times-rectangle:before{content:"\f410"}.fa.fa-window-close-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-window-close-o:before{content:"\f410"}.fa.fa-times-rectangle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-times-rectangle-o:before{content:"\f410"}.fa.fa-bandcamp,.fa.fa-eercast,.fa.fa-etsy,.fa.fa-grav,.fa.fa-imdb,.fa.fa-ravelry{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-eercast:before{content:"\f2da"}.fa.fa-snowflake-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-snowflake-o:before{content:"\f2dc"}.fa.fa-meetup,.fa.fa-superpowers,.fa.fa-wpexplorer{font-family:"Font Awesome 6 Brands";font-weight:400} \ No newline at end of file diff --git a/docs/deps/font-awesome-6.4.2/webfonts/fa-brands-400.ttf b/docs/deps/font-awesome-6.4.2/webfonts/fa-brands-400.ttf new file mode 100644 index 0000000..30f55b7 Binary files /dev/null and b/docs/deps/font-awesome-6.4.2/webfonts/fa-brands-400.ttf differ diff --git a/docs/deps/font-awesome-6.4.2/webfonts/fa-brands-400.woff2 b/docs/deps/font-awesome-6.4.2/webfonts/fa-brands-400.woff2 new file mode 100644 index 0000000..8a480d9 Binary files /dev/null and b/docs/deps/font-awesome-6.4.2/webfonts/fa-brands-400.woff2 differ diff --git a/docs/deps/font-awesome-6.4.2/webfonts/fa-regular-400.ttf b/docs/deps/font-awesome-6.4.2/webfonts/fa-regular-400.ttf new file mode 100644 index 0000000..c79589d Binary files /dev/null and b/docs/deps/font-awesome-6.4.2/webfonts/fa-regular-400.ttf differ diff --git a/docs/deps/font-awesome-6.4.2/webfonts/fa-regular-400.woff2 b/docs/deps/font-awesome-6.4.2/webfonts/fa-regular-400.woff2 new file mode 100644 index 0000000..059a94e Binary files /dev/null and b/docs/deps/font-awesome-6.4.2/webfonts/fa-regular-400.woff2 differ diff --git a/docs/deps/font-awesome-6.4.2/webfonts/fa-solid-900.ttf b/docs/deps/font-awesome-6.4.2/webfonts/fa-solid-900.ttf new file mode 100644 index 0000000..e479fb2 Binary files /dev/null and b/docs/deps/font-awesome-6.4.2/webfonts/fa-solid-900.ttf differ diff --git a/docs/deps/font-awesome-6.4.2/webfonts/fa-solid-900.woff2 b/docs/deps/font-awesome-6.4.2/webfonts/fa-solid-900.woff2 new file mode 100644 index 0000000..88b0367 Binary files /dev/null and b/docs/deps/font-awesome-6.4.2/webfonts/fa-solid-900.woff2 differ diff --git a/docs/deps/font-awesome-6.4.2/webfonts/fa-v4compatibility.ttf b/docs/deps/font-awesome-6.4.2/webfonts/fa-v4compatibility.ttf new file mode 100644 index 0000000..ba6cb25 Binary files /dev/null and b/docs/deps/font-awesome-6.4.2/webfonts/fa-v4compatibility.ttf differ diff --git a/docs/deps/font-awesome-6.4.2/webfonts/fa-v4compatibility.woff2 b/docs/deps/font-awesome-6.4.2/webfonts/fa-v4compatibility.woff2 new file mode 100644 index 0000000..23b1c47 Binary files /dev/null and b/docs/deps/font-awesome-6.4.2/webfonts/fa-v4compatibility.woff2 differ diff --git a/docs/deps/font-awesome-6.5.2/css/all.css b/docs/deps/font-awesome-6.5.2/css/all.css new file mode 100644 index 0000000..151dd57 --- /dev/null +++ b/docs/deps/font-awesome-6.5.2/css/all.css @@ -0,0 +1,8028 @@ +/*! + * Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + * Copyright 2024 Fonticons, Inc. + */ +.fa { + font-family: var(--fa-style-family, "Font Awesome 6 Free"); + font-weight: var(--fa-style, 900); } + +.fa, +.fa-classic, +.fa-sharp, +.fas, +.fa-solid, +.far, +.fa-regular, +.fab, +.fa-brands { + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + display: var(--fa-display, inline-block); + font-style: normal; + font-variant: normal; + line-height: 1; + text-rendering: auto; } + +.fas, +.fa-classic, +.fa-solid, +.far, +.fa-regular { + font-family: 'Font Awesome 6 Free'; } + +.fab, +.fa-brands { + font-family: 'Font Awesome 6 Brands'; } + +.fa-1x { + font-size: 1em; } + +.fa-2x { + font-size: 2em; } + +.fa-3x { + font-size: 3em; } + +.fa-4x { + font-size: 4em; } + +.fa-5x { + font-size: 5em; } + +.fa-6x { + font-size: 6em; } + +.fa-7x { + font-size: 7em; } + +.fa-8x { + font-size: 8em; } + +.fa-9x { + font-size: 9em; } + +.fa-10x { + font-size: 10em; } + +.fa-2xs { + font-size: 0.625em; + line-height: 0.1em; + vertical-align: 0.225em; } + +.fa-xs { + font-size: 0.75em; + line-height: 0.08333em; + vertical-align: 0.125em; } + +.fa-sm { + font-size: 0.875em; + line-height: 0.07143em; + vertical-align: 0.05357em; } + +.fa-lg { + font-size: 1.25em; + line-height: 0.05em; + vertical-align: -0.075em; } + +.fa-xl { + font-size: 1.5em; + line-height: 0.04167em; + vertical-align: -0.125em; } + +.fa-2xl { + font-size: 2em; + line-height: 0.03125em; + vertical-align: -0.1875em; } + +.fa-fw { + text-align: center; + width: 1.25em; } + +.fa-ul { + list-style-type: none; + margin-left: var(--fa-li-margin, 2.5em); + padding-left: 0; } + .fa-ul > li { + position: relative; } + +.fa-li { + left: calc(var(--fa-li-width, 2em) * -1); + position: absolute; + text-align: center; + width: var(--fa-li-width, 2em); + line-height: inherit; } + +.fa-border { + border-color: var(--fa-border-color, #eee); + border-radius: var(--fa-border-radius, 0.1em); + border-style: var(--fa-border-style, solid); + border-width: var(--fa-border-width, 0.08em); + padding: var(--fa-border-padding, 0.2em 0.25em 0.15em); } + +.fa-pull-left { + float: left; + margin-right: var(--fa-pull-margin, 0.3em); } + +.fa-pull-right { + float: right; + margin-left: var(--fa-pull-margin, 0.3em); } + +.fa-beat { + -webkit-animation-name: fa-beat; + animation-name: fa-beat; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out); + animation-timing-function: var(--fa-animation-timing, ease-in-out); } + +.fa-bounce { + -webkit-animation-name: fa-bounce; + animation-name: fa-bounce; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1)); + animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1)); } + +.fa-fade { + -webkit-animation-name: fa-fade; + animation-name: fa-fade; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); + animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); } + +.fa-beat-fade { + -webkit-animation-name: fa-beat-fade; + animation-name: fa-beat-fade; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); + animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); } + +.fa-flip { + -webkit-animation-name: fa-flip; + animation-name: fa-flip; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out); + animation-timing-function: var(--fa-animation-timing, ease-in-out); } + +.fa-shake { + -webkit-animation-name: fa-shake; + animation-name: fa-shake; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, linear); + animation-timing-function: var(--fa-animation-timing, linear); } + +.fa-spin { + -webkit-animation-name: fa-spin; + animation-name: fa-spin; + -webkit-animation-delay: var(--fa-animation-delay, 0s); + animation-delay: var(--fa-animation-delay, 0s); + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 2s); + animation-duration: var(--fa-animation-duration, 2s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, linear); + animation-timing-function: var(--fa-animation-timing, linear); } + +.fa-spin-reverse { + --fa-animation-direction: reverse; } + +.fa-pulse, +.fa-spin-pulse { + -webkit-animation-name: fa-spin; + animation-name: fa-spin; + -webkit-animation-direction: var(--fa-animation-direction, normal); + animation-direction: var(--fa-animation-direction, normal); + -webkit-animation-duration: var(--fa-animation-duration, 1s); + animation-duration: var(--fa-animation-duration, 1s); + -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite); + animation-iteration-count: var(--fa-animation-iteration-count, infinite); + -webkit-animation-timing-function: var(--fa-animation-timing, steps(8)); + animation-timing-function: var(--fa-animation-timing, steps(8)); } + +@media (prefers-reduced-motion: reduce) { + .fa-beat, + .fa-bounce, + .fa-fade, + .fa-beat-fade, + .fa-flip, + .fa-pulse, + .fa-shake, + .fa-spin, + .fa-spin-pulse { + -webkit-animation-delay: -1ms; + animation-delay: -1ms; + -webkit-animation-duration: 1ms; + animation-duration: 1ms; + -webkit-animation-iteration-count: 1; + animation-iteration-count: 1; + -webkit-transition-delay: 0s; + transition-delay: 0s; + -webkit-transition-duration: 0s; + transition-duration: 0s; } } + +@-webkit-keyframes fa-beat { + 0%, 90% { + -webkit-transform: scale(1); + transform: scale(1); } + 45% { + -webkit-transform: scale(var(--fa-beat-scale, 1.25)); + transform: scale(var(--fa-beat-scale, 1.25)); } } + +@keyframes fa-beat { + 0%, 90% { + -webkit-transform: scale(1); + transform: scale(1); } + 45% { + -webkit-transform: scale(var(--fa-beat-scale, 1.25)); + transform: scale(var(--fa-beat-scale, 1.25)); } } + +@-webkit-keyframes fa-bounce { + 0% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); } + 10% { + -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); + transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); } + 30% { + -webkit-transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); + transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); } + 50% { + -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); + transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); } + 57% { + -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); + transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); } + 64% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); } + 100% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); } } + +@keyframes fa-bounce { + 0% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); } + 10% { + -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); + transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); } + 30% { + -webkit-transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); + transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); } + 50% { + -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); + transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); } + 57% { + -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); + transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); } + 64% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); } + 100% { + -webkit-transform: scale(1, 1) translateY(0); + transform: scale(1, 1) translateY(0); } } + +@-webkit-keyframes fa-fade { + 50% { + opacity: var(--fa-fade-opacity, 0.4); } } + +@keyframes fa-fade { + 50% { + opacity: var(--fa-fade-opacity, 0.4); } } + +@-webkit-keyframes fa-beat-fade { + 0%, 100% { + opacity: var(--fa-beat-fade-opacity, 0.4); + -webkit-transform: scale(1); + transform: scale(1); } + 50% { + opacity: 1; + -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125)); + transform: scale(var(--fa-beat-fade-scale, 1.125)); } } + +@keyframes fa-beat-fade { + 0%, 100% { + opacity: var(--fa-beat-fade-opacity, 0.4); + -webkit-transform: scale(1); + transform: scale(1); } + 50% { + opacity: 1; + -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125)); + transform: scale(var(--fa-beat-fade-scale, 1.125)); } } + +@-webkit-keyframes fa-flip { + 50% { + -webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); + transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); } } + +@keyframes fa-flip { + 50% { + -webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); + transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); } } + +@-webkit-keyframes fa-shake { + 0% { + -webkit-transform: rotate(-15deg); + transform: rotate(-15deg); } + 4% { + -webkit-transform: rotate(15deg); + transform: rotate(15deg); } + 8%, 24% { + -webkit-transform: rotate(-18deg); + transform: rotate(-18deg); } + 12%, 28% { + -webkit-transform: rotate(18deg); + transform: rotate(18deg); } + 16% { + -webkit-transform: rotate(-22deg); + transform: rotate(-22deg); } + 20% { + -webkit-transform: rotate(22deg); + transform: rotate(22deg); } + 32% { + -webkit-transform: rotate(-12deg); + transform: rotate(-12deg); } + 36% { + -webkit-transform: rotate(12deg); + transform: rotate(12deg); } + 40%, 100% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); } } + +@keyframes fa-shake { + 0% { + -webkit-transform: rotate(-15deg); + transform: rotate(-15deg); } + 4% { + -webkit-transform: rotate(15deg); + transform: rotate(15deg); } + 8%, 24% { + -webkit-transform: rotate(-18deg); + transform: rotate(-18deg); } + 12%, 28% { + -webkit-transform: rotate(18deg); + transform: rotate(18deg); } + 16% { + -webkit-transform: rotate(-22deg); + transform: rotate(-22deg); } + 20% { + -webkit-transform: rotate(22deg); + transform: rotate(22deg); } + 32% { + -webkit-transform: rotate(-12deg); + transform: rotate(-12deg); } + 36% { + -webkit-transform: rotate(12deg); + transform: rotate(12deg); } + 40%, 100% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); } } + +@-webkit-keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +@keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); } } + +.fa-rotate-90 { + -webkit-transform: rotate(90deg); + transform: rotate(90deg); } + +.fa-rotate-180 { + -webkit-transform: rotate(180deg); + transform: rotate(180deg); } + +.fa-rotate-270 { + -webkit-transform: rotate(270deg); + transform: rotate(270deg); } + +.fa-flip-horizontal { + -webkit-transform: scale(-1, 1); + transform: scale(-1, 1); } + +.fa-flip-vertical { + -webkit-transform: scale(1, -1); + transform: scale(1, -1); } + +.fa-flip-both, +.fa-flip-horizontal.fa-flip-vertical { + -webkit-transform: scale(-1, -1); + transform: scale(-1, -1); } + +.fa-rotate-by { + -webkit-transform: rotate(var(--fa-rotate-angle, 0)); + transform: rotate(var(--fa-rotate-angle, 0)); } + +.fa-stack { + display: inline-block; + height: 2em; + line-height: 2em; + position: relative; + vertical-align: middle; + width: 2.5em; } + +.fa-stack-1x, +.fa-stack-2x { + left: 0; + position: absolute; + text-align: center; + width: 100%; + z-index: var(--fa-stack-z-index, auto); } + +.fa-stack-1x { + line-height: inherit; } + +.fa-stack-2x { + font-size: 2em; } + +.fa-inverse { + color: var(--fa-inverse, #fff); } + +/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen +readers do not read off random characters that represent icons */ + +.fa-0::before { + content: "\30"; } + +.fa-1::before { + content: "\31"; } + +.fa-2::before { + content: "\32"; } + +.fa-3::before { + content: "\33"; } + +.fa-4::before { + content: "\34"; } + +.fa-5::before { + content: "\35"; } + +.fa-6::before { + content: "\36"; } + +.fa-7::before { + content: "\37"; } + +.fa-8::before { + content: "\38"; } + +.fa-9::before { + content: "\39"; } + +.fa-fill-drip::before { + content: "\f576"; } + +.fa-arrows-to-circle::before { + content: "\e4bd"; } + +.fa-circle-chevron-right::before { + content: "\f138"; } + +.fa-chevron-circle-right::before { + content: "\f138"; } + +.fa-at::before { + content: "\40"; } + +.fa-trash-can::before { + content: "\f2ed"; } + +.fa-trash-alt::before { + content: "\f2ed"; } + +.fa-text-height::before { + content: "\f034"; } + +.fa-user-xmark::before { + content: "\f235"; } + +.fa-user-times::before { + content: "\f235"; } + +.fa-stethoscope::before { + content: "\f0f1"; } + +.fa-message::before { + content: "\f27a"; } + +.fa-comment-alt::before { + content: "\f27a"; } + +.fa-info::before { + content: "\f129"; } + +.fa-down-left-and-up-right-to-center::before { + content: "\f422"; } + +.fa-compress-alt::before { + content: "\f422"; } + +.fa-explosion::before { + content: "\e4e9"; } + +.fa-file-lines::before { + content: "\f15c"; } + +.fa-file-alt::before { + content: "\f15c"; } + +.fa-file-text::before { + content: "\f15c"; } + +.fa-wave-square::before { + content: "\f83e"; } + +.fa-ring::before { + content: "\f70b"; } + +.fa-building-un::before { + content: "\e4d9"; } + +.fa-dice-three::before { + content: "\f527"; } + +.fa-calendar-days::before { + content: "\f073"; } + +.fa-calendar-alt::before { + content: "\f073"; } + +.fa-anchor-circle-check::before { + content: "\e4aa"; } + +.fa-building-circle-arrow-right::before { + content: "\e4d1"; } + +.fa-volleyball::before { + content: "\f45f"; } + +.fa-volleyball-ball::before { + content: "\f45f"; } + +.fa-arrows-up-to-line::before { + content: "\e4c2"; } + +.fa-sort-down::before { + content: "\f0dd"; } + +.fa-sort-desc::before { + content: "\f0dd"; } + +.fa-circle-minus::before { + content: "\f056"; } + +.fa-minus-circle::before { + content: "\f056"; } + +.fa-door-open::before { + content: "\f52b"; } + +.fa-right-from-bracket::before { + content: "\f2f5"; } + +.fa-sign-out-alt::before { + content: "\f2f5"; } + +.fa-atom::before { + content: "\f5d2"; } + +.fa-soap::before { + content: "\e06e"; } + +.fa-icons::before { + content: "\f86d"; } + +.fa-heart-music-camera-bolt::before { + content: "\f86d"; } + +.fa-microphone-lines-slash::before { + content: "\f539"; } + +.fa-microphone-alt-slash::before { + content: "\f539"; } + +.fa-bridge-circle-check::before { + content: "\e4c9"; } + +.fa-pump-medical::before { + content: "\e06a"; } + +.fa-fingerprint::before { + content: "\f577"; } + +.fa-hand-point-right::before { + content: "\f0a4"; } + +.fa-magnifying-glass-location::before { + content: "\f689"; } + +.fa-search-location::before { + content: "\f689"; } + +.fa-forward-step::before { + content: "\f051"; } + +.fa-step-forward::before { + content: "\f051"; } + +.fa-face-smile-beam::before { + content: "\f5b8"; } + +.fa-smile-beam::before { + content: "\f5b8"; } + +.fa-flag-checkered::before { + content: "\f11e"; } + +.fa-football::before { + content: "\f44e"; } + +.fa-football-ball::before { + content: "\f44e"; } + +.fa-school-circle-exclamation::before { + content: "\e56c"; } + +.fa-crop::before { + content: "\f125"; } + +.fa-angles-down::before { + content: "\f103"; } + +.fa-angle-double-down::before { + content: "\f103"; } + +.fa-users-rectangle::before { + content: "\e594"; } + +.fa-people-roof::before { + content: "\e537"; } + +.fa-people-line::before { + content: "\e534"; } + +.fa-beer-mug-empty::before { + content: "\f0fc"; } + +.fa-beer::before { + content: "\f0fc"; } + +.fa-diagram-predecessor::before { + content: "\e477"; } + +.fa-arrow-up-long::before { + content: "\f176"; } + +.fa-long-arrow-up::before { + content: "\f176"; } + +.fa-fire-flame-simple::before { + content: "\f46a"; } + +.fa-burn::before { + content: "\f46a"; } + +.fa-person::before { + content: "\f183"; } + +.fa-male::before { + content: "\f183"; } + +.fa-laptop::before { + content: "\f109"; } + +.fa-file-csv::before { + content: "\f6dd"; } + +.fa-menorah::before { + content: "\f676"; } + +.fa-truck-plane::before { + content: "\e58f"; } + +.fa-record-vinyl::before { + content: "\f8d9"; } + +.fa-face-grin-stars::before { + content: "\f587"; } + +.fa-grin-stars::before { + content: "\f587"; } + +.fa-bong::before { + content: "\f55c"; } + +.fa-spaghetti-monster-flying::before { + content: "\f67b"; } + +.fa-pastafarianism::before { + content: "\f67b"; } + +.fa-arrow-down-up-across-line::before { + content: "\e4af"; } + +.fa-spoon::before { + content: "\f2e5"; } + +.fa-utensil-spoon::before { + content: "\f2e5"; } + +.fa-jar-wheat::before { + content: "\e517"; } + +.fa-envelopes-bulk::before { + content: "\f674"; } + +.fa-mail-bulk::before { + content: "\f674"; } + +.fa-file-circle-exclamation::before { + content: "\e4eb"; } + +.fa-circle-h::before { + content: "\f47e"; } + +.fa-hospital-symbol::before { + content: "\f47e"; } + +.fa-pager::before { + content: "\f815"; } + +.fa-address-book::before { + content: "\f2b9"; } + +.fa-contact-book::before { + content: "\f2b9"; } + +.fa-strikethrough::before { + content: "\f0cc"; } + +.fa-k::before { + content: "\4b"; } + +.fa-landmark-flag::before { + content: "\e51c"; } + +.fa-pencil::before { + content: "\f303"; } + +.fa-pencil-alt::before { + content: "\f303"; } + +.fa-backward::before { + content: "\f04a"; } + +.fa-caret-right::before { + content: "\f0da"; } + +.fa-comments::before { + content: "\f086"; } + +.fa-paste::before { + content: "\f0ea"; } + +.fa-file-clipboard::before { + content: "\f0ea"; } + +.fa-code-pull-request::before { + content: "\e13c"; } + +.fa-clipboard-list::before { + content: "\f46d"; } + +.fa-truck-ramp-box::before { + content: "\f4de"; } + +.fa-truck-loading::before { + content: "\f4de"; } + +.fa-user-check::before { + content: "\f4fc"; } + +.fa-vial-virus::before { + content: "\e597"; } + +.fa-sheet-plastic::before { + content: "\e571"; } + +.fa-blog::before { + content: "\f781"; } + +.fa-user-ninja::before { + content: "\f504"; } + +.fa-person-arrow-up-from-line::before { + content: "\e539"; } + +.fa-scroll-torah::before { + content: "\f6a0"; } + +.fa-torah::before { + content: "\f6a0"; } + +.fa-broom-ball::before { + content: "\f458"; } + +.fa-quidditch::before { + content: "\f458"; } + +.fa-quidditch-broom-ball::before { + content: "\f458"; } + +.fa-toggle-off::before { + content: "\f204"; } + +.fa-box-archive::before { + content: "\f187"; } + +.fa-archive::before { + content: "\f187"; } + +.fa-person-drowning::before { + content: "\e545"; } + +.fa-arrow-down-9-1::before { + content: "\f886"; } + +.fa-sort-numeric-desc::before { + content: "\f886"; } + +.fa-sort-numeric-down-alt::before { + content: "\f886"; } + +.fa-face-grin-tongue-squint::before { + content: "\f58a"; } + +.fa-grin-tongue-squint::before { + content: "\f58a"; } + +.fa-spray-can::before { + content: "\f5bd"; } + +.fa-truck-monster::before { + content: "\f63b"; } + +.fa-w::before { + content: "\57"; } + +.fa-earth-africa::before { + content: "\f57c"; } + +.fa-globe-africa::before { + content: "\f57c"; } + +.fa-rainbow::before { + content: "\f75b"; } + +.fa-circle-notch::before { + content: "\f1ce"; } + +.fa-tablet-screen-button::before { + content: "\f3fa"; } + +.fa-tablet-alt::before { + content: "\f3fa"; } + +.fa-paw::before { + content: "\f1b0"; } + +.fa-cloud::before { + content: "\f0c2"; } + +.fa-trowel-bricks::before { + content: "\e58a"; } + +.fa-face-flushed::before { + content: "\f579"; } + +.fa-flushed::before { + content: "\f579"; } + +.fa-hospital-user::before { + content: "\f80d"; } + +.fa-tent-arrow-left-right::before { + content: "\e57f"; } + +.fa-gavel::before { + content: "\f0e3"; } + +.fa-legal::before { + content: "\f0e3"; } + +.fa-binoculars::before { + content: "\f1e5"; } + +.fa-microphone-slash::before { + content: "\f131"; } + +.fa-box-tissue::before { + content: "\e05b"; } + +.fa-motorcycle::before { + content: "\f21c"; } + +.fa-bell-concierge::before { + content: "\f562"; } + +.fa-concierge-bell::before { + content: "\f562"; } + +.fa-pen-ruler::before { + content: "\f5ae"; } + +.fa-pencil-ruler::before { + content: "\f5ae"; } + +.fa-people-arrows::before { + content: "\e068"; } + +.fa-people-arrows-left-right::before { + content: "\e068"; } + +.fa-mars-and-venus-burst::before { + content: "\e523"; } + +.fa-square-caret-right::before { + content: "\f152"; } + +.fa-caret-square-right::before { + content: "\f152"; } + +.fa-scissors::before { + content: "\f0c4"; } + +.fa-cut::before { + content: "\f0c4"; } + +.fa-sun-plant-wilt::before { + content: "\e57a"; } + +.fa-toilets-portable::before { + content: "\e584"; } + +.fa-hockey-puck::before { + content: "\f453"; } + +.fa-table::before { + content: "\f0ce"; } + +.fa-magnifying-glass-arrow-right::before { + content: "\e521"; } + +.fa-tachograph-digital::before { + content: "\f566"; } + +.fa-digital-tachograph::before { + content: "\f566"; } + +.fa-users-slash::before { + content: "\e073"; } + +.fa-clover::before { + content: "\e139"; } + +.fa-reply::before { + content: "\f3e5"; } + +.fa-mail-reply::before { + content: "\f3e5"; } + +.fa-star-and-crescent::before { + content: "\f699"; } + +.fa-house-fire::before { + content: "\e50c"; } + +.fa-square-minus::before { + content: "\f146"; } + +.fa-minus-square::before { + content: "\f146"; } + +.fa-helicopter::before { + content: "\f533"; } + +.fa-compass::before { + content: "\f14e"; } + +.fa-square-caret-down::before { + content: "\f150"; } + +.fa-caret-square-down::before { + content: "\f150"; } + +.fa-file-circle-question::before { + content: "\e4ef"; } + +.fa-laptop-code::before { + content: "\f5fc"; } + +.fa-swatchbook::before { + content: "\f5c3"; } + +.fa-prescription-bottle::before { + content: "\f485"; } + +.fa-bars::before { + content: "\f0c9"; } + +.fa-navicon::before { + content: "\f0c9"; } + +.fa-people-group::before { + content: "\e533"; } + +.fa-hourglass-end::before { + content: "\f253"; } + +.fa-hourglass-3::before { + content: "\f253"; } + +.fa-heart-crack::before { + content: "\f7a9"; } + +.fa-heart-broken::before { + content: "\f7a9"; } + +.fa-square-up-right::before { + content: "\f360"; } + +.fa-external-link-square-alt::before { + content: "\f360"; } + +.fa-face-kiss-beam::before { + content: "\f597"; } + +.fa-kiss-beam::before { + content: "\f597"; } + +.fa-film::before { + content: "\f008"; } + +.fa-ruler-horizontal::before { + content: "\f547"; } + +.fa-people-robbery::before { + content: "\e536"; } + +.fa-lightbulb::before { + content: "\f0eb"; } + +.fa-caret-left::before { + content: "\f0d9"; } + +.fa-circle-exclamation::before { + content: "\f06a"; } + +.fa-exclamation-circle::before { + content: "\f06a"; } + +.fa-school-circle-xmark::before { + content: "\e56d"; } + +.fa-arrow-right-from-bracket::before { + content: "\f08b"; } + +.fa-sign-out::before { + content: "\f08b"; } + +.fa-circle-chevron-down::before { + content: "\f13a"; } + +.fa-chevron-circle-down::before { + content: "\f13a"; } + +.fa-unlock-keyhole::before { + content: "\f13e"; } + +.fa-unlock-alt::before { + content: "\f13e"; } + +.fa-cloud-showers-heavy::before { + content: "\f740"; } + +.fa-headphones-simple::before { + content: "\f58f"; } + +.fa-headphones-alt::before { + content: "\f58f"; } + +.fa-sitemap::before { + content: "\f0e8"; } + +.fa-circle-dollar-to-slot::before { + content: "\f4b9"; } + +.fa-donate::before { + content: "\f4b9"; } + +.fa-memory::before { + content: "\f538"; } + +.fa-road-spikes::before { + content: "\e568"; } + +.fa-fire-burner::before { + content: "\e4f1"; } + +.fa-flag::before { + content: "\f024"; } + +.fa-hanukiah::before { + content: "\f6e6"; } + +.fa-feather::before { + content: "\f52d"; } + +.fa-volume-low::before { + content: "\f027"; } + +.fa-volume-down::before { + content: "\f027"; } + +.fa-comment-slash::before { + content: "\f4b3"; } + +.fa-cloud-sun-rain::before { + content: "\f743"; } + +.fa-compress::before { + content: "\f066"; } + +.fa-wheat-awn::before { + content: "\e2cd"; } + +.fa-wheat-alt::before { + content: "\e2cd"; } + +.fa-ankh::before { + content: "\f644"; } + +.fa-hands-holding-child::before { + content: "\e4fa"; } + +.fa-asterisk::before { + content: "\2a"; } + +.fa-square-check::before { + content: "\f14a"; } + +.fa-check-square::before { + content: "\f14a"; } + +.fa-peseta-sign::before { + content: "\e221"; } + +.fa-heading::before { + content: "\f1dc"; } + +.fa-header::before { + content: "\f1dc"; } + +.fa-ghost::before { + content: "\f6e2"; } + +.fa-list::before { + content: "\f03a"; } + +.fa-list-squares::before { + content: "\f03a"; } + +.fa-square-phone-flip::before { + content: "\f87b"; } + +.fa-phone-square-alt::before { + content: "\f87b"; } + +.fa-cart-plus::before { + content: "\f217"; } + +.fa-gamepad::before { + content: "\f11b"; } + +.fa-circle-dot::before { + content: "\f192"; } + +.fa-dot-circle::before { + content: "\f192"; } + +.fa-face-dizzy::before { + content: "\f567"; } + +.fa-dizzy::before { + content: "\f567"; } + +.fa-egg::before { + content: "\f7fb"; } + +.fa-house-medical-circle-xmark::before { + content: "\e513"; } + +.fa-campground::before { + content: "\f6bb"; } + +.fa-folder-plus::before { + content: "\f65e"; } + +.fa-futbol::before { + content: "\f1e3"; } + +.fa-futbol-ball::before { + content: "\f1e3"; } + +.fa-soccer-ball::before { + content: "\f1e3"; } + +.fa-paintbrush::before { + content: "\f1fc"; } + +.fa-paint-brush::before { + content: "\f1fc"; } + +.fa-lock::before { + content: "\f023"; } + +.fa-gas-pump::before { + content: "\f52f"; } + +.fa-hot-tub-person::before { + content: "\f593"; } + +.fa-hot-tub::before { + content: "\f593"; } + +.fa-map-location::before { + content: "\f59f"; } + +.fa-map-marked::before { + content: "\f59f"; } + +.fa-house-flood-water::before { + content: "\e50e"; } + +.fa-tree::before { + content: "\f1bb"; } + +.fa-bridge-lock::before { + content: "\e4cc"; } + +.fa-sack-dollar::before { + content: "\f81d"; } + +.fa-pen-to-square::before { + content: "\f044"; } + +.fa-edit::before { + content: "\f044"; } + +.fa-car-side::before { + content: "\f5e4"; } + +.fa-share-nodes::before { + content: "\f1e0"; } + +.fa-share-alt::before { + content: "\f1e0"; } + +.fa-heart-circle-minus::before { + content: "\e4ff"; } + +.fa-hourglass-half::before { + content: "\f252"; } + +.fa-hourglass-2::before { + content: "\f252"; } + +.fa-microscope::before { + content: "\f610"; } + +.fa-sink::before { + content: "\e06d"; } + +.fa-bag-shopping::before { + content: "\f290"; } + +.fa-shopping-bag::before { + content: "\f290"; } + +.fa-arrow-down-z-a::before { + content: "\f881"; } + +.fa-sort-alpha-desc::before { + content: "\f881"; } + +.fa-sort-alpha-down-alt::before { + content: "\f881"; } + +.fa-mitten::before { + content: "\f7b5"; } + +.fa-person-rays::before { + content: "\e54d"; } + +.fa-users::before { + content: "\f0c0"; } + +.fa-eye-slash::before { + content: "\f070"; } + +.fa-flask-vial::before { + content: "\e4f3"; } + +.fa-hand::before { + content: "\f256"; } + +.fa-hand-paper::before { + content: "\f256"; } + +.fa-om::before { + content: "\f679"; } + +.fa-worm::before { + content: "\e599"; } + +.fa-house-circle-xmark::before { + content: "\e50b"; } + +.fa-plug::before { + content: "\f1e6"; } + +.fa-chevron-up::before { + content: "\f077"; } + +.fa-hand-spock::before { + content: "\f259"; } + +.fa-stopwatch::before { + content: "\f2f2"; } + +.fa-face-kiss::before { + content: "\f596"; } + +.fa-kiss::before { + content: "\f596"; } + +.fa-bridge-circle-xmark::before { + content: "\e4cb"; } + +.fa-face-grin-tongue::before { + content: "\f589"; } + +.fa-grin-tongue::before { + content: "\f589"; } + +.fa-chess-bishop::before { + content: "\f43a"; } + +.fa-face-grin-wink::before { + content: "\f58c"; } + +.fa-grin-wink::before { + content: "\f58c"; } + +.fa-ear-deaf::before { + content: "\f2a4"; } + +.fa-deaf::before { + content: "\f2a4"; } + +.fa-deafness::before { + content: "\f2a4"; } + +.fa-hard-of-hearing::before { + content: "\f2a4"; } + +.fa-road-circle-check::before { + content: "\e564"; } + +.fa-dice-five::before { + content: "\f523"; } + +.fa-square-rss::before { + content: "\f143"; } + +.fa-rss-square::before { + content: "\f143"; } + +.fa-land-mine-on::before { + content: "\e51b"; } + +.fa-i-cursor::before { + content: "\f246"; } + +.fa-stamp::before { + content: "\f5bf"; } + +.fa-stairs::before { + content: "\e289"; } + +.fa-i::before { + content: "\49"; } + +.fa-hryvnia-sign::before { + content: "\f6f2"; } + +.fa-hryvnia::before { + content: "\f6f2"; } + +.fa-pills::before { + content: "\f484"; } + +.fa-face-grin-wide::before { + content: "\f581"; } + +.fa-grin-alt::before { + content: "\f581"; } + +.fa-tooth::before { + content: "\f5c9"; } + +.fa-v::before { + content: "\56"; } + +.fa-bangladeshi-taka-sign::before { + content: "\e2e6"; } + +.fa-bicycle::before { + content: "\f206"; } + +.fa-staff-snake::before { + content: "\e579"; } + +.fa-rod-asclepius::before { + content: "\e579"; } + +.fa-rod-snake::before { + content: "\e579"; } + +.fa-staff-aesculapius::before { + content: "\e579"; } + +.fa-head-side-cough-slash::before { + content: "\e062"; } + +.fa-truck-medical::before { + content: "\f0f9"; } + +.fa-ambulance::before { + content: "\f0f9"; } + +.fa-wheat-awn-circle-exclamation::before { + content: "\e598"; } + +.fa-snowman::before { + content: "\f7d0"; } + +.fa-mortar-pestle::before { + content: "\f5a7"; } + +.fa-road-barrier::before { + content: "\e562"; } + +.fa-school::before { + content: "\f549"; } + +.fa-igloo::before { + content: "\f7ae"; } + +.fa-joint::before { + content: "\f595"; } + +.fa-angle-right::before { + content: "\f105"; } + +.fa-horse::before { + content: "\f6f0"; } + +.fa-q::before { + content: "\51"; } + +.fa-g::before { + content: "\47"; } + +.fa-notes-medical::before { + content: "\f481"; } + +.fa-temperature-half::before { + content: "\f2c9"; } + +.fa-temperature-2::before { + content: "\f2c9"; } + +.fa-thermometer-2::before { + content: "\f2c9"; } + +.fa-thermometer-half::before { + content: "\f2c9"; } + +.fa-dong-sign::before { + content: "\e169"; } + +.fa-capsules::before { + content: "\f46b"; } + +.fa-poo-storm::before { + content: "\f75a"; } + +.fa-poo-bolt::before { + content: "\f75a"; } + +.fa-face-frown-open::before { + content: "\f57a"; } + +.fa-frown-open::before { + content: "\f57a"; } + +.fa-hand-point-up::before { + content: "\f0a6"; } + +.fa-money-bill::before { + content: "\f0d6"; } + +.fa-bookmark::before { + content: "\f02e"; } + +.fa-align-justify::before { + content: "\f039"; } + +.fa-umbrella-beach::before { + content: "\f5ca"; } + +.fa-helmet-un::before { + content: "\e503"; } + +.fa-bullseye::before { + content: "\f140"; } + +.fa-bacon::before { + content: "\f7e5"; } + +.fa-hand-point-down::before { + content: "\f0a7"; } + +.fa-arrow-up-from-bracket::before { + content: "\e09a"; } + +.fa-folder::before { + content: "\f07b"; } + +.fa-folder-blank::before { + content: "\f07b"; } + +.fa-file-waveform::before { + content: "\f478"; } + +.fa-file-medical-alt::before { + content: "\f478"; } + +.fa-radiation::before { + content: "\f7b9"; } + +.fa-chart-simple::before { + content: "\e473"; } + +.fa-mars-stroke::before { + content: "\f229"; } + +.fa-vial::before { + content: "\f492"; } + +.fa-gauge::before { + content: "\f624"; } + +.fa-dashboard::before { + content: "\f624"; } + +.fa-gauge-med::before { + content: "\f624"; } + +.fa-tachometer-alt-average::before { + content: "\f624"; } + +.fa-wand-magic-sparkles::before { + content: "\e2ca"; } + +.fa-magic-wand-sparkles::before { + content: "\e2ca"; } + +.fa-e::before { + content: "\45"; } + +.fa-pen-clip::before { + content: "\f305"; } + +.fa-pen-alt::before { + content: "\f305"; } + +.fa-bridge-circle-exclamation::before { + content: "\e4ca"; } + +.fa-user::before { + content: "\f007"; } + +.fa-school-circle-check::before { + content: "\e56b"; } + +.fa-dumpster::before { + content: "\f793"; } + +.fa-van-shuttle::before { + content: "\f5b6"; } + +.fa-shuttle-van::before { + content: "\f5b6"; } + +.fa-building-user::before { + content: "\e4da"; } + +.fa-square-caret-left::before { + content: "\f191"; } + +.fa-caret-square-left::before { + content: "\f191"; } + +.fa-highlighter::before { + content: "\f591"; } + +.fa-key::before { + content: "\f084"; } + +.fa-bullhorn::before { + content: "\f0a1"; } + +.fa-globe::before { + content: "\f0ac"; } + +.fa-synagogue::before { + content: "\f69b"; } + +.fa-person-half-dress::before { + content: "\e548"; } + +.fa-road-bridge::before { + content: "\e563"; } + +.fa-location-arrow::before { + content: "\f124"; } + +.fa-c::before { + content: "\43"; } + +.fa-tablet-button::before { + content: "\f10a"; } + +.fa-building-lock::before { + content: "\e4d6"; } + +.fa-pizza-slice::before { + content: "\f818"; } + +.fa-money-bill-wave::before { + content: "\f53a"; } + +.fa-chart-area::before { + content: "\f1fe"; } + +.fa-area-chart::before { + content: "\f1fe"; } + +.fa-house-flag::before { + content: "\e50d"; } + +.fa-person-circle-minus::before { + content: "\e540"; } + +.fa-ban::before { + content: "\f05e"; } + +.fa-cancel::before { + content: "\f05e"; } + +.fa-camera-rotate::before { + content: "\e0d8"; } + +.fa-spray-can-sparkles::before { + content: "\f5d0"; } + +.fa-air-freshener::before { + content: "\f5d0"; } + +.fa-star::before { + content: "\f005"; } + +.fa-repeat::before { + content: "\f363"; } + +.fa-cross::before { + content: "\f654"; } + +.fa-box::before { + content: "\f466"; } + +.fa-venus-mars::before { + content: "\f228"; } + +.fa-arrow-pointer::before { + content: "\f245"; } + +.fa-mouse-pointer::before { + content: "\f245"; } + +.fa-maximize::before { + content: "\f31e"; } + +.fa-expand-arrows-alt::before { + content: "\f31e"; } + +.fa-charging-station::before { + content: "\f5e7"; } + +.fa-shapes::before { + content: "\f61f"; } + +.fa-triangle-circle-square::before { + content: "\f61f"; } + +.fa-shuffle::before { + content: "\f074"; } + +.fa-random::before { + content: "\f074"; } + +.fa-person-running::before { + content: "\f70c"; } + +.fa-running::before { + content: "\f70c"; } + +.fa-mobile-retro::before { + content: "\e527"; } + +.fa-grip-lines-vertical::before { + content: "\f7a5"; } + +.fa-spider::before { + content: "\f717"; } + +.fa-hands-bound::before { + content: "\e4f9"; } + +.fa-file-invoice-dollar::before { + content: "\f571"; } + +.fa-plane-circle-exclamation::before { + content: "\e556"; } + +.fa-x-ray::before { + content: "\f497"; } + +.fa-spell-check::before { + content: "\f891"; } + +.fa-slash::before { + content: "\f715"; } + +.fa-computer-mouse::before { + content: "\f8cc"; } + +.fa-mouse::before { + content: "\f8cc"; } + +.fa-arrow-right-to-bracket::before { + content: "\f090"; } + +.fa-sign-in::before { + content: "\f090"; } + +.fa-shop-slash::before { + content: "\e070"; } + +.fa-store-alt-slash::before { + content: "\e070"; } + +.fa-server::before { + content: "\f233"; } + +.fa-virus-covid-slash::before { + content: "\e4a9"; } + +.fa-shop-lock::before { + content: "\e4a5"; } + +.fa-hourglass-start::before { + content: "\f251"; } + +.fa-hourglass-1::before { + content: "\f251"; } + +.fa-blender-phone::before { + content: "\f6b6"; } + +.fa-building-wheat::before { + content: "\e4db"; } + +.fa-person-breastfeeding::before { + content: "\e53a"; } + +.fa-right-to-bracket::before { + content: "\f2f6"; } + +.fa-sign-in-alt::before { + content: "\f2f6"; } + +.fa-venus::before { + content: "\f221"; } + +.fa-passport::before { + content: "\f5ab"; } + +.fa-heart-pulse::before { + content: "\f21e"; } + +.fa-heartbeat::before { + content: "\f21e"; } + +.fa-people-carry-box::before { + content: "\f4ce"; } + +.fa-people-carry::before { + content: "\f4ce"; } + +.fa-temperature-high::before { + content: "\f769"; } + +.fa-microchip::before { + content: "\f2db"; } + +.fa-crown::before { + content: "\f521"; } + +.fa-weight-hanging::before { + content: "\f5cd"; } + +.fa-xmarks-lines::before { + content: "\e59a"; } + +.fa-file-prescription::before { + content: "\f572"; } + +.fa-weight-scale::before { + content: "\f496"; } + +.fa-weight::before { + content: "\f496"; } + +.fa-user-group::before { + content: "\f500"; } + +.fa-user-friends::before { + content: "\f500"; } + +.fa-arrow-up-a-z::before { + content: "\f15e"; } + +.fa-sort-alpha-up::before { + content: "\f15e"; } + +.fa-chess-knight::before { + content: "\f441"; } + +.fa-face-laugh-squint::before { + content: "\f59b"; } + +.fa-laugh-squint::before { + content: "\f59b"; } + +.fa-wheelchair::before { + content: "\f193"; } + +.fa-circle-arrow-up::before { + content: "\f0aa"; } + +.fa-arrow-circle-up::before { + content: "\f0aa"; } + +.fa-toggle-on::before { + content: "\f205"; } + +.fa-person-walking::before { + content: "\f554"; } + +.fa-walking::before { + content: "\f554"; } + +.fa-l::before { + content: "\4c"; } + +.fa-fire::before { + content: "\f06d"; } + +.fa-bed-pulse::before { + content: "\f487"; } + +.fa-procedures::before { + content: "\f487"; } + +.fa-shuttle-space::before { + content: "\f197"; } + +.fa-space-shuttle::before { + content: "\f197"; } + +.fa-face-laugh::before { + content: "\f599"; } + +.fa-laugh::before { + content: "\f599"; } + +.fa-folder-open::before { + content: "\f07c"; } + +.fa-heart-circle-plus::before { + content: "\e500"; } + +.fa-code-fork::before { + content: "\e13b"; } + +.fa-city::before { + content: "\f64f"; } + +.fa-microphone-lines::before { + content: "\f3c9"; } + +.fa-microphone-alt::before { + content: "\f3c9"; } + +.fa-pepper-hot::before { + content: "\f816"; } + +.fa-unlock::before { + content: "\f09c"; } + +.fa-colon-sign::before { + content: "\e140"; } + +.fa-headset::before { + content: "\f590"; } + +.fa-store-slash::before { + content: "\e071"; } + +.fa-road-circle-xmark::before { + content: "\e566"; } + +.fa-user-minus::before { + content: "\f503"; } + +.fa-mars-stroke-up::before { + content: "\f22a"; } + +.fa-mars-stroke-v::before { + content: "\f22a"; } + +.fa-champagne-glasses::before { + content: "\f79f"; } + +.fa-glass-cheers::before { + content: "\f79f"; } + +.fa-clipboard::before { + content: "\f328"; } + +.fa-house-circle-exclamation::before { + content: "\e50a"; } + +.fa-file-arrow-up::before { + content: "\f574"; } + +.fa-file-upload::before { + content: "\f574"; } + +.fa-wifi::before { + content: "\f1eb"; } + +.fa-wifi-3::before { + content: "\f1eb"; } + +.fa-wifi-strong::before { + content: "\f1eb"; } + +.fa-bath::before { + content: "\f2cd"; } + +.fa-bathtub::before { + content: "\f2cd"; } + +.fa-underline::before { + content: "\f0cd"; } + +.fa-user-pen::before { + content: "\f4ff"; } + +.fa-user-edit::before { + content: "\f4ff"; } + +.fa-signature::before { + content: "\f5b7"; } + +.fa-stroopwafel::before { + content: "\f551"; } + +.fa-bold::before { + content: "\f032"; } + +.fa-anchor-lock::before { + content: "\e4ad"; } + +.fa-building-ngo::before { + content: "\e4d7"; } + +.fa-manat-sign::before { + content: "\e1d5"; } + +.fa-not-equal::before { + content: "\f53e"; } + +.fa-border-top-left::before { + content: "\f853"; } + +.fa-border-style::before { + content: "\f853"; } + +.fa-map-location-dot::before { + content: "\f5a0"; } + +.fa-map-marked-alt::before { + content: "\f5a0"; } + +.fa-jedi::before { + content: "\f669"; } + +.fa-square-poll-vertical::before { + content: "\f681"; } + +.fa-poll::before { + content: "\f681"; } + +.fa-mug-hot::before { + content: "\f7b6"; } + +.fa-car-battery::before { + content: "\f5df"; } + +.fa-battery-car::before { + content: "\f5df"; } + +.fa-gift::before { + content: "\f06b"; } + +.fa-dice-two::before { + content: "\f528"; } + +.fa-chess-queen::before { + content: "\f445"; } + +.fa-glasses::before { + content: "\f530"; } + +.fa-chess-board::before { + content: "\f43c"; } + +.fa-building-circle-check::before { + content: "\e4d2"; } + +.fa-person-chalkboard::before { + content: "\e53d"; } + +.fa-mars-stroke-right::before { + content: "\f22b"; } + +.fa-mars-stroke-h::before { + content: "\f22b"; } + +.fa-hand-back-fist::before { + content: "\f255"; } + +.fa-hand-rock::before { + content: "\f255"; } + +.fa-square-caret-up::before { + content: "\f151"; } + +.fa-caret-square-up::before { + content: "\f151"; } + +.fa-cloud-showers-water::before { + content: "\e4e4"; } + +.fa-chart-bar::before { + content: "\f080"; } + +.fa-bar-chart::before { + content: "\f080"; } + +.fa-hands-bubbles::before { + content: "\e05e"; } + +.fa-hands-wash::before { + content: "\e05e"; } + +.fa-less-than-equal::before { + content: "\f537"; } + +.fa-train::before { + content: "\f238"; } + +.fa-eye-low-vision::before { + content: "\f2a8"; } + +.fa-low-vision::before { + content: "\f2a8"; } + +.fa-crow::before { + content: "\f520"; } + +.fa-sailboat::before { + content: "\e445"; } + +.fa-window-restore::before { + content: "\f2d2"; } + +.fa-square-plus::before { + content: "\f0fe"; } + +.fa-plus-square::before { + content: "\f0fe"; } + +.fa-torii-gate::before { + content: "\f6a1"; } + +.fa-frog::before { + content: "\f52e"; } + +.fa-bucket::before { + content: "\e4cf"; } + +.fa-image::before { + content: "\f03e"; } + +.fa-microphone::before { + content: "\f130"; } + +.fa-cow::before { + content: "\f6c8"; } + +.fa-caret-up::before { + content: "\f0d8"; } + +.fa-screwdriver::before { + content: "\f54a"; } + +.fa-folder-closed::before { + content: "\e185"; } + +.fa-house-tsunami::before { + content: "\e515"; } + +.fa-square-nfi::before { + content: "\e576"; } + +.fa-arrow-up-from-ground-water::before { + content: "\e4b5"; } + +.fa-martini-glass::before { + content: "\f57b"; } + +.fa-glass-martini-alt::before { + content: "\f57b"; } + +.fa-rotate-left::before { + content: "\f2ea"; } + +.fa-rotate-back::before { + content: "\f2ea"; } + +.fa-rotate-backward::before { + content: "\f2ea"; } + +.fa-undo-alt::before { + content: "\f2ea"; } + +.fa-table-columns::before { + content: "\f0db"; } + +.fa-columns::before { + content: "\f0db"; } + +.fa-lemon::before { + content: "\f094"; } + +.fa-head-side-mask::before { + content: "\e063"; } + +.fa-handshake::before { + content: "\f2b5"; } + +.fa-gem::before { + content: "\f3a5"; } + +.fa-dolly::before { + content: "\f472"; } + +.fa-dolly-box::before { + content: "\f472"; } + +.fa-smoking::before { + content: "\f48d"; } + +.fa-minimize::before { + content: "\f78c"; } + +.fa-compress-arrows-alt::before { + content: "\f78c"; } + +.fa-monument::before { + content: "\f5a6"; } + +.fa-snowplow::before { + content: "\f7d2"; } + +.fa-angles-right::before { + content: "\f101"; } + +.fa-angle-double-right::before { + content: "\f101"; } + +.fa-cannabis::before { + content: "\f55f"; } + +.fa-circle-play::before { + content: "\f144"; } + +.fa-play-circle::before { + content: "\f144"; } + +.fa-tablets::before { + content: "\f490"; } + +.fa-ethernet::before { + content: "\f796"; } + +.fa-euro-sign::before { + content: "\f153"; } + +.fa-eur::before { + content: "\f153"; } + +.fa-euro::before { + content: "\f153"; } + +.fa-chair::before { + content: "\f6c0"; } + +.fa-circle-check::before { + content: "\f058"; } + +.fa-check-circle::before { + content: "\f058"; } + +.fa-circle-stop::before { + content: "\f28d"; } + +.fa-stop-circle::before { + content: "\f28d"; } + +.fa-compass-drafting::before { + content: "\f568"; } + +.fa-drafting-compass::before { + content: "\f568"; } + +.fa-plate-wheat::before { + content: "\e55a"; } + +.fa-icicles::before { + content: "\f7ad"; } + +.fa-person-shelter::before { + content: "\e54f"; } + +.fa-neuter::before { + content: "\f22c"; } + +.fa-id-badge::before { + content: "\f2c1"; } + +.fa-marker::before { + content: "\f5a1"; } + +.fa-face-laugh-beam::before { + content: "\f59a"; } + +.fa-laugh-beam::before { + content: "\f59a"; } + +.fa-helicopter-symbol::before { + content: "\e502"; } + +.fa-universal-access::before { + content: "\f29a"; } + +.fa-circle-chevron-up::before { + content: "\f139"; } + +.fa-chevron-circle-up::before { + content: "\f139"; } + +.fa-lari-sign::before { + content: "\e1c8"; } + +.fa-volcano::before { + content: "\f770"; } + +.fa-person-walking-dashed-line-arrow-right::before { + content: "\e553"; } + +.fa-sterling-sign::before { + content: "\f154"; } + +.fa-gbp::before { + content: "\f154"; } + +.fa-pound-sign::before { + content: "\f154"; } + +.fa-viruses::before { + content: "\e076"; } + +.fa-square-person-confined::before { + content: "\e577"; } + +.fa-user-tie::before { + content: "\f508"; } + +.fa-arrow-down-long::before { + content: "\f175"; } + +.fa-long-arrow-down::before { + content: "\f175"; } + +.fa-tent-arrow-down-to-line::before { + content: "\e57e"; } + +.fa-certificate::before { + content: "\f0a3"; } + +.fa-reply-all::before { + content: "\f122"; } + +.fa-mail-reply-all::before { + content: "\f122"; } + +.fa-suitcase::before { + content: "\f0f2"; } + +.fa-person-skating::before { + content: "\f7c5"; } + +.fa-skating::before { + content: "\f7c5"; } + +.fa-filter-circle-dollar::before { + content: "\f662"; } + +.fa-funnel-dollar::before { + content: "\f662"; } + +.fa-camera-retro::before { + content: "\f083"; } + +.fa-circle-arrow-down::before { + content: "\f0ab"; } + +.fa-arrow-circle-down::before { + content: "\f0ab"; } + +.fa-file-import::before { + content: "\f56f"; } + +.fa-arrow-right-to-file::before { + content: "\f56f"; } + +.fa-square-arrow-up-right::before { + content: "\f14c"; } + +.fa-external-link-square::before { + content: "\f14c"; } + +.fa-box-open::before { + content: "\f49e"; } + +.fa-scroll::before { + content: "\f70e"; } + +.fa-spa::before { + content: "\f5bb"; } + +.fa-location-pin-lock::before { + content: "\e51f"; } + +.fa-pause::before { + content: "\f04c"; } + +.fa-hill-avalanche::before { + content: "\e507"; } + +.fa-temperature-empty::before { + content: "\f2cb"; } + +.fa-temperature-0::before { + content: "\f2cb"; } + +.fa-thermometer-0::before { + content: "\f2cb"; } + +.fa-thermometer-empty::before { + content: "\f2cb"; } + +.fa-bomb::before { + content: "\f1e2"; } + +.fa-registered::before { + content: "\f25d"; } + +.fa-address-card::before { + content: "\f2bb"; } + +.fa-contact-card::before { + content: "\f2bb"; } + +.fa-vcard::before { + content: "\f2bb"; } + +.fa-scale-unbalanced-flip::before { + content: "\f516"; } + +.fa-balance-scale-right::before { + content: "\f516"; } + +.fa-subscript::before { + content: "\f12c"; } + +.fa-diamond-turn-right::before { + content: "\f5eb"; } + +.fa-directions::before { + content: "\f5eb"; } + +.fa-burst::before { + content: "\e4dc"; } + +.fa-house-laptop::before { + content: "\e066"; } + +.fa-laptop-house::before { + content: "\e066"; } + +.fa-face-tired::before { + content: "\f5c8"; } + +.fa-tired::before { + content: "\f5c8"; } + +.fa-money-bills::before { + content: "\e1f3"; } + +.fa-smog::before { + content: "\f75f"; } + +.fa-crutch::before { + content: "\f7f7"; } + +.fa-cloud-arrow-up::before { + content: "\f0ee"; } + +.fa-cloud-upload::before { + content: "\f0ee"; } + +.fa-cloud-upload-alt::before { + content: "\f0ee"; } + +.fa-palette::before { + content: "\f53f"; } + +.fa-arrows-turn-right::before { + content: "\e4c0"; } + +.fa-vest::before { + content: "\e085"; } + +.fa-ferry::before { + content: "\e4ea"; } + +.fa-arrows-down-to-people::before { + content: "\e4b9"; } + +.fa-seedling::before { + content: "\f4d8"; } + +.fa-sprout::before { + content: "\f4d8"; } + +.fa-left-right::before { + content: "\f337"; } + +.fa-arrows-alt-h::before { + content: "\f337"; } + +.fa-boxes-packing::before { + content: "\e4c7"; } + +.fa-circle-arrow-left::before { + content: "\f0a8"; } + +.fa-arrow-circle-left::before { + content: "\f0a8"; } + +.fa-group-arrows-rotate::before { + content: "\e4f6"; } + +.fa-bowl-food::before { + content: "\e4c6"; } + +.fa-candy-cane::before { + content: "\f786"; } + +.fa-arrow-down-wide-short::before { + content: "\f160"; } + +.fa-sort-amount-asc::before { + content: "\f160"; } + +.fa-sort-amount-down::before { + content: "\f160"; } + +.fa-cloud-bolt::before { + content: "\f76c"; } + +.fa-thunderstorm::before { + content: "\f76c"; } + +.fa-text-slash::before { + content: "\f87d"; } + +.fa-remove-format::before { + content: "\f87d"; } + +.fa-face-smile-wink::before { + content: "\f4da"; } + +.fa-smile-wink::before { + content: "\f4da"; } + +.fa-file-word::before { + content: "\f1c2"; } + +.fa-file-powerpoint::before { + content: "\f1c4"; } + +.fa-arrows-left-right::before { + content: "\f07e"; } + +.fa-arrows-h::before { + content: "\f07e"; } + +.fa-house-lock::before { + content: "\e510"; } + +.fa-cloud-arrow-down::before { + content: "\f0ed"; } + +.fa-cloud-download::before { + content: "\f0ed"; } + +.fa-cloud-download-alt::before { + content: "\f0ed"; } + +.fa-children::before { + content: "\e4e1"; } + +.fa-chalkboard::before { + content: "\f51b"; } + +.fa-blackboard::before { + content: "\f51b"; } + +.fa-user-large-slash::before { + content: "\f4fa"; } + +.fa-user-alt-slash::before { + content: "\f4fa"; } + +.fa-envelope-open::before { + content: "\f2b6"; } + +.fa-handshake-simple-slash::before { + content: "\e05f"; } + +.fa-handshake-alt-slash::before { + content: "\e05f"; } + +.fa-mattress-pillow::before { + content: "\e525"; } + +.fa-guarani-sign::before { + content: "\e19a"; } + +.fa-arrows-rotate::before { + content: "\f021"; } + +.fa-refresh::before { + content: "\f021"; } + +.fa-sync::before { + content: "\f021"; } + +.fa-fire-extinguisher::before { + content: "\f134"; } + +.fa-cruzeiro-sign::before { + content: "\e152"; } + +.fa-greater-than-equal::before { + content: "\f532"; } + +.fa-shield-halved::before { + content: "\f3ed"; } + +.fa-shield-alt::before { + content: "\f3ed"; } + +.fa-book-atlas::before { + content: "\f558"; } + +.fa-atlas::before { + content: "\f558"; } + +.fa-virus::before { + content: "\e074"; } + +.fa-envelope-circle-check::before { + content: "\e4e8"; } + +.fa-layer-group::before { + content: "\f5fd"; } + +.fa-arrows-to-dot::before { + content: "\e4be"; } + +.fa-archway::before { + content: "\f557"; } + +.fa-heart-circle-check::before { + content: "\e4fd"; } + +.fa-house-chimney-crack::before { + content: "\f6f1"; } + +.fa-house-damage::before { + content: "\f6f1"; } + +.fa-file-zipper::before { + content: "\f1c6"; } + +.fa-file-archive::before { + content: "\f1c6"; } + +.fa-square::before { + content: "\f0c8"; } + +.fa-martini-glass-empty::before { + content: "\f000"; } + +.fa-glass-martini::before { + content: "\f000"; } + +.fa-couch::before { + content: "\f4b8"; } + +.fa-cedi-sign::before { + content: "\e0df"; } + +.fa-italic::before { + content: "\f033"; } + +.fa-table-cells-column-lock::before { + content: "\e678"; } + +.fa-church::before { + content: "\f51d"; } + +.fa-comments-dollar::before { + content: "\f653"; } + +.fa-democrat::before { + content: "\f747"; } + +.fa-z::before { + content: "\5a"; } + +.fa-person-skiing::before { + content: "\f7c9"; } + +.fa-skiing::before { + content: "\f7c9"; } + +.fa-road-lock::before { + content: "\e567"; } + +.fa-a::before { + content: "\41"; } + +.fa-temperature-arrow-down::before { + content: "\e03f"; } + +.fa-temperature-down::before { + content: "\e03f"; } + +.fa-feather-pointed::before { + content: "\f56b"; } + +.fa-feather-alt::before { + content: "\f56b"; } + +.fa-p::before { + content: "\50"; } + +.fa-snowflake::before { + content: "\f2dc"; } + +.fa-newspaper::before { + content: "\f1ea"; } + +.fa-rectangle-ad::before { + content: "\f641"; } + +.fa-ad::before { + content: "\f641"; } + +.fa-circle-arrow-right::before { + content: "\f0a9"; } + +.fa-arrow-circle-right::before { + content: "\f0a9"; } + +.fa-filter-circle-xmark::before { + content: "\e17b"; } + +.fa-locust::before { + content: "\e520"; } + +.fa-sort::before { + content: "\f0dc"; } + +.fa-unsorted::before { + content: "\f0dc"; } + +.fa-list-ol::before { + content: "\f0cb"; } + +.fa-list-1-2::before { + content: "\f0cb"; } + +.fa-list-numeric::before { + content: "\f0cb"; } + +.fa-person-dress-burst::before { + content: "\e544"; } + +.fa-money-check-dollar::before { + content: "\f53d"; } + +.fa-money-check-alt::before { + content: "\f53d"; } + +.fa-vector-square::before { + content: "\f5cb"; } + +.fa-bread-slice::before { + content: "\f7ec"; } + +.fa-language::before { + content: "\f1ab"; } + +.fa-face-kiss-wink-heart::before { + content: "\f598"; } + +.fa-kiss-wink-heart::before { + content: "\f598"; } + +.fa-filter::before { + content: "\f0b0"; } + +.fa-question::before { + content: "\3f"; } + +.fa-file-signature::before { + content: "\f573"; } + +.fa-up-down-left-right::before { + content: "\f0b2"; } + +.fa-arrows-alt::before { + content: "\f0b2"; } + +.fa-house-chimney-user::before { + content: "\e065"; } + +.fa-hand-holding-heart::before { + content: "\f4be"; } + +.fa-puzzle-piece::before { + content: "\f12e"; } + +.fa-money-check::before { + content: "\f53c"; } + +.fa-star-half-stroke::before { + content: "\f5c0"; } + +.fa-star-half-alt::before { + content: "\f5c0"; } + +.fa-code::before { + content: "\f121"; } + +.fa-whiskey-glass::before { + content: "\f7a0"; } + +.fa-glass-whiskey::before { + content: "\f7a0"; } + +.fa-building-circle-exclamation::before { + content: "\e4d3"; } + +.fa-magnifying-glass-chart::before { + content: "\e522"; } + +.fa-arrow-up-right-from-square::before { + content: "\f08e"; } + +.fa-external-link::before { + content: "\f08e"; } + +.fa-cubes-stacked::before { + content: "\e4e6"; } + +.fa-won-sign::before { + content: "\f159"; } + +.fa-krw::before { + content: "\f159"; } + +.fa-won::before { + content: "\f159"; } + +.fa-virus-covid::before { + content: "\e4a8"; } + +.fa-austral-sign::before { + content: "\e0a9"; } + +.fa-f::before { + content: "\46"; } + +.fa-leaf::before { + content: "\f06c"; } + +.fa-road::before { + content: "\f018"; } + +.fa-taxi::before { + content: "\f1ba"; } + +.fa-cab::before { + content: "\f1ba"; } + +.fa-person-circle-plus::before { + content: "\e541"; } + +.fa-chart-pie::before { + content: "\f200"; } + +.fa-pie-chart::before { + content: "\f200"; } + +.fa-bolt-lightning::before { + content: "\e0b7"; } + +.fa-sack-xmark::before { + content: "\e56a"; } + +.fa-file-excel::before { + content: "\f1c3"; } + +.fa-file-contract::before { + content: "\f56c"; } + +.fa-fish-fins::before { + content: "\e4f2"; } + +.fa-building-flag::before { + content: "\e4d5"; } + +.fa-face-grin-beam::before { + content: "\f582"; } + +.fa-grin-beam::before { + content: "\f582"; } + +.fa-object-ungroup::before { + content: "\f248"; } + +.fa-poop::before { + content: "\f619"; } + +.fa-location-pin::before { + content: "\f041"; } + +.fa-map-marker::before { + content: "\f041"; } + +.fa-kaaba::before { + content: "\f66b"; } + +.fa-toilet-paper::before { + content: "\f71e"; } + +.fa-helmet-safety::before { + content: "\f807"; } + +.fa-hard-hat::before { + content: "\f807"; } + +.fa-hat-hard::before { + content: "\f807"; } + +.fa-eject::before { + content: "\f052"; } + +.fa-circle-right::before { + content: "\f35a"; } + +.fa-arrow-alt-circle-right::before { + content: "\f35a"; } + +.fa-plane-circle-check::before { + content: "\e555"; } + +.fa-face-rolling-eyes::before { + content: "\f5a5"; } + +.fa-meh-rolling-eyes::before { + content: "\f5a5"; } + +.fa-object-group::before { + content: "\f247"; } + +.fa-chart-line::before { + content: "\f201"; } + +.fa-line-chart::before { + content: "\f201"; } + +.fa-mask-ventilator::before { + content: "\e524"; } + +.fa-arrow-right::before { + content: "\f061"; } + +.fa-signs-post::before { + content: "\f277"; } + +.fa-map-signs::before { + content: "\f277"; } + +.fa-cash-register::before { + content: "\f788"; } + +.fa-person-circle-question::before { + content: "\e542"; } + +.fa-h::before { + content: "\48"; } + +.fa-tarp::before { + content: "\e57b"; } + +.fa-screwdriver-wrench::before { + content: "\f7d9"; } + +.fa-tools::before { + content: "\f7d9"; } + +.fa-arrows-to-eye::before { + content: "\e4bf"; } + +.fa-plug-circle-bolt::before { + content: "\e55b"; } + +.fa-heart::before { + content: "\f004"; } + +.fa-mars-and-venus::before { + content: "\f224"; } + +.fa-house-user::before { + content: "\e1b0"; } + +.fa-home-user::before { + content: "\e1b0"; } + +.fa-dumpster-fire::before { + content: "\f794"; } + +.fa-house-crack::before { + content: "\e3b1"; } + +.fa-martini-glass-citrus::before { + content: "\f561"; } + +.fa-cocktail::before { + content: "\f561"; } + +.fa-face-surprise::before { + content: "\f5c2"; } + +.fa-surprise::before { + content: "\f5c2"; } + +.fa-bottle-water::before { + content: "\e4c5"; } + +.fa-circle-pause::before { + content: "\f28b"; } + +.fa-pause-circle::before { + content: "\f28b"; } + +.fa-toilet-paper-slash::before { + content: "\e072"; } + +.fa-apple-whole::before { + content: "\f5d1"; } + +.fa-apple-alt::before { + content: "\f5d1"; } + +.fa-kitchen-set::before { + content: "\e51a"; } + +.fa-r::before { + content: "\52"; } + +.fa-temperature-quarter::before { + content: "\f2ca"; } + +.fa-temperature-1::before { + content: "\f2ca"; } + +.fa-thermometer-1::before { + content: "\f2ca"; } + +.fa-thermometer-quarter::before { + content: "\f2ca"; } + +.fa-cube::before { + content: "\f1b2"; } + +.fa-bitcoin-sign::before { + content: "\e0b4"; } + +.fa-shield-dog::before { + content: "\e573"; } + +.fa-solar-panel::before { + content: "\f5ba"; } + +.fa-lock-open::before { + content: "\f3c1"; } + +.fa-elevator::before { + content: "\e16d"; } + +.fa-money-bill-transfer::before { + content: "\e528"; } + +.fa-money-bill-trend-up::before { + content: "\e529"; } + +.fa-house-flood-water-circle-arrow-right::before { + content: "\e50f"; } + +.fa-square-poll-horizontal::before { + content: "\f682"; } + +.fa-poll-h::before { + content: "\f682"; } + +.fa-circle::before { + content: "\f111"; } + +.fa-backward-fast::before { + content: "\f049"; } + +.fa-fast-backward::before { + content: "\f049"; } + +.fa-recycle::before { + content: "\f1b8"; } + +.fa-user-astronaut::before { + content: "\f4fb"; } + +.fa-plane-slash::before { + content: "\e069"; } + +.fa-trademark::before { + content: "\f25c"; } + +.fa-basketball::before { + content: "\f434"; } + +.fa-basketball-ball::before { + content: "\f434"; } + +.fa-satellite-dish::before { + content: "\f7c0"; } + +.fa-circle-up::before { + content: "\f35b"; } + +.fa-arrow-alt-circle-up::before { + content: "\f35b"; } + +.fa-mobile-screen-button::before { + content: "\f3cd"; } + +.fa-mobile-alt::before { + content: "\f3cd"; } + +.fa-volume-high::before { + content: "\f028"; } + +.fa-volume-up::before { + content: "\f028"; } + +.fa-users-rays::before { + content: "\e593"; } + +.fa-wallet::before { + content: "\f555"; } + +.fa-clipboard-check::before { + content: "\f46c"; } + +.fa-file-audio::before { + content: "\f1c7"; } + +.fa-burger::before { + content: "\f805"; } + +.fa-hamburger::before { + content: "\f805"; } + +.fa-wrench::before { + content: "\f0ad"; } + +.fa-bugs::before { + content: "\e4d0"; } + +.fa-rupee-sign::before { + content: "\f156"; } + +.fa-rupee::before { + content: "\f156"; } + +.fa-file-image::before { + content: "\f1c5"; } + +.fa-circle-question::before { + content: "\f059"; } + +.fa-question-circle::before { + content: "\f059"; } + +.fa-plane-departure::before { + content: "\f5b0"; } + +.fa-handshake-slash::before { + content: "\e060"; } + +.fa-book-bookmark::before { + content: "\e0bb"; } + +.fa-code-branch::before { + content: "\f126"; } + +.fa-hat-cowboy::before { + content: "\f8c0"; } + +.fa-bridge::before { + content: "\e4c8"; } + +.fa-phone-flip::before { + content: "\f879"; } + +.fa-phone-alt::before { + content: "\f879"; } + +.fa-truck-front::before { + content: "\e2b7"; } + +.fa-cat::before { + content: "\f6be"; } + +.fa-anchor-circle-exclamation::before { + content: "\e4ab"; } + +.fa-truck-field::before { + content: "\e58d"; } + +.fa-route::before { + content: "\f4d7"; } + +.fa-clipboard-question::before { + content: "\e4e3"; } + +.fa-panorama::before { + content: "\e209"; } + +.fa-comment-medical::before { + content: "\f7f5"; } + +.fa-teeth-open::before { + content: "\f62f"; } + +.fa-file-circle-minus::before { + content: "\e4ed"; } + +.fa-tags::before { + content: "\f02c"; } + +.fa-wine-glass::before { + content: "\f4e3"; } + +.fa-forward-fast::before { + content: "\f050"; } + +.fa-fast-forward::before { + content: "\f050"; } + +.fa-face-meh-blank::before { + content: "\f5a4"; } + +.fa-meh-blank::before { + content: "\f5a4"; } + +.fa-square-parking::before { + content: "\f540"; } + +.fa-parking::before { + content: "\f540"; } + +.fa-house-signal::before { + content: "\e012"; } + +.fa-bars-progress::before { + content: "\f828"; } + +.fa-tasks-alt::before { + content: "\f828"; } + +.fa-faucet-drip::before { + content: "\e006"; } + +.fa-cart-flatbed::before { + content: "\f474"; } + +.fa-dolly-flatbed::before { + content: "\f474"; } + +.fa-ban-smoking::before { + content: "\f54d"; } + +.fa-smoking-ban::before { + content: "\f54d"; } + +.fa-terminal::before { + content: "\f120"; } + +.fa-mobile-button::before { + content: "\f10b"; } + +.fa-house-medical-flag::before { + content: "\e514"; } + +.fa-basket-shopping::before { + content: "\f291"; } + +.fa-shopping-basket::before { + content: "\f291"; } + +.fa-tape::before { + content: "\f4db"; } + +.fa-bus-simple::before { + content: "\f55e"; } + +.fa-bus-alt::before { + content: "\f55e"; } + +.fa-eye::before { + content: "\f06e"; } + +.fa-face-sad-cry::before { + content: "\f5b3"; } + +.fa-sad-cry::before { + content: "\f5b3"; } + +.fa-audio-description::before { + content: "\f29e"; } + +.fa-person-military-to-person::before { + content: "\e54c"; } + +.fa-file-shield::before { + content: "\e4f0"; } + +.fa-user-slash::before { + content: "\f506"; } + +.fa-pen::before { + content: "\f304"; } + +.fa-tower-observation::before { + content: "\e586"; } + +.fa-file-code::before { + content: "\f1c9"; } + +.fa-signal::before { + content: "\f012"; } + +.fa-signal-5::before { + content: "\f012"; } + +.fa-signal-perfect::before { + content: "\f012"; } + +.fa-bus::before { + content: "\f207"; } + +.fa-heart-circle-xmark::before { + content: "\e501"; } + +.fa-house-chimney::before { + content: "\e3af"; } + +.fa-home-lg::before { + content: "\e3af"; } + +.fa-window-maximize::before { + content: "\f2d0"; } + +.fa-face-frown::before { + content: "\f119"; } + +.fa-frown::before { + content: "\f119"; } + +.fa-prescription::before { + content: "\f5b1"; } + +.fa-shop::before { + content: "\f54f"; } + +.fa-store-alt::before { + content: "\f54f"; } + +.fa-floppy-disk::before { + content: "\f0c7"; } + +.fa-save::before { + content: "\f0c7"; } + +.fa-vihara::before { + content: "\f6a7"; } + +.fa-scale-unbalanced::before { + content: "\f515"; } + +.fa-balance-scale-left::before { + content: "\f515"; } + +.fa-sort-up::before { + content: "\f0de"; } + +.fa-sort-asc::before { + content: "\f0de"; } + +.fa-comment-dots::before { + content: "\f4ad"; } + +.fa-commenting::before { + content: "\f4ad"; } + +.fa-plant-wilt::before { + content: "\e5aa"; } + +.fa-diamond::before { + content: "\f219"; } + +.fa-face-grin-squint::before { + content: "\f585"; } + +.fa-grin-squint::before { + content: "\f585"; } + +.fa-hand-holding-dollar::before { + content: "\f4c0"; } + +.fa-hand-holding-usd::before { + content: "\f4c0"; } + +.fa-bacterium::before { + content: "\e05a"; } + +.fa-hand-pointer::before { + content: "\f25a"; } + +.fa-drum-steelpan::before { + content: "\f56a"; } + +.fa-hand-scissors::before { + content: "\f257"; } + +.fa-hands-praying::before { + content: "\f684"; } + +.fa-praying-hands::before { + content: "\f684"; } + +.fa-arrow-rotate-right::before { + content: "\f01e"; } + +.fa-arrow-right-rotate::before { + content: "\f01e"; } + +.fa-arrow-rotate-forward::before { + content: "\f01e"; } + +.fa-redo::before { + content: "\f01e"; } + +.fa-biohazard::before { + content: "\f780"; } + +.fa-location-crosshairs::before { + content: "\f601"; } + +.fa-location::before { + content: "\f601"; } + +.fa-mars-double::before { + content: "\f227"; } + +.fa-child-dress::before { + content: "\e59c"; } + +.fa-users-between-lines::before { + content: "\e591"; } + +.fa-lungs-virus::before { + content: "\e067"; } + +.fa-face-grin-tears::before { + content: "\f588"; } + +.fa-grin-tears::before { + content: "\f588"; } + +.fa-phone::before { + content: "\f095"; } + +.fa-calendar-xmark::before { + content: "\f273"; } + +.fa-calendar-times::before { + content: "\f273"; } + +.fa-child-reaching::before { + content: "\e59d"; } + +.fa-head-side-virus::before { + content: "\e064"; } + +.fa-user-gear::before { + content: "\f4fe"; } + +.fa-user-cog::before { + content: "\f4fe"; } + +.fa-arrow-up-1-9::before { + content: "\f163"; } + +.fa-sort-numeric-up::before { + content: "\f163"; } + +.fa-door-closed::before { + content: "\f52a"; } + +.fa-shield-virus::before { + content: "\e06c"; } + +.fa-dice-six::before { + content: "\f526"; } + +.fa-mosquito-net::before { + content: "\e52c"; } + +.fa-bridge-water::before { + content: "\e4ce"; } + +.fa-person-booth::before { + content: "\f756"; } + +.fa-text-width::before { + content: "\f035"; } + +.fa-hat-wizard::before { + content: "\f6e8"; } + +.fa-pen-fancy::before { + content: "\f5ac"; } + +.fa-person-digging::before { + content: "\f85e"; } + +.fa-digging::before { + content: "\f85e"; } + +.fa-trash::before { + content: "\f1f8"; } + +.fa-gauge-simple::before { + content: "\f629"; } + +.fa-gauge-simple-med::before { + content: "\f629"; } + +.fa-tachometer-average::before { + content: "\f629"; } + +.fa-book-medical::before { + content: "\f7e6"; } + +.fa-poo::before { + content: "\f2fe"; } + +.fa-quote-right::before { + content: "\f10e"; } + +.fa-quote-right-alt::before { + content: "\f10e"; } + +.fa-shirt::before { + content: "\f553"; } + +.fa-t-shirt::before { + content: "\f553"; } + +.fa-tshirt::before { + content: "\f553"; } + +.fa-cubes::before { + content: "\f1b3"; } + +.fa-divide::before { + content: "\f529"; } + +.fa-tenge-sign::before { + content: "\f7d7"; } + +.fa-tenge::before { + content: "\f7d7"; } + +.fa-headphones::before { + content: "\f025"; } + +.fa-hands-holding::before { + content: "\f4c2"; } + +.fa-hands-clapping::before { + content: "\e1a8"; } + +.fa-republican::before { + content: "\f75e"; } + +.fa-arrow-left::before { + content: "\f060"; } + +.fa-person-circle-xmark::before { + content: "\e543"; } + +.fa-ruler::before { + content: "\f545"; } + +.fa-align-left::before { + content: "\f036"; } + +.fa-dice-d6::before { + content: "\f6d1"; } + +.fa-restroom::before { + content: "\f7bd"; } + +.fa-j::before { + content: "\4a"; } + +.fa-users-viewfinder::before { + content: "\e595"; } + +.fa-file-video::before { + content: "\f1c8"; } + +.fa-up-right-from-square::before { + content: "\f35d"; } + +.fa-external-link-alt::before { + content: "\f35d"; } + +.fa-table-cells::before { + content: "\f00a"; } + +.fa-th::before { + content: "\f00a"; } + +.fa-file-pdf::before { + content: "\f1c1"; } + +.fa-book-bible::before { + content: "\f647"; } + +.fa-bible::before { + content: "\f647"; } + +.fa-o::before { + content: "\4f"; } + +.fa-suitcase-medical::before { + content: "\f0fa"; } + +.fa-medkit::before { + content: "\f0fa"; } + +.fa-user-secret::before { + content: "\f21b"; } + +.fa-otter::before { + content: "\f700"; } + +.fa-person-dress::before { + content: "\f182"; } + +.fa-female::before { + content: "\f182"; } + +.fa-comment-dollar::before { + content: "\f651"; } + +.fa-business-time::before { + content: "\f64a"; } + +.fa-briefcase-clock::before { + content: "\f64a"; } + +.fa-table-cells-large::before { + content: "\f009"; } + +.fa-th-large::before { + content: "\f009"; } + +.fa-book-tanakh::before { + content: "\f827"; } + +.fa-tanakh::before { + content: "\f827"; } + +.fa-phone-volume::before { + content: "\f2a0"; } + +.fa-volume-control-phone::before { + content: "\f2a0"; } + +.fa-hat-cowboy-side::before { + content: "\f8c1"; } + +.fa-clipboard-user::before { + content: "\f7f3"; } + +.fa-child::before { + content: "\f1ae"; } + +.fa-lira-sign::before { + content: "\f195"; } + +.fa-satellite::before { + content: "\f7bf"; } + +.fa-plane-lock::before { + content: "\e558"; } + +.fa-tag::before { + content: "\f02b"; } + +.fa-comment::before { + content: "\f075"; } + +.fa-cake-candles::before { + content: "\f1fd"; } + +.fa-birthday-cake::before { + content: "\f1fd"; } + +.fa-cake::before { + content: "\f1fd"; } + +.fa-envelope::before { + content: "\f0e0"; } + +.fa-angles-up::before { + content: "\f102"; } + +.fa-angle-double-up::before { + content: "\f102"; } + +.fa-paperclip::before { + content: "\f0c6"; } + +.fa-arrow-right-to-city::before { + content: "\e4b3"; } + +.fa-ribbon::before { + content: "\f4d6"; } + +.fa-lungs::before { + content: "\f604"; } + +.fa-arrow-up-9-1::before { + content: "\f887"; } + +.fa-sort-numeric-up-alt::before { + content: "\f887"; } + +.fa-litecoin-sign::before { + content: "\e1d3"; } + +.fa-border-none::before { + content: "\f850"; } + +.fa-circle-nodes::before { + content: "\e4e2"; } + +.fa-parachute-box::before { + content: "\f4cd"; } + +.fa-indent::before { + content: "\f03c"; } + +.fa-truck-field-un::before { + content: "\e58e"; } + +.fa-hourglass::before { + content: "\f254"; } + +.fa-hourglass-empty::before { + content: "\f254"; } + +.fa-mountain::before { + content: "\f6fc"; } + +.fa-user-doctor::before { + content: "\f0f0"; } + +.fa-user-md::before { + content: "\f0f0"; } + +.fa-circle-info::before { + content: "\f05a"; } + +.fa-info-circle::before { + content: "\f05a"; } + +.fa-cloud-meatball::before { + content: "\f73b"; } + +.fa-camera::before { + content: "\f030"; } + +.fa-camera-alt::before { + content: "\f030"; } + +.fa-square-virus::before { + content: "\e578"; } + +.fa-meteor::before { + content: "\f753"; } + +.fa-car-on::before { + content: "\e4dd"; } + +.fa-sleigh::before { + content: "\f7cc"; } + +.fa-arrow-down-1-9::before { + content: "\f162"; } + +.fa-sort-numeric-asc::before { + content: "\f162"; } + +.fa-sort-numeric-down::before { + content: "\f162"; } + +.fa-hand-holding-droplet::before { + content: "\f4c1"; } + +.fa-hand-holding-water::before { + content: "\f4c1"; } + +.fa-water::before { + content: "\f773"; } + +.fa-calendar-check::before { + content: "\f274"; } + +.fa-braille::before { + content: "\f2a1"; } + +.fa-prescription-bottle-medical::before { + content: "\f486"; } + +.fa-prescription-bottle-alt::before { + content: "\f486"; } + +.fa-landmark::before { + content: "\f66f"; } + +.fa-truck::before { + content: "\f0d1"; } + +.fa-crosshairs::before { + content: "\f05b"; } + +.fa-person-cane::before { + content: "\e53c"; } + +.fa-tent::before { + content: "\e57d"; } + +.fa-vest-patches::before { + content: "\e086"; } + +.fa-check-double::before { + content: "\f560"; } + +.fa-arrow-down-a-z::before { + content: "\f15d"; } + +.fa-sort-alpha-asc::before { + content: "\f15d"; } + +.fa-sort-alpha-down::before { + content: "\f15d"; } + +.fa-money-bill-wheat::before { + content: "\e52a"; } + +.fa-cookie::before { + content: "\f563"; } + +.fa-arrow-rotate-left::before { + content: "\f0e2"; } + +.fa-arrow-left-rotate::before { + content: "\f0e2"; } + +.fa-arrow-rotate-back::before { + content: "\f0e2"; } + +.fa-arrow-rotate-backward::before { + content: "\f0e2"; } + +.fa-undo::before { + content: "\f0e2"; } + +.fa-hard-drive::before { + content: "\f0a0"; } + +.fa-hdd::before { + content: "\f0a0"; } + +.fa-face-grin-squint-tears::before { + content: "\f586"; } + +.fa-grin-squint-tears::before { + content: "\f586"; } + +.fa-dumbbell::before { + content: "\f44b"; } + +.fa-rectangle-list::before { + content: "\f022"; } + +.fa-list-alt::before { + content: "\f022"; } + +.fa-tarp-droplet::before { + content: "\e57c"; } + +.fa-house-medical-circle-check::before { + content: "\e511"; } + +.fa-person-skiing-nordic::before { + content: "\f7ca"; } + +.fa-skiing-nordic::before { + content: "\f7ca"; } + +.fa-calendar-plus::before { + content: "\f271"; } + +.fa-plane-arrival::before { + content: "\f5af"; } + +.fa-circle-left::before { + content: "\f359"; } + +.fa-arrow-alt-circle-left::before { + content: "\f359"; } + +.fa-train-subway::before { + content: "\f239"; } + +.fa-subway::before { + content: "\f239"; } + +.fa-chart-gantt::before { + content: "\e0e4"; } + +.fa-indian-rupee-sign::before { + content: "\e1bc"; } + +.fa-indian-rupee::before { + content: "\e1bc"; } + +.fa-inr::before { + content: "\e1bc"; } + +.fa-crop-simple::before { + content: "\f565"; } + +.fa-crop-alt::before { + content: "\f565"; } + +.fa-money-bill-1::before { + content: "\f3d1"; } + +.fa-money-bill-alt::before { + content: "\f3d1"; } + +.fa-left-long::before { + content: "\f30a"; } + +.fa-long-arrow-alt-left::before { + content: "\f30a"; } + +.fa-dna::before { + content: "\f471"; } + +.fa-virus-slash::before { + content: "\e075"; } + +.fa-minus::before { + content: "\f068"; } + +.fa-subtract::before { + content: "\f068"; } + +.fa-chess::before { + content: "\f439"; } + +.fa-arrow-left-long::before { + content: "\f177"; } + +.fa-long-arrow-left::before { + content: "\f177"; } + +.fa-plug-circle-check::before { + content: "\e55c"; } + +.fa-street-view::before { + content: "\f21d"; } + +.fa-franc-sign::before { + content: "\e18f"; } + +.fa-volume-off::before { + content: "\f026"; } + +.fa-hands-asl-interpreting::before { + content: "\f2a3"; } + +.fa-american-sign-language-interpreting::before { + content: "\f2a3"; } + +.fa-asl-interpreting::before { + content: "\f2a3"; } + +.fa-hands-american-sign-language-interpreting::before { + content: "\f2a3"; } + +.fa-gear::before { + content: "\f013"; } + +.fa-cog::before { + content: "\f013"; } + +.fa-droplet-slash::before { + content: "\f5c7"; } + +.fa-tint-slash::before { + content: "\f5c7"; } + +.fa-mosque::before { + content: "\f678"; } + +.fa-mosquito::before { + content: "\e52b"; } + +.fa-star-of-david::before { + content: "\f69a"; } + +.fa-person-military-rifle::before { + content: "\e54b"; } + +.fa-cart-shopping::before { + content: "\f07a"; } + +.fa-shopping-cart::before { + content: "\f07a"; } + +.fa-vials::before { + content: "\f493"; } + +.fa-plug-circle-plus::before { + content: "\e55f"; } + +.fa-place-of-worship::before { + content: "\f67f"; } + +.fa-grip-vertical::before { + content: "\f58e"; } + +.fa-arrow-turn-up::before { + content: "\f148"; } + +.fa-level-up::before { + content: "\f148"; } + +.fa-u::before { + content: "\55"; } + +.fa-square-root-variable::before { + content: "\f698"; } + +.fa-square-root-alt::before { + content: "\f698"; } + +.fa-clock::before { + content: "\f017"; } + +.fa-clock-four::before { + content: "\f017"; } + +.fa-backward-step::before { + content: "\f048"; } + +.fa-step-backward::before { + content: "\f048"; } + +.fa-pallet::before { + content: "\f482"; } + +.fa-faucet::before { + content: "\e005"; } + +.fa-baseball-bat-ball::before { + content: "\f432"; } + +.fa-s::before { + content: "\53"; } + +.fa-timeline::before { + content: "\e29c"; } + +.fa-keyboard::before { + content: "\f11c"; } + +.fa-caret-down::before { + content: "\f0d7"; } + +.fa-house-chimney-medical::before { + content: "\f7f2"; } + +.fa-clinic-medical::before { + content: "\f7f2"; } + +.fa-temperature-three-quarters::before { + content: "\f2c8"; } + +.fa-temperature-3::before { + content: "\f2c8"; } + +.fa-thermometer-3::before { + content: "\f2c8"; } + +.fa-thermometer-three-quarters::before { + content: "\f2c8"; } + +.fa-mobile-screen::before { + content: "\f3cf"; } + +.fa-mobile-android-alt::before { + content: "\f3cf"; } + +.fa-plane-up::before { + content: "\e22d"; } + +.fa-piggy-bank::before { + content: "\f4d3"; } + +.fa-battery-half::before { + content: "\f242"; } + +.fa-battery-3::before { + content: "\f242"; } + +.fa-mountain-city::before { + content: "\e52e"; } + +.fa-coins::before { + content: "\f51e"; } + +.fa-khanda::before { + content: "\f66d"; } + +.fa-sliders::before { + content: "\f1de"; } + +.fa-sliders-h::before { + content: "\f1de"; } + +.fa-folder-tree::before { + content: "\f802"; } + +.fa-network-wired::before { + content: "\f6ff"; } + +.fa-map-pin::before { + content: "\f276"; } + +.fa-hamsa::before { + content: "\f665"; } + +.fa-cent-sign::before { + content: "\e3f5"; } + +.fa-flask::before { + content: "\f0c3"; } + +.fa-person-pregnant::before { + content: "\e31e"; } + +.fa-wand-sparkles::before { + content: "\f72b"; } + +.fa-ellipsis-vertical::before { + content: "\f142"; } + +.fa-ellipsis-v::before { + content: "\f142"; } + +.fa-ticket::before { + content: "\f145"; } + +.fa-power-off::before { + content: "\f011"; } + +.fa-right-long::before { + content: "\f30b"; } + +.fa-long-arrow-alt-right::before { + content: "\f30b"; } + +.fa-flag-usa::before { + content: "\f74d"; } + +.fa-laptop-file::before { + content: "\e51d"; } + +.fa-tty::before { + content: "\f1e4"; } + +.fa-teletype::before { + content: "\f1e4"; } + +.fa-diagram-next::before { + content: "\e476"; } + +.fa-person-rifle::before { + content: "\e54e"; } + +.fa-house-medical-circle-exclamation::before { + content: "\e512"; } + +.fa-closed-captioning::before { + content: "\f20a"; } + +.fa-person-hiking::before { + content: "\f6ec"; } + +.fa-hiking::before { + content: "\f6ec"; } + +.fa-venus-double::before { + content: "\f226"; } + +.fa-images::before { + content: "\f302"; } + +.fa-calculator::before { + content: "\f1ec"; } + +.fa-people-pulling::before { + content: "\e535"; } + +.fa-n::before { + content: "\4e"; } + +.fa-cable-car::before { + content: "\f7da"; } + +.fa-tram::before { + content: "\f7da"; } + +.fa-cloud-rain::before { + content: "\f73d"; } + +.fa-building-circle-xmark::before { + content: "\e4d4"; } + +.fa-ship::before { + content: "\f21a"; } + +.fa-arrows-down-to-line::before { + content: "\e4b8"; } + +.fa-download::before { + content: "\f019"; } + +.fa-face-grin::before { + content: "\f580"; } + +.fa-grin::before { + content: "\f580"; } + +.fa-delete-left::before { + content: "\f55a"; } + +.fa-backspace::before { + content: "\f55a"; } + +.fa-eye-dropper::before { + content: "\f1fb"; } + +.fa-eye-dropper-empty::before { + content: "\f1fb"; } + +.fa-eyedropper::before { + content: "\f1fb"; } + +.fa-file-circle-check::before { + content: "\e5a0"; } + +.fa-forward::before { + content: "\f04e"; } + +.fa-mobile::before { + content: "\f3ce"; } + +.fa-mobile-android::before { + content: "\f3ce"; } + +.fa-mobile-phone::before { + content: "\f3ce"; } + +.fa-face-meh::before { + content: "\f11a"; } + +.fa-meh::before { + content: "\f11a"; } + +.fa-align-center::before { + content: "\f037"; } + +.fa-book-skull::before { + content: "\f6b7"; } + +.fa-book-dead::before { + content: "\f6b7"; } + +.fa-id-card::before { + content: "\f2c2"; } + +.fa-drivers-license::before { + content: "\f2c2"; } + +.fa-outdent::before { + content: "\f03b"; } + +.fa-dedent::before { + content: "\f03b"; } + +.fa-heart-circle-exclamation::before { + content: "\e4fe"; } + +.fa-house::before { + content: "\f015"; } + +.fa-home::before { + content: "\f015"; } + +.fa-home-alt::before { + content: "\f015"; } + +.fa-home-lg-alt::before { + content: "\f015"; } + +.fa-calendar-week::before { + content: "\f784"; } + +.fa-laptop-medical::before { + content: "\f812"; } + +.fa-b::before { + content: "\42"; } + +.fa-file-medical::before { + content: "\f477"; } + +.fa-dice-one::before { + content: "\f525"; } + +.fa-kiwi-bird::before { + content: "\f535"; } + +.fa-arrow-right-arrow-left::before { + content: "\f0ec"; } + +.fa-exchange::before { + content: "\f0ec"; } + +.fa-rotate-right::before { + content: "\f2f9"; } + +.fa-redo-alt::before { + content: "\f2f9"; } + +.fa-rotate-forward::before { + content: "\f2f9"; } + +.fa-utensils::before { + content: "\f2e7"; } + +.fa-cutlery::before { + content: "\f2e7"; } + +.fa-arrow-up-wide-short::before { + content: "\f161"; } + +.fa-sort-amount-up::before { + content: "\f161"; } + +.fa-mill-sign::before { + content: "\e1ed"; } + +.fa-bowl-rice::before { + content: "\e2eb"; } + +.fa-skull::before { + content: "\f54c"; } + +.fa-tower-broadcast::before { + content: "\f519"; } + +.fa-broadcast-tower::before { + content: "\f519"; } + +.fa-truck-pickup::before { + content: "\f63c"; } + +.fa-up-long::before { + content: "\f30c"; } + +.fa-long-arrow-alt-up::before { + content: "\f30c"; } + +.fa-stop::before { + content: "\f04d"; } + +.fa-code-merge::before { + content: "\f387"; } + +.fa-upload::before { + content: "\f093"; } + +.fa-hurricane::before { + content: "\f751"; } + +.fa-mound::before { + content: "\e52d"; } + +.fa-toilet-portable::before { + content: "\e583"; } + +.fa-compact-disc::before { + content: "\f51f"; } + +.fa-file-arrow-down::before { + content: "\f56d"; } + +.fa-file-download::before { + content: "\f56d"; } + +.fa-caravan::before { + content: "\f8ff"; } + +.fa-shield-cat::before { + content: "\e572"; } + +.fa-bolt::before { + content: "\f0e7"; } + +.fa-zap::before { + content: "\f0e7"; } + +.fa-glass-water::before { + content: "\e4f4"; } + +.fa-oil-well::before { + content: "\e532"; } + +.fa-vault::before { + content: "\e2c5"; } + +.fa-mars::before { + content: "\f222"; } + +.fa-toilet::before { + content: "\f7d8"; } + +.fa-plane-circle-xmark::before { + content: "\e557"; } + +.fa-yen-sign::before { + content: "\f157"; } + +.fa-cny::before { + content: "\f157"; } + +.fa-jpy::before { + content: "\f157"; } + +.fa-rmb::before { + content: "\f157"; } + +.fa-yen::before { + content: "\f157"; } + +.fa-ruble-sign::before { + content: "\f158"; } + +.fa-rouble::before { + content: "\f158"; } + +.fa-rub::before { + content: "\f158"; } + +.fa-ruble::before { + content: "\f158"; } + +.fa-sun::before { + content: "\f185"; } + +.fa-guitar::before { + content: "\f7a6"; } + +.fa-face-laugh-wink::before { + content: "\f59c"; } + +.fa-laugh-wink::before { + content: "\f59c"; } + +.fa-horse-head::before { + content: "\f7ab"; } + +.fa-bore-hole::before { + content: "\e4c3"; } + +.fa-industry::before { + content: "\f275"; } + +.fa-circle-down::before { + content: "\f358"; } + +.fa-arrow-alt-circle-down::before { + content: "\f358"; } + +.fa-arrows-turn-to-dots::before { + content: "\e4c1"; } + +.fa-florin-sign::before { + content: "\e184"; } + +.fa-arrow-down-short-wide::before { + content: "\f884"; } + +.fa-sort-amount-desc::before { + content: "\f884"; } + +.fa-sort-amount-down-alt::before { + content: "\f884"; } + +.fa-less-than::before { + content: "\3c"; } + +.fa-angle-down::before { + content: "\f107"; } + +.fa-car-tunnel::before { + content: "\e4de"; } + +.fa-head-side-cough::before { + content: "\e061"; } + +.fa-grip-lines::before { + content: "\f7a4"; } + +.fa-thumbs-down::before { + content: "\f165"; } + +.fa-user-lock::before { + content: "\f502"; } + +.fa-arrow-right-long::before { + content: "\f178"; } + +.fa-long-arrow-right::before { + content: "\f178"; } + +.fa-anchor-circle-xmark::before { + content: "\e4ac"; } + +.fa-ellipsis::before { + content: "\f141"; } + +.fa-ellipsis-h::before { + content: "\f141"; } + +.fa-chess-pawn::before { + content: "\f443"; } + +.fa-kit-medical::before { + content: "\f479"; } + +.fa-first-aid::before { + content: "\f479"; } + +.fa-person-through-window::before { + content: "\e5a9"; } + +.fa-toolbox::before { + content: "\f552"; } + +.fa-hands-holding-circle::before { + content: "\e4fb"; } + +.fa-bug::before { + content: "\f188"; } + +.fa-credit-card::before { + content: "\f09d"; } + +.fa-credit-card-alt::before { + content: "\f09d"; } + +.fa-car::before { + content: "\f1b9"; } + +.fa-automobile::before { + content: "\f1b9"; } + +.fa-hand-holding-hand::before { + content: "\e4f7"; } + +.fa-book-open-reader::before { + content: "\f5da"; } + +.fa-book-reader::before { + content: "\f5da"; } + +.fa-mountain-sun::before { + content: "\e52f"; } + +.fa-arrows-left-right-to-line::before { + content: "\e4ba"; } + +.fa-dice-d20::before { + content: "\f6cf"; } + +.fa-truck-droplet::before { + content: "\e58c"; } + +.fa-file-circle-xmark::before { + content: "\e5a1"; } + +.fa-temperature-arrow-up::before { + content: "\e040"; } + +.fa-temperature-up::before { + content: "\e040"; } + +.fa-medal::before { + content: "\f5a2"; } + +.fa-bed::before { + content: "\f236"; } + +.fa-square-h::before { + content: "\f0fd"; } + +.fa-h-square::before { + content: "\f0fd"; } + +.fa-podcast::before { + content: "\f2ce"; } + +.fa-temperature-full::before { + content: "\f2c7"; } + +.fa-temperature-4::before { + content: "\f2c7"; } + +.fa-thermometer-4::before { + content: "\f2c7"; } + +.fa-thermometer-full::before { + content: "\f2c7"; } + +.fa-bell::before { + content: "\f0f3"; } + +.fa-superscript::before { + content: "\f12b"; } + +.fa-plug-circle-xmark::before { + content: "\e560"; } + +.fa-star-of-life::before { + content: "\f621"; } + +.fa-phone-slash::before { + content: "\f3dd"; } + +.fa-paint-roller::before { + content: "\f5aa"; } + +.fa-handshake-angle::before { + content: "\f4c4"; } + +.fa-hands-helping::before { + content: "\f4c4"; } + +.fa-location-dot::before { + content: "\f3c5"; } + +.fa-map-marker-alt::before { + content: "\f3c5"; } + +.fa-file::before { + content: "\f15b"; } + +.fa-greater-than::before { + content: "\3e"; } + +.fa-person-swimming::before { + content: "\f5c4"; } + +.fa-swimmer::before { + content: "\f5c4"; } + +.fa-arrow-down::before { + content: "\f063"; } + +.fa-droplet::before { + content: "\f043"; } + +.fa-tint::before { + content: "\f043"; } + +.fa-eraser::before { + content: "\f12d"; } + +.fa-earth-americas::before { + content: "\f57d"; } + +.fa-earth::before { + content: "\f57d"; } + +.fa-earth-america::before { + content: "\f57d"; } + +.fa-globe-americas::before { + content: "\f57d"; } + +.fa-person-burst::before { + content: "\e53b"; } + +.fa-dove::before { + content: "\f4ba"; } + +.fa-battery-empty::before { + content: "\f244"; } + +.fa-battery-0::before { + content: "\f244"; } + +.fa-socks::before { + content: "\f696"; } + +.fa-inbox::before { + content: "\f01c"; } + +.fa-section::before { + content: "\e447"; } + +.fa-gauge-high::before { + content: "\f625"; } + +.fa-tachometer-alt::before { + content: "\f625"; } + +.fa-tachometer-alt-fast::before { + content: "\f625"; } + +.fa-envelope-open-text::before { + content: "\f658"; } + +.fa-hospital::before { + content: "\f0f8"; } + +.fa-hospital-alt::before { + content: "\f0f8"; } + +.fa-hospital-wide::before { + content: "\f0f8"; } + +.fa-wine-bottle::before { + content: "\f72f"; } + +.fa-chess-rook::before { + content: "\f447"; } + +.fa-bars-staggered::before { + content: "\f550"; } + +.fa-reorder::before { + content: "\f550"; } + +.fa-stream::before { + content: "\f550"; } + +.fa-dharmachakra::before { + content: "\f655"; } + +.fa-hotdog::before { + content: "\f80f"; } + +.fa-person-walking-with-cane::before { + content: "\f29d"; } + +.fa-blind::before { + content: "\f29d"; } + +.fa-drum::before { + content: "\f569"; } + +.fa-ice-cream::before { + content: "\f810"; } + +.fa-heart-circle-bolt::before { + content: "\e4fc"; } + +.fa-fax::before { + content: "\f1ac"; } + +.fa-paragraph::before { + content: "\f1dd"; } + +.fa-check-to-slot::before { + content: "\f772"; } + +.fa-vote-yea::before { + content: "\f772"; } + +.fa-star-half::before { + content: "\f089"; } + +.fa-boxes-stacked::before { + content: "\f468"; } + +.fa-boxes::before { + content: "\f468"; } + +.fa-boxes-alt::before { + content: "\f468"; } + +.fa-link::before { + content: "\f0c1"; } + +.fa-chain::before { + content: "\f0c1"; } + +.fa-ear-listen::before { + content: "\f2a2"; } + +.fa-assistive-listening-systems::before { + content: "\f2a2"; } + +.fa-tree-city::before { + content: "\e587"; } + +.fa-play::before { + content: "\f04b"; } + +.fa-font::before { + content: "\f031"; } + +.fa-table-cells-row-lock::before { + content: "\e67a"; } + +.fa-rupiah-sign::before { + content: "\e23d"; } + +.fa-magnifying-glass::before { + content: "\f002"; } + +.fa-search::before { + content: "\f002"; } + +.fa-table-tennis-paddle-ball::before { + content: "\f45d"; } + +.fa-ping-pong-paddle-ball::before { + content: "\f45d"; } + +.fa-table-tennis::before { + content: "\f45d"; } + +.fa-person-dots-from-line::before { + content: "\f470"; } + +.fa-diagnoses::before { + content: "\f470"; } + +.fa-trash-can-arrow-up::before { + content: "\f82a"; } + +.fa-trash-restore-alt::before { + content: "\f82a"; } + +.fa-naira-sign::before { + content: "\e1f6"; } + +.fa-cart-arrow-down::before { + content: "\f218"; } + +.fa-walkie-talkie::before { + content: "\f8ef"; } + +.fa-file-pen::before { + content: "\f31c"; } + +.fa-file-edit::before { + content: "\f31c"; } + +.fa-receipt::before { + content: "\f543"; } + +.fa-square-pen::before { + content: "\f14b"; } + +.fa-pen-square::before { + content: "\f14b"; } + +.fa-pencil-square::before { + content: "\f14b"; } + +.fa-suitcase-rolling::before { + content: "\f5c1"; } + +.fa-person-circle-exclamation::before { + content: "\e53f"; } + +.fa-chevron-down::before { + content: "\f078"; } + +.fa-battery-full::before { + content: "\f240"; } + +.fa-battery::before { + content: "\f240"; } + +.fa-battery-5::before { + content: "\f240"; } + +.fa-skull-crossbones::before { + content: "\f714"; } + +.fa-code-compare::before { + content: "\e13a"; } + +.fa-list-ul::before { + content: "\f0ca"; } + +.fa-list-dots::before { + content: "\f0ca"; } + +.fa-school-lock::before { + content: "\e56f"; } + +.fa-tower-cell::before { + content: "\e585"; } + +.fa-down-long::before { + content: "\f309"; } + +.fa-long-arrow-alt-down::before { + content: "\f309"; } + +.fa-ranking-star::before { + content: "\e561"; } + +.fa-chess-king::before { + content: "\f43f"; } + +.fa-person-harassing::before { + content: "\e549"; } + +.fa-brazilian-real-sign::before { + content: "\e46c"; } + +.fa-landmark-dome::before { + content: "\f752"; } + +.fa-landmark-alt::before { + content: "\f752"; } + +.fa-arrow-up::before { + content: "\f062"; } + +.fa-tv::before { + content: "\f26c"; } + +.fa-television::before { + content: "\f26c"; } + +.fa-tv-alt::before { + content: "\f26c"; } + +.fa-shrimp::before { + content: "\e448"; } + +.fa-list-check::before { + content: "\f0ae"; } + +.fa-tasks::before { + content: "\f0ae"; } + +.fa-jug-detergent::before { + content: "\e519"; } + +.fa-circle-user::before { + content: "\f2bd"; } + +.fa-user-circle::before { + content: "\f2bd"; } + +.fa-user-shield::before { + content: "\f505"; } + +.fa-wind::before { + content: "\f72e"; } + +.fa-car-burst::before { + content: "\f5e1"; } + +.fa-car-crash::before { + content: "\f5e1"; } + +.fa-y::before { + content: "\59"; } + +.fa-person-snowboarding::before { + content: "\f7ce"; } + +.fa-snowboarding::before { + content: "\f7ce"; } + +.fa-truck-fast::before { + content: "\f48b"; } + +.fa-shipping-fast::before { + content: "\f48b"; } + +.fa-fish::before { + content: "\f578"; } + +.fa-user-graduate::before { + content: "\f501"; } + +.fa-circle-half-stroke::before { + content: "\f042"; } + +.fa-adjust::before { + content: "\f042"; } + +.fa-clapperboard::before { + content: "\e131"; } + +.fa-circle-radiation::before { + content: "\f7ba"; } + +.fa-radiation-alt::before { + content: "\f7ba"; } + +.fa-baseball::before { + content: "\f433"; } + +.fa-baseball-ball::before { + content: "\f433"; } + +.fa-jet-fighter-up::before { + content: "\e518"; } + +.fa-diagram-project::before { + content: "\f542"; } + +.fa-project-diagram::before { + content: "\f542"; } + +.fa-copy::before { + content: "\f0c5"; } + +.fa-volume-xmark::before { + content: "\f6a9"; } + +.fa-volume-mute::before { + content: "\f6a9"; } + +.fa-volume-times::before { + content: "\f6a9"; } + +.fa-hand-sparkles::before { + content: "\e05d"; } + +.fa-grip::before { + content: "\f58d"; } + +.fa-grip-horizontal::before { + content: "\f58d"; } + +.fa-share-from-square::before { + content: "\f14d"; } + +.fa-share-square::before { + content: "\f14d"; } + +.fa-child-combatant::before { + content: "\e4e0"; } + +.fa-child-rifle::before { + content: "\e4e0"; } + +.fa-gun::before { + content: "\e19b"; } + +.fa-square-phone::before { + content: "\f098"; } + +.fa-phone-square::before { + content: "\f098"; } + +.fa-plus::before { + content: "\2b"; } + +.fa-add::before { + content: "\2b"; } + +.fa-expand::before { + content: "\f065"; } + +.fa-computer::before { + content: "\e4e5"; } + +.fa-xmark::before { + content: "\f00d"; } + +.fa-close::before { + content: "\f00d"; } + +.fa-multiply::before { + content: "\f00d"; } + +.fa-remove::before { + content: "\f00d"; } + +.fa-times::before { + content: "\f00d"; } + +.fa-arrows-up-down-left-right::before { + content: "\f047"; } + +.fa-arrows::before { + content: "\f047"; } + +.fa-chalkboard-user::before { + content: "\f51c"; } + +.fa-chalkboard-teacher::before { + content: "\f51c"; } + +.fa-peso-sign::before { + content: "\e222"; } + +.fa-building-shield::before { + content: "\e4d8"; } + +.fa-baby::before { + content: "\f77c"; } + +.fa-users-line::before { + content: "\e592"; } + +.fa-quote-left::before { + content: "\f10d"; } + +.fa-quote-left-alt::before { + content: "\f10d"; } + +.fa-tractor::before { + content: "\f722"; } + +.fa-trash-arrow-up::before { + content: "\f829"; } + +.fa-trash-restore::before { + content: "\f829"; } + +.fa-arrow-down-up-lock::before { + content: "\e4b0"; } + +.fa-lines-leaning::before { + content: "\e51e"; } + +.fa-ruler-combined::before { + content: "\f546"; } + +.fa-copyright::before { + content: "\f1f9"; } + +.fa-equals::before { + content: "\3d"; } + +.fa-blender::before { + content: "\f517"; } + +.fa-teeth::before { + content: "\f62e"; } + +.fa-shekel-sign::before { + content: "\f20b"; } + +.fa-ils::before { + content: "\f20b"; } + +.fa-shekel::before { + content: "\f20b"; } + +.fa-sheqel::before { + content: "\f20b"; } + +.fa-sheqel-sign::before { + content: "\f20b"; } + +.fa-map::before { + content: "\f279"; } + +.fa-rocket::before { + content: "\f135"; } + +.fa-photo-film::before { + content: "\f87c"; } + +.fa-photo-video::before { + content: "\f87c"; } + +.fa-folder-minus::before { + content: "\f65d"; } + +.fa-store::before { + content: "\f54e"; } + +.fa-arrow-trend-up::before { + content: "\e098"; } + +.fa-plug-circle-minus::before { + content: "\e55e"; } + +.fa-sign-hanging::before { + content: "\f4d9"; } + +.fa-sign::before { + content: "\f4d9"; } + +.fa-bezier-curve::before { + content: "\f55b"; } + +.fa-bell-slash::before { + content: "\f1f6"; } + +.fa-tablet::before { + content: "\f3fb"; } + +.fa-tablet-android::before { + content: "\f3fb"; } + +.fa-school-flag::before { + content: "\e56e"; } + +.fa-fill::before { + content: "\f575"; } + +.fa-angle-up::before { + content: "\f106"; } + +.fa-drumstick-bite::before { + content: "\f6d7"; } + +.fa-holly-berry::before { + content: "\f7aa"; } + +.fa-chevron-left::before { + content: "\f053"; } + +.fa-bacteria::before { + content: "\e059"; } + +.fa-hand-lizard::before { + content: "\f258"; } + +.fa-notdef::before { + content: "\e1fe"; } + +.fa-disease::before { + content: "\f7fa"; } + +.fa-briefcase-medical::before { + content: "\f469"; } + +.fa-genderless::before { + content: "\f22d"; } + +.fa-chevron-right::before { + content: "\f054"; } + +.fa-retweet::before { + content: "\f079"; } + +.fa-car-rear::before { + content: "\f5de"; } + +.fa-car-alt::before { + content: "\f5de"; } + +.fa-pump-soap::before { + content: "\e06b"; } + +.fa-video-slash::before { + content: "\f4e2"; } + +.fa-battery-quarter::before { + content: "\f243"; } + +.fa-battery-2::before { + content: "\f243"; } + +.fa-radio::before { + content: "\f8d7"; } + +.fa-baby-carriage::before { + content: "\f77d"; } + +.fa-carriage-baby::before { + content: "\f77d"; } + +.fa-traffic-light::before { + content: "\f637"; } + +.fa-thermometer::before { + content: "\f491"; } + +.fa-vr-cardboard::before { + content: "\f729"; } + +.fa-hand-middle-finger::before { + content: "\f806"; } + +.fa-percent::before { + content: "\25"; } + +.fa-percentage::before { + content: "\25"; } + +.fa-truck-moving::before { + content: "\f4df"; } + +.fa-glass-water-droplet::before { + content: "\e4f5"; } + +.fa-display::before { + content: "\e163"; } + +.fa-face-smile::before { + content: "\f118"; } + +.fa-smile::before { + content: "\f118"; } + +.fa-thumbtack::before { + content: "\f08d"; } + +.fa-thumb-tack::before { + content: "\f08d"; } + +.fa-trophy::before { + content: "\f091"; } + +.fa-person-praying::before { + content: "\f683"; } + +.fa-pray::before { + content: "\f683"; } + +.fa-hammer::before { + content: "\f6e3"; } + +.fa-hand-peace::before { + content: "\f25b"; } + +.fa-rotate::before { + content: "\f2f1"; } + +.fa-sync-alt::before { + content: "\f2f1"; } + +.fa-spinner::before { + content: "\f110"; } + +.fa-robot::before { + content: "\f544"; } + +.fa-peace::before { + content: "\f67c"; } + +.fa-gears::before { + content: "\f085"; } + +.fa-cogs::before { + content: "\f085"; } + +.fa-warehouse::before { + content: "\f494"; } + +.fa-arrow-up-right-dots::before { + content: "\e4b7"; } + +.fa-splotch::before { + content: "\f5bc"; } + +.fa-face-grin-hearts::before { + content: "\f584"; } + +.fa-grin-hearts::before { + content: "\f584"; } + +.fa-dice-four::before { + content: "\f524"; } + +.fa-sim-card::before { + content: "\f7c4"; } + +.fa-transgender::before { + content: "\f225"; } + +.fa-transgender-alt::before { + content: "\f225"; } + +.fa-mercury::before { + content: "\f223"; } + +.fa-arrow-turn-down::before { + content: "\f149"; } + +.fa-level-down::before { + content: "\f149"; } + +.fa-person-falling-burst::before { + content: "\e547"; } + +.fa-award::before { + content: "\f559"; } + +.fa-ticket-simple::before { + content: "\f3ff"; } + +.fa-ticket-alt::before { + content: "\f3ff"; } + +.fa-building::before { + content: "\f1ad"; } + +.fa-angles-left::before { + content: "\f100"; } + +.fa-angle-double-left::before { + content: "\f100"; } + +.fa-qrcode::before { + content: "\f029"; } + +.fa-clock-rotate-left::before { + content: "\f1da"; } + +.fa-history::before { + content: "\f1da"; } + +.fa-face-grin-beam-sweat::before { + content: "\f583"; } + +.fa-grin-beam-sweat::before { + content: "\f583"; } + +.fa-file-export::before { + content: "\f56e"; } + +.fa-arrow-right-from-file::before { + content: "\f56e"; } + +.fa-shield::before { + content: "\f132"; } + +.fa-shield-blank::before { + content: "\f132"; } + +.fa-arrow-up-short-wide::before { + content: "\f885"; } + +.fa-sort-amount-up-alt::before { + content: "\f885"; } + +.fa-house-medical::before { + content: "\e3b2"; } + +.fa-golf-ball-tee::before { + content: "\f450"; } + +.fa-golf-ball::before { + content: "\f450"; } + +.fa-circle-chevron-left::before { + content: "\f137"; } + +.fa-chevron-circle-left::before { + content: "\f137"; } + +.fa-house-chimney-window::before { + content: "\e00d"; } + +.fa-pen-nib::before { + content: "\f5ad"; } + +.fa-tent-arrow-turn-left::before { + content: "\e580"; } + +.fa-tents::before { + content: "\e582"; } + +.fa-wand-magic::before { + content: "\f0d0"; } + +.fa-magic::before { + content: "\f0d0"; } + +.fa-dog::before { + content: "\f6d3"; } + +.fa-carrot::before { + content: "\f787"; } + +.fa-moon::before { + content: "\f186"; } + +.fa-wine-glass-empty::before { + content: "\f5ce"; } + +.fa-wine-glass-alt::before { + content: "\f5ce"; } + +.fa-cheese::before { + content: "\f7ef"; } + +.fa-yin-yang::before { + content: "\f6ad"; } + +.fa-music::before { + content: "\f001"; } + +.fa-code-commit::before { + content: "\f386"; } + +.fa-temperature-low::before { + content: "\f76b"; } + +.fa-person-biking::before { + content: "\f84a"; } + +.fa-biking::before { + content: "\f84a"; } + +.fa-broom::before { + content: "\f51a"; } + +.fa-shield-heart::before { + content: "\e574"; } + +.fa-gopuram::before { + content: "\f664"; } + +.fa-earth-oceania::before { + content: "\e47b"; } + +.fa-globe-oceania::before { + content: "\e47b"; } + +.fa-square-xmark::before { + content: "\f2d3"; } + +.fa-times-square::before { + content: "\f2d3"; } + +.fa-xmark-square::before { + content: "\f2d3"; } + +.fa-hashtag::before { + content: "\23"; } + +.fa-up-right-and-down-left-from-center::before { + content: "\f424"; } + +.fa-expand-alt::before { + content: "\f424"; } + +.fa-oil-can::before { + content: "\f613"; } + +.fa-t::before { + content: "\54"; } + +.fa-hippo::before { + content: "\f6ed"; } + +.fa-chart-column::before { + content: "\e0e3"; } + +.fa-infinity::before { + content: "\f534"; } + +.fa-vial-circle-check::before { + content: "\e596"; } + +.fa-person-arrow-down-to-line::before { + content: "\e538"; } + +.fa-voicemail::before { + content: "\f897"; } + +.fa-fan::before { + content: "\f863"; } + +.fa-person-walking-luggage::before { + content: "\e554"; } + +.fa-up-down::before { + content: "\f338"; } + +.fa-arrows-alt-v::before { + content: "\f338"; } + +.fa-cloud-moon-rain::before { + content: "\f73c"; } + +.fa-calendar::before { + content: "\f133"; } + +.fa-trailer::before { + content: "\e041"; } + +.fa-bahai::before { + content: "\f666"; } + +.fa-haykal::before { + content: "\f666"; } + +.fa-sd-card::before { + content: "\f7c2"; } + +.fa-dragon::before { + content: "\f6d5"; } + +.fa-shoe-prints::before { + content: "\f54b"; } + +.fa-circle-plus::before { + content: "\f055"; } + +.fa-plus-circle::before { + content: "\f055"; } + +.fa-face-grin-tongue-wink::before { + content: "\f58b"; } + +.fa-grin-tongue-wink::before { + content: "\f58b"; } + +.fa-hand-holding::before { + content: "\f4bd"; } + +.fa-plug-circle-exclamation::before { + content: "\e55d"; } + +.fa-link-slash::before { + content: "\f127"; } + +.fa-chain-broken::before { + content: "\f127"; } + +.fa-chain-slash::before { + content: "\f127"; } + +.fa-unlink::before { + content: "\f127"; } + +.fa-clone::before { + content: "\f24d"; } + +.fa-person-walking-arrow-loop-left::before { + content: "\e551"; } + +.fa-arrow-up-z-a::before { + content: "\f882"; } + +.fa-sort-alpha-up-alt::before { + content: "\f882"; } + +.fa-fire-flame-curved::before { + content: "\f7e4"; } + +.fa-fire-alt::before { + content: "\f7e4"; } + +.fa-tornado::before { + content: "\f76f"; } + +.fa-file-circle-plus::before { + content: "\e494"; } + +.fa-book-quran::before { + content: "\f687"; } + +.fa-quran::before { + content: "\f687"; } + +.fa-anchor::before { + content: "\f13d"; } + +.fa-border-all::before { + content: "\f84c"; } + +.fa-face-angry::before { + content: "\f556"; } + +.fa-angry::before { + content: "\f556"; } + +.fa-cookie-bite::before { + content: "\f564"; } + +.fa-arrow-trend-down::before { + content: "\e097"; } + +.fa-rss::before { + content: "\f09e"; } + +.fa-feed::before { + content: "\f09e"; } + +.fa-draw-polygon::before { + content: "\f5ee"; } + +.fa-scale-balanced::before { + content: "\f24e"; } + +.fa-balance-scale::before { + content: "\f24e"; } + +.fa-gauge-simple-high::before { + content: "\f62a"; } + +.fa-tachometer::before { + content: "\f62a"; } + +.fa-tachometer-fast::before { + content: "\f62a"; } + +.fa-shower::before { + content: "\f2cc"; } + +.fa-desktop::before { + content: "\f390"; } + +.fa-desktop-alt::before { + content: "\f390"; } + +.fa-m::before { + content: "\4d"; } + +.fa-table-list::before { + content: "\f00b"; } + +.fa-th-list::before { + content: "\f00b"; } + +.fa-comment-sms::before { + content: "\f7cd"; } + +.fa-sms::before { + content: "\f7cd"; } + +.fa-book::before { + content: "\f02d"; } + +.fa-user-plus::before { + content: "\f234"; } + +.fa-check::before { + content: "\f00c"; } + +.fa-battery-three-quarters::before { + content: "\f241"; } + +.fa-battery-4::before { + content: "\f241"; } + +.fa-house-circle-check::before { + content: "\e509"; } + +.fa-angle-left::before { + content: "\f104"; } + +.fa-diagram-successor::before { + content: "\e47a"; } + +.fa-truck-arrow-right::before { + content: "\e58b"; } + +.fa-arrows-split-up-and-left::before { + content: "\e4bc"; } + +.fa-hand-fist::before { + content: "\f6de"; } + +.fa-fist-raised::before { + content: "\f6de"; } + +.fa-cloud-moon::before { + content: "\f6c3"; } + +.fa-briefcase::before { + content: "\f0b1"; } + +.fa-person-falling::before { + content: "\e546"; } + +.fa-image-portrait::before { + content: "\f3e0"; } + +.fa-portrait::before { + content: "\f3e0"; } + +.fa-user-tag::before { + content: "\f507"; } + +.fa-rug::before { + content: "\e569"; } + +.fa-earth-europe::before { + content: "\f7a2"; } + +.fa-globe-europe::before { + content: "\f7a2"; } + +.fa-cart-flatbed-suitcase::before { + content: "\f59d"; } + +.fa-luggage-cart::before { + content: "\f59d"; } + +.fa-rectangle-xmark::before { + content: "\f410"; } + +.fa-rectangle-times::before { + content: "\f410"; } + +.fa-times-rectangle::before { + content: "\f410"; } + +.fa-window-close::before { + content: "\f410"; } + +.fa-baht-sign::before { + content: "\e0ac"; } + +.fa-book-open::before { + content: "\f518"; } + +.fa-book-journal-whills::before { + content: "\f66a"; } + +.fa-journal-whills::before { + content: "\f66a"; } + +.fa-handcuffs::before { + content: "\e4f8"; } + +.fa-triangle-exclamation::before { + content: "\f071"; } + +.fa-exclamation-triangle::before { + content: "\f071"; } + +.fa-warning::before { + content: "\f071"; } + +.fa-database::before { + content: "\f1c0"; } + +.fa-share::before { + content: "\f064"; } + +.fa-mail-forward::before { + content: "\f064"; } + +.fa-bottle-droplet::before { + content: "\e4c4"; } + +.fa-mask-face::before { + content: "\e1d7"; } + +.fa-hill-rockslide::before { + content: "\e508"; } + +.fa-right-left::before { + content: "\f362"; } + +.fa-exchange-alt::before { + content: "\f362"; } + +.fa-paper-plane::before { + content: "\f1d8"; } + +.fa-road-circle-exclamation::before { + content: "\e565"; } + +.fa-dungeon::before { + content: "\f6d9"; } + +.fa-align-right::before { + content: "\f038"; } + +.fa-money-bill-1-wave::before { + content: "\f53b"; } + +.fa-money-bill-wave-alt::before { + content: "\f53b"; } + +.fa-life-ring::before { + content: "\f1cd"; } + +.fa-hands::before { + content: "\f2a7"; } + +.fa-sign-language::before { + content: "\f2a7"; } + +.fa-signing::before { + content: "\f2a7"; } + +.fa-calendar-day::before { + content: "\f783"; } + +.fa-water-ladder::before { + content: "\f5c5"; } + +.fa-ladder-water::before { + content: "\f5c5"; } + +.fa-swimming-pool::before { + content: "\f5c5"; } + +.fa-arrows-up-down::before { + content: "\f07d"; } + +.fa-arrows-v::before { + content: "\f07d"; } + +.fa-face-grimace::before { + content: "\f57f"; } + +.fa-grimace::before { + content: "\f57f"; } + +.fa-wheelchair-move::before { + content: "\e2ce"; } + +.fa-wheelchair-alt::before { + content: "\e2ce"; } + +.fa-turn-down::before { + content: "\f3be"; } + +.fa-level-down-alt::before { + content: "\f3be"; } + +.fa-person-walking-arrow-right::before { + content: "\e552"; } + +.fa-square-envelope::before { + content: "\f199"; } + +.fa-envelope-square::before { + content: "\f199"; } + +.fa-dice::before { + content: "\f522"; } + +.fa-bowling-ball::before { + content: "\f436"; } + +.fa-brain::before { + content: "\f5dc"; } + +.fa-bandage::before { + content: "\f462"; } + +.fa-band-aid::before { + content: "\f462"; } + +.fa-calendar-minus::before { + content: "\f272"; } + +.fa-circle-xmark::before { + content: "\f057"; } + +.fa-times-circle::before { + content: "\f057"; } + +.fa-xmark-circle::before { + content: "\f057"; } + +.fa-gifts::before { + content: "\f79c"; } + +.fa-hotel::before { + content: "\f594"; } + +.fa-earth-asia::before { + content: "\f57e"; } + +.fa-globe-asia::before { + content: "\f57e"; } + +.fa-id-card-clip::before { + content: "\f47f"; } + +.fa-id-card-alt::before { + content: "\f47f"; } + +.fa-magnifying-glass-plus::before { + content: "\f00e"; } + +.fa-search-plus::before { + content: "\f00e"; } + +.fa-thumbs-up::before { + content: "\f164"; } + +.fa-user-clock::before { + content: "\f4fd"; } + +.fa-hand-dots::before { + content: "\f461"; } + +.fa-allergies::before { + content: "\f461"; } + +.fa-file-invoice::before { + content: "\f570"; } + +.fa-window-minimize::before { + content: "\f2d1"; } + +.fa-mug-saucer::before { + content: "\f0f4"; } + +.fa-coffee::before { + content: "\f0f4"; } + +.fa-brush::before { + content: "\f55d"; } + +.fa-mask::before { + content: "\f6fa"; } + +.fa-magnifying-glass-minus::before { + content: "\f010"; } + +.fa-search-minus::before { + content: "\f010"; } + +.fa-ruler-vertical::before { + content: "\f548"; } + +.fa-user-large::before { + content: "\f406"; } + +.fa-user-alt::before { + content: "\f406"; } + +.fa-train-tram::before { + content: "\e5b4"; } + +.fa-user-nurse::before { + content: "\f82f"; } + +.fa-syringe::before { + content: "\f48e"; } + +.fa-cloud-sun::before { + content: "\f6c4"; } + +.fa-stopwatch-20::before { + content: "\e06f"; } + +.fa-square-full::before { + content: "\f45c"; } + +.fa-magnet::before { + content: "\f076"; } + +.fa-jar::before { + content: "\e516"; } + +.fa-note-sticky::before { + content: "\f249"; } + +.fa-sticky-note::before { + content: "\f249"; } + +.fa-bug-slash::before { + content: "\e490"; } + +.fa-arrow-up-from-water-pump::before { + content: "\e4b6"; } + +.fa-bone::before { + content: "\f5d7"; } + +.fa-user-injured::before { + content: "\f728"; } + +.fa-face-sad-tear::before { + content: "\f5b4"; } + +.fa-sad-tear::before { + content: "\f5b4"; } + +.fa-plane::before { + content: "\f072"; } + +.fa-tent-arrows-down::before { + content: "\e581"; } + +.fa-exclamation::before { + content: "\21"; } + +.fa-arrows-spin::before { + content: "\e4bb"; } + +.fa-print::before { + content: "\f02f"; } + +.fa-turkish-lira-sign::before { + content: "\e2bb"; } + +.fa-try::before { + content: "\e2bb"; } + +.fa-turkish-lira::before { + content: "\e2bb"; } + +.fa-dollar-sign::before { + content: "\24"; } + +.fa-dollar::before { + content: "\24"; } + +.fa-usd::before { + content: "\24"; } + +.fa-x::before { + content: "\58"; } + +.fa-magnifying-glass-dollar::before { + content: "\f688"; } + +.fa-search-dollar::before { + content: "\f688"; } + +.fa-users-gear::before { + content: "\f509"; } + +.fa-users-cog::before { + content: "\f509"; } + +.fa-person-military-pointing::before { + content: "\e54a"; } + +.fa-building-columns::before { + content: "\f19c"; } + +.fa-bank::before { + content: "\f19c"; } + +.fa-institution::before { + content: "\f19c"; } + +.fa-museum::before { + content: "\f19c"; } + +.fa-university::before { + content: "\f19c"; } + +.fa-umbrella::before { + content: "\f0e9"; } + +.fa-trowel::before { + content: "\e589"; } + +.fa-d::before { + content: "\44"; } + +.fa-stapler::before { + content: "\e5af"; } + +.fa-masks-theater::before { + content: "\f630"; } + +.fa-theater-masks::before { + content: "\f630"; } + +.fa-kip-sign::before { + content: "\e1c4"; } + +.fa-hand-point-left::before { + content: "\f0a5"; } + +.fa-handshake-simple::before { + content: "\f4c6"; } + +.fa-handshake-alt::before { + content: "\f4c6"; } + +.fa-jet-fighter::before { + content: "\f0fb"; } + +.fa-fighter-jet::before { + content: "\f0fb"; } + +.fa-square-share-nodes::before { + content: "\f1e1"; } + +.fa-share-alt-square::before { + content: "\f1e1"; } + +.fa-barcode::before { + content: "\f02a"; } + +.fa-plus-minus::before { + content: "\e43c"; } + +.fa-video::before { + content: "\f03d"; } + +.fa-video-camera::before { + content: "\f03d"; } + +.fa-graduation-cap::before { + content: "\f19d"; } + +.fa-mortar-board::before { + content: "\f19d"; } + +.fa-hand-holding-medical::before { + content: "\e05c"; } + +.fa-person-circle-check::before { + content: "\e53e"; } + +.fa-turn-up::before { + content: "\f3bf"; } + +.fa-level-up-alt::before { + content: "\f3bf"; } + +.sr-only, +.fa-sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + white-space: nowrap; + border-width: 0; } + +.sr-only-focusable:not(:focus), +.fa-sr-only-focusable:not(:focus) { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + white-space: nowrap; + border-width: 0; } +:root, :host { + --fa-style-family-brands: 'Font Awesome 6 Brands'; + --fa-font-brands: normal 400 1em/1 'Font Awesome 6 Brands'; } + +@font-face { + font-family: 'Font Awesome 6 Brands'; + font-style: normal; + font-weight: 400; + font-display: block; + src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); } + +.fab, +.fa-brands { + font-weight: 400; } + +.fa-monero:before { + content: "\f3d0"; } + +.fa-hooli:before { + content: "\f427"; } + +.fa-yelp:before { + content: "\f1e9"; } + +.fa-cc-visa:before { + content: "\f1f0"; } + +.fa-lastfm:before { + content: "\f202"; } + +.fa-shopware:before { + content: "\f5b5"; } + +.fa-creative-commons-nc:before { + content: "\f4e8"; } + +.fa-aws:before { + content: "\f375"; } + +.fa-redhat:before { + content: "\f7bc"; } + +.fa-yoast:before { + content: "\f2b1"; } + +.fa-cloudflare:before { + content: "\e07d"; } + +.fa-ups:before { + content: "\f7e0"; } + +.fa-pixiv:before { + content: "\e640"; } + +.fa-wpexplorer:before { + content: "\f2de"; } + +.fa-dyalog:before { + content: "\f399"; } + +.fa-bity:before { + content: "\f37a"; } + +.fa-stackpath:before { + content: "\f842"; } + +.fa-buysellads:before { + content: "\f20d"; } + +.fa-first-order:before { + content: "\f2b0"; } + +.fa-modx:before { + content: "\f285"; } + +.fa-guilded:before { + content: "\e07e"; } + +.fa-vnv:before { + content: "\f40b"; } + +.fa-square-js:before { + content: "\f3b9"; } + +.fa-js-square:before { + content: "\f3b9"; } + +.fa-microsoft:before { + content: "\f3ca"; } + +.fa-qq:before { + content: "\f1d6"; } + +.fa-orcid:before { + content: "\f8d2"; } + +.fa-java:before { + content: "\f4e4"; } + +.fa-invision:before { + content: "\f7b0"; } + +.fa-creative-commons-pd-alt:before { + content: "\f4ed"; } + +.fa-centercode:before { + content: "\f380"; } + +.fa-glide-g:before { + content: "\f2a6"; } + +.fa-drupal:before { + content: "\f1a9"; } + +.fa-jxl:before { + content: "\e67b"; } + +.fa-hire-a-helper:before { + content: "\f3b0"; } + +.fa-creative-commons-by:before { + content: "\f4e7"; } + +.fa-unity:before { + content: "\e049"; } + +.fa-whmcs:before { + content: "\f40d"; } + +.fa-rocketchat:before { + content: "\f3e8"; } + +.fa-vk:before { + content: "\f189"; } + +.fa-untappd:before { + content: "\f405"; } + +.fa-mailchimp:before { + content: "\f59e"; } + +.fa-css3-alt:before { + content: "\f38b"; } + +.fa-square-reddit:before { + content: "\f1a2"; } + +.fa-reddit-square:before { + content: "\f1a2"; } + +.fa-vimeo-v:before { + content: "\f27d"; } + +.fa-contao:before { + content: "\f26d"; } + +.fa-square-font-awesome:before { + content: "\e5ad"; } + +.fa-deskpro:before { + content: "\f38f"; } + +.fa-brave:before { + content: "\e63c"; } + +.fa-sistrix:before { + content: "\f3ee"; } + +.fa-square-instagram:before { + content: "\e055"; } + +.fa-instagram-square:before { + content: "\e055"; } + +.fa-battle-net:before { + content: "\f835"; } + +.fa-the-red-yeti:before { + content: "\f69d"; } + +.fa-square-hacker-news:before { + content: "\f3af"; } + +.fa-hacker-news-square:before { + content: "\f3af"; } + +.fa-edge:before { + content: "\f282"; } + +.fa-threads:before { + content: "\e618"; } + +.fa-napster:before { + content: "\f3d2"; } + +.fa-square-snapchat:before { + content: "\f2ad"; } + +.fa-snapchat-square:before { + content: "\f2ad"; } + +.fa-google-plus-g:before { + content: "\f0d5"; } + +.fa-artstation:before { + content: "\f77a"; } + +.fa-markdown:before { + content: "\f60f"; } + +.fa-sourcetree:before { + content: "\f7d3"; } + +.fa-google-plus:before { + content: "\f2b3"; } + +.fa-diaspora:before { + content: "\f791"; } + +.fa-foursquare:before { + content: "\f180"; } + +.fa-stack-overflow:before { + content: "\f16c"; } + +.fa-github-alt:before { + content: "\f113"; } + +.fa-phoenix-squadron:before { + content: "\f511"; } + +.fa-pagelines:before { + content: "\f18c"; } + +.fa-algolia:before { + content: "\f36c"; } + +.fa-red-river:before { + content: "\f3e3"; } + +.fa-creative-commons-sa:before { + content: "\f4ef"; } + +.fa-safari:before { + content: "\f267"; } + +.fa-google:before { + content: "\f1a0"; } + +.fa-square-font-awesome-stroke:before { + content: "\f35c"; } + +.fa-font-awesome-alt:before { + content: "\f35c"; } + +.fa-atlassian:before { + content: "\f77b"; } + +.fa-linkedin-in:before { + content: "\f0e1"; } + +.fa-digital-ocean:before { + content: "\f391"; } + +.fa-nimblr:before { + content: "\f5a8"; } + +.fa-chromecast:before { + content: "\f838"; } + +.fa-evernote:before { + content: "\f839"; } + +.fa-hacker-news:before { + content: "\f1d4"; } + +.fa-creative-commons-sampling:before { + content: "\f4f0"; } + +.fa-adversal:before { + content: "\f36a"; } + +.fa-creative-commons:before { + content: "\f25e"; } + +.fa-watchman-monitoring:before { + content: "\e087"; } + +.fa-fonticons:before { + content: "\f280"; } + +.fa-weixin:before { + content: "\f1d7"; } + +.fa-shirtsinbulk:before { + content: "\f214"; } + +.fa-codepen:before { + content: "\f1cb"; } + +.fa-git-alt:before { + content: "\f841"; } + +.fa-lyft:before { + content: "\f3c3"; } + +.fa-rev:before { + content: "\f5b2"; } + +.fa-windows:before { + content: "\f17a"; } + +.fa-wizards-of-the-coast:before { + content: "\f730"; } + +.fa-square-viadeo:before { + content: "\f2aa"; } + +.fa-viadeo-square:before { + content: "\f2aa"; } + +.fa-meetup:before { + content: "\f2e0"; } + +.fa-centos:before { + content: "\f789"; } + +.fa-adn:before { + content: "\f170"; } + +.fa-cloudsmith:before { + content: "\f384"; } + +.fa-opensuse:before { + content: "\e62b"; } + +.fa-pied-piper-alt:before { + content: "\f1a8"; } + +.fa-square-dribbble:before { + content: "\f397"; } + +.fa-dribbble-square:before { + content: "\f397"; } + +.fa-codiepie:before { + content: "\f284"; } + +.fa-node:before { + content: "\f419"; } + +.fa-mix:before { + content: "\f3cb"; } + +.fa-steam:before { + content: "\f1b6"; } + +.fa-cc-apple-pay:before { + content: "\f416"; } + +.fa-scribd:before { + content: "\f28a"; } + +.fa-debian:before { + content: "\e60b"; } + +.fa-openid:before { + content: "\f19b"; } + +.fa-instalod:before { + content: "\e081"; } + +.fa-expeditedssl:before { + content: "\f23e"; } + +.fa-sellcast:before { + content: "\f2da"; } + +.fa-square-twitter:before { + content: "\f081"; } + +.fa-twitter-square:before { + content: "\f081"; } + +.fa-r-project:before { + content: "\f4f7"; } + +.fa-delicious:before { + content: "\f1a5"; } + +.fa-freebsd:before { + content: "\f3a4"; } + +.fa-vuejs:before { + content: "\f41f"; } + +.fa-accusoft:before { + content: "\f369"; } + +.fa-ioxhost:before { + content: "\f208"; } + +.fa-fonticons-fi:before { + content: "\f3a2"; } + +.fa-app-store:before { + content: "\f36f"; } + +.fa-cc-mastercard:before { + content: "\f1f1"; } + +.fa-itunes-note:before { + content: "\f3b5"; } + +.fa-golang:before { + content: "\e40f"; } + +.fa-kickstarter:before { + content: "\f3bb"; } + +.fa-square-kickstarter:before { + content: "\f3bb"; } + +.fa-grav:before { + content: "\f2d6"; } + +.fa-weibo:before { + content: "\f18a"; } + +.fa-uncharted:before { + content: "\e084"; } + +.fa-firstdraft:before { + content: "\f3a1"; } + +.fa-square-youtube:before { + content: "\f431"; } + +.fa-youtube-square:before { + content: "\f431"; } + +.fa-wikipedia-w:before { + content: "\f266"; } + +.fa-wpressr:before { + content: "\f3e4"; } + +.fa-rendact:before { + content: "\f3e4"; } + +.fa-angellist:before { + content: "\f209"; } + +.fa-galactic-republic:before { + content: "\f50c"; } + +.fa-nfc-directional:before { + content: "\e530"; } + +.fa-skype:before { + content: "\f17e"; } + +.fa-joget:before { + content: "\f3b7"; } + +.fa-fedora:before { + content: "\f798"; } + +.fa-stripe-s:before { + content: "\f42a"; } + +.fa-meta:before { + content: "\e49b"; } + +.fa-laravel:before { + content: "\f3bd"; } + +.fa-hotjar:before { + content: "\f3b1"; } + +.fa-bluetooth-b:before { + content: "\f294"; } + +.fa-square-letterboxd:before { + content: "\e62e"; } + +.fa-sticker-mule:before { + content: "\f3f7"; } + +.fa-creative-commons-zero:before { + content: "\f4f3"; } + +.fa-hips:before { + content: "\f452"; } + +.fa-behance:before { + content: "\f1b4"; } + +.fa-reddit:before { + content: "\f1a1"; } + +.fa-discord:before { + content: "\f392"; } + +.fa-chrome:before { + content: "\f268"; } + +.fa-app-store-ios:before { + content: "\f370"; } + +.fa-cc-discover:before { + content: "\f1f2"; } + +.fa-wpbeginner:before { + content: "\f297"; } + +.fa-confluence:before { + content: "\f78d"; } + +.fa-shoelace:before { + content: "\e60c"; } + +.fa-mdb:before { + content: "\f8ca"; } + +.fa-dochub:before { + content: "\f394"; } + +.fa-accessible-icon:before { + content: "\f368"; } + +.fa-ebay:before { + content: "\f4f4"; } + +.fa-amazon:before { + content: "\f270"; } + +.fa-unsplash:before { + content: "\e07c"; } + +.fa-yarn:before { + content: "\f7e3"; } + +.fa-square-steam:before { + content: "\f1b7"; } + +.fa-steam-square:before { + content: "\f1b7"; } + +.fa-500px:before { + content: "\f26e"; } + +.fa-square-vimeo:before { + content: "\f194"; } + +.fa-vimeo-square:before { + content: "\f194"; } + +.fa-asymmetrik:before { + content: "\f372"; } + +.fa-font-awesome:before { + content: "\f2b4"; } + +.fa-font-awesome-flag:before { + content: "\f2b4"; } + +.fa-font-awesome-logo-full:before { + content: "\f2b4"; } + +.fa-gratipay:before { + content: "\f184"; } + +.fa-apple:before { + content: "\f179"; } + +.fa-hive:before { + content: "\e07f"; } + +.fa-gitkraken:before { + content: "\f3a6"; } + +.fa-keybase:before { + content: "\f4f5"; } + +.fa-apple-pay:before { + content: "\f415"; } + +.fa-padlet:before { + content: "\e4a0"; } + +.fa-amazon-pay:before { + content: "\f42c"; } + +.fa-square-github:before { + content: "\f092"; } + +.fa-github-square:before { + content: "\f092"; } + +.fa-stumbleupon:before { + content: "\f1a4"; } + +.fa-fedex:before { + content: "\f797"; } + +.fa-phoenix-framework:before { + content: "\f3dc"; } + +.fa-shopify:before { + content: "\e057"; } + +.fa-neos:before { + content: "\f612"; } + +.fa-square-threads:before { + content: "\e619"; } + +.fa-hackerrank:before { + content: "\f5f7"; } + +.fa-researchgate:before { + content: "\f4f8"; } + +.fa-swift:before { + content: "\f8e1"; } + +.fa-angular:before { + content: "\f420"; } + +.fa-speakap:before { + content: "\f3f3"; } + +.fa-angrycreative:before { + content: "\f36e"; } + +.fa-y-combinator:before { + content: "\f23b"; } + +.fa-empire:before { + content: "\f1d1"; } + +.fa-envira:before { + content: "\f299"; } + +.fa-google-scholar:before { + content: "\e63b"; } + +.fa-square-gitlab:before { + content: "\e5ae"; } + +.fa-gitlab-square:before { + content: "\e5ae"; } + +.fa-studiovinari:before { + content: "\f3f8"; } + +.fa-pied-piper:before { + content: "\f2ae"; } + +.fa-wordpress:before { + content: "\f19a"; } + +.fa-product-hunt:before { + content: "\f288"; } + +.fa-firefox:before { + content: "\f269"; } + +.fa-linode:before { + content: "\f2b8"; } + +.fa-goodreads:before { + content: "\f3a8"; } + +.fa-square-odnoklassniki:before { + content: "\f264"; } + +.fa-odnoklassniki-square:before { + content: "\f264"; } + +.fa-jsfiddle:before { + content: "\f1cc"; } + +.fa-sith:before { + content: "\f512"; } + +.fa-themeisle:before { + content: "\f2b2"; } + +.fa-page4:before { + content: "\f3d7"; } + +.fa-hashnode:before { + content: "\e499"; } + +.fa-react:before { + content: "\f41b"; } + +.fa-cc-paypal:before { + content: "\f1f4"; } + +.fa-squarespace:before { + content: "\f5be"; } + +.fa-cc-stripe:before { + content: "\f1f5"; } + +.fa-creative-commons-share:before { + content: "\f4f2"; } + +.fa-bitcoin:before { + content: "\f379"; } + +.fa-keycdn:before { + content: "\f3ba"; } + +.fa-opera:before { + content: "\f26a"; } + +.fa-itch-io:before { + content: "\f83a"; } + +.fa-umbraco:before { + content: "\f8e8"; } + +.fa-galactic-senate:before { + content: "\f50d"; } + +.fa-ubuntu:before { + content: "\f7df"; } + +.fa-draft2digital:before { + content: "\f396"; } + +.fa-stripe:before { + content: "\f429"; } + +.fa-houzz:before { + content: "\f27c"; } + +.fa-gg:before { + content: "\f260"; } + +.fa-dhl:before { + content: "\f790"; } + +.fa-square-pinterest:before { + content: "\f0d3"; } + +.fa-pinterest-square:before { + content: "\f0d3"; } + +.fa-xing:before { + content: "\f168"; } + +.fa-blackberry:before { + content: "\f37b"; } + +.fa-creative-commons-pd:before { + content: "\f4ec"; } + +.fa-playstation:before { + content: "\f3df"; } + +.fa-quinscape:before { + content: "\f459"; } + +.fa-less:before { + content: "\f41d"; } + +.fa-blogger-b:before { + content: "\f37d"; } + +.fa-opencart:before { + content: "\f23d"; } + +.fa-vine:before { + content: "\f1ca"; } + +.fa-signal-messenger:before { + content: "\e663"; } + +.fa-paypal:before { + content: "\f1ed"; } + +.fa-gitlab:before { + content: "\f296"; } + +.fa-typo3:before { + content: "\f42b"; } + +.fa-reddit-alien:before { + content: "\f281"; } + +.fa-yahoo:before { + content: "\f19e"; } + +.fa-dailymotion:before { + content: "\e052"; } + +.fa-affiliatetheme:before { + content: "\f36b"; } + +.fa-pied-piper-pp:before { + content: "\f1a7"; } + +.fa-bootstrap:before { + content: "\f836"; } + +.fa-odnoklassniki:before { + content: "\f263"; } + +.fa-nfc-symbol:before { + content: "\e531"; } + +.fa-mintbit:before { + content: "\e62f"; } + +.fa-ethereum:before { + content: "\f42e"; } + +.fa-speaker-deck:before { + content: "\f83c"; } + +.fa-creative-commons-nc-eu:before { + content: "\f4e9"; } + +.fa-patreon:before { + content: "\f3d9"; } + +.fa-avianex:before { + content: "\f374"; } + +.fa-ello:before { + content: "\f5f1"; } + +.fa-gofore:before { + content: "\f3a7"; } + +.fa-bimobject:before { + content: "\f378"; } + +.fa-brave-reverse:before { + content: "\e63d"; } + +.fa-facebook-f:before { + content: "\f39e"; } + +.fa-square-google-plus:before { + content: "\f0d4"; } + +.fa-google-plus-square:before { + content: "\f0d4"; } + +.fa-web-awesome:before { + content: "\e682"; } + +.fa-mandalorian:before { + content: "\f50f"; } + +.fa-first-order-alt:before { + content: "\f50a"; } + +.fa-osi:before { + content: "\f41a"; } + +.fa-google-wallet:before { + content: "\f1ee"; } + +.fa-d-and-d-beyond:before { + content: "\f6ca"; } + +.fa-periscope:before { + content: "\f3da"; } + +.fa-fulcrum:before { + content: "\f50b"; } + +.fa-cloudscale:before { + content: "\f383"; } + +.fa-forumbee:before { + content: "\f211"; } + +.fa-mizuni:before { + content: "\f3cc"; } + +.fa-schlix:before { + content: "\f3ea"; } + +.fa-square-xing:before { + content: "\f169"; } + +.fa-xing-square:before { + content: "\f169"; } + +.fa-bandcamp:before { + content: "\f2d5"; } + +.fa-wpforms:before { + content: "\f298"; } + +.fa-cloudversify:before { + content: "\f385"; } + +.fa-usps:before { + content: "\f7e1"; } + +.fa-megaport:before { + content: "\f5a3"; } + +.fa-magento:before { + content: "\f3c4"; } + +.fa-spotify:before { + content: "\f1bc"; } + +.fa-optin-monster:before { + content: "\f23c"; } + +.fa-fly:before { + content: "\f417"; } + +.fa-aviato:before { + content: "\f421"; } + +.fa-itunes:before { + content: "\f3b4"; } + +.fa-cuttlefish:before { + content: "\f38c"; } + +.fa-blogger:before { + content: "\f37c"; } + +.fa-flickr:before { + content: "\f16e"; } + +.fa-viber:before { + content: "\f409"; } + +.fa-soundcloud:before { + content: "\f1be"; } + +.fa-digg:before { + content: "\f1a6"; } + +.fa-tencent-weibo:before { + content: "\f1d5"; } + +.fa-letterboxd:before { + content: "\e62d"; } + +.fa-symfony:before { + content: "\f83d"; } + +.fa-maxcdn:before { + content: "\f136"; } + +.fa-etsy:before { + content: "\f2d7"; } + +.fa-facebook-messenger:before { + content: "\f39f"; } + +.fa-audible:before { + content: "\f373"; } + +.fa-think-peaks:before { + content: "\f731"; } + +.fa-bilibili:before { + content: "\e3d9"; } + +.fa-erlang:before { + content: "\f39d"; } + +.fa-x-twitter:before { + content: "\e61b"; } + +.fa-cotton-bureau:before { + content: "\f89e"; } + +.fa-dashcube:before { + content: "\f210"; } + +.fa-42-group:before { + content: "\e080"; } + +.fa-innosoft:before { + content: "\e080"; } + +.fa-stack-exchange:before { + content: "\f18d"; } + +.fa-elementor:before { + content: "\f430"; } + +.fa-square-pied-piper:before { + content: "\e01e"; } + +.fa-pied-piper-square:before { + content: "\e01e"; } + +.fa-creative-commons-nd:before { + content: "\f4eb"; } + +.fa-palfed:before { + content: "\f3d8"; } + +.fa-superpowers:before { + content: "\f2dd"; } + +.fa-resolving:before { + content: "\f3e7"; } + +.fa-xbox:before { + content: "\f412"; } + +.fa-square-web-awesome-stroke:before { + content: "\e684"; } + +.fa-searchengin:before { + content: "\f3eb"; } + +.fa-tiktok:before { + content: "\e07b"; } + +.fa-square-facebook:before { + content: "\f082"; } + +.fa-facebook-square:before { + content: "\f082"; } + +.fa-renren:before { + content: "\f18b"; } + +.fa-linux:before { + content: "\f17c"; } + +.fa-glide:before { + content: "\f2a5"; } + +.fa-linkedin:before { + content: "\f08c"; } + +.fa-hubspot:before { + content: "\f3b2"; } + +.fa-deploydog:before { + content: "\f38e"; } + +.fa-twitch:before { + content: "\f1e8"; } + +.fa-ravelry:before { + content: "\f2d9"; } + +.fa-mixer:before { + content: "\e056"; } + +.fa-square-lastfm:before { + content: "\f203"; } + +.fa-lastfm-square:before { + content: "\f203"; } + +.fa-vimeo:before { + content: "\f40a"; } + +.fa-mendeley:before { + content: "\f7b3"; } + +.fa-uniregistry:before { + content: "\f404"; } + +.fa-figma:before { + content: "\f799"; } + +.fa-creative-commons-remix:before { + content: "\f4ee"; } + +.fa-cc-amazon-pay:before { + content: "\f42d"; } + +.fa-dropbox:before { + content: "\f16b"; } + +.fa-instagram:before { + content: "\f16d"; } + +.fa-cmplid:before { + content: "\e360"; } + +.fa-upwork:before { + content: "\e641"; } + +.fa-facebook:before { + content: "\f09a"; } + +.fa-gripfire:before { + content: "\f3ac"; } + +.fa-jedi-order:before { + content: "\f50e"; } + +.fa-uikit:before { + content: "\f403"; } + +.fa-fort-awesome-alt:before { + content: "\f3a3"; } + +.fa-phabricator:before { + content: "\f3db"; } + +.fa-ussunnah:before { + content: "\f407"; } + +.fa-earlybirds:before { + content: "\f39a"; } + +.fa-trade-federation:before { + content: "\f513"; } + +.fa-autoprefixer:before { + content: "\f41c"; } + +.fa-whatsapp:before { + content: "\f232"; } + +.fa-square-upwork:before { + content: "\e67c"; } + +.fa-slideshare:before { + content: "\f1e7"; } + +.fa-google-play:before { + content: "\f3ab"; } + +.fa-viadeo:before { + content: "\f2a9"; } + +.fa-line:before { + content: "\f3c0"; } + +.fa-google-drive:before { + content: "\f3aa"; } + +.fa-servicestack:before { + content: "\f3ec"; } + +.fa-simplybuilt:before { + content: "\f215"; } + +.fa-bitbucket:before { + content: "\f171"; } + +.fa-imdb:before { + content: "\f2d8"; } + +.fa-deezer:before { + content: "\e077"; } + +.fa-raspberry-pi:before { + content: "\f7bb"; } + +.fa-jira:before { + content: "\f7b1"; } + +.fa-docker:before { + content: "\f395"; } + +.fa-screenpal:before { + content: "\e570"; } + +.fa-bluetooth:before { + content: "\f293"; } + +.fa-gitter:before { + content: "\f426"; } + +.fa-d-and-d:before { + content: "\f38d"; } + +.fa-microblog:before { + content: "\e01a"; } + +.fa-cc-diners-club:before { + content: "\f24c"; } + +.fa-gg-circle:before { + content: "\f261"; } + +.fa-pied-piper-hat:before { + content: "\f4e5"; } + +.fa-kickstarter-k:before { + content: "\f3bc"; } + +.fa-yandex:before { + content: "\f413"; } + +.fa-readme:before { + content: "\f4d5"; } + +.fa-html5:before { + content: "\f13b"; } + +.fa-sellsy:before { + content: "\f213"; } + +.fa-square-web-awesome:before { + content: "\e683"; } + +.fa-sass:before { + content: "\f41e"; } + +.fa-wirsindhandwerk:before { + content: "\e2d0"; } + +.fa-wsh:before { + content: "\e2d0"; } + +.fa-buromobelexperte:before { + content: "\f37f"; } + +.fa-salesforce:before { + content: "\f83b"; } + +.fa-octopus-deploy:before { + content: "\e082"; } + +.fa-medapps:before { + content: "\f3c6"; } + +.fa-ns8:before { + content: "\f3d5"; } + +.fa-pinterest-p:before { + content: "\f231"; } + +.fa-apper:before { + content: "\f371"; } + +.fa-fort-awesome:before { + content: "\f286"; } + +.fa-waze:before { + content: "\f83f"; } + +.fa-bluesky:before { + content: "\e671"; } + +.fa-cc-jcb:before { + content: "\f24b"; } + +.fa-snapchat:before { + content: "\f2ab"; } + +.fa-snapchat-ghost:before { + content: "\f2ab"; } + +.fa-fantasy-flight-games:before { + content: "\f6dc"; } + +.fa-rust:before { + content: "\e07a"; } + +.fa-wix:before { + content: "\f5cf"; } + +.fa-square-behance:before { + content: "\f1b5"; } + +.fa-behance-square:before { + content: "\f1b5"; } + +.fa-supple:before { + content: "\f3f9"; } + +.fa-webflow:before { + content: "\e65c"; } + +.fa-rebel:before { + content: "\f1d0"; } + +.fa-css3:before { + content: "\f13c"; } + +.fa-staylinked:before { + content: "\f3f5"; } + +.fa-kaggle:before { + content: "\f5fa"; } + +.fa-space-awesome:before { + content: "\e5ac"; } + +.fa-deviantart:before { + content: "\f1bd"; } + +.fa-cpanel:before { + content: "\f388"; } + +.fa-goodreads-g:before { + content: "\f3a9"; } + +.fa-square-git:before { + content: "\f1d2"; } + +.fa-git-square:before { + content: "\f1d2"; } + +.fa-square-tumblr:before { + content: "\f174"; } + +.fa-tumblr-square:before { + content: "\f174"; } + +.fa-trello:before { + content: "\f181"; } + +.fa-creative-commons-nc-jp:before { + content: "\f4ea"; } + +.fa-get-pocket:before { + content: "\f265"; } + +.fa-perbyte:before { + content: "\e083"; } + +.fa-grunt:before { + content: "\f3ad"; } + +.fa-weebly:before { + content: "\f5cc"; } + +.fa-connectdevelop:before { + content: "\f20e"; } + +.fa-leanpub:before { + content: "\f212"; } + +.fa-black-tie:before { + content: "\f27e"; } + +.fa-themeco:before { + content: "\f5c6"; } + +.fa-python:before { + content: "\f3e2"; } + +.fa-android:before { + content: "\f17b"; } + +.fa-bots:before { + content: "\e340"; } + +.fa-free-code-camp:before { + content: "\f2c5"; } + +.fa-hornbill:before { + content: "\f592"; } + +.fa-js:before { + content: "\f3b8"; } + +.fa-ideal:before { + content: "\e013"; } + +.fa-git:before { + content: "\f1d3"; } + +.fa-dev:before { + content: "\f6cc"; } + +.fa-sketch:before { + content: "\f7c6"; } + +.fa-yandex-international:before { + content: "\f414"; } + +.fa-cc-amex:before { + content: "\f1f3"; } + +.fa-uber:before { + content: "\f402"; } + +.fa-github:before { + content: "\f09b"; } + +.fa-php:before { + content: "\f457"; } + +.fa-alipay:before { + content: "\f642"; } + +.fa-youtube:before { + content: "\f167"; } + +.fa-skyatlas:before { + content: "\f216"; } + +.fa-firefox-browser:before { + content: "\e007"; } + +.fa-replyd:before { + content: "\f3e6"; } + +.fa-suse:before { + content: "\f7d6"; } + +.fa-jenkins:before { + content: "\f3b6"; } + +.fa-twitter:before { + content: "\f099"; } + +.fa-rockrms:before { + content: "\f3e9"; } + +.fa-pinterest:before { + content: "\f0d2"; } + +.fa-buffer:before { + content: "\f837"; } + +.fa-npm:before { + content: "\f3d4"; } + +.fa-yammer:before { + content: "\f840"; } + +.fa-btc:before { + content: "\f15a"; } + +.fa-dribbble:before { + content: "\f17d"; } + +.fa-stumbleupon-circle:before { + content: "\f1a3"; } + +.fa-internet-explorer:before { + content: "\f26b"; } + +.fa-stubber:before { + content: "\e5c7"; } + +.fa-telegram:before { + content: "\f2c6"; } + +.fa-telegram-plane:before { + content: "\f2c6"; } + +.fa-old-republic:before { + content: "\f510"; } + +.fa-odysee:before { + content: "\e5c6"; } + +.fa-square-whatsapp:before { + content: "\f40c"; } + +.fa-whatsapp-square:before { + content: "\f40c"; } + +.fa-node-js:before { + content: "\f3d3"; } + +.fa-edge-legacy:before { + content: "\e078"; } + +.fa-slack:before { + content: "\f198"; } + +.fa-slack-hash:before { + content: "\f198"; } + +.fa-medrt:before { + content: "\f3c8"; } + +.fa-usb:before { + content: "\f287"; } + +.fa-tumblr:before { + content: "\f173"; } + +.fa-vaadin:before { + content: "\f408"; } + +.fa-quora:before { + content: "\f2c4"; } + +.fa-square-x-twitter:before { + content: "\e61a"; } + +.fa-reacteurope:before { + content: "\f75d"; } + +.fa-medium:before { + content: "\f23a"; } + +.fa-medium-m:before { + content: "\f23a"; } + +.fa-amilia:before { + content: "\f36d"; } + +.fa-mixcloud:before { + content: "\f289"; } + +.fa-flipboard:before { + content: "\f44d"; } + +.fa-viacoin:before { + content: "\f237"; } + +.fa-critical-role:before { + content: "\f6c9"; } + +.fa-sitrox:before { + content: "\e44a"; } + +.fa-discourse:before { + content: "\f393"; } + +.fa-joomla:before { + content: "\f1aa"; } + +.fa-mastodon:before { + content: "\f4f6"; } + +.fa-airbnb:before { + content: "\f834"; } + +.fa-wolf-pack-battalion:before { + content: "\f514"; } + +.fa-buy-n-large:before { + content: "\f8a6"; } + +.fa-gulp:before { + content: "\f3ae"; } + +.fa-creative-commons-sampling-plus:before { + content: "\f4f1"; } + +.fa-strava:before { + content: "\f428"; } + +.fa-ember:before { + content: "\f423"; } + +.fa-canadian-maple-leaf:before { + content: "\f785"; } + +.fa-teamspeak:before { + content: "\f4f9"; } + +.fa-pushed:before { + content: "\f3e1"; } + +.fa-wordpress-simple:before { + content: "\f411"; } + +.fa-nutritionix:before { + content: "\f3d6"; } + +.fa-wodu:before { + content: "\e088"; } + +.fa-google-pay:before { + content: "\e079"; } + +.fa-intercom:before { + content: "\f7af"; } + +.fa-zhihu:before { + content: "\f63f"; } + +.fa-korvue:before { + content: "\f42f"; } + +.fa-pix:before { + content: "\e43a"; } + +.fa-steam-symbol:before { + content: "\f3f6"; } +:root, :host { + --fa-style-family-classic: 'Font Awesome 6 Free'; + --fa-font-regular: normal 400 1em/1 'Font Awesome 6 Free'; } + +@font-face { + font-family: 'Font Awesome 6 Free'; + font-style: normal; + font-weight: 400; + font-display: block; + src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); } + +.far, +.fa-regular { + font-weight: 400; } +:root, :host { + --fa-style-family-classic: 'Font Awesome 6 Free'; + --fa-font-solid: normal 900 1em/1 'Font Awesome 6 Free'; } + +@font-face { + font-family: 'Font Awesome 6 Free'; + font-style: normal; + font-weight: 900; + font-display: block; + src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); } + +.fas, +.fa-solid { + font-weight: 900; } +@font-face { + font-family: 'Font Awesome 5 Brands'; + font-display: block; + font-weight: 400; + src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); } + +@font-face { + font-family: 'Font Awesome 5 Free'; + font-display: block; + font-weight: 900; + src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); } + +@font-face { + font-family: 'Font Awesome 5 Free'; + font-display: block; + font-weight: 400; + src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); } +@font-face { + font-family: 'FontAwesome'; + font-display: block; + src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); } + +@font-face { + font-family: 'FontAwesome'; + font-display: block; + src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); } + +@font-face { + font-family: 'FontAwesome'; + font-display: block; + src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); } + +@font-face { + font-family: 'FontAwesome'; + font-display: block; + src: url("../webfonts/fa-v4compatibility.woff2") format("woff2"), url("../webfonts/fa-v4compatibility.ttf") format("truetype"); } diff --git a/docs/deps/font-awesome-6.5.2/css/all.min.css b/docs/deps/font-awesome-6.5.2/css/all.min.css new file mode 100644 index 0000000..269bcee --- /dev/null +++ b/docs/deps/font-awesome-6.5.2/css/all.min.css @@ -0,0 +1,9 @@ +/*! + * Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + * Copyright 2024 Fonticons, Inc. + */ +.fa{font-family:var(--fa-style-family,"Font Awesome 6 Free");font-weight:var(--fa-style,900)}.fa,.fa-brands,.fa-classic,.fa-regular,.fa-sharp,.fa-solid,.fab,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:var(--fa-display,inline-block);font-style:normal;font-variant:normal;line-height:1;text-rendering:auto}.fa-classic,.fa-regular,.fa-solid,.far,.fas{font-family:"Font Awesome 6 Free"}.fa-brands,.fab{font-family:"Font Awesome 6 Brands"}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.08em) var(--fa-border-style,solid) var(--fa-border-color,#eee);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{-webkit-animation-name:fa-beat;animation-name:fa-beat;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{-webkit-animation-name:fa-bounce;animation-name:fa-bounce;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{-webkit-animation-name:fa-fade;animation-name:fa-fade;-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{-webkit-animation-name:fa-beat-fade;animation-name:fa-beat-fade;-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{-webkit-animation-name:fa-flip;animation-name:fa-flip;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{-webkit-animation-name:fa-shake;animation-name:fa-shake;-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-duration:var(--fa-animation-duration,2s);animation-duration:var(--fa-animation-duration,2s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,steps(8));animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{-webkit-animation-delay:-1ms;animation-delay:-1ms;-webkit-animation-duration:1ms;animation-duration:1ms;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-transition-delay:0s;transition-delay:0s;-webkit-transition-duration:0s;transition-duration:0s}}@-webkit-keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@-webkit-keyframes fa-bounce{0%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}to{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@keyframes fa-bounce{0%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}to{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@-webkit-keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@-webkit-keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@-webkit-keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@-webkit-keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}8%,24%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}8%,24%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}.fa-rotate-by{-webkit-transform:rotate(var(--fa-rotate-angle,0));transform:rotate(var(--fa-rotate-angle,0))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%;z-index:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:var(--fa-inverse,#fff)} + +.fa-0:before{content:"\30"}.fa-1:before{content:"\31"}.fa-2:before{content:"\32"}.fa-3:before{content:"\33"}.fa-4:before{content:"\34"}.fa-5:before{content:"\35"}.fa-6:before{content:"\36"}.fa-7:before{content:"\37"}.fa-8:before{content:"\38"}.fa-9:before{content:"\39"}.fa-fill-drip:before{content:"\f576"}.fa-arrows-to-circle:before{content:"\e4bd"}.fa-chevron-circle-right:before,.fa-circle-chevron-right:before{content:"\f138"}.fa-at:before{content:"\40"}.fa-trash-alt:before,.fa-trash-can:before{content:"\f2ed"}.fa-text-height:before{content:"\f034"}.fa-user-times:before,.fa-user-xmark:before{content:"\f235"}.fa-stethoscope:before{content:"\f0f1"}.fa-comment-alt:before,.fa-message:before{content:"\f27a"}.fa-info:before{content:"\f129"}.fa-compress-alt:before,.fa-down-left-and-up-right-to-center:before{content:"\f422"}.fa-explosion:before{content:"\e4e9"}.fa-file-alt:before,.fa-file-lines:before,.fa-file-text:before{content:"\f15c"}.fa-wave-square:before{content:"\f83e"}.fa-ring:before{content:"\f70b"}.fa-building-un:before{content:"\e4d9"}.fa-dice-three:before{content:"\f527"}.fa-calendar-alt:before,.fa-calendar-days:before{content:"\f073"}.fa-anchor-circle-check:before{content:"\e4aa"}.fa-building-circle-arrow-right:before{content:"\e4d1"}.fa-volleyball-ball:before,.fa-volleyball:before{content:"\f45f"}.fa-arrows-up-to-line:before{content:"\e4c2"}.fa-sort-desc:before,.fa-sort-down:before{content:"\f0dd"}.fa-circle-minus:before,.fa-minus-circle:before{content:"\f056"}.fa-door-open:before{content:"\f52b"}.fa-right-from-bracket:before,.fa-sign-out-alt:before{content:"\f2f5"}.fa-atom:before{content:"\f5d2"}.fa-soap:before{content:"\e06e"}.fa-heart-music-camera-bolt:before,.fa-icons:before{content:"\f86d"}.fa-microphone-alt-slash:before,.fa-microphone-lines-slash:before{content:"\f539"}.fa-bridge-circle-check:before{content:"\e4c9"}.fa-pump-medical:before{content:"\e06a"}.fa-fingerprint:before{content:"\f577"}.fa-hand-point-right:before{content:"\f0a4"}.fa-magnifying-glass-location:before,.fa-search-location:before{content:"\f689"}.fa-forward-step:before,.fa-step-forward:before{content:"\f051"}.fa-face-smile-beam:before,.fa-smile-beam:before{content:"\f5b8"}.fa-flag-checkered:before{content:"\f11e"}.fa-football-ball:before,.fa-football:before{content:"\f44e"}.fa-school-circle-exclamation:before{content:"\e56c"}.fa-crop:before{content:"\f125"}.fa-angle-double-down:before,.fa-angles-down:before{content:"\f103"}.fa-users-rectangle:before{content:"\e594"}.fa-people-roof:before{content:"\e537"}.fa-people-line:before{content:"\e534"}.fa-beer-mug-empty:before,.fa-beer:before{content:"\f0fc"}.fa-diagram-predecessor:before{content:"\e477"}.fa-arrow-up-long:before,.fa-long-arrow-up:before{content:"\f176"}.fa-burn:before,.fa-fire-flame-simple:before{content:"\f46a"}.fa-male:before,.fa-person:before{content:"\f183"}.fa-laptop:before{content:"\f109"}.fa-file-csv:before{content:"\f6dd"}.fa-menorah:before{content:"\f676"}.fa-truck-plane:before{content:"\e58f"}.fa-record-vinyl:before{content:"\f8d9"}.fa-face-grin-stars:before,.fa-grin-stars:before{content:"\f587"}.fa-bong:before{content:"\f55c"}.fa-pastafarianism:before,.fa-spaghetti-monster-flying:before{content:"\f67b"}.fa-arrow-down-up-across-line:before{content:"\e4af"}.fa-spoon:before,.fa-utensil-spoon:before{content:"\f2e5"}.fa-jar-wheat:before{content:"\e517"}.fa-envelopes-bulk:before,.fa-mail-bulk:before{content:"\f674"}.fa-file-circle-exclamation:before{content:"\e4eb"}.fa-circle-h:before,.fa-hospital-symbol:before{content:"\f47e"}.fa-pager:before{content:"\f815"}.fa-address-book:before,.fa-contact-book:before{content:"\f2b9"}.fa-strikethrough:before{content:"\f0cc"}.fa-k:before{content:"\4b"}.fa-landmark-flag:before{content:"\e51c"}.fa-pencil-alt:before,.fa-pencil:before{content:"\f303"}.fa-backward:before{content:"\f04a"}.fa-caret-right:before{content:"\f0da"}.fa-comments:before{content:"\f086"}.fa-file-clipboard:before,.fa-paste:before{content:"\f0ea"}.fa-code-pull-request:before{content:"\e13c"}.fa-clipboard-list:before{content:"\f46d"}.fa-truck-loading:before,.fa-truck-ramp-box:before{content:"\f4de"}.fa-user-check:before{content:"\f4fc"}.fa-vial-virus:before{content:"\e597"}.fa-sheet-plastic:before{content:"\e571"}.fa-blog:before{content:"\f781"}.fa-user-ninja:before{content:"\f504"}.fa-person-arrow-up-from-line:before{content:"\e539"}.fa-scroll-torah:before,.fa-torah:before{content:"\f6a0"}.fa-broom-ball:before,.fa-quidditch-broom-ball:before,.fa-quidditch:before{content:"\f458"}.fa-toggle-off:before{content:"\f204"}.fa-archive:before,.fa-box-archive:before{content:"\f187"}.fa-person-drowning:before{content:"\e545"}.fa-arrow-down-9-1:before,.fa-sort-numeric-desc:before,.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-face-grin-tongue-squint:before,.fa-grin-tongue-squint:before{content:"\f58a"}.fa-spray-can:before{content:"\f5bd"}.fa-truck-monster:before{content:"\f63b"}.fa-w:before{content:"\57"}.fa-earth-africa:before,.fa-globe-africa:before{content:"\f57c"}.fa-rainbow:before{content:"\f75b"}.fa-circle-notch:before{content:"\f1ce"}.fa-tablet-alt:before,.fa-tablet-screen-button:before{content:"\f3fa"}.fa-paw:before{content:"\f1b0"}.fa-cloud:before{content:"\f0c2"}.fa-trowel-bricks:before{content:"\e58a"}.fa-face-flushed:before,.fa-flushed:before{content:"\f579"}.fa-hospital-user:before{content:"\f80d"}.fa-tent-arrow-left-right:before{content:"\e57f"}.fa-gavel:before,.fa-legal:before{content:"\f0e3"}.fa-binoculars:before{content:"\f1e5"}.fa-microphone-slash:before{content:"\f131"}.fa-box-tissue:before{content:"\e05b"}.fa-motorcycle:before{content:"\f21c"}.fa-bell-concierge:before,.fa-concierge-bell:before{content:"\f562"}.fa-pen-ruler:before,.fa-pencil-ruler:before{content:"\f5ae"}.fa-people-arrows-left-right:before,.fa-people-arrows:before{content:"\e068"}.fa-mars-and-venus-burst:before{content:"\e523"}.fa-caret-square-right:before,.fa-square-caret-right:before{content:"\f152"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-sun-plant-wilt:before{content:"\e57a"}.fa-toilets-portable:before{content:"\e584"}.fa-hockey-puck:before{content:"\f453"}.fa-table:before{content:"\f0ce"}.fa-magnifying-glass-arrow-right:before{content:"\e521"}.fa-digital-tachograph:before,.fa-tachograph-digital:before{content:"\f566"}.fa-users-slash:before{content:"\e073"}.fa-clover:before{content:"\e139"}.fa-mail-reply:before,.fa-reply:before{content:"\f3e5"}.fa-star-and-crescent:before{content:"\f699"}.fa-house-fire:before{content:"\e50c"}.fa-minus-square:before,.fa-square-minus:before{content:"\f146"}.fa-helicopter:before{content:"\f533"}.fa-compass:before{content:"\f14e"}.fa-caret-square-down:before,.fa-square-caret-down:before{content:"\f150"}.fa-file-circle-question:before{content:"\e4ef"}.fa-laptop-code:before{content:"\f5fc"}.fa-swatchbook:before{content:"\f5c3"}.fa-prescription-bottle:before{content:"\f485"}.fa-bars:before,.fa-navicon:before{content:"\f0c9"}.fa-people-group:before{content:"\e533"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-heart-broken:before,.fa-heart-crack:before{content:"\f7a9"}.fa-external-link-square-alt:before,.fa-square-up-right:before{content:"\f360"}.fa-face-kiss-beam:before,.fa-kiss-beam:before{content:"\f597"}.fa-film:before{content:"\f008"}.fa-ruler-horizontal:before{content:"\f547"}.fa-people-robbery:before{content:"\e536"}.fa-lightbulb:before{content:"\f0eb"}.fa-caret-left:before{content:"\f0d9"}.fa-circle-exclamation:before,.fa-exclamation-circle:before{content:"\f06a"}.fa-school-circle-xmark:before{content:"\e56d"}.fa-arrow-right-from-bracket:before,.fa-sign-out:before{content:"\f08b"}.fa-chevron-circle-down:before,.fa-circle-chevron-down:before{content:"\f13a"}.fa-unlock-alt:before,.fa-unlock-keyhole:before{content:"\f13e"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-headphones-alt:before,.fa-headphones-simple:before{content:"\f58f"}.fa-sitemap:before{content:"\f0e8"}.fa-circle-dollar-to-slot:before,.fa-donate:before{content:"\f4b9"}.fa-memory:before{content:"\f538"}.fa-road-spikes:before{content:"\e568"}.fa-fire-burner:before{content:"\e4f1"}.fa-flag:before{content:"\f024"}.fa-hanukiah:before{content:"\f6e6"}.fa-feather:before{content:"\f52d"}.fa-volume-down:before,.fa-volume-low:before{content:"\f027"}.fa-comment-slash:before{content:"\f4b3"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-compress:before{content:"\f066"}.fa-wheat-alt:before,.fa-wheat-awn:before{content:"\e2cd"}.fa-ankh:before{content:"\f644"}.fa-hands-holding-child:before{content:"\e4fa"}.fa-asterisk:before{content:"\2a"}.fa-check-square:before,.fa-square-check:before{content:"\f14a"}.fa-peseta-sign:before{content:"\e221"}.fa-header:before,.fa-heading:before{content:"\f1dc"}.fa-ghost:before{content:"\f6e2"}.fa-list-squares:before,.fa-list:before{content:"\f03a"}.fa-phone-square-alt:before,.fa-square-phone-flip:before{content:"\f87b"}.fa-cart-plus:before{content:"\f217"}.fa-gamepad:before{content:"\f11b"}.fa-circle-dot:before,.fa-dot-circle:before{content:"\f192"}.fa-dizzy:before,.fa-face-dizzy:before{content:"\f567"}.fa-egg:before{content:"\f7fb"}.fa-house-medical-circle-xmark:before{content:"\e513"}.fa-campground:before{content:"\f6bb"}.fa-folder-plus:before{content:"\f65e"}.fa-futbol-ball:before,.fa-futbol:before,.fa-soccer-ball:before{content:"\f1e3"}.fa-paint-brush:before,.fa-paintbrush:before{content:"\f1fc"}.fa-lock:before{content:"\f023"}.fa-gas-pump:before{content:"\f52f"}.fa-hot-tub-person:before,.fa-hot-tub:before{content:"\f593"}.fa-map-location:before,.fa-map-marked:before{content:"\f59f"}.fa-house-flood-water:before{content:"\e50e"}.fa-tree:before{content:"\f1bb"}.fa-bridge-lock:before{content:"\e4cc"}.fa-sack-dollar:before{content:"\f81d"}.fa-edit:before,.fa-pen-to-square:before{content:"\f044"}.fa-car-side:before{content:"\f5e4"}.fa-share-alt:before,.fa-share-nodes:before{content:"\f1e0"}.fa-heart-circle-minus:before{content:"\e4ff"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-microscope:before{content:"\f610"}.fa-sink:before{content:"\e06d"}.fa-bag-shopping:before,.fa-shopping-bag:before{content:"\f290"}.fa-arrow-down-z-a:before,.fa-sort-alpha-desc:before,.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-mitten:before{content:"\f7b5"}.fa-person-rays:before{content:"\e54d"}.fa-users:before{content:"\f0c0"}.fa-eye-slash:before{content:"\f070"}.fa-flask-vial:before{content:"\e4f3"}.fa-hand-paper:before,.fa-hand:before{content:"\f256"}.fa-om:before{content:"\f679"}.fa-worm:before{content:"\e599"}.fa-house-circle-xmark:before{content:"\e50b"}.fa-plug:before{content:"\f1e6"}.fa-chevron-up:before{content:"\f077"}.fa-hand-spock:before{content:"\f259"}.fa-stopwatch:before{content:"\f2f2"}.fa-face-kiss:before,.fa-kiss:before{content:"\f596"}.fa-bridge-circle-xmark:before{content:"\e4cb"}.fa-face-grin-tongue:before,.fa-grin-tongue:before{content:"\f589"}.fa-chess-bishop:before{content:"\f43a"}.fa-face-grin-wink:before,.fa-grin-wink:before{content:"\f58c"}.fa-deaf:before,.fa-deafness:before,.fa-ear-deaf:before,.fa-hard-of-hearing:before{content:"\f2a4"}.fa-road-circle-check:before{content:"\e564"}.fa-dice-five:before{content:"\f523"}.fa-rss-square:before,.fa-square-rss:before{content:"\f143"}.fa-land-mine-on:before{content:"\e51b"}.fa-i-cursor:before{content:"\f246"}.fa-stamp:before{content:"\f5bf"}.fa-stairs:before{content:"\e289"}.fa-i:before{content:"\49"}.fa-hryvnia-sign:before,.fa-hryvnia:before{content:"\f6f2"}.fa-pills:before{content:"\f484"}.fa-face-grin-wide:before,.fa-grin-alt:before{content:"\f581"}.fa-tooth:before{content:"\f5c9"}.fa-v:before{content:"\56"}.fa-bangladeshi-taka-sign:before{content:"\e2e6"}.fa-bicycle:before{content:"\f206"}.fa-rod-asclepius:before,.fa-rod-snake:before,.fa-staff-aesculapius:before,.fa-staff-snake:before{content:"\e579"}.fa-head-side-cough-slash:before{content:"\e062"}.fa-ambulance:before,.fa-truck-medical:before{content:"\f0f9"}.fa-wheat-awn-circle-exclamation:before{content:"\e598"}.fa-snowman:before{content:"\f7d0"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-road-barrier:before{content:"\e562"}.fa-school:before{content:"\f549"}.fa-igloo:before{content:"\f7ae"}.fa-joint:before{content:"\f595"}.fa-angle-right:before{content:"\f105"}.fa-horse:before{content:"\f6f0"}.fa-q:before{content:"\51"}.fa-g:before{content:"\47"}.fa-notes-medical:before{content:"\f481"}.fa-temperature-2:before,.fa-temperature-half:before,.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-dong-sign:before{content:"\e169"}.fa-capsules:before{content:"\f46b"}.fa-poo-bolt:before,.fa-poo-storm:before{content:"\f75a"}.fa-face-frown-open:before,.fa-frown-open:before{content:"\f57a"}.fa-hand-point-up:before{content:"\f0a6"}.fa-money-bill:before{content:"\f0d6"}.fa-bookmark:before{content:"\f02e"}.fa-align-justify:before{content:"\f039"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-helmet-un:before{content:"\e503"}.fa-bullseye:before{content:"\f140"}.fa-bacon:before{content:"\f7e5"}.fa-hand-point-down:before{content:"\f0a7"}.fa-arrow-up-from-bracket:before{content:"\e09a"}.fa-folder-blank:before,.fa-folder:before{content:"\f07b"}.fa-file-medical-alt:before,.fa-file-waveform:before{content:"\f478"}.fa-radiation:before{content:"\f7b9"}.fa-chart-simple:before{content:"\e473"}.fa-mars-stroke:before{content:"\f229"}.fa-vial:before{content:"\f492"}.fa-dashboard:before,.fa-gauge-med:before,.fa-gauge:before,.fa-tachometer-alt-average:before{content:"\f624"}.fa-magic-wand-sparkles:before,.fa-wand-magic-sparkles:before{content:"\e2ca"}.fa-e:before{content:"\45"}.fa-pen-alt:before,.fa-pen-clip:before{content:"\f305"}.fa-bridge-circle-exclamation:before{content:"\e4ca"}.fa-user:before{content:"\f007"}.fa-school-circle-check:before{content:"\e56b"}.fa-dumpster:before{content:"\f793"}.fa-shuttle-van:before,.fa-van-shuttle:before{content:"\f5b6"}.fa-building-user:before{content:"\e4da"}.fa-caret-square-left:before,.fa-square-caret-left:before{content:"\f191"}.fa-highlighter:before{content:"\f591"}.fa-key:before{content:"\f084"}.fa-bullhorn:before{content:"\f0a1"}.fa-globe:before{content:"\f0ac"}.fa-synagogue:before{content:"\f69b"}.fa-person-half-dress:before{content:"\e548"}.fa-road-bridge:before{content:"\e563"}.fa-location-arrow:before{content:"\f124"}.fa-c:before{content:"\43"}.fa-tablet-button:before{content:"\f10a"}.fa-building-lock:before{content:"\e4d6"}.fa-pizza-slice:before{content:"\f818"}.fa-money-bill-wave:before{content:"\f53a"}.fa-area-chart:before,.fa-chart-area:before{content:"\f1fe"}.fa-house-flag:before{content:"\e50d"}.fa-person-circle-minus:before{content:"\e540"}.fa-ban:before,.fa-cancel:before{content:"\f05e"}.fa-camera-rotate:before{content:"\e0d8"}.fa-air-freshener:before,.fa-spray-can-sparkles:before{content:"\f5d0"}.fa-star:before{content:"\f005"}.fa-repeat:before{content:"\f363"}.fa-cross:before{content:"\f654"}.fa-box:before{content:"\f466"}.fa-venus-mars:before{content:"\f228"}.fa-arrow-pointer:before,.fa-mouse-pointer:before{content:"\f245"}.fa-expand-arrows-alt:before,.fa-maximize:before{content:"\f31e"}.fa-charging-station:before{content:"\f5e7"}.fa-shapes:before,.fa-triangle-circle-square:before{content:"\f61f"}.fa-random:before,.fa-shuffle:before{content:"\f074"}.fa-person-running:before,.fa-running:before{content:"\f70c"}.fa-mobile-retro:before{content:"\e527"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-spider:before{content:"\f717"}.fa-hands-bound:before{content:"\e4f9"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-plane-circle-exclamation:before{content:"\e556"}.fa-x-ray:before{content:"\f497"}.fa-spell-check:before{content:"\f891"}.fa-slash:before{content:"\f715"}.fa-computer-mouse:before,.fa-mouse:before{content:"\f8cc"}.fa-arrow-right-to-bracket:before,.fa-sign-in:before{content:"\f090"}.fa-shop-slash:before,.fa-store-alt-slash:before{content:"\e070"}.fa-server:before{content:"\f233"}.fa-virus-covid-slash:before{content:"\e4a9"}.fa-shop-lock:before{content:"\e4a5"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-blender-phone:before{content:"\f6b6"}.fa-building-wheat:before{content:"\e4db"}.fa-person-breastfeeding:before{content:"\e53a"}.fa-right-to-bracket:before,.fa-sign-in-alt:before{content:"\f2f6"}.fa-venus:before{content:"\f221"}.fa-passport:before{content:"\f5ab"}.fa-heart-pulse:before,.fa-heartbeat:before{content:"\f21e"}.fa-people-carry-box:before,.fa-people-carry:before{content:"\f4ce"}.fa-temperature-high:before{content:"\f769"}.fa-microchip:before{content:"\f2db"}.fa-crown:before{content:"\f521"}.fa-weight-hanging:before{content:"\f5cd"}.fa-xmarks-lines:before{content:"\e59a"}.fa-file-prescription:before{content:"\f572"}.fa-weight-scale:before,.fa-weight:before{content:"\f496"}.fa-user-friends:before,.fa-user-group:before{content:"\f500"}.fa-arrow-up-a-z:before,.fa-sort-alpha-up:before{content:"\f15e"}.fa-chess-knight:before{content:"\f441"}.fa-face-laugh-squint:before,.fa-laugh-squint:before{content:"\f59b"}.fa-wheelchair:before{content:"\f193"}.fa-arrow-circle-up:before,.fa-circle-arrow-up:before{content:"\f0aa"}.fa-toggle-on:before{content:"\f205"}.fa-person-walking:before,.fa-walking:before{content:"\f554"}.fa-l:before{content:"\4c"}.fa-fire:before{content:"\f06d"}.fa-bed-pulse:before,.fa-procedures:before{content:"\f487"}.fa-shuttle-space:before,.fa-space-shuttle:before{content:"\f197"}.fa-face-laugh:before,.fa-laugh:before{content:"\f599"}.fa-folder-open:before{content:"\f07c"}.fa-heart-circle-plus:before{content:"\e500"}.fa-code-fork:before{content:"\e13b"}.fa-city:before{content:"\f64f"}.fa-microphone-alt:before,.fa-microphone-lines:before{content:"\f3c9"}.fa-pepper-hot:before{content:"\f816"}.fa-unlock:before{content:"\f09c"}.fa-colon-sign:before{content:"\e140"}.fa-headset:before{content:"\f590"}.fa-store-slash:before{content:"\e071"}.fa-road-circle-xmark:before{content:"\e566"}.fa-user-minus:before{content:"\f503"}.fa-mars-stroke-up:before,.fa-mars-stroke-v:before{content:"\f22a"}.fa-champagne-glasses:before,.fa-glass-cheers:before{content:"\f79f"}.fa-clipboard:before{content:"\f328"}.fa-house-circle-exclamation:before{content:"\e50a"}.fa-file-arrow-up:before,.fa-file-upload:before{content:"\f574"}.fa-wifi-3:before,.fa-wifi-strong:before,.fa-wifi:before{content:"\f1eb"}.fa-bath:before,.fa-bathtub:before{content:"\f2cd"}.fa-underline:before{content:"\f0cd"}.fa-user-edit:before,.fa-user-pen:before{content:"\f4ff"}.fa-signature:before{content:"\f5b7"}.fa-stroopwafel:before{content:"\f551"}.fa-bold:before{content:"\f032"}.fa-anchor-lock:before{content:"\e4ad"}.fa-building-ngo:before{content:"\e4d7"}.fa-manat-sign:before{content:"\e1d5"}.fa-not-equal:before{content:"\f53e"}.fa-border-style:before,.fa-border-top-left:before{content:"\f853"}.fa-map-location-dot:before,.fa-map-marked-alt:before{content:"\f5a0"}.fa-jedi:before{content:"\f669"}.fa-poll:before,.fa-square-poll-vertical:before{content:"\f681"}.fa-mug-hot:before{content:"\f7b6"}.fa-battery-car:before,.fa-car-battery:before{content:"\f5df"}.fa-gift:before{content:"\f06b"}.fa-dice-two:before{content:"\f528"}.fa-chess-queen:before{content:"\f445"}.fa-glasses:before{content:"\f530"}.fa-chess-board:before{content:"\f43c"}.fa-building-circle-check:before{content:"\e4d2"}.fa-person-chalkboard:before{content:"\e53d"}.fa-mars-stroke-h:before,.fa-mars-stroke-right:before{content:"\f22b"}.fa-hand-back-fist:before,.fa-hand-rock:before{content:"\f255"}.fa-caret-square-up:before,.fa-square-caret-up:before{content:"\f151"}.fa-cloud-showers-water:before{content:"\e4e4"}.fa-bar-chart:before,.fa-chart-bar:before{content:"\f080"}.fa-hands-bubbles:before,.fa-hands-wash:before{content:"\e05e"}.fa-less-than-equal:before{content:"\f537"}.fa-train:before{content:"\f238"}.fa-eye-low-vision:before,.fa-low-vision:before{content:"\f2a8"}.fa-crow:before{content:"\f520"}.fa-sailboat:before{content:"\e445"}.fa-window-restore:before{content:"\f2d2"}.fa-plus-square:before,.fa-square-plus:before{content:"\f0fe"}.fa-torii-gate:before{content:"\f6a1"}.fa-frog:before{content:"\f52e"}.fa-bucket:before{content:"\e4cf"}.fa-image:before{content:"\f03e"}.fa-microphone:before{content:"\f130"}.fa-cow:before{content:"\f6c8"}.fa-caret-up:before{content:"\f0d8"}.fa-screwdriver:before{content:"\f54a"}.fa-folder-closed:before{content:"\e185"}.fa-house-tsunami:before{content:"\e515"}.fa-square-nfi:before{content:"\e576"}.fa-arrow-up-from-ground-water:before{content:"\e4b5"}.fa-glass-martini-alt:before,.fa-martini-glass:before{content:"\f57b"}.fa-rotate-back:before,.fa-rotate-backward:before,.fa-rotate-left:before,.fa-undo-alt:before{content:"\f2ea"}.fa-columns:before,.fa-table-columns:before{content:"\f0db"}.fa-lemon:before{content:"\f094"}.fa-head-side-mask:before{content:"\e063"}.fa-handshake:before{content:"\f2b5"}.fa-gem:before{content:"\f3a5"}.fa-dolly-box:before,.fa-dolly:before{content:"\f472"}.fa-smoking:before{content:"\f48d"}.fa-compress-arrows-alt:before,.fa-minimize:before{content:"\f78c"}.fa-monument:before{content:"\f5a6"}.fa-snowplow:before{content:"\f7d2"}.fa-angle-double-right:before,.fa-angles-right:before{content:"\f101"}.fa-cannabis:before{content:"\f55f"}.fa-circle-play:before,.fa-play-circle:before{content:"\f144"}.fa-tablets:before{content:"\f490"}.fa-ethernet:before{content:"\f796"}.fa-eur:before,.fa-euro-sign:before,.fa-euro:before{content:"\f153"}.fa-chair:before{content:"\f6c0"}.fa-check-circle:before,.fa-circle-check:before{content:"\f058"}.fa-circle-stop:before,.fa-stop-circle:before{content:"\f28d"}.fa-compass-drafting:before,.fa-drafting-compass:before{content:"\f568"}.fa-plate-wheat:before{content:"\e55a"}.fa-icicles:before{content:"\f7ad"}.fa-person-shelter:before{content:"\e54f"}.fa-neuter:before{content:"\f22c"}.fa-id-badge:before{content:"\f2c1"}.fa-marker:before{content:"\f5a1"}.fa-face-laugh-beam:before,.fa-laugh-beam:before{content:"\f59a"}.fa-helicopter-symbol:before{content:"\e502"}.fa-universal-access:before{content:"\f29a"}.fa-chevron-circle-up:before,.fa-circle-chevron-up:before{content:"\f139"}.fa-lari-sign:before{content:"\e1c8"}.fa-volcano:before{content:"\f770"}.fa-person-walking-dashed-line-arrow-right:before{content:"\e553"}.fa-gbp:before,.fa-pound-sign:before,.fa-sterling-sign:before{content:"\f154"}.fa-viruses:before{content:"\e076"}.fa-square-person-confined:before{content:"\e577"}.fa-user-tie:before{content:"\f508"}.fa-arrow-down-long:before,.fa-long-arrow-down:before{content:"\f175"}.fa-tent-arrow-down-to-line:before{content:"\e57e"}.fa-certificate:before{content:"\f0a3"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-suitcase:before{content:"\f0f2"}.fa-person-skating:before,.fa-skating:before{content:"\f7c5"}.fa-filter-circle-dollar:before,.fa-funnel-dollar:before{content:"\f662"}.fa-camera-retro:before{content:"\f083"}.fa-arrow-circle-down:before,.fa-circle-arrow-down:before{content:"\f0ab"}.fa-arrow-right-to-file:before,.fa-file-import:before{content:"\f56f"}.fa-external-link-square:before,.fa-square-arrow-up-right:before{content:"\f14c"}.fa-box-open:before{content:"\f49e"}.fa-scroll:before{content:"\f70e"}.fa-spa:before{content:"\f5bb"}.fa-location-pin-lock:before{content:"\e51f"}.fa-pause:before{content:"\f04c"}.fa-hill-avalanche:before{content:"\e507"}.fa-temperature-0:before,.fa-temperature-empty:before,.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-bomb:before{content:"\f1e2"}.fa-registered:before{content:"\f25d"}.fa-address-card:before,.fa-contact-card:before,.fa-vcard:before{content:"\f2bb"}.fa-balance-scale-right:before,.fa-scale-unbalanced-flip:before{content:"\f516"}.fa-subscript:before{content:"\f12c"}.fa-diamond-turn-right:before,.fa-directions:before{content:"\f5eb"}.fa-burst:before{content:"\e4dc"}.fa-house-laptop:before,.fa-laptop-house:before{content:"\e066"}.fa-face-tired:before,.fa-tired:before{content:"\f5c8"}.fa-money-bills:before{content:"\e1f3"}.fa-smog:before{content:"\f75f"}.fa-crutch:before{content:"\f7f7"}.fa-cloud-arrow-up:before,.fa-cloud-upload-alt:before,.fa-cloud-upload:before{content:"\f0ee"}.fa-palette:before{content:"\f53f"}.fa-arrows-turn-right:before{content:"\e4c0"}.fa-vest:before{content:"\e085"}.fa-ferry:before{content:"\e4ea"}.fa-arrows-down-to-people:before{content:"\e4b9"}.fa-seedling:before,.fa-sprout:before{content:"\f4d8"}.fa-arrows-alt-h:before,.fa-left-right:before{content:"\f337"}.fa-boxes-packing:before{content:"\e4c7"}.fa-arrow-circle-left:before,.fa-circle-arrow-left:before{content:"\f0a8"}.fa-group-arrows-rotate:before{content:"\e4f6"}.fa-bowl-food:before{content:"\e4c6"}.fa-candy-cane:before{content:"\f786"}.fa-arrow-down-wide-short:before,.fa-sort-amount-asc:before,.fa-sort-amount-down:before{content:"\f160"}.fa-cloud-bolt:before,.fa-thunderstorm:before{content:"\f76c"}.fa-remove-format:before,.fa-text-slash:before{content:"\f87d"}.fa-face-smile-wink:before,.fa-smile-wink:before{content:"\f4da"}.fa-file-word:before{content:"\f1c2"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-arrows-h:before,.fa-arrows-left-right:before{content:"\f07e"}.fa-house-lock:before{content:"\e510"}.fa-cloud-arrow-down:before,.fa-cloud-download-alt:before,.fa-cloud-download:before{content:"\f0ed"}.fa-children:before{content:"\e4e1"}.fa-blackboard:before,.fa-chalkboard:before{content:"\f51b"}.fa-user-alt-slash:before,.fa-user-large-slash:before{content:"\f4fa"}.fa-envelope-open:before{content:"\f2b6"}.fa-handshake-alt-slash:before,.fa-handshake-simple-slash:before{content:"\e05f"}.fa-mattress-pillow:before{content:"\e525"}.fa-guarani-sign:before{content:"\e19a"}.fa-arrows-rotate:before,.fa-refresh:before,.fa-sync:before{content:"\f021"}.fa-fire-extinguisher:before{content:"\f134"}.fa-cruzeiro-sign:before{content:"\e152"}.fa-greater-than-equal:before{content:"\f532"}.fa-shield-alt:before,.fa-shield-halved:before{content:"\f3ed"}.fa-atlas:before,.fa-book-atlas:before{content:"\f558"}.fa-virus:before{content:"\e074"}.fa-envelope-circle-check:before{content:"\e4e8"}.fa-layer-group:before{content:"\f5fd"}.fa-arrows-to-dot:before{content:"\e4be"}.fa-archway:before{content:"\f557"}.fa-heart-circle-check:before{content:"\e4fd"}.fa-house-chimney-crack:before,.fa-house-damage:before{content:"\f6f1"}.fa-file-archive:before,.fa-file-zipper:before{content:"\f1c6"}.fa-square:before{content:"\f0c8"}.fa-glass-martini:before,.fa-martini-glass-empty:before{content:"\f000"}.fa-couch:before{content:"\f4b8"}.fa-cedi-sign:before{content:"\e0df"}.fa-italic:before{content:"\f033"}.fa-table-cells-column-lock:before{content:"\e678"}.fa-church:before{content:"\f51d"}.fa-comments-dollar:before{content:"\f653"}.fa-democrat:before{content:"\f747"}.fa-z:before{content:"\5a"}.fa-person-skiing:before,.fa-skiing:before{content:"\f7c9"}.fa-road-lock:before{content:"\e567"}.fa-a:before{content:"\41"}.fa-temperature-arrow-down:before,.fa-temperature-down:before{content:"\e03f"}.fa-feather-alt:before,.fa-feather-pointed:before{content:"\f56b"}.fa-p:before{content:"\50"}.fa-snowflake:before{content:"\f2dc"}.fa-newspaper:before{content:"\f1ea"}.fa-ad:before,.fa-rectangle-ad:before{content:"\f641"}.fa-arrow-circle-right:before,.fa-circle-arrow-right:before{content:"\f0a9"}.fa-filter-circle-xmark:before{content:"\e17b"}.fa-locust:before{content:"\e520"}.fa-sort:before,.fa-unsorted:before{content:"\f0dc"}.fa-list-1-2:before,.fa-list-numeric:before,.fa-list-ol:before{content:"\f0cb"}.fa-person-dress-burst:before{content:"\e544"}.fa-money-check-alt:before,.fa-money-check-dollar:before{content:"\f53d"}.fa-vector-square:before{content:"\f5cb"}.fa-bread-slice:before{content:"\f7ec"}.fa-language:before{content:"\f1ab"}.fa-face-kiss-wink-heart:before,.fa-kiss-wink-heart:before{content:"\f598"}.fa-filter:before{content:"\f0b0"}.fa-question:before{content:"\3f"}.fa-file-signature:before{content:"\f573"}.fa-arrows-alt:before,.fa-up-down-left-right:before{content:"\f0b2"}.fa-house-chimney-user:before{content:"\e065"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-puzzle-piece:before{content:"\f12e"}.fa-money-check:before{content:"\f53c"}.fa-star-half-alt:before,.fa-star-half-stroke:before{content:"\f5c0"}.fa-code:before{content:"\f121"}.fa-glass-whiskey:before,.fa-whiskey-glass:before{content:"\f7a0"}.fa-building-circle-exclamation:before{content:"\e4d3"}.fa-magnifying-glass-chart:before{content:"\e522"}.fa-arrow-up-right-from-square:before,.fa-external-link:before{content:"\f08e"}.fa-cubes-stacked:before{content:"\e4e6"}.fa-krw:before,.fa-won-sign:before,.fa-won:before{content:"\f159"}.fa-virus-covid:before{content:"\e4a8"}.fa-austral-sign:before{content:"\e0a9"}.fa-f:before{content:"\46"}.fa-leaf:before{content:"\f06c"}.fa-road:before{content:"\f018"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-person-circle-plus:before{content:"\e541"}.fa-chart-pie:before,.fa-pie-chart:before{content:"\f200"}.fa-bolt-lightning:before{content:"\e0b7"}.fa-sack-xmark:before{content:"\e56a"}.fa-file-excel:before{content:"\f1c3"}.fa-file-contract:before{content:"\f56c"}.fa-fish-fins:before{content:"\e4f2"}.fa-building-flag:before{content:"\e4d5"}.fa-face-grin-beam:before,.fa-grin-beam:before{content:"\f582"}.fa-object-ungroup:before{content:"\f248"}.fa-poop:before{content:"\f619"}.fa-location-pin:before,.fa-map-marker:before{content:"\f041"}.fa-kaaba:before{content:"\f66b"}.fa-toilet-paper:before{content:"\f71e"}.fa-hard-hat:before,.fa-hat-hard:before,.fa-helmet-safety:before{content:"\f807"}.fa-eject:before{content:"\f052"}.fa-arrow-alt-circle-right:before,.fa-circle-right:before{content:"\f35a"}.fa-plane-circle-check:before{content:"\e555"}.fa-face-rolling-eyes:before,.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-object-group:before{content:"\f247"}.fa-chart-line:before,.fa-line-chart:before{content:"\f201"}.fa-mask-ventilator:before{content:"\e524"}.fa-arrow-right:before{content:"\f061"}.fa-map-signs:before,.fa-signs-post:before{content:"\f277"}.fa-cash-register:before{content:"\f788"}.fa-person-circle-question:before{content:"\e542"}.fa-h:before{content:"\48"}.fa-tarp:before{content:"\e57b"}.fa-screwdriver-wrench:before,.fa-tools:before{content:"\f7d9"}.fa-arrows-to-eye:before{content:"\e4bf"}.fa-plug-circle-bolt:before{content:"\e55b"}.fa-heart:before{content:"\f004"}.fa-mars-and-venus:before{content:"\f224"}.fa-home-user:before,.fa-house-user:before{content:"\e1b0"}.fa-dumpster-fire:before{content:"\f794"}.fa-house-crack:before{content:"\e3b1"}.fa-cocktail:before,.fa-martini-glass-citrus:before{content:"\f561"}.fa-face-surprise:before,.fa-surprise:before{content:"\f5c2"}.fa-bottle-water:before{content:"\e4c5"}.fa-circle-pause:before,.fa-pause-circle:before{content:"\f28b"}.fa-toilet-paper-slash:before{content:"\e072"}.fa-apple-alt:before,.fa-apple-whole:before{content:"\f5d1"}.fa-kitchen-set:before{content:"\e51a"}.fa-r:before{content:"\52"}.fa-temperature-1:before,.fa-temperature-quarter:before,.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-cube:before{content:"\f1b2"}.fa-bitcoin-sign:before{content:"\e0b4"}.fa-shield-dog:before{content:"\e573"}.fa-solar-panel:before{content:"\f5ba"}.fa-lock-open:before{content:"\f3c1"}.fa-elevator:before{content:"\e16d"}.fa-money-bill-transfer:before{content:"\e528"}.fa-money-bill-trend-up:before{content:"\e529"}.fa-house-flood-water-circle-arrow-right:before{content:"\e50f"}.fa-poll-h:before,.fa-square-poll-horizontal:before{content:"\f682"}.fa-circle:before{content:"\f111"}.fa-backward-fast:before,.fa-fast-backward:before{content:"\f049"}.fa-recycle:before{content:"\f1b8"}.fa-user-astronaut:before{content:"\f4fb"}.fa-plane-slash:before{content:"\e069"}.fa-trademark:before{content:"\f25c"}.fa-basketball-ball:before,.fa-basketball:before{content:"\f434"}.fa-satellite-dish:before{content:"\f7c0"}.fa-arrow-alt-circle-up:before,.fa-circle-up:before{content:"\f35b"}.fa-mobile-alt:before,.fa-mobile-screen-button:before{content:"\f3cd"}.fa-volume-high:before,.fa-volume-up:before{content:"\f028"}.fa-users-rays:before{content:"\e593"}.fa-wallet:before{content:"\f555"}.fa-clipboard-check:before{content:"\f46c"}.fa-file-audio:before{content:"\f1c7"}.fa-burger:before,.fa-hamburger:before{content:"\f805"}.fa-wrench:before{content:"\f0ad"}.fa-bugs:before{content:"\e4d0"}.fa-rupee-sign:before,.fa-rupee:before{content:"\f156"}.fa-file-image:before{content:"\f1c5"}.fa-circle-question:before,.fa-question-circle:before{content:"\f059"}.fa-plane-departure:before{content:"\f5b0"}.fa-handshake-slash:before{content:"\e060"}.fa-book-bookmark:before{content:"\e0bb"}.fa-code-branch:before{content:"\f126"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-bridge:before{content:"\e4c8"}.fa-phone-alt:before,.fa-phone-flip:before{content:"\f879"}.fa-truck-front:before{content:"\e2b7"}.fa-cat:before{content:"\f6be"}.fa-anchor-circle-exclamation:before{content:"\e4ab"}.fa-truck-field:before{content:"\e58d"}.fa-route:before{content:"\f4d7"}.fa-clipboard-question:before{content:"\e4e3"}.fa-panorama:before{content:"\e209"}.fa-comment-medical:before{content:"\f7f5"}.fa-teeth-open:before{content:"\f62f"}.fa-file-circle-minus:before{content:"\e4ed"}.fa-tags:before{content:"\f02c"}.fa-wine-glass:before{content:"\f4e3"}.fa-fast-forward:before,.fa-forward-fast:before{content:"\f050"}.fa-face-meh-blank:before,.fa-meh-blank:before{content:"\f5a4"}.fa-parking:before,.fa-square-parking:before{content:"\f540"}.fa-house-signal:before{content:"\e012"}.fa-bars-progress:before,.fa-tasks-alt:before{content:"\f828"}.fa-faucet-drip:before{content:"\e006"}.fa-cart-flatbed:before,.fa-dolly-flatbed:before{content:"\f474"}.fa-ban-smoking:before,.fa-smoking-ban:before{content:"\f54d"}.fa-terminal:before{content:"\f120"}.fa-mobile-button:before{content:"\f10b"}.fa-house-medical-flag:before{content:"\e514"}.fa-basket-shopping:before,.fa-shopping-basket:before{content:"\f291"}.fa-tape:before{content:"\f4db"}.fa-bus-alt:before,.fa-bus-simple:before{content:"\f55e"}.fa-eye:before{content:"\f06e"}.fa-face-sad-cry:before,.fa-sad-cry:before{content:"\f5b3"}.fa-audio-description:before{content:"\f29e"}.fa-person-military-to-person:before{content:"\e54c"}.fa-file-shield:before{content:"\e4f0"}.fa-user-slash:before{content:"\f506"}.fa-pen:before{content:"\f304"}.fa-tower-observation:before{content:"\e586"}.fa-file-code:before{content:"\f1c9"}.fa-signal-5:before,.fa-signal-perfect:before,.fa-signal:before{content:"\f012"}.fa-bus:before{content:"\f207"}.fa-heart-circle-xmark:before{content:"\e501"}.fa-home-lg:before,.fa-house-chimney:before{content:"\e3af"}.fa-window-maximize:before{content:"\f2d0"}.fa-face-frown:before,.fa-frown:before{content:"\f119"}.fa-prescription:before{content:"\f5b1"}.fa-shop:before,.fa-store-alt:before{content:"\f54f"}.fa-floppy-disk:before,.fa-save:before{content:"\f0c7"}.fa-vihara:before{content:"\f6a7"}.fa-balance-scale-left:before,.fa-scale-unbalanced:before{content:"\f515"}.fa-sort-asc:before,.fa-sort-up:before{content:"\f0de"}.fa-comment-dots:before,.fa-commenting:before{content:"\f4ad"}.fa-plant-wilt:before{content:"\e5aa"}.fa-diamond:before{content:"\f219"}.fa-face-grin-squint:before,.fa-grin-squint:before{content:"\f585"}.fa-hand-holding-dollar:before,.fa-hand-holding-usd:before{content:"\f4c0"}.fa-bacterium:before{content:"\e05a"}.fa-hand-pointer:before{content:"\f25a"}.fa-drum-steelpan:before{content:"\f56a"}.fa-hand-scissors:before{content:"\f257"}.fa-hands-praying:before,.fa-praying-hands:before{content:"\f684"}.fa-arrow-right-rotate:before,.fa-arrow-rotate-forward:before,.fa-arrow-rotate-right:before,.fa-redo:before{content:"\f01e"}.fa-biohazard:before{content:"\f780"}.fa-location-crosshairs:before,.fa-location:before{content:"\f601"}.fa-mars-double:before{content:"\f227"}.fa-child-dress:before{content:"\e59c"}.fa-users-between-lines:before{content:"\e591"}.fa-lungs-virus:before{content:"\e067"}.fa-face-grin-tears:before,.fa-grin-tears:before{content:"\f588"}.fa-phone:before{content:"\f095"}.fa-calendar-times:before,.fa-calendar-xmark:before{content:"\f273"}.fa-child-reaching:before{content:"\e59d"}.fa-head-side-virus:before{content:"\e064"}.fa-user-cog:before,.fa-user-gear:before{content:"\f4fe"}.fa-arrow-up-1-9:before,.fa-sort-numeric-up:before{content:"\f163"}.fa-door-closed:before{content:"\f52a"}.fa-shield-virus:before{content:"\e06c"}.fa-dice-six:before{content:"\f526"}.fa-mosquito-net:before{content:"\e52c"}.fa-bridge-water:before{content:"\e4ce"}.fa-person-booth:before{content:"\f756"}.fa-text-width:before{content:"\f035"}.fa-hat-wizard:before{content:"\f6e8"}.fa-pen-fancy:before{content:"\f5ac"}.fa-digging:before,.fa-person-digging:before{content:"\f85e"}.fa-trash:before{content:"\f1f8"}.fa-gauge-simple-med:before,.fa-gauge-simple:before,.fa-tachometer-average:before{content:"\f629"}.fa-book-medical:before{content:"\f7e6"}.fa-poo:before{content:"\f2fe"}.fa-quote-right-alt:before,.fa-quote-right:before{content:"\f10e"}.fa-shirt:before,.fa-t-shirt:before,.fa-tshirt:before{content:"\f553"}.fa-cubes:before{content:"\f1b3"}.fa-divide:before{content:"\f529"}.fa-tenge-sign:before,.fa-tenge:before{content:"\f7d7"}.fa-headphones:before{content:"\f025"}.fa-hands-holding:before{content:"\f4c2"}.fa-hands-clapping:before{content:"\e1a8"}.fa-republican:before{content:"\f75e"}.fa-arrow-left:before{content:"\f060"}.fa-person-circle-xmark:before{content:"\e543"}.fa-ruler:before{content:"\f545"}.fa-align-left:before{content:"\f036"}.fa-dice-d6:before{content:"\f6d1"}.fa-restroom:before{content:"\f7bd"}.fa-j:before{content:"\4a"}.fa-users-viewfinder:before{content:"\e595"}.fa-file-video:before{content:"\f1c8"}.fa-external-link-alt:before,.fa-up-right-from-square:before{content:"\f35d"}.fa-table-cells:before,.fa-th:before{content:"\f00a"}.fa-file-pdf:before{content:"\f1c1"}.fa-bible:before,.fa-book-bible:before{content:"\f647"}.fa-o:before{content:"\4f"}.fa-medkit:before,.fa-suitcase-medical:before{content:"\f0fa"}.fa-user-secret:before{content:"\f21b"}.fa-otter:before{content:"\f700"}.fa-female:before,.fa-person-dress:before{content:"\f182"}.fa-comment-dollar:before{content:"\f651"}.fa-briefcase-clock:before,.fa-business-time:before{content:"\f64a"}.fa-table-cells-large:before,.fa-th-large:before{content:"\f009"}.fa-book-tanakh:before,.fa-tanakh:before{content:"\f827"}.fa-phone-volume:before,.fa-volume-control-phone:before{content:"\f2a0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-clipboard-user:before{content:"\f7f3"}.fa-child:before{content:"\f1ae"}.fa-lira-sign:before{content:"\f195"}.fa-satellite:before{content:"\f7bf"}.fa-plane-lock:before{content:"\e558"}.fa-tag:before{content:"\f02b"}.fa-comment:before{content:"\f075"}.fa-birthday-cake:before,.fa-cake-candles:before,.fa-cake:before{content:"\f1fd"}.fa-envelope:before{content:"\f0e0"}.fa-angle-double-up:before,.fa-angles-up:before{content:"\f102"}.fa-paperclip:before{content:"\f0c6"}.fa-arrow-right-to-city:before{content:"\e4b3"}.fa-ribbon:before{content:"\f4d6"}.fa-lungs:before{content:"\f604"}.fa-arrow-up-9-1:before,.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-litecoin-sign:before{content:"\e1d3"}.fa-border-none:before{content:"\f850"}.fa-circle-nodes:before{content:"\e4e2"}.fa-parachute-box:before{content:"\f4cd"}.fa-indent:before{content:"\f03c"}.fa-truck-field-un:before{content:"\e58e"}.fa-hourglass-empty:before,.fa-hourglass:before{content:"\f254"}.fa-mountain:before{content:"\f6fc"}.fa-user-doctor:before,.fa-user-md:before{content:"\f0f0"}.fa-circle-info:before,.fa-info-circle:before{content:"\f05a"}.fa-cloud-meatball:before{content:"\f73b"}.fa-camera-alt:before,.fa-camera:before{content:"\f030"}.fa-square-virus:before{content:"\e578"}.fa-meteor:before{content:"\f753"}.fa-car-on:before{content:"\e4dd"}.fa-sleigh:before{content:"\f7cc"}.fa-arrow-down-1-9:before,.fa-sort-numeric-asc:before,.fa-sort-numeric-down:before{content:"\f162"}.fa-hand-holding-droplet:before,.fa-hand-holding-water:before{content:"\f4c1"}.fa-water:before{content:"\f773"}.fa-calendar-check:before{content:"\f274"}.fa-braille:before{content:"\f2a1"}.fa-prescription-bottle-alt:before,.fa-prescription-bottle-medical:before{content:"\f486"}.fa-landmark:before{content:"\f66f"}.fa-truck:before{content:"\f0d1"}.fa-crosshairs:before{content:"\f05b"}.fa-person-cane:before{content:"\e53c"}.fa-tent:before{content:"\e57d"}.fa-vest-patches:before{content:"\e086"}.fa-check-double:before{content:"\f560"}.fa-arrow-down-a-z:before,.fa-sort-alpha-asc:before,.fa-sort-alpha-down:before{content:"\f15d"}.fa-money-bill-wheat:before{content:"\e52a"}.fa-cookie:before{content:"\f563"}.fa-arrow-left-rotate:before,.fa-arrow-rotate-back:before,.fa-arrow-rotate-backward:before,.fa-arrow-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-hard-drive:before,.fa-hdd:before{content:"\f0a0"}.fa-face-grin-squint-tears:before,.fa-grin-squint-tears:before{content:"\f586"}.fa-dumbbell:before{content:"\f44b"}.fa-list-alt:before,.fa-rectangle-list:before{content:"\f022"}.fa-tarp-droplet:before{content:"\e57c"}.fa-house-medical-circle-check:before{content:"\e511"}.fa-person-skiing-nordic:before,.fa-skiing-nordic:before{content:"\f7ca"}.fa-calendar-plus:before{content:"\f271"}.fa-plane-arrival:before{content:"\f5af"}.fa-arrow-alt-circle-left:before,.fa-circle-left:before{content:"\f359"}.fa-subway:before,.fa-train-subway:before{content:"\f239"}.fa-chart-gantt:before{content:"\e0e4"}.fa-indian-rupee-sign:before,.fa-indian-rupee:before,.fa-inr:before{content:"\e1bc"}.fa-crop-alt:before,.fa-crop-simple:before{content:"\f565"}.fa-money-bill-1:before,.fa-money-bill-alt:before{content:"\f3d1"}.fa-left-long:before,.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-dna:before{content:"\f471"}.fa-virus-slash:before{content:"\e075"}.fa-minus:before,.fa-subtract:before{content:"\f068"}.fa-chess:before{content:"\f439"}.fa-arrow-left-long:before,.fa-long-arrow-left:before{content:"\f177"}.fa-plug-circle-check:before{content:"\e55c"}.fa-street-view:before{content:"\f21d"}.fa-franc-sign:before{content:"\e18f"}.fa-volume-off:before{content:"\f026"}.fa-american-sign-language-interpreting:before,.fa-asl-interpreting:before,.fa-hands-american-sign-language-interpreting:before,.fa-hands-asl-interpreting:before{content:"\f2a3"}.fa-cog:before,.fa-gear:before{content:"\f013"}.fa-droplet-slash:before,.fa-tint-slash:before{content:"\f5c7"}.fa-mosque:before{content:"\f678"}.fa-mosquito:before{content:"\e52b"}.fa-star-of-david:before{content:"\f69a"}.fa-person-military-rifle:before{content:"\e54b"}.fa-cart-shopping:before,.fa-shopping-cart:before{content:"\f07a"}.fa-vials:before{content:"\f493"}.fa-plug-circle-plus:before{content:"\e55f"}.fa-place-of-worship:before{content:"\f67f"}.fa-grip-vertical:before{content:"\f58e"}.fa-arrow-turn-up:before,.fa-level-up:before{content:"\f148"}.fa-u:before{content:"\55"}.fa-square-root-alt:before,.fa-square-root-variable:before{content:"\f698"}.fa-clock-four:before,.fa-clock:before{content:"\f017"}.fa-backward-step:before,.fa-step-backward:before{content:"\f048"}.fa-pallet:before{content:"\f482"}.fa-faucet:before{content:"\e005"}.fa-baseball-bat-ball:before{content:"\f432"}.fa-s:before{content:"\53"}.fa-timeline:before{content:"\e29c"}.fa-keyboard:before{content:"\f11c"}.fa-caret-down:before{content:"\f0d7"}.fa-clinic-medical:before,.fa-house-chimney-medical:before{content:"\f7f2"}.fa-temperature-3:before,.fa-temperature-three-quarters:before,.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-mobile-android-alt:before,.fa-mobile-screen:before{content:"\f3cf"}.fa-plane-up:before{content:"\e22d"}.fa-piggy-bank:before{content:"\f4d3"}.fa-battery-3:before,.fa-battery-half:before{content:"\f242"}.fa-mountain-city:before{content:"\e52e"}.fa-coins:before{content:"\f51e"}.fa-khanda:before{content:"\f66d"}.fa-sliders-h:before,.fa-sliders:before{content:"\f1de"}.fa-folder-tree:before{content:"\f802"}.fa-network-wired:before{content:"\f6ff"}.fa-map-pin:before{content:"\f276"}.fa-hamsa:before{content:"\f665"}.fa-cent-sign:before{content:"\e3f5"}.fa-flask:before{content:"\f0c3"}.fa-person-pregnant:before{content:"\e31e"}.fa-wand-sparkles:before{content:"\f72b"}.fa-ellipsis-v:before,.fa-ellipsis-vertical:before{content:"\f142"}.fa-ticket:before{content:"\f145"}.fa-power-off:before{content:"\f011"}.fa-long-arrow-alt-right:before,.fa-right-long:before{content:"\f30b"}.fa-flag-usa:before{content:"\f74d"}.fa-laptop-file:before{content:"\e51d"}.fa-teletype:before,.fa-tty:before{content:"\f1e4"}.fa-diagram-next:before{content:"\e476"}.fa-person-rifle:before{content:"\e54e"}.fa-house-medical-circle-exclamation:before{content:"\e512"}.fa-closed-captioning:before{content:"\f20a"}.fa-hiking:before,.fa-person-hiking:before{content:"\f6ec"}.fa-venus-double:before{content:"\f226"}.fa-images:before{content:"\f302"}.fa-calculator:before{content:"\f1ec"}.fa-people-pulling:before{content:"\e535"}.fa-n:before{content:"\4e"}.fa-cable-car:before,.fa-tram:before{content:"\f7da"}.fa-cloud-rain:before{content:"\f73d"}.fa-building-circle-xmark:before{content:"\e4d4"}.fa-ship:before{content:"\f21a"}.fa-arrows-down-to-line:before{content:"\e4b8"}.fa-download:before{content:"\f019"}.fa-face-grin:before,.fa-grin:before{content:"\f580"}.fa-backspace:before,.fa-delete-left:before{content:"\f55a"}.fa-eye-dropper-empty:before,.fa-eye-dropper:before,.fa-eyedropper:before{content:"\f1fb"}.fa-file-circle-check:before{content:"\e5a0"}.fa-forward:before{content:"\f04e"}.fa-mobile-android:before,.fa-mobile-phone:before,.fa-mobile:before{content:"\f3ce"}.fa-face-meh:before,.fa-meh:before{content:"\f11a"}.fa-align-center:before{content:"\f037"}.fa-book-dead:before,.fa-book-skull:before{content:"\f6b7"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-heart-circle-exclamation:before{content:"\e4fe"}.fa-home-alt:before,.fa-home-lg-alt:before,.fa-home:before,.fa-house:before{content:"\f015"}.fa-calendar-week:before{content:"\f784"}.fa-laptop-medical:before{content:"\f812"}.fa-b:before{content:"\42"}.fa-file-medical:before{content:"\f477"}.fa-dice-one:before{content:"\f525"}.fa-kiwi-bird:before{content:"\f535"}.fa-arrow-right-arrow-left:before,.fa-exchange:before{content:"\f0ec"}.fa-redo-alt:before,.fa-rotate-forward:before,.fa-rotate-right:before{content:"\f2f9"}.fa-cutlery:before,.fa-utensils:before{content:"\f2e7"}.fa-arrow-up-wide-short:before,.fa-sort-amount-up:before{content:"\f161"}.fa-mill-sign:before{content:"\e1ed"}.fa-bowl-rice:before{content:"\e2eb"}.fa-skull:before{content:"\f54c"}.fa-broadcast-tower:before,.fa-tower-broadcast:before{content:"\f519"}.fa-truck-pickup:before{content:"\f63c"}.fa-long-arrow-alt-up:before,.fa-up-long:before{content:"\f30c"}.fa-stop:before{content:"\f04d"}.fa-code-merge:before{content:"\f387"}.fa-upload:before{content:"\f093"}.fa-hurricane:before{content:"\f751"}.fa-mound:before{content:"\e52d"}.fa-toilet-portable:before{content:"\e583"}.fa-compact-disc:before{content:"\f51f"}.fa-file-arrow-down:before,.fa-file-download:before{content:"\f56d"}.fa-caravan:before{content:"\f8ff"}.fa-shield-cat:before{content:"\e572"}.fa-bolt:before,.fa-zap:before{content:"\f0e7"}.fa-glass-water:before{content:"\e4f4"}.fa-oil-well:before{content:"\e532"}.fa-vault:before{content:"\e2c5"}.fa-mars:before{content:"\f222"}.fa-toilet:before{content:"\f7d8"}.fa-plane-circle-xmark:before{content:"\e557"}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen-sign:before,.fa-yen:before{content:"\f157"}.fa-rouble:before,.fa-rub:before,.fa-ruble-sign:before,.fa-ruble:before{content:"\f158"}.fa-sun:before{content:"\f185"}.fa-guitar:before{content:"\f7a6"}.fa-face-laugh-wink:before,.fa-laugh-wink:before{content:"\f59c"}.fa-horse-head:before{content:"\f7ab"}.fa-bore-hole:before{content:"\e4c3"}.fa-industry:before{content:"\f275"}.fa-arrow-alt-circle-down:before,.fa-circle-down:before{content:"\f358"}.fa-arrows-turn-to-dots:before{content:"\e4c1"}.fa-florin-sign:before{content:"\e184"}.fa-arrow-down-short-wide:before,.fa-sort-amount-desc:before,.fa-sort-amount-down-alt:before{content:"\f884"}.fa-less-than:before{content:"\3c"}.fa-angle-down:before{content:"\f107"}.fa-car-tunnel:before{content:"\e4de"}.fa-head-side-cough:before{content:"\e061"}.fa-grip-lines:before{content:"\f7a4"}.fa-thumbs-down:before{content:"\f165"}.fa-user-lock:before{content:"\f502"}.fa-arrow-right-long:before,.fa-long-arrow-right:before{content:"\f178"}.fa-anchor-circle-xmark:before{content:"\e4ac"}.fa-ellipsis-h:before,.fa-ellipsis:before{content:"\f141"}.fa-chess-pawn:before{content:"\f443"}.fa-first-aid:before,.fa-kit-medical:before{content:"\f479"}.fa-person-through-window:before{content:"\e5a9"}.fa-toolbox:before{content:"\f552"}.fa-hands-holding-circle:before{content:"\e4fb"}.fa-bug:before{content:"\f188"}.fa-credit-card-alt:before,.fa-credit-card:before{content:"\f09d"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-hand-holding-hand:before{content:"\e4f7"}.fa-book-open-reader:before,.fa-book-reader:before{content:"\f5da"}.fa-mountain-sun:before{content:"\e52f"}.fa-arrows-left-right-to-line:before{content:"\e4ba"}.fa-dice-d20:before{content:"\f6cf"}.fa-truck-droplet:before{content:"\e58c"}.fa-file-circle-xmark:before{content:"\e5a1"}.fa-temperature-arrow-up:before,.fa-temperature-up:before{content:"\e040"}.fa-medal:before{content:"\f5a2"}.fa-bed:before{content:"\f236"}.fa-h-square:before,.fa-square-h:before{content:"\f0fd"}.fa-podcast:before{content:"\f2ce"}.fa-temperature-4:before,.fa-temperature-full:before,.fa-thermometer-4:before,.fa-thermometer-full:before{content:"\f2c7"}.fa-bell:before{content:"\f0f3"}.fa-superscript:before{content:"\f12b"}.fa-plug-circle-xmark:before{content:"\e560"}.fa-star-of-life:before{content:"\f621"}.fa-phone-slash:before{content:"\f3dd"}.fa-paint-roller:before{content:"\f5aa"}.fa-hands-helping:before,.fa-handshake-angle:before{content:"\f4c4"}.fa-location-dot:before,.fa-map-marker-alt:before{content:"\f3c5"}.fa-file:before{content:"\f15b"}.fa-greater-than:before{content:"\3e"}.fa-person-swimming:before,.fa-swimmer:before{content:"\f5c4"}.fa-arrow-down:before{content:"\f063"}.fa-droplet:before,.fa-tint:before{content:"\f043"}.fa-eraser:before{content:"\f12d"}.fa-earth-america:before,.fa-earth-americas:before,.fa-earth:before,.fa-globe-americas:before{content:"\f57d"}.fa-person-burst:before{content:"\e53b"}.fa-dove:before{content:"\f4ba"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-socks:before{content:"\f696"}.fa-inbox:before{content:"\f01c"}.fa-section:before{content:"\e447"}.fa-gauge-high:before,.fa-tachometer-alt-fast:before,.fa-tachometer-alt:before{content:"\f625"}.fa-envelope-open-text:before{content:"\f658"}.fa-hospital-alt:before,.fa-hospital-wide:before,.fa-hospital:before{content:"\f0f8"}.fa-wine-bottle:before{content:"\f72f"}.fa-chess-rook:before{content:"\f447"}.fa-bars-staggered:before,.fa-reorder:before,.fa-stream:before{content:"\f550"}.fa-dharmachakra:before{content:"\f655"}.fa-hotdog:before{content:"\f80f"}.fa-blind:before,.fa-person-walking-with-cane:before{content:"\f29d"}.fa-drum:before{content:"\f569"}.fa-ice-cream:before{content:"\f810"}.fa-heart-circle-bolt:before{content:"\e4fc"}.fa-fax:before{content:"\f1ac"}.fa-paragraph:before{content:"\f1dd"}.fa-check-to-slot:before,.fa-vote-yea:before{content:"\f772"}.fa-star-half:before{content:"\f089"}.fa-boxes-alt:before,.fa-boxes-stacked:before,.fa-boxes:before{content:"\f468"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-assistive-listening-systems:before,.fa-ear-listen:before{content:"\f2a2"}.fa-tree-city:before{content:"\e587"}.fa-play:before{content:"\f04b"}.fa-font:before{content:"\f031"}.fa-table-cells-row-lock:before{content:"\e67a"}.fa-rupiah-sign:before{content:"\e23d"}.fa-magnifying-glass:before,.fa-search:before{content:"\f002"}.fa-ping-pong-paddle-ball:before,.fa-table-tennis-paddle-ball:before,.fa-table-tennis:before{content:"\f45d"}.fa-diagnoses:before,.fa-person-dots-from-line:before{content:"\f470"}.fa-trash-can-arrow-up:before,.fa-trash-restore-alt:before{content:"\f82a"}.fa-naira-sign:before{content:"\e1f6"}.fa-cart-arrow-down:before{content:"\f218"}.fa-walkie-talkie:before{content:"\f8ef"}.fa-file-edit:before,.fa-file-pen:before{content:"\f31c"}.fa-receipt:before{content:"\f543"}.fa-pen-square:before,.fa-pencil-square:before,.fa-square-pen:before{content:"\f14b"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-person-circle-exclamation:before{content:"\e53f"}.fa-chevron-down:before{content:"\f078"}.fa-battery-5:before,.fa-battery-full:before,.fa-battery:before{content:"\f240"}.fa-skull-crossbones:before{content:"\f714"}.fa-code-compare:before{content:"\e13a"}.fa-list-dots:before,.fa-list-ul:before{content:"\f0ca"}.fa-school-lock:before{content:"\e56f"}.fa-tower-cell:before{content:"\e585"}.fa-down-long:before,.fa-long-arrow-alt-down:before{content:"\f309"}.fa-ranking-star:before{content:"\e561"}.fa-chess-king:before{content:"\f43f"}.fa-person-harassing:before{content:"\e549"}.fa-brazilian-real-sign:before{content:"\e46c"}.fa-landmark-alt:before,.fa-landmark-dome:before{content:"\f752"}.fa-arrow-up:before{content:"\f062"}.fa-television:before,.fa-tv-alt:before,.fa-tv:before{content:"\f26c"}.fa-shrimp:before{content:"\e448"}.fa-list-check:before,.fa-tasks:before{content:"\f0ae"}.fa-jug-detergent:before{content:"\e519"}.fa-circle-user:before,.fa-user-circle:before{content:"\f2bd"}.fa-user-shield:before{content:"\f505"}.fa-wind:before{content:"\f72e"}.fa-car-burst:before,.fa-car-crash:before{content:"\f5e1"}.fa-y:before{content:"\59"}.fa-person-snowboarding:before,.fa-snowboarding:before{content:"\f7ce"}.fa-shipping-fast:before,.fa-truck-fast:before{content:"\f48b"}.fa-fish:before{content:"\f578"}.fa-user-graduate:before{content:"\f501"}.fa-adjust:before,.fa-circle-half-stroke:before{content:"\f042"}.fa-clapperboard:before{content:"\e131"}.fa-circle-radiation:before,.fa-radiation-alt:before{content:"\f7ba"}.fa-baseball-ball:before,.fa-baseball:before{content:"\f433"}.fa-jet-fighter-up:before{content:"\e518"}.fa-diagram-project:before,.fa-project-diagram:before{content:"\f542"}.fa-copy:before{content:"\f0c5"}.fa-volume-mute:before,.fa-volume-times:before,.fa-volume-xmark:before{content:"\f6a9"}.fa-hand-sparkles:before{content:"\e05d"}.fa-grip-horizontal:before,.fa-grip:before{content:"\f58d"}.fa-share-from-square:before,.fa-share-square:before{content:"\f14d"}.fa-child-combatant:before,.fa-child-rifle:before{content:"\e4e0"}.fa-gun:before{content:"\e19b"}.fa-phone-square:before,.fa-square-phone:before{content:"\f098"}.fa-add:before,.fa-plus:before{content:"\2b"}.fa-expand:before{content:"\f065"}.fa-computer:before{content:"\e4e5"}.fa-close:before,.fa-multiply:before,.fa-remove:before,.fa-times:before,.fa-xmark:before{content:"\f00d"}.fa-arrows-up-down-left-right:before,.fa-arrows:before{content:"\f047"}.fa-chalkboard-teacher:before,.fa-chalkboard-user:before{content:"\f51c"}.fa-peso-sign:before{content:"\e222"}.fa-building-shield:before{content:"\e4d8"}.fa-baby:before{content:"\f77c"}.fa-users-line:before{content:"\e592"}.fa-quote-left-alt:before,.fa-quote-left:before{content:"\f10d"}.fa-tractor:before{content:"\f722"}.fa-trash-arrow-up:before,.fa-trash-restore:before{content:"\f829"}.fa-arrow-down-up-lock:before{content:"\e4b0"}.fa-lines-leaning:before{content:"\e51e"}.fa-ruler-combined:before{content:"\f546"}.fa-copyright:before{content:"\f1f9"}.fa-equals:before{content:"\3d"}.fa-blender:before{content:"\f517"}.fa-teeth:before{content:"\f62e"}.fa-ils:before,.fa-shekel-sign:before,.fa-shekel:before,.fa-sheqel-sign:before,.fa-sheqel:before{content:"\f20b"}.fa-map:before{content:"\f279"}.fa-rocket:before{content:"\f135"}.fa-photo-film:before,.fa-photo-video:before{content:"\f87c"}.fa-folder-minus:before{content:"\f65d"}.fa-store:before{content:"\f54e"}.fa-arrow-trend-up:before{content:"\e098"}.fa-plug-circle-minus:before{content:"\e55e"}.fa-sign-hanging:before,.fa-sign:before{content:"\f4d9"}.fa-bezier-curve:before{content:"\f55b"}.fa-bell-slash:before{content:"\f1f6"}.fa-tablet-android:before,.fa-tablet:before{content:"\f3fb"}.fa-school-flag:before{content:"\e56e"}.fa-fill:before{content:"\f575"}.fa-angle-up:before{content:"\f106"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-holly-berry:before{content:"\f7aa"}.fa-chevron-left:before{content:"\f053"}.fa-bacteria:before{content:"\e059"}.fa-hand-lizard:before{content:"\f258"}.fa-notdef:before{content:"\e1fe"}.fa-disease:before{content:"\f7fa"}.fa-briefcase-medical:before{content:"\f469"}.fa-genderless:before{content:"\f22d"}.fa-chevron-right:before{content:"\f054"}.fa-retweet:before{content:"\f079"}.fa-car-alt:before,.fa-car-rear:before{content:"\f5de"}.fa-pump-soap:before{content:"\e06b"}.fa-video-slash:before{content:"\f4e2"}.fa-battery-2:before,.fa-battery-quarter:before{content:"\f243"}.fa-radio:before{content:"\f8d7"}.fa-baby-carriage:before,.fa-carriage-baby:before{content:"\f77d"}.fa-traffic-light:before{content:"\f637"}.fa-thermometer:before{content:"\f491"}.fa-vr-cardboard:before{content:"\f729"}.fa-hand-middle-finger:before{content:"\f806"}.fa-percent:before,.fa-percentage:before{content:"\25"}.fa-truck-moving:before{content:"\f4df"}.fa-glass-water-droplet:before{content:"\e4f5"}.fa-display:before{content:"\e163"}.fa-face-smile:before,.fa-smile:before{content:"\f118"}.fa-thumb-tack:before,.fa-thumbtack:before{content:"\f08d"}.fa-trophy:before{content:"\f091"}.fa-person-praying:before,.fa-pray:before{content:"\f683"}.fa-hammer:before{content:"\f6e3"}.fa-hand-peace:before{content:"\f25b"}.fa-rotate:before,.fa-sync-alt:before{content:"\f2f1"}.fa-spinner:before{content:"\f110"}.fa-robot:before{content:"\f544"}.fa-peace:before{content:"\f67c"}.fa-cogs:before,.fa-gears:before{content:"\f085"}.fa-warehouse:before{content:"\f494"}.fa-arrow-up-right-dots:before{content:"\e4b7"}.fa-splotch:before{content:"\f5bc"}.fa-face-grin-hearts:before,.fa-grin-hearts:before{content:"\f584"}.fa-dice-four:before{content:"\f524"}.fa-sim-card:before{content:"\f7c4"}.fa-transgender-alt:before,.fa-transgender:before{content:"\f225"}.fa-mercury:before{content:"\f223"}.fa-arrow-turn-down:before,.fa-level-down:before{content:"\f149"}.fa-person-falling-burst:before{content:"\e547"}.fa-award:before{content:"\f559"}.fa-ticket-alt:before,.fa-ticket-simple:before{content:"\f3ff"}.fa-building:before{content:"\f1ad"}.fa-angle-double-left:before,.fa-angles-left:before{content:"\f100"}.fa-qrcode:before{content:"\f029"}.fa-clock-rotate-left:before,.fa-history:before{content:"\f1da"}.fa-face-grin-beam-sweat:before,.fa-grin-beam-sweat:before{content:"\f583"}.fa-arrow-right-from-file:before,.fa-file-export:before{content:"\f56e"}.fa-shield-blank:before,.fa-shield:before{content:"\f132"}.fa-arrow-up-short-wide:before,.fa-sort-amount-up-alt:before{content:"\f885"}.fa-house-medical:before{content:"\e3b2"}.fa-golf-ball-tee:before,.fa-golf-ball:before{content:"\f450"}.fa-chevron-circle-left:before,.fa-circle-chevron-left:before{content:"\f137"}.fa-house-chimney-window:before{content:"\e00d"}.fa-pen-nib:before{content:"\f5ad"}.fa-tent-arrow-turn-left:before{content:"\e580"}.fa-tents:before{content:"\e582"}.fa-magic:before,.fa-wand-magic:before{content:"\f0d0"}.fa-dog:before{content:"\f6d3"}.fa-carrot:before{content:"\f787"}.fa-moon:before{content:"\f186"}.fa-wine-glass-alt:before,.fa-wine-glass-empty:before{content:"\f5ce"}.fa-cheese:before{content:"\f7ef"}.fa-yin-yang:before{content:"\f6ad"}.fa-music:before{content:"\f001"}.fa-code-commit:before{content:"\f386"}.fa-temperature-low:before{content:"\f76b"}.fa-biking:before,.fa-person-biking:before{content:"\f84a"}.fa-broom:before{content:"\f51a"}.fa-shield-heart:before{content:"\e574"}.fa-gopuram:before{content:"\f664"}.fa-earth-oceania:before,.fa-globe-oceania:before{content:"\e47b"}.fa-square-xmark:before,.fa-times-square:before,.fa-xmark-square:before{content:"\f2d3"}.fa-hashtag:before{content:"\23"}.fa-expand-alt:before,.fa-up-right-and-down-left-from-center:before{content:"\f424"}.fa-oil-can:before{content:"\f613"}.fa-t:before{content:"\54"}.fa-hippo:before{content:"\f6ed"}.fa-chart-column:before{content:"\e0e3"}.fa-infinity:before{content:"\f534"}.fa-vial-circle-check:before{content:"\e596"}.fa-person-arrow-down-to-line:before{content:"\e538"}.fa-voicemail:before{content:"\f897"}.fa-fan:before{content:"\f863"}.fa-person-walking-luggage:before{content:"\e554"}.fa-arrows-alt-v:before,.fa-up-down:before{content:"\f338"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-calendar:before{content:"\f133"}.fa-trailer:before{content:"\e041"}.fa-bahai:before,.fa-haykal:before{content:"\f666"}.fa-sd-card:before{content:"\f7c2"}.fa-dragon:before{content:"\f6d5"}.fa-shoe-prints:before{content:"\f54b"}.fa-circle-plus:before,.fa-plus-circle:before{content:"\f055"}.fa-face-grin-tongue-wink:before,.fa-grin-tongue-wink:before{content:"\f58b"}.fa-hand-holding:before{content:"\f4bd"}.fa-plug-circle-exclamation:before{content:"\e55d"}.fa-chain-broken:before,.fa-chain-slash:before,.fa-link-slash:before,.fa-unlink:before{content:"\f127"}.fa-clone:before{content:"\f24d"}.fa-person-walking-arrow-loop-left:before{content:"\e551"}.fa-arrow-up-z-a:before,.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-fire-alt:before,.fa-fire-flame-curved:before{content:"\f7e4"}.fa-tornado:before{content:"\f76f"}.fa-file-circle-plus:before{content:"\e494"}.fa-book-quran:before,.fa-quran:before{content:"\f687"}.fa-anchor:before{content:"\f13d"}.fa-border-all:before{content:"\f84c"}.fa-angry:before,.fa-face-angry:before{content:"\f556"}.fa-cookie-bite:before{content:"\f564"}.fa-arrow-trend-down:before{content:"\e097"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-draw-polygon:before{content:"\f5ee"}.fa-balance-scale:before,.fa-scale-balanced:before{content:"\f24e"}.fa-gauge-simple-high:before,.fa-tachometer-fast:before,.fa-tachometer:before{content:"\f62a"}.fa-shower:before{content:"\f2cc"}.fa-desktop-alt:before,.fa-desktop:before{content:"\f390"}.fa-m:before{content:"\4d"}.fa-table-list:before,.fa-th-list:before{content:"\f00b"}.fa-comment-sms:before,.fa-sms:before{content:"\f7cd"}.fa-book:before{content:"\f02d"}.fa-user-plus:before{content:"\f234"}.fa-check:before{content:"\f00c"}.fa-battery-4:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-house-circle-check:before{content:"\e509"}.fa-angle-left:before{content:"\f104"}.fa-diagram-successor:before{content:"\e47a"}.fa-truck-arrow-right:before{content:"\e58b"}.fa-arrows-split-up-and-left:before{content:"\e4bc"}.fa-fist-raised:before,.fa-hand-fist:before{content:"\f6de"}.fa-cloud-moon:before{content:"\f6c3"}.fa-briefcase:before{content:"\f0b1"}.fa-person-falling:before{content:"\e546"}.fa-image-portrait:before,.fa-portrait:before{content:"\f3e0"}.fa-user-tag:before{content:"\f507"}.fa-rug:before{content:"\e569"}.fa-earth-europe:before,.fa-globe-europe:before{content:"\f7a2"}.fa-cart-flatbed-suitcase:before,.fa-luggage-cart:before{content:"\f59d"}.fa-rectangle-times:before,.fa-rectangle-xmark:before,.fa-times-rectangle:before,.fa-window-close:before{content:"\f410"}.fa-baht-sign:before{content:"\e0ac"}.fa-book-open:before{content:"\f518"}.fa-book-journal-whills:before,.fa-journal-whills:before{content:"\f66a"}.fa-handcuffs:before{content:"\e4f8"}.fa-exclamation-triangle:before,.fa-triangle-exclamation:before,.fa-warning:before{content:"\f071"}.fa-database:before{content:"\f1c0"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-bottle-droplet:before{content:"\e4c4"}.fa-mask-face:before{content:"\e1d7"}.fa-hill-rockslide:before{content:"\e508"}.fa-exchange-alt:before,.fa-right-left:before{content:"\f362"}.fa-paper-plane:before{content:"\f1d8"}.fa-road-circle-exclamation:before{content:"\e565"}.fa-dungeon:before{content:"\f6d9"}.fa-align-right:before{content:"\f038"}.fa-money-bill-1-wave:before,.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-life-ring:before{content:"\f1cd"}.fa-hands:before,.fa-sign-language:before,.fa-signing:before{content:"\f2a7"}.fa-calendar-day:before{content:"\f783"}.fa-ladder-water:before,.fa-swimming-pool:before,.fa-water-ladder:before{content:"\f5c5"}.fa-arrows-up-down:before,.fa-arrows-v:before{content:"\f07d"}.fa-face-grimace:before,.fa-grimace:before{content:"\f57f"}.fa-wheelchair-alt:before,.fa-wheelchair-move:before{content:"\e2ce"}.fa-level-down-alt:before,.fa-turn-down:before{content:"\f3be"}.fa-person-walking-arrow-right:before{content:"\e552"}.fa-envelope-square:before,.fa-square-envelope:before{content:"\f199"}.fa-dice:before{content:"\f522"}.fa-bowling-ball:before{content:"\f436"}.fa-brain:before{content:"\f5dc"}.fa-band-aid:before,.fa-bandage:before{content:"\f462"}.fa-calendar-minus:before{content:"\f272"}.fa-circle-xmark:before,.fa-times-circle:before,.fa-xmark-circle:before{content:"\f057"}.fa-gifts:before{content:"\f79c"}.fa-hotel:before{content:"\f594"}.fa-earth-asia:before,.fa-globe-asia:before{content:"\f57e"}.fa-id-card-alt:before,.fa-id-card-clip:before{content:"\f47f"}.fa-magnifying-glass-plus:before,.fa-search-plus:before{content:"\f00e"}.fa-thumbs-up:before{content:"\f164"}.fa-user-clock:before{content:"\f4fd"}.fa-allergies:before,.fa-hand-dots:before{content:"\f461"}.fa-file-invoice:before{content:"\f570"}.fa-window-minimize:before{content:"\f2d1"}.fa-coffee:before,.fa-mug-saucer:before{content:"\f0f4"}.fa-brush:before{content:"\f55d"}.fa-mask:before{content:"\f6fa"}.fa-magnifying-glass-minus:before,.fa-search-minus:before{content:"\f010"}.fa-ruler-vertical:before{content:"\f548"}.fa-user-alt:before,.fa-user-large:before{content:"\f406"}.fa-train-tram:before{content:"\e5b4"}.fa-user-nurse:before{content:"\f82f"}.fa-syringe:before{content:"\f48e"}.fa-cloud-sun:before{content:"\f6c4"}.fa-stopwatch-20:before{content:"\e06f"}.fa-square-full:before{content:"\f45c"}.fa-magnet:before{content:"\f076"}.fa-jar:before{content:"\e516"}.fa-note-sticky:before,.fa-sticky-note:before{content:"\f249"}.fa-bug-slash:before{content:"\e490"}.fa-arrow-up-from-water-pump:before{content:"\e4b6"}.fa-bone:before{content:"\f5d7"}.fa-user-injured:before{content:"\f728"}.fa-face-sad-tear:before,.fa-sad-tear:before{content:"\f5b4"}.fa-plane:before{content:"\f072"}.fa-tent-arrows-down:before{content:"\e581"}.fa-exclamation:before{content:"\21"}.fa-arrows-spin:before{content:"\e4bb"}.fa-print:before{content:"\f02f"}.fa-try:before,.fa-turkish-lira-sign:before,.fa-turkish-lira:before{content:"\e2bb"}.fa-dollar-sign:before,.fa-dollar:before,.fa-usd:before{content:"\24"}.fa-x:before{content:"\58"}.fa-magnifying-glass-dollar:before,.fa-search-dollar:before{content:"\f688"}.fa-users-cog:before,.fa-users-gear:before{content:"\f509"}.fa-person-military-pointing:before{content:"\e54a"}.fa-bank:before,.fa-building-columns:before,.fa-institution:before,.fa-museum:before,.fa-university:before{content:"\f19c"}.fa-umbrella:before{content:"\f0e9"}.fa-trowel:before{content:"\e589"}.fa-d:before{content:"\44"}.fa-stapler:before{content:"\e5af"}.fa-masks-theater:before,.fa-theater-masks:before{content:"\f630"}.fa-kip-sign:before{content:"\e1c4"}.fa-hand-point-left:before{content:"\f0a5"}.fa-handshake-alt:before,.fa-handshake-simple:before{content:"\f4c6"}.fa-fighter-jet:before,.fa-jet-fighter:before{content:"\f0fb"}.fa-share-alt-square:before,.fa-square-share-nodes:before{content:"\f1e1"}.fa-barcode:before{content:"\f02a"}.fa-plus-minus:before{content:"\e43c"}.fa-video-camera:before,.fa-video:before{content:"\f03d"}.fa-graduation-cap:before,.fa-mortar-board:before{content:"\f19d"}.fa-hand-holding-medical:before{content:"\e05c"}.fa-person-circle-check:before{content:"\e53e"}.fa-level-up-alt:before,.fa-turn-up:before{content:"\f3bf"} +.fa-sr-only,.fa-sr-only-focusable:not(:focus),.sr-only,.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:host,:root{--fa-style-family-brands:"Font Awesome 6 Brands";--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands"}@font-face{font-family:"Font Awesome 6 Brands";font-style:normal;font-weight:400;font-display:block;src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); }.fa-brands,.fab{font-weight:400}.fa-monero:before{content:"\f3d0"}.fa-hooli:before{content:"\f427"}.fa-yelp:before{content:"\f1e9"}.fa-cc-visa:before{content:"\f1f0"}.fa-lastfm:before{content:"\f202"}.fa-shopware:before{content:"\f5b5"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-aws:before{content:"\f375"}.fa-redhat:before{content:"\f7bc"}.fa-yoast:before{content:"\f2b1"}.fa-cloudflare:before{content:"\e07d"}.fa-ups:before{content:"\f7e0"}.fa-pixiv:before{content:"\e640"}.fa-wpexplorer:before{content:"\f2de"}.fa-dyalog:before{content:"\f399"}.fa-bity:before{content:"\f37a"}.fa-stackpath:before{content:"\f842"}.fa-buysellads:before{content:"\f20d"}.fa-first-order:before{content:"\f2b0"}.fa-modx:before{content:"\f285"}.fa-guilded:before{content:"\e07e"}.fa-vnv:before{content:"\f40b"}.fa-js-square:before,.fa-square-js:before{content:"\f3b9"}.fa-microsoft:before{content:"\f3ca"}.fa-qq:before{content:"\f1d6"}.fa-orcid:before{content:"\f8d2"}.fa-java:before{content:"\f4e4"}.fa-invision:before{content:"\f7b0"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-centercode:before{content:"\f380"}.fa-glide-g:before{content:"\f2a6"}.fa-drupal:before{content:"\f1a9"}.fa-jxl:before{content:"\e67b"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-unity:before{content:"\e049"}.fa-whmcs:before{content:"\f40d"}.fa-rocketchat:before{content:"\f3e8"}.fa-vk:before{content:"\f189"}.fa-untappd:before{content:"\f405"}.fa-mailchimp:before{content:"\f59e"}.fa-css3-alt:before{content:"\f38b"}.fa-reddit-square:before,.fa-square-reddit:before{content:"\f1a2"}.fa-vimeo-v:before{content:"\f27d"}.fa-contao:before{content:"\f26d"}.fa-square-font-awesome:before{content:"\e5ad"}.fa-deskpro:before{content:"\f38f"}.fa-brave:before{content:"\e63c"}.fa-sistrix:before{content:"\f3ee"}.fa-instagram-square:before,.fa-square-instagram:before{content:"\e055"}.fa-battle-net:before{content:"\f835"}.fa-the-red-yeti:before{content:"\f69d"}.fa-hacker-news-square:before,.fa-square-hacker-news:before{content:"\f3af"}.fa-edge:before{content:"\f282"}.fa-threads:before{content:"\e618"}.fa-napster:before{content:"\f3d2"}.fa-snapchat-square:before,.fa-square-snapchat:before{content:"\f2ad"}.fa-google-plus-g:before{content:"\f0d5"}.fa-artstation:before{content:"\f77a"}.fa-markdown:before{content:"\f60f"}.fa-sourcetree:before{content:"\f7d3"}.fa-google-plus:before{content:"\f2b3"}.fa-diaspora:before{content:"\f791"}.fa-foursquare:before{content:"\f180"}.fa-stack-overflow:before{content:"\f16c"}.fa-github-alt:before{content:"\f113"}.fa-phoenix-squadron:before{content:"\f511"}.fa-pagelines:before{content:"\f18c"}.fa-algolia:before{content:"\f36c"}.fa-red-river:before{content:"\f3e3"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-safari:before{content:"\f267"}.fa-google:before{content:"\f1a0"}.fa-font-awesome-alt:before,.fa-square-font-awesome-stroke:before{content:"\f35c"}.fa-atlassian:before{content:"\f77b"}.fa-linkedin-in:before{content:"\f0e1"}.fa-digital-ocean:before{content:"\f391"}.fa-nimblr:before{content:"\f5a8"}.fa-chromecast:before{content:"\f838"}.fa-evernote:before{content:"\f839"}.fa-hacker-news:before{content:"\f1d4"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-adversal:before{content:"\f36a"}.fa-creative-commons:before{content:"\f25e"}.fa-watchman-monitoring:before{content:"\e087"}.fa-fonticons:before{content:"\f280"}.fa-weixin:before{content:"\f1d7"}.fa-shirtsinbulk:before{content:"\f214"}.fa-codepen:before{content:"\f1cb"}.fa-git-alt:before{content:"\f841"}.fa-lyft:before{content:"\f3c3"}.fa-rev:before{content:"\f5b2"}.fa-windows:before{content:"\f17a"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-square-viadeo:before,.fa-viadeo-square:before{content:"\f2aa"}.fa-meetup:before{content:"\f2e0"}.fa-centos:before{content:"\f789"}.fa-adn:before{content:"\f170"}.fa-cloudsmith:before{content:"\f384"}.fa-opensuse:before{content:"\e62b"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-dribbble-square:before,.fa-square-dribbble:before{content:"\f397"}.fa-codiepie:before{content:"\f284"}.fa-node:before{content:"\f419"}.fa-mix:before{content:"\f3cb"}.fa-steam:before{content:"\f1b6"}.fa-cc-apple-pay:before{content:"\f416"}.fa-scribd:before{content:"\f28a"}.fa-debian:before{content:"\e60b"}.fa-openid:before{content:"\f19b"}.fa-instalod:before{content:"\e081"}.fa-expeditedssl:before{content:"\f23e"}.fa-sellcast:before{content:"\f2da"}.fa-square-twitter:before,.fa-twitter-square:before{content:"\f081"}.fa-r-project:before{content:"\f4f7"}.fa-delicious:before{content:"\f1a5"}.fa-freebsd:before{content:"\f3a4"}.fa-vuejs:before{content:"\f41f"}.fa-accusoft:before{content:"\f369"}.fa-ioxhost:before{content:"\f208"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-app-store:before{content:"\f36f"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-itunes-note:before{content:"\f3b5"}.fa-golang:before{content:"\e40f"}.fa-kickstarter:before,.fa-square-kickstarter:before{content:"\f3bb"}.fa-grav:before{content:"\f2d6"}.fa-weibo:before{content:"\f18a"}.fa-uncharted:before{content:"\e084"}.fa-firstdraft:before{content:"\f3a1"}.fa-square-youtube:before,.fa-youtube-square:before{content:"\f431"}.fa-wikipedia-w:before{content:"\f266"}.fa-rendact:before,.fa-wpressr:before{content:"\f3e4"}.fa-angellist:before{content:"\f209"}.fa-galactic-republic:before{content:"\f50c"}.fa-nfc-directional:before{content:"\e530"}.fa-skype:before{content:"\f17e"}.fa-joget:before{content:"\f3b7"}.fa-fedora:before{content:"\f798"}.fa-stripe-s:before{content:"\f42a"}.fa-meta:before{content:"\e49b"}.fa-laravel:before{content:"\f3bd"}.fa-hotjar:before{content:"\f3b1"}.fa-bluetooth-b:before{content:"\f294"}.fa-square-letterboxd:before{content:"\e62e"}.fa-sticker-mule:before{content:"\f3f7"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-hips:before{content:"\f452"}.fa-behance:before{content:"\f1b4"}.fa-reddit:before{content:"\f1a1"}.fa-discord:before{content:"\f392"}.fa-chrome:before{content:"\f268"}.fa-app-store-ios:before{content:"\f370"}.fa-cc-discover:before{content:"\f1f2"}.fa-wpbeginner:before{content:"\f297"}.fa-confluence:before{content:"\f78d"}.fa-shoelace:before{content:"\e60c"}.fa-mdb:before{content:"\f8ca"}.fa-dochub:before{content:"\f394"}.fa-accessible-icon:before{content:"\f368"}.fa-ebay:before{content:"\f4f4"}.fa-amazon:before{content:"\f270"}.fa-unsplash:before{content:"\e07c"}.fa-yarn:before{content:"\f7e3"}.fa-square-steam:before,.fa-steam-square:before{content:"\f1b7"}.fa-500px:before{content:"\f26e"}.fa-square-vimeo:before,.fa-vimeo-square:before{content:"\f194"}.fa-asymmetrik:before{content:"\f372"}.fa-font-awesome-flag:before,.fa-font-awesome-logo-full:before,.fa-font-awesome:before{content:"\f2b4"}.fa-gratipay:before{content:"\f184"}.fa-apple:before{content:"\f179"}.fa-hive:before{content:"\e07f"}.fa-gitkraken:before{content:"\f3a6"}.fa-keybase:before{content:"\f4f5"}.fa-apple-pay:before{content:"\f415"}.fa-padlet:before{content:"\e4a0"}.fa-amazon-pay:before{content:"\f42c"}.fa-github-square:before,.fa-square-github:before{content:"\f092"}.fa-stumbleupon:before{content:"\f1a4"}.fa-fedex:before{content:"\f797"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-shopify:before{content:"\e057"}.fa-neos:before{content:"\f612"}.fa-square-threads:before{content:"\e619"}.fa-hackerrank:before{content:"\f5f7"}.fa-researchgate:before{content:"\f4f8"}.fa-swift:before{content:"\f8e1"}.fa-angular:before{content:"\f420"}.fa-speakap:before{content:"\f3f3"}.fa-angrycreative:before{content:"\f36e"}.fa-y-combinator:before{content:"\f23b"}.fa-empire:before{content:"\f1d1"}.fa-envira:before{content:"\f299"}.fa-google-scholar:before{content:"\e63b"}.fa-gitlab-square:before,.fa-square-gitlab:before{content:"\e5ae"}.fa-studiovinari:before{content:"\f3f8"}.fa-pied-piper:before{content:"\f2ae"}.fa-wordpress:before{content:"\f19a"}.fa-product-hunt:before{content:"\f288"}.fa-firefox:before{content:"\f269"}.fa-linode:before{content:"\f2b8"}.fa-goodreads:before{content:"\f3a8"}.fa-odnoklassniki-square:before,.fa-square-odnoklassniki:before{content:"\f264"}.fa-jsfiddle:before{content:"\f1cc"}.fa-sith:before{content:"\f512"}.fa-themeisle:before{content:"\f2b2"}.fa-page4:before{content:"\f3d7"}.fa-hashnode:before{content:"\e499"}.fa-react:before{content:"\f41b"}.fa-cc-paypal:before{content:"\f1f4"}.fa-squarespace:before{content:"\f5be"}.fa-cc-stripe:before{content:"\f1f5"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-bitcoin:before{content:"\f379"}.fa-keycdn:before{content:"\f3ba"}.fa-opera:before{content:"\f26a"}.fa-itch-io:before{content:"\f83a"}.fa-umbraco:before{content:"\f8e8"}.fa-galactic-senate:before{content:"\f50d"}.fa-ubuntu:before{content:"\f7df"}.fa-draft2digital:before{content:"\f396"}.fa-stripe:before{content:"\f429"}.fa-houzz:before{content:"\f27c"}.fa-gg:before{content:"\f260"}.fa-dhl:before{content:"\f790"}.fa-pinterest-square:before,.fa-square-pinterest:before{content:"\f0d3"}.fa-xing:before{content:"\f168"}.fa-blackberry:before{content:"\f37b"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-playstation:before{content:"\f3df"}.fa-quinscape:before{content:"\f459"}.fa-less:before{content:"\f41d"}.fa-blogger-b:before{content:"\f37d"}.fa-opencart:before{content:"\f23d"}.fa-vine:before{content:"\f1ca"}.fa-signal-messenger:before{content:"\e663"}.fa-paypal:before{content:"\f1ed"}.fa-gitlab:before{content:"\f296"}.fa-typo3:before{content:"\f42b"}.fa-reddit-alien:before{content:"\f281"}.fa-yahoo:before{content:"\f19e"}.fa-dailymotion:before{content:"\e052"}.fa-affiliatetheme:before{content:"\f36b"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-bootstrap:before{content:"\f836"}.fa-odnoklassniki:before{content:"\f263"}.fa-nfc-symbol:before{content:"\e531"}.fa-mintbit:before{content:"\e62f"}.fa-ethereum:before{content:"\f42e"}.fa-speaker-deck:before{content:"\f83c"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-patreon:before{content:"\f3d9"}.fa-avianex:before{content:"\f374"}.fa-ello:before{content:"\f5f1"}.fa-gofore:before{content:"\f3a7"}.fa-bimobject:before{content:"\f378"}.fa-brave-reverse:before{content:"\e63d"}.fa-facebook-f:before{content:"\f39e"}.fa-google-plus-square:before,.fa-square-google-plus:before{content:"\f0d4"}.fa-web-awesome:before{content:"\e682"}.fa-mandalorian:before{content:"\f50f"}.fa-first-order-alt:before{content:"\f50a"}.fa-osi:before{content:"\f41a"}.fa-google-wallet:before{content:"\f1ee"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-periscope:before{content:"\f3da"}.fa-fulcrum:before{content:"\f50b"}.fa-cloudscale:before{content:"\f383"}.fa-forumbee:before{content:"\f211"}.fa-mizuni:before{content:"\f3cc"}.fa-schlix:before{content:"\f3ea"}.fa-square-xing:before,.fa-xing-square:before{content:"\f169"}.fa-bandcamp:before{content:"\f2d5"}.fa-wpforms:before{content:"\f298"}.fa-cloudversify:before{content:"\f385"}.fa-usps:before{content:"\f7e1"}.fa-megaport:before{content:"\f5a3"}.fa-magento:before{content:"\f3c4"}.fa-spotify:before{content:"\f1bc"}.fa-optin-monster:before{content:"\f23c"}.fa-fly:before{content:"\f417"}.fa-aviato:before{content:"\f421"}.fa-itunes:before{content:"\f3b4"}.fa-cuttlefish:before{content:"\f38c"}.fa-blogger:before{content:"\f37c"}.fa-flickr:before{content:"\f16e"}.fa-viber:before{content:"\f409"}.fa-soundcloud:before{content:"\f1be"}.fa-digg:before{content:"\f1a6"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-letterboxd:before{content:"\e62d"}.fa-symfony:before{content:"\f83d"}.fa-maxcdn:before{content:"\f136"}.fa-etsy:before{content:"\f2d7"}.fa-facebook-messenger:before{content:"\f39f"}.fa-audible:before{content:"\f373"}.fa-think-peaks:before{content:"\f731"}.fa-bilibili:before{content:"\e3d9"}.fa-erlang:before{content:"\f39d"}.fa-x-twitter:before{content:"\e61b"}.fa-cotton-bureau:before{content:"\f89e"}.fa-dashcube:before{content:"\f210"}.fa-42-group:before,.fa-innosoft:before{content:"\e080"}.fa-stack-exchange:before{content:"\f18d"}.fa-elementor:before{content:"\f430"}.fa-pied-piper-square:before,.fa-square-pied-piper:before{content:"\e01e"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-palfed:before{content:"\f3d8"}.fa-superpowers:before{content:"\f2dd"}.fa-resolving:before{content:"\f3e7"}.fa-xbox:before{content:"\f412"}.fa-square-web-awesome-stroke:before{content:"\e684"}.fa-searchengin:before{content:"\f3eb"}.fa-tiktok:before{content:"\e07b"}.fa-facebook-square:before,.fa-square-facebook:before{content:"\f082"}.fa-renren:before{content:"\f18b"}.fa-linux:before{content:"\f17c"}.fa-glide:before{content:"\f2a5"}.fa-linkedin:before{content:"\f08c"}.fa-hubspot:before{content:"\f3b2"}.fa-deploydog:before{content:"\f38e"}.fa-twitch:before{content:"\f1e8"}.fa-ravelry:before{content:"\f2d9"}.fa-mixer:before{content:"\e056"}.fa-lastfm-square:before,.fa-square-lastfm:before{content:"\f203"}.fa-vimeo:before{content:"\f40a"}.fa-mendeley:before{content:"\f7b3"}.fa-uniregistry:before{content:"\f404"}.fa-figma:before{content:"\f799"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-dropbox:before{content:"\f16b"}.fa-instagram:before{content:"\f16d"}.fa-cmplid:before{content:"\e360"}.fa-upwork:before{content:"\e641"}.fa-facebook:before{content:"\f09a"}.fa-gripfire:before{content:"\f3ac"}.fa-jedi-order:before{content:"\f50e"}.fa-uikit:before{content:"\f403"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-phabricator:before{content:"\f3db"}.fa-ussunnah:before{content:"\f407"}.fa-earlybirds:before{content:"\f39a"}.fa-trade-federation:before{content:"\f513"}.fa-autoprefixer:before{content:"\f41c"}.fa-whatsapp:before{content:"\f232"}.fa-square-upwork:before{content:"\e67c"}.fa-slideshare:before{content:"\f1e7"}.fa-google-play:before{content:"\f3ab"}.fa-viadeo:before{content:"\f2a9"}.fa-line:before{content:"\f3c0"}.fa-google-drive:before{content:"\f3aa"}.fa-servicestack:before{content:"\f3ec"}.fa-simplybuilt:before{content:"\f215"}.fa-bitbucket:before{content:"\f171"}.fa-imdb:before{content:"\f2d8"}.fa-deezer:before{content:"\e077"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-jira:before{content:"\f7b1"}.fa-docker:before{content:"\f395"}.fa-screenpal:before{content:"\e570"}.fa-bluetooth:before{content:"\f293"}.fa-gitter:before{content:"\f426"}.fa-d-and-d:before{content:"\f38d"}.fa-microblog:before{content:"\e01a"}.fa-cc-diners-club:before{content:"\f24c"}.fa-gg-circle:before{content:"\f261"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-yandex:before{content:"\f413"}.fa-readme:before{content:"\f4d5"}.fa-html5:before{content:"\f13b"}.fa-sellsy:before{content:"\f213"}.fa-square-web-awesome:before{content:"\e683"}.fa-sass:before{content:"\f41e"}.fa-wirsindhandwerk:before,.fa-wsh:before{content:"\e2d0"}.fa-buromobelexperte:before{content:"\f37f"}.fa-salesforce:before{content:"\f83b"}.fa-octopus-deploy:before{content:"\e082"}.fa-medapps:before{content:"\f3c6"}.fa-ns8:before{content:"\f3d5"}.fa-pinterest-p:before{content:"\f231"}.fa-apper:before{content:"\f371"}.fa-fort-awesome:before{content:"\f286"}.fa-waze:before{content:"\f83f"}.fa-bluesky:before{content:"\e671"}.fa-cc-jcb:before{content:"\f24b"}.fa-snapchat-ghost:before,.fa-snapchat:before{content:"\f2ab"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-rust:before{content:"\e07a"}.fa-wix:before{content:"\f5cf"}.fa-behance-square:before,.fa-square-behance:before{content:"\f1b5"}.fa-supple:before{content:"\f3f9"}.fa-webflow:before{content:"\e65c"}.fa-rebel:before{content:"\f1d0"}.fa-css3:before{content:"\f13c"}.fa-staylinked:before{content:"\f3f5"}.fa-kaggle:before{content:"\f5fa"}.fa-space-awesome:before{content:"\e5ac"}.fa-deviantart:before{content:"\f1bd"}.fa-cpanel:before{content:"\f388"}.fa-goodreads-g:before{content:"\f3a9"}.fa-git-square:before,.fa-square-git:before{content:"\f1d2"}.fa-square-tumblr:before,.fa-tumblr-square:before{content:"\f174"}.fa-trello:before{content:"\f181"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-get-pocket:before{content:"\f265"}.fa-perbyte:before{content:"\e083"}.fa-grunt:before{content:"\f3ad"}.fa-weebly:before{content:"\f5cc"}.fa-connectdevelop:before{content:"\f20e"}.fa-leanpub:before{content:"\f212"}.fa-black-tie:before{content:"\f27e"}.fa-themeco:before{content:"\f5c6"}.fa-python:before{content:"\f3e2"}.fa-android:before{content:"\f17b"}.fa-bots:before{content:"\e340"}.fa-free-code-camp:before{content:"\f2c5"}.fa-hornbill:before{content:"\f592"}.fa-js:before{content:"\f3b8"}.fa-ideal:before{content:"\e013"}.fa-git:before{content:"\f1d3"}.fa-dev:before{content:"\f6cc"}.fa-sketch:before{content:"\f7c6"}.fa-yandex-international:before{content:"\f414"}.fa-cc-amex:before{content:"\f1f3"}.fa-uber:before{content:"\f402"}.fa-github:before{content:"\f09b"}.fa-php:before{content:"\f457"}.fa-alipay:before{content:"\f642"}.fa-youtube:before{content:"\f167"}.fa-skyatlas:before{content:"\f216"}.fa-firefox-browser:before{content:"\e007"}.fa-replyd:before{content:"\f3e6"}.fa-suse:before{content:"\f7d6"}.fa-jenkins:before{content:"\f3b6"}.fa-twitter:before{content:"\f099"}.fa-rockrms:before{content:"\f3e9"}.fa-pinterest:before{content:"\f0d2"}.fa-buffer:before{content:"\f837"}.fa-npm:before{content:"\f3d4"}.fa-yammer:before{content:"\f840"}.fa-btc:before{content:"\f15a"}.fa-dribbble:before{content:"\f17d"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-internet-explorer:before{content:"\f26b"}.fa-stubber:before{content:"\e5c7"}.fa-telegram-plane:before,.fa-telegram:before{content:"\f2c6"}.fa-old-republic:before{content:"\f510"}.fa-odysee:before{content:"\e5c6"}.fa-square-whatsapp:before,.fa-whatsapp-square:before{content:"\f40c"}.fa-node-js:before{content:"\f3d3"}.fa-edge-legacy:before{content:"\e078"}.fa-slack-hash:before,.fa-slack:before{content:"\f198"}.fa-medrt:before{content:"\f3c8"}.fa-usb:before{content:"\f287"}.fa-tumblr:before{content:"\f173"}.fa-vaadin:before{content:"\f408"}.fa-quora:before{content:"\f2c4"}.fa-square-x-twitter:before{content:"\e61a"}.fa-reacteurope:before{content:"\f75d"}.fa-medium-m:before,.fa-medium:before{content:"\f23a"}.fa-amilia:before{content:"\f36d"}.fa-mixcloud:before{content:"\f289"}.fa-flipboard:before{content:"\f44d"}.fa-viacoin:before{content:"\f237"}.fa-critical-role:before{content:"\f6c9"}.fa-sitrox:before{content:"\e44a"}.fa-discourse:before{content:"\f393"}.fa-joomla:before{content:"\f1aa"}.fa-mastodon:before{content:"\f4f6"}.fa-airbnb:before{content:"\f834"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-buy-n-large:before{content:"\f8a6"}.fa-gulp:before{content:"\f3ae"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-strava:before{content:"\f428"}.fa-ember:before{content:"\f423"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-teamspeak:before{content:"\f4f9"}.fa-pushed:before{content:"\f3e1"}.fa-wordpress-simple:before{content:"\f411"}.fa-nutritionix:before{content:"\f3d6"}.fa-wodu:before{content:"\e088"}.fa-google-pay:before{content:"\e079"}.fa-intercom:before{content:"\f7af"}.fa-zhihu:before{content:"\f63f"}.fa-korvue:before{content:"\f42f"}.fa-pix:before{content:"\e43a"}.fa-steam-symbol:before{content:"\f3f6"}:host,:root{--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:400;font-display:block;src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); }.fa-regular,.far{font-weight:400}:host,:root{--fa-style-family-classic:"Font Awesome 6 Free";--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:block;src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }.fa-solid,.fas{font-weight:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); }@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); }@font-face{font-family:"FontAwesome";font-display:block;src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }@font-face{font-family:"FontAwesome";font-display:block;src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); }@font-face{font-family:"FontAwesome";font-display:block;src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); }@font-face{font-family:"FontAwesome";font-display:block;src: url("../webfonts/fa-v4compatibility.woff2") format("woff2"), url("../webfonts/fa-v4compatibility.ttf") format("truetype"); } \ No newline at end of file diff --git a/docs/deps/font-awesome-6.5.2/css/v4-shims.css b/docs/deps/font-awesome-6.5.2/css/v4-shims.css new file mode 100644 index 0000000..ea60ea4 --- /dev/null +++ b/docs/deps/font-awesome-6.5.2/css/v4-shims.css @@ -0,0 +1,2194 @@ +/*! + * Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + * Copyright 2024 Fonticons, Inc. + */ +.fa.fa-glass:before { + content: "\f000"; } + +.fa.fa-envelope-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-envelope-o:before { + content: "\f0e0"; } + +.fa.fa-star-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-star-o:before { + content: "\f005"; } + +.fa.fa-remove:before { + content: "\f00d"; } + +.fa.fa-close:before { + content: "\f00d"; } + +.fa.fa-gear:before { + content: "\f013"; } + +.fa.fa-trash-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-trash-o:before { + content: "\f2ed"; } + +.fa.fa-home:before { + content: "\f015"; } + +.fa.fa-file-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-o:before { + content: "\f15b"; } + +.fa.fa-clock-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-clock-o:before { + content: "\f017"; } + +.fa.fa-arrow-circle-o-down { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-arrow-circle-o-down:before { + content: "\f358"; } + +.fa.fa-arrow-circle-o-up { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-arrow-circle-o-up:before { + content: "\f35b"; } + +.fa.fa-play-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-play-circle-o:before { + content: "\f144"; } + +.fa.fa-repeat:before { + content: "\f01e"; } + +.fa.fa-rotate-right:before { + content: "\f01e"; } + +.fa.fa-refresh:before { + content: "\f021"; } + +.fa.fa-list-alt { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-list-alt:before { + content: "\f022"; } + +.fa.fa-dedent:before { + content: "\f03b"; } + +.fa.fa-video-camera:before { + content: "\f03d"; } + +.fa.fa-picture-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-picture-o:before { + content: "\f03e"; } + +.fa.fa-photo { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-photo:before { + content: "\f03e"; } + +.fa.fa-image { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-image:before { + content: "\f03e"; } + +.fa.fa-map-marker:before { + content: "\f3c5"; } + +.fa.fa-pencil-square-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-pencil-square-o:before { + content: "\f044"; } + +.fa.fa-edit { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-edit:before { + content: "\f044"; } + +.fa.fa-share-square-o:before { + content: "\f14d"; } + +.fa.fa-check-square-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-check-square-o:before { + content: "\f14a"; } + +.fa.fa-arrows:before { + content: "\f0b2"; } + +.fa.fa-times-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-times-circle-o:before { + content: "\f057"; } + +.fa.fa-check-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-check-circle-o:before { + content: "\f058"; } + +.fa.fa-mail-forward:before { + content: "\f064"; } + +.fa.fa-expand:before { + content: "\f424"; } + +.fa.fa-compress:before { + content: "\f422"; } + +.fa.fa-eye { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-eye-slash { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-warning:before { + content: "\f071"; } + +.fa.fa-calendar:before { + content: "\f073"; } + +.fa.fa-arrows-v:before { + content: "\f338"; } + +.fa.fa-arrows-h:before { + content: "\f337"; } + +.fa.fa-bar-chart:before { + content: "\e0e3"; } + +.fa.fa-bar-chart-o:before { + content: "\e0e3"; } + +.fa.fa-twitter-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-twitter-square:before { + content: "\f081"; } + +.fa.fa-facebook-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-facebook-square:before { + content: "\f082"; } + +.fa.fa-gears:before { + content: "\f085"; } + +.fa.fa-thumbs-o-up { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-thumbs-o-up:before { + content: "\f164"; } + +.fa.fa-thumbs-o-down { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-thumbs-o-down:before { + content: "\f165"; } + +.fa.fa-heart-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-heart-o:before { + content: "\f004"; } + +.fa.fa-sign-out:before { + content: "\f2f5"; } + +.fa.fa-linkedin-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-linkedin-square:before { + content: "\f08c"; } + +.fa.fa-thumb-tack:before { + content: "\f08d"; } + +.fa.fa-external-link:before { + content: "\f35d"; } + +.fa.fa-sign-in:before { + content: "\f2f6"; } + +.fa.fa-github-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-github-square:before { + content: "\f092"; } + +.fa.fa-lemon-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-lemon-o:before { + content: "\f094"; } + +.fa.fa-square-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-square-o:before { + content: "\f0c8"; } + +.fa.fa-bookmark-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-bookmark-o:before { + content: "\f02e"; } + +.fa.fa-twitter { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-facebook { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-facebook:before { + content: "\f39e"; } + +.fa.fa-facebook-f { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-facebook-f:before { + content: "\f39e"; } + +.fa.fa-github { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-credit-card { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-feed:before { + content: "\f09e"; } + +.fa.fa-hdd-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hdd-o:before { + content: "\f0a0"; } + +.fa.fa-hand-o-right { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-o-right:before { + content: "\f0a4"; } + +.fa.fa-hand-o-left { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-o-left:before { + content: "\f0a5"; } + +.fa.fa-hand-o-up { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-o-up:before { + content: "\f0a6"; } + +.fa.fa-hand-o-down { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-o-down:before { + content: "\f0a7"; } + +.fa.fa-globe:before { + content: "\f57d"; } + +.fa.fa-tasks:before { + content: "\f828"; } + +.fa.fa-arrows-alt:before { + content: "\f31e"; } + +.fa.fa-group:before { + content: "\f0c0"; } + +.fa.fa-chain:before { + content: "\f0c1"; } + +.fa.fa-cut:before { + content: "\f0c4"; } + +.fa.fa-files-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-files-o:before { + content: "\f0c5"; } + +.fa.fa-floppy-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-floppy-o:before { + content: "\f0c7"; } + +.fa.fa-save { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-save:before { + content: "\f0c7"; } + +.fa.fa-navicon:before { + content: "\f0c9"; } + +.fa.fa-reorder:before { + content: "\f0c9"; } + +.fa.fa-magic:before { + content: "\e2ca"; } + +.fa.fa-pinterest { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-pinterest-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-pinterest-square:before { + content: "\f0d3"; } + +.fa.fa-google-plus-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-google-plus-square:before { + content: "\f0d4"; } + +.fa.fa-google-plus { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-google-plus:before { + content: "\f0d5"; } + +.fa.fa-money:before { + content: "\f3d1"; } + +.fa.fa-unsorted:before { + content: "\f0dc"; } + +.fa.fa-sort-desc:before { + content: "\f0dd"; } + +.fa.fa-sort-asc:before { + content: "\f0de"; } + +.fa.fa-linkedin { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-linkedin:before { + content: "\f0e1"; } + +.fa.fa-rotate-left:before { + content: "\f0e2"; } + +.fa.fa-legal:before { + content: "\f0e3"; } + +.fa.fa-tachometer:before { + content: "\f625"; } + +.fa.fa-dashboard:before { + content: "\f625"; } + +.fa.fa-comment-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-comment-o:before { + content: "\f075"; } + +.fa.fa-comments-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-comments-o:before { + content: "\f086"; } + +.fa.fa-flash:before { + content: "\f0e7"; } + +.fa.fa-clipboard:before { + content: "\f0ea"; } + +.fa.fa-lightbulb-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-lightbulb-o:before { + content: "\f0eb"; } + +.fa.fa-exchange:before { + content: "\f362"; } + +.fa.fa-cloud-download:before { + content: "\f0ed"; } + +.fa.fa-cloud-upload:before { + content: "\f0ee"; } + +.fa.fa-bell-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-bell-o:before { + content: "\f0f3"; } + +.fa.fa-cutlery:before { + content: "\f2e7"; } + +.fa.fa-file-text-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-text-o:before { + content: "\f15c"; } + +.fa.fa-building-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-building-o:before { + content: "\f1ad"; } + +.fa.fa-hospital-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hospital-o:before { + content: "\f0f8"; } + +.fa.fa-tablet:before { + content: "\f3fa"; } + +.fa.fa-mobile:before { + content: "\f3cd"; } + +.fa.fa-mobile-phone:before { + content: "\f3cd"; } + +.fa.fa-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-circle-o:before { + content: "\f111"; } + +.fa.fa-mail-reply:before { + content: "\f3e5"; } + +.fa.fa-github-alt { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-folder-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-folder-o:before { + content: "\f07b"; } + +.fa.fa-folder-open-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-folder-open-o:before { + content: "\f07c"; } + +.fa.fa-smile-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-smile-o:before { + content: "\f118"; } + +.fa.fa-frown-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-frown-o:before { + content: "\f119"; } + +.fa.fa-meh-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-meh-o:before { + content: "\f11a"; } + +.fa.fa-keyboard-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-keyboard-o:before { + content: "\f11c"; } + +.fa.fa-flag-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-flag-o:before { + content: "\f024"; } + +.fa.fa-mail-reply-all:before { + content: "\f122"; } + +.fa.fa-star-half-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-star-half-o:before { + content: "\f5c0"; } + +.fa.fa-star-half-empty { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-star-half-empty:before { + content: "\f5c0"; } + +.fa.fa-star-half-full { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-star-half-full:before { + content: "\f5c0"; } + +.fa.fa-code-fork:before { + content: "\f126"; } + +.fa.fa-chain-broken:before { + content: "\f127"; } + +.fa.fa-unlink:before { + content: "\f127"; } + +.fa.fa-calendar-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-calendar-o:before { + content: "\f133"; } + +.fa.fa-maxcdn { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-html5 { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-css3 { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-unlock-alt:before { + content: "\f09c"; } + +.fa.fa-minus-square-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-minus-square-o:before { + content: "\f146"; } + +.fa.fa-level-up:before { + content: "\f3bf"; } + +.fa.fa-level-down:before { + content: "\f3be"; } + +.fa.fa-pencil-square:before { + content: "\f14b"; } + +.fa.fa-external-link-square:before { + content: "\f360"; } + +.fa.fa-compass { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-caret-square-o-down { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-caret-square-o-down:before { + content: "\f150"; } + +.fa.fa-toggle-down { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-toggle-down:before { + content: "\f150"; } + +.fa.fa-caret-square-o-up { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-caret-square-o-up:before { + content: "\f151"; } + +.fa.fa-toggle-up { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-toggle-up:before { + content: "\f151"; } + +.fa.fa-caret-square-o-right { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-caret-square-o-right:before { + content: "\f152"; } + +.fa.fa-toggle-right { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-toggle-right:before { + content: "\f152"; } + +.fa.fa-eur:before { + content: "\f153"; } + +.fa.fa-euro:before { + content: "\f153"; } + +.fa.fa-gbp:before { + content: "\f154"; } + +.fa.fa-usd:before { + content: "\24"; } + +.fa.fa-dollar:before { + content: "\24"; } + +.fa.fa-inr:before { + content: "\e1bc"; } + +.fa.fa-rupee:before { + content: "\e1bc"; } + +.fa.fa-jpy:before { + content: "\f157"; } + +.fa.fa-cny:before { + content: "\f157"; } + +.fa.fa-rmb:before { + content: "\f157"; } + +.fa.fa-yen:before { + content: "\f157"; } + +.fa.fa-rub:before { + content: "\f158"; } + +.fa.fa-ruble:before { + content: "\f158"; } + +.fa.fa-rouble:before { + content: "\f158"; } + +.fa.fa-krw:before { + content: "\f159"; } + +.fa.fa-won:before { + content: "\f159"; } + +.fa.fa-btc { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-bitcoin { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-bitcoin:before { + content: "\f15a"; } + +.fa.fa-file-text:before { + content: "\f15c"; } + +.fa.fa-sort-alpha-asc:before { + content: "\f15d"; } + +.fa.fa-sort-alpha-desc:before { + content: "\f881"; } + +.fa.fa-sort-amount-asc:before { + content: "\f884"; } + +.fa.fa-sort-amount-desc:before { + content: "\f160"; } + +.fa.fa-sort-numeric-asc:before { + content: "\f162"; } + +.fa.fa-sort-numeric-desc:before { + content: "\f886"; } + +.fa.fa-youtube-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-youtube-square:before { + content: "\f431"; } + +.fa.fa-youtube { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-xing { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-xing-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-xing-square:before { + content: "\f169"; } + +.fa.fa-youtube-play { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-youtube-play:before { + content: "\f167"; } + +.fa.fa-dropbox { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-stack-overflow { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-instagram { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-flickr { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-adn { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-bitbucket { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-bitbucket-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-bitbucket-square:before { + content: "\f171"; } + +.fa.fa-tumblr { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-tumblr-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-tumblr-square:before { + content: "\f174"; } + +.fa.fa-long-arrow-down:before { + content: "\f309"; } + +.fa.fa-long-arrow-up:before { + content: "\f30c"; } + +.fa.fa-long-arrow-left:before { + content: "\f30a"; } + +.fa.fa-long-arrow-right:before { + content: "\f30b"; } + +.fa.fa-apple { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-windows { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-android { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-linux { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-dribbble { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-skype { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-foursquare { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-trello { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-gratipay { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-gittip { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-gittip:before { + content: "\f184"; } + +.fa.fa-sun-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-sun-o:before { + content: "\f185"; } + +.fa.fa-moon-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-moon-o:before { + content: "\f186"; } + +.fa.fa-vk { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-weibo { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-renren { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-pagelines { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-stack-exchange { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-arrow-circle-o-right { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-arrow-circle-o-right:before { + content: "\f35a"; } + +.fa.fa-arrow-circle-o-left { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-arrow-circle-o-left:before { + content: "\f359"; } + +.fa.fa-caret-square-o-left { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-caret-square-o-left:before { + content: "\f191"; } + +.fa.fa-toggle-left { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-toggle-left:before { + content: "\f191"; } + +.fa.fa-dot-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-dot-circle-o:before { + content: "\f192"; } + +.fa.fa-vimeo-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-vimeo-square:before { + content: "\f194"; } + +.fa.fa-try:before { + content: "\e2bb"; } + +.fa.fa-turkish-lira:before { + content: "\e2bb"; } + +.fa.fa-plus-square-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-plus-square-o:before { + content: "\f0fe"; } + +.fa.fa-slack { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wordpress { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-openid { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-institution:before { + content: "\f19c"; } + +.fa.fa-bank:before { + content: "\f19c"; } + +.fa.fa-mortar-board:before { + content: "\f19d"; } + +.fa.fa-yahoo { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-google { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-reddit { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-reddit-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-reddit-square:before { + content: "\f1a2"; } + +.fa.fa-stumbleupon-circle { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-stumbleupon { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-delicious { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-digg { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-pied-piper-pp { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-pied-piper-alt { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-drupal { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-joomla { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-behance { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-behance-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-behance-square:before { + content: "\f1b5"; } + +.fa.fa-steam { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-steam-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-steam-square:before { + content: "\f1b7"; } + +.fa.fa-automobile:before { + content: "\f1b9"; } + +.fa.fa-cab:before { + content: "\f1ba"; } + +.fa.fa-spotify { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-deviantart { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-soundcloud { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-file-pdf-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-pdf-o:before { + content: "\f1c1"; } + +.fa.fa-file-word-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-word-o:before { + content: "\f1c2"; } + +.fa.fa-file-excel-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-excel-o:before { + content: "\f1c3"; } + +.fa.fa-file-powerpoint-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-powerpoint-o:before { + content: "\f1c4"; } + +.fa.fa-file-image-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-image-o:before { + content: "\f1c5"; } + +.fa.fa-file-photo-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-photo-o:before { + content: "\f1c5"; } + +.fa.fa-file-picture-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-picture-o:before { + content: "\f1c5"; } + +.fa.fa-file-archive-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-archive-o:before { + content: "\f1c6"; } + +.fa.fa-file-zip-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-zip-o:before { + content: "\f1c6"; } + +.fa.fa-file-audio-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-audio-o:before { + content: "\f1c7"; } + +.fa.fa-file-sound-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-sound-o:before { + content: "\f1c7"; } + +.fa.fa-file-video-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-video-o:before { + content: "\f1c8"; } + +.fa.fa-file-movie-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-movie-o:before { + content: "\f1c8"; } + +.fa.fa-file-code-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-file-code-o:before { + content: "\f1c9"; } + +.fa.fa-vine { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-codepen { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-jsfiddle { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-life-bouy:before { + content: "\f1cd"; } + +.fa.fa-life-buoy:before { + content: "\f1cd"; } + +.fa.fa-life-saver:before { + content: "\f1cd"; } + +.fa.fa-support:before { + content: "\f1cd"; } + +.fa.fa-circle-o-notch:before { + content: "\f1ce"; } + +.fa.fa-rebel { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-ra { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-ra:before { + content: "\f1d0"; } + +.fa.fa-resistance { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-resistance:before { + content: "\f1d0"; } + +.fa.fa-empire { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-ge { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-ge:before { + content: "\f1d1"; } + +.fa.fa-git-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-git-square:before { + content: "\f1d2"; } + +.fa.fa-git { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-hacker-news { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-y-combinator-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-y-combinator-square:before { + content: "\f1d4"; } + +.fa.fa-yc-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-yc-square:before { + content: "\f1d4"; } + +.fa.fa-tencent-weibo { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-qq { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-weixin { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wechat { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wechat:before { + content: "\f1d7"; } + +.fa.fa-send:before { + content: "\f1d8"; } + +.fa.fa-paper-plane-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-paper-plane-o:before { + content: "\f1d8"; } + +.fa.fa-send-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-send-o:before { + content: "\f1d8"; } + +.fa.fa-circle-thin { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-circle-thin:before { + content: "\f111"; } + +.fa.fa-header:before { + content: "\f1dc"; } + +.fa.fa-futbol-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-futbol-o:before { + content: "\f1e3"; } + +.fa.fa-soccer-ball-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-soccer-ball-o:before { + content: "\f1e3"; } + +.fa.fa-slideshare { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-twitch { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-yelp { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-newspaper-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-newspaper-o:before { + content: "\f1ea"; } + +.fa.fa-paypal { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-google-wallet { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-cc-visa { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-cc-mastercard { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-cc-discover { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-cc-amex { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-cc-paypal { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-cc-stripe { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-bell-slash-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-bell-slash-o:before { + content: "\f1f6"; } + +.fa.fa-trash:before { + content: "\f2ed"; } + +.fa.fa-copyright { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-eyedropper:before { + content: "\f1fb"; } + +.fa.fa-area-chart:before { + content: "\f1fe"; } + +.fa.fa-pie-chart:before { + content: "\f200"; } + +.fa.fa-line-chart:before { + content: "\f201"; } + +.fa.fa-lastfm { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-lastfm-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-lastfm-square:before { + content: "\f203"; } + +.fa.fa-ioxhost { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-angellist { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-cc { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-cc:before { + content: "\f20a"; } + +.fa.fa-ils:before { + content: "\f20b"; } + +.fa.fa-shekel:before { + content: "\f20b"; } + +.fa.fa-sheqel:before { + content: "\f20b"; } + +.fa.fa-buysellads { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-connectdevelop { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-dashcube { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-forumbee { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-leanpub { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-sellsy { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-shirtsinbulk { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-simplybuilt { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-skyatlas { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-diamond { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-diamond:before { + content: "\f3a5"; } + +.fa.fa-transgender:before { + content: "\f224"; } + +.fa.fa-intersex:before { + content: "\f224"; } + +.fa.fa-transgender-alt:before { + content: "\f225"; } + +.fa.fa-facebook-official { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-facebook-official:before { + content: "\f09a"; } + +.fa.fa-pinterest-p { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-whatsapp { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-hotel:before { + content: "\f236"; } + +.fa.fa-viacoin { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-medium { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-y-combinator { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-yc { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-yc:before { + content: "\f23b"; } + +.fa.fa-optin-monster { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-opencart { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-expeditedssl { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-battery-4:before { + content: "\f240"; } + +.fa.fa-battery:before { + content: "\f240"; } + +.fa.fa-battery-3:before { + content: "\f241"; } + +.fa.fa-battery-2:before { + content: "\f242"; } + +.fa.fa-battery-1:before { + content: "\f243"; } + +.fa.fa-battery-0:before { + content: "\f244"; } + +.fa.fa-object-group { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-object-ungroup { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-sticky-note-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-sticky-note-o:before { + content: "\f249"; } + +.fa.fa-cc-jcb { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-cc-diners-club { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-clone { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hourglass-o:before { + content: "\f254"; } + +.fa.fa-hourglass-1:before { + content: "\f251"; } + +.fa.fa-hourglass-2:before { + content: "\f252"; } + +.fa.fa-hourglass-3:before { + content: "\f253"; } + +.fa.fa-hand-rock-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-rock-o:before { + content: "\f255"; } + +.fa.fa-hand-grab-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-grab-o:before { + content: "\f255"; } + +.fa.fa-hand-paper-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-paper-o:before { + content: "\f256"; } + +.fa.fa-hand-stop-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-stop-o:before { + content: "\f256"; } + +.fa.fa-hand-scissors-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-scissors-o:before { + content: "\f257"; } + +.fa.fa-hand-lizard-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-lizard-o:before { + content: "\f258"; } + +.fa.fa-hand-spock-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-spock-o:before { + content: "\f259"; } + +.fa.fa-hand-pointer-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-pointer-o:before { + content: "\f25a"; } + +.fa.fa-hand-peace-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-hand-peace-o:before { + content: "\f25b"; } + +.fa.fa-registered { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-creative-commons { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-gg { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-gg-circle { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-odnoklassniki { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-odnoklassniki-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-odnoklassniki-square:before { + content: "\f264"; } + +.fa.fa-get-pocket { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wikipedia-w { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-safari { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-chrome { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-firefox { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-opera { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-internet-explorer { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-television:before { + content: "\f26c"; } + +.fa.fa-contao { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-500px { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-amazon { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-calendar-plus-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-calendar-plus-o:before { + content: "\f271"; } + +.fa.fa-calendar-minus-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-calendar-minus-o:before { + content: "\f272"; } + +.fa.fa-calendar-times-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-calendar-times-o:before { + content: "\f273"; } + +.fa.fa-calendar-check-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-calendar-check-o:before { + content: "\f274"; } + +.fa.fa-map-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-map-o:before { + content: "\f279"; } + +.fa.fa-commenting:before { + content: "\f4ad"; } + +.fa.fa-commenting-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-commenting-o:before { + content: "\f4ad"; } + +.fa.fa-houzz { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-vimeo { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-vimeo:before { + content: "\f27d"; } + +.fa.fa-black-tie { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-fonticons { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-reddit-alien { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-edge { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-credit-card-alt:before { + content: "\f09d"; } + +.fa.fa-codiepie { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-modx { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-fort-awesome { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-usb { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-product-hunt { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-mixcloud { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-scribd { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-pause-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-pause-circle-o:before { + content: "\f28b"; } + +.fa.fa-stop-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-stop-circle-o:before { + content: "\f28d"; } + +.fa.fa-bluetooth { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-bluetooth-b { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-gitlab { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wpbeginner { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wpforms { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-envira { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wheelchair-alt { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wheelchair-alt:before { + content: "\f368"; } + +.fa.fa-question-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-question-circle-o:before { + content: "\f059"; } + +.fa.fa-volume-control-phone:before { + content: "\f2a0"; } + +.fa.fa-asl-interpreting:before { + content: "\f2a3"; } + +.fa.fa-deafness:before { + content: "\f2a4"; } + +.fa.fa-hard-of-hearing:before { + content: "\f2a4"; } + +.fa.fa-glide { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-glide-g { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-signing:before { + content: "\f2a7"; } + +.fa.fa-viadeo { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-viadeo-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-viadeo-square:before { + content: "\f2aa"; } + +.fa.fa-snapchat { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-snapchat-ghost { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-snapchat-ghost:before { + content: "\f2ab"; } + +.fa.fa-snapchat-square { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-snapchat-square:before { + content: "\f2ad"; } + +.fa.fa-pied-piper { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-first-order { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-yoast { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-themeisle { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-google-plus-official { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-google-plus-official:before { + content: "\f2b3"; } + +.fa.fa-google-plus-circle { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-google-plus-circle:before { + content: "\f2b3"; } + +.fa.fa-font-awesome { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-fa { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-fa:before { + content: "\f2b4"; } + +.fa.fa-handshake-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-handshake-o:before { + content: "\f2b5"; } + +.fa.fa-envelope-open-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-envelope-open-o:before { + content: "\f2b6"; } + +.fa.fa-linode { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-address-book-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-address-book-o:before { + content: "\f2b9"; } + +.fa.fa-vcard:before { + content: "\f2bb"; } + +.fa.fa-address-card-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-address-card-o:before { + content: "\f2bb"; } + +.fa.fa-vcard-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-vcard-o:before { + content: "\f2bb"; } + +.fa.fa-user-circle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-user-circle-o:before { + content: "\f2bd"; } + +.fa.fa-user-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-user-o:before { + content: "\f007"; } + +.fa.fa-id-badge { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-drivers-license:before { + content: "\f2c2"; } + +.fa.fa-id-card-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-id-card-o:before { + content: "\f2c2"; } + +.fa.fa-drivers-license-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-drivers-license-o:before { + content: "\f2c2"; } + +.fa.fa-quora { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-free-code-camp { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-telegram { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-thermometer-4:before { + content: "\f2c7"; } + +.fa.fa-thermometer:before { + content: "\f2c7"; } + +.fa.fa-thermometer-3:before { + content: "\f2c8"; } + +.fa.fa-thermometer-2:before { + content: "\f2c9"; } + +.fa.fa-thermometer-1:before { + content: "\f2ca"; } + +.fa.fa-thermometer-0:before { + content: "\f2cb"; } + +.fa.fa-bathtub:before { + content: "\f2cd"; } + +.fa.fa-s15:before { + content: "\f2cd"; } + +.fa.fa-window-maximize { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-window-restore { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-times-rectangle:before { + content: "\f410"; } + +.fa.fa-window-close-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-window-close-o:before { + content: "\f410"; } + +.fa.fa-times-rectangle-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-times-rectangle-o:before { + content: "\f410"; } + +.fa.fa-bandcamp { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-grav { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-etsy { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-imdb { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-ravelry { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-eercast { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-eercast:before { + content: "\f2da"; } + +.fa.fa-snowflake-o { + font-family: 'Font Awesome 6 Free'; + font-weight: 400; } + +.fa.fa-snowflake-o:before { + content: "\f2dc"; } + +.fa.fa-superpowers { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-wpexplorer { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } + +.fa.fa-meetup { + font-family: 'Font Awesome 6 Brands'; + font-weight: 400; } diff --git a/docs/deps/font-awesome-6.5.2/css/v4-shims.min.css b/docs/deps/font-awesome-6.5.2/css/v4-shims.min.css new file mode 100644 index 0000000..09baf5f --- /dev/null +++ b/docs/deps/font-awesome-6.5.2/css/v4-shims.min.css @@ -0,0 +1,6 @@ +/*! + * Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + * Copyright 2024 Fonticons, Inc. + */ +.fa.fa-glass:before{content:"\f000"}.fa.fa-envelope-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-envelope-o:before{content:"\f0e0"}.fa.fa-star-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-star-o:before{content:"\f005"}.fa.fa-close:before,.fa.fa-remove:before{content:"\f00d"}.fa.fa-gear:before{content:"\f013"}.fa.fa-trash-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-trash-o:before{content:"\f2ed"}.fa.fa-home:before{content:"\f015"}.fa.fa-file-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-o:before{content:"\f15b"}.fa.fa-clock-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-clock-o:before{content:"\f017"}.fa.fa-arrow-circle-o-down{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-arrow-circle-o-down:before{content:"\f358"}.fa.fa-arrow-circle-o-up{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-arrow-circle-o-up:before{content:"\f35b"}.fa.fa-play-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-play-circle-o:before{content:"\f144"}.fa.fa-repeat:before,.fa.fa-rotate-right:before{content:"\f01e"}.fa.fa-refresh:before{content:"\f021"}.fa.fa-list-alt{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-list-alt:before{content:"\f022"}.fa.fa-dedent:before{content:"\f03b"}.fa.fa-video-camera:before{content:"\f03d"}.fa.fa-picture-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-picture-o:before{content:"\f03e"}.fa.fa-photo{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-photo:before{content:"\f03e"}.fa.fa-image{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-image:before{content:"\f03e"}.fa.fa-map-marker:before{content:"\f3c5"}.fa.fa-pencil-square-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-pencil-square-o:before{content:"\f044"}.fa.fa-edit{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-edit:before{content:"\f044"}.fa.fa-share-square-o:before{content:"\f14d"}.fa.fa-check-square-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-check-square-o:before{content:"\f14a"}.fa.fa-arrows:before{content:"\f0b2"}.fa.fa-times-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-times-circle-o:before{content:"\f057"}.fa.fa-check-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-check-circle-o:before{content:"\f058"}.fa.fa-mail-forward:before{content:"\f064"}.fa.fa-expand:before{content:"\f424"}.fa.fa-compress:before{content:"\f422"}.fa.fa-eye,.fa.fa-eye-slash{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-warning:before{content:"\f071"}.fa.fa-calendar:before{content:"\f073"}.fa.fa-arrows-v:before{content:"\f338"}.fa.fa-arrows-h:before{content:"\f337"}.fa.fa-bar-chart-o:before,.fa.fa-bar-chart:before{content:"\e0e3"}.fa.fa-twitter-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-twitter-square:before{content:"\f081"}.fa.fa-facebook-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-facebook-square:before{content:"\f082"}.fa.fa-gears:before{content:"\f085"}.fa.fa-thumbs-o-up{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-thumbs-o-up:before{content:"\f164"}.fa.fa-thumbs-o-down{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-thumbs-o-down:before{content:"\f165"}.fa.fa-heart-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-heart-o:before{content:"\f004"}.fa.fa-sign-out:before{content:"\f2f5"}.fa.fa-linkedin-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-linkedin-square:before{content:"\f08c"}.fa.fa-thumb-tack:before{content:"\f08d"}.fa.fa-external-link:before{content:"\f35d"}.fa.fa-sign-in:before{content:"\f2f6"}.fa.fa-github-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-github-square:before{content:"\f092"}.fa.fa-lemon-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-lemon-o:before{content:"\f094"}.fa.fa-square-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-square-o:before{content:"\f0c8"}.fa.fa-bookmark-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-bookmark-o:before{content:"\f02e"}.fa.fa-facebook,.fa.fa-twitter{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-facebook:before{content:"\f39e"}.fa.fa-facebook-f{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-facebook-f:before{content:"\f39e"}.fa.fa-github{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-credit-card{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-feed:before{content:"\f09e"}.fa.fa-hdd-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hdd-o:before{content:"\f0a0"}.fa.fa-hand-o-right{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-o-right:before{content:"\f0a4"}.fa.fa-hand-o-left{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-o-left:before{content:"\f0a5"}.fa.fa-hand-o-up{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-o-up:before{content:"\f0a6"}.fa.fa-hand-o-down{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-o-down:before{content:"\f0a7"}.fa.fa-globe:before{content:"\f57d"}.fa.fa-tasks:before{content:"\f828"}.fa.fa-arrows-alt:before{content:"\f31e"}.fa.fa-group:before{content:"\f0c0"}.fa.fa-chain:before{content:"\f0c1"}.fa.fa-cut:before{content:"\f0c4"}.fa.fa-files-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-files-o:before{content:"\f0c5"}.fa.fa-floppy-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-floppy-o:before{content:"\f0c7"}.fa.fa-save{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-save:before{content:"\f0c7"}.fa.fa-navicon:before,.fa.fa-reorder:before{content:"\f0c9"}.fa.fa-magic:before{content:"\e2ca"}.fa.fa-pinterest,.fa.fa-pinterest-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-pinterest-square:before{content:"\f0d3"}.fa.fa-google-plus-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-google-plus-square:before{content:"\f0d4"}.fa.fa-google-plus{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-google-plus:before{content:"\f0d5"}.fa.fa-money:before{content:"\f3d1"}.fa.fa-unsorted:before{content:"\f0dc"}.fa.fa-sort-desc:before{content:"\f0dd"}.fa.fa-sort-asc:before{content:"\f0de"}.fa.fa-linkedin{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-linkedin:before{content:"\f0e1"}.fa.fa-rotate-left:before{content:"\f0e2"}.fa.fa-legal:before{content:"\f0e3"}.fa.fa-dashboard:before,.fa.fa-tachometer:before{content:"\f625"}.fa.fa-comment-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-comment-o:before{content:"\f075"}.fa.fa-comments-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-comments-o:before{content:"\f086"}.fa.fa-flash:before{content:"\f0e7"}.fa.fa-clipboard:before{content:"\f0ea"}.fa.fa-lightbulb-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-lightbulb-o:before{content:"\f0eb"}.fa.fa-exchange:before{content:"\f362"}.fa.fa-cloud-download:before{content:"\f0ed"}.fa.fa-cloud-upload:before{content:"\f0ee"}.fa.fa-bell-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-bell-o:before{content:"\f0f3"}.fa.fa-cutlery:before{content:"\f2e7"}.fa.fa-file-text-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-text-o:before{content:"\f15c"}.fa.fa-building-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-building-o:before{content:"\f1ad"}.fa.fa-hospital-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hospital-o:before{content:"\f0f8"}.fa.fa-tablet:before{content:"\f3fa"}.fa.fa-mobile-phone:before,.fa.fa-mobile:before{content:"\f3cd"}.fa.fa-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-circle-o:before{content:"\f111"}.fa.fa-mail-reply:before{content:"\f3e5"}.fa.fa-github-alt{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-folder-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-folder-o:before{content:"\f07b"}.fa.fa-folder-open-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-folder-open-o:before{content:"\f07c"}.fa.fa-smile-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-smile-o:before{content:"\f118"}.fa.fa-frown-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-frown-o:before{content:"\f119"}.fa.fa-meh-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-meh-o:before{content:"\f11a"}.fa.fa-keyboard-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-keyboard-o:before{content:"\f11c"}.fa.fa-flag-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-flag-o:before{content:"\f024"}.fa.fa-mail-reply-all:before{content:"\f122"}.fa.fa-star-half-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-star-half-o:before{content:"\f5c0"}.fa.fa-star-half-empty{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-star-half-empty:before{content:"\f5c0"}.fa.fa-star-half-full{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-star-half-full:before{content:"\f5c0"}.fa.fa-code-fork:before{content:"\f126"}.fa.fa-chain-broken:before,.fa.fa-unlink:before{content:"\f127"}.fa.fa-calendar-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-calendar-o:before{content:"\f133"}.fa.fa-css3,.fa.fa-html5,.fa.fa-maxcdn{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-unlock-alt:before{content:"\f09c"}.fa.fa-minus-square-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-minus-square-o:before{content:"\f146"}.fa.fa-level-up:before{content:"\f3bf"}.fa.fa-level-down:before{content:"\f3be"}.fa.fa-pencil-square:before{content:"\f14b"}.fa.fa-external-link-square:before{content:"\f360"}.fa.fa-compass{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-caret-square-o-down{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-caret-square-o-down:before{content:"\f150"}.fa.fa-toggle-down{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-toggle-down:before{content:"\f150"}.fa.fa-caret-square-o-up{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-caret-square-o-up:before{content:"\f151"}.fa.fa-toggle-up{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-toggle-up:before{content:"\f151"}.fa.fa-caret-square-o-right{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-caret-square-o-right:before{content:"\f152"}.fa.fa-toggle-right{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-toggle-right:before{content:"\f152"}.fa.fa-eur:before,.fa.fa-euro:before{content:"\f153"}.fa.fa-gbp:before{content:"\f154"}.fa.fa-dollar:before,.fa.fa-usd:before{content:"\24"}.fa.fa-inr:before,.fa.fa-rupee:before{content:"\e1bc"}.fa.fa-cny:before,.fa.fa-jpy:before,.fa.fa-rmb:before,.fa.fa-yen:before{content:"\f157"}.fa.fa-rouble:before,.fa.fa-rub:before,.fa.fa-ruble:before{content:"\f158"}.fa.fa-krw:before,.fa.fa-won:before{content:"\f159"}.fa.fa-bitcoin,.fa.fa-btc{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-bitcoin:before{content:"\f15a"}.fa.fa-file-text:before{content:"\f15c"}.fa.fa-sort-alpha-asc:before{content:"\f15d"}.fa.fa-sort-alpha-desc:before{content:"\f881"}.fa.fa-sort-amount-asc:before{content:"\f884"}.fa.fa-sort-amount-desc:before{content:"\f160"}.fa.fa-sort-numeric-asc:before{content:"\f162"}.fa.fa-sort-numeric-desc:before{content:"\f886"}.fa.fa-youtube-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-youtube-square:before{content:"\f431"}.fa.fa-xing,.fa.fa-xing-square,.fa.fa-youtube{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-xing-square:before{content:"\f169"}.fa.fa-youtube-play{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-youtube-play:before{content:"\f167"}.fa.fa-adn,.fa.fa-bitbucket,.fa.fa-bitbucket-square,.fa.fa-dropbox,.fa.fa-flickr,.fa.fa-instagram,.fa.fa-stack-overflow{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-bitbucket-square:before{content:"\f171"}.fa.fa-tumblr,.fa.fa-tumblr-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-tumblr-square:before{content:"\f174"}.fa.fa-long-arrow-down:before{content:"\f309"}.fa.fa-long-arrow-up:before{content:"\f30c"}.fa.fa-long-arrow-left:before{content:"\f30a"}.fa.fa-long-arrow-right:before{content:"\f30b"}.fa.fa-android,.fa.fa-apple,.fa.fa-dribbble,.fa.fa-foursquare,.fa.fa-gittip,.fa.fa-gratipay,.fa.fa-linux,.fa.fa-skype,.fa.fa-trello,.fa.fa-windows{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-gittip:before{content:"\f184"}.fa.fa-sun-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-sun-o:before{content:"\f185"}.fa.fa-moon-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-moon-o:before{content:"\f186"}.fa.fa-pagelines,.fa.fa-renren,.fa.fa-stack-exchange,.fa.fa-vk,.fa.fa-weibo{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-arrow-circle-o-right{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-arrow-circle-o-right:before{content:"\f35a"}.fa.fa-arrow-circle-o-left{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-arrow-circle-o-left:before{content:"\f359"}.fa.fa-caret-square-o-left{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-caret-square-o-left:before{content:"\f191"}.fa.fa-toggle-left{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-toggle-left:before{content:"\f191"}.fa.fa-dot-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-dot-circle-o:before{content:"\f192"}.fa.fa-vimeo-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-vimeo-square:before{content:"\f194"}.fa.fa-try:before,.fa.fa-turkish-lira:before{content:"\e2bb"}.fa.fa-plus-square-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-plus-square-o:before{content:"\f0fe"}.fa.fa-openid,.fa.fa-slack,.fa.fa-wordpress{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-bank:before,.fa.fa-institution:before{content:"\f19c"}.fa.fa-mortar-board:before{content:"\f19d"}.fa.fa-google,.fa.fa-reddit,.fa.fa-reddit-square,.fa.fa-yahoo{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-reddit-square:before{content:"\f1a2"}.fa.fa-behance,.fa.fa-behance-square,.fa.fa-delicious,.fa.fa-digg,.fa.fa-drupal,.fa.fa-joomla,.fa.fa-pied-piper-alt,.fa.fa-pied-piper-pp,.fa.fa-stumbleupon,.fa.fa-stumbleupon-circle{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-behance-square:before{content:"\f1b5"}.fa.fa-steam,.fa.fa-steam-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-steam-square:before{content:"\f1b7"}.fa.fa-automobile:before{content:"\f1b9"}.fa.fa-cab:before{content:"\f1ba"}.fa.fa-deviantart,.fa.fa-soundcloud,.fa.fa-spotify{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-file-pdf-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-pdf-o:before{content:"\f1c1"}.fa.fa-file-word-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-word-o:before{content:"\f1c2"}.fa.fa-file-excel-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-excel-o:before{content:"\f1c3"}.fa.fa-file-powerpoint-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-powerpoint-o:before{content:"\f1c4"}.fa.fa-file-image-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-image-o:before{content:"\f1c5"}.fa.fa-file-photo-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-photo-o:before{content:"\f1c5"}.fa.fa-file-picture-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-picture-o:before{content:"\f1c5"}.fa.fa-file-archive-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-archive-o:before{content:"\f1c6"}.fa.fa-file-zip-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-zip-o:before{content:"\f1c6"}.fa.fa-file-audio-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-audio-o:before{content:"\f1c7"}.fa.fa-file-sound-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-sound-o:before{content:"\f1c7"}.fa.fa-file-video-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-video-o:before{content:"\f1c8"}.fa.fa-file-movie-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-movie-o:before{content:"\f1c8"}.fa.fa-file-code-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-file-code-o:before{content:"\f1c9"}.fa.fa-codepen,.fa.fa-jsfiddle,.fa.fa-vine{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-life-bouy:before,.fa.fa-life-buoy:before,.fa.fa-life-saver:before,.fa.fa-support:before{content:"\f1cd"}.fa.fa-circle-o-notch:before{content:"\f1ce"}.fa.fa-ra,.fa.fa-rebel{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-ra:before{content:"\f1d0"}.fa.fa-resistance{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-resistance:before{content:"\f1d0"}.fa.fa-empire,.fa.fa-ge{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-ge:before{content:"\f1d1"}.fa.fa-git-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-git-square:before{content:"\f1d2"}.fa.fa-git,.fa.fa-hacker-news,.fa.fa-y-combinator-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-y-combinator-square:before{content:"\f1d4"}.fa.fa-yc-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-yc-square:before{content:"\f1d4"}.fa.fa-qq,.fa.fa-tencent-weibo,.fa.fa-wechat,.fa.fa-weixin{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-wechat:before{content:"\f1d7"}.fa.fa-send:before{content:"\f1d8"}.fa.fa-paper-plane-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-paper-plane-o:before{content:"\f1d8"}.fa.fa-send-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-send-o:before{content:"\f1d8"}.fa.fa-circle-thin{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-circle-thin:before{content:"\f111"}.fa.fa-header:before{content:"\f1dc"}.fa.fa-futbol-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-futbol-o:before{content:"\f1e3"}.fa.fa-soccer-ball-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-soccer-ball-o:before{content:"\f1e3"}.fa.fa-slideshare,.fa.fa-twitch,.fa.fa-yelp{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-newspaper-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-newspaper-o:before{content:"\f1ea"}.fa.fa-cc-amex,.fa.fa-cc-discover,.fa.fa-cc-mastercard,.fa.fa-cc-paypal,.fa.fa-cc-stripe,.fa.fa-cc-visa,.fa.fa-google-wallet,.fa.fa-paypal{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-bell-slash-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-bell-slash-o:before{content:"\f1f6"}.fa.fa-trash:before{content:"\f2ed"}.fa.fa-copyright{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-eyedropper:before{content:"\f1fb"}.fa.fa-area-chart:before{content:"\f1fe"}.fa.fa-pie-chart:before{content:"\f200"}.fa.fa-line-chart:before{content:"\f201"}.fa.fa-lastfm,.fa.fa-lastfm-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-lastfm-square:before{content:"\f203"}.fa.fa-angellist,.fa.fa-ioxhost{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-cc{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-cc:before{content:"\f20a"}.fa.fa-ils:before,.fa.fa-shekel:before,.fa.fa-sheqel:before{content:"\f20b"}.fa.fa-buysellads,.fa.fa-connectdevelop,.fa.fa-dashcube,.fa.fa-forumbee,.fa.fa-leanpub,.fa.fa-sellsy,.fa.fa-shirtsinbulk,.fa.fa-simplybuilt,.fa.fa-skyatlas{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-diamond{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-diamond:before{content:"\f3a5"}.fa.fa-intersex:before,.fa.fa-transgender:before{content:"\f224"}.fa.fa-transgender-alt:before{content:"\f225"}.fa.fa-facebook-official{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-facebook-official:before{content:"\f09a"}.fa.fa-pinterest-p,.fa.fa-whatsapp{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-hotel:before{content:"\f236"}.fa.fa-medium,.fa.fa-viacoin,.fa.fa-y-combinator,.fa.fa-yc{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-yc:before{content:"\f23b"}.fa.fa-expeditedssl,.fa.fa-opencart,.fa.fa-optin-monster{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-battery-4:before,.fa.fa-battery:before{content:"\f240"}.fa.fa-battery-3:before{content:"\f241"}.fa.fa-battery-2:before{content:"\f242"}.fa.fa-battery-1:before{content:"\f243"}.fa.fa-battery-0:before{content:"\f244"}.fa.fa-object-group,.fa.fa-object-ungroup,.fa.fa-sticky-note-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-sticky-note-o:before{content:"\f249"}.fa.fa-cc-diners-club,.fa.fa-cc-jcb{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-clone{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hourglass-o:before{content:"\f254"}.fa.fa-hourglass-1:before{content:"\f251"}.fa.fa-hourglass-2:before{content:"\f252"}.fa.fa-hourglass-3:before{content:"\f253"}.fa.fa-hand-rock-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-rock-o:before{content:"\f255"}.fa.fa-hand-grab-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-grab-o:before{content:"\f255"}.fa.fa-hand-paper-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-paper-o:before{content:"\f256"}.fa.fa-hand-stop-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-stop-o:before{content:"\f256"}.fa.fa-hand-scissors-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-scissors-o:before{content:"\f257"}.fa.fa-hand-lizard-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-lizard-o:before{content:"\f258"}.fa.fa-hand-spock-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-spock-o:before{content:"\f259"}.fa.fa-hand-pointer-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-pointer-o:before{content:"\f25a"}.fa.fa-hand-peace-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-hand-peace-o:before{content:"\f25b"}.fa.fa-registered{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-creative-commons,.fa.fa-gg,.fa.fa-gg-circle,.fa.fa-odnoklassniki,.fa.fa-odnoklassniki-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-odnoklassniki-square:before{content:"\f264"}.fa.fa-chrome,.fa.fa-firefox,.fa.fa-get-pocket,.fa.fa-internet-explorer,.fa.fa-opera,.fa.fa-safari,.fa.fa-wikipedia-w{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-television:before{content:"\f26c"}.fa.fa-500px,.fa.fa-amazon,.fa.fa-contao{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-calendar-plus-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-calendar-plus-o:before{content:"\f271"}.fa.fa-calendar-minus-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-calendar-minus-o:before{content:"\f272"}.fa.fa-calendar-times-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-calendar-times-o:before{content:"\f273"}.fa.fa-calendar-check-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-calendar-check-o:before{content:"\f274"}.fa.fa-map-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-map-o:before{content:"\f279"}.fa.fa-commenting:before{content:"\f4ad"}.fa.fa-commenting-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-commenting-o:before{content:"\f4ad"}.fa.fa-houzz,.fa.fa-vimeo{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-vimeo:before{content:"\f27d"}.fa.fa-black-tie,.fa.fa-edge,.fa.fa-fonticons,.fa.fa-reddit-alien{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-credit-card-alt:before{content:"\f09d"}.fa.fa-codiepie,.fa.fa-fort-awesome,.fa.fa-mixcloud,.fa.fa-modx,.fa.fa-product-hunt,.fa.fa-scribd,.fa.fa-usb{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-pause-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-pause-circle-o:before{content:"\f28b"}.fa.fa-stop-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-stop-circle-o:before{content:"\f28d"}.fa.fa-bluetooth,.fa.fa-bluetooth-b,.fa.fa-envira,.fa.fa-gitlab,.fa.fa-wheelchair-alt,.fa.fa-wpbeginner,.fa.fa-wpforms{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-wheelchair-alt:before{content:"\f368"}.fa.fa-question-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-question-circle-o:before{content:"\f059"}.fa.fa-volume-control-phone:before{content:"\f2a0"}.fa.fa-asl-interpreting:before{content:"\f2a3"}.fa.fa-deafness:before,.fa.fa-hard-of-hearing:before{content:"\f2a4"}.fa.fa-glide,.fa.fa-glide-g{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-signing:before{content:"\f2a7"}.fa.fa-viadeo,.fa.fa-viadeo-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-viadeo-square:before{content:"\f2aa"}.fa.fa-snapchat,.fa.fa-snapchat-ghost{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-snapchat-ghost:before{content:"\f2ab"}.fa.fa-snapchat-square{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-snapchat-square:before{content:"\f2ad"}.fa.fa-first-order,.fa.fa-google-plus-official,.fa.fa-pied-piper,.fa.fa-themeisle,.fa.fa-yoast{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-google-plus-official:before{content:"\f2b3"}.fa.fa-google-plus-circle{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-google-plus-circle:before{content:"\f2b3"}.fa.fa-fa,.fa.fa-font-awesome{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-fa:before{content:"\f2b4"}.fa.fa-handshake-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-handshake-o:before{content:"\f2b5"}.fa.fa-envelope-open-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-envelope-open-o:before{content:"\f2b6"}.fa.fa-linode{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-address-book-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-address-book-o:before{content:"\f2b9"}.fa.fa-vcard:before{content:"\f2bb"}.fa.fa-address-card-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-address-card-o:before{content:"\f2bb"}.fa.fa-vcard-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-vcard-o:before{content:"\f2bb"}.fa.fa-user-circle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-user-circle-o:before{content:"\f2bd"}.fa.fa-user-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-user-o:before{content:"\f007"}.fa.fa-id-badge{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-drivers-license:before{content:"\f2c2"}.fa.fa-id-card-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-id-card-o:before{content:"\f2c2"}.fa.fa-drivers-license-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-drivers-license-o:before{content:"\f2c2"}.fa.fa-free-code-camp,.fa.fa-quora,.fa.fa-telegram{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-thermometer-4:before,.fa.fa-thermometer:before{content:"\f2c7"}.fa.fa-thermometer-3:before{content:"\f2c8"}.fa.fa-thermometer-2:before{content:"\f2c9"}.fa.fa-thermometer-1:before{content:"\f2ca"}.fa.fa-thermometer-0:before{content:"\f2cb"}.fa.fa-bathtub:before,.fa.fa-s15:before{content:"\f2cd"}.fa.fa-window-maximize,.fa.fa-window-restore{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-times-rectangle:before{content:"\f410"}.fa.fa-window-close-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-window-close-o:before{content:"\f410"}.fa.fa-times-rectangle-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-times-rectangle-o:before{content:"\f410"}.fa.fa-bandcamp,.fa.fa-eercast,.fa.fa-etsy,.fa.fa-grav,.fa.fa-imdb,.fa.fa-ravelry{font-family:"Font Awesome 6 Brands";font-weight:400}.fa.fa-eercast:before{content:"\f2da"}.fa.fa-snowflake-o{font-family:"Font Awesome 6 Free";font-weight:400}.fa.fa-snowflake-o:before{content:"\f2dc"}.fa.fa-meetup,.fa.fa-superpowers,.fa.fa-wpexplorer{font-family:"Font Awesome 6 Brands";font-weight:400} \ No newline at end of file diff --git a/docs/deps/font-awesome-6.5.2/webfonts/fa-brands-400.ttf b/docs/deps/font-awesome-6.5.2/webfonts/fa-brands-400.ttf new file mode 100644 index 0000000..1fbb1f7 Binary files /dev/null and b/docs/deps/font-awesome-6.5.2/webfonts/fa-brands-400.ttf differ diff --git a/docs/deps/font-awesome-6.5.2/webfonts/fa-brands-400.woff2 b/docs/deps/font-awesome-6.5.2/webfonts/fa-brands-400.woff2 new file mode 100644 index 0000000..5d28021 Binary files /dev/null and b/docs/deps/font-awesome-6.5.2/webfonts/fa-brands-400.woff2 differ diff --git a/docs/deps/font-awesome-6.5.2/webfonts/fa-regular-400.ttf b/docs/deps/font-awesome-6.5.2/webfonts/fa-regular-400.ttf new file mode 100644 index 0000000..549d68d Binary files /dev/null and b/docs/deps/font-awesome-6.5.2/webfonts/fa-regular-400.ttf differ diff --git a/docs/deps/font-awesome-6.5.2/webfonts/fa-regular-400.woff2 b/docs/deps/font-awesome-6.5.2/webfonts/fa-regular-400.woff2 new file mode 100644 index 0000000..18400d7 Binary files /dev/null and b/docs/deps/font-awesome-6.5.2/webfonts/fa-regular-400.woff2 differ diff --git a/docs/deps/font-awesome-6.5.2/webfonts/fa-solid-900.ttf b/docs/deps/font-awesome-6.5.2/webfonts/fa-solid-900.ttf new file mode 100644 index 0000000..bb2a869 Binary files /dev/null and b/docs/deps/font-awesome-6.5.2/webfonts/fa-solid-900.ttf differ diff --git a/docs/deps/font-awesome-6.5.2/webfonts/fa-solid-900.woff2 b/docs/deps/font-awesome-6.5.2/webfonts/fa-solid-900.woff2 new file mode 100644 index 0000000..758dd4f Binary files /dev/null and b/docs/deps/font-awesome-6.5.2/webfonts/fa-solid-900.woff2 differ diff --git a/docs/deps/font-awesome-6.5.2/webfonts/fa-v4compatibility.ttf b/docs/deps/font-awesome-6.5.2/webfonts/fa-v4compatibility.ttf new file mode 100644 index 0000000..8c5864c Binary files /dev/null and b/docs/deps/font-awesome-6.5.2/webfonts/fa-v4compatibility.ttf differ diff --git a/docs/deps/font-awesome-6.5.2/webfonts/fa-v4compatibility.woff2 b/docs/deps/font-awesome-6.5.2/webfonts/fa-v4compatibility.woff2 new file mode 100644 index 0000000..f94bec2 Binary files /dev/null and b/docs/deps/font-awesome-6.5.2/webfonts/fa-v4compatibility.woff2 differ diff --git a/docs/deps/headroom-0.11.0/headroom.min.js b/docs/deps/headroom-0.11.0/headroom.min.js new file mode 100644 index 0000000..433069f --- /dev/null +++ b/docs/deps/headroom-0.11.0/headroom.min.js @@ -0,0 +1,7 @@ +/*! + * headroom.js v0.11.0 - Give your page some headroom. Hide your header until you need it + * Copyright (c) 2020 Nick Williams - http://wicky.nillia.ms/headroom.js + * License: MIT + */ + +!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n():"function"==typeof define&&define.amd?define(n):(t=t||self).Headroom=n()}(this,function(){"use strict";function t(){return"undefined"!=typeof window}function d(t){return function(t){return t&&t.document&&function(t){return 9===t.nodeType}(t.document)}(t)?function(t){var n=t.document,o=n.body,s=n.documentElement;return{scrollHeight:function(){return Math.max(o.scrollHeight,s.scrollHeight,o.offsetHeight,s.offsetHeight,o.clientHeight,s.clientHeight)},height:function(){return t.innerHeight||s.clientHeight||o.clientHeight},scrollY:function(){return void 0!==t.pageYOffset?t.pageYOffset:(s||o.parentNode||o).scrollTop}}}(t):function(t){return{scrollHeight:function(){return Math.max(t.scrollHeight,t.offsetHeight,t.clientHeight)},height:function(){return Math.max(t.offsetHeight,t.clientHeight)},scrollY:function(){return t.scrollTop}}}(t)}function n(t,s,e){var n,o=function(){var n=!1;try{var t={get passive(){n=!0}};window.addEventListener("test",t,t),window.removeEventListener("test",t,t)}catch(t){n=!1}return n}(),i=!1,r=d(t),l=r.scrollY(),a={};function c(){var t=Math.round(r.scrollY()),n=r.height(),o=r.scrollHeight();a.scrollY=t,a.lastScrollY=l,a.direction=ls.tolerance[a.direction],e(a),l=t,i=!1}function h(){i||(i=!0,n=requestAnimationFrame(c))}var u=!!o&&{passive:!0,capture:!1};return t.addEventListener("scroll",h,u),c(),{destroy:function(){cancelAnimationFrame(n),t.removeEventListener("scroll",h,u)}}}function o(t,n){n=n||{},Object.assign(this,o.options,n),this.classes=Object.assign({},o.options.classes,n.classes),this.elem=t,this.tolerance=function(t){return t===Object(t)?t:{down:t,up:t}}(this.tolerance),this.initialised=!1,this.frozen=!1}return o.prototype={constructor:o,init:function(){return o.cutsTheMustard&&!this.initialised&&(this.addClass("initial"),this.initialised=!0,setTimeout(function(t){t.scrollTracker=n(t.scroller,{offset:t.offset,tolerance:t.tolerance},t.update.bind(t))},100,this)),this},destroy:function(){this.initialised=!1,Object.keys(this.classes).forEach(this.removeClass,this),this.scrollTracker.destroy()},unpin:function(){!this.hasClass("pinned")&&this.hasClass("unpinned")||(this.addClass("unpinned"),this.removeClass("pinned"),this.onUnpin&&this.onUnpin.call(this))},pin:function(){this.hasClass("unpinned")&&(this.addClass("pinned"),this.removeClass("unpinned"),this.onPin&&this.onPin.call(this))},freeze:function(){this.frozen=!0,this.addClass("frozen")},unfreeze:function(){this.frozen=!1,this.removeClass("frozen")},top:function(){this.hasClass("top")||(this.addClass("top"),this.removeClass("notTop"),this.onTop&&this.onTop.call(this))},notTop:function(){this.hasClass("notTop")||(this.addClass("notTop"),this.removeClass("top"),this.onNotTop&&this.onNotTop.call(this))},bottom:function(){this.hasClass("bottom")||(this.addClass("bottom"),this.removeClass("notBottom"),this.onBottom&&this.onBottom.call(this))},notBottom:function(){this.hasClass("notBottom")||(this.addClass("notBottom"),this.removeClass("bottom"),this.onNotBottom&&this.onNotBottom.call(this))},shouldUnpin:function(t){return"down"===t.direction&&!t.top&&t.toleranceExceeded},shouldPin:function(t){return"up"===t.direction&&t.toleranceExceeded||t.top},addClass:function(t){this.elem.classList.add.apply(this.elem.classList,this.classes[t].split(" "))},removeClass:function(t){this.elem.classList.remove.apply(this.elem.classList,this.classes[t].split(" "))},hasClass:function(t){return this.classes[t].split(" ").every(function(t){return this.classList.contains(t)},this.elem)},update:function(t){t.isOutOfBounds||!0!==this.frozen&&(t.top?this.top():this.notTop(),t.bottom?this.bottom():this.notBottom(),this.shouldUnpin(t)?this.unpin():this.shouldPin(t)&&this.pin())}},o.options={tolerance:{up:0,down:0},offset:0,scroller:t()?window:null,classes:{frozen:"headroom--frozen",pinned:"headroom--pinned",unpinned:"headroom--unpinned",top:"headroom--top",notTop:"headroom--not-top",bottom:"headroom--bottom",notBottom:"headroom--not-bottom",initial:"headroom"}},o.cutsTheMustard=!!(t()&&function(){}.bind&&"classList"in document.documentElement&&Object.assign&&Object.keys&&requestAnimationFrame),o}); \ No newline at end of file diff --git a/docs/deps/headroom-0.11.0/jQuery.headroom.min.js b/docs/deps/headroom-0.11.0/jQuery.headroom.min.js new file mode 100644 index 0000000..17f70c9 --- /dev/null +++ b/docs/deps/headroom-0.11.0/jQuery.headroom.min.js @@ -0,0 +1,7 @@ +/*! + * headroom.js v0.9.4 - Give your page some headroom. Hide your header until you need it + * Copyright (c) 2017 Nick Williams - http://wicky.nillia.ms/headroom.js + * License: MIT + */ + +!function(a){a&&(a.fn.headroom=function(b){return this.each(function(){var c=a(this),d=c.data("headroom"),e="object"==typeof b&&b;e=a.extend(!0,{},Headroom.options,e),d||(d=new Headroom(this,e),d.init(),c.data("headroom",d)),"string"==typeof b&&(d[b](),"destroy"===b&&c.removeData("headroom"))})},a("[data-headroom]").each(function(){var b=a(this);b.headroom(b.data())}))}(window.Zepto||window.jQuery); \ No newline at end of file diff --git a/docs/deps/jquery-3.6.0/jquery-3.6.0.js b/docs/deps/jquery-3.6.0/jquery-3.6.0.js new file mode 100644 index 0000000..fc6c299 --- /dev/null +++ b/docs/deps/jquery-3.6.0/jquery-3.6.0.js @@ -0,0 +1,10881 @@ +/*! + * jQuery JavaScript Library v3.6.0 + * https://jquery.com/ + * + * Includes Sizzle.js + * https://sizzlejs.com/ + * + * Copyright OpenJS Foundation and other contributors + * Released under the MIT license + * https://jquery.org/license + * + * Date: 2021-03-02T17:08Z + */ +( function( global, factory ) { + + "use strict"; + + if ( typeof module === "object" && typeof module.exports === "object" ) { + + // For CommonJS and CommonJS-like environments where a proper `window` + // is present, execute the factory and get jQuery. + // For environments that do not have a `window` with a `document` + // (such as Node.js), expose a factory as module.exports. + // This accentuates the need for the creation of a real `window`. + // e.g. var jQuery = require("jquery")(window); + // See ticket #14549 for more info. + module.exports = global.document ? + factory( global, true ) : + function( w ) { + if ( !w.document ) { + throw new Error( "jQuery requires a window with a document" ); + } + return factory( w ); + }; + } else { + factory( global ); + } + +// Pass this if window is not defined yet +} )( typeof window !== "undefined" ? window : this, function( window, noGlobal ) { + +// Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1 +// throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode +// arguments.callee.caller (trac-13335). But as of jQuery 3.0 (2016), strict mode should be common +// enough that all such attempts are guarded in a try block. +"use strict"; + +var arr = []; + +var getProto = Object.getPrototypeOf; + +var slice = arr.slice; + +var flat = arr.flat ? function( array ) { + return arr.flat.call( array ); +} : function( array ) { + return arr.concat.apply( [], array ); +}; + + +var push = arr.push; + +var indexOf = arr.indexOf; + +var class2type = {}; + +var toString = class2type.toString; + +var hasOwn = class2type.hasOwnProperty; + +var fnToString = hasOwn.toString; + +var ObjectFunctionString = fnToString.call( Object ); + +var support = {}; + +var isFunction = function isFunction( obj ) { + + // Support: Chrome <=57, Firefox <=52 + // In some browsers, typeof returns "function" for HTML elements + // (i.e., `typeof document.createElement( "object" ) === "function"`). + // We don't want to classify *any* DOM node as a function. + // Support: QtWeb <=3.8.5, WebKit <=534.34, wkhtmltopdf tool <=0.12.5 + // Plus for old WebKit, typeof returns "function" for HTML collections + // (e.g., `typeof document.getElementsByTagName("div") === "function"`). (gh-4756) + return typeof obj === "function" && typeof obj.nodeType !== "number" && + typeof obj.item !== "function"; + }; + + +var isWindow = function isWindow( obj ) { + return obj != null && obj === obj.window; + }; + + +var document = window.document; + + + + var preservedScriptAttributes = { + type: true, + src: true, + nonce: true, + noModule: true + }; + + function DOMEval( code, node, doc ) { + doc = doc || document; + + var i, val, + script = doc.createElement( "script" ); + + script.text = code; + if ( node ) { + for ( i in preservedScriptAttributes ) { + + // Support: Firefox 64+, Edge 18+ + // Some browsers don't support the "nonce" property on scripts. + // On the other hand, just using `getAttribute` is not enough as + // the `nonce` attribute is reset to an empty string whenever it + // becomes browsing-context connected. + // See https://github.com/whatwg/html/issues/2369 + // See https://html.spec.whatwg.org/#nonce-attributes + // The `node.getAttribute` check was added for the sake of + // `jQuery.globalEval` so that it can fake a nonce-containing node + // via an object. + val = node[ i ] || node.getAttribute && node.getAttribute( i ); + if ( val ) { + script.setAttribute( i, val ); + } + } + } + doc.head.appendChild( script ).parentNode.removeChild( script ); + } + + +function toType( obj ) { + if ( obj == null ) { + return obj + ""; + } + + // Support: Android <=2.3 only (functionish RegExp) + return typeof obj === "object" || typeof obj === "function" ? + class2type[ toString.call( obj ) ] || "object" : + typeof obj; +} +/* global Symbol */ +// Defining this global in .eslintrc.json would create a danger of using the global +// unguarded in another place, it seems safer to define global only for this module + + + +var + version = "3.6.0", + + // Define a local copy of jQuery + jQuery = function( selector, context ) { + + // The jQuery object is actually just the init constructor 'enhanced' + // Need init if jQuery is called (just allow error to be thrown if not included) + return new jQuery.fn.init( selector, context ); + }; + +jQuery.fn = jQuery.prototype = { + + // The current version of jQuery being used + jquery: version, + + constructor: jQuery, + + // The default length of a jQuery object is 0 + length: 0, + + toArray: function() { + return slice.call( this ); + }, + + // Get the Nth element in the matched element set OR + // Get the whole matched element set as a clean array + get: function( num ) { + + // Return all the elements in a clean array + if ( num == null ) { + return slice.call( this ); + } + + // Return just the one element from the set + return num < 0 ? this[ num + this.length ] : this[ num ]; + }, + + // Take an array of elements and push it onto the stack + // (returning the new matched element set) + pushStack: function( elems ) { + + // Build a new jQuery matched element set + var ret = jQuery.merge( this.constructor(), elems ); + + // Add the old object onto the stack (as a reference) + ret.prevObject = this; + + // Return the newly-formed element set + return ret; + }, + + // Execute a callback for every element in the matched set. + each: function( callback ) { + return jQuery.each( this, callback ); + }, + + map: function( callback ) { + return this.pushStack( jQuery.map( this, function( elem, i ) { + return callback.call( elem, i, elem ); + } ) ); + }, + + slice: function() { + return this.pushStack( slice.apply( this, arguments ) ); + }, + + first: function() { + return this.eq( 0 ); + }, + + last: function() { + return this.eq( -1 ); + }, + + even: function() { + return this.pushStack( jQuery.grep( this, function( _elem, i ) { + return ( i + 1 ) % 2; + } ) ); + }, + + odd: function() { + return this.pushStack( jQuery.grep( this, function( _elem, i ) { + return i % 2; + } ) ); + }, + + eq: function( i ) { + var len = this.length, + j = +i + ( i < 0 ? len : 0 ); + return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] ); + }, + + end: function() { + return this.prevObject || this.constructor(); + }, + + // For internal use only. + // Behaves like an Array's method, not like a jQuery method. + push: push, + sort: arr.sort, + splice: arr.splice +}; + +jQuery.extend = jQuery.fn.extend = function() { + var options, name, src, copy, copyIsArray, clone, + target = arguments[ 0 ] || {}, + i = 1, + length = arguments.length, + deep = false; + + // Handle a deep copy situation + if ( typeof target === "boolean" ) { + deep = target; + + // Skip the boolean and the target + target = arguments[ i ] || {}; + i++; + } + + // Handle case when target is a string or something (possible in deep copy) + if ( typeof target !== "object" && !isFunction( target ) ) { + target = {}; + } + + // Extend jQuery itself if only one argument is passed + if ( i === length ) { + target = this; + i--; + } + + for ( ; i < length; i++ ) { + + // Only deal with non-null/undefined values + if ( ( options = arguments[ i ] ) != null ) { + + // Extend the base object + for ( name in options ) { + copy = options[ name ]; + + // Prevent Object.prototype pollution + // Prevent never-ending loop + if ( name === "__proto__" || target === copy ) { + continue; + } + + // Recurse if we're merging plain objects or arrays + if ( deep && copy && ( jQuery.isPlainObject( copy ) || + ( copyIsArray = Array.isArray( copy ) ) ) ) { + src = target[ name ]; + + // Ensure proper type for the source value + if ( copyIsArray && !Array.isArray( src ) ) { + clone = []; + } else if ( !copyIsArray && !jQuery.isPlainObject( src ) ) { + clone = {}; + } else { + clone = src; + } + copyIsArray = false; + + // Never move original objects, clone them + target[ name ] = jQuery.extend( deep, clone, copy ); + + // Don't bring in undefined values + } else if ( copy !== undefined ) { + target[ name ] = copy; + } + } + } + } + + // Return the modified object + return target; +}; + +jQuery.extend( { + + // Unique for each copy of jQuery on the page + expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ), + + // Assume jQuery is ready without the ready module + isReady: true, + + error: function( msg ) { + throw new Error( msg ); + }, + + noop: function() {}, + + isPlainObject: function( obj ) { + var proto, Ctor; + + // Detect obvious negatives + // Use toString instead of jQuery.type to catch host objects + if ( !obj || toString.call( obj ) !== "[object Object]" ) { + return false; + } + + proto = getProto( obj ); + + // Objects with no prototype (e.g., `Object.create( null )`) are plain + if ( !proto ) { + return true; + } + + // Objects with prototype are plain iff they were constructed by a global Object function + Ctor = hasOwn.call( proto, "constructor" ) && proto.constructor; + return typeof Ctor === "function" && fnToString.call( Ctor ) === ObjectFunctionString; + }, + + isEmptyObject: function( obj ) { + var name; + + for ( name in obj ) { + return false; + } + return true; + }, + + // Evaluates a script in a provided context; falls back to the global one + // if not specified. + globalEval: function( code, options, doc ) { + DOMEval( code, { nonce: options && options.nonce }, doc ); + }, + + each: function( obj, callback ) { + var length, i = 0; + + if ( isArrayLike( obj ) ) { + length = obj.length; + for ( ; i < length; i++ ) { + if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { + break; + } + } + } else { + for ( i in obj ) { + if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { + break; + } + } + } + + return obj; + }, + + // results is for internal usage only + makeArray: function( arr, results ) { + var ret = results || []; + + if ( arr != null ) { + if ( isArrayLike( Object( arr ) ) ) { + jQuery.merge( ret, + typeof arr === "string" ? + [ arr ] : arr + ); + } else { + push.call( ret, arr ); + } + } + + return ret; + }, + + inArray: function( elem, arr, i ) { + return arr == null ? -1 : indexOf.call( arr, elem, i ); + }, + + // Support: Android <=4.0 only, PhantomJS 1 only + // push.apply(_, arraylike) throws on ancient WebKit + merge: function( first, second ) { + var len = +second.length, + j = 0, + i = first.length; + + for ( ; j < len; j++ ) { + first[ i++ ] = second[ j ]; + } + + first.length = i; + + return first; + }, + + grep: function( elems, callback, invert ) { + var callbackInverse, + matches = [], + i = 0, + length = elems.length, + callbackExpect = !invert; + + // Go through the array, only saving the items + // that pass the validator function + for ( ; i < length; i++ ) { + callbackInverse = !callback( elems[ i ], i ); + if ( callbackInverse !== callbackExpect ) { + matches.push( elems[ i ] ); + } + } + + return matches; + }, + + // arg is for internal usage only + map: function( elems, callback, arg ) { + var length, value, + i = 0, + ret = []; + + // Go through the array, translating each of the items to their new values + if ( isArrayLike( elems ) ) { + length = elems.length; + for ( ; i < length; i++ ) { + value = callback( elems[ i ], i, arg ); + + if ( value != null ) { + ret.push( value ); + } + } + + // Go through every key on the object, + } else { + for ( i in elems ) { + value = callback( elems[ i ], i, arg ); + + if ( value != null ) { + ret.push( value ); + } + } + } + + // Flatten any nested arrays + return flat( ret ); + }, + + // A global GUID counter for objects + guid: 1, + + // jQuery.support is not used in Core but other projects attach their + // properties to it so it needs to exist. + support: support +} ); + +if ( typeof Symbol === "function" ) { + jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ]; +} + +// Populate the class2type map +jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), + function( _i, name ) { + class2type[ "[object " + name + "]" ] = name.toLowerCase(); + } ); + +function isArrayLike( obj ) { + + // Support: real iOS 8.2 only (not reproducible in simulator) + // `in` check used to prevent JIT error (gh-2145) + // hasOwn isn't used here due to false negatives + // regarding Nodelist length in IE + var length = !!obj && "length" in obj && obj.length, + type = toType( obj ); + + if ( isFunction( obj ) || isWindow( obj ) ) { + return false; + } + + return type === "array" || length === 0 || + typeof length === "number" && length > 0 && ( length - 1 ) in obj; +} +var Sizzle = +/*! + * Sizzle CSS Selector Engine v2.3.6 + * https://sizzlejs.com/ + * + * Copyright JS Foundation and other contributors + * Released under the MIT license + * https://js.foundation/ + * + * Date: 2021-02-16 + */ +( function( window ) { +var i, + support, + Expr, + getText, + isXML, + tokenize, + compile, + select, + outermostContext, + sortInput, + hasDuplicate, + + // Local document vars + setDocument, + document, + docElem, + documentIsHTML, + rbuggyQSA, + rbuggyMatches, + matches, + contains, + + // Instance-specific data + expando = "sizzle" + 1 * new Date(), + preferredDoc = window.document, + dirruns = 0, + done = 0, + classCache = createCache(), + tokenCache = createCache(), + compilerCache = createCache(), + nonnativeSelectorCache = createCache(), + sortOrder = function( a, b ) { + if ( a === b ) { + hasDuplicate = true; + } + return 0; + }, + + // Instance methods + hasOwn = ( {} ).hasOwnProperty, + arr = [], + pop = arr.pop, + pushNative = arr.push, + push = arr.push, + slice = arr.slice, + + // Use a stripped-down indexOf as it's faster than native + // https://jsperf.com/thor-indexof-vs-for/5 + indexOf = function( list, elem ) { + var i = 0, + len = list.length; + for ( ; i < len; i++ ) { + if ( list[ i ] === elem ) { + return i; + } + } + return -1; + }, + + booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|" + + "ismap|loop|multiple|open|readonly|required|scoped", + + // Regular expressions + + // http://www.w3.org/TR/css3-selectors/#whitespace + whitespace = "[\\x20\\t\\r\\n\\f]", + + // https://www.w3.org/TR/css-syntax-3/#ident-token-diagram + identifier = "(?:\\\\[\\da-fA-F]{1,6}" + whitespace + + "?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+", + + // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors + attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace + + + // Operator (capture 2) + "*([*^$|!~]?=)" + whitespace + + + // "Attribute values must be CSS identifiers [capture 5] + // or strings [capture 3 or capture 4]" + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + + whitespace + "*\\]", + + pseudos = ":(" + identifier + ")(?:\\((" + + + // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments: + // 1. quoted (capture 3; capture 4 or capture 5) + "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" + + + // 2. simple (capture 6) + "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" + + + // 3. anything else (capture 2) + ".*" + + ")\\)|)", + + // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter + rwhitespace = new RegExp( whitespace + "+", "g" ), + rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + + whitespace + "+$", "g" ), + + rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ), + rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + + "*" ), + rdescend = new RegExp( whitespace + "|>" ), + + rpseudo = new RegExp( pseudos ), + ridentifier = new RegExp( "^" + identifier + "$" ), + + matchExpr = { + "ID": new RegExp( "^#(" + identifier + ")" ), + "CLASS": new RegExp( "^\\.(" + identifier + ")" ), + "TAG": new RegExp( "^(" + identifier + "|[*])" ), + "ATTR": new RegExp( "^" + attributes ), + "PSEUDO": new RegExp( "^" + pseudos ), + "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + + whitespace + "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + + whitespace + "*(\\d+)|))" + whitespace + "*\\)|)", "i" ), + "bool": new RegExp( "^(?:" + booleans + ")$", "i" ), + + // For use in libraries implementing .is() + // We use this for POS matching in `select` + "needsContext": new RegExp( "^" + whitespace + + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + whitespace + + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" ) + }, + + rhtml = /HTML$/i, + rinputs = /^(?:input|select|textarea|button)$/i, + rheader = /^h\d$/i, + + rnative = /^[^{]+\{\s*\[native \w/, + + // Easily-parseable/retrievable ID or TAG or CLASS selectors + rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, + + rsibling = /[+~]/, + + // CSS escapes + // http://www.w3.org/TR/CSS21/syndata.html#escaped-characters + runescape = new RegExp( "\\\\[\\da-fA-F]{1,6}" + whitespace + "?|\\\\([^\\r\\n\\f])", "g" ), + funescape = function( escape, nonHex ) { + var high = "0x" + escape.slice( 1 ) - 0x10000; + + return nonHex ? + + // Strip the backslash prefix from a non-hex escape sequence + nonHex : + + // Replace a hexadecimal escape sequence with the encoded Unicode code point + // Support: IE <=11+ + // For values outside the Basic Multilingual Plane (BMP), manually construct a + // surrogate pair + high < 0 ? + String.fromCharCode( high + 0x10000 ) : + String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 ); + }, + + // CSS string/identifier serialization + // https://drafts.csswg.org/cssom/#common-serializing-idioms + rcssescape = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g, + fcssescape = function( ch, asCodePoint ) { + if ( asCodePoint ) { + + // U+0000 NULL becomes U+FFFD REPLACEMENT CHARACTER + if ( ch === "\0" ) { + return "\uFFFD"; + } + + // Control characters and (dependent upon position) numbers get escaped as code points + return ch.slice( 0, -1 ) + "\\" + + ch.charCodeAt( ch.length - 1 ).toString( 16 ) + " "; + } + + // Other potentially-special ASCII characters get backslash-escaped + return "\\" + ch; + }, + + // Used for iframes + // See setDocument() + // Removing the function wrapper causes a "Permission Denied" + // error in IE + unloadHandler = function() { + setDocument(); + }, + + inDisabledFieldset = addCombinator( + function( elem ) { + return elem.disabled === true && elem.nodeName.toLowerCase() === "fieldset"; + }, + { dir: "parentNode", next: "legend" } + ); + +// Optimize for push.apply( _, NodeList ) +try { + push.apply( + ( arr = slice.call( preferredDoc.childNodes ) ), + preferredDoc.childNodes + ); + + // Support: Android<4.0 + // Detect silently failing push.apply + // eslint-disable-next-line no-unused-expressions + arr[ preferredDoc.childNodes.length ].nodeType; +} catch ( e ) { + push = { apply: arr.length ? + + // Leverage slice if possible + function( target, els ) { + pushNative.apply( target, slice.call( els ) ); + } : + + // Support: IE<9 + // Otherwise append directly + function( target, els ) { + var j = target.length, + i = 0; + + // Can't trust NodeList.length + while ( ( target[ j++ ] = els[ i++ ] ) ) {} + target.length = j - 1; + } + }; +} + +function Sizzle( selector, context, results, seed ) { + var m, i, elem, nid, match, groups, newSelector, + newContext = context && context.ownerDocument, + + // nodeType defaults to 9, since context defaults to document + nodeType = context ? context.nodeType : 9; + + results = results || []; + + // Return early from calls with invalid selector or context + if ( typeof selector !== "string" || !selector || + nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) { + + return results; + } + + // Try to shortcut find operations (as opposed to filters) in HTML documents + if ( !seed ) { + setDocument( context ); + context = context || document; + + if ( documentIsHTML ) { + + // If the selector is sufficiently simple, try using a "get*By*" DOM method + // (excepting DocumentFragment context, where the methods don't exist) + if ( nodeType !== 11 && ( match = rquickExpr.exec( selector ) ) ) { + + // ID selector + if ( ( m = match[ 1 ] ) ) { + + // Document context + if ( nodeType === 9 ) { + if ( ( elem = context.getElementById( m ) ) ) { + + // Support: IE, Opera, Webkit + // TODO: identify versions + // getElementById can match elements by name instead of ID + if ( elem.id === m ) { + results.push( elem ); + return results; + } + } else { + return results; + } + + // Element context + } else { + + // Support: IE, Opera, Webkit + // TODO: identify versions + // getElementById can match elements by name instead of ID + if ( newContext && ( elem = newContext.getElementById( m ) ) && + contains( context, elem ) && + elem.id === m ) { + + results.push( elem ); + return results; + } + } + + // Type selector + } else if ( match[ 2 ] ) { + push.apply( results, context.getElementsByTagName( selector ) ); + return results; + + // Class selector + } else if ( ( m = match[ 3 ] ) && support.getElementsByClassName && + context.getElementsByClassName ) { + + push.apply( results, context.getElementsByClassName( m ) ); + return results; + } + } + + // Take advantage of querySelectorAll + if ( support.qsa && + !nonnativeSelectorCache[ selector + " " ] && + ( !rbuggyQSA || !rbuggyQSA.test( selector ) ) && + + // Support: IE 8 only + // Exclude object elements + ( nodeType !== 1 || context.nodeName.toLowerCase() !== "object" ) ) { + + newSelector = selector; + newContext = context; + + // qSA considers elements outside a scoping root when evaluating child or + // descendant combinators, which is not what we want. + // In such cases, we work around the behavior by prefixing every selector in the + // list with an ID selector referencing the scope context. + // The technique has to be used as well when a leading combinator is used + // as such selectors are not recognized by querySelectorAll. + // Thanks to Andrew Dupont for this technique. + if ( nodeType === 1 && + ( rdescend.test( selector ) || rcombinators.test( selector ) ) ) { + + // Expand context for sibling selectors + newContext = rsibling.test( selector ) && testContext( context.parentNode ) || + context; + + // We can use :scope instead of the ID hack if the browser + // supports it & if we're not changing the context. + if ( newContext !== context || !support.scope ) { + + // Capture the context ID, setting it first if necessary + if ( ( nid = context.getAttribute( "id" ) ) ) { + nid = nid.replace( rcssescape, fcssescape ); + } else { + context.setAttribute( "id", ( nid = expando ) ); + } + } + + // Prefix every selector in the list + groups = tokenize( selector ); + i = groups.length; + while ( i-- ) { + groups[ i ] = ( nid ? "#" + nid : ":scope" ) + " " + + toSelector( groups[ i ] ); + } + newSelector = groups.join( "," ); + } + + try { + push.apply( results, + newContext.querySelectorAll( newSelector ) + ); + return results; + } catch ( qsaError ) { + nonnativeSelectorCache( selector, true ); + } finally { + if ( nid === expando ) { + context.removeAttribute( "id" ); + } + } + } + } + } + + // All others + return select( selector.replace( rtrim, "$1" ), context, results, seed ); +} + +/** + * Create key-value caches of limited size + * @returns {function(string, object)} Returns the Object data after storing it on itself with + * property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength) + * deleting the oldest entry + */ +function createCache() { + var keys = []; + + function cache( key, value ) { + + // Use (key + " ") to avoid collision with native prototype properties (see Issue #157) + if ( keys.push( key + " " ) > Expr.cacheLength ) { + + // Only keep the most recent entries + delete cache[ keys.shift() ]; + } + return ( cache[ key + " " ] = value ); + } + return cache; +} + +/** + * Mark a function for special use by Sizzle + * @param {Function} fn The function to mark + */ +function markFunction( fn ) { + fn[ expando ] = true; + return fn; +} + +/** + * Support testing using an element + * @param {Function} fn Passed the created element and returns a boolean result + */ +function assert( fn ) { + var el = document.createElement( "fieldset" ); + + try { + return !!fn( el ); + } catch ( e ) { + return false; + } finally { + + // Remove from its parent by default + if ( el.parentNode ) { + el.parentNode.removeChild( el ); + } + + // release memory in IE + el = null; + } +} + +/** + * Adds the same handler for all of the specified attrs + * @param {String} attrs Pipe-separated list of attributes + * @param {Function} handler The method that will be applied + */ +function addHandle( attrs, handler ) { + var arr = attrs.split( "|" ), + i = arr.length; + + while ( i-- ) { + Expr.attrHandle[ arr[ i ] ] = handler; + } +} + +/** + * Checks document order of two siblings + * @param {Element} a + * @param {Element} b + * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b + */ +function siblingCheck( a, b ) { + var cur = b && a, + diff = cur && a.nodeType === 1 && b.nodeType === 1 && + a.sourceIndex - b.sourceIndex; + + // Use IE sourceIndex if available on both nodes + if ( diff ) { + return diff; + } + + // Check if b follows a + if ( cur ) { + while ( ( cur = cur.nextSibling ) ) { + if ( cur === b ) { + return -1; + } + } + } + + return a ? 1 : -1; +} + +/** + * Returns a function to use in pseudos for input types + * @param {String} type + */ +function createInputPseudo( type ) { + return function( elem ) { + var name = elem.nodeName.toLowerCase(); + return name === "input" && elem.type === type; + }; +} + +/** + * Returns a function to use in pseudos for buttons + * @param {String} type + */ +function createButtonPseudo( type ) { + return function( elem ) { + var name = elem.nodeName.toLowerCase(); + return ( name === "input" || name === "button" ) && elem.type === type; + }; +} + +/** + * Returns a function to use in pseudos for :enabled/:disabled + * @param {Boolean} disabled true for :disabled; false for :enabled + */ +function createDisabledPseudo( disabled ) { + + // Known :disabled false positives: fieldset[disabled] > legend:nth-of-type(n+2) :can-disable + return function( elem ) { + + // Only certain elements can match :enabled or :disabled + // https://html.spec.whatwg.org/multipage/scripting.html#selector-enabled + // https://html.spec.whatwg.org/multipage/scripting.html#selector-disabled + if ( "form" in elem ) { + + // Check for inherited disabledness on relevant non-disabled elements: + // * listed form-associated elements in a disabled fieldset + // https://html.spec.whatwg.org/multipage/forms.html#category-listed + // https://html.spec.whatwg.org/multipage/forms.html#concept-fe-disabled + // * option elements in a disabled optgroup + // https://html.spec.whatwg.org/multipage/forms.html#concept-option-disabled + // All such elements have a "form" property. + if ( elem.parentNode && elem.disabled === false ) { + + // Option elements defer to a parent optgroup if present + if ( "label" in elem ) { + if ( "label" in elem.parentNode ) { + return elem.parentNode.disabled === disabled; + } else { + return elem.disabled === disabled; + } + } + + // Support: IE 6 - 11 + // Use the isDisabled shortcut property to check for disabled fieldset ancestors + return elem.isDisabled === disabled || + + // Where there is no isDisabled, check manually + /* jshint -W018 */ + elem.isDisabled !== !disabled && + inDisabledFieldset( elem ) === disabled; + } + + return elem.disabled === disabled; + + // Try to winnow out elements that can't be disabled before trusting the disabled property. + // Some victims get caught in our net (label, legend, menu, track), but it shouldn't + // even exist on them, let alone have a boolean value. + } else if ( "label" in elem ) { + return elem.disabled === disabled; + } + + // Remaining elements are neither :enabled nor :disabled + return false; + }; +} + +/** + * Returns a function to use in pseudos for positionals + * @param {Function} fn + */ +function createPositionalPseudo( fn ) { + return markFunction( function( argument ) { + argument = +argument; + return markFunction( function( seed, matches ) { + var j, + matchIndexes = fn( [], seed.length, argument ), + i = matchIndexes.length; + + // Match elements found at the specified indexes + while ( i-- ) { + if ( seed[ ( j = matchIndexes[ i ] ) ] ) { + seed[ j ] = !( matches[ j ] = seed[ j ] ); + } + } + } ); + } ); +} + +/** + * Checks a node for validity as a Sizzle context + * @param {Element|Object=} context + * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value + */ +function testContext( context ) { + return context && typeof context.getElementsByTagName !== "undefined" && context; +} + +// Expose support vars for convenience +support = Sizzle.support = {}; + +/** + * Detects XML nodes + * @param {Element|Object} elem An element or a document + * @returns {Boolean} True iff elem is a non-HTML XML node + */ +isXML = Sizzle.isXML = function( elem ) { + var namespace = elem && elem.namespaceURI, + docElem = elem && ( elem.ownerDocument || elem ).documentElement; + + // Support: IE <=8 + // Assume HTML when documentElement doesn't yet exist, such as inside loading iframes + // https://bugs.jquery.com/ticket/4833 + return !rhtml.test( namespace || docElem && docElem.nodeName || "HTML" ); +}; + +/** + * Sets document-related variables once based on the current document + * @param {Element|Object} [doc] An element or document object to use to set the document + * @returns {Object} Returns the current document + */ +setDocument = Sizzle.setDocument = function( node ) { + var hasCompare, subWindow, + doc = node ? node.ownerDocument || node : preferredDoc; + + // Return early if doc is invalid or already selected + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( doc == document || doc.nodeType !== 9 || !doc.documentElement ) { + return document; + } + + // Update global variables + document = doc; + docElem = document.documentElement; + documentIsHTML = !isXML( document ); + + // Support: IE 9 - 11+, Edge 12 - 18+ + // Accessing iframe documents after unload throws "permission denied" errors (jQuery #13936) + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( preferredDoc != document && + ( subWindow = document.defaultView ) && subWindow.top !== subWindow ) { + + // Support: IE 11, Edge + if ( subWindow.addEventListener ) { + subWindow.addEventListener( "unload", unloadHandler, false ); + + // Support: IE 9 - 10 only + } else if ( subWindow.attachEvent ) { + subWindow.attachEvent( "onunload", unloadHandler ); + } + } + + // Support: IE 8 - 11+, Edge 12 - 18+, Chrome <=16 - 25 only, Firefox <=3.6 - 31 only, + // Safari 4 - 5 only, Opera <=11.6 - 12.x only + // IE/Edge & older browsers don't support the :scope pseudo-class. + // Support: Safari 6.0 only + // Safari 6.0 supports :scope but it's an alias of :root there. + support.scope = assert( function( el ) { + docElem.appendChild( el ).appendChild( document.createElement( "div" ) ); + return typeof el.querySelectorAll !== "undefined" && + !el.querySelectorAll( ":scope fieldset div" ).length; + } ); + + /* Attributes + ---------------------------------------------------------------------- */ + + // Support: IE<8 + // Verify that getAttribute really returns attributes and not properties + // (excepting IE8 booleans) + support.attributes = assert( function( el ) { + el.className = "i"; + return !el.getAttribute( "className" ); + } ); + + /* getElement(s)By* + ---------------------------------------------------------------------- */ + + // Check if getElementsByTagName("*") returns only elements + support.getElementsByTagName = assert( function( el ) { + el.appendChild( document.createComment( "" ) ); + return !el.getElementsByTagName( "*" ).length; + } ); + + // Support: IE<9 + support.getElementsByClassName = rnative.test( document.getElementsByClassName ); + + // Support: IE<10 + // Check if getElementById returns elements by name + // The broken getElementById methods don't pick up programmatically-set names, + // so use a roundabout getElementsByName test + support.getById = assert( function( el ) { + docElem.appendChild( el ).id = expando; + return !document.getElementsByName || !document.getElementsByName( expando ).length; + } ); + + // ID filter and find + if ( support.getById ) { + Expr.filter[ "ID" ] = function( id ) { + var attrId = id.replace( runescape, funescape ); + return function( elem ) { + return elem.getAttribute( "id" ) === attrId; + }; + }; + Expr.find[ "ID" ] = function( id, context ) { + if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { + var elem = context.getElementById( id ); + return elem ? [ elem ] : []; + } + }; + } else { + Expr.filter[ "ID" ] = function( id ) { + var attrId = id.replace( runescape, funescape ); + return function( elem ) { + var node = typeof elem.getAttributeNode !== "undefined" && + elem.getAttributeNode( "id" ); + return node && node.value === attrId; + }; + }; + + // Support: IE 6 - 7 only + // getElementById is not reliable as a find shortcut + Expr.find[ "ID" ] = function( id, context ) { + if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { + var node, i, elems, + elem = context.getElementById( id ); + + if ( elem ) { + + // Verify the id attribute + node = elem.getAttributeNode( "id" ); + if ( node && node.value === id ) { + return [ elem ]; + } + + // Fall back on getElementsByName + elems = context.getElementsByName( id ); + i = 0; + while ( ( elem = elems[ i++ ] ) ) { + node = elem.getAttributeNode( "id" ); + if ( node && node.value === id ) { + return [ elem ]; + } + } + } + + return []; + } + }; + } + + // Tag + Expr.find[ "TAG" ] = support.getElementsByTagName ? + function( tag, context ) { + if ( typeof context.getElementsByTagName !== "undefined" ) { + return context.getElementsByTagName( tag ); + + // DocumentFragment nodes don't have gEBTN + } else if ( support.qsa ) { + return context.querySelectorAll( tag ); + } + } : + + function( tag, context ) { + var elem, + tmp = [], + i = 0, + + // By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too + results = context.getElementsByTagName( tag ); + + // Filter out possible comments + if ( tag === "*" ) { + while ( ( elem = results[ i++ ] ) ) { + if ( elem.nodeType === 1 ) { + tmp.push( elem ); + } + } + + return tmp; + } + return results; + }; + + // Class + Expr.find[ "CLASS" ] = support.getElementsByClassName && function( className, context ) { + if ( typeof context.getElementsByClassName !== "undefined" && documentIsHTML ) { + return context.getElementsByClassName( className ); + } + }; + + /* QSA/matchesSelector + ---------------------------------------------------------------------- */ + + // QSA and matchesSelector support + + // matchesSelector(:active) reports false when true (IE9/Opera 11.5) + rbuggyMatches = []; + + // qSa(:focus) reports false when true (Chrome 21) + // We allow this because of a bug in IE8/9 that throws an error + // whenever `document.activeElement` is accessed on an iframe + // So, we allow :focus to pass through QSA all the time to avoid the IE error + // See https://bugs.jquery.com/ticket/13378 + rbuggyQSA = []; + + if ( ( support.qsa = rnative.test( document.querySelectorAll ) ) ) { + + // Build QSA regex + // Regex strategy adopted from Diego Perini + assert( function( el ) { + + var input; + + // Select is set to empty string on purpose + // This is to test IE's treatment of not explicitly + // setting a boolean content attribute, + // since its presence should be enough + // https://bugs.jquery.com/ticket/12359 + docElem.appendChild( el ).innerHTML = "" + + ""; + + // Support: IE8, Opera 11-12.16 + // Nothing should be selected when empty strings follow ^= or $= or *= + // The test attribute must be unknown in Opera but "safe" for WinRT + // https://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section + if ( el.querySelectorAll( "[msallowcapture^='']" ).length ) { + rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" ); + } + + // Support: IE8 + // Boolean attributes and "value" are not treated correctly + if ( !el.querySelectorAll( "[selected]" ).length ) { + rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" ); + } + + // Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+ + if ( !el.querySelectorAll( "[id~=" + expando + "-]" ).length ) { + rbuggyQSA.push( "~=" ); + } + + // Support: IE 11+, Edge 15 - 18+ + // IE 11/Edge don't find elements on a `[name='']` query in some cases. + // Adding a temporary attribute to the document before the selection works + // around the issue. + // Interestingly, IE 10 & older don't seem to have the issue. + input = document.createElement( "input" ); + input.setAttribute( "name", "" ); + el.appendChild( input ); + if ( !el.querySelectorAll( "[name='']" ).length ) { + rbuggyQSA.push( "\\[" + whitespace + "*name" + whitespace + "*=" + + whitespace + "*(?:''|\"\")" ); + } + + // Webkit/Opera - :checked should return selected option elements + // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked + // IE8 throws error here and will not see later tests + if ( !el.querySelectorAll( ":checked" ).length ) { + rbuggyQSA.push( ":checked" ); + } + + // Support: Safari 8+, iOS 8+ + // https://bugs.webkit.org/show_bug.cgi?id=136851 + // In-page `selector#id sibling-combinator selector` fails + if ( !el.querySelectorAll( "a#" + expando + "+*" ).length ) { + rbuggyQSA.push( ".#.+[+~]" ); + } + + // Support: Firefox <=3.6 - 5 only + // Old Firefox doesn't throw on a badly-escaped identifier. + el.querySelectorAll( "\\\f" ); + rbuggyQSA.push( "[\\r\\n\\f]" ); + } ); + + assert( function( el ) { + el.innerHTML = "" + + ""; + + // Support: Windows 8 Native Apps + // The type and name attributes are restricted during .innerHTML assignment + var input = document.createElement( "input" ); + input.setAttribute( "type", "hidden" ); + el.appendChild( input ).setAttribute( "name", "D" ); + + // Support: IE8 + // Enforce case-sensitivity of name attribute + if ( el.querySelectorAll( "[name=d]" ).length ) { + rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" ); + } + + // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled) + // IE8 throws error here and will not see later tests + if ( el.querySelectorAll( ":enabled" ).length !== 2 ) { + rbuggyQSA.push( ":enabled", ":disabled" ); + } + + // Support: IE9-11+ + // IE's :disabled selector does not pick up the children of disabled fieldsets + docElem.appendChild( el ).disabled = true; + if ( el.querySelectorAll( ":disabled" ).length !== 2 ) { + rbuggyQSA.push( ":enabled", ":disabled" ); + } + + // Support: Opera 10 - 11 only + // Opera 10-11 does not throw on post-comma invalid pseudos + el.querySelectorAll( "*,:x" ); + rbuggyQSA.push( ",.*:" ); + } ); + } + + if ( ( support.matchesSelector = rnative.test( ( matches = docElem.matches || + docElem.webkitMatchesSelector || + docElem.mozMatchesSelector || + docElem.oMatchesSelector || + docElem.msMatchesSelector ) ) ) ) { + + assert( function( el ) { + + // Check to see if it's possible to do matchesSelector + // on a disconnected node (IE 9) + support.disconnectedMatch = matches.call( el, "*" ); + + // This should fail with an exception + // Gecko does not error, returns false instead + matches.call( el, "[s!='']:x" ); + rbuggyMatches.push( "!=", pseudos ); + } ); + } + + rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join( "|" ) ); + rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join( "|" ) ); + + /* Contains + ---------------------------------------------------------------------- */ + hasCompare = rnative.test( docElem.compareDocumentPosition ); + + // Element contains another + // Purposefully self-exclusive + // As in, an element does not contain itself + contains = hasCompare || rnative.test( docElem.contains ) ? + function( a, b ) { + var adown = a.nodeType === 9 ? a.documentElement : a, + bup = b && b.parentNode; + return a === bup || !!( bup && bup.nodeType === 1 && ( + adown.contains ? + adown.contains( bup ) : + a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16 + ) ); + } : + function( a, b ) { + if ( b ) { + while ( ( b = b.parentNode ) ) { + if ( b === a ) { + return true; + } + } + } + return false; + }; + + /* Sorting + ---------------------------------------------------------------------- */ + + // Document order sorting + sortOrder = hasCompare ? + function( a, b ) { + + // Flag for duplicate removal + if ( a === b ) { + hasDuplicate = true; + return 0; + } + + // Sort on method existence if only one input has compareDocumentPosition + var compare = !a.compareDocumentPosition - !b.compareDocumentPosition; + if ( compare ) { + return compare; + } + + // Calculate position if both inputs belong to the same document + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + compare = ( a.ownerDocument || a ) == ( b.ownerDocument || b ) ? + a.compareDocumentPosition( b ) : + + // Otherwise we know they are disconnected + 1; + + // Disconnected nodes + if ( compare & 1 || + ( !support.sortDetached && b.compareDocumentPosition( a ) === compare ) ) { + + // Choose the first element that is related to our preferred document + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( a == document || a.ownerDocument == preferredDoc && + contains( preferredDoc, a ) ) { + return -1; + } + + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( b == document || b.ownerDocument == preferredDoc && + contains( preferredDoc, b ) ) { + return 1; + } + + // Maintain original order + return sortInput ? + ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : + 0; + } + + return compare & 4 ? -1 : 1; + } : + function( a, b ) { + + // Exit early if the nodes are identical + if ( a === b ) { + hasDuplicate = true; + return 0; + } + + var cur, + i = 0, + aup = a.parentNode, + bup = b.parentNode, + ap = [ a ], + bp = [ b ]; + + // Parentless nodes are either documents or disconnected + if ( !aup || !bup ) { + + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + /* eslint-disable eqeqeq */ + return a == document ? -1 : + b == document ? 1 : + /* eslint-enable eqeqeq */ + aup ? -1 : + bup ? 1 : + sortInput ? + ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : + 0; + + // If the nodes are siblings, we can do a quick check + } else if ( aup === bup ) { + return siblingCheck( a, b ); + } + + // Otherwise we need full lists of their ancestors for comparison + cur = a; + while ( ( cur = cur.parentNode ) ) { + ap.unshift( cur ); + } + cur = b; + while ( ( cur = cur.parentNode ) ) { + bp.unshift( cur ); + } + + // Walk down the tree looking for a discrepancy + while ( ap[ i ] === bp[ i ] ) { + i++; + } + + return i ? + + // Do a sibling check if the nodes have a common ancestor + siblingCheck( ap[ i ], bp[ i ] ) : + + // Otherwise nodes in our document sort first + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + /* eslint-disable eqeqeq */ + ap[ i ] == preferredDoc ? -1 : + bp[ i ] == preferredDoc ? 1 : + /* eslint-enable eqeqeq */ + 0; + }; + + return document; +}; + +Sizzle.matches = function( expr, elements ) { + return Sizzle( expr, null, null, elements ); +}; + +Sizzle.matchesSelector = function( elem, expr ) { + setDocument( elem ); + + if ( support.matchesSelector && documentIsHTML && + !nonnativeSelectorCache[ expr + " " ] && + ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) && + ( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) { + + try { + var ret = matches.call( elem, expr ); + + // IE 9's matchesSelector returns false on disconnected nodes + if ( ret || support.disconnectedMatch || + + // As well, disconnected nodes are said to be in a document + // fragment in IE 9 + elem.document && elem.document.nodeType !== 11 ) { + return ret; + } + } catch ( e ) { + nonnativeSelectorCache( expr, true ); + } + } + + return Sizzle( expr, document, null, [ elem ] ).length > 0; +}; + +Sizzle.contains = function( context, elem ) { + + // Set document vars if needed + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( ( context.ownerDocument || context ) != document ) { + setDocument( context ); + } + return contains( context, elem ); +}; + +Sizzle.attr = function( elem, name ) { + + // Set document vars if needed + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( ( elem.ownerDocument || elem ) != document ) { + setDocument( elem ); + } + + var fn = Expr.attrHandle[ name.toLowerCase() ], + + // Don't get fooled by Object.prototype properties (jQuery #13807) + val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ? + fn( elem, name, !documentIsHTML ) : + undefined; + + return val !== undefined ? + val : + support.attributes || !documentIsHTML ? + elem.getAttribute( name ) : + ( val = elem.getAttributeNode( name ) ) && val.specified ? + val.value : + null; +}; + +Sizzle.escape = function( sel ) { + return ( sel + "" ).replace( rcssescape, fcssescape ); +}; + +Sizzle.error = function( msg ) { + throw new Error( "Syntax error, unrecognized expression: " + msg ); +}; + +/** + * Document sorting and removing duplicates + * @param {ArrayLike} results + */ +Sizzle.uniqueSort = function( results ) { + var elem, + duplicates = [], + j = 0, + i = 0; + + // Unless we *know* we can detect duplicates, assume their presence + hasDuplicate = !support.detectDuplicates; + sortInput = !support.sortStable && results.slice( 0 ); + results.sort( sortOrder ); + + if ( hasDuplicate ) { + while ( ( elem = results[ i++ ] ) ) { + if ( elem === results[ i ] ) { + j = duplicates.push( i ); + } + } + while ( j-- ) { + results.splice( duplicates[ j ], 1 ); + } + } + + // Clear input after sorting to release objects + // See https://github.com/jquery/sizzle/pull/225 + sortInput = null; + + return results; +}; + +/** + * Utility function for retrieving the text value of an array of DOM nodes + * @param {Array|Element} elem + */ +getText = Sizzle.getText = function( elem ) { + var node, + ret = "", + i = 0, + nodeType = elem.nodeType; + + if ( !nodeType ) { + + // If no nodeType, this is expected to be an array + while ( ( node = elem[ i++ ] ) ) { + + // Do not traverse comment nodes + ret += getText( node ); + } + } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) { + + // Use textContent for elements + // innerText usage removed for consistency of new lines (jQuery #11153) + if ( typeof elem.textContent === "string" ) { + return elem.textContent; + } else { + + // Traverse its children + for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { + ret += getText( elem ); + } + } + } else if ( nodeType === 3 || nodeType === 4 ) { + return elem.nodeValue; + } + + // Do not include comment or processing instruction nodes + + return ret; +}; + +Expr = Sizzle.selectors = { + + // Can be adjusted by the user + cacheLength: 50, + + createPseudo: markFunction, + + match: matchExpr, + + attrHandle: {}, + + find: {}, + + relative: { + ">": { dir: "parentNode", first: true }, + " ": { dir: "parentNode" }, + "+": { dir: "previousSibling", first: true }, + "~": { dir: "previousSibling" } + }, + + preFilter: { + "ATTR": function( match ) { + match[ 1 ] = match[ 1 ].replace( runescape, funescape ); + + // Move the given value to match[3] whether quoted or unquoted + match[ 3 ] = ( match[ 3 ] || match[ 4 ] || + match[ 5 ] || "" ).replace( runescape, funescape ); + + if ( match[ 2 ] === "~=" ) { + match[ 3 ] = " " + match[ 3 ] + " "; + } + + return match.slice( 0, 4 ); + }, + + "CHILD": function( match ) { + + /* matches from matchExpr["CHILD"] + 1 type (only|nth|...) + 2 what (child|of-type) + 3 argument (even|odd|\d*|\d*n([+-]\d+)?|...) + 4 xn-component of xn+y argument ([+-]?\d*n|) + 5 sign of xn-component + 6 x of xn-component + 7 sign of y-component + 8 y of y-component + */ + match[ 1 ] = match[ 1 ].toLowerCase(); + + if ( match[ 1 ].slice( 0, 3 ) === "nth" ) { + + // nth-* requires argument + if ( !match[ 3 ] ) { + Sizzle.error( match[ 0 ] ); + } + + // numeric x and y parameters for Expr.filter.CHILD + // remember that false/true cast respectively to 0/1 + match[ 4 ] = +( match[ 4 ] ? + match[ 5 ] + ( match[ 6 ] || 1 ) : + 2 * ( match[ 3 ] === "even" || match[ 3 ] === "odd" ) ); + match[ 5 ] = +( ( match[ 7 ] + match[ 8 ] ) || match[ 3 ] === "odd" ); + + // other types prohibit arguments + } else if ( match[ 3 ] ) { + Sizzle.error( match[ 0 ] ); + } + + return match; + }, + + "PSEUDO": function( match ) { + var excess, + unquoted = !match[ 6 ] && match[ 2 ]; + + if ( matchExpr[ "CHILD" ].test( match[ 0 ] ) ) { + return null; + } + + // Accept quoted arguments as-is + if ( match[ 3 ] ) { + match[ 2 ] = match[ 4 ] || match[ 5 ] || ""; + + // Strip excess characters from unquoted arguments + } else if ( unquoted && rpseudo.test( unquoted ) && + + // Get excess from tokenize (recursively) + ( excess = tokenize( unquoted, true ) ) && + + // advance to the next closing parenthesis + ( excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length ) ) { + + // excess is a negative index + match[ 0 ] = match[ 0 ].slice( 0, excess ); + match[ 2 ] = unquoted.slice( 0, excess ); + } + + // Return only captures needed by the pseudo filter method (type and argument) + return match.slice( 0, 3 ); + } + }, + + filter: { + + "TAG": function( nodeNameSelector ) { + var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase(); + return nodeNameSelector === "*" ? + function() { + return true; + } : + function( elem ) { + return elem.nodeName && elem.nodeName.toLowerCase() === nodeName; + }; + }, + + "CLASS": function( className ) { + var pattern = classCache[ className + " " ]; + + return pattern || + ( pattern = new RegExp( "(^|" + whitespace + + ")" + className + "(" + whitespace + "|$)" ) ) && classCache( + className, function( elem ) { + return pattern.test( + typeof elem.className === "string" && elem.className || + typeof elem.getAttribute !== "undefined" && + elem.getAttribute( "class" ) || + "" + ); + } ); + }, + + "ATTR": function( name, operator, check ) { + return function( elem ) { + var result = Sizzle.attr( elem, name ); + + if ( result == null ) { + return operator === "!="; + } + if ( !operator ) { + return true; + } + + result += ""; + + /* eslint-disable max-len */ + + return operator === "=" ? result === check : + operator === "!=" ? result !== check : + operator === "^=" ? check && result.indexOf( check ) === 0 : + operator === "*=" ? check && result.indexOf( check ) > -1 : + operator === "$=" ? check && result.slice( -check.length ) === check : + operator === "~=" ? ( " " + result.replace( rwhitespace, " " ) + " " ).indexOf( check ) > -1 : + operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" : + false; + /* eslint-enable max-len */ + + }; + }, + + "CHILD": function( type, what, _argument, first, last ) { + var simple = type.slice( 0, 3 ) !== "nth", + forward = type.slice( -4 ) !== "last", + ofType = what === "of-type"; + + return first === 1 && last === 0 ? + + // Shortcut for :nth-*(n) + function( elem ) { + return !!elem.parentNode; + } : + + function( elem, _context, xml ) { + var cache, uniqueCache, outerCache, node, nodeIndex, start, + dir = simple !== forward ? "nextSibling" : "previousSibling", + parent = elem.parentNode, + name = ofType && elem.nodeName.toLowerCase(), + useCache = !xml && !ofType, + diff = false; + + if ( parent ) { + + // :(first|last|only)-(child|of-type) + if ( simple ) { + while ( dir ) { + node = elem; + while ( ( node = node[ dir ] ) ) { + if ( ofType ? + node.nodeName.toLowerCase() === name : + node.nodeType === 1 ) { + + return false; + } + } + + // Reverse direction for :only-* (if we haven't yet done so) + start = dir = type === "only" && !start && "nextSibling"; + } + return true; + } + + start = [ forward ? parent.firstChild : parent.lastChild ]; + + // non-xml :nth-child(...) stores cache data on `parent` + if ( forward && useCache ) { + + // Seek `elem` from a previously-cached index + + // ...in a gzip-friendly way + node = parent; + outerCache = node[ expando ] || ( node[ expando ] = {} ); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + ( outerCache[ node.uniqueID ] = {} ); + + cache = uniqueCache[ type ] || []; + nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; + diff = nodeIndex && cache[ 2 ]; + node = nodeIndex && parent.childNodes[ nodeIndex ]; + + while ( ( node = ++nodeIndex && node && node[ dir ] || + + // Fallback to seeking `elem` from the start + ( diff = nodeIndex = 0 ) || start.pop() ) ) { + + // When found, cache indexes on `parent` and break + if ( node.nodeType === 1 && ++diff && node === elem ) { + uniqueCache[ type ] = [ dirruns, nodeIndex, diff ]; + break; + } + } + + } else { + + // Use previously-cached element index if available + if ( useCache ) { + + // ...in a gzip-friendly way + node = elem; + outerCache = node[ expando ] || ( node[ expando ] = {} ); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + ( outerCache[ node.uniqueID ] = {} ); + + cache = uniqueCache[ type ] || []; + nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; + diff = nodeIndex; + } + + // xml :nth-child(...) + // or :nth-last-child(...) or :nth(-last)?-of-type(...) + if ( diff === false ) { + + // Use the same loop as above to seek `elem` from the start + while ( ( node = ++nodeIndex && node && node[ dir ] || + ( diff = nodeIndex = 0 ) || start.pop() ) ) { + + if ( ( ofType ? + node.nodeName.toLowerCase() === name : + node.nodeType === 1 ) && + ++diff ) { + + // Cache the index of each encountered element + if ( useCache ) { + outerCache = node[ expando ] || + ( node[ expando ] = {} ); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + ( outerCache[ node.uniqueID ] = {} ); + + uniqueCache[ type ] = [ dirruns, diff ]; + } + + if ( node === elem ) { + break; + } + } + } + } + } + + // Incorporate the offset, then check against cycle size + diff -= last; + return diff === first || ( diff % first === 0 && diff / first >= 0 ); + } + }; + }, + + "PSEUDO": function( pseudo, argument ) { + + // pseudo-class names are case-insensitive + // http://www.w3.org/TR/selectors/#pseudo-classes + // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters + // Remember that setFilters inherits from pseudos + var args, + fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] || + Sizzle.error( "unsupported pseudo: " + pseudo ); + + // The user may use createPseudo to indicate that + // arguments are needed to create the filter function + // just as Sizzle does + if ( fn[ expando ] ) { + return fn( argument ); + } + + // But maintain support for old signatures + if ( fn.length > 1 ) { + args = [ pseudo, pseudo, "", argument ]; + return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ? + markFunction( function( seed, matches ) { + var idx, + matched = fn( seed, argument ), + i = matched.length; + while ( i-- ) { + idx = indexOf( seed, matched[ i ] ); + seed[ idx ] = !( matches[ idx ] = matched[ i ] ); + } + } ) : + function( elem ) { + return fn( elem, 0, args ); + }; + } + + return fn; + } + }, + + pseudos: { + + // Potentially complex pseudos + "not": markFunction( function( selector ) { + + // Trim the selector passed to compile + // to avoid treating leading and trailing + // spaces as combinators + var input = [], + results = [], + matcher = compile( selector.replace( rtrim, "$1" ) ); + + return matcher[ expando ] ? + markFunction( function( seed, matches, _context, xml ) { + var elem, + unmatched = matcher( seed, null, xml, [] ), + i = seed.length; + + // Match elements unmatched by `matcher` + while ( i-- ) { + if ( ( elem = unmatched[ i ] ) ) { + seed[ i ] = !( matches[ i ] = elem ); + } + } + } ) : + function( elem, _context, xml ) { + input[ 0 ] = elem; + matcher( input, null, xml, results ); + + // Don't keep the element (issue #299) + input[ 0 ] = null; + return !results.pop(); + }; + } ), + + "has": markFunction( function( selector ) { + return function( elem ) { + return Sizzle( selector, elem ).length > 0; + }; + } ), + + "contains": markFunction( function( text ) { + text = text.replace( runescape, funescape ); + return function( elem ) { + return ( elem.textContent || getText( elem ) ).indexOf( text ) > -1; + }; + } ), + + // "Whether an element is represented by a :lang() selector + // is based solely on the element's language value + // being equal to the identifier C, + // or beginning with the identifier C immediately followed by "-". + // The matching of C against the element's language value is performed case-insensitively. + // The identifier C does not have to be a valid language name." + // http://www.w3.org/TR/selectors/#lang-pseudo + "lang": markFunction( function( lang ) { + + // lang value must be a valid identifier + if ( !ridentifier.test( lang || "" ) ) { + Sizzle.error( "unsupported lang: " + lang ); + } + lang = lang.replace( runescape, funescape ).toLowerCase(); + return function( elem ) { + var elemLang; + do { + if ( ( elemLang = documentIsHTML ? + elem.lang : + elem.getAttribute( "xml:lang" ) || elem.getAttribute( "lang" ) ) ) { + + elemLang = elemLang.toLowerCase(); + return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0; + } + } while ( ( elem = elem.parentNode ) && elem.nodeType === 1 ); + return false; + }; + } ), + + // Miscellaneous + "target": function( elem ) { + var hash = window.location && window.location.hash; + return hash && hash.slice( 1 ) === elem.id; + }, + + "root": function( elem ) { + return elem === docElem; + }, + + "focus": function( elem ) { + return elem === document.activeElement && + ( !document.hasFocus || document.hasFocus() ) && + !!( elem.type || elem.href || ~elem.tabIndex ); + }, + + // Boolean properties + "enabled": createDisabledPseudo( false ), + "disabled": createDisabledPseudo( true ), + + "checked": function( elem ) { + + // In CSS3, :checked should return both checked and selected elements + // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked + var nodeName = elem.nodeName.toLowerCase(); + return ( nodeName === "input" && !!elem.checked ) || + ( nodeName === "option" && !!elem.selected ); + }, + + "selected": function( elem ) { + + // Accessing this property makes selected-by-default + // options in Safari work properly + if ( elem.parentNode ) { + // eslint-disable-next-line no-unused-expressions + elem.parentNode.selectedIndex; + } + + return elem.selected === true; + }, + + // Contents + "empty": function( elem ) { + + // http://www.w3.org/TR/selectors/#empty-pseudo + // :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5), + // but not by others (comment: 8; processing instruction: 7; etc.) + // nodeType < 6 works because attributes (2) do not appear as children + for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { + if ( elem.nodeType < 6 ) { + return false; + } + } + return true; + }, + + "parent": function( elem ) { + return !Expr.pseudos[ "empty" ]( elem ); + }, + + // Element/input types + "header": function( elem ) { + return rheader.test( elem.nodeName ); + }, + + "input": function( elem ) { + return rinputs.test( elem.nodeName ); + }, + + "button": function( elem ) { + var name = elem.nodeName.toLowerCase(); + return name === "input" && elem.type === "button" || name === "button"; + }, + + "text": function( elem ) { + var attr; + return elem.nodeName.toLowerCase() === "input" && + elem.type === "text" && + + // Support: IE<8 + // New HTML5 attribute values (e.g., "search") appear with elem.type === "text" + ( ( attr = elem.getAttribute( "type" ) ) == null || + attr.toLowerCase() === "text" ); + }, + + // Position-in-collection + "first": createPositionalPseudo( function() { + return [ 0 ]; + } ), + + "last": createPositionalPseudo( function( _matchIndexes, length ) { + return [ length - 1 ]; + } ), + + "eq": createPositionalPseudo( function( _matchIndexes, length, argument ) { + return [ argument < 0 ? argument + length : argument ]; + } ), + + "even": createPositionalPseudo( function( matchIndexes, length ) { + var i = 0; + for ( ; i < length; i += 2 ) { + matchIndexes.push( i ); + } + return matchIndexes; + } ), + + "odd": createPositionalPseudo( function( matchIndexes, length ) { + var i = 1; + for ( ; i < length; i += 2 ) { + matchIndexes.push( i ); + } + return matchIndexes; + } ), + + "lt": createPositionalPseudo( function( matchIndexes, length, argument ) { + var i = argument < 0 ? + argument + length : + argument > length ? + length : + argument; + for ( ; --i >= 0; ) { + matchIndexes.push( i ); + } + return matchIndexes; + } ), + + "gt": createPositionalPseudo( function( matchIndexes, length, argument ) { + var i = argument < 0 ? argument + length : argument; + for ( ; ++i < length; ) { + matchIndexes.push( i ); + } + return matchIndexes; + } ) + } +}; + +Expr.pseudos[ "nth" ] = Expr.pseudos[ "eq" ]; + +// Add button/input type pseudos +for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) { + Expr.pseudos[ i ] = createInputPseudo( i ); +} +for ( i in { submit: true, reset: true } ) { + Expr.pseudos[ i ] = createButtonPseudo( i ); +} + +// Easy API for creating new setFilters +function setFilters() {} +setFilters.prototype = Expr.filters = Expr.pseudos; +Expr.setFilters = new setFilters(); + +tokenize = Sizzle.tokenize = function( selector, parseOnly ) { + var matched, match, tokens, type, + soFar, groups, preFilters, + cached = tokenCache[ selector + " " ]; + + if ( cached ) { + return parseOnly ? 0 : cached.slice( 0 ); + } + + soFar = selector; + groups = []; + preFilters = Expr.preFilter; + + while ( soFar ) { + + // Comma and first run + if ( !matched || ( match = rcomma.exec( soFar ) ) ) { + if ( match ) { + + // Don't consume trailing commas as valid + soFar = soFar.slice( match[ 0 ].length ) || soFar; + } + groups.push( ( tokens = [] ) ); + } + + matched = false; + + // Combinators + if ( ( match = rcombinators.exec( soFar ) ) ) { + matched = match.shift(); + tokens.push( { + value: matched, + + // Cast descendant combinators to space + type: match[ 0 ].replace( rtrim, " " ) + } ); + soFar = soFar.slice( matched.length ); + } + + // Filters + for ( type in Expr.filter ) { + if ( ( match = matchExpr[ type ].exec( soFar ) ) && ( !preFilters[ type ] || + ( match = preFilters[ type ]( match ) ) ) ) { + matched = match.shift(); + tokens.push( { + value: matched, + type: type, + matches: match + } ); + soFar = soFar.slice( matched.length ); + } + } + + if ( !matched ) { + break; + } + } + + // Return the length of the invalid excess + // if we're just parsing + // Otherwise, throw an error or return tokens + return parseOnly ? + soFar.length : + soFar ? + Sizzle.error( selector ) : + + // Cache the tokens + tokenCache( selector, groups ).slice( 0 ); +}; + +function toSelector( tokens ) { + var i = 0, + len = tokens.length, + selector = ""; + for ( ; i < len; i++ ) { + selector += tokens[ i ].value; + } + return selector; +} + +function addCombinator( matcher, combinator, base ) { + var dir = combinator.dir, + skip = combinator.next, + key = skip || dir, + checkNonElements = base && key === "parentNode", + doneName = done++; + + return combinator.first ? + + // Check against closest ancestor/preceding element + function( elem, context, xml ) { + while ( ( elem = elem[ dir ] ) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + return matcher( elem, context, xml ); + } + } + return false; + } : + + // Check against all ancestor/preceding elements + function( elem, context, xml ) { + var oldCache, uniqueCache, outerCache, + newCache = [ dirruns, doneName ]; + + // We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching + if ( xml ) { + while ( ( elem = elem[ dir ] ) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + if ( matcher( elem, context, xml ) ) { + return true; + } + } + } + } else { + while ( ( elem = elem[ dir ] ) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + outerCache = elem[ expando ] || ( elem[ expando ] = {} ); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ elem.uniqueID ] || + ( outerCache[ elem.uniqueID ] = {} ); + + if ( skip && skip === elem.nodeName.toLowerCase() ) { + elem = elem[ dir ] || elem; + } else if ( ( oldCache = uniqueCache[ key ] ) && + oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) { + + // Assign to newCache so results back-propagate to previous elements + return ( newCache[ 2 ] = oldCache[ 2 ] ); + } else { + + // Reuse newcache so results back-propagate to previous elements + uniqueCache[ key ] = newCache; + + // A match means we're done; a fail means we have to keep checking + if ( ( newCache[ 2 ] = matcher( elem, context, xml ) ) ) { + return true; + } + } + } + } + } + return false; + }; +} + +function elementMatcher( matchers ) { + return matchers.length > 1 ? + function( elem, context, xml ) { + var i = matchers.length; + while ( i-- ) { + if ( !matchers[ i ]( elem, context, xml ) ) { + return false; + } + } + return true; + } : + matchers[ 0 ]; +} + +function multipleContexts( selector, contexts, results ) { + var i = 0, + len = contexts.length; + for ( ; i < len; i++ ) { + Sizzle( selector, contexts[ i ], results ); + } + return results; +} + +function condense( unmatched, map, filter, context, xml ) { + var elem, + newUnmatched = [], + i = 0, + len = unmatched.length, + mapped = map != null; + + for ( ; i < len; i++ ) { + if ( ( elem = unmatched[ i ] ) ) { + if ( !filter || filter( elem, context, xml ) ) { + newUnmatched.push( elem ); + if ( mapped ) { + map.push( i ); + } + } + } + } + + return newUnmatched; +} + +function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) { + if ( postFilter && !postFilter[ expando ] ) { + postFilter = setMatcher( postFilter ); + } + if ( postFinder && !postFinder[ expando ] ) { + postFinder = setMatcher( postFinder, postSelector ); + } + return markFunction( function( seed, results, context, xml ) { + var temp, i, elem, + preMap = [], + postMap = [], + preexisting = results.length, + + // Get initial elements from seed or context + elems = seed || multipleContexts( + selector || "*", + context.nodeType ? [ context ] : context, + [] + ), + + // Prefilter to get matcher input, preserving a map for seed-results synchronization + matcherIn = preFilter && ( seed || !selector ) ? + condense( elems, preMap, preFilter, context, xml ) : + elems, + + matcherOut = matcher ? + + // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results, + postFinder || ( seed ? preFilter : preexisting || postFilter ) ? + + // ...intermediate processing is necessary + [] : + + // ...otherwise use results directly + results : + matcherIn; + + // Find primary matches + if ( matcher ) { + matcher( matcherIn, matcherOut, context, xml ); + } + + // Apply postFilter + if ( postFilter ) { + temp = condense( matcherOut, postMap ); + postFilter( temp, [], context, xml ); + + // Un-match failing elements by moving them back to matcherIn + i = temp.length; + while ( i-- ) { + if ( ( elem = temp[ i ] ) ) { + matcherOut[ postMap[ i ] ] = !( matcherIn[ postMap[ i ] ] = elem ); + } + } + } + + if ( seed ) { + if ( postFinder || preFilter ) { + if ( postFinder ) { + + // Get the final matcherOut by condensing this intermediate into postFinder contexts + temp = []; + i = matcherOut.length; + while ( i-- ) { + if ( ( elem = matcherOut[ i ] ) ) { + + // Restore matcherIn since elem is not yet a final match + temp.push( ( matcherIn[ i ] = elem ) ); + } + } + postFinder( null, ( matcherOut = [] ), temp, xml ); + } + + // Move matched elements from seed to results to keep them synchronized + i = matcherOut.length; + while ( i-- ) { + if ( ( elem = matcherOut[ i ] ) && + ( temp = postFinder ? indexOf( seed, elem ) : preMap[ i ] ) > -1 ) { + + seed[ temp ] = !( results[ temp ] = elem ); + } + } + } + + // Add elements to results, through postFinder if defined + } else { + matcherOut = condense( + matcherOut === results ? + matcherOut.splice( preexisting, matcherOut.length ) : + matcherOut + ); + if ( postFinder ) { + postFinder( null, results, matcherOut, xml ); + } else { + push.apply( results, matcherOut ); + } + } + } ); +} + +function matcherFromTokens( tokens ) { + var checkContext, matcher, j, + len = tokens.length, + leadingRelative = Expr.relative[ tokens[ 0 ].type ], + implicitRelative = leadingRelative || Expr.relative[ " " ], + i = leadingRelative ? 1 : 0, + + // The foundational matcher ensures that elements are reachable from top-level context(s) + matchContext = addCombinator( function( elem ) { + return elem === checkContext; + }, implicitRelative, true ), + matchAnyContext = addCombinator( function( elem ) { + return indexOf( checkContext, elem ) > -1; + }, implicitRelative, true ), + matchers = [ function( elem, context, xml ) { + var ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || ( + ( checkContext = context ).nodeType ? + matchContext( elem, context, xml ) : + matchAnyContext( elem, context, xml ) ); + + // Avoid hanging onto element (issue #299) + checkContext = null; + return ret; + } ]; + + for ( ; i < len; i++ ) { + if ( ( matcher = Expr.relative[ tokens[ i ].type ] ) ) { + matchers = [ addCombinator( elementMatcher( matchers ), matcher ) ]; + } else { + matcher = Expr.filter[ tokens[ i ].type ].apply( null, tokens[ i ].matches ); + + // Return special upon seeing a positional matcher + if ( matcher[ expando ] ) { + + // Find the next relative operator (if any) for proper handling + j = ++i; + for ( ; j < len; j++ ) { + if ( Expr.relative[ tokens[ j ].type ] ) { + break; + } + } + return setMatcher( + i > 1 && elementMatcher( matchers ), + i > 1 && toSelector( + + // If the preceding token was a descendant combinator, insert an implicit any-element `*` + tokens + .slice( 0, i - 1 ) + .concat( { value: tokens[ i - 2 ].type === " " ? "*" : "" } ) + ).replace( rtrim, "$1" ), + matcher, + i < j && matcherFromTokens( tokens.slice( i, j ) ), + j < len && matcherFromTokens( ( tokens = tokens.slice( j ) ) ), + j < len && toSelector( tokens ) + ); + } + matchers.push( matcher ); + } + } + + return elementMatcher( matchers ); +} + +function matcherFromGroupMatchers( elementMatchers, setMatchers ) { + var bySet = setMatchers.length > 0, + byElement = elementMatchers.length > 0, + superMatcher = function( seed, context, xml, results, outermost ) { + var elem, j, matcher, + matchedCount = 0, + i = "0", + unmatched = seed && [], + setMatched = [], + contextBackup = outermostContext, + + // We must always have either seed elements or outermost context + elems = seed || byElement && Expr.find[ "TAG" ]( "*", outermost ), + + // Use integer dirruns iff this is the outermost matcher + dirrunsUnique = ( dirruns += contextBackup == null ? 1 : Math.random() || 0.1 ), + len = elems.length; + + if ( outermost ) { + + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + outermostContext = context == document || context || outermost; + } + + // Add elements passing elementMatchers directly to results + // Support: IE<9, Safari + // Tolerate NodeList properties (IE: "length"; Safari: ) matching elements by id + for ( ; i !== len && ( elem = elems[ i ] ) != null; i++ ) { + if ( byElement && elem ) { + j = 0; + + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( !context && elem.ownerDocument != document ) { + setDocument( elem ); + xml = !documentIsHTML; + } + while ( ( matcher = elementMatchers[ j++ ] ) ) { + if ( matcher( elem, context || document, xml ) ) { + results.push( elem ); + break; + } + } + if ( outermost ) { + dirruns = dirrunsUnique; + } + } + + // Track unmatched elements for set filters + if ( bySet ) { + + // They will have gone through all possible matchers + if ( ( elem = !matcher && elem ) ) { + matchedCount--; + } + + // Lengthen the array for every element, matched or not + if ( seed ) { + unmatched.push( elem ); + } + } + } + + // `i` is now the count of elements visited above, and adding it to `matchedCount` + // makes the latter nonnegative. + matchedCount += i; + + // Apply set filters to unmatched elements + // NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount` + // equals `i`), unless we didn't visit _any_ elements in the above loop because we have + // no element matchers and no seed. + // Incrementing an initially-string "0" `i` allows `i` to remain a string only in that + // case, which will result in a "00" `matchedCount` that differs from `i` but is also + // numerically zero. + if ( bySet && i !== matchedCount ) { + j = 0; + while ( ( matcher = setMatchers[ j++ ] ) ) { + matcher( unmatched, setMatched, context, xml ); + } + + if ( seed ) { + + // Reintegrate element matches to eliminate the need for sorting + if ( matchedCount > 0 ) { + while ( i-- ) { + if ( !( unmatched[ i ] || setMatched[ i ] ) ) { + setMatched[ i ] = pop.call( results ); + } + } + } + + // Discard index placeholder values to get only actual matches + setMatched = condense( setMatched ); + } + + // Add matches to results + push.apply( results, setMatched ); + + // Seedless set matches succeeding multiple successful matchers stipulate sorting + if ( outermost && !seed && setMatched.length > 0 && + ( matchedCount + setMatchers.length ) > 1 ) { + + Sizzle.uniqueSort( results ); + } + } + + // Override manipulation of globals by nested matchers + if ( outermost ) { + dirruns = dirrunsUnique; + outermostContext = contextBackup; + } + + return unmatched; + }; + + return bySet ? + markFunction( superMatcher ) : + superMatcher; +} + +compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) { + var i, + setMatchers = [], + elementMatchers = [], + cached = compilerCache[ selector + " " ]; + + if ( !cached ) { + + // Generate a function of recursive functions that can be used to check each element + if ( !match ) { + match = tokenize( selector ); + } + i = match.length; + while ( i-- ) { + cached = matcherFromTokens( match[ i ] ); + if ( cached[ expando ] ) { + setMatchers.push( cached ); + } else { + elementMatchers.push( cached ); + } + } + + // Cache the compiled function + cached = compilerCache( + selector, + matcherFromGroupMatchers( elementMatchers, setMatchers ) + ); + + // Save selector and tokenization + cached.selector = selector; + } + return cached; +}; + +/** + * A low-level selection function that works with Sizzle's compiled + * selector functions + * @param {String|Function} selector A selector or a pre-compiled + * selector function built with Sizzle.compile + * @param {Element} context + * @param {Array} [results] + * @param {Array} [seed] A set of elements to match against + */ +select = Sizzle.select = function( selector, context, results, seed ) { + var i, tokens, token, type, find, + compiled = typeof selector === "function" && selector, + match = !seed && tokenize( ( selector = compiled.selector || selector ) ); + + results = results || []; + + // Try to minimize operations if there is only one selector in the list and no seed + // (the latter of which guarantees us context) + if ( match.length === 1 ) { + + // Reduce context if the leading compound selector is an ID + tokens = match[ 0 ] = match[ 0 ].slice( 0 ); + if ( tokens.length > 2 && ( token = tokens[ 0 ] ).type === "ID" && + context.nodeType === 9 && documentIsHTML && Expr.relative[ tokens[ 1 ].type ] ) { + + context = ( Expr.find[ "ID" ]( token.matches[ 0 ] + .replace( runescape, funescape ), context ) || [] )[ 0 ]; + if ( !context ) { + return results; + + // Precompiled matchers will still verify ancestry, so step up a level + } else if ( compiled ) { + context = context.parentNode; + } + + selector = selector.slice( tokens.shift().value.length ); + } + + // Fetch a seed set for right-to-left matching + i = matchExpr[ "needsContext" ].test( selector ) ? 0 : tokens.length; + while ( i-- ) { + token = tokens[ i ]; + + // Abort if we hit a combinator + if ( Expr.relative[ ( type = token.type ) ] ) { + break; + } + if ( ( find = Expr.find[ type ] ) ) { + + // Search, expanding context for leading sibling combinators + if ( ( seed = find( + token.matches[ 0 ].replace( runescape, funescape ), + rsibling.test( tokens[ 0 ].type ) && testContext( context.parentNode ) || + context + ) ) ) { + + // If seed is empty or no tokens remain, we can return early + tokens.splice( i, 1 ); + selector = seed.length && toSelector( tokens ); + if ( !selector ) { + push.apply( results, seed ); + return results; + } + + break; + } + } + } + } + + // Compile and execute a filtering function if one is not provided + // Provide `match` to avoid retokenization if we modified the selector above + ( compiled || compile( selector, match ) )( + seed, + context, + !documentIsHTML, + results, + !context || rsibling.test( selector ) && testContext( context.parentNode ) || context + ); + return results; +}; + +// One-time assignments + +// Sort stability +support.sortStable = expando.split( "" ).sort( sortOrder ).join( "" ) === expando; + +// Support: Chrome 14-35+ +// Always assume duplicates if they aren't passed to the comparison function +support.detectDuplicates = !!hasDuplicate; + +// Initialize against the default document +setDocument(); + +// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27) +// Detached nodes confoundingly follow *each other* +support.sortDetached = assert( function( el ) { + + // Should return 1, but returns 4 (following) + return el.compareDocumentPosition( document.createElement( "fieldset" ) ) & 1; +} ); + +// Support: IE<8 +// Prevent attribute/property "interpolation" +// https://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx +if ( !assert( function( el ) { + el.innerHTML = ""; + return el.firstChild.getAttribute( "href" ) === "#"; +} ) ) { + addHandle( "type|href|height|width", function( elem, name, isXML ) { + if ( !isXML ) { + return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 ); + } + } ); +} + +// Support: IE<9 +// Use defaultValue in place of getAttribute("value") +if ( !support.attributes || !assert( function( el ) { + el.innerHTML = ""; + el.firstChild.setAttribute( "value", "" ); + return el.firstChild.getAttribute( "value" ) === ""; +} ) ) { + addHandle( "value", function( elem, _name, isXML ) { + if ( !isXML && elem.nodeName.toLowerCase() === "input" ) { + return elem.defaultValue; + } + } ); +} + +// Support: IE<9 +// Use getAttributeNode to fetch booleans when getAttribute lies +if ( !assert( function( el ) { + return el.getAttribute( "disabled" ) == null; +} ) ) { + addHandle( booleans, function( elem, name, isXML ) { + var val; + if ( !isXML ) { + return elem[ name ] === true ? name.toLowerCase() : + ( val = elem.getAttributeNode( name ) ) && val.specified ? + val.value : + null; + } + } ); +} + +return Sizzle; + +} )( window ); + + + +jQuery.find = Sizzle; +jQuery.expr = Sizzle.selectors; + +// Deprecated +jQuery.expr[ ":" ] = jQuery.expr.pseudos; +jQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort; +jQuery.text = Sizzle.getText; +jQuery.isXMLDoc = Sizzle.isXML; +jQuery.contains = Sizzle.contains; +jQuery.escapeSelector = Sizzle.escape; + + + + +var dir = function( elem, dir, until ) { + var matched = [], + truncate = until !== undefined; + + while ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) { + if ( elem.nodeType === 1 ) { + if ( truncate && jQuery( elem ).is( until ) ) { + break; + } + matched.push( elem ); + } + } + return matched; +}; + + +var siblings = function( n, elem ) { + var matched = []; + + for ( ; n; n = n.nextSibling ) { + if ( n.nodeType === 1 && n !== elem ) { + matched.push( n ); + } + } + + return matched; +}; + + +var rneedsContext = jQuery.expr.match.needsContext; + + + +function nodeName( elem, name ) { + + return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); + +} +var rsingleTag = ( /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i ); + + + +// Implement the identical functionality for filter and not +function winnow( elements, qualifier, not ) { + if ( isFunction( qualifier ) ) { + return jQuery.grep( elements, function( elem, i ) { + return !!qualifier.call( elem, i, elem ) !== not; + } ); + } + + // Single element + if ( qualifier.nodeType ) { + return jQuery.grep( elements, function( elem ) { + return ( elem === qualifier ) !== not; + } ); + } + + // Arraylike of elements (jQuery, arguments, Array) + if ( typeof qualifier !== "string" ) { + return jQuery.grep( elements, function( elem ) { + return ( indexOf.call( qualifier, elem ) > -1 ) !== not; + } ); + } + + // Filtered directly for both simple and complex selectors + return jQuery.filter( qualifier, elements, not ); +} + +jQuery.filter = function( expr, elems, not ) { + var elem = elems[ 0 ]; + + if ( not ) { + expr = ":not(" + expr + ")"; + } + + if ( elems.length === 1 && elem.nodeType === 1 ) { + return jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : []; + } + + return jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) { + return elem.nodeType === 1; + } ) ); +}; + +jQuery.fn.extend( { + find: function( selector ) { + var i, ret, + len = this.length, + self = this; + + if ( typeof selector !== "string" ) { + return this.pushStack( jQuery( selector ).filter( function() { + for ( i = 0; i < len; i++ ) { + if ( jQuery.contains( self[ i ], this ) ) { + return true; + } + } + } ) ); + } + + ret = this.pushStack( [] ); + + for ( i = 0; i < len; i++ ) { + jQuery.find( selector, self[ i ], ret ); + } + + return len > 1 ? jQuery.uniqueSort( ret ) : ret; + }, + filter: function( selector ) { + return this.pushStack( winnow( this, selector || [], false ) ); + }, + not: function( selector ) { + return this.pushStack( winnow( this, selector || [], true ) ); + }, + is: function( selector ) { + return !!winnow( + this, + + // If this is a positional/relative selector, check membership in the returned set + // so $("p:first").is("p:last") won't return true for a doc with two "p". + typeof selector === "string" && rneedsContext.test( selector ) ? + jQuery( selector ) : + selector || [], + false + ).length; + } +} ); + + +// Initialize a jQuery object + + +// A central reference to the root jQuery(document) +var rootjQuery, + + // A simple way to check for HTML strings + // Prioritize #id over to avoid XSS via location.hash (#9521) + // Strict HTML recognition (#11290: must start with <) + // Shortcut simple #id case for speed + rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/, + + init = jQuery.fn.init = function( selector, context, root ) { + var match, elem; + + // HANDLE: $(""), $(null), $(undefined), $(false) + if ( !selector ) { + return this; + } + + // Method init() accepts an alternate rootjQuery + // so migrate can support jQuery.sub (gh-2101) + root = root || rootjQuery; + + // Handle HTML strings + if ( typeof selector === "string" ) { + if ( selector[ 0 ] === "<" && + selector[ selector.length - 1 ] === ">" && + selector.length >= 3 ) { + + // Assume that strings that start and end with <> are HTML and skip the regex check + match = [ null, selector, null ]; + + } else { + match = rquickExpr.exec( selector ); + } + + // Match html or make sure no context is specified for #id + if ( match && ( match[ 1 ] || !context ) ) { + + // HANDLE: $(html) -> $(array) + if ( match[ 1 ] ) { + context = context instanceof jQuery ? context[ 0 ] : context; + + // Option to run scripts is true for back-compat + // Intentionally let the error be thrown if parseHTML is not present + jQuery.merge( this, jQuery.parseHTML( + match[ 1 ], + context && context.nodeType ? context.ownerDocument || context : document, + true + ) ); + + // HANDLE: $(html, props) + if ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) { + for ( match in context ) { + + // Properties of context are called as methods if possible + if ( isFunction( this[ match ] ) ) { + this[ match ]( context[ match ] ); + + // ...and otherwise set as attributes + } else { + this.attr( match, context[ match ] ); + } + } + } + + return this; + + // HANDLE: $(#id) + } else { + elem = document.getElementById( match[ 2 ] ); + + if ( elem ) { + + // Inject the element directly into the jQuery object + this[ 0 ] = elem; + this.length = 1; + } + return this; + } + + // HANDLE: $(expr, $(...)) + } else if ( !context || context.jquery ) { + return ( context || root ).find( selector ); + + // HANDLE: $(expr, context) + // (which is just equivalent to: $(context).find(expr) + } else { + return this.constructor( context ).find( selector ); + } + + // HANDLE: $(DOMElement) + } else if ( selector.nodeType ) { + this[ 0 ] = selector; + this.length = 1; + return this; + + // HANDLE: $(function) + // Shortcut for document ready + } else if ( isFunction( selector ) ) { + return root.ready !== undefined ? + root.ready( selector ) : + + // Execute immediately if ready is not present + selector( jQuery ); + } + + return jQuery.makeArray( selector, this ); + }; + +// Give the init function the jQuery prototype for later instantiation +init.prototype = jQuery.fn; + +// Initialize central reference +rootjQuery = jQuery( document ); + + +var rparentsprev = /^(?:parents|prev(?:Until|All))/, + + // Methods guaranteed to produce a unique set when starting from a unique set + guaranteedUnique = { + children: true, + contents: true, + next: true, + prev: true + }; + +jQuery.fn.extend( { + has: function( target ) { + var targets = jQuery( target, this ), + l = targets.length; + + return this.filter( function() { + var i = 0; + for ( ; i < l; i++ ) { + if ( jQuery.contains( this, targets[ i ] ) ) { + return true; + } + } + } ); + }, + + closest: function( selectors, context ) { + var cur, + i = 0, + l = this.length, + matched = [], + targets = typeof selectors !== "string" && jQuery( selectors ); + + // Positional selectors never match, since there's no _selection_ context + if ( !rneedsContext.test( selectors ) ) { + for ( ; i < l; i++ ) { + for ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) { + + // Always skip document fragments + if ( cur.nodeType < 11 && ( targets ? + targets.index( cur ) > -1 : + + // Don't pass non-elements to Sizzle + cur.nodeType === 1 && + jQuery.find.matchesSelector( cur, selectors ) ) ) { + + matched.push( cur ); + break; + } + } + } + } + + return this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched ); + }, + + // Determine the position of an element within the set + index: function( elem ) { + + // No argument, return index in parent + if ( !elem ) { + return ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1; + } + + // Index in selector + if ( typeof elem === "string" ) { + return indexOf.call( jQuery( elem ), this[ 0 ] ); + } + + // Locate the position of the desired element + return indexOf.call( this, + + // If it receives a jQuery object, the first element is used + elem.jquery ? elem[ 0 ] : elem + ); + }, + + add: function( selector, context ) { + return this.pushStack( + jQuery.uniqueSort( + jQuery.merge( this.get(), jQuery( selector, context ) ) + ) + ); + }, + + addBack: function( selector ) { + return this.add( selector == null ? + this.prevObject : this.prevObject.filter( selector ) + ); + } +} ); + +function sibling( cur, dir ) { + while ( ( cur = cur[ dir ] ) && cur.nodeType !== 1 ) {} + return cur; +} + +jQuery.each( { + parent: function( elem ) { + var parent = elem.parentNode; + return parent && parent.nodeType !== 11 ? parent : null; + }, + parents: function( elem ) { + return dir( elem, "parentNode" ); + }, + parentsUntil: function( elem, _i, until ) { + return dir( elem, "parentNode", until ); + }, + next: function( elem ) { + return sibling( elem, "nextSibling" ); + }, + prev: function( elem ) { + return sibling( elem, "previousSibling" ); + }, + nextAll: function( elem ) { + return dir( elem, "nextSibling" ); + }, + prevAll: function( elem ) { + return dir( elem, "previousSibling" ); + }, + nextUntil: function( elem, _i, until ) { + return dir( elem, "nextSibling", until ); + }, + prevUntil: function( elem, _i, until ) { + return dir( elem, "previousSibling", until ); + }, + siblings: function( elem ) { + return siblings( ( elem.parentNode || {} ).firstChild, elem ); + }, + children: function( elem ) { + return siblings( elem.firstChild ); + }, + contents: function( elem ) { + if ( elem.contentDocument != null && + + // Support: IE 11+ + // elements with no `data` attribute has an object + // `contentDocument` with a `null` prototype. + getProto( elem.contentDocument ) ) { + + return elem.contentDocument; + } + + // Support: IE 9 - 11 only, iOS 7 only, Android Browser <=4.3 only + // Treat the template element as a regular one in browsers that + // don't support it. + if ( nodeName( elem, "template" ) ) { + elem = elem.content || elem; + } + + return jQuery.merge( [], elem.childNodes ); + } +}, function( name, fn ) { + jQuery.fn[ name ] = function( until, selector ) { + var matched = jQuery.map( this, fn, until ); + + if ( name.slice( -5 ) !== "Until" ) { + selector = until; + } + + if ( selector && typeof selector === "string" ) { + matched = jQuery.filter( selector, matched ); + } + + if ( this.length > 1 ) { + + // Remove duplicates + if ( !guaranteedUnique[ name ] ) { + jQuery.uniqueSort( matched ); + } + + // Reverse order for parents* and prev-derivatives + if ( rparentsprev.test( name ) ) { + matched.reverse(); + } + } + + return this.pushStack( matched ); + }; +} ); +var rnothtmlwhite = ( /[^\x20\t\r\n\f]+/g ); + + + +// Convert String-formatted options into Object-formatted ones +function createOptions( options ) { + var object = {}; + jQuery.each( options.match( rnothtmlwhite ) || [], function( _, flag ) { + object[ flag ] = true; + } ); + return object; +} + +/* + * Create a callback list using the following parameters: + * + * options: an optional list of space-separated options that will change how + * the callback list behaves or a more traditional option object + * + * By default a callback list will act like an event callback list and can be + * "fired" multiple times. + * + * Possible options: + * + * once: will ensure the callback list can only be fired once (like a Deferred) + * + * memory: will keep track of previous values and will call any callback added + * after the list has been fired right away with the latest "memorized" + * values (like a Deferred) + * + * unique: will ensure a callback can only be added once (no duplicate in the list) + * + * stopOnFalse: interrupt callings when a callback returns false + * + */ +jQuery.Callbacks = function( options ) { + + // Convert options from String-formatted to Object-formatted if needed + // (we check in cache first) + options = typeof options === "string" ? + createOptions( options ) : + jQuery.extend( {}, options ); + + var // Flag to know if list is currently firing + firing, + + // Last fire value for non-forgettable lists + memory, + + // Flag to know if list was already fired + fired, + + // Flag to prevent firing + locked, + + // Actual callback list + list = [], + + // Queue of execution data for repeatable lists + queue = [], + + // Index of currently firing callback (modified by add/remove as needed) + firingIndex = -1, + + // Fire callbacks + fire = function() { + + // Enforce single-firing + locked = locked || options.once; + + // Execute callbacks for all pending executions, + // respecting firingIndex overrides and runtime changes + fired = firing = true; + for ( ; queue.length; firingIndex = -1 ) { + memory = queue.shift(); + while ( ++firingIndex < list.length ) { + + // Run callback and check for early termination + if ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false && + options.stopOnFalse ) { + + // Jump to end and forget the data so .add doesn't re-fire + firingIndex = list.length; + memory = false; + } + } + } + + // Forget the data if we're done with it + if ( !options.memory ) { + memory = false; + } + + firing = false; + + // Clean up if we're done firing for good + if ( locked ) { + + // Keep an empty list if we have data for future add calls + if ( memory ) { + list = []; + + // Otherwise, this object is spent + } else { + list = ""; + } + } + }, + + // Actual Callbacks object + self = { + + // Add a callback or a collection of callbacks to the list + add: function() { + if ( list ) { + + // If we have memory from a past run, we should fire after adding + if ( memory && !firing ) { + firingIndex = list.length - 1; + queue.push( memory ); + } + + ( function add( args ) { + jQuery.each( args, function( _, arg ) { + if ( isFunction( arg ) ) { + if ( !options.unique || !self.has( arg ) ) { + list.push( arg ); + } + } else if ( arg && arg.length && toType( arg ) !== "string" ) { + + // Inspect recursively + add( arg ); + } + } ); + } )( arguments ); + + if ( memory && !firing ) { + fire(); + } + } + return this; + }, + + // Remove a callback from the list + remove: function() { + jQuery.each( arguments, function( _, arg ) { + var index; + while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) { + list.splice( index, 1 ); + + // Handle firing indexes + if ( index <= firingIndex ) { + firingIndex--; + } + } + } ); + return this; + }, + + // Check if a given callback is in the list. + // If no argument is given, return whether or not list has callbacks attached. + has: function( fn ) { + return fn ? + jQuery.inArray( fn, list ) > -1 : + list.length > 0; + }, + + // Remove all callbacks from the list + empty: function() { + if ( list ) { + list = []; + } + return this; + }, + + // Disable .fire and .add + // Abort any current/pending executions + // Clear all callbacks and values + disable: function() { + locked = queue = []; + list = memory = ""; + return this; + }, + disabled: function() { + return !list; + }, + + // Disable .fire + // Also disable .add unless we have memory (since it would have no effect) + // Abort any pending executions + lock: function() { + locked = queue = []; + if ( !memory && !firing ) { + list = memory = ""; + } + return this; + }, + locked: function() { + return !!locked; + }, + + // Call all callbacks with the given context and arguments + fireWith: function( context, args ) { + if ( !locked ) { + args = args || []; + args = [ context, args.slice ? args.slice() : args ]; + queue.push( args ); + if ( !firing ) { + fire(); + } + } + return this; + }, + + // Call all the callbacks with the given arguments + fire: function() { + self.fireWith( this, arguments ); + return this; + }, + + // To know if the callbacks have already been called at least once + fired: function() { + return !!fired; + } + }; + + return self; +}; + + +function Identity( v ) { + return v; +} +function Thrower( ex ) { + throw ex; +} + +function adoptValue( value, resolve, reject, noValue ) { + var method; + + try { + + // Check for promise aspect first to privilege synchronous behavior + if ( value && isFunction( ( method = value.promise ) ) ) { + method.call( value ).done( resolve ).fail( reject ); + + // Other thenables + } else if ( value && isFunction( ( method = value.then ) ) ) { + method.call( value, resolve, reject ); + + // Other non-thenables + } else { + + // Control `resolve` arguments by letting Array#slice cast boolean `noValue` to integer: + // * false: [ value ].slice( 0 ) => resolve( value ) + // * true: [ value ].slice( 1 ) => resolve() + resolve.apply( undefined, [ value ].slice( noValue ) ); + } + + // For Promises/A+, convert exceptions into rejections + // Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in + // Deferred#then to conditionally suppress rejection. + } catch ( value ) { + + // Support: Android 4.0 only + // Strict mode functions invoked without .call/.apply get global-object context + reject.apply( undefined, [ value ] ); + } +} + +jQuery.extend( { + + Deferred: function( func ) { + var tuples = [ + + // action, add listener, callbacks, + // ... .then handlers, argument index, [final state] + [ "notify", "progress", jQuery.Callbacks( "memory" ), + jQuery.Callbacks( "memory" ), 2 ], + [ "resolve", "done", jQuery.Callbacks( "once memory" ), + jQuery.Callbacks( "once memory" ), 0, "resolved" ], + [ "reject", "fail", jQuery.Callbacks( "once memory" ), + jQuery.Callbacks( "once memory" ), 1, "rejected" ] + ], + state = "pending", + promise = { + state: function() { + return state; + }, + always: function() { + deferred.done( arguments ).fail( arguments ); + return this; + }, + "catch": function( fn ) { + return promise.then( null, fn ); + }, + + // Keep pipe for back-compat + pipe: function( /* fnDone, fnFail, fnProgress */ ) { + var fns = arguments; + + return jQuery.Deferred( function( newDefer ) { + jQuery.each( tuples, function( _i, tuple ) { + + // Map tuples (progress, done, fail) to arguments (done, fail, progress) + var fn = isFunction( fns[ tuple[ 4 ] ] ) && fns[ tuple[ 4 ] ]; + + // deferred.progress(function() { bind to newDefer or newDefer.notify }) + // deferred.done(function() { bind to newDefer or newDefer.resolve }) + // deferred.fail(function() { bind to newDefer or newDefer.reject }) + deferred[ tuple[ 1 ] ]( function() { + var returned = fn && fn.apply( this, arguments ); + if ( returned && isFunction( returned.promise ) ) { + returned.promise() + .progress( newDefer.notify ) + .done( newDefer.resolve ) + .fail( newDefer.reject ); + } else { + newDefer[ tuple[ 0 ] + "With" ]( + this, + fn ? [ returned ] : arguments + ); + } + } ); + } ); + fns = null; + } ).promise(); + }, + then: function( onFulfilled, onRejected, onProgress ) { + var maxDepth = 0; + function resolve( depth, deferred, handler, special ) { + return function() { + var that = this, + args = arguments, + mightThrow = function() { + var returned, then; + + // Support: Promises/A+ section 2.3.3.3.3 + // https://promisesaplus.com/#point-59 + // Ignore double-resolution attempts + if ( depth < maxDepth ) { + return; + } + + returned = handler.apply( that, args ); + + // Support: Promises/A+ section 2.3.1 + // https://promisesaplus.com/#point-48 + if ( returned === deferred.promise() ) { + throw new TypeError( "Thenable self-resolution" ); + } + + // Support: Promises/A+ sections 2.3.3.1, 3.5 + // https://promisesaplus.com/#point-54 + // https://promisesaplus.com/#point-75 + // Retrieve `then` only once + then = returned && + + // Support: Promises/A+ section 2.3.4 + // https://promisesaplus.com/#point-64 + // Only check objects and functions for thenability + ( typeof returned === "object" || + typeof returned === "function" ) && + returned.then; + + // Handle a returned thenable + if ( isFunction( then ) ) { + + // Special processors (notify) just wait for resolution + if ( special ) { + then.call( + returned, + resolve( maxDepth, deferred, Identity, special ), + resolve( maxDepth, deferred, Thrower, special ) + ); + + // Normal processors (resolve) also hook into progress + } else { + + // ...and disregard older resolution values + maxDepth++; + + then.call( + returned, + resolve( maxDepth, deferred, Identity, special ), + resolve( maxDepth, deferred, Thrower, special ), + resolve( maxDepth, deferred, Identity, + deferred.notifyWith ) + ); + } + + // Handle all other returned values + } else { + + // Only substitute handlers pass on context + // and multiple values (non-spec behavior) + if ( handler !== Identity ) { + that = undefined; + args = [ returned ]; + } + + // Process the value(s) + // Default process is resolve + ( special || deferred.resolveWith )( that, args ); + } + }, + + // Only normal processors (resolve) catch and reject exceptions + process = special ? + mightThrow : + function() { + try { + mightThrow(); + } catch ( e ) { + + if ( jQuery.Deferred.exceptionHook ) { + jQuery.Deferred.exceptionHook( e, + process.stackTrace ); + } + + // Support: Promises/A+ section 2.3.3.3.4.1 + // https://promisesaplus.com/#point-61 + // Ignore post-resolution exceptions + if ( depth + 1 >= maxDepth ) { + + // Only substitute handlers pass on context + // and multiple values (non-spec behavior) + if ( handler !== Thrower ) { + that = undefined; + args = [ e ]; + } + + deferred.rejectWith( that, args ); + } + } + }; + + // Support: Promises/A+ section 2.3.3.3.1 + // https://promisesaplus.com/#point-57 + // Re-resolve promises immediately to dodge false rejection from + // subsequent errors + if ( depth ) { + process(); + } else { + + // Call an optional hook to record the stack, in case of exception + // since it's otherwise lost when execution goes async + if ( jQuery.Deferred.getStackHook ) { + process.stackTrace = jQuery.Deferred.getStackHook(); + } + window.setTimeout( process ); + } + }; + } + + return jQuery.Deferred( function( newDefer ) { + + // progress_handlers.add( ... ) + tuples[ 0 ][ 3 ].add( + resolve( + 0, + newDefer, + isFunction( onProgress ) ? + onProgress : + Identity, + newDefer.notifyWith + ) + ); + + // fulfilled_handlers.add( ... ) + tuples[ 1 ][ 3 ].add( + resolve( + 0, + newDefer, + isFunction( onFulfilled ) ? + onFulfilled : + Identity + ) + ); + + // rejected_handlers.add( ... ) + tuples[ 2 ][ 3 ].add( + resolve( + 0, + newDefer, + isFunction( onRejected ) ? + onRejected : + Thrower + ) + ); + } ).promise(); + }, + + // Get a promise for this deferred + // If obj is provided, the promise aspect is added to the object + promise: function( obj ) { + return obj != null ? jQuery.extend( obj, promise ) : promise; + } + }, + deferred = {}; + + // Add list-specific methods + jQuery.each( tuples, function( i, tuple ) { + var list = tuple[ 2 ], + stateString = tuple[ 5 ]; + + // promise.progress = list.add + // promise.done = list.add + // promise.fail = list.add + promise[ tuple[ 1 ] ] = list.add; + + // Handle state + if ( stateString ) { + list.add( + function() { + + // state = "resolved" (i.e., fulfilled) + // state = "rejected" + state = stateString; + }, + + // rejected_callbacks.disable + // fulfilled_callbacks.disable + tuples[ 3 - i ][ 2 ].disable, + + // rejected_handlers.disable + // fulfilled_handlers.disable + tuples[ 3 - i ][ 3 ].disable, + + // progress_callbacks.lock + tuples[ 0 ][ 2 ].lock, + + // progress_handlers.lock + tuples[ 0 ][ 3 ].lock + ); + } + + // progress_handlers.fire + // fulfilled_handlers.fire + // rejected_handlers.fire + list.add( tuple[ 3 ].fire ); + + // deferred.notify = function() { deferred.notifyWith(...) } + // deferred.resolve = function() { deferred.resolveWith(...) } + // deferred.reject = function() { deferred.rejectWith(...) } + deferred[ tuple[ 0 ] ] = function() { + deferred[ tuple[ 0 ] + "With" ]( this === deferred ? undefined : this, arguments ); + return this; + }; + + // deferred.notifyWith = list.fireWith + // deferred.resolveWith = list.fireWith + // deferred.rejectWith = list.fireWith + deferred[ tuple[ 0 ] + "With" ] = list.fireWith; + } ); + + // Make the deferred a promise + promise.promise( deferred ); + + // Call given func if any + if ( func ) { + func.call( deferred, deferred ); + } + + // All done! + return deferred; + }, + + // Deferred helper + when: function( singleValue ) { + var + + // count of uncompleted subordinates + remaining = arguments.length, + + // count of unprocessed arguments + i = remaining, + + // subordinate fulfillment data + resolveContexts = Array( i ), + resolveValues = slice.call( arguments ), + + // the primary Deferred + primary = jQuery.Deferred(), + + // subordinate callback factory + updateFunc = function( i ) { + return function( value ) { + resolveContexts[ i ] = this; + resolveValues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value; + if ( !( --remaining ) ) { + primary.resolveWith( resolveContexts, resolveValues ); + } + }; + }; + + // Single- and empty arguments are adopted like Promise.resolve + if ( remaining <= 1 ) { + adoptValue( singleValue, primary.done( updateFunc( i ) ).resolve, primary.reject, + !remaining ); + + // Use .then() to unwrap secondary thenables (cf. gh-3000) + if ( primary.state() === "pending" || + isFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) { + + return primary.then(); + } + } + + // Multiple arguments are aggregated like Promise.all array elements + while ( i-- ) { + adoptValue( resolveValues[ i ], updateFunc( i ), primary.reject ); + } + + return primary.promise(); + } +} ); + + +// These usually indicate a programmer mistake during development, +// warn about them ASAP rather than swallowing them by default. +var rerrorNames = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/; + +jQuery.Deferred.exceptionHook = function( error, stack ) { + + // Support: IE 8 - 9 only + // Console exists when dev tools are open, which can happen at any time + if ( window.console && window.console.warn && error && rerrorNames.test( error.name ) ) { + window.console.warn( "jQuery.Deferred exception: " + error.message, error.stack, stack ); + } +}; + + + + +jQuery.readyException = function( error ) { + window.setTimeout( function() { + throw error; + } ); +}; + + + + +// The deferred used on DOM ready +var readyList = jQuery.Deferred(); + +jQuery.fn.ready = function( fn ) { + + readyList + .then( fn ) + + // Wrap jQuery.readyException in a function so that the lookup + // happens at the time of error handling instead of callback + // registration. + .catch( function( error ) { + jQuery.readyException( error ); + } ); + + return this; +}; + +jQuery.extend( { + + // Is the DOM ready to be used? Set to true once it occurs. + isReady: false, + + // A counter to track how many items to wait for before + // the ready event fires. See #6781 + readyWait: 1, + + // Handle when the DOM is ready + ready: function( wait ) { + + // Abort if there are pending holds or we're already ready + if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) { + return; + } + + // Remember that the DOM is ready + jQuery.isReady = true; + + // If a normal DOM Ready event fired, decrement, and wait if need be + if ( wait !== true && --jQuery.readyWait > 0 ) { + return; + } + + // If there are functions bound, to execute + readyList.resolveWith( document, [ jQuery ] ); + } +} ); + +jQuery.ready.then = readyList.then; + +// The ready event handler and self cleanup method +function completed() { + document.removeEventListener( "DOMContentLoaded", completed ); + window.removeEventListener( "load", completed ); + jQuery.ready(); +} + +// Catch cases where $(document).ready() is called +// after the browser event has already occurred. +// Support: IE <=9 - 10 only +// Older IE sometimes signals "interactive" too soon +if ( document.readyState === "complete" || + ( document.readyState !== "loading" && !document.documentElement.doScroll ) ) { + + // Handle it asynchronously to allow scripts the opportunity to delay ready + window.setTimeout( jQuery.ready ); + +} else { + + // Use the handy event callback + document.addEventListener( "DOMContentLoaded", completed ); + + // A fallback to window.onload, that will always work + window.addEventListener( "load", completed ); +} + + + + +// Multifunctional method to get and set values of a collection +// The value/s can optionally be executed if it's a function +var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { + var i = 0, + len = elems.length, + bulk = key == null; + + // Sets many values + if ( toType( key ) === "object" ) { + chainable = true; + for ( i in key ) { + access( elems, fn, i, key[ i ], true, emptyGet, raw ); + } + + // Sets one value + } else if ( value !== undefined ) { + chainable = true; + + if ( !isFunction( value ) ) { + raw = true; + } + + if ( bulk ) { + + // Bulk operations run against the entire set + if ( raw ) { + fn.call( elems, value ); + fn = null; + + // ...except when executing function values + } else { + bulk = fn; + fn = function( elem, _key, value ) { + return bulk.call( jQuery( elem ), value ); + }; + } + } + + if ( fn ) { + for ( ; i < len; i++ ) { + fn( + elems[ i ], key, raw ? + value : + value.call( elems[ i ], i, fn( elems[ i ], key ) ) + ); + } + } + } + + if ( chainable ) { + return elems; + } + + // Gets + if ( bulk ) { + return fn.call( elems ); + } + + return len ? fn( elems[ 0 ], key ) : emptyGet; +}; + + +// Matches dashed string for camelizing +var rmsPrefix = /^-ms-/, + rdashAlpha = /-([a-z])/g; + +// Used by camelCase as callback to replace() +function fcamelCase( _all, letter ) { + return letter.toUpperCase(); +} + +// Convert dashed to camelCase; used by the css and data modules +// Support: IE <=9 - 11, Edge 12 - 15 +// Microsoft forgot to hump their vendor prefix (#9572) +function camelCase( string ) { + return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase ); +} +var acceptData = function( owner ) { + + // Accepts only: + // - Node + // - Node.ELEMENT_NODE + // - Node.DOCUMENT_NODE + // - Object + // - Any + return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType ); +}; + + + + +function Data() { + this.expando = jQuery.expando + Data.uid++; +} + +Data.uid = 1; + +Data.prototype = { + + cache: function( owner ) { + + // Check if the owner object already has a cache + var value = owner[ this.expando ]; + + // If not, create one + if ( !value ) { + value = {}; + + // We can accept data for non-element nodes in modern browsers, + // but we should not, see #8335. + // Always return an empty object. + if ( acceptData( owner ) ) { + + // If it is a node unlikely to be stringify-ed or looped over + // use plain assignment + if ( owner.nodeType ) { + owner[ this.expando ] = value; + + // Otherwise secure it in a non-enumerable property + // configurable must be true to allow the property to be + // deleted when data is removed + } else { + Object.defineProperty( owner, this.expando, { + value: value, + configurable: true + } ); + } + } + } + + return value; + }, + set: function( owner, data, value ) { + var prop, + cache = this.cache( owner ); + + // Handle: [ owner, key, value ] args + // Always use camelCase key (gh-2257) + if ( typeof data === "string" ) { + cache[ camelCase( data ) ] = value; + + // Handle: [ owner, { properties } ] args + } else { + + // Copy the properties one-by-one to the cache object + for ( prop in data ) { + cache[ camelCase( prop ) ] = data[ prop ]; + } + } + return cache; + }, + get: function( owner, key ) { + return key === undefined ? + this.cache( owner ) : + + // Always use camelCase key (gh-2257) + owner[ this.expando ] && owner[ this.expando ][ camelCase( key ) ]; + }, + access: function( owner, key, value ) { + + // In cases where either: + // + // 1. No key was specified + // 2. A string key was specified, but no value provided + // + // Take the "read" path and allow the get method to determine + // which value to return, respectively either: + // + // 1. The entire cache object + // 2. The data stored at the key + // + if ( key === undefined || + ( ( key && typeof key === "string" ) && value === undefined ) ) { + + return this.get( owner, key ); + } + + // When the key is not a string, or both a key and value + // are specified, set or extend (existing objects) with either: + // + // 1. An object of properties + // 2. A key and value + // + this.set( owner, key, value ); + + // Since the "set" path can have two possible entry points + // return the expected data based on which path was taken[*] + return value !== undefined ? value : key; + }, + remove: function( owner, key ) { + var i, + cache = owner[ this.expando ]; + + if ( cache === undefined ) { + return; + } + + if ( key !== undefined ) { + + // Support array or space separated string of keys + if ( Array.isArray( key ) ) { + + // If key is an array of keys... + // We always set camelCase keys, so remove that. + key = key.map( camelCase ); + } else { + key = camelCase( key ); + + // If a key with the spaces exists, use it. + // Otherwise, create an array by matching non-whitespace + key = key in cache ? + [ key ] : + ( key.match( rnothtmlwhite ) || [] ); + } + + i = key.length; + + while ( i-- ) { + delete cache[ key[ i ] ]; + } + } + + // Remove the expando if there's no more data + if ( key === undefined || jQuery.isEmptyObject( cache ) ) { + + // Support: Chrome <=35 - 45 + // Webkit & Blink performance suffers when deleting properties + // from DOM nodes, so set to undefined instead + // https://bugs.chromium.org/p/chromium/issues/detail?id=378607 (bug restricted) + if ( owner.nodeType ) { + owner[ this.expando ] = undefined; + } else { + delete owner[ this.expando ]; + } + } + }, + hasData: function( owner ) { + var cache = owner[ this.expando ]; + return cache !== undefined && !jQuery.isEmptyObject( cache ); + } +}; +var dataPriv = new Data(); + +var dataUser = new Data(); + + + +// Implementation Summary +// +// 1. Enforce API surface and semantic compatibility with 1.9.x branch +// 2. Improve the module's maintainability by reducing the storage +// paths to a single mechanism. +// 3. Use the same single mechanism to support "private" and "user" data. +// 4. _Never_ expose "private" data to user code (TODO: Drop _data, _removeData) +// 5. Avoid exposing implementation details on user objects (eg. expando properties) +// 6. Provide a clear path for implementation upgrade to WeakMap in 2014 + +var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, + rmultiDash = /[A-Z]/g; + +function getData( data ) { + if ( data === "true" ) { + return true; + } + + if ( data === "false" ) { + return false; + } + + if ( data === "null" ) { + return null; + } + + // Only convert to a number if it doesn't change the string + if ( data === +data + "" ) { + return +data; + } + + if ( rbrace.test( data ) ) { + return JSON.parse( data ); + } + + return data; +} + +function dataAttr( elem, key, data ) { + var name; + + // If nothing was found internally, try to fetch any + // data from the HTML5 data-* attribute + if ( data === undefined && elem.nodeType === 1 ) { + name = "data-" + key.replace( rmultiDash, "-$&" ).toLowerCase(); + data = elem.getAttribute( name ); + + if ( typeof data === "string" ) { + try { + data = getData( data ); + } catch ( e ) {} + + // Make sure we set the data so it isn't changed later + dataUser.set( elem, key, data ); + } else { + data = undefined; + } + } + return data; +} + +jQuery.extend( { + hasData: function( elem ) { + return dataUser.hasData( elem ) || dataPriv.hasData( elem ); + }, + + data: function( elem, name, data ) { + return dataUser.access( elem, name, data ); + }, + + removeData: function( elem, name ) { + dataUser.remove( elem, name ); + }, + + // TODO: Now that all calls to _data and _removeData have been replaced + // with direct calls to dataPriv methods, these can be deprecated. + _data: function( elem, name, data ) { + return dataPriv.access( elem, name, data ); + }, + + _removeData: function( elem, name ) { + dataPriv.remove( elem, name ); + } +} ); + +jQuery.fn.extend( { + data: function( key, value ) { + var i, name, data, + elem = this[ 0 ], + attrs = elem && elem.attributes; + + // Gets all values + if ( key === undefined ) { + if ( this.length ) { + data = dataUser.get( elem ); + + if ( elem.nodeType === 1 && !dataPriv.get( elem, "hasDataAttrs" ) ) { + i = attrs.length; + while ( i-- ) { + + // Support: IE 11 only + // The attrs elements can be null (#14894) + if ( attrs[ i ] ) { + name = attrs[ i ].name; + if ( name.indexOf( "data-" ) === 0 ) { + name = camelCase( name.slice( 5 ) ); + dataAttr( elem, name, data[ name ] ); + } + } + } + dataPriv.set( elem, "hasDataAttrs", true ); + } + } + + return data; + } + + // Sets multiple values + if ( typeof key === "object" ) { + return this.each( function() { + dataUser.set( this, key ); + } ); + } + + return access( this, function( value ) { + var data; + + // The calling jQuery object (element matches) is not empty + // (and therefore has an element appears at this[ 0 ]) and the + // `value` parameter was not undefined. An empty jQuery object + // will result in `undefined` for elem = this[ 0 ] which will + // throw an exception if an attempt to read a data cache is made. + if ( elem && value === undefined ) { + + // Attempt to get data from the cache + // The key will always be camelCased in Data + data = dataUser.get( elem, key ); + if ( data !== undefined ) { + return data; + } + + // Attempt to "discover" the data in + // HTML5 custom data-* attrs + data = dataAttr( elem, key ); + if ( data !== undefined ) { + return data; + } + + // We tried really hard, but the data doesn't exist. + return; + } + + // Set the data... + this.each( function() { + + // We always store the camelCased key + dataUser.set( this, key, value ); + } ); + }, null, value, arguments.length > 1, null, true ); + }, + + removeData: function( key ) { + return this.each( function() { + dataUser.remove( this, key ); + } ); + } +} ); + + +jQuery.extend( { + queue: function( elem, type, data ) { + var queue; + + if ( elem ) { + type = ( type || "fx" ) + "queue"; + queue = dataPriv.get( elem, type ); + + // Speed up dequeue by getting out quickly if this is just a lookup + if ( data ) { + if ( !queue || Array.isArray( data ) ) { + queue = dataPriv.access( elem, type, jQuery.makeArray( data ) ); + } else { + queue.push( data ); + } + } + return queue || []; + } + }, + + dequeue: function( elem, type ) { + type = type || "fx"; + + var queue = jQuery.queue( elem, type ), + startLength = queue.length, + fn = queue.shift(), + hooks = jQuery._queueHooks( elem, type ), + next = function() { + jQuery.dequeue( elem, type ); + }; + + // If the fx queue is dequeued, always remove the progress sentinel + if ( fn === "inprogress" ) { + fn = queue.shift(); + startLength--; + } + + if ( fn ) { + + // Add a progress sentinel to prevent the fx queue from being + // automatically dequeued + if ( type === "fx" ) { + queue.unshift( "inprogress" ); + } + + // Clear up the last queue stop function + delete hooks.stop; + fn.call( elem, next, hooks ); + } + + if ( !startLength && hooks ) { + hooks.empty.fire(); + } + }, + + // Not public - generate a queueHooks object, or return the current one + _queueHooks: function( elem, type ) { + var key = type + "queueHooks"; + return dataPriv.get( elem, key ) || dataPriv.access( elem, key, { + empty: jQuery.Callbacks( "once memory" ).add( function() { + dataPriv.remove( elem, [ type + "queue", key ] ); + } ) + } ); + } +} ); + +jQuery.fn.extend( { + queue: function( type, data ) { + var setter = 2; + + if ( typeof type !== "string" ) { + data = type; + type = "fx"; + setter--; + } + + if ( arguments.length < setter ) { + return jQuery.queue( this[ 0 ], type ); + } + + return data === undefined ? + this : + this.each( function() { + var queue = jQuery.queue( this, type, data ); + + // Ensure a hooks for this queue + jQuery._queueHooks( this, type ); + + if ( type === "fx" && queue[ 0 ] !== "inprogress" ) { + jQuery.dequeue( this, type ); + } + } ); + }, + dequeue: function( type ) { + return this.each( function() { + jQuery.dequeue( this, type ); + } ); + }, + clearQueue: function( type ) { + return this.queue( type || "fx", [] ); + }, + + // Get a promise resolved when queues of a certain type + // are emptied (fx is the type by default) + promise: function( type, obj ) { + var tmp, + count = 1, + defer = jQuery.Deferred(), + elements = this, + i = this.length, + resolve = function() { + if ( !( --count ) ) { + defer.resolveWith( elements, [ elements ] ); + } + }; + + if ( typeof type !== "string" ) { + obj = type; + type = undefined; + } + type = type || "fx"; + + while ( i-- ) { + tmp = dataPriv.get( elements[ i ], type + "queueHooks" ); + if ( tmp && tmp.empty ) { + count++; + tmp.empty.add( resolve ); + } + } + resolve(); + return defer.promise( obj ); + } +} ); +var pnum = ( /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/ ).source; + +var rcssNum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" ); + + +var cssExpand = [ "Top", "Right", "Bottom", "Left" ]; + +var documentElement = document.documentElement; + + + + var isAttached = function( elem ) { + return jQuery.contains( elem.ownerDocument, elem ); + }, + composed = { composed: true }; + + // Support: IE 9 - 11+, Edge 12 - 18+, iOS 10.0 - 10.2 only + // Check attachment across shadow DOM boundaries when possible (gh-3504) + // Support: iOS 10.0-10.2 only + // Early iOS 10 versions support `attachShadow` but not `getRootNode`, + // leading to errors. We need to check for `getRootNode`. + if ( documentElement.getRootNode ) { + isAttached = function( elem ) { + return jQuery.contains( elem.ownerDocument, elem ) || + elem.getRootNode( composed ) === elem.ownerDocument; + }; + } +var isHiddenWithinTree = function( elem, el ) { + + // isHiddenWithinTree might be called from jQuery#filter function; + // in that case, element will be second argument + elem = el || elem; + + // Inline style trumps all + return elem.style.display === "none" || + elem.style.display === "" && + + // Otherwise, check computed style + // Support: Firefox <=43 - 45 + // Disconnected elements can have computed display: none, so first confirm that elem is + // in the document. + isAttached( elem ) && + + jQuery.css( elem, "display" ) === "none"; + }; + + + +function adjustCSS( elem, prop, valueParts, tween ) { + var adjusted, scale, + maxIterations = 20, + currentValue = tween ? + function() { + return tween.cur(); + } : + function() { + return jQuery.css( elem, prop, "" ); + }, + initial = currentValue(), + unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ), + + // Starting value computation is required for potential unit mismatches + initialInUnit = elem.nodeType && + ( jQuery.cssNumber[ prop ] || unit !== "px" && +initial ) && + rcssNum.exec( jQuery.css( elem, prop ) ); + + if ( initialInUnit && initialInUnit[ 3 ] !== unit ) { + + // Support: Firefox <=54 + // Halve the iteration target value to prevent interference from CSS upper bounds (gh-2144) + initial = initial / 2; + + // Trust units reported by jQuery.css + unit = unit || initialInUnit[ 3 ]; + + // Iteratively approximate from a nonzero starting point + initialInUnit = +initial || 1; + + while ( maxIterations-- ) { + + // Evaluate and update our best guess (doubling guesses that zero out). + // Finish if the scale equals or crosses 1 (making the old*new product non-positive). + jQuery.style( elem, prop, initialInUnit + unit ); + if ( ( 1 - scale ) * ( 1 - ( scale = currentValue() / initial || 0.5 ) ) <= 0 ) { + maxIterations = 0; + } + initialInUnit = initialInUnit / scale; + + } + + initialInUnit = initialInUnit * 2; + jQuery.style( elem, prop, initialInUnit + unit ); + + // Make sure we update the tween properties later on + valueParts = valueParts || []; + } + + if ( valueParts ) { + initialInUnit = +initialInUnit || +initial || 0; + + // Apply relative offset (+=/-=) if specified + adjusted = valueParts[ 1 ] ? + initialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] : + +valueParts[ 2 ]; + if ( tween ) { + tween.unit = unit; + tween.start = initialInUnit; + tween.end = adjusted; + } + } + return adjusted; +} + + +var defaultDisplayMap = {}; + +function getDefaultDisplay( elem ) { + var temp, + doc = elem.ownerDocument, + nodeName = elem.nodeName, + display = defaultDisplayMap[ nodeName ]; + + if ( display ) { + return display; + } + + temp = doc.body.appendChild( doc.createElement( nodeName ) ); + display = jQuery.css( temp, "display" ); + + temp.parentNode.removeChild( temp ); + + if ( display === "none" ) { + display = "block"; + } + defaultDisplayMap[ nodeName ] = display; + + return display; +} + +function showHide( elements, show ) { + var display, elem, + values = [], + index = 0, + length = elements.length; + + // Determine new display value for elements that need to change + for ( ; index < length; index++ ) { + elem = elements[ index ]; + if ( !elem.style ) { + continue; + } + + display = elem.style.display; + if ( show ) { + + // Since we force visibility upon cascade-hidden elements, an immediate (and slow) + // check is required in this first loop unless we have a nonempty display value (either + // inline or about-to-be-restored) + if ( display === "none" ) { + values[ index ] = dataPriv.get( elem, "display" ) || null; + if ( !values[ index ] ) { + elem.style.display = ""; + } + } + if ( elem.style.display === "" && isHiddenWithinTree( elem ) ) { + values[ index ] = getDefaultDisplay( elem ); + } + } else { + if ( display !== "none" ) { + values[ index ] = "none"; + + // Remember what we're overwriting + dataPriv.set( elem, "display", display ); + } + } + } + + // Set the display of the elements in a second loop to avoid constant reflow + for ( index = 0; index < length; index++ ) { + if ( values[ index ] != null ) { + elements[ index ].style.display = values[ index ]; + } + } + + return elements; +} + +jQuery.fn.extend( { + show: function() { + return showHide( this, true ); + }, + hide: function() { + return showHide( this ); + }, + toggle: function( state ) { + if ( typeof state === "boolean" ) { + return state ? this.show() : this.hide(); + } + + return this.each( function() { + if ( isHiddenWithinTree( this ) ) { + jQuery( this ).show(); + } else { + jQuery( this ).hide(); + } + } ); + } +} ); +var rcheckableType = ( /^(?:checkbox|radio)$/i ); + +var rtagName = ( /<([a-z][^\/\0>\x20\t\r\n\f]*)/i ); + +var rscriptType = ( /^$|^module$|\/(?:java|ecma)script/i ); + + + +( function() { + var fragment = document.createDocumentFragment(), + div = fragment.appendChild( document.createElement( "div" ) ), + input = document.createElement( "input" ); + + // Support: Android 4.0 - 4.3 only + // Check state lost if the name is set (#11217) + // Support: Windows Web Apps (WWA) + // `name` and `type` must use .setAttribute for WWA (#14901) + input.setAttribute( "type", "radio" ); + input.setAttribute( "checked", "checked" ); + input.setAttribute( "name", "t" ); + + div.appendChild( input ); + + // Support: Android <=4.1 only + // Older WebKit doesn't clone checked state correctly in fragments + support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked; + + // Support: IE <=11 only + // Make sure textarea (and checkbox) defaultValue is properly cloned + div.innerHTML = ""; + support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue; + + // Support: IE <=9 only + // IE <=9 replaces "; + support.option = !!div.lastChild; +} )(); + + +// We have to close these tags to support XHTML (#13200) +var wrapMap = { + + // XHTML parsers do not magically insert elements in the + // same way that tag soup parsers do. So we cannot shorten + // this by omitting or other required elements. + thead: [ 1, "", "
    " ], + col: [ 2, "", "
    " ], + tr: [ 2, "", "
    " ], + td: [ 3, "", "
    " ], + + _default: [ 0, "", "" ] +}; + +wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; +wrapMap.th = wrapMap.td; + +// Support: IE <=9 only +if ( !support.option ) { + wrapMap.optgroup = wrapMap.option = [ 1, "" ]; +} + + +function getAll( context, tag ) { + + // Support: IE <=9 - 11 only + // Use typeof to avoid zero-argument method invocation on host objects (#15151) + var ret; + + if ( typeof context.getElementsByTagName !== "undefined" ) { + ret = context.getElementsByTagName( tag || "*" ); + + } else if ( typeof context.querySelectorAll !== "undefined" ) { + ret = context.querySelectorAll( tag || "*" ); + + } else { + ret = []; + } + + if ( tag === undefined || tag && nodeName( context, tag ) ) { + return jQuery.merge( [ context ], ret ); + } + + return ret; +} + + +// Mark scripts as having already been evaluated +function setGlobalEval( elems, refElements ) { + var i = 0, + l = elems.length; + + for ( ; i < l; i++ ) { + dataPriv.set( + elems[ i ], + "globalEval", + !refElements || dataPriv.get( refElements[ i ], "globalEval" ) + ); + } +} + + +var rhtml = /<|&#?\w+;/; + +function buildFragment( elems, context, scripts, selection, ignored ) { + var elem, tmp, tag, wrap, attached, j, + fragment = context.createDocumentFragment(), + nodes = [], + i = 0, + l = elems.length; + + for ( ; i < l; i++ ) { + elem = elems[ i ]; + + if ( elem || elem === 0 ) { + + // Add nodes directly + if ( toType( elem ) === "object" ) { + + // Support: Android <=4.0 only, PhantomJS 1 only + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem ); + + // Convert non-html into a text node + } else if ( !rhtml.test( elem ) ) { + nodes.push( context.createTextNode( elem ) ); + + // Convert html into DOM nodes + } else { + tmp = tmp || fragment.appendChild( context.createElement( "div" ) ); + + // Deserialize a standard representation + tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase(); + wrap = wrapMap[ tag ] || wrapMap._default; + tmp.innerHTML = wrap[ 1 ] + jQuery.htmlPrefilter( elem ) + wrap[ 2 ]; + + // Descend through wrappers to the right content + j = wrap[ 0 ]; + while ( j-- ) { + tmp = tmp.lastChild; + } + + // Support: Android <=4.0 only, PhantomJS 1 only + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( nodes, tmp.childNodes ); + + // Remember the top-level container + tmp = fragment.firstChild; + + // Ensure the created nodes are orphaned (#12392) + tmp.textContent = ""; + } + } + } + + // Remove wrapper from fragment + fragment.textContent = ""; + + i = 0; + while ( ( elem = nodes[ i++ ] ) ) { + + // Skip elements already in the context collection (trac-4087) + if ( selection && jQuery.inArray( elem, selection ) > -1 ) { + if ( ignored ) { + ignored.push( elem ); + } + continue; + } + + attached = isAttached( elem ); + + // Append to fragment + tmp = getAll( fragment.appendChild( elem ), "script" ); + + // Preserve script evaluation history + if ( attached ) { + setGlobalEval( tmp ); + } + + // Capture executables + if ( scripts ) { + j = 0; + while ( ( elem = tmp[ j++ ] ) ) { + if ( rscriptType.test( elem.type || "" ) ) { + scripts.push( elem ); + } + } + } + } + + return fragment; +} + + +var rtypenamespace = /^([^.]*)(?:\.(.+)|)/; + +function returnTrue() { + return true; +} + +function returnFalse() { + return false; +} + +// Support: IE <=9 - 11+ +// focus() and blur() are asynchronous, except when they are no-op. +// So expect focus to be synchronous when the element is already active, +// and blur to be synchronous when the element is not already active. +// (focus and blur are always synchronous in other supported browsers, +// this just defines when we can count on it). +function expectSync( elem, type ) { + return ( elem === safeActiveElement() ) === ( type === "focus" ); +} + +// Support: IE <=9 only +// Accessing document.activeElement can throw unexpectedly +// https://bugs.jquery.com/ticket/13393 +function safeActiveElement() { + try { + return document.activeElement; + } catch ( err ) { } +} + +function on( elem, types, selector, data, fn, one ) { + var origFn, type; + + // Types can be a map of types/handlers + if ( typeof types === "object" ) { + + // ( types-Object, selector, data ) + if ( typeof selector !== "string" ) { + + // ( types-Object, data ) + data = data || selector; + selector = undefined; + } + for ( type in types ) { + on( elem, type, selector, data, types[ type ], one ); + } + return elem; + } + + if ( data == null && fn == null ) { + + // ( types, fn ) + fn = selector; + data = selector = undefined; + } else if ( fn == null ) { + if ( typeof selector === "string" ) { + + // ( types, selector, fn ) + fn = data; + data = undefined; + } else { + + // ( types, data, fn ) + fn = data; + data = selector; + selector = undefined; + } + } + if ( fn === false ) { + fn = returnFalse; + } else if ( !fn ) { + return elem; + } + + if ( one === 1 ) { + origFn = fn; + fn = function( event ) { + + // Can use an empty set, since event contains the info + jQuery().off( event ); + return origFn.apply( this, arguments ); + }; + + // Use same guid so caller can remove using origFn + fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ ); + } + return elem.each( function() { + jQuery.event.add( this, types, fn, data, selector ); + } ); +} + +/* + * Helper functions for managing events -- not part of the public interface. + * Props to Dean Edwards' addEvent library for many of the ideas. + */ +jQuery.event = { + + global: {}, + + add: function( elem, types, handler, data, selector ) { + + var handleObjIn, eventHandle, tmp, + events, t, handleObj, + special, handlers, type, namespaces, origType, + elemData = dataPriv.get( elem ); + + // Only attach events to objects that accept data + if ( !acceptData( elem ) ) { + return; + } + + // Caller can pass in an object of custom data in lieu of the handler + if ( handler.handler ) { + handleObjIn = handler; + handler = handleObjIn.handler; + selector = handleObjIn.selector; + } + + // Ensure that invalid selectors throw exceptions at attach time + // Evaluate against documentElement in case elem is a non-element node (e.g., document) + if ( selector ) { + jQuery.find.matchesSelector( documentElement, selector ); + } + + // Make sure that the handler has a unique ID, used to find/remove it later + if ( !handler.guid ) { + handler.guid = jQuery.guid++; + } + + // Init the element's event structure and main handler, if this is the first + if ( !( events = elemData.events ) ) { + events = elemData.events = Object.create( null ); + } + if ( !( eventHandle = elemData.handle ) ) { + eventHandle = elemData.handle = function( e ) { + + // Discard the second event of a jQuery.event.trigger() and + // when an event is called after a page has unloaded + return typeof jQuery !== "undefined" && jQuery.event.triggered !== e.type ? + jQuery.event.dispatch.apply( elem, arguments ) : undefined; + }; + } + + // Handle multiple events separated by a space + types = ( types || "" ).match( rnothtmlwhite ) || [ "" ]; + t = types.length; + while ( t-- ) { + tmp = rtypenamespace.exec( types[ t ] ) || []; + type = origType = tmp[ 1 ]; + namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); + + // There *must* be a type, no attaching namespace-only handlers + if ( !type ) { + continue; + } + + // If event changes its type, use the special event handlers for the changed type + special = jQuery.event.special[ type ] || {}; + + // If selector defined, determine special event api type, otherwise given type + type = ( selector ? special.delegateType : special.bindType ) || type; + + // Update special based on newly reset type + special = jQuery.event.special[ type ] || {}; + + // handleObj is passed to all event handlers + handleObj = jQuery.extend( { + type: type, + origType: origType, + data: data, + handler: handler, + guid: handler.guid, + selector: selector, + needsContext: selector && jQuery.expr.match.needsContext.test( selector ), + namespace: namespaces.join( "." ) + }, handleObjIn ); + + // Init the event handler queue if we're the first + if ( !( handlers = events[ type ] ) ) { + handlers = events[ type ] = []; + handlers.delegateCount = 0; + + // Only use addEventListener if the special events handler returns false + if ( !special.setup || + special.setup.call( elem, data, namespaces, eventHandle ) === false ) { + + if ( elem.addEventListener ) { + elem.addEventListener( type, eventHandle ); + } + } + } + + if ( special.add ) { + special.add.call( elem, handleObj ); + + if ( !handleObj.handler.guid ) { + handleObj.handler.guid = handler.guid; + } + } + + // Add to the element's handler list, delegates in front + if ( selector ) { + handlers.splice( handlers.delegateCount++, 0, handleObj ); + } else { + handlers.push( handleObj ); + } + + // Keep track of which events have ever been used, for event optimization + jQuery.event.global[ type ] = true; + } + + }, + + // Detach an event or set of events from an element + remove: function( elem, types, handler, selector, mappedTypes ) { + + var j, origCount, tmp, + events, t, handleObj, + special, handlers, type, namespaces, origType, + elemData = dataPriv.hasData( elem ) && dataPriv.get( elem ); + + if ( !elemData || !( events = elemData.events ) ) { + return; + } + + // Once for each type.namespace in types; type may be omitted + types = ( types || "" ).match( rnothtmlwhite ) || [ "" ]; + t = types.length; + while ( t-- ) { + tmp = rtypenamespace.exec( types[ t ] ) || []; + type = origType = tmp[ 1 ]; + namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); + + // Unbind all events (on this namespace, if provided) for the element + if ( !type ) { + for ( type in events ) { + jQuery.event.remove( elem, type + types[ t ], handler, selector, true ); + } + continue; + } + + special = jQuery.event.special[ type ] || {}; + type = ( selector ? special.delegateType : special.bindType ) || type; + handlers = events[ type ] || []; + tmp = tmp[ 2 ] && + new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ); + + // Remove matching events + origCount = j = handlers.length; + while ( j-- ) { + handleObj = handlers[ j ]; + + if ( ( mappedTypes || origType === handleObj.origType ) && + ( !handler || handler.guid === handleObj.guid ) && + ( !tmp || tmp.test( handleObj.namespace ) ) && + ( !selector || selector === handleObj.selector || + selector === "**" && handleObj.selector ) ) { + handlers.splice( j, 1 ); + + if ( handleObj.selector ) { + handlers.delegateCount--; + } + if ( special.remove ) { + special.remove.call( elem, handleObj ); + } + } + } + + // Remove generic event handler if we removed something and no more handlers exist + // (avoids potential for endless recursion during removal of special event handlers) + if ( origCount && !handlers.length ) { + if ( !special.teardown || + special.teardown.call( elem, namespaces, elemData.handle ) === false ) { + + jQuery.removeEvent( elem, type, elemData.handle ); + } + + delete events[ type ]; + } + } + + // Remove data and the expando if it's no longer used + if ( jQuery.isEmptyObject( events ) ) { + dataPriv.remove( elem, "handle events" ); + } + }, + + dispatch: function( nativeEvent ) { + + var i, j, ret, matched, handleObj, handlerQueue, + args = new Array( arguments.length ), + + // Make a writable jQuery.Event from the native event object + event = jQuery.event.fix( nativeEvent ), + + handlers = ( + dataPriv.get( this, "events" ) || Object.create( null ) + )[ event.type ] || [], + special = jQuery.event.special[ event.type ] || {}; + + // Use the fix-ed jQuery.Event rather than the (read-only) native event + args[ 0 ] = event; + + for ( i = 1; i < arguments.length; i++ ) { + args[ i ] = arguments[ i ]; + } + + event.delegateTarget = this; + + // Call the preDispatch hook for the mapped type, and let it bail if desired + if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) { + return; + } + + // Determine handlers + handlerQueue = jQuery.event.handlers.call( this, event, handlers ); + + // Run delegates first; they may want to stop propagation beneath us + i = 0; + while ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) { + event.currentTarget = matched.elem; + + j = 0; + while ( ( handleObj = matched.handlers[ j++ ] ) && + !event.isImmediatePropagationStopped() ) { + + // If the event is namespaced, then each handler is only invoked if it is + // specially universal or its namespaces are a superset of the event's. + if ( !event.rnamespace || handleObj.namespace === false || + event.rnamespace.test( handleObj.namespace ) ) { + + event.handleObj = handleObj; + event.data = handleObj.data; + + ret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle || + handleObj.handler ).apply( matched.elem, args ); + + if ( ret !== undefined ) { + if ( ( event.result = ret ) === false ) { + event.preventDefault(); + event.stopPropagation(); + } + } + } + } + } + + // Call the postDispatch hook for the mapped type + if ( special.postDispatch ) { + special.postDispatch.call( this, event ); + } + + return event.result; + }, + + handlers: function( event, handlers ) { + var i, handleObj, sel, matchedHandlers, matchedSelectors, + handlerQueue = [], + delegateCount = handlers.delegateCount, + cur = event.target; + + // Find delegate handlers + if ( delegateCount && + + // Support: IE <=9 + // Black-hole SVG instance trees (trac-13180) + cur.nodeType && + + // Support: Firefox <=42 + // Suppress spec-violating clicks indicating a non-primary pointer button (trac-3861) + // https://www.w3.org/TR/DOM-Level-3-Events/#event-type-click + // Support: IE 11 only + // ...but not arrow key "clicks" of radio inputs, which can have `button` -1 (gh-2343) + !( event.type === "click" && event.button >= 1 ) ) { + + for ( ; cur !== this; cur = cur.parentNode || this ) { + + // Don't check non-elements (#13208) + // Don't process clicks on disabled elements (#6911, #8165, #11382, #11764) + if ( cur.nodeType === 1 && !( event.type === "click" && cur.disabled === true ) ) { + matchedHandlers = []; + matchedSelectors = {}; + for ( i = 0; i < delegateCount; i++ ) { + handleObj = handlers[ i ]; + + // Don't conflict with Object.prototype properties (#13203) + sel = handleObj.selector + " "; + + if ( matchedSelectors[ sel ] === undefined ) { + matchedSelectors[ sel ] = handleObj.needsContext ? + jQuery( sel, this ).index( cur ) > -1 : + jQuery.find( sel, this, null, [ cur ] ).length; + } + if ( matchedSelectors[ sel ] ) { + matchedHandlers.push( handleObj ); + } + } + if ( matchedHandlers.length ) { + handlerQueue.push( { elem: cur, handlers: matchedHandlers } ); + } + } + } + } + + // Add the remaining (directly-bound) handlers + cur = this; + if ( delegateCount < handlers.length ) { + handlerQueue.push( { elem: cur, handlers: handlers.slice( delegateCount ) } ); + } + + return handlerQueue; + }, + + addProp: function( name, hook ) { + Object.defineProperty( jQuery.Event.prototype, name, { + enumerable: true, + configurable: true, + + get: isFunction( hook ) ? + function() { + if ( this.originalEvent ) { + return hook( this.originalEvent ); + } + } : + function() { + if ( this.originalEvent ) { + return this.originalEvent[ name ]; + } + }, + + set: function( value ) { + Object.defineProperty( this, name, { + enumerable: true, + configurable: true, + writable: true, + value: value + } ); + } + } ); + }, + + fix: function( originalEvent ) { + return originalEvent[ jQuery.expando ] ? + originalEvent : + new jQuery.Event( originalEvent ); + }, + + special: { + load: { + + // Prevent triggered image.load events from bubbling to window.load + noBubble: true + }, + click: { + + // Utilize native event to ensure correct state for checkable inputs + setup: function( data ) { + + // For mutual compressibility with _default, replace `this` access with a local var. + // `|| data` is dead code meant only to preserve the variable through minification. + var el = this || data; + + // Claim the first handler + if ( rcheckableType.test( el.type ) && + el.click && nodeName( el, "input" ) ) { + + // dataPriv.set( el, "click", ... ) + leverageNative( el, "click", returnTrue ); + } + + // Return false to allow normal processing in the caller + return false; + }, + trigger: function( data ) { + + // For mutual compressibility with _default, replace `this` access with a local var. + // `|| data` is dead code meant only to preserve the variable through minification. + var el = this || data; + + // Force setup before triggering a click + if ( rcheckableType.test( el.type ) && + el.click && nodeName( el, "input" ) ) { + + leverageNative( el, "click" ); + } + + // Return non-false to allow normal event-path propagation + return true; + }, + + // For cross-browser consistency, suppress native .click() on links + // Also prevent it if we're currently inside a leveraged native-event stack + _default: function( event ) { + var target = event.target; + return rcheckableType.test( target.type ) && + target.click && nodeName( target, "input" ) && + dataPriv.get( target, "click" ) || + nodeName( target, "a" ); + } + }, + + beforeunload: { + postDispatch: function( event ) { + + // Support: Firefox 20+ + // Firefox doesn't alert if the returnValue field is not set. + if ( event.result !== undefined && event.originalEvent ) { + event.originalEvent.returnValue = event.result; + } + } + } + } +}; + +// Ensure the presence of an event listener that handles manually-triggered +// synthetic events by interrupting progress until reinvoked in response to +// *native* events that it fires directly, ensuring that state changes have +// already occurred before other listeners are invoked. +function leverageNative( el, type, expectSync ) { + + // Missing expectSync indicates a trigger call, which must force setup through jQuery.event.add + if ( !expectSync ) { + if ( dataPriv.get( el, type ) === undefined ) { + jQuery.event.add( el, type, returnTrue ); + } + return; + } + + // Register the controller as a special universal handler for all event namespaces + dataPriv.set( el, type, false ); + jQuery.event.add( el, type, { + namespace: false, + handler: function( event ) { + var notAsync, result, + saved = dataPriv.get( this, type ); + + if ( ( event.isTrigger & 1 ) && this[ type ] ) { + + // Interrupt processing of the outer synthetic .trigger()ed event + // Saved data should be false in such cases, but might be a leftover capture object + // from an async native handler (gh-4350) + if ( !saved.length ) { + + // Store arguments for use when handling the inner native event + // There will always be at least one argument (an event object), so this array + // will not be confused with a leftover capture object. + saved = slice.call( arguments ); + dataPriv.set( this, type, saved ); + + // Trigger the native event and capture its result + // Support: IE <=9 - 11+ + // focus() and blur() are asynchronous + notAsync = expectSync( this, type ); + this[ type ](); + result = dataPriv.get( this, type ); + if ( saved !== result || notAsync ) { + dataPriv.set( this, type, false ); + } else { + result = {}; + } + if ( saved !== result ) { + + // Cancel the outer synthetic event + event.stopImmediatePropagation(); + event.preventDefault(); + + // Support: Chrome 86+ + // In Chrome, if an element having a focusout handler is blurred by + // clicking outside of it, it invokes the handler synchronously. If + // that handler calls `.remove()` on the element, the data is cleared, + // leaving `result` undefined. We need to guard against this. + return result && result.value; + } + + // If this is an inner synthetic event for an event with a bubbling surrogate + // (focus or blur), assume that the surrogate already propagated from triggering the + // native event and prevent that from happening again here. + // This technically gets the ordering wrong w.r.t. to `.trigger()` (in which the + // bubbling surrogate propagates *after* the non-bubbling base), but that seems + // less bad than duplication. + } else if ( ( jQuery.event.special[ type ] || {} ).delegateType ) { + event.stopPropagation(); + } + + // If this is a native event triggered above, everything is now in order + // Fire an inner synthetic event with the original arguments + } else if ( saved.length ) { + + // ...and capture the result + dataPriv.set( this, type, { + value: jQuery.event.trigger( + + // Support: IE <=9 - 11+ + // Extend with the prototype to reset the above stopImmediatePropagation() + jQuery.extend( saved[ 0 ], jQuery.Event.prototype ), + saved.slice( 1 ), + this + ) + } ); + + // Abort handling of the native event + event.stopImmediatePropagation(); + } + } + } ); +} + +jQuery.removeEvent = function( elem, type, handle ) { + + // This "if" is needed for plain objects + if ( elem.removeEventListener ) { + elem.removeEventListener( type, handle ); + } +}; + +jQuery.Event = function( src, props ) { + + // Allow instantiation without the 'new' keyword + if ( !( this instanceof jQuery.Event ) ) { + return new jQuery.Event( src, props ); + } + + // Event object + if ( src && src.type ) { + this.originalEvent = src; + this.type = src.type; + + // Events bubbling up the document may have been marked as prevented + // by a handler lower down the tree; reflect the correct value. + this.isDefaultPrevented = src.defaultPrevented || + src.defaultPrevented === undefined && + + // Support: Android <=2.3 only + src.returnValue === false ? + returnTrue : + returnFalse; + + // Create target properties + // Support: Safari <=6 - 7 only + // Target should not be a text node (#504, #13143) + this.target = ( src.target && src.target.nodeType === 3 ) ? + src.target.parentNode : + src.target; + + this.currentTarget = src.currentTarget; + this.relatedTarget = src.relatedTarget; + + // Event type + } else { + this.type = src; + } + + // Put explicitly provided properties onto the event object + if ( props ) { + jQuery.extend( this, props ); + } + + // Create a timestamp if incoming event doesn't have one + this.timeStamp = src && src.timeStamp || Date.now(); + + // Mark it as fixed + this[ jQuery.expando ] = true; +}; + +// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding +// https://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html +jQuery.Event.prototype = { + constructor: jQuery.Event, + isDefaultPrevented: returnFalse, + isPropagationStopped: returnFalse, + isImmediatePropagationStopped: returnFalse, + isSimulated: false, + + preventDefault: function() { + var e = this.originalEvent; + + this.isDefaultPrevented = returnTrue; + + if ( e && !this.isSimulated ) { + e.preventDefault(); + } + }, + stopPropagation: function() { + var e = this.originalEvent; + + this.isPropagationStopped = returnTrue; + + if ( e && !this.isSimulated ) { + e.stopPropagation(); + } + }, + stopImmediatePropagation: function() { + var e = this.originalEvent; + + this.isImmediatePropagationStopped = returnTrue; + + if ( e && !this.isSimulated ) { + e.stopImmediatePropagation(); + } + + this.stopPropagation(); + } +}; + +// Includes all common event props including KeyEvent and MouseEvent specific props +jQuery.each( { + altKey: true, + bubbles: true, + cancelable: true, + changedTouches: true, + ctrlKey: true, + detail: true, + eventPhase: true, + metaKey: true, + pageX: true, + pageY: true, + shiftKey: true, + view: true, + "char": true, + code: true, + charCode: true, + key: true, + keyCode: true, + button: true, + buttons: true, + clientX: true, + clientY: true, + offsetX: true, + offsetY: true, + pointerId: true, + pointerType: true, + screenX: true, + screenY: true, + targetTouches: true, + toElement: true, + touches: true, + which: true +}, jQuery.event.addProp ); + +jQuery.each( { focus: "focusin", blur: "focusout" }, function( type, delegateType ) { + jQuery.event.special[ type ] = { + + // Utilize native event if possible so blur/focus sequence is correct + setup: function() { + + // Claim the first handler + // dataPriv.set( this, "focus", ... ) + // dataPriv.set( this, "blur", ... ) + leverageNative( this, type, expectSync ); + + // Return false to allow normal processing in the caller + return false; + }, + trigger: function() { + + // Force setup before trigger + leverageNative( this, type ); + + // Return non-false to allow normal event-path propagation + return true; + }, + + // Suppress native focus or blur as it's already being fired + // in leverageNative. + _default: function() { + return true; + }, + + delegateType: delegateType + }; +} ); + +// Create mouseenter/leave events using mouseover/out and event-time checks +// so that event delegation works in jQuery. +// Do the same for pointerenter/pointerleave and pointerover/pointerout +// +// Support: Safari 7 only +// Safari sends mouseenter too often; see: +// https://bugs.chromium.org/p/chromium/issues/detail?id=470258 +// for the description of the bug (it existed in older Chrome versions as well). +jQuery.each( { + mouseenter: "mouseover", + mouseleave: "mouseout", + pointerenter: "pointerover", + pointerleave: "pointerout" +}, function( orig, fix ) { + jQuery.event.special[ orig ] = { + delegateType: fix, + bindType: fix, + + handle: function( event ) { + var ret, + target = this, + related = event.relatedTarget, + handleObj = event.handleObj; + + // For mouseenter/leave call the handler if related is outside the target. + // NB: No relatedTarget if the mouse left/entered the browser window + if ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) { + event.type = handleObj.origType; + ret = handleObj.handler.apply( this, arguments ); + event.type = fix; + } + return ret; + } + }; +} ); + +jQuery.fn.extend( { + + on: function( types, selector, data, fn ) { + return on( this, types, selector, data, fn ); + }, + one: function( types, selector, data, fn ) { + return on( this, types, selector, data, fn, 1 ); + }, + off: function( types, selector, fn ) { + var handleObj, type; + if ( types && types.preventDefault && types.handleObj ) { + + // ( event ) dispatched jQuery.Event + handleObj = types.handleObj; + jQuery( types.delegateTarget ).off( + handleObj.namespace ? + handleObj.origType + "." + handleObj.namespace : + handleObj.origType, + handleObj.selector, + handleObj.handler + ); + return this; + } + if ( typeof types === "object" ) { + + // ( types-object [, selector] ) + for ( type in types ) { + this.off( type, selector, types[ type ] ); + } + return this; + } + if ( selector === false || typeof selector === "function" ) { + + // ( types [, fn] ) + fn = selector; + selector = undefined; + } + if ( fn === false ) { + fn = returnFalse; + } + return this.each( function() { + jQuery.event.remove( this, types, fn, selector ); + } ); + } +} ); + + +var + + // Support: IE <=10 - 11, Edge 12 - 13 only + // In IE/Edge using regex groups here causes severe slowdowns. + // See https://connect.microsoft.com/IE/feedback/details/1736512/ + rnoInnerhtml = /\s*$/g; + +// Prefer a tbody over its parent table for containing new rows +function manipulationTarget( elem, content ) { + if ( nodeName( elem, "table" ) && + nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ) { + + return jQuery( elem ).children( "tbody" )[ 0 ] || elem; + } + + return elem; +} + +// Replace/restore the type attribute of script elements for safe DOM manipulation +function disableScript( elem ) { + elem.type = ( elem.getAttribute( "type" ) !== null ) + "/" + elem.type; + return elem; +} +function restoreScript( elem ) { + if ( ( elem.type || "" ).slice( 0, 5 ) === "true/" ) { + elem.type = elem.type.slice( 5 ); + } else { + elem.removeAttribute( "type" ); + } + + return elem; +} + +function cloneCopyEvent( src, dest ) { + var i, l, type, pdataOld, udataOld, udataCur, events; + + if ( dest.nodeType !== 1 ) { + return; + } + + // 1. Copy private data: events, handlers, etc. + if ( dataPriv.hasData( src ) ) { + pdataOld = dataPriv.get( src ); + events = pdataOld.events; + + if ( events ) { + dataPriv.remove( dest, "handle events" ); + + for ( type in events ) { + for ( i = 0, l = events[ type ].length; i < l; i++ ) { + jQuery.event.add( dest, type, events[ type ][ i ] ); + } + } + } + } + + // 2. Copy user data + if ( dataUser.hasData( src ) ) { + udataOld = dataUser.access( src ); + udataCur = jQuery.extend( {}, udataOld ); + + dataUser.set( dest, udataCur ); + } +} + +// Fix IE bugs, see support tests +function fixInput( src, dest ) { + var nodeName = dest.nodeName.toLowerCase(); + + // Fails to persist the checked state of a cloned checkbox or radio button. + if ( nodeName === "input" && rcheckableType.test( src.type ) ) { + dest.checked = src.checked; + + // Fails to return the selected option to the default selected state when cloning options + } else if ( nodeName === "input" || nodeName === "textarea" ) { + dest.defaultValue = src.defaultValue; + } +} + +function domManip( collection, args, callback, ignored ) { + + // Flatten any nested arrays + args = flat( args ); + + var fragment, first, scripts, hasScripts, node, doc, + i = 0, + l = collection.length, + iNoClone = l - 1, + value = args[ 0 ], + valueIsFunction = isFunction( value ); + + // We can't cloneNode fragments that contain checked, in WebKit + if ( valueIsFunction || + ( l > 1 && typeof value === "string" && + !support.checkClone && rchecked.test( value ) ) ) { + return collection.each( function( index ) { + var self = collection.eq( index ); + if ( valueIsFunction ) { + args[ 0 ] = value.call( this, index, self.html() ); + } + domManip( self, args, callback, ignored ); + } ); + } + + if ( l ) { + fragment = buildFragment( args, collection[ 0 ].ownerDocument, false, collection, ignored ); + first = fragment.firstChild; + + if ( fragment.childNodes.length === 1 ) { + fragment = first; + } + + // Require either new content or an interest in ignored elements to invoke the callback + if ( first || ignored ) { + scripts = jQuery.map( getAll( fragment, "script" ), disableScript ); + hasScripts = scripts.length; + + // Use the original fragment for the last item + // instead of the first because it can end up + // being emptied incorrectly in certain situations (#8070). + for ( ; i < l; i++ ) { + node = fragment; + + if ( i !== iNoClone ) { + node = jQuery.clone( node, true, true ); + + // Keep references to cloned scripts for later restoration + if ( hasScripts ) { + + // Support: Android <=4.0 only, PhantomJS 1 only + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( scripts, getAll( node, "script" ) ); + } + } + + callback.call( collection[ i ], node, i ); + } + + if ( hasScripts ) { + doc = scripts[ scripts.length - 1 ].ownerDocument; + + // Reenable scripts + jQuery.map( scripts, restoreScript ); + + // Evaluate executable scripts on first document insertion + for ( i = 0; i < hasScripts; i++ ) { + node = scripts[ i ]; + if ( rscriptType.test( node.type || "" ) && + !dataPriv.access( node, "globalEval" ) && + jQuery.contains( doc, node ) ) { + + if ( node.src && ( node.type || "" ).toLowerCase() !== "module" ) { + + // Optional AJAX dependency, but won't run scripts if not present + if ( jQuery._evalUrl && !node.noModule ) { + jQuery._evalUrl( node.src, { + nonce: node.nonce || node.getAttribute( "nonce" ) + }, doc ); + } + } else { + DOMEval( node.textContent.replace( rcleanScript, "" ), node, doc ); + } + } + } + } + } + } + + return collection; +} + +function remove( elem, selector, keepData ) { + var node, + nodes = selector ? jQuery.filter( selector, elem ) : elem, + i = 0; + + for ( ; ( node = nodes[ i ] ) != null; i++ ) { + if ( !keepData && node.nodeType === 1 ) { + jQuery.cleanData( getAll( node ) ); + } + + if ( node.parentNode ) { + if ( keepData && isAttached( node ) ) { + setGlobalEval( getAll( node, "script" ) ); + } + node.parentNode.removeChild( node ); + } + } + + return elem; +} + +jQuery.extend( { + htmlPrefilter: function( html ) { + return html; + }, + + clone: function( elem, dataAndEvents, deepDataAndEvents ) { + var i, l, srcElements, destElements, + clone = elem.cloneNode( true ), + inPage = isAttached( elem ); + + // Fix IE cloning issues + if ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) && + !jQuery.isXMLDoc( elem ) ) { + + // We eschew Sizzle here for performance reasons: https://jsperf.com/getall-vs-sizzle/2 + destElements = getAll( clone ); + srcElements = getAll( elem ); + + for ( i = 0, l = srcElements.length; i < l; i++ ) { + fixInput( srcElements[ i ], destElements[ i ] ); + } + } + + // Copy the events from the original to the clone + if ( dataAndEvents ) { + if ( deepDataAndEvents ) { + srcElements = srcElements || getAll( elem ); + destElements = destElements || getAll( clone ); + + for ( i = 0, l = srcElements.length; i < l; i++ ) { + cloneCopyEvent( srcElements[ i ], destElements[ i ] ); + } + } else { + cloneCopyEvent( elem, clone ); + } + } + + // Preserve script evaluation history + destElements = getAll( clone, "script" ); + if ( destElements.length > 0 ) { + setGlobalEval( destElements, !inPage && getAll( elem, "script" ) ); + } + + // Return the cloned set + return clone; + }, + + cleanData: function( elems ) { + var data, elem, type, + special = jQuery.event.special, + i = 0; + + for ( ; ( elem = elems[ i ] ) !== undefined; i++ ) { + if ( acceptData( elem ) ) { + if ( ( data = elem[ dataPriv.expando ] ) ) { + if ( data.events ) { + for ( type in data.events ) { + if ( special[ type ] ) { + jQuery.event.remove( elem, type ); + + // This is a shortcut to avoid jQuery.event.remove's overhead + } else { + jQuery.removeEvent( elem, type, data.handle ); + } + } + } + + // Support: Chrome <=35 - 45+ + // Assign undefined instead of using delete, see Data#remove + elem[ dataPriv.expando ] = undefined; + } + if ( elem[ dataUser.expando ] ) { + + // Support: Chrome <=35 - 45+ + // Assign undefined instead of using delete, see Data#remove + elem[ dataUser.expando ] = undefined; + } + } + } + } +} ); + +jQuery.fn.extend( { + detach: function( selector ) { + return remove( this, selector, true ); + }, + + remove: function( selector ) { + return remove( this, selector ); + }, + + text: function( value ) { + return access( this, function( value ) { + return value === undefined ? + jQuery.text( this ) : + this.empty().each( function() { + if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { + this.textContent = value; + } + } ); + }, null, value, arguments.length ); + }, + + append: function() { + return domManip( this, arguments, function( elem ) { + if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { + var target = manipulationTarget( this, elem ); + target.appendChild( elem ); + } + } ); + }, + + prepend: function() { + return domManip( this, arguments, function( elem ) { + if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { + var target = manipulationTarget( this, elem ); + target.insertBefore( elem, target.firstChild ); + } + } ); + }, + + before: function() { + return domManip( this, arguments, function( elem ) { + if ( this.parentNode ) { + this.parentNode.insertBefore( elem, this ); + } + } ); + }, + + after: function() { + return domManip( this, arguments, function( elem ) { + if ( this.parentNode ) { + this.parentNode.insertBefore( elem, this.nextSibling ); + } + } ); + }, + + empty: function() { + var elem, + i = 0; + + for ( ; ( elem = this[ i ] ) != null; i++ ) { + if ( elem.nodeType === 1 ) { + + // Prevent memory leaks + jQuery.cleanData( getAll( elem, false ) ); + + // Remove any remaining nodes + elem.textContent = ""; + } + } + + return this; + }, + + clone: function( dataAndEvents, deepDataAndEvents ) { + dataAndEvents = dataAndEvents == null ? false : dataAndEvents; + deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents; + + return this.map( function() { + return jQuery.clone( this, dataAndEvents, deepDataAndEvents ); + } ); + }, + + html: function( value ) { + return access( this, function( value ) { + var elem = this[ 0 ] || {}, + i = 0, + l = this.length; + + if ( value === undefined && elem.nodeType === 1 ) { + return elem.innerHTML; + } + + // See if we can take a shortcut and just use innerHTML + if ( typeof value === "string" && !rnoInnerhtml.test( value ) && + !wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) { + + value = jQuery.htmlPrefilter( value ); + + try { + for ( ; i < l; i++ ) { + elem = this[ i ] || {}; + + // Remove element nodes and prevent memory leaks + if ( elem.nodeType === 1 ) { + jQuery.cleanData( getAll( elem, false ) ); + elem.innerHTML = value; + } + } + + elem = 0; + + // If using innerHTML throws an exception, use the fallback method + } catch ( e ) {} + } + + if ( elem ) { + this.empty().append( value ); + } + }, null, value, arguments.length ); + }, + + replaceWith: function() { + var ignored = []; + + // Make the changes, replacing each non-ignored context element with the new content + return domManip( this, arguments, function( elem ) { + var parent = this.parentNode; + + if ( jQuery.inArray( this, ignored ) < 0 ) { + jQuery.cleanData( getAll( this ) ); + if ( parent ) { + parent.replaceChild( elem, this ); + } + } + + // Force callback invocation + }, ignored ); + } +} ); + +jQuery.each( { + appendTo: "append", + prependTo: "prepend", + insertBefore: "before", + insertAfter: "after", + replaceAll: "replaceWith" +}, function( name, original ) { + jQuery.fn[ name ] = function( selector ) { + var elems, + ret = [], + insert = jQuery( selector ), + last = insert.length - 1, + i = 0; + + for ( ; i <= last; i++ ) { + elems = i === last ? this : this.clone( true ); + jQuery( insert[ i ] )[ original ]( elems ); + + // Support: Android <=4.0 only, PhantomJS 1 only + // .get() because push.apply(_, arraylike) throws on ancient WebKit + push.apply( ret, elems.get() ); + } + + return this.pushStack( ret ); + }; +} ); +var rnumnonpx = new RegExp( "^(" + pnum + ")(?!px)[a-z%]+$", "i" ); + +var getStyles = function( elem ) { + + // Support: IE <=11 only, Firefox <=30 (#15098, #14150) + // IE throws on elements created in popups + // FF meanwhile throws on frame elements through "defaultView.getComputedStyle" + var view = elem.ownerDocument.defaultView; + + if ( !view || !view.opener ) { + view = window; + } + + return view.getComputedStyle( elem ); + }; + +var swap = function( elem, options, callback ) { + var ret, name, + old = {}; + + // Remember the old values, and insert the new ones + for ( name in options ) { + old[ name ] = elem.style[ name ]; + elem.style[ name ] = options[ name ]; + } + + ret = callback.call( elem ); + + // Revert the old values + for ( name in options ) { + elem.style[ name ] = old[ name ]; + } + + return ret; +}; + + +var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" ); + + + +( function() { + + // Executing both pixelPosition & boxSizingReliable tests require only one layout + // so they're executed at the same time to save the second computation. + function computeStyleTests() { + + // This is a singleton, we need to execute it only once + if ( !div ) { + return; + } + + container.style.cssText = "position:absolute;left:-11111px;width:60px;" + + "margin-top:1px;padding:0;border:0"; + div.style.cssText = + "position:relative;display:block;box-sizing:border-box;overflow:scroll;" + + "margin:auto;border:1px;padding:1px;" + + "width:60%;top:1%"; + documentElement.appendChild( container ).appendChild( div ); + + var divStyle = window.getComputedStyle( div ); + pixelPositionVal = divStyle.top !== "1%"; + + // Support: Android 4.0 - 4.3 only, Firefox <=3 - 44 + reliableMarginLeftVal = roundPixelMeasures( divStyle.marginLeft ) === 12; + + // Support: Android 4.0 - 4.3 only, Safari <=9.1 - 10.1, iOS <=7.0 - 9.3 + // Some styles come back with percentage values, even though they shouldn't + div.style.right = "60%"; + pixelBoxStylesVal = roundPixelMeasures( divStyle.right ) === 36; + + // Support: IE 9 - 11 only + // Detect misreporting of content dimensions for box-sizing:border-box elements + boxSizingReliableVal = roundPixelMeasures( divStyle.width ) === 36; + + // Support: IE 9 only + // Detect overflow:scroll screwiness (gh-3699) + // Support: Chrome <=64 + // Don't get tricked when zoom affects offsetWidth (gh-4029) + div.style.position = "absolute"; + scrollboxSizeVal = roundPixelMeasures( div.offsetWidth / 3 ) === 12; + + documentElement.removeChild( container ); + + // Nullify the div so it wouldn't be stored in the memory and + // it will also be a sign that checks already performed + div = null; + } + + function roundPixelMeasures( measure ) { + return Math.round( parseFloat( measure ) ); + } + + var pixelPositionVal, boxSizingReliableVal, scrollboxSizeVal, pixelBoxStylesVal, + reliableTrDimensionsVal, reliableMarginLeftVal, + container = document.createElement( "div" ), + div = document.createElement( "div" ); + + // Finish early in limited (non-browser) environments + if ( !div.style ) { + return; + } + + // Support: IE <=9 - 11 only + // Style of cloned element affects source element cloned (#8908) + div.style.backgroundClip = "content-box"; + div.cloneNode( true ).style.backgroundClip = ""; + support.clearCloneStyle = div.style.backgroundClip === "content-box"; + + jQuery.extend( support, { + boxSizingReliable: function() { + computeStyleTests(); + return boxSizingReliableVal; + }, + pixelBoxStyles: function() { + computeStyleTests(); + return pixelBoxStylesVal; + }, + pixelPosition: function() { + computeStyleTests(); + return pixelPositionVal; + }, + reliableMarginLeft: function() { + computeStyleTests(); + return reliableMarginLeftVal; + }, + scrollboxSize: function() { + computeStyleTests(); + return scrollboxSizeVal; + }, + + // Support: IE 9 - 11+, Edge 15 - 18+ + // IE/Edge misreport `getComputedStyle` of table rows with width/height + // set in CSS while `offset*` properties report correct values. + // Behavior in IE 9 is more subtle than in newer versions & it passes + // some versions of this test; make sure not to make it pass there! + // + // Support: Firefox 70+ + // Only Firefox includes border widths + // in computed dimensions. (gh-4529) + reliableTrDimensions: function() { + var table, tr, trChild, trStyle; + if ( reliableTrDimensionsVal == null ) { + table = document.createElement( "table" ); + tr = document.createElement( "tr" ); + trChild = document.createElement( "div" ); + + table.style.cssText = "position:absolute;left:-11111px;border-collapse:separate"; + tr.style.cssText = "border:1px solid"; + + // Support: Chrome 86+ + // Height set through cssText does not get applied. + // Computed height then comes back as 0. + tr.style.height = "1px"; + trChild.style.height = "9px"; + + // Support: Android 8 Chrome 86+ + // In our bodyBackground.html iframe, + // display for all div elements is set to "inline", + // which causes a problem only in Android 8 Chrome 86. + // Ensuring the div is display: block + // gets around this issue. + trChild.style.display = "block"; + + documentElement + .appendChild( table ) + .appendChild( tr ) + .appendChild( trChild ); + + trStyle = window.getComputedStyle( tr ); + reliableTrDimensionsVal = ( parseInt( trStyle.height, 10 ) + + parseInt( trStyle.borderTopWidth, 10 ) + + parseInt( trStyle.borderBottomWidth, 10 ) ) === tr.offsetHeight; + + documentElement.removeChild( table ); + } + return reliableTrDimensionsVal; + } + } ); +} )(); + + +function curCSS( elem, name, computed ) { + var width, minWidth, maxWidth, ret, + + // Support: Firefox 51+ + // Retrieving style before computed somehow + // fixes an issue with getting wrong values + // on detached elements + style = elem.style; + + computed = computed || getStyles( elem ); + + // getPropertyValue is needed for: + // .css('filter') (IE 9 only, #12537) + // .css('--customProperty) (#3144) + if ( computed ) { + ret = computed.getPropertyValue( name ) || computed[ name ]; + + if ( ret === "" && !isAttached( elem ) ) { + ret = jQuery.style( elem, name ); + } + + // A tribute to the "awesome hack by Dean Edwards" + // Android Browser returns percentage for some values, + // but width seems to be reliably pixels. + // This is against the CSSOM draft spec: + // https://drafts.csswg.org/cssom/#resolved-values + if ( !support.pixelBoxStyles() && rnumnonpx.test( ret ) && rboxStyle.test( name ) ) { + + // Remember the original values + width = style.width; + minWidth = style.minWidth; + maxWidth = style.maxWidth; + + // Put in the new values to get a computed value out + style.minWidth = style.maxWidth = style.width = ret; + ret = computed.width; + + // Revert the changed values + style.width = width; + style.minWidth = minWidth; + style.maxWidth = maxWidth; + } + } + + return ret !== undefined ? + + // Support: IE <=9 - 11 only + // IE returns zIndex value as an integer. + ret + "" : + ret; +} + + +function addGetHookIf( conditionFn, hookFn ) { + + // Define the hook, we'll check on the first run if it's really needed. + return { + get: function() { + if ( conditionFn() ) { + + // Hook not needed (or it's not possible to use it due + // to missing dependency), remove it. + delete this.get; + return; + } + + // Hook needed; redefine it so that the support test is not executed again. + return ( this.get = hookFn ).apply( this, arguments ); + } + }; +} + + +var cssPrefixes = [ "Webkit", "Moz", "ms" ], + emptyStyle = document.createElement( "div" ).style, + vendorProps = {}; + +// Return a vendor-prefixed property or undefined +function vendorPropName( name ) { + + // Check for vendor prefixed names + var capName = name[ 0 ].toUpperCase() + name.slice( 1 ), + i = cssPrefixes.length; + + while ( i-- ) { + name = cssPrefixes[ i ] + capName; + if ( name in emptyStyle ) { + return name; + } + } +} + +// Return a potentially-mapped jQuery.cssProps or vendor prefixed property +function finalPropName( name ) { + var final = jQuery.cssProps[ name ] || vendorProps[ name ]; + + if ( final ) { + return final; + } + if ( name in emptyStyle ) { + return name; + } + return vendorProps[ name ] = vendorPropName( name ) || name; +} + + +var + + // Swappable if display is none or starts with table + // except "table", "table-cell", or "table-caption" + // See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display + rdisplayswap = /^(none|table(?!-c[ea]).+)/, + rcustomProp = /^--/, + cssShow = { position: "absolute", visibility: "hidden", display: "block" }, + cssNormalTransform = { + letterSpacing: "0", + fontWeight: "400" + }; + +function setPositiveNumber( _elem, value, subtract ) { + + // Any relative (+/-) values have already been + // normalized at this point + var matches = rcssNum.exec( value ); + return matches ? + + // Guard against undefined "subtract", e.g., when used as in cssHooks + Math.max( 0, matches[ 2 ] - ( subtract || 0 ) ) + ( matches[ 3 ] || "px" ) : + value; +} + +function boxModelAdjustment( elem, dimension, box, isBorderBox, styles, computedVal ) { + var i = dimension === "width" ? 1 : 0, + extra = 0, + delta = 0; + + // Adjustment may not be necessary + if ( box === ( isBorderBox ? "border" : "content" ) ) { + return 0; + } + + for ( ; i < 4; i += 2 ) { + + // Both box models exclude margin + if ( box === "margin" ) { + delta += jQuery.css( elem, box + cssExpand[ i ], true, styles ); + } + + // If we get here with a content-box, we're seeking "padding" or "border" or "margin" + if ( !isBorderBox ) { + + // Add padding + delta += jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); + + // For "border" or "margin", add border + if ( box !== "padding" ) { + delta += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); + + // But still keep track of it otherwise + } else { + extra += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); + } + + // If we get here with a border-box (content + padding + border), we're seeking "content" or + // "padding" or "margin" + } else { + + // For "content", subtract padding + if ( box === "content" ) { + delta -= jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); + } + + // For "content" or "padding", subtract border + if ( box !== "margin" ) { + delta -= jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); + } + } + } + + // Account for positive content-box scroll gutter when requested by providing computedVal + if ( !isBorderBox && computedVal >= 0 ) { + + // offsetWidth/offsetHeight is a rounded sum of content, padding, scroll gutter, and border + // Assuming integer scroll gutter, subtract the rest and round down + delta += Math.max( 0, Math.ceil( + elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] - + computedVal - + delta - + extra - + 0.5 + + // If offsetWidth/offsetHeight is unknown, then we can't determine content-box scroll gutter + // Use an explicit zero to avoid NaN (gh-3964) + ) ) || 0; + } + + return delta; +} + +function getWidthOrHeight( elem, dimension, extra ) { + + // Start with computed style + var styles = getStyles( elem ), + + // To avoid forcing a reflow, only fetch boxSizing if we need it (gh-4322). + // Fake content-box until we know it's needed to know the true value. + boxSizingNeeded = !support.boxSizingReliable() || extra, + isBorderBox = boxSizingNeeded && + jQuery.css( elem, "boxSizing", false, styles ) === "border-box", + valueIsBorderBox = isBorderBox, + + val = curCSS( elem, dimension, styles ), + offsetProp = "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ); + + // Support: Firefox <=54 + // Return a confounding non-pixel value or feign ignorance, as appropriate. + if ( rnumnonpx.test( val ) ) { + if ( !extra ) { + return val; + } + val = "auto"; + } + + + // Support: IE 9 - 11 only + // Use offsetWidth/offsetHeight for when box sizing is unreliable. + // In those cases, the computed value can be trusted to be border-box. + if ( ( !support.boxSizingReliable() && isBorderBox || + + // Support: IE 10 - 11+, Edge 15 - 18+ + // IE/Edge misreport `getComputedStyle` of table rows with width/height + // set in CSS while `offset*` properties report correct values. + // Interestingly, in some cases IE 9 doesn't suffer from this issue. + !support.reliableTrDimensions() && nodeName( elem, "tr" ) || + + // Fall back to offsetWidth/offsetHeight when value is "auto" + // This happens for inline elements with no explicit setting (gh-3571) + val === "auto" || + + // Support: Android <=4.1 - 4.3 only + // Also use offsetWidth/offsetHeight for misreported inline dimensions (gh-3602) + !parseFloat( val ) && jQuery.css( elem, "display", false, styles ) === "inline" ) && + + // Make sure the element is visible & connected + elem.getClientRects().length ) { + + isBorderBox = jQuery.css( elem, "boxSizing", false, styles ) === "border-box"; + + // Where available, offsetWidth/offsetHeight approximate border box dimensions. + // Where not available (e.g., SVG), assume unreliable box-sizing and interpret the + // retrieved value as a content box dimension. + valueIsBorderBox = offsetProp in elem; + if ( valueIsBorderBox ) { + val = elem[ offsetProp ]; + } + } + + // Normalize "" and auto + val = parseFloat( val ) || 0; + + // Adjust for the element's box model + return ( val + + boxModelAdjustment( + elem, + dimension, + extra || ( isBorderBox ? "border" : "content" ), + valueIsBorderBox, + styles, + + // Provide the current computed size to request scroll gutter calculation (gh-3589) + val + ) + ) + "px"; +} + +jQuery.extend( { + + // Add in style property hooks for overriding the default + // behavior of getting and setting a style property + cssHooks: { + opacity: { + get: function( elem, computed ) { + if ( computed ) { + + // We should always get a number back from opacity + var ret = curCSS( elem, "opacity" ); + return ret === "" ? "1" : ret; + } + } + } + }, + + // Don't automatically add "px" to these possibly-unitless properties + cssNumber: { + "animationIterationCount": true, + "columnCount": true, + "fillOpacity": true, + "flexGrow": true, + "flexShrink": true, + "fontWeight": true, + "gridArea": true, + "gridColumn": true, + "gridColumnEnd": true, + "gridColumnStart": true, + "gridRow": true, + "gridRowEnd": true, + "gridRowStart": true, + "lineHeight": true, + "opacity": true, + "order": true, + "orphans": true, + "widows": true, + "zIndex": true, + "zoom": true + }, + + // Add in properties whose names you wish to fix before + // setting or getting the value + cssProps: {}, + + // Get and set the style property on a DOM Node + style: function( elem, name, value, extra ) { + + // Don't set styles on text and comment nodes + if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) { + return; + } + + // Make sure that we're working with the right name + var ret, type, hooks, + origName = camelCase( name ), + isCustomProp = rcustomProp.test( name ), + style = elem.style; + + // Make sure that we're working with the right name. We don't + // want to query the value if it is a CSS custom property + // since they are user-defined. + if ( !isCustomProp ) { + name = finalPropName( origName ); + } + + // Gets hook for the prefixed version, then unprefixed version + hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; + + // Check if we're setting a value + if ( value !== undefined ) { + type = typeof value; + + // Convert "+=" or "-=" to relative numbers (#7345) + if ( type === "string" && ( ret = rcssNum.exec( value ) ) && ret[ 1 ] ) { + value = adjustCSS( elem, name, ret ); + + // Fixes bug #9237 + type = "number"; + } + + // Make sure that null and NaN values aren't set (#7116) + if ( value == null || value !== value ) { + return; + } + + // If a number was passed in, add the unit (except for certain CSS properties) + // The isCustomProp check can be removed in jQuery 4.0 when we only auto-append + // "px" to a few hardcoded values. + if ( type === "number" && !isCustomProp ) { + value += ret && ret[ 3 ] || ( jQuery.cssNumber[ origName ] ? "" : "px" ); + } + + // background-* props affect original clone's values + if ( !support.clearCloneStyle && value === "" && name.indexOf( "background" ) === 0 ) { + style[ name ] = "inherit"; + } + + // If a hook was provided, use that value, otherwise just set the specified value + if ( !hooks || !( "set" in hooks ) || + ( value = hooks.set( elem, value, extra ) ) !== undefined ) { + + if ( isCustomProp ) { + style.setProperty( name, value ); + } else { + style[ name ] = value; + } + } + + } else { + + // If a hook was provided get the non-computed value from there + if ( hooks && "get" in hooks && + ( ret = hooks.get( elem, false, extra ) ) !== undefined ) { + + return ret; + } + + // Otherwise just get the value from the style object + return style[ name ]; + } + }, + + css: function( elem, name, extra, styles ) { + var val, num, hooks, + origName = camelCase( name ), + isCustomProp = rcustomProp.test( name ); + + // Make sure that we're working with the right name. We don't + // want to modify the value if it is a CSS custom property + // since they are user-defined. + if ( !isCustomProp ) { + name = finalPropName( origName ); + } + + // Try prefixed name followed by the unprefixed name + hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; + + // If a hook was provided get the computed value from there + if ( hooks && "get" in hooks ) { + val = hooks.get( elem, true, extra ); + } + + // Otherwise, if a way to get the computed value exists, use that + if ( val === undefined ) { + val = curCSS( elem, name, styles ); + } + + // Convert "normal" to computed value + if ( val === "normal" && name in cssNormalTransform ) { + val = cssNormalTransform[ name ]; + } + + // Make numeric if forced or a qualifier was provided and val looks numeric + if ( extra === "" || extra ) { + num = parseFloat( val ); + return extra === true || isFinite( num ) ? num || 0 : val; + } + + return val; + } +} ); + +jQuery.each( [ "height", "width" ], function( _i, dimension ) { + jQuery.cssHooks[ dimension ] = { + get: function( elem, computed, extra ) { + if ( computed ) { + + // Certain elements can have dimension info if we invisibly show them + // but it must have a current display style that would benefit + return rdisplayswap.test( jQuery.css( elem, "display" ) ) && + + // Support: Safari 8+ + // Table columns in Safari have non-zero offsetWidth & zero + // getBoundingClientRect().width unless display is changed. + // Support: IE <=11 only + // Running getBoundingClientRect on a disconnected node + // in IE throws an error. + ( !elem.getClientRects().length || !elem.getBoundingClientRect().width ) ? + swap( elem, cssShow, function() { + return getWidthOrHeight( elem, dimension, extra ); + } ) : + getWidthOrHeight( elem, dimension, extra ); + } + }, + + set: function( elem, value, extra ) { + var matches, + styles = getStyles( elem ), + + // Only read styles.position if the test has a chance to fail + // to avoid forcing a reflow. + scrollboxSizeBuggy = !support.scrollboxSize() && + styles.position === "absolute", + + // To avoid forcing a reflow, only fetch boxSizing if we need it (gh-3991) + boxSizingNeeded = scrollboxSizeBuggy || extra, + isBorderBox = boxSizingNeeded && + jQuery.css( elem, "boxSizing", false, styles ) === "border-box", + subtract = extra ? + boxModelAdjustment( + elem, + dimension, + extra, + isBorderBox, + styles + ) : + 0; + + // Account for unreliable border-box dimensions by comparing offset* to computed and + // faking a content-box to get border and padding (gh-3699) + if ( isBorderBox && scrollboxSizeBuggy ) { + subtract -= Math.ceil( + elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] - + parseFloat( styles[ dimension ] ) - + boxModelAdjustment( elem, dimension, "border", false, styles ) - + 0.5 + ); + } + + // Convert to pixels if value adjustment is needed + if ( subtract && ( matches = rcssNum.exec( value ) ) && + ( matches[ 3 ] || "px" ) !== "px" ) { + + elem.style[ dimension ] = value; + value = jQuery.css( elem, dimension ); + } + + return setPositiveNumber( elem, value, subtract ); + } + }; +} ); + +jQuery.cssHooks.marginLeft = addGetHookIf( support.reliableMarginLeft, + function( elem, computed ) { + if ( computed ) { + return ( parseFloat( curCSS( elem, "marginLeft" ) ) || + elem.getBoundingClientRect().left - + swap( elem, { marginLeft: 0 }, function() { + return elem.getBoundingClientRect().left; + } ) + ) + "px"; + } + } +); + +// These hooks are used by animate to expand properties +jQuery.each( { + margin: "", + padding: "", + border: "Width" +}, function( prefix, suffix ) { + jQuery.cssHooks[ prefix + suffix ] = { + expand: function( value ) { + var i = 0, + expanded = {}, + + // Assumes a single number if not a string + parts = typeof value === "string" ? value.split( " " ) : [ value ]; + + for ( ; i < 4; i++ ) { + expanded[ prefix + cssExpand[ i ] + suffix ] = + parts[ i ] || parts[ i - 2 ] || parts[ 0 ]; + } + + return expanded; + } + }; + + if ( prefix !== "margin" ) { + jQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber; + } +} ); + +jQuery.fn.extend( { + css: function( name, value ) { + return access( this, function( elem, name, value ) { + var styles, len, + map = {}, + i = 0; + + if ( Array.isArray( name ) ) { + styles = getStyles( elem ); + len = name.length; + + for ( ; i < len; i++ ) { + map[ name[ i ] ] = jQuery.css( elem, name[ i ], false, styles ); + } + + return map; + } + + return value !== undefined ? + jQuery.style( elem, name, value ) : + jQuery.css( elem, name ); + }, name, value, arguments.length > 1 ); + } +} ); + + +function Tween( elem, options, prop, end, easing ) { + return new Tween.prototype.init( elem, options, prop, end, easing ); +} +jQuery.Tween = Tween; + +Tween.prototype = { + constructor: Tween, + init: function( elem, options, prop, end, easing, unit ) { + this.elem = elem; + this.prop = prop; + this.easing = easing || jQuery.easing._default; + this.options = options; + this.start = this.now = this.cur(); + this.end = end; + this.unit = unit || ( jQuery.cssNumber[ prop ] ? "" : "px" ); + }, + cur: function() { + var hooks = Tween.propHooks[ this.prop ]; + + return hooks && hooks.get ? + hooks.get( this ) : + Tween.propHooks._default.get( this ); + }, + run: function( percent ) { + var eased, + hooks = Tween.propHooks[ this.prop ]; + + if ( this.options.duration ) { + this.pos = eased = jQuery.easing[ this.easing ]( + percent, this.options.duration * percent, 0, 1, this.options.duration + ); + } else { + this.pos = eased = percent; + } + this.now = ( this.end - this.start ) * eased + this.start; + + if ( this.options.step ) { + this.options.step.call( this.elem, this.now, this ); + } + + if ( hooks && hooks.set ) { + hooks.set( this ); + } else { + Tween.propHooks._default.set( this ); + } + return this; + } +}; + +Tween.prototype.init.prototype = Tween.prototype; + +Tween.propHooks = { + _default: { + get: function( tween ) { + var result; + + // Use a property on the element directly when it is not a DOM element, + // or when there is no matching style property that exists. + if ( tween.elem.nodeType !== 1 || + tween.elem[ tween.prop ] != null && tween.elem.style[ tween.prop ] == null ) { + return tween.elem[ tween.prop ]; + } + + // Passing an empty string as a 3rd parameter to .css will automatically + // attempt a parseFloat and fallback to a string if the parse fails. + // Simple values such as "10px" are parsed to Float; + // complex values such as "rotate(1rad)" are returned as-is. + result = jQuery.css( tween.elem, tween.prop, "" ); + + // Empty strings, null, undefined and "auto" are converted to 0. + return !result || result === "auto" ? 0 : result; + }, + set: function( tween ) { + + // Use step hook for back compat. + // Use cssHook if its there. + // Use .style if available and use plain properties where available. + if ( jQuery.fx.step[ tween.prop ] ) { + jQuery.fx.step[ tween.prop ]( tween ); + } else if ( tween.elem.nodeType === 1 && ( + jQuery.cssHooks[ tween.prop ] || + tween.elem.style[ finalPropName( tween.prop ) ] != null ) ) { + jQuery.style( tween.elem, tween.prop, tween.now + tween.unit ); + } else { + tween.elem[ tween.prop ] = tween.now; + } + } + } +}; + +// Support: IE <=9 only +// Panic based approach to setting things on disconnected nodes +Tween.propHooks.scrollTop = Tween.propHooks.scrollLeft = { + set: function( tween ) { + if ( tween.elem.nodeType && tween.elem.parentNode ) { + tween.elem[ tween.prop ] = tween.now; + } + } +}; + +jQuery.easing = { + linear: function( p ) { + return p; + }, + swing: function( p ) { + return 0.5 - Math.cos( p * Math.PI ) / 2; + }, + _default: "swing" +}; + +jQuery.fx = Tween.prototype.init; + +// Back compat <1.8 extension point +jQuery.fx.step = {}; + + + + +var + fxNow, inProgress, + rfxtypes = /^(?:toggle|show|hide)$/, + rrun = /queueHooks$/; + +function schedule() { + if ( inProgress ) { + if ( document.hidden === false && window.requestAnimationFrame ) { + window.requestAnimationFrame( schedule ); + } else { + window.setTimeout( schedule, jQuery.fx.interval ); + } + + jQuery.fx.tick(); + } +} + +// Animations created synchronously will run synchronously +function createFxNow() { + window.setTimeout( function() { + fxNow = undefined; + } ); + return ( fxNow = Date.now() ); +} + +// Generate parameters to create a standard animation +function genFx( type, includeWidth ) { + var which, + i = 0, + attrs = { height: type }; + + // If we include width, step value is 1 to do all cssExpand values, + // otherwise step value is 2 to skip over Left and Right + includeWidth = includeWidth ? 1 : 0; + for ( ; i < 4; i += 2 - includeWidth ) { + which = cssExpand[ i ]; + attrs[ "margin" + which ] = attrs[ "padding" + which ] = type; + } + + if ( includeWidth ) { + attrs.opacity = attrs.width = type; + } + + return attrs; +} + +function createTween( value, prop, animation ) { + var tween, + collection = ( Animation.tweeners[ prop ] || [] ).concat( Animation.tweeners[ "*" ] ), + index = 0, + length = collection.length; + for ( ; index < length; index++ ) { + if ( ( tween = collection[ index ].call( animation, prop, value ) ) ) { + + // We're done with this property + return tween; + } + } +} + +function defaultPrefilter( elem, props, opts ) { + var prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display, + isBox = "width" in props || "height" in props, + anim = this, + orig = {}, + style = elem.style, + hidden = elem.nodeType && isHiddenWithinTree( elem ), + dataShow = dataPriv.get( elem, "fxshow" ); + + // Queue-skipping animations hijack the fx hooks + if ( !opts.queue ) { + hooks = jQuery._queueHooks( elem, "fx" ); + if ( hooks.unqueued == null ) { + hooks.unqueued = 0; + oldfire = hooks.empty.fire; + hooks.empty.fire = function() { + if ( !hooks.unqueued ) { + oldfire(); + } + }; + } + hooks.unqueued++; + + anim.always( function() { + + // Ensure the complete handler is called before this completes + anim.always( function() { + hooks.unqueued--; + if ( !jQuery.queue( elem, "fx" ).length ) { + hooks.empty.fire(); + } + } ); + } ); + } + + // Detect show/hide animations + for ( prop in props ) { + value = props[ prop ]; + if ( rfxtypes.test( value ) ) { + delete props[ prop ]; + toggle = toggle || value === "toggle"; + if ( value === ( hidden ? "hide" : "show" ) ) { + + // Pretend to be hidden if this is a "show" and + // there is still data from a stopped show/hide + if ( value === "show" && dataShow && dataShow[ prop ] !== undefined ) { + hidden = true; + + // Ignore all other no-op show/hide data + } else { + continue; + } + } + orig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop ); + } + } + + // Bail out if this is a no-op like .hide().hide() + propTween = !jQuery.isEmptyObject( props ); + if ( !propTween && jQuery.isEmptyObject( orig ) ) { + return; + } + + // Restrict "overflow" and "display" styles during box animations + if ( isBox && elem.nodeType === 1 ) { + + // Support: IE <=9 - 11, Edge 12 - 15 + // Record all 3 overflow attributes because IE does not infer the shorthand + // from identically-valued overflowX and overflowY and Edge just mirrors + // the overflowX value there. + opts.overflow = [ style.overflow, style.overflowX, style.overflowY ]; + + // Identify a display type, preferring old show/hide data over the CSS cascade + restoreDisplay = dataShow && dataShow.display; + if ( restoreDisplay == null ) { + restoreDisplay = dataPriv.get( elem, "display" ); + } + display = jQuery.css( elem, "display" ); + if ( display === "none" ) { + if ( restoreDisplay ) { + display = restoreDisplay; + } else { + + // Get nonempty value(s) by temporarily forcing visibility + showHide( [ elem ], true ); + restoreDisplay = elem.style.display || restoreDisplay; + display = jQuery.css( elem, "display" ); + showHide( [ elem ] ); + } + } + + // Animate inline elements as inline-block + if ( display === "inline" || display === "inline-block" && restoreDisplay != null ) { + if ( jQuery.css( elem, "float" ) === "none" ) { + + // Restore the original display value at the end of pure show/hide animations + if ( !propTween ) { + anim.done( function() { + style.display = restoreDisplay; + } ); + if ( restoreDisplay == null ) { + display = style.display; + restoreDisplay = display === "none" ? "" : display; + } + } + style.display = "inline-block"; + } + } + } + + if ( opts.overflow ) { + style.overflow = "hidden"; + anim.always( function() { + style.overflow = opts.overflow[ 0 ]; + style.overflowX = opts.overflow[ 1 ]; + style.overflowY = opts.overflow[ 2 ]; + } ); + } + + // Implement show/hide animations + propTween = false; + for ( prop in orig ) { + + // General show/hide setup for this element animation + if ( !propTween ) { + if ( dataShow ) { + if ( "hidden" in dataShow ) { + hidden = dataShow.hidden; + } + } else { + dataShow = dataPriv.access( elem, "fxshow", { display: restoreDisplay } ); + } + + // Store hidden/visible for toggle so `.stop().toggle()` "reverses" + if ( toggle ) { + dataShow.hidden = !hidden; + } + + // Show elements before animating them + if ( hidden ) { + showHide( [ elem ], true ); + } + + /* eslint-disable no-loop-func */ + + anim.done( function() { + + /* eslint-enable no-loop-func */ + + // The final step of a "hide" animation is actually hiding the element + if ( !hidden ) { + showHide( [ elem ] ); + } + dataPriv.remove( elem, "fxshow" ); + for ( prop in orig ) { + jQuery.style( elem, prop, orig[ prop ] ); + } + } ); + } + + // Per-property setup + propTween = createTween( hidden ? dataShow[ prop ] : 0, prop, anim ); + if ( !( prop in dataShow ) ) { + dataShow[ prop ] = propTween.start; + if ( hidden ) { + propTween.end = propTween.start; + propTween.start = 0; + } + } + } +} + +function propFilter( props, specialEasing ) { + var index, name, easing, value, hooks; + + // camelCase, specialEasing and expand cssHook pass + for ( index in props ) { + name = camelCase( index ); + easing = specialEasing[ name ]; + value = props[ index ]; + if ( Array.isArray( value ) ) { + easing = value[ 1 ]; + value = props[ index ] = value[ 0 ]; + } + + if ( index !== name ) { + props[ name ] = value; + delete props[ index ]; + } + + hooks = jQuery.cssHooks[ name ]; + if ( hooks && "expand" in hooks ) { + value = hooks.expand( value ); + delete props[ name ]; + + // Not quite $.extend, this won't overwrite existing keys. + // Reusing 'index' because we have the correct "name" + for ( index in value ) { + if ( !( index in props ) ) { + props[ index ] = value[ index ]; + specialEasing[ index ] = easing; + } + } + } else { + specialEasing[ name ] = easing; + } + } +} + +function Animation( elem, properties, options ) { + var result, + stopped, + index = 0, + length = Animation.prefilters.length, + deferred = jQuery.Deferred().always( function() { + + // Don't match elem in the :animated selector + delete tick.elem; + } ), + tick = function() { + if ( stopped ) { + return false; + } + var currentTime = fxNow || createFxNow(), + remaining = Math.max( 0, animation.startTime + animation.duration - currentTime ), + + // Support: Android 2.3 only + // Archaic crash bug won't allow us to use `1 - ( 0.5 || 0 )` (#12497) + temp = remaining / animation.duration || 0, + percent = 1 - temp, + index = 0, + length = animation.tweens.length; + + for ( ; index < length; index++ ) { + animation.tweens[ index ].run( percent ); + } + + deferred.notifyWith( elem, [ animation, percent, remaining ] ); + + // If there's more to do, yield + if ( percent < 1 && length ) { + return remaining; + } + + // If this was an empty animation, synthesize a final progress notification + if ( !length ) { + deferred.notifyWith( elem, [ animation, 1, 0 ] ); + } + + // Resolve the animation and report its conclusion + deferred.resolveWith( elem, [ animation ] ); + return false; + }, + animation = deferred.promise( { + elem: elem, + props: jQuery.extend( {}, properties ), + opts: jQuery.extend( true, { + specialEasing: {}, + easing: jQuery.easing._default + }, options ), + originalProperties: properties, + originalOptions: options, + startTime: fxNow || createFxNow(), + duration: options.duration, + tweens: [], + createTween: function( prop, end ) { + var tween = jQuery.Tween( elem, animation.opts, prop, end, + animation.opts.specialEasing[ prop ] || animation.opts.easing ); + animation.tweens.push( tween ); + return tween; + }, + stop: function( gotoEnd ) { + var index = 0, + + // If we are going to the end, we want to run all the tweens + // otherwise we skip this part + length = gotoEnd ? animation.tweens.length : 0; + if ( stopped ) { + return this; + } + stopped = true; + for ( ; index < length; index++ ) { + animation.tweens[ index ].run( 1 ); + } + + // Resolve when we played the last frame; otherwise, reject + if ( gotoEnd ) { + deferred.notifyWith( elem, [ animation, 1, 0 ] ); + deferred.resolveWith( elem, [ animation, gotoEnd ] ); + } else { + deferred.rejectWith( elem, [ animation, gotoEnd ] ); + } + return this; + } + } ), + props = animation.props; + + propFilter( props, animation.opts.specialEasing ); + + for ( ; index < length; index++ ) { + result = Animation.prefilters[ index ].call( animation, elem, props, animation.opts ); + if ( result ) { + if ( isFunction( result.stop ) ) { + jQuery._queueHooks( animation.elem, animation.opts.queue ).stop = + result.stop.bind( result ); + } + return result; + } + } + + jQuery.map( props, createTween, animation ); + + if ( isFunction( animation.opts.start ) ) { + animation.opts.start.call( elem, animation ); + } + + // Attach callbacks from options + animation + .progress( animation.opts.progress ) + .done( animation.opts.done, animation.opts.complete ) + .fail( animation.opts.fail ) + .always( animation.opts.always ); + + jQuery.fx.timer( + jQuery.extend( tick, { + elem: elem, + anim: animation, + queue: animation.opts.queue + } ) + ); + + return animation; +} + +jQuery.Animation = jQuery.extend( Animation, { + + tweeners: { + "*": [ function( prop, value ) { + var tween = this.createTween( prop, value ); + adjustCSS( tween.elem, prop, rcssNum.exec( value ), tween ); + return tween; + } ] + }, + + tweener: function( props, callback ) { + if ( isFunction( props ) ) { + callback = props; + props = [ "*" ]; + } else { + props = props.match( rnothtmlwhite ); + } + + var prop, + index = 0, + length = props.length; + + for ( ; index < length; index++ ) { + prop = props[ index ]; + Animation.tweeners[ prop ] = Animation.tweeners[ prop ] || []; + Animation.tweeners[ prop ].unshift( callback ); + } + }, + + prefilters: [ defaultPrefilter ], + + prefilter: function( callback, prepend ) { + if ( prepend ) { + Animation.prefilters.unshift( callback ); + } else { + Animation.prefilters.push( callback ); + } + } +} ); + +jQuery.speed = function( speed, easing, fn ) { + var opt = speed && typeof speed === "object" ? jQuery.extend( {}, speed ) : { + complete: fn || !fn && easing || + isFunction( speed ) && speed, + duration: speed, + easing: fn && easing || easing && !isFunction( easing ) && easing + }; + + // Go to the end state if fx are off + if ( jQuery.fx.off ) { + opt.duration = 0; + + } else { + if ( typeof opt.duration !== "number" ) { + if ( opt.duration in jQuery.fx.speeds ) { + opt.duration = jQuery.fx.speeds[ opt.duration ]; + + } else { + opt.duration = jQuery.fx.speeds._default; + } + } + } + + // Normalize opt.queue - true/undefined/null -> "fx" + if ( opt.queue == null || opt.queue === true ) { + opt.queue = "fx"; + } + + // Queueing + opt.old = opt.complete; + + opt.complete = function() { + if ( isFunction( opt.old ) ) { + opt.old.call( this ); + } + + if ( opt.queue ) { + jQuery.dequeue( this, opt.queue ); + } + }; + + return opt; +}; + +jQuery.fn.extend( { + fadeTo: function( speed, to, easing, callback ) { + + // Show any hidden elements after setting opacity to 0 + return this.filter( isHiddenWithinTree ).css( "opacity", 0 ).show() + + // Animate to the value specified + .end().animate( { opacity: to }, speed, easing, callback ); + }, + animate: function( prop, speed, easing, callback ) { + var empty = jQuery.isEmptyObject( prop ), + optall = jQuery.speed( speed, easing, callback ), + doAnimation = function() { + + // Operate on a copy of prop so per-property easing won't be lost + var anim = Animation( this, jQuery.extend( {}, prop ), optall ); + + // Empty animations, or finishing resolves immediately + if ( empty || dataPriv.get( this, "finish" ) ) { + anim.stop( true ); + } + }; + + doAnimation.finish = doAnimation; + + return empty || optall.queue === false ? + this.each( doAnimation ) : + this.queue( optall.queue, doAnimation ); + }, + stop: function( type, clearQueue, gotoEnd ) { + var stopQueue = function( hooks ) { + var stop = hooks.stop; + delete hooks.stop; + stop( gotoEnd ); + }; + + if ( typeof type !== "string" ) { + gotoEnd = clearQueue; + clearQueue = type; + type = undefined; + } + if ( clearQueue ) { + this.queue( type || "fx", [] ); + } + + return this.each( function() { + var dequeue = true, + index = type != null && type + "queueHooks", + timers = jQuery.timers, + data = dataPriv.get( this ); + + if ( index ) { + if ( data[ index ] && data[ index ].stop ) { + stopQueue( data[ index ] ); + } + } else { + for ( index in data ) { + if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) { + stopQueue( data[ index ] ); + } + } + } + + for ( index = timers.length; index--; ) { + if ( timers[ index ].elem === this && + ( type == null || timers[ index ].queue === type ) ) { + + timers[ index ].anim.stop( gotoEnd ); + dequeue = false; + timers.splice( index, 1 ); + } + } + + // Start the next in the queue if the last step wasn't forced. + // Timers currently will call their complete callbacks, which + // will dequeue but only if they were gotoEnd. + if ( dequeue || !gotoEnd ) { + jQuery.dequeue( this, type ); + } + } ); + }, + finish: function( type ) { + if ( type !== false ) { + type = type || "fx"; + } + return this.each( function() { + var index, + data = dataPriv.get( this ), + queue = data[ type + "queue" ], + hooks = data[ type + "queueHooks" ], + timers = jQuery.timers, + length = queue ? queue.length : 0; + + // Enable finishing flag on private data + data.finish = true; + + // Empty the queue first + jQuery.queue( this, type, [] ); + + if ( hooks && hooks.stop ) { + hooks.stop.call( this, true ); + } + + // Look for any active animations, and finish them + for ( index = timers.length; index--; ) { + if ( timers[ index ].elem === this && timers[ index ].queue === type ) { + timers[ index ].anim.stop( true ); + timers.splice( index, 1 ); + } + } + + // Look for any animations in the old queue and finish them + for ( index = 0; index < length; index++ ) { + if ( queue[ index ] && queue[ index ].finish ) { + queue[ index ].finish.call( this ); + } + } + + // Turn off finishing flag + delete data.finish; + } ); + } +} ); + +jQuery.each( [ "toggle", "show", "hide" ], function( _i, name ) { + var cssFn = jQuery.fn[ name ]; + jQuery.fn[ name ] = function( speed, easing, callback ) { + return speed == null || typeof speed === "boolean" ? + cssFn.apply( this, arguments ) : + this.animate( genFx( name, true ), speed, easing, callback ); + }; +} ); + +// Generate shortcuts for custom animations +jQuery.each( { + slideDown: genFx( "show" ), + slideUp: genFx( "hide" ), + slideToggle: genFx( "toggle" ), + fadeIn: { opacity: "show" }, + fadeOut: { opacity: "hide" }, + fadeToggle: { opacity: "toggle" } +}, function( name, props ) { + jQuery.fn[ name ] = function( speed, easing, callback ) { + return this.animate( props, speed, easing, callback ); + }; +} ); + +jQuery.timers = []; +jQuery.fx.tick = function() { + var timer, + i = 0, + timers = jQuery.timers; + + fxNow = Date.now(); + + for ( ; i < timers.length; i++ ) { + timer = timers[ i ]; + + // Run the timer and safely remove it when done (allowing for external removal) + if ( !timer() && timers[ i ] === timer ) { + timers.splice( i--, 1 ); + } + } + + if ( !timers.length ) { + jQuery.fx.stop(); + } + fxNow = undefined; +}; + +jQuery.fx.timer = function( timer ) { + jQuery.timers.push( timer ); + jQuery.fx.start(); +}; + +jQuery.fx.interval = 13; +jQuery.fx.start = function() { + if ( inProgress ) { + return; + } + + inProgress = true; + schedule(); +}; + +jQuery.fx.stop = function() { + inProgress = null; +}; + +jQuery.fx.speeds = { + slow: 600, + fast: 200, + + // Default speed + _default: 400 +}; + + +// Based off of the plugin by Clint Helfers, with permission. +// https://web.archive.org/web/20100324014747/http://blindsignals.com/index.php/2009/07/jquery-delay/ +jQuery.fn.delay = function( time, type ) { + time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time; + type = type || "fx"; + + return this.queue( type, function( next, hooks ) { + var timeout = window.setTimeout( next, time ); + hooks.stop = function() { + window.clearTimeout( timeout ); + }; + } ); +}; + + +( function() { + var input = document.createElement( "input" ), + select = document.createElement( "select" ), + opt = select.appendChild( document.createElement( "option" ) ); + + input.type = "checkbox"; + + // Support: Android <=4.3 only + // Default value for a checkbox should be "on" + support.checkOn = input.value !== ""; + + // Support: IE <=11 only + // Must access selectedIndex to make default options select + support.optSelected = opt.selected; + + // Support: IE <=11 only + // An input loses its value after becoming a radio + input = document.createElement( "input" ); + input.value = "t"; + input.type = "radio"; + support.radioValue = input.value === "t"; +} )(); + + +var boolHook, + attrHandle = jQuery.expr.attrHandle; + +jQuery.fn.extend( { + attr: function( name, value ) { + return access( this, jQuery.attr, name, value, arguments.length > 1 ); + }, + + removeAttr: function( name ) { + return this.each( function() { + jQuery.removeAttr( this, name ); + } ); + } +} ); + +jQuery.extend( { + attr: function( elem, name, value ) { + var ret, hooks, + nType = elem.nodeType; + + // Don't get/set attributes on text, comment and attribute nodes + if ( nType === 3 || nType === 8 || nType === 2 ) { + return; + } + + // Fallback to prop when attributes are not supported + if ( typeof elem.getAttribute === "undefined" ) { + return jQuery.prop( elem, name, value ); + } + + // Attribute hooks are determined by the lowercase version + // Grab necessary hook if one is defined + if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) { + hooks = jQuery.attrHooks[ name.toLowerCase() ] || + ( jQuery.expr.match.bool.test( name ) ? boolHook : undefined ); + } + + if ( value !== undefined ) { + if ( value === null ) { + jQuery.removeAttr( elem, name ); + return; + } + + if ( hooks && "set" in hooks && + ( ret = hooks.set( elem, value, name ) ) !== undefined ) { + return ret; + } + + elem.setAttribute( name, value + "" ); + return value; + } + + if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) { + return ret; + } + + ret = jQuery.find.attr( elem, name ); + + // Non-existent attributes return null, we normalize to undefined + return ret == null ? undefined : ret; + }, + + attrHooks: { + type: { + set: function( elem, value ) { + if ( !support.radioValue && value === "radio" && + nodeName( elem, "input" ) ) { + var val = elem.value; + elem.setAttribute( "type", value ); + if ( val ) { + elem.value = val; + } + return value; + } + } + } + }, + + removeAttr: function( elem, value ) { + var name, + i = 0, + + // Attribute names can contain non-HTML whitespace characters + // https://html.spec.whatwg.org/multipage/syntax.html#attributes-2 + attrNames = value && value.match( rnothtmlwhite ); + + if ( attrNames && elem.nodeType === 1 ) { + while ( ( name = attrNames[ i++ ] ) ) { + elem.removeAttribute( name ); + } + } + } +} ); + +// Hooks for boolean attributes +boolHook = { + set: function( elem, value, name ) { + if ( value === false ) { + + // Remove boolean attributes when set to false + jQuery.removeAttr( elem, name ); + } else { + elem.setAttribute( name, name ); + } + return name; + } +}; + +jQuery.each( jQuery.expr.match.bool.source.match( /\w+/g ), function( _i, name ) { + var getter = attrHandle[ name ] || jQuery.find.attr; + + attrHandle[ name ] = function( elem, name, isXML ) { + var ret, handle, + lowercaseName = name.toLowerCase(); + + if ( !isXML ) { + + // Avoid an infinite loop by temporarily removing this function from the getter + handle = attrHandle[ lowercaseName ]; + attrHandle[ lowercaseName ] = ret; + ret = getter( elem, name, isXML ) != null ? + lowercaseName : + null; + attrHandle[ lowercaseName ] = handle; + } + return ret; + }; +} ); + + + + +var rfocusable = /^(?:input|select|textarea|button)$/i, + rclickable = /^(?:a|area)$/i; + +jQuery.fn.extend( { + prop: function( name, value ) { + return access( this, jQuery.prop, name, value, arguments.length > 1 ); + }, + + removeProp: function( name ) { + return this.each( function() { + delete this[ jQuery.propFix[ name ] || name ]; + } ); + } +} ); + +jQuery.extend( { + prop: function( elem, name, value ) { + var ret, hooks, + nType = elem.nodeType; + + // Don't get/set properties on text, comment and attribute nodes + if ( nType === 3 || nType === 8 || nType === 2 ) { + return; + } + + if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) { + + // Fix name and attach hooks + name = jQuery.propFix[ name ] || name; + hooks = jQuery.propHooks[ name ]; + } + + if ( value !== undefined ) { + if ( hooks && "set" in hooks && + ( ret = hooks.set( elem, value, name ) ) !== undefined ) { + return ret; + } + + return ( elem[ name ] = value ); + } + + if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) { + return ret; + } + + return elem[ name ]; + }, + + propHooks: { + tabIndex: { + get: function( elem ) { + + // Support: IE <=9 - 11 only + // elem.tabIndex doesn't always return the + // correct value when it hasn't been explicitly set + // https://web.archive.org/web/20141116233347/http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/ + // Use proper attribute retrieval(#12072) + var tabindex = jQuery.find.attr( elem, "tabindex" ); + + if ( tabindex ) { + return parseInt( tabindex, 10 ); + } + + if ( + rfocusable.test( elem.nodeName ) || + rclickable.test( elem.nodeName ) && + elem.href + ) { + return 0; + } + + return -1; + } + } + }, + + propFix: { + "for": "htmlFor", + "class": "className" + } +} ); + +// Support: IE <=11 only +// Accessing the selectedIndex property +// forces the browser to respect setting selected +// on the option +// The getter ensures a default option is selected +// when in an optgroup +// eslint rule "no-unused-expressions" is disabled for this code +// since it considers such accessions noop +if ( !support.optSelected ) { + jQuery.propHooks.selected = { + get: function( elem ) { + + /* eslint no-unused-expressions: "off" */ + + var parent = elem.parentNode; + if ( parent && parent.parentNode ) { + parent.parentNode.selectedIndex; + } + return null; + }, + set: function( elem ) { + + /* eslint no-unused-expressions: "off" */ + + var parent = elem.parentNode; + if ( parent ) { + parent.selectedIndex; + + if ( parent.parentNode ) { + parent.parentNode.selectedIndex; + } + } + } + }; +} + +jQuery.each( [ + "tabIndex", + "readOnly", + "maxLength", + "cellSpacing", + "cellPadding", + "rowSpan", + "colSpan", + "useMap", + "frameBorder", + "contentEditable" +], function() { + jQuery.propFix[ this.toLowerCase() ] = this; +} ); + + + + + // Strip and collapse whitespace according to HTML spec + // https://infra.spec.whatwg.org/#strip-and-collapse-ascii-whitespace + function stripAndCollapse( value ) { + var tokens = value.match( rnothtmlwhite ) || []; + return tokens.join( " " ); + } + + +function getClass( elem ) { + return elem.getAttribute && elem.getAttribute( "class" ) || ""; +} + +function classesToArray( value ) { + if ( Array.isArray( value ) ) { + return value; + } + if ( typeof value === "string" ) { + return value.match( rnothtmlwhite ) || []; + } + return []; +} + +jQuery.fn.extend( { + addClass: function( value ) { + var classes, elem, cur, curValue, clazz, j, finalValue, + i = 0; + + if ( isFunction( value ) ) { + return this.each( function( j ) { + jQuery( this ).addClass( value.call( this, j, getClass( this ) ) ); + } ); + } + + classes = classesToArray( value ); + + if ( classes.length ) { + while ( ( elem = this[ i++ ] ) ) { + curValue = getClass( elem ); + cur = elem.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " ); + + if ( cur ) { + j = 0; + while ( ( clazz = classes[ j++ ] ) ) { + if ( cur.indexOf( " " + clazz + " " ) < 0 ) { + cur += clazz + " "; + } + } + + // Only assign if different to avoid unneeded rendering. + finalValue = stripAndCollapse( cur ); + if ( curValue !== finalValue ) { + elem.setAttribute( "class", finalValue ); + } + } + } + } + + return this; + }, + + removeClass: function( value ) { + var classes, elem, cur, curValue, clazz, j, finalValue, + i = 0; + + if ( isFunction( value ) ) { + return this.each( function( j ) { + jQuery( this ).removeClass( value.call( this, j, getClass( this ) ) ); + } ); + } + + if ( !arguments.length ) { + return this.attr( "class", "" ); + } + + classes = classesToArray( value ); + + if ( classes.length ) { + while ( ( elem = this[ i++ ] ) ) { + curValue = getClass( elem ); + + // This expression is here for better compressibility (see addClass) + cur = elem.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " ); + + if ( cur ) { + j = 0; + while ( ( clazz = classes[ j++ ] ) ) { + + // Remove *all* instances + while ( cur.indexOf( " " + clazz + " " ) > -1 ) { + cur = cur.replace( " " + clazz + " ", " " ); + } + } + + // Only assign if different to avoid unneeded rendering. + finalValue = stripAndCollapse( cur ); + if ( curValue !== finalValue ) { + elem.setAttribute( "class", finalValue ); + } + } + } + } + + return this; + }, + + toggleClass: function( value, stateVal ) { + var type = typeof value, + isValidValue = type === "string" || Array.isArray( value ); + + if ( typeof stateVal === "boolean" && isValidValue ) { + return stateVal ? this.addClass( value ) : this.removeClass( value ); + } + + if ( isFunction( value ) ) { + return this.each( function( i ) { + jQuery( this ).toggleClass( + value.call( this, i, getClass( this ), stateVal ), + stateVal + ); + } ); + } + + return this.each( function() { + var className, i, self, classNames; + + if ( isValidValue ) { + + // Toggle individual class names + i = 0; + self = jQuery( this ); + classNames = classesToArray( value ); + + while ( ( className = classNames[ i++ ] ) ) { + + // Check each className given, space separated list + if ( self.hasClass( className ) ) { + self.removeClass( className ); + } else { + self.addClass( className ); + } + } + + // Toggle whole class name + } else if ( value === undefined || type === "boolean" ) { + className = getClass( this ); + if ( className ) { + + // Store className if set + dataPriv.set( this, "__className__", className ); + } + + // If the element has a class name or if we're passed `false`, + // then remove the whole classname (if there was one, the above saved it). + // Otherwise bring back whatever was previously saved (if anything), + // falling back to the empty string if nothing was stored. + if ( this.setAttribute ) { + this.setAttribute( "class", + className || value === false ? + "" : + dataPriv.get( this, "__className__" ) || "" + ); + } + } + } ); + }, + + hasClass: function( selector ) { + var className, elem, + i = 0; + + className = " " + selector + " "; + while ( ( elem = this[ i++ ] ) ) { + if ( elem.nodeType === 1 && + ( " " + stripAndCollapse( getClass( elem ) ) + " " ).indexOf( className ) > -1 ) { + return true; + } + } + + return false; + } +} ); + + + + +var rreturn = /\r/g; + +jQuery.fn.extend( { + val: function( value ) { + var hooks, ret, valueIsFunction, + elem = this[ 0 ]; + + if ( !arguments.length ) { + if ( elem ) { + hooks = jQuery.valHooks[ elem.type ] || + jQuery.valHooks[ elem.nodeName.toLowerCase() ]; + + if ( hooks && + "get" in hooks && + ( ret = hooks.get( elem, "value" ) ) !== undefined + ) { + return ret; + } + + ret = elem.value; + + // Handle most common string cases + if ( typeof ret === "string" ) { + return ret.replace( rreturn, "" ); + } + + // Handle cases where value is null/undef or number + return ret == null ? "" : ret; + } + + return; + } + + valueIsFunction = isFunction( value ); + + return this.each( function( i ) { + var val; + + if ( this.nodeType !== 1 ) { + return; + } + + if ( valueIsFunction ) { + val = value.call( this, i, jQuery( this ).val() ); + } else { + val = value; + } + + // Treat null/undefined as ""; convert numbers to string + if ( val == null ) { + val = ""; + + } else if ( typeof val === "number" ) { + val += ""; + + } else if ( Array.isArray( val ) ) { + val = jQuery.map( val, function( value ) { + return value == null ? "" : value + ""; + } ); + } + + hooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ]; + + // If set returns undefined, fall back to normal setting + if ( !hooks || !( "set" in hooks ) || hooks.set( this, val, "value" ) === undefined ) { + this.value = val; + } + } ); + } +} ); + +jQuery.extend( { + valHooks: { + option: { + get: function( elem ) { + + var val = jQuery.find.attr( elem, "value" ); + return val != null ? + val : + + // Support: IE <=10 - 11 only + // option.text throws exceptions (#14686, #14858) + // Strip and collapse whitespace + // https://html.spec.whatwg.org/#strip-and-collapse-whitespace + stripAndCollapse( jQuery.text( elem ) ); + } + }, + select: { + get: function( elem ) { + var value, option, i, + options = elem.options, + index = elem.selectedIndex, + one = elem.type === "select-one", + values = one ? null : [], + max = one ? index + 1 : options.length; + + if ( index < 0 ) { + i = max; + + } else { + i = one ? index : 0; + } + + // Loop through all the selected options + for ( ; i < max; i++ ) { + option = options[ i ]; + + // Support: IE <=9 only + // IE8-9 doesn't update selected after form reset (#2551) + if ( ( option.selected || i === index ) && + + // Don't return options that are disabled or in a disabled optgroup + !option.disabled && + ( !option.parentNode.disabled || + !nodeName( option.parentNode, "optgroup" ) ) ) { + + // Get the specific value for the option + value = jQuery( option ).val(); + + // We don't need an array for one selects + if ( one ) { + return value; + } + + // Multi-Selects return an array + values.push( value ); + } + } + + return values; + }, + + set: function( elem, value ) { + var optionSet, option, + options = elem.options, + values = jQuery.makeArray( value ), + i = options.length; + + while ( i-- ) { + option = options[ i ]; + + /* eslint-disable no-cond-assign */ + + if ( option.selected = + jQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1 + ) { + optionSet = true; + } + + /* eslint-enable no-cond-assign */ + } + + // Force browsers to behave consistently when non-matching value is set + if ( !optionSet ) { + elem.selectedIndex = -1; + } + return values; + } + } + } +} ); + +// Radios and checkboxes getter/setter +jQuery.each( [ "radio", "checkbox" ], function() { + jQuery.valHooks[ this ] = { + set: function( elem, value ) { + if ( Array.isArray( value ) ) { + return ( elem.checked = jQuery.inArray( jQuery( elem ).val(), value ) > -1 ); + } + } + }; + if ( !support.checkOn ) { + jQuery.valHooks[ this ].get = function( elem ) { + return elem.getAttribute( "value" ) === null ? "on" : elem.value; + }; + } +} ); + + + + +// Return jQuery for attributes-only inclusion + + +support.focusin = "onfocusin" in window; + + +var rfocusMorph = /^(?:focusinfocus|focusoutblur)$/, + stopPropagationCallback = function( e ) { + e.stopPropagation(); + }; + +jQuery.extend( jQuery.event, { + + trigger: function( event, data, elem, onlyHandlers ) { + + var i, cur, tmp, bubbleType, ontype, handle, special, lastElement, + eventPath = [ elem || document ], + type = hasOwn.call( event, "type" ) ? event.type : event, + namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split( "." ) : []; + + cur = lastElement = tmp = elem = elem || document; + + // Don't do events on text and comment nodes + if ( elem.nodeType === 3 || elem.nodeType === 8 ) { + return; + } + + // focus/blur morphs to focusin/out; ensure we're not firing them right now + if ( rfocusMorph.test( type + jQuery.event.triggered ) ) { + return; + } + + if ( type.indexOf( "." ) > -1 ) { + + // Namespaced trigger; create a regexp to match event type in handle() + namespaces = type.split( "." ); + type = namespaces.shift(); + namespaces.sort(); + } + ontype = type.indexOf( ":" ) < 0 && "on" + type; + + // Caller can pass in a jQuery.Event object, Object, or just an event type string + event = event[ jQuery.expando ] ? + event : + new jQuery.Event( type, typeof event === "object" && event ); + + // Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true) + event.isTrigger = onlyHandlers ? 2 : 3; + event.namespace = namespaces.join( "." ); + event.rnamespace = event.namespace ? + new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ) : + null; + + // Clean up the event in case it is being reused + event.result = undefined; + if ( !event.target ) { + event.target = elem; + } + + // Clone any incoming data and prepend the event, creating the handler arg list + data = data == null ? + [ event ] : + jQuery.makeArray( data, [ event ] ); + + // Allow special events to draw outside the lines + special = jQuery.event.special[ type ] || {}; + if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) { + return; + } + + // Determine event propagation path in advance, per W3C events spec (#9951) + // Bubble up to document, then to window; watch for a global ownerDocument var (#9724) + if ( !onlyHandlers && !special.noBubble && !isWindow( elem ) ) { + + bubbleType = special.delegateType || type; + if ( !rfocusMorph.test( bubbleType + type ) ) { + cur = cur.parentNode; + } + for ( ; cur; cur = cur.parentNode ) { + eventPath.push( cur ); + tmp = cur; + } + + // Only add window if we got to document (e.g., not plain obj or detached DOM) + if ( tmp === ( elem.ownerDocument || document ) ) { + eventPath.push( tmp.defaultView || tmp.parentWindow || window ); + } + } + + // Fire handlers on the event path + i = 0; + while ( ( cur = eventPath[ i++ ] ) && !event.isPropagationStopped() ) { + lastElement = cur; + event.type = i > 1 ? + bubbleType : + special.bindType || type; + + // jQuery handler + handle = ( dataPriv.get( cur, "events" ) || Object.create( null ) )[ event.type ] && + dataPriv.get( cur, "handle" ); + if ( handle ) { + handle.apply( cur, data ); + } + + // Native handler + handle = ontype && cur[ ontype ]; + if ( handle && handle.apply && acceptData( cur ) ) { + event.result = handle.apply( cur, data ); + if ( event.result === false ) { + event.preventDefault(); + } + } + } + event.type = type; + + // If nobody prevented the default action, do it now + if ( !onlyHandlers && !event.isDefaultPrevented() ) { + + if ( ( !special._default || + special._default.apply( eventPath.pop(), data ) === false ) && + acceptData( elem ) ) { + + // Call a native DOM method on the target with the same name as the event. + // Don't do default actions on window, that's where global variables be (#6170) + if ( ontype && isFunction( elem[ type ] ) && !isWindow( elem ) ) { + + // Don't re-trigger an onFOO event when we call its FOO() method + tmp = elem[ ontype ]; + + if ( tmp ) { + elem[ ontype ] = null; + } + + // Prevent re-triggering of the same event, since we already bubbled it above + jQuery.event.triggered = type; + + if ( event.isPropagationStopped() ) { + lastElement.addEventListener( type, stopPropagationCallback ); + } + + elem[ type ](); + + if ( event.isPropagationStopped() ) { + lastElement.removeEventListener( type, stopPropagationCallback ); + } + + jQuery.event.triggered = undefined; + + if ( tmp ) { + elem[ ontype ] = tmp; + } + } + } + } + + return event.result; + }, + + // Piggyback on a donor event to simulate a different one + // Used only for `focus(in | out)` events + simulate: function( type, elem, event ) { + var e = jQuery.extend( + new jQuery.Event(), + event, + { + type: type, + isSimulated: true + } + ); + + jQuery.event.trigger( e, null, elem ); + } + +} ); + +jQuery.fn.extend( { + + trigger: function( type, data ) { + return this.each( function() { + jQuery.event.trigger( type, data, this ); + } ); + }, + triggerHandler: function( type, data ) { + var elem = this[ 0 ]; + if ( elem ) { + return jQuery.event.trigger( type, data, elem, true ); + } + } +} ); + + +// Support: Firefox <=44 +// Firefox doesn't have focus(in | out) events +// Related ticket - https://bugzilla.mozilla.org/show_bug.cgi?id=687787 +// +// Support: Chrome <=48 - 49, Safari <=9.0 - 9.1 +// focus(in | out) events fire after focus & blur events, +// which is spec violation - http://www.w3.org/TR/DOM-Level-3-Events/#events-focusevent-event-order +// Related ticket - https://bugs.chromium.org/p/chromium/issues/detail?id=449857 +if ( !support.focusin ) { + jQuery.each( { focus: "focusin", blur: "focusout" }, function( orig, fix ) { + + // Attach a single capturing handler on the document while someone wants focusin/focusout + var handler = function( event ) { + jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ) ); + }; + + jQuery.event.special[ fix ] = { + setup: function() { + + // Handle: regular nodes (via `this.ownerDocument`), window + // (via `this.document`) & document (via `this`). + var doc = this.ownerDocument || this.document || this, + attaches = dataPriv.access( doc, fix ); + + if ( !attaches ) { + doc.addEventListener( orig, handler, true ); + } + dataPriv.access( doc, fix, ( attaches || 0 ) + 1 ); + }, + teardown: function() { + var doc = this.ownerDocument || this.document || this, + attaches = dataPriv.access( doc, fix ) - 1; + + if ( !attaches ) { + doc.removeEventListener( orig, handler, true ); + dataPriv.remove( doc, fix ); + + } else { + dataPriv.access( doc, fix, attaches ); + } + } + }; + } ); +} +var location = window.location; + +var nonce = { guid: Date.now() }; + +var rquery = ( /\?/ ); + + + +// Cross-browser xml parsing +jQuery.parseXML = function( data ) { + var xml, parserErrorElem; + if ( !data || typeof data !== "string" ) { + return null; + } + + // Support: IE 9 - 11 only + // IE throws on parseFromString with invalid input. + try { + xml = ( new window.DOMParser() ).parseFromString( data, "text/xml" ); + } catch ( e ) {} + + parserErrorElem = xml && xml.getElementsByTagName( "parsererror" )[ 0 ]; + if ( !xml || parserErrorElem ) { + jQuery.error( "Invalid XML: " + ( + parserErrorElem ? + jQuery.map( parserErrorElem.childNodes, function( el ) { + return el.textContent; + } ).join( "\n" ) : + data + ) ); + } + return xml; +}; + + +var + rbracket = /\[\]$/, + rCRLF = /\r?\n/g, + rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i, + rsubmittable = /^(?:input|select|textarea|keygen)/i; + +function buildParams( prefix, obj, traditional, add ) { + var name; + + if ( Array.isArray( obj ) ) { + + // Serialize array item. + jQuery.each( obj, function( i, v ) { + if ( traditional || rbracket.test( prefix ) ) { + + // Treat each array item as a scalar. + add( prefix, v ); + + } else { + + // Item is non-scalar (array or object), encode its numeric index. + buildParams( + prefix + "[" + ( typeof v === "object" && v != null ? i : "" ) + "]", + v, + traditional, + add + ); + } + } ); + + } else if ( !traditional && toType( obj ) === "object" ) { + + // Serialize object item. + for ( name in obj ) { + buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add ); + } + + } else { + + // Serialize scalar item. + add( prefix, obj ); + } +} + +// Serialize an array of form elements or a set of +// key/values into a query string +jQuery.param = function( a, traditional ) { + var prefix, + s = [], + add = function( key, valueOrFunction ) { + + // If value is a function, invoke it and use its return value + var value = isFunction( valueOrFunction ) ? + valueOrFunction() : + valueOrFunction; + + s[ s.length ] = encodeURIComponent( key ) + "=" + + encodeURIComponent( value == null ? "" : value ); + }; + + if ( a == null ) { + return ""; + } + + // If an array was passed in, assume that it is an array of form elements. + if ( Array.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) { + + // Serialize the form elements + jQuery.each( a, function() { + add( this.name, this.value ); + } ); + + } else { + + // If traditional, encode the "old" way (the way 1.3.2 or older + // did it), otherwise encode params recursively. + for ( prefix in a ) { + buildParams( prefix, a[ prefix ], traditional, add ); + } + } + + // Return the resulting serialization + return s.join( "&" ); +}; + +jQuery.fn.extend( { + serialize: function() { + return jQuery.param( this.serializeArray() ); + }, + serializeArray: function() { + return this.map( function() { + + // Can add propHook for "elements" to filter or add form elements + var elements = jQuery.prop( this, "elements" ); + return elements ? jQuery.makeArray( elements ) : this; + } ).filter( function() { + var type = this.type; + + // Use .is( ":disabled" ) so that fieldset[disabled] works + return this.name && !jQuery( this ).is( ":disabled" ) && + rsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) && + ( this.checked || !rcheckableType.test( type ) ); + } ).map( function( _i, elem ) { + var val = jQuery( this ).val(); + + if ( val == null ) { + return null; + } + + if ( Array.isArray( val ) ) { + return jQuery.map( val, function( val ) { + return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; + } ); + } + + return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; + } ).get(); + } +} ); + + +var + r20 = /%20/g, + rhash = /#.*$/, + rantiCache = /([?&])_=[^&]*/, + rheaders = /^(.*?):[ \t]*([^\r\n]*)$/mg, + + // #7653, #8125, #8152: local protocol detection + rlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/, + rnoContent = /^(?:GET|HEAD)$/, + rprotocol = /^\/\//, + + /* Prefilters + * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example) + * 2) These are called: + * - BEFORE asking for a transport + * - AFTER param serialization (s.data is a string if s.processData is true) + * 3) key is the dataType + * 4) the catchall symbol "*" can be used + * 5) execution will start with transport dataType and THEN continue down to "*" if needed + */ + prefilters = {}, + + /* Transports bindings + * 1) key is the dataType + * 2) the catchall symbol "*" can be used + * 3) selection will start with transport dataType and THEN go to "*" if needed + */ + transports = {}, + + // Avoid comment-prolog char sequence (#10098); must appease lint and evade compression + allTypes = "*/".concat( "*" ), + + // Anchor tag for parsing the document origin + originAnchor = document.createElement( "a" ); + +originAnchor.href = location.href; + +// Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport +function addToPrefiltersOrTransports( structure ) { + + // dataTypeExpression is optional and defaults to "*" + return function( dataTypeExpression, func ) { + + if ( typeof dataTypeExpression !== "string" ) { + func = dataTypeExpression; + dataTypeExpression = "*"; + } + + var dataType, + i = 0, + dataTypes = dataTypeExpression.toLowerCase().match( rnothtmlwhite ) || []; + + if ( isFunction( func ) ) { + + // For each dataType in the dataTypeExpression + while ( ( dataType = dataTypes[ i++ ] ) ) { + + // Prepend if requested + if ( dataType[ 0 ] === "+" ) { + dataType = dataType.slice( 1 ) || "*"; + ( structure[ dataType ] = structure[ dataType ] || [] ).unshift( func ); + + // Otherwise append + } else { + ( structure[ dataType ] = structure[ dataType ] || [] ).push( func ); + } + } + } + }; +} + +// Base inspection function for prefilters and transports +function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) { + + var inspected = {}, + seekingTransport = ( structure === transports ); + + function inspect( dataType ) { + var selected; + inspected[ dataType ] = true; + jQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) { + var dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR ); + if ( typeof dataTypeOrTransport === "string" && + !seekingTransport && !inspected[ dataTypeOrTransport ] ) { + + options.dataTypes.unshift( dataTypeOrTransport ); + inspect( dataTypeOrTransport ); + return false; + } else if ( seekingTransport ) { + return !( selected = dataTypeOrTransport ); + } + } ); + return selected; + } + + return inspect( options.dataTypes[ 0 ] ) || !inspected[ "*" ] && inspect( "*" ); +} + +// A special extend for ajax options +// that takes "flat" options (not to be deep extended) +// Fixes #9887 +function ajaxExtend( target, src ) { + var key, deep, + flatOptions = jQuery.ajaxSettings.flatOptions || {}; + + for ( key in src ) { + if ( src[ key ] !== undefined ) { + ( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ]; + } + } + if ( deep ) { + jQuery.extend( true, target, deep ); + } + + return target; +} + +/* Handles responses to an ajax request: + * - finds the right dataType (mediates between content-type and expected dataType) + * - returns the corresponding response + */ +function ajaxHandleResponses( s, jqXHR, responses ) { + + var ct, type, finalDataType, firstDataType, + contents = s.contents, + dataTypes = s.dataTypes; + + // Remove auto dataType and get content-type in the process + while ( dataTypes[ 0 ] === "*" ) { + dataTypes.shift(); + if ( ct === undefined ) { + ct = s.mimeType || jqXHR.getResponseHeader( "Content-Type" ); + } + } + + // Check if we're dealing with a known content-type + if ( ct ) { + for ( type in contents ) { + if ( contents[ type ] && contents[ type ].test( ct ) ) { + dataTypes.unshift( type ); + break; + } + } + } + + // Check to see if we have a response for the expected dataType + if ( dataTypes[ 0 ] in responses ) { + finalDataType = dataTypes[ 0 ]; + } else { + + // Try convertible dataTypes + for ( type in responses ) { + if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[ 0 ] ] ) { + finalDataType = type; + break; + } + if ( !firstDataType ) { + firstDataType = type; + } + } + + // Or just use first one + finalDataType = finalDataType || firstDataType; + } + + // If we found a dataType + // We add the dataType to the list if needed + // and return the corresponding response + if ( finalDataType ) { + if ( finalDataType !== dataTypes[ 0 ] ) { + dataTypes.unshift( finalDataType ); + } + return responses[ finalDataType ]; + } +} + +/* Chain conversions given the request and the original response + * Also sets the responseXXX fields on the jqXHR instance + */ +function ajaxConvert( s, response, jqXHR, isSuccess ) { + var conv2, current, conv, tmp, prev, + converters = {}, + + // Work with a copy of dataTypes in case we need to modify it for conversion + dataTypes = s.dataTypes.slice(); + + // Create converters map with lowercased keys + if ( dataTypes[ 1 ] ) { + for ( conv in s.converters ) { + converters[ conv.toLowerCase() ] = s.converters[ conv ]; + } + } + + current = dataTypes.shift(); + + // Convert to each sequential dataType + while ( current ) { + + if ( s.responseFields[ current ] ) { + jqXHR[ s.responseFields[ current ] ] = response; + } + + // Apply the dataFilter if provided + if ( !prev && isSuccess && s.dataFilter ) { + response = s.dataFilter( response, s.dataType ); + } + + prev = current; + current = dataTypes.shift(); + + if ( current ) { + + // There's only work to do if current dataType is non-auto + if ( current === "*" ) { + + current = prev; + + // Convert response if prev dataType is non-auto and differs from current + } else if ( prev !== "*" && prev !== current ) { + + // Seek a direct converter + conv = converters[ prev + " " + current ] || converters[ "* " + current ]; + + // If none found, seek a pair + if ( !conv ) { + for ( conv2 in converters ) { + + // If conv2 outputs current + tmp = conv2.split( " " ); + if ( tmp[ 1 ] === current ) { + + // If prev can be converted to accepted input + conv = converters[ prev + " " + tmp[ 0 ] ] || + converters[ "* " + tmp[ 0 ] ]; + if ( conv ) { + + // Condense equivalence converters + if ( conv === true ) { + conv = converters[ conv2 ]; + + // Otherwise, insert the intermediate dataType + } else if ( converters[ conv2 ] !== true ) { + current = tmp[ 0 ]; + dataTypes.unshift( tmp[ 1 ] ); + } + break; + } + } + } + } + + // Apply converter (if not an equivalence) + if ( conv !== true ) { + + // Unless errors are allowed to bubble, catch and return them + if ( conv && s.throws ) { + response = conv( response ); + } else { + try { + response = conv( response ); + } catch ( e ) { + return { + state: "parsererror", + error: conv ? e : "No conversion from " + prev + " to " + current + }; + } + } + } + } + } + } + + return { state: "success", data: response }; +} + +jQuery.extend( { + + // Counter for holding the number of active queries + active: 0, + + // Last-Modified header cache for next request + lastModified: {}, + etag: {}, + + ajaxSettings: { + url: location.href, + type: "GET", + isLocal: rlocalProtocol.test( location.protocol ), + global: true, + processData: true, + async: true, + contentType: "application/x-www-form-urlencoded; charset=UTF-8", + + /* + timeout: 0, + data: null, + dataType: null, + username: null, + password: null, + cache: null, + throws: false, + traditional: false, + headers: {}, + */ + + accepts: { + "*": allTypes, + text: "text/plain", + html: "text/html", + xml: "application/xml, text/xml", + json: "application/json, text/javascript" + }, + + contents: { + xml: /\bxml\b/, + html: /\bhtml/, + json: /\bjson\b/ + }, + + responseFields: { + xml: "responseXML", + text: "responseText", + json: "responseJSON" + }, + + // Data converters + // Keys separate source (or catchall "*") and destination types with a single space + converters: { + + // Convert anything to text + "* text": String, + + // Text to html (true = no transformation) + "text html": true, + + // Evaluate text as a json expression + "text json": JSON.parse, + + // Parse text as xml + "text xml": jQuery.parseXML + }, + + // For options that shouldn't be deep extended: + // you can add your own custom options here if + // and when you create one that shouldn't be + // deep extended (see ajaxExtend) + flatOptions: { + url: true, + context: true + } + }, + + // Creates a full fledged settings object into target + // with both ajaxSettings and settings fields. + // If target is omitted, writes into ajaxSettings. + ajaxSetup: function( target, settings ) { + return settings ? + + // Building a settings object + ajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) : + + // Extending ajaxSettings + ajaxExtend( jQuery.ajaxSettings, target ); + }, + + ajaxPrefilter: addToPrefiltersOrTransports( prefilters ), + ajaxTransport: addToPrefiltersOrTransports( transports ), + + // Main method + ajax: function( url, options ) { + + // If url is an object, simulate pre-1.5 signature + if ( typeof url === "object" ) { + options = url; + url = undefined; + } + + // Force options to be an object + options = options || {}; + + var transport, + + // URL without anti-cache param + cacheURL, + + // Response headers + responseHeadersString, + responseHeaders, + + // timeout handle + timeoutTimer, + + // Url cleanup var + urlAnchor, + + // Request state (becomes false upon send and true upon completion) + completed, + + // To know if global events are to be dispatched + fireGlobals, + + // Loop variable + i, + + // uncached part of the url + uncached, + + // Create the final options object + s = jQuery.ajaxSetup( {}, options ), + + // Callbacks context + callbackContext = s.context || s, + + // Context for global events is callbackContext if it is a DOM node or jQuery collection + globalEventContext = s.context && + ( callbackContext.nodeType || callbackContext.jquery ) ? + jQuery( callbackContext ) : + jQuery.event, + + // Deferreds + deferred = jQuery.Deferred(), + completeDeferred = jQuery.Callbacks( "once memory" ), + + // Status-dependent callbacks + statusCode = s.statusCode || {}, + + // Headers (they are sent all at once) + requestHeaders = {}, + requestHeadersNames = {}, + + // Default abort message + strAbort = "canceled", + + // Fake xhr + jqXHR = { + readyState: 0, + + // Builds headers hashtable if needed + getResponseHeader: function( key ) { + var match; + if ( completed ) { + if ( !responseHeaders ) { + responseHeaders = {}; + while ( ( match = rheaders.exec( responseHeadersString ) ) ) { + responseHeaders[ match[ 1 ].toLowerCase() + " " ] = + ( responseHeaders[ match[ 1 ].toLowerCase() + " " ] || [] ) + .concat( match[ 2 ] ); + } + } + match = responseHeaders[ key.toLowerCase() + " " ]; + } + return match == null ? null : match.join( ", " ); + }, + + // Raw string + getAllResponseHeaders: function() { + return completed ? responseHeadersString : null; + }, + + // Caches the header + setRequestHeader: function( name, value ) { + if ( completed == null ) { + name = requestHeadersNames[ name.toLowerCase() ] = + requestHeadersNames[ name.toLowerCase() ] || name; + requestHeaders[ name ] = value; + } + return this; + }, + + // Overrides response content-type header + overrideMimeType: function( type ) { + if ( completed == null ) { + s.mimeType = type; + } + return this; + }, + + // Status-dependent callbacks + statusCode: function( map ) { + var code; + if ( map ) { + if ( completed ) { + + // Execute the appropriate callbacks + jqXHR.always( map[ jqXHR.status ] ); + } else { + + // Lazy-add the new callbacks in a way that preserves old ones + for ( code in map ) { + statusCode[ code ] = [ statusCode[ code ], map[ code ] ]; + } + } + } + return this; + }, + + // Cancel the request + abort: function( statusText ) { + var finalText = statusText || strAbort; + if ( transport ) { + transport.abort( finalText ); + } + done( 0, finalText ); + return this; + } + }; + + // Attach deferreds + deferred.promise( jqXHR ); + + // Add protocol if not provided (prefilters might expect it) + // Handle falsy url in the settings object (#10093: consistency with old signature) + // We also use the url parameter if available + s.url = ( ( url || s.url || location.href ) + "" ) + .replace( rprotocol, location.protocol + "//" ); + + // Alias method option to type as per ticket #12004 + s.type = options.method || options.type || s.method || s.type; + + // Extract dataTypes list + s.dataTypes = ( s.dataType || "*" ).toLowerCase().match( rnothtmlwhite ) || [ "" ]; + + // A cross-domain request is in order when the origin doesn't match the current origin. + if ( s.crossDomain == null ) { + urlAnchor = document.createElement( "a" ); + + // Support: IE <=8 - 11, Edge 12 - 15 + // IE throws exception on accessing the href property if url is malformed, + // e.g. http://example.com:80x/ + try { + urlAnchor.href = s.url; + + // Support: IE <=8 - 11 only + // Anchor's host property isn't correctly set when s.url is relative + urlAnchor.href = urlAnchor.href; + s.crossDomain = originAnchor.protocol + "//" + originAnchor.host !== + urlAnchor.protocol + "//" + urlAnchor.host; + } catch ( e ) { + + // If there is an error parsing the URL, assume it is crossDomain, + // it can be rejected by the transport if it is invalid + s.crossDomain = true; + } + } + + // Convert data if not already a string + if ( s.data && s.processData && typeof s.data !== "string" ) { + s.data = jQuery.param( s.data, s.traditional ); + } + + // Apply prefilters + inspectPrefiltersOrTransports( prefilters, s, options, jqXHR ); + + // If request was aborted inside a prefilter, stop there + if ( completed ) { + return jqXHR; + } + + // We can fire global events as of now if asked to + // Don't fire events if jQuery.event is undefined in an AMD-usage scenario (#15118) + fireGlobals = jQuery.event && s.global; + + // Watch for a new set of requests + if ( fireGlobals && jQuery.active++ === 0 ) { + jQuery.event.trigger( "ajaxStart" ); + } + + // Uppercase the type + s.type = s.type.toUpperCase(); + + // Determine if request has content + s.hasContent = !rnoContent.test( s.type ); + + // Save the URL in case we're toying with the If-Modified-Since + // and/or If-None-Match header later on + // Remove hash to simplify url manipulation + cacheURL = s.url.replace( rhash, "" ); + + // More options handling for requests with no content + if ( !s.hasContent ) { + + // Remember the hash so we can put it back + uncached = s.url.slice( cacheURL.length ); + + // If data is available and should be processed, append data to url + if ( s.data && ( s.processData || typeof s.data === "string" ) ) { + cacheURL += ( rquery.test( cacheURL ) ? "&" : "?" ) + s.data; + + // #9682: remove data so that it's not used in an eventual retry + delete s.data; + } + + // Add or update anti-cache param if needed + if ( s.cache === false ) { + cacheURL = cacheURL.replace( rantiCache, "$1" ); + uncached = ( rquery.test( cacheURL ) ? "&" : "?" ) + "_=" + ( nonce.guid++ ) + + uncached; + } + + // Put hash and anti-cache on the URL that will be requested (gh-1732) + s.url = cacheURL + uncached; + + // Change '%20' to '+' if this is encoded form body content (gh-2658) + } else if ( s.data && s.processData && + ( s.contentType || "" ).indexOf( "application/x-www-form-urlencoded" ) === 0 ) { + s.data = s.data.replace( r20, "+" ); + } + + // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. + if ( s.ifModified ) { + if ( jQuery.lastModified[ cacheURL ] ) { + jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ cacheURL ] ); + } + if ( jQuery.etag[ cacheURL ] ) { + jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ cacheURL ] ); + } + } + + // Set the correct header, if data is being sent + if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) { + jqXHR.setRequestHeader( "Content-Type", s.contentType ); + } + + // Set the Accepts header for the server, depending on the dataType + jqXHR.setRequestHeader( + "Accept", + s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[ 0 ] ] ? + s.accepts[ s.dataTypes[ 0 ] ] + + ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) : + s.accepts[ "*" ] + ); + + // Check for headers option + for ( i in s.headers ) { + jqXHR.setRequestHeader( i, s.headers[ i ] ); + } + + // Allow custom headers/mimetypes and early abort + if ( s.beforeSend && + ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || completed ) ) { + + // Abort if not done already and return + return jqXHR.abort(); + } + + // Aborting is no longer a cancellation + strAbort = "abort"; + + // Install callbacks on deferreds + completeDeferred.add( s.complete ); + jqXHR.done( s.success ); + jqXHR.fail( s.error ); + + // Get transport + transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR ); + + // If no transport, we auto-abort + if ( !transport ) { + done( -1, "No Transport" ); + } else { + jqXHR.readyState = 1; + + // Send global event + if ( fireGlobals ) { + globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] ); + } + + // If request was aborted inside ajaxSend, stop there + if ( completed ) { + return jqXHR; + } + + // Timeout + if ( s.async && s.timeout > 0 ) { + timeoutTimer = window.setTimeout( function() { + jqXHR.abort( "timeout" ); + }, s.timeout ); + } + + try { + completed = false; + transport.send( requestHeaders, done ); + } catch ( e ) { + + // Rethrow post-completion exceptions + if ( completed ) { + throw e; + } + + // Propagate others as results + done( -1, e ); + } + } + + // Callback for when everything is done + function done( status, nativeStatusText, responses, headers ) { + var isSuccess, success, error, response, modified, + statusText = nativeStatusText; + + // Ignore repeat invocations + if ( completed ) { + return; + } + + completed = true; + + // Clear timeout if it exists + if ( timeoutTimer ) { + window.clearTimeout( timeoutTimer ); + } + + // Dereference transport for early garbage collection + // (no matter how long the jqXHR object will be used) + transport = undefined; + + // Cache response headers + responseHeadersString = headers || ""; + + // Set readyState + jqXHR.readyState = status > 0 ? 4 : 0; + + // Determine if successful + isSuccess = status >= 200 && status < 300 || status === 304; + + // Get response data + if ( responses ) { + response = ajaxHandleResponses( s, jqXHR, responses ); + } + + // Use a noop converter for missing script but not if jsonp + if ( !isSuccess && + jQuery.inArray( "script", s.dataTypes ) > -1 && + jQuery.inArray( "json", s.dataTypes ) < 0 ) { + s.converters[ "text script" ] = function() {}; + } + + // Convert no matter what (that way responseXXX fields are always set) + response = ajaxConvert( s, response, jqXHR, isSuccess ); + + // If successful, handle type chaining + if ( isSuccess ) { + + // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. + if ( s.ifModified ) { + modified = jqXHR.getResponseHeader( "Last-Modified" ); + if ( modified ) { + jQuery.lastModified[ cacheURL ] = modified; + } + modified = jqXHR.getResponseHeader( "etag" ); + if ( modified ) { + jQuery.etag[ cacheURL ] = modified; + } + } + + // if no content + if ( status === 204 || s.type === "HEAD" ) { + statusText = "nocontent"; + + // if not modified + } else if ( status === 304 ) { + statusText = "notmodified"; + + // If we have data, let's convert it + } else { + statusText = response.state; + success = response.data; + error = response.error; + isSuccess = !error; + } + } else { + + // Extract error from statusText and normalize for non-aborts + error = statusText; + if ( status || !statusText ) { + statusText = "error"; + if ( status < 0 ) { + status = 0; + } + } + } + + // Set data for the fake xhr object + jqXHR.status = status; + jqXHR.statusText = ( nativeStatusText || statusText ) + ""; + + // Success/Error + if ( isSuccess ) { + deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] ); + } else { + deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] ); + } + + // Status-dependent callbacks + jqXHR.statusCode( statusCode ); + statusCode = undefined; + + if ( fireGlobals ) { + globalEventContext.trigger( isSuccess ? "ajaxSuccess" : "ajaxError", + [ jqXHR, s, isSuccess ? success : error ] ); + } + + // Complete + completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] ); + + if ( fireGlobals ) { + globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] ); + + // Handle the global AJAX counter + if ( !( --jQuery.active ) ) { + jQuery.event.trigger( "ajaxStop" ); + } + } + } + + return jqXHR; + }, + + getJSON: function( url, data, callback ) { + return jQuery.get( url, data, callback, "json" ); + }, + + getScript: function( url, callback ) { + return jQuery.get( url, undefined, callback, "script" ); + } +} ); + +jQuery.each( [ "get", "post" ], function( _i, method ) { + jQuery[ method ] = function( url, data, callback, type ) { + + // Shift arguments if data argument was omitted + if ( isFunction( data ) ) { + type = type || callback; + callback = data; + data = undefined; + } + + // The url can be an options object (which then must have .url) + return jQuery.ajax( jQuery.extend( { + url: url, + type: method, + dataType: type, + data: data, + success: callback + }, jQuery.isPlainObject( url ) && url ) ); + }; +} ); + +jQuery.ajaxPrefilter( function( s ) { + var i; + for ( i in s.headers ) { + if ( i.toLowerCase() === "content-type" ) { + s.contentType = s.headers[ i ] || ""; + } + } +} ); + + +jQuery._evalUrl = function( url, options, doc ) { + return jQuery.ajax( { + url: url, + + // Make this explicit, since user can override this through ajaxSetup (#11264) + type: "GET", + dataType: "script", + cache: true, + async: false, + global: false, + + // Only evaluate the response if it is successful (gh-4126) + // dataFilter is not invoked for failure responses, so using it instead + // of the default converter is kludgy but it works. + converters: { + "text script": function() {} + }, + dataFilter: function( response ) { + jQuery.globalEval( response, options, doc ); + } + } ); +}; + + +jQuery.fn.extend( { + wrapAll: function( html ) { + var wrap; + + if ( this[ 0 ] ) { + if ( isFunction( html ) ) { + html = html.call( this[ 0 ] ); + } + + // The elements to wrap the target around + wrap = jQuery( html, this[ 0 ].ownerDocument ).eq( 0 ).clone( true ); + + if ( this[ 0 ].parentNode ) { + wrap.insertBefore( this[ 0 ] ); + } + + wrap.map( function() { + var elem = this; + + while ( elem.firstElementChild ) { + elem = elem.firstElementChild; + } + + return elem; + } ).append( this ); + } + + return this; + }, + + wrapInner: function( html ) { + if ( isFunction( html ) ) { + return this.each( function( i ) { + jQuery( this ).wrapInner( html.call( this, i ) ); + } ); + } + + return this.each( function() { + var self = jQuery( this ), + contents = self.contents(); + + if ( contents.length ) { + contents.wrapAll( html ); + + } else { + self.append( html ); + } + } ); + }, + + wrap: function( html ) { + var htmlIsFunction = isFunction( html ); + + return this.each( function( i ) { + jQuery( this ).wrapAll( htmlIsFunction ? html.call( this, i ) : html ); + } ); + }, + + unwrap: function( selector ) { + this.parent( selector ).not( "body" ).each( function() { + jQuery( this ).replaceWith( this.childNodes ); + } ); + return this; + } +} ); + + +jQuery.expr.pseudos.hidden = function( elem ) { + return !jQuery.expr.pseudos.visible( elem ); +}; +jQuery.expr.pseudos.visible = function( elem ) { + return !!( elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length ); +}; + + + + +jQuery.ajaxSettings.xhr = function() { + try { + return new window.XMLHttpRequest(); + } catch ( e ) {} +}; + +var xhrSuccessStatus = { + + // File protocol always yields status code 0, assume 200 + 0: 200, + + // Support: IE <=9 only + // #1450: sometimes IE returns 1223 when it should be 204 + 1223: 204 + }, + xhrSupported = jQuery.ajaxSettings.xhr(); + +support.cors = !!xhrSupported && ( "withCredentials" in xhrSupported ); +support.ajax = xhrSupported = !!xhrSupported; + +jQuery.ajaxTransport( function( options ) { + var callback, errorCallback; + + // Cross domain only allowed if supported through XMLHttpRequest + if ( support.cors || xhrSupported && !options.crossDomain ) { + return { + send: function( headers, complete ) { + var i, + xhr = options.xhr(); + + xhr.open( + options.type, + options.url, + options.async, + options.username, + options.password + ); + + // Apply custom fields if provided + if ( options.xhrFields ) { + for ( i in options.xhrFields ) { + xhr[ i ] = options.xhrFields[ i ]; + } + } + + // Override mime type if needed + if ( options.mimeType && xhr.overrideMimeType ) { + xhr.overrideMimeType( options.mimeType ); + } + + // X-Requested-With header + // For cross-domain requests, seeing as conditions for a preflight are + // akin to a jigsaw puzzle, we simply never set it to be sure. + // (it can always be set on a per-request basis or even using ajaxSetup) + // For same-domain requests, won't change header if already provided. + if ( !options.crossDomain && !headers[ "X-Requested-With" ] ) { + headers[ "X-Requested-With" ] = "XMLHttpRequest"; + } + + // Set headers + for ( i in headers ) { + xhr.setRequestHeader( i, headers[ i ] ); + } + + // Callback + callback = function( type ) { + return function() { + if ( callback ) { + callback = errorCallback = xhr.onload = + xhr.onerror = xhr.onabort = xhr.ontimeout = + xhr.onreadystatechange = null; + + if ( type === "abort" ) { + xhr.abort(); + } else if ( type === "error" ) { + + // Support: IE <=9 only + // On a manual native abort, IE9 throws + // errors on any property access that is not readyState + if ( typeof xhr.status !== "number" ) { + complete( 0, "error" ); + } else { + complete( + + // File: protocol always yields status 0; see #8605, #14207 + xhr.status, + xhr.statusText + ); + } + } else { + complete( + xhrSuccessStatus[ xhr.status ] || xhr.status, + xhr.statusText, + + // Support: IE <=9 only + // IE9 has no XHR2 but throws on binary (trac-11426) + // For XHR2 non-text, let the caller handle it (gh-2498) + ( xhr.responseType || "text" ) !== "text" || + typeof xhr.responseText !== "string" ? + { binary: xhr.response } : + { text: xhr.responseText }, + xhr.getAllResponseHeaders() + ); + } + } + }; + }; + + // Listen to events + xhr.onload = callback(); + errorCallback = xhr.onerror = xhr.ontimeout = callback( "error" ); + + // Support: IE 9 only + // Use onreadystatechange to replace onabort + // to handle uncaught aborts + if ( xhr.onabort !== undefined ) { + xhr.onabort = errorCallback; + } else { + xhr.onreadystatechange = function() { + + // Check readyState before timeout as it changes + if ( xhr.readyState === 4 ) { + + // Allow onerror to be called first, + // but that will not handle a native abort + // Also, save errorCallback to a variable + // as xhr.onerror cannot be accessed + window.setTimeout( function() { + if ( callback ) { + errorCallback(); + } + } ); + } + }; + } + + // Create the abort callback + callback = callback( "abort" ); + + try { + + // Do send the request (this may raise an exception) + xhr.send( options.hasContent && options.data || null ); + } catch ( e ) { + + // #14683: Only rethrow if this hasn't been notified as an error yet + if ( callback ) { + throw e; + } + } + }, + + abort: function() { + if ( callback ) { + callback(); + } + } + }; + } +} ); + + + + +// Prevent auto-execution of scripts when no explicit dataType was provided (See gh-2432) +jQuery.ajaxPrefilter( function( s ) { + if ( s.crossDomain ) { + s.contents.script = false; + } +} ); + +// Install script dataType +jQuery.ajaxSetup( { + accepts: { + script: "text/javascript, application/javascript, " + + "application/ecmascript, application/x-ecmascript" + }, + contents: { + script: /\b(?:java|ecma)script\b/ + }, + converters: { + "text script": function( text ) { + jQuery.globalEval( text ); + return text; + } + } +} ); + +// Handle cache's special case and crossDomain +jQuery.ajaxPrefilter( "script", function( s ) { + if ( s.cache === undefined ) { + s.cache = false; + } + if ( s.crossDomain ) { + s.type = "GET"; + } +} ); + +// Bind script tag hack transport +jQuery.ajaxTransport( "script", function( s ) { + + // This transport only deals with cross domain or forced-by-attrs requests + if ( s.crossDomain || s.scriptAttrs ) { + var script, callback; + return { + send: function( _, complete ) { + script = jQuery( " + + + + + + + + + + + Skip to contents + + +
    +
    +

    Distance: analysis of distance sampling data

    +

    R-CMD-check CRAN (RStudio Mirror) Downloads CRAN Version Codecov test coverage

    +

    Distance is a simple way of fitting detection functions to distance sampling data for both line and point transects. Adjustment term selection, left and right truncation as well as monotonicity constraints and binning are supported. Abundance and density estimates can also be calculated (via a Horvitz-Thompson-like estimator) if survey area information is provided.

    +
    + +
    +

    Distance R package preferred citation +

    +
      +
    • Miller, D. L., Rexstad, E., Thomas, L., Marshall, L., & Laake, J. L. (2019). Distance Sampling in R. Journal of Statistical Software, 89(1), 1–28. DOI: 10.18637/jss.v089.i01 +
    • +
    +

    Consult the Articles for case studies of distance sampling analyses.

    +
    +
    +
    +

    Getting Distance + +

    +

    The easiest way to ensure you have the latest version of Distance, is to install devtools:

    +

    {r} install.packages("devtools")

    +

    then install Distance from Github:

    +

    {r} library(devtools) install_github("DistanceDevelopment/Distance")

    +
    + +
    +
    + + +
    + + + +
    +
    + + + + + + + diff --git a/docs/katex-auto.js b/docs/katex-auto.js new file mode 100644 index 0000000..20651d9 --- /dev/null +++ b/docs/katex-auto.js @@ -0,0 +1,14 @@ +// https://github.com/jgm/pandoc/blob/29fa97ab96b8e2d62d48326e1b949a71dc41f47a/src/Text/Pandoc/Writers/HTML.hs#L332-L345 +document.addEventListener("DOMContentLoaded", function () { + var mathElements = document.getElementsByClassName("math"); + var macros = []; + for (var i = 0; i < mathElements.length; i++) { + var texText = mathElements[i].firstChild; + if (mathElements[i].tagName == "SPAN") { + katex.render(texText.data, mathElements[i], { + displayMode: mathElements[i].classList.contains("display"), + throwOnError: false, + macros: macros, + fleqn: false + }); + }}}); diff --git a/docs/lightswitch.js b/docs/lightswitch.js new file mode 100644 index 0000000..9467125 --- /dev/null +++ b/docs/lightswitch.js @@ -0,0 +1,85 @@ + +/*! + * Color mode toggler for Bootstrap's docs (https://getbootstrap.com/) + * Copyright 2011-2023 The Bootstrap Authors + * Licensed under the Creative Commons Attribution 3.0 Unported License. + * Updates for {pkgdown} by the {bslib} authors, also licensed under CC-BY-3.0. + */ + +const getStoredTheme = () => localStorage.getItem('theme') +const setStoredTheme = theme => localStorage.setItem('theme', theme) + +const getPreferredTheme = () => { + const storedTheme = getStoredTheme() + if (storedTheme) { + return storedTheme + } + + return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light' +} + +const setTheme = theme => { + if (theme === 'auto') { + document.documentElement.setAttribute('data-bs-theme', (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light')) + } else { + document.documentElement.setAttribute('data-bs-theme', theme) + } +} + +function bsSetupThemeToggle () { + 'use strict' + + const showActiveTheme = (theme, focus = false) => { + var activeLabel, activeIcon; + + document.querySelectorAll('[data-bs-theme-value]').forEach(element => { + const buttonTheme = element.getAttribute('data-bs-theme-value') + const isActive = buttonTheme == theme + + element.classList.toggle('active', isActive) + element.setAttribute('aria-pressed', isActive) + + if (isActive) { + activeLabel = element.textContent; + activeIcon = element.querySelector('span').classList.value; + } + }) + + const themeSwitcher = document.querySelector('#dropdown-lightswitch') + if (!themeSwitcher) { + return + } + + themeSwitcher.setAttribute('aria-label', activeLabel) + themeSwitcher.querySelector('span').classList.value = activeIcon; + + if (focus) { + themeSwitcher.focus() + } + } + + window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', () => { + const storedTheme = getStoredTheme() + if (storedTheme !== 'light' && storedTheme !== 'dark') { + setTheme(getPreferredTheme()) + } + }) + + window.addEventListener('DOMContentLoaded', () => { + showActiveTheme(getPreferredTheme()) + + document + .querySelectorAll('[data-bs-theme-value]') + .forEach(toggle => { + toggle.addEventListener('click', () => { + const theme = toggle.getAttribute('data-bs-theme-value') + setTheme(theme) + setStoredTheme(theme) + showActiveTheme(theme, true) + }) + }) + }) +} + +setTheme(getPreferredTheme()); +bsSetupThemeToggle(); diff --git a/docs/link.svg b/docs/link.svg new file mode 100644 index 0000000..88ad827 --- /dev/null +++ b/docs/link.svg @@ -0,0 +1,12 @@ + + + + + + diff --git a/docs/news/index.html b/docs/news/index.html new file mode 100644 index 0000000..324fe81 --- /dev/null +++ b/docs/news/index.html @@ -0,0 +1,279 @@ + +Changelog • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Distance 2.0.0

    CRAN release: 2024-10-24

    +
    • Requires mrds 3.0.0. mrds is called by ds for fitting detection functions. In mrds there has been a change of optimizer used for CDS detection functions - a constraint solver slsqp now used. This removes the need for external optimizer MCDS.exe in most cases. Other minor changes to optimization have been implemented to improve reliability (see NEWS file of mrds for more info).
    • +
    • New argument mono_method added so that the previous constraint solver (solnp) can still be used. MCDS.exe is also still available if needed.
    • +
    +
    +

    Distance 1.0.9

    CRAN release: 2023-12-21

    +
    • Changed the default encounter rate estimator for point transect surveys from P3 to P2. (Issue #138)
    • +
    • Fixed bug which produced NA’s when stratum names came after ‘Total’ in the alphabet. (Issue #158)
    • +
    • Added additional documentation explaining the adjustment term options when covariates are in the model. (Issue #156)
    • +
    • Fixed dht bootstrap to work when distbegin and distend are supplied but not distance. (Issue #147)
    • +
    • Added a warning for the dht bootstrap when Sample.Label values are not unique across all strata. (Issue #157)
    • +
    • Distance 1.0.9 depends on mrds >= 2.3.0 due to re-named documentation page links.
    • +
    +
    +

    Distance 1.0.8

    CRAN release: 2023-07-17

    +
    • Support for using MCDS.exe from Distance for Windows to run analyses. You can now download MCDS.exe using mrds::download_MCDS_dot_exe run analyses using this engine, rather (or in tandem with) the usual R optimizers provided in mrds. ds will pick the best (by likelihood) and return that. See ?ds and ?“mcds-dot-exe” for more details.
    • +
    +
    +

    Distance 1.0.7

    CRAN release: 2022-11-15

    +
    +
    +

    Distance 1.0.6

    CRAN release: 2022-08-20

    +
    • Fix bug in auto binning data when using flatfile (#116)
    • +
    • convert.units in bootdht() was not properly implemented in previous release, fixed (#122)
    • +
    • fix bug in detection function variance estimation (#125)
    • +
    • fix bug in bootstrap where columns needed to be character (thanks to Nick Wilkinson for finding this)
    • +
    • fix bug in covered area calculation for dht2, this fixes incorrect density estimate under left truncation (#135)
    • +
    • experimental support for multiple detection functions in dht2, joint work T.J. Clark-Wolf, funded by Environment Canada. Note that now the object field is required in data supplied to dht2.
    • +
    +
    +

    Distance 1.0.5

    CRAN release: 2022-03-17

    +
    • To improve consistency in functions and arguments in the package, some functions and arguments have changed from . separation to _. An error is now thrown when the “old” arguments/functions using . are used. This error will be removed in Distance 1.0.6. +
      • create.bins() -> create_bins()
      • +
      • bootdht(): +
        • convert.units -> convert_units
        • +
      • +
      • ds(): +
        • dht.group -> dht_group
        • +
        • region.table -> region_table
        • +
        • sample.table -> sample_table
        • +
        • obs.table -> obs_table
        • +
        • convert.units -> convert_units
        • +
        • er.var -> er_var
        • +
        • debug.level -> debug_level
        • +
        • initial.values -> initial_values
        • +
        • max.adjustments -> max_adjustments
        • +
      • +
    • +
    • fix bootdht issue when cluster results were requests (#103)
    • +
    • improve flatfile documentation (thanks to Maggie Blake for pointing this out)
    • +
    • fixed bug in cutpoint calculations in create.bins (#108)
    • +
    • order argument to ds() is now only used to specify order, to fix a given number of adjustments use the new argument nadj (see ?ds for more info)
    • +
    • fix bug where polynomial adjustments started at the wrong order (2 rather than 4)
    • +
    +
    +

    Distance 1.0.4

    CRAN release: 2021-08-12

    +
    • fix bootdht issue where the arguments for ds() were not found
    • +
    • bootdht_Nhat_summarize now reports the stratum labels as well as their abundance estimates for ease of use
    • +
    • add function QAIC to calculate QAIC for overdispersed data, such as that from camera trap distance sampling
    • +
    • bootdht is now less verbose when cores>1
    • +
    • bootdht now accepts multipliers
    • +
    • bootdht multipliers can now be specified using the activity package, see ?make_activity_fun
    • +
    • fix issue in Hermite adjustment order calculation when length(order)>1
    • +
    • set.seed can now be used with bootdht in parallel to obtain reproducible bootstrap results
    • +
    +
    +

    Distance 1.0.3

    CRAN release: 2021-07-01

    +
    • fix bug in dht2 where warnings were thrown if object column was not in the flatfile (https://github.com/DistanceDevelopment/Distance/issues/83)
    • +
    • removed silent=TRUE in try() around model fitting to enable users to get error messages from mrds during fitting. Old behaviour can be recovered using quiet=TRUE argument to ds()
    • +
    • better handling of when models fail to converge during AIC adjustment term selection
    • +
    • documentation now in rmarkdown format
    • +
    • fix issue #85 when species was used in the detection function and for post-stratification. Thanks to jason-airst for reporting the bug.
    • +
    • fix dht2 bug where stratification=“replicate” variance estimation was 0 due to order of operations
    • +
    • fix dht2 bug where stratification=“effort_sum” encounter rate variance estimation, due to incorrect grouping of transects into strata. Thanks to Samantha Ball and Jamie McKaughan for reporting this issue.
    • +
    • bootdht can now run in parallel via the foreach/doParallel packages, see the cores argument.
    • +
    • multiple multipliers can now be specified, for example to have different creation/decay rates for each stratum
    • +
    • new argument er.method to ds(), allows further refinement of encounter rate variance calculation. Default 2 is as before, use er.method=1 to get results which match Distance for Windows.
    • +
    • fix issues with Satterthwaite degrees of freedom calculations when geographical stratification was used with clustered observations
    • +
    • Sample fraction may now be specified as a data.frame if fractions are different for each transect
    • +
    • Fix various bugs in dht2 when stratification=“replicate”, thanks to Sam Ball and Jamie McKaughan for reporting issues and testing.
    • +
    +
    +

    Distance 1.0.2

    CRAN release: 2020-12-01

    +
    • ds.gof is now deprecated for goodness-of-fit testing. gof_ds is now preferred.
    • +
    • add_df_covar_line (actually located in mrds) can now plot probability density functioins for point transects
    • +
    • bootdht can now use the progress package if installed to give an estimated time remaining for bootstraps (option progress_bar=“progress”). Alternatively no progress bar can be shown with progress_bar=“none”.
    • +
    +
    +

    Distance 1.0.1

    CRAN release: 2020-07-31

    +
    • fix bug in dht2 when object IDs were not specified in flatfile formatted data
    • +
    • fix bugs in bootdht where the function crashed if all models failed to fit and when the hessian couldn’t be computed
    • +
    • better checking of data$observer, thanks to Martin Biuw for pointing this out
    • +
    • fix bug in dht2 where the covered area was calculated incorrectly when left truncation was used for point transects
    • +
    • add example data for camera trap distance sampling, see ?DuikerCameraTrap for more information
    • +
    • Stratum area column (Area) is no longer required by ds(). If it is omitted density estimates are returned.
    • +
    • Fix bug when dht2 is used with pre-binned data. Thanks to Delphine Ducros for reporting this bug.
    • +
    • Fix to dht2 bugs when Innes et al estimator is used for encounter rate variance estimation
    • +
    • fix bootdht issue where convert.units argument was not handled properly
    • +
    +
    +

    Distance 1.0.0

    CRAN release: 2020-01-31

    +
    • call now saved in the model object as $call +
    • +
    • Added lots of example data sets
    • +
    • new abundance estimation via dht2! Handles more complex situations.
    • +
    • bootstrap variance estimation via bootdht
    • +
    • for more examples see http://examples.distancesampling.org +
    • +
    +
    +

    Distance 0.9.8

    CRAN release: 2019-05-01

    +
    • Includes reference and citation for paper on ‘Distance Sampling in R’.
    • +
    • AIC now works for multiple models at once (as it does for other model classes) thanks to Tiago Marques and Len Thomas for this suggestion.
    • +
    • Added examples to create.bins, ds.gof, gof_ds, summarize_ds_models, logLik.dsmodel and AIC.dsmodel. Thanks to a reviewer of our Journal of Statistical Software paper.
    • +
    • Parameters from previous fit are used as starting values for the next fit when AIC is used to select adjustments
    • +
    • when distbegin and distend were specified in the data but distance wasn’t, checkdata() threw an error. checkdata() now generates the distance column at the midpoint. Thanks to Tom for spotting this.
    • +
    • new argument to ds(), max.adjustments gives the maximum number of adjustment terms to add to the model when doing AIC term selection. Thanks to Oscar Dewhurst for the suggestion.
    • +
    +
    +

    Distance 0.9.7

    CRAN release: 2017-07-03

    +
    • summarize_ds_models now will only compare models that are allowed by AIC (all binning and truncation must be the same). Thanks to Carolin Tröger and Eric Rextad for highlighting this issue.
    • +
    • If there are numerical issues that cause NAs in the Hessian, ds() will not try to run dht() to estimate abundance (as it will fail), instead throws a message and returns only the detection function. Thanks to Steve Ahlswede for bringing this to our attention.
    • +
    +
    +

    Distance 0.9.6

    CRAN release: 2016-08-10

    +
    • Coefficients are called coefficients (not a mixture of coefficients and parameters) in summary() results
    • +
    • Added gof_ds() for easy access to goodness of fit testing and q-q plotting
    • +
    • Checking of truncation distance was checking via is.double rather than is.numeric. Thanks to Tiago Marques for spotting this!
    • +
    • Functions AIC() and logLik() now exist for quick extraction of AIC and log-likelihood values. Thanks to Tiago Marques for this suggestion.
    • +
    • Added amakihi (point transect) data
    • +
    • add extra documentation for objects in obs.table, thanks to Olivier Devineau for spotting this
    • +
    +
    +

    Distance 0.9.5

    +
    • Truncation by percentage now works when there are missing distances (i.e. when we are using flatfile). Thanks to Len Thomas for pointing out this bug.
    • +
    +
    +

    Distance 0.9.4

    CRAN release: 2015-07-29

    +
    • Object ID uniqueness stopped abundance estimation from working (since NA IDs were “not unique”).
    • +
    • Check that areas are consistently entered. This was problematic when areas were not entered identically for each region, but unique was used to extract the region table. Thanks to Katy Echave for finding this bug!
    • +
    • Monotonicity constraints were not applied during automated model selection. Thanks to Tiago Marques for spotting this.
    • +
    • AIC selection of adjustment terms goes up to 5 terms by default, as in DISTANCE. Thanks to Eric Rexstad for suggesting this.
    • +
    +
    +

    Distance 0.9.3

    CRAN release: 2015-02-05

    +
    • Updated tests to work with new unique object ID code.
    • +
    • Liberally sprinkled tests with suppressMessages()
    • +
    +
    +

    Distance 0.9.2

    CRAN release: 2014-09-16

    +
    • Now warning when columns are correctly named but not in the correct case. Thanks to Richard Borthwick for reporting this bug.
    • +
    • Now checks that object IDs are unique. Thanks to Ricardo Lima & Francisco Azevedo for highlighting this issue.
    • +
    +
    +

    Distance 0.9.1

    CRAN release: 2014-06-11

    +
    • Models with both covariates and adjustment terms can actually be specified – this was not fully implemented in previous version.
    • +
    • ds() now tells the user the models which is returned (rather than previously fitted model)
    • +
    • links to mrds documentation on optimisation issues
    • +
    +
    +

    Distance 0.9

    CRAN release: 2014-04-22

    +
    • Flat file support example, see ?flatfile
    • +
    • New data set: simulated minke whale data, see ?minke and ?flatfile for an example analysis
    • +
    • Models with both covariates and adjustment terms can be specified.
    • +
    • Default left truncation is now 0, default right truncation is now the largest observed distance or furthest bin end.
    • +
    +
    +

    Distance 0.8.1

    +
    • another fix to binning (redundant code/inconsistent definition between docs and code). (Thanks to Jason Roberts for finding this.)
    • +
    • binning would fail if there were NA distances, which might occur when using the simplified data tables
    • +
    • check implemented to ensure that samples have consistent (i.e. the same) effort (Eric Rexstad found this bug)
    • +
    • clarification that stratification only occurs at the abundance/density estimation stage (dht), rather than at the detection function modelling stage (thanks to Filipe Dias for this suggestion)
    • +
    • Setting order=0 is equivalent to adjustment=NULL to specify a detection function without adjustments. (Eric Rexstad brought this to my attention.)
    • +
    +
    +

    Distance 0.8.0

    CRAN release: 2014-01-09

    +
    • new simplified table data format (see ?ds)
    • +
    • bug in binning from cutpoints (thanks to Colin Beale for finding this)
    • +
    • removed percentage truncation for binned data, as it doesn’t really make sense
    • +
    +
    +

    Distance 0.7.4

    +
    • new initial values argument
    • +
    +
    +

    Distance 0.7.3

    CRAN release: 2013-08-19

    +
    • remove annoying crash when mrds failed to fit a model
    • +
    • NB the optimiser underlying mrds (optimx) has changed, update both of these packages to avoid issues.
    • +
    +
    +

    Distance 0.7.2

    CRAN release: 2013-07-04

    +
    • message tells the user the model that was selected
    • +
    +
    +

    Distance 0.7.1

    CRAN release: 2012-11-08

    +
    • debugging options
    • +
    • bug fixes (see github for further details)
    • +
    • automatic generation of adjustments did not generate any for poly/herm.
    • +
    +
    +

    Distance 0.7

    +
    • “width” is now default for scaling
    • +
    +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/pkgdown.js b/docs/pkgdown.js new file mode 100644 index 0000000..1a99c65 --- /dev/null +++ b/docs/pkgdown.js @@ -0,0 +1,162 @@ +/* http://gregfranko.com/blog/jquery-best-practices/ */ +(function($) { + $(function() { + + $('nav.navbar').headroom(); + + Toc.init({ + $nav: $("#toc"), + $scope: $("main h2, main h3, main h4, main h5, main h6") + }); + + if ($('#toc').length) { + $('body').scrollspy({ + target: '#toc', + offset: $("nav.navbar").outerHeight() + 1 + }); + } + + // Activate popovers + $('[data-bs-toggle="popover"]').popover({ + container: 'body', + html: true, + trigger: 'focus', + placement: "top", + sanitize: false, + }); + + $('[data-bs-toggle="tooltip"]').tooltip(); + + /* Clipboard --------------------------*/ + + function changeTooltipMessage(element, msg) { + var tooltipOriginalTitle=element.getAttribute('data-bs-original-title'); + element.setAttribute('data-bs-original-title', msg); + $(element).tooltip('show'); + element.setAttribute('data-bs-original-title', tooltipOriginalTitle); + } + + if(ClipboardJS.isSupported()) { + $(document).ready(function() { + var copyButton = ""; + + $("div.sourceCode").addClass("hasCopyButton"); + + // Insert copy buttons: + $(copyButton).prependTo(".hasCopyButton"); + + // Initialize tooltips: + $('.btn-copy-ex').tooltip({container: 'body'}); + + // Initialize clipboard: + var clipboard = new ClipboardJS('[data-clipboard-copy]', { + text: function(trigger) { + return trigger.parentNode.textContent.replace(/\n#>[^\n]*/g, ""); + } + }); + + clipboard.on('success', function(e) { + changeTooltipMessage(e.trigger, 'Copied!'); + e.clearSelection(); + }); + + clipboard.on('error', function(e) { + changeTooltipMessage(e.trigger,'Press Ctrl+C or Command+C to copy'); + }); + + }); + } + + /* Search marking --------------------------*/ + var url = new URL(window.location.href); + var toMark = url.searchParams.get("q"); + var mark = new Mark("main#main"); + if (toMark) { + mark.mark(toMark, { + accuracy: { + value: "complementary", + limiters: [",", ".", ":", "/"], + } + }); + } + + /* Search --------------------------*/ + /* Adapted from https://github.com/rstudio/bookdown/blob/2d692ba4b61f1e466c92e78fd712b0ab08c11d31/inst/resources/bs4_book/bs4_book.js#L25 */ + // Initialise search index on focus + var fuse; + $("#search-input").focus(async function(e) { + if (fuse) { + return; + } + + $(e.target).addClass("loading"); + var response = await fetch($("#search-input").data("search-index")); + var data = await response.json(); + + var options = { + keys: ["what", "text", "code"], + ignoreLocation: true, + threshold: 0.1, + includeMatches: true, + includeScore: true, + }; + fuse = new Fuse(data, options); + + $(e.target).removeClass("loading"); + }); + + // Use algolia autocomplete + var options = { + autoselect: true, + debug: true, + hint: false, + minLength: 2, + }; + var q; +async function searchFuse(query, callback) { + await fuse; + + var items; + if (!fuse) { + items = []; + } else { + q = query; + var results = fuse.search(query, { limit: 20 }); + items = results + .filter((x) => x.score <= 0.75) + .map((x) => x.item); + if (items.length === 0) { + items = [{dir:"Sorry 😿",previous_headings:"",title:"No results found.",what:"No results found.",path:window.location.href}]; + } + } + callback(items); +} + $("#search-input").autocomplete(options, [ + { + name: "content", + source: searchFuse, + templates: { + suggestion: (s) => { + if (s.title == s.what) { + return `${s.dir} >
    ${s.title}
    `; + } else if (s.previous_headings == "") { + return `${s.dir} >
    ${s.title}
    > ${s.what}`; + } else { + return `${s.dir} >
    ${s.title}
    > ${s.previous_headings} > ${s.what}`; + } + }, + }, + }, + ]).on('autocomplete:selected', function(event, s) { + window.location.href = s.path + "?q=" + q + "#" + s.id; + }); + }); +})(window.jQuery || window.$) + +document.addEventListener('keydown', function(event) { + // Check if the pressed key is '/' + if (event.key === '/') { + event.preventDefault(); // Prevent any default action associated with the '/' key + document.getElementById('search-input').focus(); // Set focus to the search input + } +}); diff --git a/docs/pkgdown.yml b/docs/pkgdown.yml new file mode 100644 index 0000000..c838dc9 --- /dev/null +++ b/docs/pkgdown.yml @@ -0,0 +1,18 @@ +pandoc: '3.5' +pkgdown: 2.1.1 +pkgdown_sha: ~ +articles: + web-only/CTDS/camera-distill: web-only/CTDS/camera-distill.html + covariates-distill: covariates-distill.html + web-only/cues/cuecounts-distill: web-only/cues/cuecounts-distill.html + web-only/differences/differences: web-only/differences/differences.html + lines-distill: lines-distill.html + web-only/alt-optimise/mcds-dot-exe: web-only/alt-optimise/mcds-dot-exe.html + web-only/multipliers/multipliers-distill: web-only/multipliers/multipliers-distill.html + web-only/multispecies/multispecies-multioccasion-analysis: web-only/multispecies/multispecies-multioccasion-analysis.html + web-only/points/pointtransects-distill: web-only/points/pointtransects-distill.html + web-only/groupsize/Remedy-size-bias-for-dolphin-surveys: web-only/groupsize/Remedy-size-bias-for-dolphin-surveys.html + species-covariate-distill: species-covariate-distill.html + web-only/strata/strata-distill: web-only/strata/strata-distill.html + web-only/variance/variance-distill: web-only/variance/variance-distill.html +last_built: 2024-11-18T15:07Z diff --git a/docs/reference/AIC.dsmodel.html b/docs/reference/AIC.dsmodel.html new file mode 100644 index 0000000..f57a249 --- /dev/null +++ b/docs/reference/AIC.dsmodel.html @@ -0,0 +1,116 @@ + +Akaike's An Information Criterion for detection functions — AIC.dsmodel • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Extract the AIC from a fitted detection function.

    +
    + +
    +

    Usage

    +
    # S3 method for class 'dsmodel'
    +AIC(object, ..., k = 2)
    +
    + +
    +

    Arguments

    + + +
    object
    +

    a fitted detection function object

    + + +
    ...
    +

    optionally more fitted model objects.

    + + +
    k
    +

    penalty per parameter to be used; the default k = 2 is the +"classical" AIC

    + +
    +
    +

    Author

    +

    David L Miller

    +
    + +
    +

    Examples

    +
    if (FALSE) { # \dontrun{
    +library(Distance)
    +data(minke)
    +model <- ds(minke, truncation=4)
    +model_hr <- ds(minke, truncation=4, key="hr")
    +# extract the AIC for 2 models
    +AIC(model, model_hr)
    +} # }
    +
    +
    +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/ClusterExercise.html b/docs/reference/ClusterExercise.html new file mode 100644 index 0000000..50181da --- /dev/null +++ b/docs/reference/ClusterExercise.html @@ -0,0 +1,110 @@ + +Simulated minke whale data with cluster size — ClusterExercise • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Data simulated from models fitted to 1992/1993 Southern Hemisphere minke +whale data collected by the International Whaling Commission. See Branch and +Butterworth (2001) for survey details (survey design is shown in figure +1(e)). Data simulated by David Borchers.

    +
    + + +
    +

    Format

    +

    data.frame with 99 observations of 9 variables:

    • Region.Label stratum label ("North" or "South")

    • +
    • Area stratum area (square nautical mile)

    • +
    • Sample.Label transect identifier

    • +
    • Effort transect length (nautical mile)

    • +
    • object unique object ID

    • +
    • distance observed distance (nautical mile)

    • +
    • Cluster.strat strata based on cluster size: 1, 2 and 3+

    • +
    • size cluster size

    • +
    • Study.Area name of study area

    • +
    +
    +

    References

    +

    Branch, T.A. and D.S. Butterworth. (2001) Southern Hemisphere +minke whales: standardised abundance estimates from the 1978/79 to 1997/98 +IDCR-SOWER surveys. Journal of Cetacean Research and Management 3(2): +143-174

    +

    Hedley, S.L., and S.T. Buckland. (2004) Spatial models for line transect +sampling. Journal of Agricultural, Biological, and Environmental Statistics +9: 181-199. doi:10.1198/1085711043578 +.

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/CueCountingExample.html b/docs/reference/CueCountingExample.html new file mode 100644 index 0000000..4ef8e0b --- /dev/null +++ b/docs/reference/CueCountingExample.html @@ -0,0 +1,112 @@ + +Cue counts of whale blows — CueCountingExample • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Cues are treated as an indirect count, requiring the use of multipliers.

    +
    + + +
    +

    Format

    +

    A data.frame with 109 rows and 15 variables.

    • `Region.Label stratum labels

    • +
    • Area size (km^2) of each stratum

    • +
    • Sample.Label transect labels

    • +
    • Cue.rate rate of blows per animal per hour

    • +
    • Cue.rate.SE variability in cue rate

    • +
    • Cue.rate.df degrees of freedom (number of animals sampled for cues)

    • +
    • object object ID

    • +
    • distance perpendicular distance (km)

    • +
    • Sample.Fraction proportion of full circle scanned (radians)

    • +
    • Sample.Fraction.SE variability in sampling fraction (0)

    • +
    • Search.time Duration of scanning effort (hr)

    • +
    • bss Beaufort sea state

    • +
    • sp Species detected (all observations W in these data)

    • +
    • size Number of animals in group (all 1 in these data)

    • +
    • Study.Area study area name

    • +
    +
    +

    Details

    +

    Because whale blows disappear instantaneously, there is no need to measure a +decay rate. However a cue production rate (blows per individual per unit +time) is required, as is a measure of variability of that rate.

    +
    +
    +

    Note

    +

    There are two other nuances in this survey. Even though the survey +is taking place on a moving ship, effort is measured as amount of time +scanning for blows. In some instances, it is not possible for the observer +to scan the sea all around them as view may be restricted by the ship's +superstructure. Here a sampling fraction multiplier is employed to deal +with restricted vision. Units of measure of cue.rate and Search.time +must be equal.

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/Distance-package.html b/docs/reference/Distance-package.html new file mode 100644 index 0000000..d127015 --- /dev/null +++ b/docs/reference/Distance-package.html @@ -0,0 +1,113 @@ + +Distance sampling — Distance-package • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Distance is a simple way to fit detection functions and estimate +abundance using distance sampling methodology.

    +
    + + +
    +

    Details

    +

    Underlying Distance is the package mrds, for more advanced +analyses (such as those involving double observer surveys) one may find it +necessary to use mrds.

    +

    Examples of distance sampling analyses are available at +http://examples.distancesampling.org/.

    +

    For help with distance sampling and this package, there is a Google Group +https://groups.google.com/forum/#!forum/distance-sampling.

    +

    Bugs can be reported at https://github.com/DistanceDevelopment/Distance/issues.

    +
    +
    +

    References

    +

    "_PACKAGE"

    +

    Key References:

    +

    Miller D.L., E. Rexstad, L. Thomas, L. Marshall and J.L. Laake. 2019. +Distance Sampling in R. Journal of Statistical Software, 89(1), 1-28. +doi:10.18637/jss.v089.i01

    +

    Background References:

    +

    Laake, J.L. and D.L. Borchers. 2004. Methods for incomplete +detection at distance zero. In: Advanced Distance Sampling, eds. S.T. +Buckland, D.R.Anderson, K.P. Burnham, J.L. Laake, D.L. Borchers, and L. +Thomas. Oxford University Press.

    +

    Marques, F.F.C. and S.T. Buckland. 2004. Covariate models for the detection +function. In: Advanced Distance Sampling, eds. S.T. Buckland, +D.R.Anderson, K.P. Burnham, J.L. Laake, D.L. Borchers, and L. Thomas. +Oxford University Press.

    +
    +
    +

    Author

    +

    David L. Miller dave@ninepointeightone.net

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/DuikerCameraTraps.html b/docs/reference/DuikerCameraTraps.html new file mode 100644 index 0000000..5a0495a --- /dev/null +++ b/docs/reference/DuikerCameraTraps.html @@ -0,0 +1,108 @@ + +Duiker camera trap survey — DuikerCameraTraps • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Study took place in Tai National Park Cote d'Ivoire in 2014. Filmed +Maxwell's duikers (Philantomba maxwellii) were assigned to distance +intervals; recorded distances are the midpoints of the intervals. This data +includes only observations recorded at times of peak activity.

    +
    + + +
    +

    Format

    +

    A data.frame with 6277 rows and 6 variables

    • Region.Label strata names (single stratum)

    • +
    • Area size of study area (40.37 km^2)

    • +
    • multiplier spatial effort, as the proportion of a circle covered by +the angle of view of the camera (42 degrees for these cameras)

    • +
    • Sample.Label camera station identifier (21 functioning cameras in +this data set)

    • +
    • Effort temporal effort, i.e. the number of 2-second time-steps over +which the camera operated

    • +
    • object unique object ID

    • +
    • distance radial distance (m) to interval midpoint

    • +
    +
    +

    Source

    +

    Howe, E.J., Buckland, S.T., Després-Einspenner, M.-L. and Kühl, H.S. +(2017), Distance sampling with camera traps. Methods Ecol Evol, 8: +1558-1565. doi:10.1111/2041-210X.12790

    +

    Howe, Eric J. et al. (2018), Data from: Distance sampling with camera traps, +Dryad, Dataset, doi:10.5061/dryad.b4c70

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/ETP_Dolphin.html b/docs/reference/ETP_Dolphin.html new file mode 100644 index 0000000..7e24706 --- /dev/null +++ b/docs/reference/ETP_Dolphin.html @@ -0,0 +1,112 @@ + +Eastern Tropical Pacific spotted dolphin survey — ETP_Dolphin • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Observers aboard tuna vessels detecting dolphin schools along with a number +of possibly useful covariates for modelling the detection function.

    +
    + + +
    +

    Format

    +

    A data.frame with 1090 rows and 13 variables:

    • Region.Label stratum labels (only one)

    • +
    • Area size (nmi) of each stratum

    • +
    • Sample.Label transect labels

    • +
    • Effort transect length (nmi)

    • +
    • object object ID

    • +
    • distance perpendicular distance (nmi)

    • +
    • LnCluster natural log of cluster size

    • +
    • Month month of detection

    • +
    • Beauf.class Beaufort sea state

    • +
    • Cue.type initial cue triggering detection

    • +
    • Search.method observer method making the detection

    • +
    • size cluster size

    • +
    • Study.Area study area name

    • +
    +
    +

    Source

    +

    Inter-American Tropical Tuna Commission

    +
    +
    +

    Details

    +

    Several different search methods included in these data

    • 0 binoculars from crows nest

    • +
    • 2 binoculars from elsewhere on ship

    • +
    • 3 helicopter searching ahead of ship

    • +
    • 5 radar detects of seabirds above dolphin schools

    • +

    Several cue types were also recorded by observers.

    • 1 seabirds above the school

    • +
    • 2 water splashes

    • +
    • 3 unspecified

    • +
    • 4 floating objects such as logs

    • +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/LTExercise.html b/docs/reference/LTExercise.html new file mode 100644 index 0000000..98375a6 --- /dev/null +++ b/docs/reference/LTExercise.html @@ -0,0 +1,102 @@ + +Simulated line transect survey data — LTExercise • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Simulated line transect survey. Twelve transects, detection function is +half-normal. True object density is 79.8 animals per km^2.

    +
    + + +
    +

    Format

    +

    A data.frame with 106 rows and 7 variables

    • Region.Label strata names (single stratum)

    • +
    • Area size of study area (1 in this case, making abundance and density +equal)

    • +
    • Sample.Label transect ID

    • +
    • Effort length of transects (km)

    • +
    • object object ID

    • +
    • distance perpendicular distance (m)

    • +
    • Study.Area name of study area

    • +
    +
    +

    Source

    +

    Simulated data, from the distance sampling introductory course, +Centre for Research into Ecological & Environmental Modelling, University of +St Andrews.

    +
    +
    +

    Note

    +

    There is no unit object associated with this dataset

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/PTExercise.html b/docs/reference/PTExercise.html new file mode 100644 index 0000000..526bf67 --- /dev/null +++ b/docs/reference/PTExercise.html @@ -0,0 +1,97 @@ + +Simulated point transect survey data — PTExercise • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Simulated point transect survey. Thirty point transects, detection function +is half-normal. True object density is 79.6 animals per hectare.

    +
    + + +
    +

    Format

    +

    A data.frame with 144 rows and 7 variables

    • Region.Label strata names (single stratum)

    • +
    • Area size of study area (0 in this case)

    • +
    • Sample.Label transect ID

    • +
    • Effort number of visits to point

    • +
    • object object ID

    • +
    • distance radial distance (m)

    • +
    • Study.Area name of study area

    • +
    +
    +

    Source

    +

    Simulated data, from the distance sampling introductory course, +Centre for Research into Ecological & Environmental Modelling, University of +St Andrews.

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/QAIC.html b/docs/reference/QAIC.html new file mode 100644 index 0000000..77ab525 --- /dev/null +++ b/docs/reference/QAIC.html @@ -0,0 +1,269 @@ + +Tools for model selection when distance sampling data are overdispersed — QAIC • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Overdispersion causes AIC to select overly-complex models, so analysts +should specify the number/order of adjustment terms manually when fitting +distance sampling models to data from camera traps, rather than allowing +automated selection using AIC. Howe et al (2019) described a two-step method +for selecting among models of the detection function in the face of +overdispersion.

    +
    + +
    +

    Usage

    +
    QAIC(object, ..., chat = NULL, k = 2)
    +
    +chi2_select(object, ...)
    +
    + +
    +

    Arguments

    + + +
    object
    +

    a fitted detection function object

    + + +
    ...
    +

    additional fitted model objects.

    + + +
    chat
    +

    a value of \(\hat{c}\) to be used in QAIC calculation

    + + +
    k
    +

    penalty per parameter to be used; default 2

    + +
    +
    +

    Value

    +

    a data.frame with one row per model supplied, in the same order as +given

    +
    +
    +

    Details

    +

    In step 1, and overdispersion factor (\(\hat{c}\)) is computed +either (1) for each key function family, from the most complex model in each +family, as the chi-square goodness of fit test statistic divided by its +degrees of freedom (\(\hat{c}_1\)), or (2) for all models in the +candidate set, from the raw data (\(\hat{c}_1\)). In camera trap +surveys of solitary animals, \(\hat{c}_1\) would be the mean number +of distance observations recorded during a single pass by an animal in front +of a trap. In surveys of social animals employing human observers, +\(\hat{c}_1\) would be the mean number of detected animals per +detected group, and in camera trap surveys of social animals +\(\hat{c}_1\) the mean number of distance observations recorded +during an encounter between a group of animals and a CT. In step two, the +chi-square goodness of fit statistic divided by its degrees of freedom is +calculated for the QAIC-minimizing model within each key function, and the +model with the lowest value is selected for estimation.

    +

    The QAIC() function should only be used select among models with the same +key function (step 1). QAIC() uses \(\hat{c}_1\) by default, +computing it from the model with the most parameters. Alternatively, +\(\hat{c}_1\) can be calculated from the raw data and included in +the call to QAIC(). Users must identify the QAIC-minimizing model within +key functions from the resulting data.frame, and provide these models as +arguments in ch2_select(). chi2_select() then computes and reports the +chi-square goodness of fit statistic divided by its degrees of freedom for +each of those models. The model with the lowest value is recommended for +estimation.

    +
    +
    +

    References

    +

    Howe, E. J., Buckland, S. T., Després-Einspenner, M.-L., & Kühl, H. S. (2019). Model selection with overdispersed distance sampling data. Methods in Ecology and Evolution, 10(1), 38–47. doi:10.1111/2041-210X.13082

    +
    +
    +

    Author

    +

    David L Miller, based on code from Eric Rexstad and explanation from +Eric Howe.

    +
    + +
    +

    Examples

    +
    library(Distance)
    +data("wren_cuecount")
    +
    +# fit hazard-rate key models
    +w3.hr0 <- ds(wren_cuecount, transect="point", key="hr", adjustment=NULL,
    +             truncation=92.5)
    +#> Fitting hazard-rate key function
    +#> AIC= 6621.473
    +#> No survey area information supplied, only estimating detection function.
    +w3.hr1 <- ds(wren_cuecount, transect="point", key="hr", adjustment="cos",
    +             order=2, truncation=92.5)
    +#> Fitting hazard-rate key function with cosine(2) adjustments
    +#> AIC= 6623.473
    +#> No survey area information supplied, only estimating detection function.
    +w3.hr2 <- ds(wren_cuecount, transect="point", key="hr", adjustment="cos",
    +             order=c(2, 4), truncation=92.5)
    +#> Fitting hazard-rate key function with cosine(2,4) adjustments
    +#> AIC= 6625.335
    +#> No survey area information supplied, only estimating detection function.
    +
    +# fit unform key models
    +w3.u1 <- ds(wren_cuecount, transect="point", key="unif", adjustment="cos",
    +            order=1, truncation=92.5)
    +#> Fitting uniform key function with cosine(1) adjustments
    +#> AIC= 6667.045
    +#> No survey area information supplied, only estimating detection function.
    +w3.u2 <- ds(wren_cuecount, transect="point", key="unif", adjustment="cos",
    +            order=c(1,2), monotonicity="none",  truncation=92.5)
    +#> Fitting uniform key function with cosine(1,2) adjustments
    +#> ** Warning: Maximum probability of detection is greater than one: invalid model fitted **
    +#> ** Warning: Maximum probability of detection is greater than one: invalid model fitted **
    +#> ** Warning: Maximum probability of detection is greater than one: invalid model fitted **
    +#> Warning: Detection function is not weakly monotonic!
    +#> Warning: Detection function is not strictly monotonic!
    +#> Warning: Detection function is greater than 1 at some distances
    +#> Warning: Detection function is not weakly monotonic!
    +#> Warning: Detection function is not strictly monotonic!
    +#> Warning: Detection function is greater than 1 at some distances
    +#> AIC= 6618.005
    +#> Warning: Detection function is not weakly monotonic!
    +#> Warning: Detection function is not strictly monotonic!
    +#> Warning: Detection function is greater than 1 at some distances
    +#> No survey area information supplied, only estimating detection function.
    +w3.u3 <- ds(wren_cuecount, transect="point", key="unif", adjustment="cos",
    +            order=c(1,2,3), monotonicity="none", truncation=92.5)
    +#> Fitting uniform key function with cosine(1,2,3) adjustments
    +#> ** Warning: Maximum probability of detection is greater than one: invalid model fitted **
    +#> ** Warning: Maximum probability of detection is greater than one: invalid model fitted **
    +#> ** Warning: Maximum probability of detection is greater than one: invalid model fitted **
    +#> Warning: Detection function is not weakly monotonic!
    +#> Warning: Detection function is not strictly monotonic!
    +#> Warning: Detection function is greater than 1 at some distances
    +#> Warning: Detection function is not weakly monotonic!
    +#> Warning: Detection function is not strictly monotonic!
    +#> Warning: Detection function is greater than 1 at some distances
    +#> AIC= 6585.701
    +#> Warning: Detection function is not weakly monotonic!
    +#> Warning: Detection function is not strictly monotonic!
    +#> Warning: Detection function is greater than 1 at some distances
    +#> No survey area information supplied, only estimating detection function.
    +
    +# fit half-normal key functions
    +w3.hn0 <- ds(wren_cuecount, transect="point", key="hn", adjustment=NULL,
    +             truncation=92.5)
    +#> Fitting half-normal key function
    +#> AIC= 6657.954
    +#> No survey area information supplied, only estimating detection function.
    +w3.hn1 <- ds(wren_cuecount, transect="point", key="hn", adjustment="herm",
    +             order=2, truncation=92.5)
    +#> Fitting half-normal key function with Hermite(2) adjustments
    +#> Error in adj.check.order(adj.series, adj.order, key) : 
    +#>   Hermite polynomial adjustment terms of order < 4 selected
    +#> 
    +#> 
    +#> All models failed to fit!
    +#> Error: No models could be fitted.
    +
    +# stage 1: calculate QAIC per model set
    +QAIC(w3.hr0, w3.hr1, w3.hr2)  # no adjustments smallest
    +#>        df     QAIC
    +#> w3.hr0  2 241.6884
    +#> w3.hr1  3 243.6884
    +#> w3.hr2  4 245.6834
    +QAIC(w3.u1, w3.u2, w3.u3)     # 2 adjustment terms (by 0.07)
    +#>       df     QAIC
    +#> w3.u1  1 274.4930
    +#> w3.u2  2 274.4215
    +#> w3.u3  3 275.0294
    +QAIC(w3.hn0, w3.hn1)  # no adjustments smallest
    +#> Error: object 'w3.hn1' not found
    +
    +# stage 2: select using chi^2/degrees of freedom between sets
    +chi2_select(w3.hr0, w3.u2, w3.hn0)
    +#>        criteria
    +#> w3.hr0 25.86191
    +#> w3.u2  27.08399
    +#> w3.hn0 27.05415
    +
    +# example using a pre-calculated chat
    +chat <- attr(QAIC(w3.hr0, w3.hr1, w3.hr2), "chat")
    +QAIC(w3.hr0, chat=chat)
    +#>        df     QAIC
    +#> w3.hr0  2 241.6884
    +
    +
    +
    +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/Rplot001.png b/docs/reference/Rplot001.png new file mode 100644 index 0000000..17a3580 Binary files /dev/null and b/docs/reference/Rplot001.png differ diff --git a/docs/reference/Rplot002.png b/docs/reference/Rplot002.png new file mode 100644 index 0000000..d780199 Binary files /dev/null and b/docs/reference/Rplot002.png differ diff --git a/docs/reference/Rplot003.png b/docs/reference/Rplot003.png new file mode 100644 index 0000000..a4bf094 Binary files /dev/null and b/docs/reference/Rplot003.png differ diff --git a/docs/reference/Savannah_sparrow_1980.html b/docs/reference/Savannah_sparrow_1980.html new file mode 100644 index 0000000..531d148 --- /dev/null +++ b/docs/reference/Savannah_sparrow_1980.html @@ -0,0 +1,110 @@ + +Savanna sparrow point transects — Savannah_sparrow_1980 • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Point transect data collected in Colorado 1980/81 to examine effect of +agricultural practices upon avian community.

    +
    + + +
    +

    Format

    +

    data.frame with 468 observations (1980) and 448 observations +(1981) of 7 variables:

    • Region.Label stratum label (pasture ID)

    • +
    • Area stratum area (set to 1 so density is reported)

    • +
    • Sample.Label transect identifier

    • +
    • Effort number of visits

    • +
    • object object ID

    • +
    • distance radial distance (m)

    • +
    • Study.Area name of study area

    • +
    +
    +

    Details

    +

    Design consisted of point transects placed in multiple pastures (3 in 1980 +and 4 in 1981). While many species were observed, only data for Savannah +sparrows (Passerculus sandwichensis) are included here.

    +

    Data given here are different from the Distance for Windows example project. +Here each individual sighting is treated as an independent observation. This +corresponds to the analysis in Buckland et al. (2001) Section 8.7. In the +Distance for Windows project objects are clusters of individuals. This +should not affect the results too greatly as most clusters were of size 1, +and so the results obtained should not be too far out.

    +
    +
    +

    References

    +

    Knopf, F.L., J.A. Sedgwick, and R.W. Cannon. (1988) Guild structure of a +riparian avifauna relative to seasonal cattle grazing. The Journal of +Wildlife Management 52 (2): 280–290. doi:10.2307/3801235

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/Stratify_example.html b/docs/reference/Stratify_example.html new file mode 100644 index 0000000..75d51fa --- /dev/null +++ b/docs/reference/Stratify_example.html @@ -0,0 +1,109 @@ + +Simulated minke whale data — Stratify_example • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Data simulated from models fitted to 1992/1993 Southern Hemisphere minke +whale data collected by the International Whaling Commission. See Branch and +Butterworth (2001) for survey details (survey design is shown in figure +1(e)). Data simulated by David Borchers.

    +
    + + +
    +

    Format

    +

    data.frame with 99 observations of 7 variables: +Region.Label stratum label ("North" or "South") +Area stratum area (square nautical mile) +Sample.Label transect identifier +Effort transect length (nautical mile) +object object ID +distance observed distance (nautical mile) +Study.Area name of study area

    +
    +
    +

    References

    +

    Branch, T.A. and D.S. Butterworth. (2001) Southern Hemisphere +minke whales: standardised abundance estimates from the 1978/79 to 1997/98 +IDCR-SOWER surveys. Journal of Cetacean Research and Management 3(2): +143-174

    +

    Hedley, S.L., and S.T. Buckland. (2004) Spatial models for line transect +sampling. Journal of Agricultural, Biological, and Environmental Statistics +9: 181-199. doi:10.1198/1085711043578 +.

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/Systematic_variance_1.html b/docs/reference/Systematic_variance_1.html new file mode 100644 index 0000000..25403f9 --- /dev/null +++ b/docs/reference/Systematic_variance_1.html @@ -0,0 +1,111 @@ + +Simulation of encounter rate variance — Systematic_variance_1 • Distance + Skip to contents + + +
    +
    +
    + +
    +

    systematic_var_1 consists of simulated line transect data with large +differences in transect length. In systematic_var_2 that transect length +gradient is coupled with a strong animal gradient; exaggerating encounter +rate variance between transects.

    +
    + + +
    +

    Format

    +

    data.frame with 253 observations (systematic_var_1) or 256 +observations (systematic_var_2) of 7 variables: +Region.Label stratum label (default) +Area stratum area (0.5 km^2) +Sample.Label transect identifier +Effort transect length (km) +object object ID +distance perpendicular distance (m) +Study.Area name of study area

    +
    +
    +

    Details

    +

    True population size is 1000 objects in the study area of size 0.5 km^2; +such that true density is 2000 objects per km.

    +
    +
    +

    References

    +

    Fewster, R.M., S.T. Buckland, K.P. Burnham, D.L. Borchers, P.E. +Jupp, J.L. Laake and L. Thomas. (2009) Estimating the encounter rate +variance in distance sampling. Biometrics 65 (1): 225–236. +doi:10.1111/j.1541-0420.2008.01018.x

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/add_df_covar_line-1.png b/docs/reference/add_df_covar_line-1.png new file mode 100644 index 0000000..e3561ed Binary files /dev/null and b/docs/reference/add_df_covar_line-1.png differ diff --git a/docs/reference/add_df_covar_line-2.png b/docs/reference/add_df_covar_line-2.png new file mode 100644 index 0000000..2c6136a Binary files /dev/null and b/docs/reference/add_df_covar_line-2.png differ diff --git a/docs/reference/add_df_covar_line.html b/docs/reference/add_df_covar_line.html new file mode 100644 index 0000000..e22bca5 --- /dev/null +++ b/docs/reference/add_df_covar_line.html @@ -0,0 +1,181 @@ + +Add covariate levels detection function plots — add_df_covar_line • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Add a line or lines to a plot of the detection function which correspond to +a a given covariate combination. These can be particularly useful when there +is a small number of factor levels or if quantiles of a continuous covariate +are specified.

    +
    + + +
    +

    Arguments

    + + +
    ddf
    +

    a fitted detection function object.

    + + +
    data
    +

    a data.frame with the covariate combination you want to plot.

    + + +
    ...
    +

    extra arguments to give to lines (e.g., +lty, lwd, col).

    + + +
    ndist
    +

    number of distances at which to evaluate the detection function.

    + + +
    pdf
    +

    should the line be drawn on the probability density scale; +ignored for line transects

    + + +
    breaks
    +

    required to ensure that PDF lines are the right size, should +match what is supplied to original plot command. Defaults to +"Sturges" breaks, as in hist. Only used if pdf=TRUE

    + +
    +
    +

    Value

    +

    invisibly, the values of detectability over the truncation range.

    +
    +
    +

    Details

    +

    All covariates must be specified in data. Plots can become quite busy +when this approach is used. It may be useful to fix some covariates at their +median level and plot set values of a covariate of interest. For example +setting weather (e.g., Beaufort) to its median and plotting levels of +observer, then creating a second plot for a fixed observer with levels of +weather.

    +

    Arguments to lines are supplied in ... and aesthetics like +line type (lty), line width (lwd) and colour (col) are +recycled. By default lty is used to distinguish between the lines. It +may be useful to add a legend to the plot (lines are plotted +in the order of data).

    +
    +
    +

    Note

    +

    This function is located in the mrds package but the +documentation is provided here for easy access.

    +
    +
    +

    Author

    +

    David L Miller

    +
    + +
    +

    Examples

    +
    
    +# example using a model for the minke data
    +data(minke)
    +# fit a model
    +result <- ds(minke, formula=~Region.Label)
    +#> Model contains covariate term(s): no adjustment terms will be included.
    +#> Fitting half-normal key function
    +#> AIC= 57.005
    +
    +# make a base plot, showpoints=FALSE makes the plot less busy
    +plot(result, showpoints=FALSE)
    +
    +# add lines for sex one at a time
    +add_df_covar_line(result, data.frame(Region.Label="South"), lty=2)
    +add_df_covar_line(result, data.frame(Region.Label="North"), lty=3)
    +
    +# add a legend
    +legend(1.5, 1, c("Average", "South", "North"), lty=1:3)
    +
    +
    +# point transect example
    +data(amakihi)
    +result <- ds(amakihi, truncation=150, transect="point", formula=~OBs)
    +#> Model contains covariate term(s): no adjustment terms will be included.
    +#> Fitting half-normal key function
    +#> AIC= 13870.198
    +plot(result, showpoints=FALSE, pdf=TRUE)
    +add_df_covar_line(result,
    +                  data.frame(OBs=na.omit(unique(amakihi$OBs))), pdf=TRUE)
    +
    +
    +
    +
    +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/amakihi.html b/docs/reference/amakihi.html new file mode 100644 index 0000000..f56b94b --- /dev/null +++ b/docs/reference/amakihi.html @@ -0,0 +1,106 @@ + +Hawaiian amakihi point transect data — amakihi • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Also known as the Common 'Amakihi, a type of Hawaiian honeycreeper

    +
    + + +
    +

    Format

    +

    A data.frame with 1487 rows and 12 variables

    • Region.Label strata names (seven strata)

    • +
    • Area size of study area (set to 0)

    • +
    • Sample.Label transect ID

    • +
    • Effort number of visits to point

    • +
    • object object ID

    • +
    • distance radial distance (m)

    • +
    • Month month survey conducted (not used)

    • +
    • OBs observer ID (note capitalisation of variable name)

    • +
    • Sp species code (COAM) for all detections

    • +
    • MAS Time after sunrise (min)

    • +
    • HAS Time after sunrise (hours)

    • +
    • Study.Area name of study area

    • +
    +
    +

    Note

    +

    Example for investigating covariates in the detection function. Note +high colinearity between two measures of time since sunrise. Convergence +problems can result from models with several factor covariates.

    +
    +
    +

    References

    +

    Marques, T.A., L. Thomas, S.G. Fancy and S.T. Buckland. (2007) +Improving estimates of bird density using multiple-covariate distance +sampling. The Auk 124 (4): 1229–1243. +doi:10.1642/0004-8038(2007)124[1229:IEOBDU]2.0.CO;2

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/bootdht.html b/docs/reference/bootdht.html new file mode 100644 index 0000000..91b7d7f --- /dev/null +++ b/docs/reference/bootdht.html @@ -0,0 +1,286 @@ + +Bootstrap uncertainty estimation for distance sampling models — bootdht • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Performs a bootstrap for simple distance sampling models using the same data +structures as dht. Note that only geographical stratification +as supported in dht is allowed.

    +
    + +
    +

    Usage

    +
    bootdht(
    +  model,
    +  flatfile,
    +  resample_strata = FALSE,
    +  resample_obs = FALSE,
    +  resample_transects = TRUE,
    +  nboot = 100,
    +  summary_fun = bootdht_Nhat_summarize,
    +  convert_units = 1,
    +  select_adjustments = FALSE,
    +  sample_fraction = 1,
    +  multipliers = NULL,
    +  progress_bar = "base",
    +  cores = 1,
    +  convert.units = NULL
    +)
    +
    + +
    +

    Arguments

    + + +
    model
    +

    a model fitted by ds or a list of models

    + + +
    flatfile
    +

    Data provided in the flatfile format. See flatfile for +details. Please note, it is a current limitation of bootdht that all +Sample.Label identifiers must be unique across all strata, i.e.transect +ids must not be re-used from one strata to another. An easy way to achieve +this is to paste together the stratum names and transect ids.

    + + +
    resample_strata
    +

    should resampling happen at the stratum +(Region.Label) level? (Default FALSE)

    + + +
    resample_obs
    +

    should resampling happen at the observation (object) +level? (Default FALSE)

    + + +
    resample_transects
    +

    should resampling happen at the transect +(Sample.Label) level? (Default TRUE)

    + + +
    nboot
    +

    number of bootstrap replicates

    + + +
    summary_fun
    +

    function that is used to obtain summary statistics from +the bootstrap, see Summary Functions below. By default +bootdht_Nhat_summarize is used, which just extracts abundance estimates.

    + + +
    convert_units
    +

    conversion between units for abundance estimation, see +"Units", below. (Defaults to 1, implying all of the units are "correct" +already.) This takes precedence over any unit conversion stored in model.

    + + +
    select_adjustments
    +

    select the number of adjustments in each +bootstrap, when FALSE the exact detection function specified in model is +fitted to each replicate. Setting this option to TRUE can significantly +increase the runtime for the bootstrap. Note that for this to work model +must have been fitted with adjustment!=NULL.

    + + +
    sample_fraction
    +

    what proportion of the transects was covered (e.g., +0.5 for one-sided line transects).

    + + +
    multipliers
    +

    list of multipliers. See "Multipliers" below.

    + + +
    progress_bar
    +

    which progress bar should be used? Default "base" uses +txtProgressBar, "none" suppresses output, "progress" uses the +progress package, if installed.

    + + +
    cores
    +

    number of CPU cores to use to compute the estimates. See "Parallelization" below.

    + + +
    convert.units
    +

    deprecated, see same argument with underscore, above.

    + +
    +
    +

    Summary Functions

    + + +

    The function summary_fun allows the user to specify what summary +statistics should be recorded from each bootstrap. The function should take +two arguments, ests and fit. The former is the output from +dht2, giving tables of estimates. The latter is the fitted detection +function object. The function is called once fitting and estimation has been +performed and should return a data.frame. Those data.frames +are then concatenated using rbind. One can make these functions +return any information within those objects, for example abundance or +density estimates or the AIC for each model. See Examples below.

    +
    +
    +

    Multipliers

    + + +

    It is often the case that we cannot measure distances to individuals or +groups directly, but instead need to estimate distances to something they +produce (e.g., for whales, their blows; for elephants their dung) – this is +referred to as indirect sampling. We may need to use estimates of production +rate and decay rate for these estimates (in the case of dung or nests) or +just production rates (in the case of songbird calls or whale blows). We +refer to these conversions between "number of cues" and "number of animals" +as "multipliers".

    +

    The multipliers argument is a list, with 3 possible elements (creation +and decay). Each element of which is either:

    • data.frame and must have at least a column named rate, which abundance +estimates will be divided by (the term "multiplier" is a misnomer, but +kept for compatibility with Distance for Windows). Additional columns can +be added to give the standard error and degrees of freedom for the rate +if known as SE and df, respectively. You can use a multirow +data.frame to have different rates for different geographical areas +(for example). In this case the rows need to have a column (or columns) +to merge with the data (for example Region.Label).

    • +
    • a function which will return a single estimate of the relevant +multiplier. See make_activity_fn for a helper function for use with the +activity package.

    • +
    +
    +

    Model selection

    + + +

    Model selection can be performed on a per-replicate basis within the +bootstrap. This has three variations:

    1. when select_adjustments is TRUE then adjustment terms are selected +by AIC within each bootstrap replicate (provided that model had the +order and adjustment options set to non-NULL.

    2. +
    3. if model is a list of fitted detection functions, each of these is +fitted to each replicate and results generated from the one with the +lowest AIC.

    4. +
    5. when select_adjustments is TRUE and model is a list of fitted +detection functions, each model fitted to each replicate and number of +adjustments is selected via AIC. +This last option can be extremely time consuming.

    6. +
    +
    +

    Parallelization

    + + +

    If cores>1 then the parallel/doParallel/foreach/doRNG packages +will be used to run the computation over multiple cores of the computer. To +use this component you need to install those packages using: +install.packages(c("foreach", "doParallel", "doRNG")) It is advised that +you do not set cores to be greater than one less than the number of cores +on your machine. The doRNG package is required to make analyses +reproducible (set.seed can be used to ensure the same answers).

    +

    It is also hard to debug any issues in summary_fun so it is best to run a +small number of bootstraps first in parallel to check that things work. On +Windows systems summary_fun does not have access to the global environment +when running in parallel, so all computations must be made using only its +ests and fit arguments (i.e., you can not use R objects from elsewhere +in that function, even if they are available to you from the console).

    +

    Another consequence of the global environment being unavailable inside +parallel bootstraps is that any starting values in the model object passed +in to bootdht must be hard coded (otherwise you get back 0 successful +bootstraps). For a worked example showing this, see the camera trap distance +sampling online example at +https://examples.distancesampling.org/Distance-cameratraps/camera-distill.html.

    +
    +
    +

    See also

    +

    summary.dht_bootstrap for how to summarize the results, +bootdht_Nhat_summarize and bootdht_Dhat_summarize for an examples of +summary functions.

    +
    + +
    +

    Examples

    +
    if (FALSE) { # \dontrun{
    +# fit a model to the minke data
    +data(minke)
    +mod1 <- ds(minke)
    +
    +# summary function to save the abundance estimate
    +Nhat_summarize <- function(ests, fit) {
    +  return(data.frame(Nhat=ests$individuals$N$Estimate))
    +}
    +
    +# perform 5 bootstraps
    +bootout <- bootdht(mod1, flatfile=minke, summary_fun=Nhat_summarize, nboot=5)
    +
    +# obtain basic summary information
    +summary(bootout)
    +} # }
    +
    +
    +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/bootdht_Dhat_summarize.html b/docs/reference/bootdht_Dhat_summarize.html new file mode 100644 index 0000000..a805b9a --- /dev/null +++ b/docs/reference/bootdht_Dhat_summarize.html @@ -0,0 +1,121 @@ + +Simple summary of density results for bootstrap model — bootdht_Dhat_summarize • Distance + Skip to contents + + +
    +
    +
    + +
    +

    When using bootdht one needs to use a summary function to +extract results from the resulting models per replicate. This function is +the simplest possible example of such a function, that just extracts the +estimated density (with stratum labels).

    +
    + +
    +

    Usage

    +
    bootdht_Dhat_summarize(ests, fit)
    +
    + +
    +

    Arguments

    + + +
    ests
    +

    output from dht2.

    + + +
    fit
    +

    fitted detection function object (unused).

    + +
    +
    +

    Value

    +

    data.frame with two columns ("Dhat" and "Label"), giving the +estimate(s) of density of individuals per stratum from each bootstrap +replicate. This data.frame can be examined for example, with +quantile to compute confidence intervals.

    +
    +
    +

    Details

    +

    Further examples of such functions can be found at +http://examples.distancesampling.org.

    +
    +
    +

    See also

    +

    bootdht which this function is to be used with and +bootdht_Nhat_summarize which does the same job +but returns abundance results.

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/bootdht_Nhat_summarize.html b/docs/reference/bootdht_Nhat_summarize.html new file mode 100644 index 0000000..63f63d8 --- /dev/null +++ b/docs/reference/bootdht_Nhat_summarize.html @@ -0,0 +1,121 @@ + +Simple summary of abundance results for bootstrap model — bootdht_Nhat_summarize • Distance + Skip to contents + + +
    +
    +
    + +
    +

    When using bootdht one needs to use a summary function to +extract results from the resulting models per replicate. This function is +the simplest possible example of such a function, that just extracts the +estimated abundance (with stratum labels).

    +
    + +
    +

    Usage

    +
    bootdht_Nhat_summarize(ests, fit)
    +
    + +
    +

    Arguments

    + + +
    ests
    +

    output from dht2.

    + + +
    fit
    +

    fitted detection function object (unused).

    + +
    +
    +

    Value

    +

    data.frame with two columns ("Nhat" and "Label"), giving the +estimate(s) of abundance of individuals per stratum from each bootstrap +replicate. This data.frame can be examined for example, with +quantile to compute confidence intervals.

    +
    +
    +

    Details

    +

    Further examples of such functions can be found at +http://examples.distancesampling.org.

    +
    +
    +

    See also

    +

    bootdht which this function is to be used with and +bootdht_Dhat_summarize which does the same job +but for abundance results.

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/capercaillie.html b/docs/reference/capercaillie.html new file mode 100644 index 0000000..4f4cf2d --- /dev/null +++ b/docs/reference/capercaillie.html @@ -0,0 +1,92 @@ + +Capercaillie in Monaughty Forest — capercaillie • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Data from a line transect survey of capercaillie in Monaughty Forest, Moray, +Scotland.

    +
    + + +
    +

    Format

    +

    A data.frame with 112 observations on the following 9 variables.

    • Sample.Label name of single transect

    • +
    • Effort transect length (km)

    • +
    • distance perpendicular distance (m)

    • +
    • object object ID

    • +
    • size only individual birds detected

    • +
    • detected whether detected

    • +
    • observer single observer data

    • +
    • Region.Label stratum name

    • +
    • Area size of Monaughty Forest (ha)

    • +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/checkdata.html b/docs/reference/checkdata.html new file mode 100644 index 0000000..bbe1e84 --- /dev/null +++ b/docs/reference/checkdata.html @@ -0,0 +1,124 @@ + +Check that the data supplied to ds is correct — checkdata • Distance + Skip to contents + + +
    +
    +
    + +
    +

    This is an internal function that checks the data.frames supplied +to ds are "correct".

    +
    + +
    +

    Usage

    +
    checkdata(
    +  data,
    +  region.table = NULL,
    +  sample.table = NULL,
    +  obs.table = NULL,
    +  formula = ~1
    +)
    +
    + +
    +

    Arguments

    + + +
    data
    +

    as in ds

    + + +
    region.table
    +

    as in ds

    + + +
    sample.table
    +

    as in ds

    + + +
    obs.table
    +

    as in ds

    + + +
    formula
    +

    formula for the covariates

    + +
    +
    +

    Value

    +

    Throws an error if something goes wrong, otherwise returns a +data.frame.

    +
    +
    +

    Author

    +

    David L. Miller

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/convert_units.html b/docs/reference/convert_units.html new file mode 100644 index 0000000..cafdb23 --- /dev/null +++ b/docs/reference/convert_units.html @@ -0,0 +1,141 @@ + +Convert units for abundance estimation — convert_units • Distance + Skip to contents + + +
    +
    +
    + +
    +

    It is often the case that effort, distances and prediction area are +collected in different units in the field. Functions in Distance +allow for an argument to convert between these and provide an answer that +makes sense. This function calculates that conversion factor, given +knowledge of the units of the quantities used.

    +
    + +
    +

    Usage

    +
    convert_units(distance_units, effort_units, area_units)
    +
    + +
    +

    Arguments

    + + +
    distance_units
    +

    units distances were measured in.

    + + +
    effort_units
    +

    units that effort were measured in. Set as NULL for +point transects.

    + + +
    area_units
    +

    units for the prediction area.

    + +
    +
    +

    Details

    +

    convert_units expects particular names for its inputs – these should +be singular names of the unit (e.g., "metre" rather than "metres"). You can +view possible options with units_table. Both UK and US +spellings are acceptable, case does not matter. For density estimation, area +must still be provided ("objects per square ???"). Note that for cue counts +(or other multiplier-based methods) one will still have to ensure that the +rates are in the correct units for the survey.

    +
    +
    +

    Author

    +

    David L Miller

    +
    + +
    +

    Examples

    +
    # distances measured in metres, effort in kilometres and
    +# abundance over an area measured in hectares:
    +convert_units("Metre", "Kilometre", "Hectare")
    +#> [1] 0.1
    +
    +# all SI units, so the result is 1
    +convert_units("Metre", "metre", "square metre")
    +#> [1] 1
    +
    +# for points ignore effort
    +convert_units("Metre", NULL, "Hectare")
    +#> [1] 0.01
    +
    +
    +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/create.bins.html b/docs/reference/create.bins.html new file mode 100644 index 0000000..5513046 --- /dev/null +++ b/docs/reference/create.bins.html @@ -0,0 +1,103 @@ + +Create bins from a set of binned distances and a set of cutpoints. — create.bins • Distance + Skip to contents + + +
    +
    +
    + +
    +

    create.bins is now deprecated, please use create_bins

    +
    + +
    +

    Usage

    +
    create.bins(data, cutpoints)
    +
    + +
    +

    Arguments

    + + +
    data
    +

    data.frame with at least the column distance.

    + + +
    cutpoints
    +

    vector of cutpoints for the bins

    + +
    +
    +

    Value

    +

    argument data with two extra columns distbegin and +distend.

    +
    +
    +

    Author

    +

    David L. Miller

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/create_bins.html b/docs/reference/create_bins.html new file mode 100644 index 0000000..19cc1d2 --- /dev/null +++ b/docs/reference/create_bins.html @@ -0,0 +1,114 @@ + +Create bins from a set of binned distances and a set of cutpoints. — create_bins • Distance + Skip to contents + + +
    +
    +
    + +
    +

    This is an internal routine and shouldn't be necessary in normal analyses.

    +
    + +
    +

    Usage

    +
    create_bins(data, cutpoints)
    +
    + +
    +

    Arguments

    + + +
    data
    +

    data.frame with at least the column distance.

    + + +
    cutpoints
    +

    vector of cutpoints for the bins

    + +
    +
    +

    Value

    +

    argument data with two extra columns distbegin and +distend.

    +
    +
    +

    Author

    +

    David L. Miller

    +
    + +
    +

    Examples

    +
    if (FALSE) { # \dontrun{
    +library(Distance)
    +data(minke)
    +
    +# put the minke data into bins 0-1, 1-2, 2-3 km
    +minke_cuts <- create_bins(minke[!is.na(minke$distance),], c(0,1,2,3))
    +} # }
    +
    +
    +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/dht2.html b/docs/reference/dht2.html new file mode 100644 index 0000000..bb989f2 --- /dev/null +++ b/docs/reference/dht2.html @@ -0,0 +1,396 @@ + +Abundance estimation for distance sampling models — dht2 • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Once a detection function is fitted to data, this function can be used to +compute abundance estimates over required areas. The function also allows +for stratification and variance estimation via various schemes (see below).

    +
    + +
    +

    Usage

    +
    dht2(
    +  ddf,
    +  observations = NULL,
    +  transects = NULL,
    +  geo_strat = NULL,
    +  flatfile = NULL,
    +  strat_formula,
    +  convert_units = 1,
    +  er_est = c("R2", "P2"),
    +  multipliers = NULL,
    +  sample_fraction = 1,
    +  ci_width = 0.95,
    +  innes = FALSE,
    +  stratification = "geographical",
    +  total_area = NULL,
    +  binomial_var = FALSE
    +)
    +
    + +
    +

    Arguments

    + + +
    ddf
    +

    model fitted by ds or ddf. +Multiple detection functions can be supplied as a list.

    + + +
    observations
    +

    data.frame to link detection function data (indexed by +object column IDs) to the transects (indexed by Sample.Label column +IDs). See "Data" below.

    + + +
    transects
    +

    data.frame with information about samples (points or +line transects). See "Data" below.

    + + +
    geo_strat
    +

    data.frame with information about any geographical +stratification. See "Data" below.

    + + +
    flatfile
    +

    data in the flatfile format, see flatfile. Note +that the object column (uniquely identifying the observations) is required.

    + + +
    strat_formula
    +

    a formula giving the stratification structure (see +"Stratification" below). Currently only one level of stratification is +supported.

    + + +
    convert_units
    +

    conversion factor between units for the distances, +effort and area. See "Units" below. Can supply one per detection function in +ddf.

    + + +
    er_est
    +

    encounter rate variance estimator to be used. See "Variance" +below and varn. Can supply one per detection function in +ddf.

    + + +
    multipliers
    +

    list of data.frames. See "Multipliers" below.

    + + +
    sample_fraction
    +

    proportion of the transect covered (e.g., 0.5 for +one-sided line transects). May be specified as either a single number or a +data.frame with 2 columns Sample.Label and fraction (if fractions are +different for each transect).

    + + +
    ci_width
    +

    for use with confidence interval calculation (defined as +1-alpha, so the default 95 will give a 95% confidence interval).

    + + +
    innes
    +

    logical flag for computing encounter rate variance using either +the method of Innes et al (2002) where estimated abundance per transect +divided by effort is used as the encounter rate, vs. (when innes=FALSE) +using the number of observations divided by the effort (as in Buckland et +al., 2001)

    + + +
    stratification
    +

    what do strata represent, see "Stratification" below.

    + + +
    total_area
    +

    for options stratification="effort_sum" and +stratification="replicate" the area to use as the total for combined, +weighted final estimates.

    + + +
    binomial_var
    +

    if we wish to estimate abundance for the covered area +only (i.e., study area = surveyed area) then this must be set to be +TRUE and use the binomial variance estimator of Borchers et al. +(1998). This is only valid when objects are not clustered. (This situation +is rare.)

    + +
    +
    +

    Value

    +

    a data.frame (of class dht_result for pretty printing) with +estimates and attributes containing additional information, see "Outputs" +for information on column names.

    +
    +
    +

    Data

    + + +

    The data format allows for complex stratification schemes to be set-up. Three +objects are always required:

    • ddf the detection function (see ds or +ddf for information on the format of their inputs).

    • +
    • observations has one row per observation and links the observations to +the transects. Required columns:

      • object (unique ID for the observation, which must match with the +data in the detection function)

      • +
      • Sample.Label (unique ID for the transect).

      • +
      • Additional columns for strata which are not included in the detection +function are required (stratification covariates that are included in +the detection function do not need to be included here). The important +case here is group size, which must have column name size (but does +not need to be in the detection function).

      • +
    • +
    • transects has one row per sample (point or line transect). At least +one row is required. Required columns: Sample.Label (unique ID for the +transect), Effort (line length for line transects, number of visits for +point transects), if there is more than one geographical stratum.

    • +

    With only these three arguments, abundance can only be calculated for the +covered area. Including additional information on the area we wish to +extrapolate to (i.e., the study area), we can obtain abundance estimates:

    • geo_strat has one row for each stratum that we wish to estimate +abundance for. For abundance in the study area, at least one row is +required. Required columns: Area (the area of that stratum). If there +is >1 row, then additional columns, named in strat_formula.`

    • +

    Note that if the Area column is set to all 0, then only density estimates +will be returned.

    +
    +
    +

    Multipliers

    + + +

    It is often the case that we cannot measure distances to individuals or +groups directly, but instead need to estimate distances to something they +produce (e.g., for whales, their blows; for elephants their dung) – this is +referred to as indirect sampling. We may need to use estimates of production +rate and decay rate for these estimates (in the case of dung or nests) or +just production rates (in the case of songbird calls or whale blows). We +refer to these conversions between "number of cues" and "number of animals" +as "multipliers".

    +

    The multipliers argument is a list, with 2 possible elements (creation +and decay). Each element of which is a data.frame and must have at least +a column named rate, which abundance estimates will be divided by (the +term "multiplier" is a misnomer, but kept for compatibility with Distance +for Windows). Additional columns can be added to give the standard error and +degrees of freedom for the rate if known as SE and df, respectively. You +can use a multirow data.frame to have different rates for different +geographical areas (for example). In this case the rows need to have a +column (or columns) to merge with the data (for example Region.Label).

    +
    +
    +

    Stratification

    + + +

    The strat_formula argument is used to specify a column to use to stratify +the results, using the form ~column.name where column.name is the column +name you wish to use.

    +

    The stratification argument is used to specify which of four types of +stratification are intended:

    • "geographical" if each stratum represents a different geographical +areas and you want the total over all the areas

    • +
    • "effort_sum" if your strata are in fact from replicate +surveys (perhaps using different designs) but you don't have many +replicates and/or want an estimate of "average variance"

    • +
    • "replicate" if you have replicate surveys but have many of them, this +calculates the average abundance and the variance between those many +surveys (think of a population of surveys)

    • +
    • "object" if the stratification is really about the type of object +observed, for example sex, species or life stage and what you want is the +total number of individuals across all the classes of objects. For example, +if you have stratified by sex and have males and females, but also want a +total number of animals, you should use this option.

    • +

    A simple example of using stratification="geographical" is given below. +Further examples can be found at http://examples.distancesampling.org/ +(see, e.g., the deer pellet survey).

    +
    +
    +

    Variance

    + + +

    Variance in the estimated abundance comes from multiple sources. Depending +on the data used to fit the model and estimate abundance, different +components will be included in the estimated variances. In the simplest +case, the detection function and encounter rate variance need to be +combined. If group size varies, then this too must be included. Finally, if +multipliers are used and have corresponding standard errors given, this are +also included. Variances are combined by assuming independence between the +measures and adding variances. A brief summary of how each component is +calculated is given here, though see references for more details.

    • detection function: variance from the detection function parameters is +transformed to variance about the abundance via a sandwich estimator (see +e.g., Appendix C of Borchers et al (2002)).

    • +
    • encounter rate: for strata with >1 transect in them, the encounter +rate estimators given in Fewster et al (2009) can be specified via the +er_est argument. If the argument innes=TRUE then calculations use the +estimated number of individuals in the transect (rather than the +observed), which was give by Innes et al (2002) as a superior estimator. +When there is only one transect in a stratum, Poisson variance is assumed. +Information on the Fewster encounter rate variance estimators are given in +varn

    • +
    • group size: if objects occur in groups (sometimes "clusters"), then +the empirical variance of the group sizes is added to the total variance.

    • +
    • multipliers: if multipliers with standard errors are given, their +corresponding variances are added. If no standard errors are supplied, +then their contribution to variance is assumed to be 0.

    • +
    +
    +

    Units

    + + +

    It is often the case that distances are recorded in one convenient set of +units, whereas the study area and effort are recorded in some other units. +To ensure that the results from this function are in the expected units, we +use the convert_units argument to supply a single number to convert the +units of the covered area to those of the study/stratification area (results +are always returned in the units of the study area). For line transects, the +covered area is calculated as 2 * width * length where width is the +effective (half)width of the transect (often referred to as w in the +literature) and length is the line length (referred to as L). If width +and length are measured in kilometres and the study area in square +kilometres, then all is fine and convert_units is 1 (and can be ignored). +If, for example, line length and distances were measured in metres, we +instead need to convert this to be kilometres, by dividing by 1000 for each +of distance and length, hence convert_units=1e-6. For point transects, +this is slightly easier as we only have the radius and study area to +consider, so the conversion is just such that the units of the truncation +radius are the square root of the study area units.

    +
    +
    +

    Output

    + + +

    On printing the output from call to dht2, three tables are produced. Below is a guide to the output columns names, per table.

    • Summary statistics table

      • Region.Label Stratum name (this first column name depends on the formula supplied)

      • +
      • Area Size of stratum

      • +
      • CoveredArea Surveyed area in stratum (2 x w x L)

      • +
      • Effort Transect length or number of point visits per stratum

      • +
      • n Number of detections

      • +
      • k Number of replicate transects

      • +
      • ER Encounter rate

      • +
      • se.ER Standard error of encounter rate

      • +
      • cv.ER Coefficient of variation of encounter rate

      • +
    • +
    • Abundance or density estimates table:

      • Region.Label As above

      • +
      • Estimate Point estimate of abundance or density

      • +
      • se Standard error

      • +
      • cv Coefficient of variation

      • +
      • LCI Lower confidence bound

      • +
      • UCI Upper confidence bound

      • +
      • df Degrees of freedom used for confidence interval computation

      • +
    • +
    • Components percentage of variance:

      • Region.Label As above

      • +
      • Detection Percent of variance in abundance/density associated with +detection function uncertainty

      • +
      • ER Percent of variance in abundance/density associated with +variability in encounter rate

      • +
      • Multipliers Percent of variance in abundance/density associated with +uncertainty in multipliers

      • +
    • +
    +
    +

    References

    +

    Borchers, D.L., S.T. Buckland, P.W. Goedhart, E.D. Clarke, and S.L. Hedley. +1998. Horvitz-Thompson estimators for double-platform line transect surveys. +Biometrics 54: 1221-1237.

    +

    Borchers, D.L., S.T. Buckland, and W. Zucchini. 2002 Estimating Animal +Abundance: Closed Populations. Statistics for Biology and Health. Springer +London.

    +

    Buckland, S.T., E.A. Rexstad, T.A. Marques, and C.S. Oedekoven. 2015 +Distance Sampling: Methods and Applications. Methods in Statistical +Ecology. Springer International Publishing.

    +

    Buckland, S.T., D.R. Anderson, K. Burnham, J.L. Laake, D.L. Borchers, and L. +Thomas. 2001 Introduction to Distance Sampling: Estimating Abundance of +Biological Populations. Oxford University Press.

    +

    Innes, S., M. P. Heide-Jorgensen, J.L. Laake, K.L. Laidre, H.J. Cleator, P. +Richard, and R.E.A. Stewart. 2002 Surveys of belugas and narwhals in the +Canadian high arctic in 1996. NAMMCO Scientific Publications 4, 169-190.

    +
    + +
    +

    Examples

    +
    if (FALSE) { # \dontrun{
    +# example of simple geographical stratification
    +# minke whale data, with 2 strata: North and South
    +data(minke)
    +# first fitting the detection function
    +minke_df <- ds(minke, truncation=1.5, adjustment=NULL)
    +# now estimate abundance using dht2
    +# stratum labels are in the Region.Label column
    +minke_dht2 <- dht2(minke_df, flatfile=minke, stratification="geographical",
    +                   strat_formula=~Region.Label)
    +# could compare this to minke_df$dht and see the same results
    +minke_dht2
    +# can alternatively report density
    +print(minke_dht2, report="density")
    +} # }
    +
    +
    +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/ds-1.png b/docs/reference/ds-1.png new file mode 100644 index 0000000..ae3e8da Binary files /dev/null and b/docs/reference/ds-1.png differ diff --git a/docs/reference/ds-2.png b/docs/reference/ds-2.png new file mode 100644 index 0000000..18855f4 Binary files /dev/null and b/docs/reference/ds-2.png differ diff --git a/docs/reference/ds-3.png b/docs/reference/ds-3.png new file mode 100644 index 0000000..4630938 Binary files /dev/null and b/docs/reference/ds-3.png differ diff --git a/docs/reference/ds.gof.html b/docs/reference/ds.gof.html new file mode 100644 index 0000000..c69c329 --- /dev/null +++ b/docs/reference/ds.gof.html @@ -0,0 +1,122 @@ + +Goodness of fit tests for distance sampling models — ds.gof • Distance + Skip to contents + + +
    +
    +
    + +
    +

    This function is deprecated, please see gof_ds.

    +
    + +
    +

    Usage

    +
    ds.gof(model, breaks = NULL, nc = NULL, qq = TRUE, ks = FALSE, ...)
    +
    + +
    +

    Arguments

    + + +
    model
    +

    deprecated.

    + + +
    breaks
    +

    deprecated.

    + + +
    nc
    +

    deprecated.

    + + +
    qq
    +

    deprecated.

    + + +
    ks
    +

    deprecated.

    + + +
    ...
    +

    deprecated.

    + +
    +
    +

    Value

    +

    Nothing, deprecated.

    +
    +
    +

    See also

    + +
    +
    +

    Author

    +

    David L Miller

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/ds.html b/docs/reference/ds.html new file mode 100644 index 0000000..cd485de --- /dev/null +++ b/docs/reference/ds.html @@ -0,0 +1,758 @@ + +Fit detection functions and calculate abundance from line or point transect data — ds • Distance + Skip to contents + + +
    +
    +
    + +
    +

    This function fits detection functions to line or point transect data and +then (provided that survey information is supplied) calculates abundance and +density estimates. The examples below illustrate some basic types of +analysis using ds().

    +
    + +
    +

    Usage

    +
    ds(
    +  data,
    +  truncation = ifelse(is.null(cutpoints), ifelse(is.null(data$distend),
    +    max(data$distance), max(data$distend)), max(cutpoints)),
    +  transect = "line",
    +  formula = ~1,
    +  key = c("hn", "hr", "unif"),
    +  adjustment = c("cos", "herm", "poly"),
    +  nadj = NULL,
    +  order = NULL,
    +  scale = c("width", "scale"),
    +  cutpoints = NULL,
    +  dht_group = FALSE,
    +  monotonicity = ifelse(formula == ~1, "strict", "none"),
    +  region_table = NULL,
    +  sample_table = NULL,
    +  obs_table = NULL,
    +  convert_units = 1,
    +  er_var = ifelse(transect == "line", "R2", "P2"),
    +  method = "nlminb",
    +  mono_method = "slsqp",
    +  quiet = FALSE,
    +  debug_level = 0,
    +  initial_values = NULL,
    +  max_adjustments = 5,
    +  er_method = 2,
    +  dht_se = TRUE,
    +  optimizer = "both",
    +  winebin = NULL,
    +  dht.group,
    +  region.table,
    +  sample.table,
    +  obs.table,
    +  convert.units,
    +  er.var,
    +  debug.level,
    +  initial.values,
    +  max.adjustments
    +)
    +
    + +
    +

    Arguments

    + + +
    data
    +

    a data.frame containing at least a column called distance or +a numeric vector containing the distances. NOTE! If there is a column +called size in the data then it will be interpreted as group/cluster size, +see the section "Clusters/groups", below. One can supply data as a "flat +file" and not supply region_table, sample_table and obs_table, see +"Data format", below and flatfile.

    + + +
    truncation
    +

    either truncation distance (numeric, e.g. 5) or percentage +(as a string, e.g. "15%"). Can be supplied as a list with elements left +and right if left truncation is required (e.g. list(left=1,right=20) or +list(left="1%",right="15%") or even list(left="1",right="15%")). By +default for exact distances the maximum observed distance is used as the +right truncation. When the data is binned, the right truncation is the +largest bin end point. Default left truncation is set to zero.

    + + +
    transect
    +

    indicates transect type "line" (default) or "point".

    + + +
    formula
    +

    formula for the scale parameter. For a CDS analysis leave +this as its default ~1.

    + + +
    key
    +

    key function to use; "hn" gives half-normal (default), "hr" +gives hazard-rate and "unif" gives uniform. Note that if uniform key is +used, covariates cannot be included in the model.

    + + +
    adjustment
    +

    adjustment terms to use; "cos" gives cosine (default), +"herm" gives Hermite polynomial and "poly" gives simple polynomial. A +value of NULL indicates that no adjustments are to be fitted.

    + + +
    nadj
    +

    the number of adjustment terms to fit. In the absence of +covariates in the formula, the default value (NULL) will select via AIC +(using a sequential forward selection algorithm) up to max.adjustment +adjustments (unless order is specified). When covariates are present +in the model formula, the default value of NULL results in no adjustment +terms being fitted in the model. A non-negative integer value will cause +the specified number of adjustments to be fitted. Supplying an integer +value will allow the use of adjustment terms in addition to specifying +covariates in the model. The order of adjustment terms used will depend +on the keyand adjustment. For key="unif", adjustments of order +1, 2, 3, ... are fitted when adjustment = "cos" and order 2, 4, 6, ... +otherwise. For key="hn" or "hr" adjustments of order 2, 3, 4, ... are +fitted when adjustment = "cos" and order 4, 6, 8, ... otherwise. See +Buckland et al. (2001, p. 47) for details.

    + + +
    order
    +

    order of adjustment terms to fit. The default value (NULL) +results in ds choosing the orders to use - see nadj. Otherwise a scalar +positive integer value can be used to fit a single adjustment term of the +specified order, and a vector of positive integers to fit multiple +adjustment terms of the specified orders. For simple and Hermite polynomial +adjustments, only even orders are allowed. The number of adjustment terms +specified here must match nadj (or nadj can be the default NULL value).

    + + +
    scale
    +

    the scale by which the distances in the adjustment terms are +divided. Defaults to "width", scaling by the truncation distance. If the +key is uniform only "width" will be used. The other option is "scale": +the scale parameter of the detection

    + + +
    cutpoints
    +

    if the data are binned, this vector gives the cutpoints of +the bins. Supplying a distance column in your data and specifying cutpoints +is the recommended approach for all standard binned analyses. +Ensure that the first element is 0 (or the left truncation +distance) and the last is the distance to the end of the furthest bin. +(Default NULL, no binning.) If you have provided distbegin and distend +columns in your data (note this should only be used when your cutpoints +are not constant across all your data, e.g. planes flying at differing +altitudes) then do not specify the cutpoints argument as this will cause +the distbegin and distend columns in your data to be overwritten.

    + + +
    dht_group
    +

    should density abundance estimates consider all groups to +be size 1 (abundance of groups) dht_group=TRUE or should the abundance of +individuals (group size is taken into account), dht_group=FALSE. Default +is FALSE (abundance of individuals is calculated).

    + + +
    monotonicity
    +

    should the detection function be constrained for +monotonicity weakly ("weak"), strictly ("strict") or not at all +("none" or FALSE). See Monotonicity, below. (Default "strict"). By +default it is on for models without covariates in the detection function, +off when covariates are present.

    + + +
    region_table
    +

    data_frame with two columns:

    • Region.Label label for the region

    • +
    • Area area of the region

    • +
    • region_table has one row for each stratum. If there is no +stratification then region_table has one entry with Area corresponding +to the total survey area. If Area is omitted density estimates only are +produced.

    • +
    + + +
    sample_table
    +

    data.frame mapping the regions to the samples +(i.e. transects). There are three columns:

    • Sample.Label label for the sample

    • +
    • Region.Label label for the region that the sample belongs to.

    • +
    • Effort the effort expended in that sample (e.g. transect length).

    • +
    + + +
    obs_table
    +

    data.frame mapping the individual observations +(objects) to regions and samples. There should be three columns:

    • object unique numeric identifier for the observation

    • +
    • Region.Label label for the region that the sample belongs to

    • +
    • Sample.Label label for the sample

    • +
    + + +
    convert_units
    +

    conversion between units for abundance estimation, see +"Units", below. (Defaults to 1, implying all of the units are "correct" +already.)

    + + +
    er_var
    +

    encounter rate variance estimator to use when abundance +estimates are required. Defaults to "R2" for line transects and "P2" for +point transects (>= 1.0.9, earlier versions <= 1.0.8 used the "P3" estimator +by default for points). See dht2 for more information and if more +complex options are required.

    + + +
    method
    +

    optimization method to use (any method usable by +optim or optimx). Defaults to +"nlminb".

    + + +
    mono_method
    +

    optimization method to use when monotonicity is enforced. +Can be either slsqp or solnp. Defaults to slsqp.

    + + +
    quiet
    +

    suppress non-essential messages (useful for bootstraps etc). +Default value FALSE.

    + + +
    debug_level
    +

    print debugging output. 0=none, 1-3 increasing levels +of debugging output.

    + + +
    initial_values
    +

    a list of named starting values, see +mrds_opt. Only allowed when AIC term selection is not +used.

    + + +
    max_adjustments
    +

    maximum number of adjustments to try (default 5) only +used when order=NULL.

    + + +
    er_method
    +

    encounter rate variance calculation: default = 2 gives the +method of Innes et al, using expected counts in the encounter rate. Setting +to 1 gives observed counts (which matches Distance for Windows) and 0 uses +binomial variance (only useful in the rare situation where study area = +surveyed area). See dht.se for more details.

    + + +
    dht_se
    +

    should uncertainty be calculated when using dht? Safe to +leave as TRUE, used in bootdht.

    + + +
    optimizer
    +

    By default this is set to 'both'. In this case +the R optimizer will be used and if present the MCDS optimizer will also +be used. The result with the best likelihood value will be selected. To +run only a specified optimizer set this value to either 'R' or 'MCDS'. +See mcds_dot_exe for setup instructions.

    + + +
    winebin
    +

    If you are trying to use our MCDS.exe optimizer on a +non-windows system then you may need to specify the winebin. Please +see mcds_dot_exe for more details.

    + + +
    dht.group
    +

    deprecated, see same argument with underscore, above.

    + + +
    region.table
    +

    deprecated, see same argument with underscore, above.

    + + +
    sample.table
    +

    deprecated, see same argument with underscore, above.

    + + +
    obs.table
    +

    deprecated, see same argument with underscore, above.

    + + +
    convert.units
    +

    deprecated, see same argument with underscore, above.

    + + +
    er.var
    +

    deprecated, see same argument with underscore, above.

    + + +
    debug.level
    +

    deprecated, see same argument with underscore, above.

    + + +
    initial.values
    +

    deprecated, see same argument with underscore, above.

    + + +
    max.adjustments
    +

    deprecated, see same argument with underscore, above.

    + +
    +
    +

    Value

    +

    a list with elements:

    • ddf a detection function model object.

    • +
    • dht abundance/density information (if survey region data was supplied, +else NULL)

    • +
    +
    +

    Details

    + + +

    If abundance estimates are required then the data.frames region_table +and sample_table must be supplied. If data does not contain the columns +Region.Label and Sample.Label then the data.frame obs_table must +also be supplied. Note that stratification only applies to abundance +estimates and not at the detection function level. Density and abundance +estimates, and corresponding estimates of variance and confidence intervals, +are calculated using the methods described in Buckland et al. (2001) +sections 3.6.1 and 3.7.1 (further details can be found in the documentation +for dht).

    +

    For more advanced abundance/density estimation please see the +dht and dht2 functions.

    +

    Examples of distance sampling analyses are available at +http://examples.distancesampling.org/.

    +

    Hints and tips on fitting (particularly optimisation issues) are on the +mrds_opt manual page.

    +
    +
    +

    Clusters/groups

    + + +

    Note that if the data contains a column named size, cluster size will be +estimated and density/abundance will be based on a clustered analysis of +the data. Setting this column to be NULL will perform a non-clustered +analysis (for example if "size" means something else in your dataset).

    +
    +
    +

    Truncation

    + + +

    The right truncation point is by default set to be largest observed distance +or bin end point. This is a default will not be appropriate for all data and +can often be the cause of model convergence failures. It is recommended that +one plots a histogram of the observed distances prior to model fitting so as +to get a feel for an appropriate truncation distance. (Similar arguments go +for left truncation, if appropriate). Buckland et al (2001) provide +guidelines on truncation.

    +

    When specified as a percentage, the largest right and smallest left +percent distances are discarded. Percentages cannot be supplied when using +binned data.

    +

    For left truncation, there are two options: (1) fit a detection function to +the truncated data as is (this is what happens when you set left). This +does not assume that g(x)=1 at the truncation point. (2) manually remove +data with distances less than the left truncation distance – effectively +move the centre line out to be the truncation distance (this needs to be +done before calling ds). This then assumes that detection is certain at +the left truncation distance. The former strategy has a weaker assumption, +but will give higher variance as the detection function close to the line +has no data to tell it where to fit – it will be relying on the data from +after the left truncation point and the assumed shape of the detection +function. The latter is most appropriate in the case of aerial surveys, +where some area under the plane is not visible to the observers, but their +probability of detection is certain at the smallest distance.

    +
    +
    +

    Binning

    + + +

    Note that binning is performed such that bin 1 is all distances greater or +equal to cutpoint 1 (>=0 or left truncation distance) and less than cutpoint +2. Bin 2 is then distances greater or equal to cutpoint 2 and less than +cutpoint 3 and so on.

    +
    +
    +

    Monotonicity

    + + +

    When adjustment terms are used, it is possible for the detection function to +not always decrease with increasing distance. This is unrealistic and can +lead to bias. To avoid this, the detection function can be constrained for +monotonicity (and is by default for detection functions without covariates).

    +

    Monotonicity constraints are supported in a similar way to that described +in Buckland et al (2001). 20 equally spaced points over the range of the +detection function (left to right truncation) are evaluated at each round +of the optimisation and the function is constrained to be either always +less than it's value at zero ("weak") or such that each value is +less than or equal to the previous point (monotonically decreasing; +"strict"). See also check.mono.

    +

    Even with no monotonicity constraints, checks are still made that the +detection function is monotonic, see check.mono.

    +
    +
    +

    Units

    + + +

    In extrapolating to the entire survey region it is important that the unit +measurements be consistent or converted for consistency. A conversion +factor can be specified with the convert_units argument. The values of +Area in region_table, must be made consistent with the units for +Effort in sample_table and the units of distance in the data.frame +that was analyzed. It is easiest if the units of Area are the square of +the units of Effort and then it is only necessary to convert the units of +distance to the units of Effort. For example, if Effort was entered +in kilometres and Area in square kilometres and distance in metres then +using convert_units=0.001 would convert metres to kilometres, density +would be expressed in square kilometres which would then be consistent with +units for Area. However, they can all be in different units as long as +the appropriate composite value for convert_units is chosen. Abundance +for a survey region can be expressed as: A*N/a where A is Area for +the survey region, N is the abundance in the covered (sampled) region, +and a is the area of the sampled region and is in units of Effort * distance. The sampled region a is multiplied by convert_units, so it +should be chosen such that the result is in the same units as Area. For +example, if Effort was entered in kilometres, Area in hectares (100m x +100m) and distance in metres, then using convert_units=10 will convert +a to units of hectares (100 to convert metres to 100 metres for distance +and .1 to convert km to 100m units).

    +
    +
    +

    Data format

    + + +

    One can supply data only to simply fit a detection function. However, if +abundance/density estimates are necessary further information is required. +Either the region_table, sample_table and obs_table data.frames can +be supplied or all data can be supplied as a "flat file" in the data +argument. In this format each row in data has additional information that +would ordinarily be in the other tables. This usually means that there are +additional columns named: Sample.Label, Region.Label, Effort and +Area for each observation. See flatfile for an example.

    +
    +
    +

    Density estimation

    + + +

    If column Area is omitted, a density estimate is generated but note that +the degrees of freedom/standard errors/confidence intervals will not match +density estimates made with the Area column present.

    +
    +
    +

    References

    +

    Buckland, S.T., Anderson, D.R., Burnham, K.P., Laake, J.L., Borchers, D.L., +and Thomas, L. (2001). Distance Sampling. Oxford University Press. Oxford, +UK.

    +

    Buckland, S.T., Anderson, D.R., Burnham, K.P., Laake, J.L., Borchers, D.L., +and Thomas, L. (2004). Advanced Distance Sampling. Oxford University Press. +Oxford, UK.

    +
    + +
    +

    Author

    +

    David L. Miller

    +
    + +
    +

    Examples

    +
    
    +# An example from mrds, the golf tee data.
    +library(Distance)
    +data(book.tee.data)
    +tee.data <- subset(book.tee.data$book.tee.dataframe, observer==1)
    +ds.model <- ds(tee.data, 4)
    +#> Starting AIC adjustment term selection.
    +#> Fitting half-normal key function
    +#> AIC= 311.138
    +#> Fitting half-normal key function with cosine(2) adjustments
    +#> AIC= 313.124
    +#> 
    +#> Half-normal key function selected.
    +#> No survey area information supplied, only estimating detection function.
    +summary(ds.model)
    +#> 
    +#> Summary for distance analysis 
    +#> Number of observations :  124 
    +#> Distance range         :  0  -  4 
    +#> 
    +#> Model       : Half-normal key function 
    +#> AIC         :  311.1385 
    +#> Optimisation:  mrds (nlminb) 
    +#> 
    +#> Detection function parameters
    +#> Scale coefficient(s):  
    +#>              estimate         se
    +#> (Intercept) 0.6632435 0.09981249
    +#> 
    +#>                        Estimate          SE         CV
    +#> Average p             0.5842744  0.04637627 0.07937412
    +#> N in covered region 212.2290462 20.85130344 0.09824906
    +plot(ds.model)
    +
    +
    +# same model, but calculating abundance
    +# need to supply the region, sample and observation tables
    +region <- book.tee.data$book.tee.region
    +samples <- book.tee.data$book.tee.samples
    +obs <- book.tee.data$book.tee.obs
    +
    +ds.dht.model <- ds(tee.data, 4, region_table=region,
    +                   sample_table=samples, obs_table=obs)
    +#> Starting AIC adjustment term selection.
    +#> Fitting half-normal key function
    +#> AIC= 311.138
    +#> Fitting half-normal key function with cosine(2) adjustments
    +#> AIC= 313.124
    +#> 
    +#> Half-normal key function selected.
    +summary(ds.dht.model)
    +#> 
    +#> Summary for distance analysis 
    +#> Number of observations :  124 
    +#> Distance range         :  0  -  4 
    +#> 
    +#> Model       : Half-normal key function 
    +#> AIC         :  311.1385 
    +#> Optimisation:  mrds (nlminb) 
    +#> 
    +#> Detection function parameters
    +#> Scale coefficient(s):  
    +#>              estimate         se
    +#> (Intercept) 0.6632435 0.09981249
    +#> 
    +#>                        Estimate          SE         CV
    +#> Average p             0.5842744  0.04637627 0.07937412
    +#> N in covered region 212.2290462 20.85130344 0.09824906
    +#> 
    +#> Summary for clusters
    +#> 
    +#> Summary statistics:
    +#>   Region Area CoveredArea Effort   n  k        ER      se.ER      cv.ER
    +#> 1      1 1040        1040    130  72  6 0.5538462 0.02926903 0.05284685
    +#> 2      2  640         640     80  52  5 0.6500000 0.08292740 0.12758061
    +#> 3  Total 1680        1680    210 124 11 0.5904762 0.03641856 0.06167659
    +#> 
    +#> Abundance:
    +#>   Label  Estimate       se         cv       lcl      ucl        df
    +#> 1     1 123.22977 11.75088 0.09535744 101.72724 149.2774 43.918771
    +#> 2     2  88.99928 13.37273 0.15025666  62.88926 125.9495  7.658528
    +#> 3 Total 212.22905 21.33324 0.10051991 173.30068 259.9019 40.063051
    +#> 
    +#> Density:
    +#>   Label  Estimate         se         cv        lcl       ucl        df
    +#> 1     1 0.1184902 0.01129892 0.09535744 0.09781465 0.1435359 43.918771
    +#> 2     2 0.1390614 0.02089490 0.15025666 0.09826447 0.1967961  7.658528
    +#> 3 Total 0.1263268 0.01269836 0.10051991 0.10315517 0.1547035 40.063051
    +#> 
    +#> Summary for individuals
    +#> 
    +#> Summary statistics:
    +#>   Region Area CoveredArea Effort   n  k       ER     se.ER      cv.ER mean.size
    +#> 1      1 1040        1040    130 229  6 1.761538 0.1165805 0.06618107  3.180556
    +#> 2      2  640         640     80 152  5 1.900000 0.3342319 0.17591151  2.923077
    +#> 3  Total 1680        1680    210 381 11 1.814286 0.1463570 0.08066920  3.072581
    +#>     se.mean
    +#> 1 0.2086982
    +#> 2 0.2261991
    +#> 3 0.1537082
    +#> 
    +#> Abundance:
    +#>   Label Estimate       se        cv      lcl      ucl        df
    +#> 1     1 391.9391 40.50494 0.1033450 317.2772 484.1706 27.423274
    +#> 2     2 260.1517 50.20666 0.1929899 162.2494 417.1289  5.786773
    +#> 3 Total 652.0909 73.79805 0.1131714 516.5938 823.1274 23.815556
    +#> 
    +#> Density:
    +#>   Label  Estimate         se        cv       lcl       ucl        df
    +#> 1     1 0.3768645 0.03894706 0.1033450 0.3050742 0.4655487 27.423274
    +#> 2     2 0.4064871 0.07844791 0.1929899 0.2535147 0.6517639  5.786773
    +#> 3 Total 0.3881493 0.04392741 0.1131714 0.3074963 0.4899568 23.815556
    +#> 
    +#> Expected cluster size
    +#>   Region Expected.S se.Expected.S cv.Expected.S
    +#> 1      1   3.180556     0.2114629    0.06648615
    +#> 2      2   2.923077     0.1750319    0.05987935
    +#> 3  Total   3.072581     0.1391365    0.04528327
    +
    +# specify order 2 cosine adjustments
    +ds.model.cos2 <- ds(tee.data, 4, adjustment="cos", order=2)
    +#> Fitting half-normal key function with cosine(2) adjustments
    +#> AIC= 313.124
    +#> No survey area information supplied, only estimating detection function.
    +summary(ds.model.cos2)
    +#> 
    +#> Summary for distance analysis 
    +#> Number of observations :  124 
    +#> Distance range         :  0  -  4 
    +#> 
    +#> Model       : Half-normal key function with cosine adjustment term of order 2 
    +#> 
    +#> Strict monotonicity constraints were enforced.
    +#> AIC         :  313.1239 
    +#> Optimisation:  MCDS.exe 
    +#> 
    +#> Detection function parameters
    +#> Scale coefficient(s):  
    +#>              estimate        se
    +#> (Intercept) 0.6606793 0.1043329
    +#> 
    +#> Adjustment term coefficient(s):  
    +#>                 estimate        se
    +#> cos, order 2 -0.01593329 0.1351281
    +#> 
    +#>                        Estimate          SE        CV
    +#> Average p             0.5925864  0.08165162 0.1377885
    +#> N in covered region 209.2521718 31.22787931 0.1492356
    +
    +# specify order 2 and 3 cosine adjustments, turning monotonicity
    +# constraints off
    +ds.model.cos23 <- ds(tee.data, 4, adjustment="cos", order=c(2, 3),
    +                   monotonicity=FALSE)
    +#> Fitting half-normal key function with cosine(2,3) adjustments
    +#> AIC= 314.26
    +#> No survey area information supplied, only estimating detection function.
    +# check for non-monotonicity -- actually no problems
    +check.mono(ds.model.cos23$ddf, plot=TRUE, n.pts=100)
    +
    +#> [1] TRUE
    +
    +# include both a covariate and adjustment terms in the model
    +ds.model.cos2.sex <- ds(tee.data, 4, adjustment="cos", order=2,
    +                        monotonicity=FALSE, formula=~as.factor(sex))
    +#> Fitting half-normal key function with cosine(2) adjustments
    +#> Warning: Detection function is not weakly monotonic!
    +#> Warning: Detection function is not strictly monotonic!
    +#> Warning: Detection function is greater than 1 at some distances
    +#> Warning: Detection function is not weakly monotonic!
    +#> Warning: Detection function is not strictly monotonic!
    +#> Warning: Detection function is greater than 1 at some distances
    +#> AIC= 306.019
    +#> Warning: Detection function is not weakly monotonic!
    +#> Warning: Detection function is not strictly monotonic!
    +#> Warning: Detection function is greater than 1 at some distances
    +#> No survey area information supplied, only estimating detection function.
    +# check for non-monotonicity -- actually no problems
    +check.mono(ds.model.cos2.sex$ddf, plot=TRUE, n.pts=100)
    +#> Warning: Detection function is not weakly monotonic!
    +#> Warning: Detection function is not strictly monotonic!
    +#> Warning: Detection function is greater than 1 at some distances
    +
    +#> [1] FALSE
    +
    +# truncate the largest 10% of the data and fit only a hazard-rate
    +# detection function
    +ds.model.hr.trunc <- ds(tee.data, truncation="10%", key="hr",
    +                        adjustment=NULL)
    +#> Fitting hazard-rate key function
    +#> Warning: Estimated hazard-rate scale parameter close to 0 (on log scale). Possible problem in data (e.g., spike near zero distance).
    +#> Warning: Estimated hazard-rate scale parameter close to 0 (on log scale). Possible problem in data (e.g., spike near zero distance).
    +#> AIC= 260.267
    +#> Warning: Estimated hazard-rate scale parameter close to 0 (on log scale). Possible problem in data (e.g., spike near zero distance).
    +#> No survey area information supplied, only estimating detection function.
    +summary(ds.model.hr.trunc)
    +#> 
    +#> Summary for distance analysis 
    +#> Number of observations :  117 
    +#> Distance range         :  0  -  3.104 
    +#> 
    +#> Model       : Hazard-rate key function 
    +#> AIC         :  260.2669 
    +#> Optimisation:  mrds (nlminb) 
    +#> 
    +#> Detection function parameters
    +#> Scale coefficient(s):  
    +#>              estimate        se
    +#> (Intercept) 0.5240633 0.4245238
    +#> 
    +#> Shape coefficient(s):  
    +#>             estimate       se
    +#> (Intercept)        0 0.594522
    +#> 
    +#>                        Estimate         SE        CV
    +#> Average p             0.6969118  0.1182424 0.1696662
    +#> N in covered region 167.8835155 29.7381876 0.1771358
    +
    +# compare AICs between these models:
    +AIC(ds.model)
    +#>          df      AIC
    +#> ds.model  1 311.1385
    +AIC(ds.model.cos2)
    +#>               df      AIC
    +#> ds.model.cos2  2 313.1239
    +AIC(ds.model.cos23)
    +#>                df      AIC
    +#> ds.model.cos23  3 314.2601
    +
    +
    +
    +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/ducknest.html b/docs/reference/ducknest.html new file mode 100644 index 0000000..ceb45dc --- /dev/null +++ b/docs/reference/ducknest.html @@ -0,0 +1,108 @@ + +Ducknest line transect survey data — ducknest • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Simulated line transect survey of duck nests, designed to reproduce the data +of Figure 2 in Anderson and Pospahala (1970).

    +
    + + +
    +

    Format

    +

    A data.frame with 534 rows and 7 variables

    • Region.Label strata names (single stratum in this instance)

    • +
    • Area size of refuge (0 in this case, actual size 60km^2)

    • +
    • Sample.Label transect ID

    • +
    • Effort length of transects (km)

    • +
    • object nest ID

    • +
    • distance perpendicular distance (m)

    • +
    • Study.Area name of wildlife refuge

    • +
    +
    +

    Source

    +

    Simulated data, from the distance sampling introductory course, +Centre for Research into Ecological & Environmental Modelling, University of +St Andrews.

    +
    +
    +

    Details

    +

    The Monte Vista National Wildlife Refuge is in southern Colorado in the USA +at an altitude of roughly 2400m.

    +
    +
    +

    References

    +

    Anderson, D. R., and R. S. Pospahala. 1970. Correction of bias +in belt transect studies of immotile objects. The Journal of Wildlife +Management 34 (1): 141–146. doi:10.2307/3799501

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/dummy_ddf.html b/docs/reference/dummy_ddf.html new file mode 100644 index 0000000..2592b4e --- /dev/null +++ b/docs/reference/dummy_ddf.html @@ -0,0 +1,109 @@ + +Detection function objects when detection is certain — dummy_ddf • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Create a detection function object for strip/plot surveys for use with +dht2.

    +
    + +
    +

    Usage

    +
    dummy_ddf(data, width, left = 0, transect = "line")
    +
    + +
    +

    Arguments

    + + +
    data
    +

    as specified for ds and ddf (including a size column)

    + + +
    width
    +

    right truncation

    + + +
    left
    +

    left truncation (default 0, no left truncation)

    + + +
    transect
    +

    "line" or "point" transect

    + +
    +
    +

    Author

    +

    David L Miller

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/flatfile.html b/docs/reference/flatfile.html new file mode 100644 index 0000000..211558b --- /dev/null +++ b/docs/reference/flatfile.html @@ -0,0 +1,160 @@ + +The flatfile data format — flatfile • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Distance allows loading data as a "flat file" and analyse data (and +obtain abundance estimates) straight away, provided that the format of the +flat file is correct. One can provide the file as, for example, an Excel +spreadsheet using readxl::read_xls in or CSV using +read.csv.

    +
    + + +
    +

    Details

    +

    Each row of the data table corresponds to either: (1) an observation or (2) +a sample (transect) without observations. In either case the following +columns must be present:

    • distance observed distance to object

    • +
    • object a unique identifier for each observation (only required when +using dht2)

    • +
    • Sample.Label identifier for the sample (transect id)

    • +
    • Effort effort for this transect (e.g. line transect length or number +of times point transect was visited)

    • +
    • Region.Label label for a given stratum (see below)

    • +
    • Area area of the strataWhen the row represents a transect without observations,distanceand any other observation-specific covariates (includingsizeand detection function covariates) take the valueNA`.

    • +

    Note that in the simplest case (one area surveyed only once) there is only +one Region.Label and a single corresponding Area duplicated for each +observation.

    +

    The example given below was provided by Eric Rexstad. Additional examples +can be found at http://examples.distancesampling.org/.

    +
    + +
    +

    Examples

    +
    if (FALSE) { # \dontrun{
    +library(Distance)
    +# Need to have the readxl package installed from CRAN
    +require(readxl)
    +
    +# Need to get the file path first
    +minke.filepath <- system.file("minke.xlsx", package="Distance")
    +
    +# Load the Excel file, note that col_names=FALSE and we add column names after
    +minke <- read_xlsx(minke.filepath, col_names=FALSE)
    +names(minke) <- c("Region.Label", "Area", "Sample.Label", "Effort",
    +                  "distance")
    +# One may want to call edit(minke) or head(minke) at this point
    +# to examine the data format
    +
    +## perform an analysis using the exact distances
    +pooled.exact <- ds(minke, truncation=1.5, key="hr", order=0)
    +summary(pooled.exact)
    +
    +
    +## Try a binned analysis
    +# first define the bins
    +dist.bins <- c(0,.214, .428,.643,.857,1.071,1.286,1.5)
    +pooled.binned <- ds(minke, truncation=1.5, cutpoints=dist.bins, key="hr",
    +                    order=0)
    +
    +# binned with stratum as a covariate
    +minke$stratum <- ifelse(minke$Region.Label=="North", "N", "S")
    +strat.covar.binned <- ds(minke, truncation=1.5, key="hr",
    +                         formula=~as.factor(stratum), cutpoints=dist.bins)
    +
    +# Stratified by North/South
    +full.strat.binned.North <- ds(minke[minke$Region.Label=="North",],
    +                  truncation=1.5, key="hr", order=0, cutpoints=dist.bins)
    +full.strat.binned.South <- ds(minke[minke$Region.Label=="South",],
    +                     truncation=1.5, key="hr", order=0, cutpoints=dist.bins)
    +
    +## model summaries
    +model.sel.bin <- data.frame(name=c("Pooled f(0)", "Stratum covariate",
    +                                   "Full stratification"),
    +                            aic=c(pooled.binned$ddf$criterion,
    +                                  strat.covar.binned$ddf$criterion,
    +                                  full.strat.binned.North$ddf$criterion+
    +                                  full.strat.binned.South$ddf$criterion))
    +
    +# Note model with stratum as covariate is most parsimonious
    +print(model.sel.bin)
    +} # }
    +
    +
    +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/gof_ds.html b/docs/reference/gof_ds.html new file mode 100644 index 0000000..b5f00d6 --- /dev/null +++ b/docs/reference/gof_ds.html @@ -0,0 +1,188 @@ + +Goodness of fit testing and quantile-quantile plots — gof_ds • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Goodness of fit testing for detection function models. For continuous +distances Kolmogorov-Smirnov and Cramer-von Mises tests can be used, when +binned or continuous distances are used a \(\chi^2\) test can be used.

    +
    + +
    +

    Usage

    +
    gof_ds(
    +  model,
    +  plot = TRUE,
    +  chisq = FALSE,
    +  nboot = 100,
    +  ks = FALSE,
    +  nc = NULL,
    +  breaks = NULL,
    +  ...
    +)
    +
    + +
    +

    Arguments

    + + +
    model
    +

    a fitted detection function.

    + + +
    plot
    +

    if TRUE the Q-Q plot is plotted

    + + +
    chisq
    +

    if TRUE then chi-squared statistic is calculated even +for models that use exact distances. Ignored for models that use binned +distances

    + + +
    nboot
    +

    number of replicates to use to calculate p-values for the +Kolmogorov-Smirnov goodness of fit test statistics

    + + +
    ks
    +

    perform the Kolmogorov-Smirnov test (this involves many bootstraps +so can take a while)

    + + +
    nc
    +

    number of evenly-spaced distance classes for chi-squared test, if +chisq=TRUE

    + + +
    breaks
    +

    vector of cutpoints to use for binning, if chisq=TRUE

    + + +
    ...
    +

    other arguments to be passed to ddf.gof

    + +
    +
    +

    Details

    +

    Kolmogorov-Smirnov and Cramer-von Mises tests are based on looking at the +quantile-quantile plot produced by qqplot.ddf and +deviations from the line \(x=y\).

    +

    The Kolmogorov-Smirnov test asks the question "what's the largest vertical +distance between a point and the \(y=x\) line?" It uses this distance as a +statistic to test the null hypothesis that the samples (EDF and CDF in our +case) are from the same distribution (and hence our model fits well). If the +deviation between the \(y=x\) line and the points is too large we reject +the null hypothesis and say the model doesn't have a good fit.

    +

    Rather than looking at the single biggest difference between the y=x line +and the points in the Q-Q plot, we might prefer to think about all the +differences between line and points, since there may be many smaller +differences that we want to take into account rather than looking for one +large deviation. Its null hypothesis is the same, but the statistic it uses +is the sum of the deviations from each of the point to the line.

    +

    A chi-squared test is also run if chisq=TRUE. In this case binning of +distances is required if distance data are continuous. This can be specified +as a number of equally-spaced bins (using the argument nc=) or the +cutpoints of bins (using breaks=). The test compares the number of +observations in a given bin to the number predicted under the fitted +detection function.

    +
    +
    +

    Details

    + + + +

    Note that a bootstrap procedure is required for the Kolmogorov-Smirnov test +to ensure that the p-values from the procedure are correct as the we are +comparing the cumulative distribution function (CDF) and empirical +distribution function (EDF) and we have estimated the parameters of the +detection function. The nboot parameter controls the number of bootstraps +to use. Set to 0 to avoid computing bootstraps (much faster but with no +Kolmogorov-Smirnov results, of course).

    +
    + +
    +

    Examples

    +
    if (FALSE) { # \dontrun{
    +# fit and test a simple model for the golf tee data
    +library(Distance)
    +data(book.tee.data)
    +tee.data <- subset(book.tee.data$book.tee.dataframe, observer==1)
    +ds.model <- ds(tee.data,4)
    +# don't make plot
    +gof_ds(ds.model, plot=FALSE)
    +} # }
    +
    +
    +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/golftees.html b/docs/reference/golftees.html new file mode 100644 index 0000000..3cc82a1 --- /dev/null +++ b/docs/reference/golftees.html @@ -0,0 +1,132 @@ + +Golf tee data — golftees • Distance + Skip to contents + + +
    +
    +
    + +
    +

    The data are from independent surveys by eight observers of a population of +250 groups (760 individuals) of golf tees. The tees, of two colours, were +placed in groups of between 1 and 8 in a survey region of 1680 m^2, either +exposed above the surrounding grass, or at least partially hidden by it. +They were surveyed by the 1999 statistics honours class at the University of +St Andrews.

    +
    + + +
    +

    Format

    +

    Data is a list with 4 elements each of which is a data.frame:

    • book.tee.dataframe

      • object object ID

      • +
      • observer observer ID

      • +
      • detected detected or not detected

      • +
      • distance perpendicular distance

      • +
      • size group size

      • +
      • sex number of tees in group

      • +
      • exposure tee height above ground

      • +
    • +
    • book.tee.region

      • Region.Label stratum name

      • +
      • Area stratum size

      • +
    • +
    • book.tee.samples

      • Sample.Label transect label

      • +
      • Region.Label stratum name

      • +
      • Effort transect length

      • +
    • +
    • book.tee.obs

      • object object ID

      • +
      • Region.Label stratum in which it was detected

      • +
      • Sample.Label transect on which it was detected

      • +
    • +
    +
    +

    Details

    +

    We treat each group of golf tees as a single animal with size equal to the +number of tees in the group; yellow tees are male, green are female; tees +exposed above the surrounding grass are classified as exposed, others as +unexposed. We are grateful to Miguel Bernal for making these data +available; they were collected by him as part of a masters project.

    +
    +
    +

    References

    +

    Borchers, D. L., S.T. Buckland, and W. Zucchini. 2002. Estimating Animal +Abundance: Closed Populations. Statistics for Biology and Health. London: +Springer-Verlag. https://link.springer.com/book/10.1007/978-1-4471-3708-5

    +

    Buckland, S.T., D.R. Anderson, K.P. Burnham, J.L. Laake, D.L. Borchers, and +L. Thomas. Advanced Distance Sampling: Estimating Abundance of Biological +Populations. Oxford University Press. Oxford, 2004.

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/index.html b/docs/reference/index.html new file mode 100644 index 0000000..fc94634 --- /dev/null +++ b/docs/reference/index.html @@ -0,0 +1,464 @@ + +Package index • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Data preparation

    + + + + +
    + + + + +
    + + create_bins() + +
    +
    Create bins from a set of binned distances and a set of cutpoints.
    +
    + + create.bins() + +
    +
    Create bins from a set of binned distances and a set of cutpoints.
    +
    + + checkdata() + +
    +
    Check that the data supplied to ds is correct
    +
    + + flatfile + +
    +
    The flatfile data format
    +
    +

    Fitting

    + + + + +
    + + + + +
    + + ds() + +
    +
    Fit detection functions and calculate abundance from line or point transect data
    +
    +

    Diagnostics

    + + + + +
    + + + + +
    + + checkdata() + +
    +
    Check that the data supplied to ds is correct
    +
    + + p_dist_table + +
    +
    Distribution of probabilities of detection
    +
    + + gof_ds() + +
    +
    Goodness of fit testing and quantile-quantile plots
    +
    + + ds.gof() + +
    +
    Goodness of fit tests for distance sampling models
    +
    +

    Model selection

    + + + + +
    + + + + +
    + + AIC(<dsmodel>) + +
    +
    Akaike's An Information Criterion for detection functions
    +
    + + logLik(<dsmodel>) + +
    +
    log-likelihood value for a fitted detection function
    +
    + + QAIC() chi2_select() + +
    +
    Tools for model selection when distance sampling data are overdispersed
    +
    + + summarize_ds_models() + +
    +
    Make a table of summary statistics for detection function models
    +
    +

    Printing and plotting

    + + + + +
    + + + + +
    + + plot(<dsmodel>) + +
    +
    Plot a fitted detection function
    +
    + + add_df_covar_line + +
    +
    Add covariate levels detection function plots
    +
    + + print(<dht_result>) + +
    +
    Print abundance estimates
    +
    + + print(<dsmodel>) + +
    +
    Simple pretty printer for distance sampling analyses
    +
    + + summary(<dsmodel>) + +
    +
    Summary of distance sampling analysis
    +
    + + print(<summary.dsmodel>) + +
    +
    Print summary of distance detection function model object
    +
    +

    Bootstrap variance estimation

    + + + + +
    + + + + +
    + + bootdht() + +
    +
    Bootstrap uncertainty estimation for distance sampling models
    +
    + + bootdht_Dhat_summarize() + +
    +
    Simple summary of density results for bootstrap model
    +
    + + bootdht_Nhat_summarize() + +
    +
    Simple summary of abundance results for bootstrap model
    +
    + + make_activity_fn() + +
    +
    Multiplier bootstrap helper functions
    +
    + + summary(<dht_bootstrap>) + +
    +
    Summarize bootstrap abundance uncertainty estimate output
    +
    +

    Advanced

    + + + + +
    + + + + +
    + + dht2() + +
    +
    Abundance estimation for distance sampling models
    +
    +

    Data sets

    + + + + +
    + + + + +
    + + amakihi amakihi_units + +
    +
    Hawaiian amakihi point transect data
    +
    + + capercaillie capercaillie_units + +
    +
    Capercaillie in Monaughty Forest
    +
    + + ClusterExercise ClusterExercise_units + +
    +
    Simulated minke whale data with cluster size
    +
    + + CueCountingExample CueCountingExample_units + +
    +
    Cue counts of whale blows
    +
    + + ducknest ducknest_units ducknests_units + +
    +
    Ducknest line transect survey data
    +
    + + DuikerCameraTraps DuikerCameraTraps_units + +
    +
    Duiker camera trap survey
    +
    + + ETP_Dolphin ETP_Dolphin_units + +
    +
    Eastern Tropical Pacific spotted dolphin survey
    +
    + + golftees golftees_units + +
    +
    Golf tee data
    +
    + + LTExercise LTExercise_units + +
    +
    Simulated line transect survey data
    +
    + + minke + +
    +
    Simulated minke whale data
    +
    + + PTExercise PTExercise_units + +
    +
    Simulated point transect survey data
    +
    + + Savannah_sparrow_1980 Savannah_sparrow_1981 Savannah_sparrow_1980_units Savannah_sparrow_1981_units + +
    +
    Savanna sparrow point transects
    +
    + + sikadeer sikadeer_units + +
    +
    Sika deer pellet data from southern Scotland
    +
    + + Stratify_example Stratify_example_units + +
    +
    Simulated minke whale data
    +
    + + Systematic_variance_1 Systematic_variance_2 Systematic_variance_1_units Systematic_variance_2_units + +
    +
    Simulation of encounter rate variance
    +
    + + unimak unimak_units + +
    +
    Simulated line transect survey data with covariates
    +
    + + wren wren_5min wren_snapshot wren_cuecount wren_lt wren_5min_units wren_snapshot_units wren_cuecount_units wren_lt_units + +
    +
    Steve Buckland's winter wren surveys
    +
    +

    Miscellaneous

    + + + + +
    + + + + +
    + + convert_units() + +
    +
    Convert units for abundance estimation
    +
    + + units_table() + +
    +
    Generate table of unit conversions
    +
    + + dummy_ddf() + +
    +
    Detection function objects when detection is certain
    +
    + + predict(<dsmodel>) + +
    +
    Predictions from a fitted detection function
    +
    + + predict(<fake_ddf>) + +
    +
    Prediction for fake detection functions
    +
    + + unflatten() + +
    +
    Unflatten flatfile data.frames
    +
    + + Distance-package Distance + +
    +
    Distance sampling
    +
    +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/logLik.dsmodel.html b/docs/reference/logLik.dsmodel.html new file mode 100644 index 0000000..6373311 --- /dev/null +++ b/docs/reference/logLik.dsmodel.html @@ -0,0 +1,116 @@ + +log-likelihood value for a fitted detection function — logLik.dsmodel • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Extract the log-likelihood from a fitted detection function.

    +
    + +
    +

    Usage

    +
    # S3 method for class 'dsmodel'
    +logLik(object, ...)
    +
    + +
    +

    Arguments

    + + +
    object
    +

    a fitted detection function model object

    + + +
    ...
    +

    included for S3 completeness, but ignored

    + +
    +
    +

    Value

    +

    a numeric value giving the log-likelihood with two attributes: +"df" the "degrees of freedom for the model (number of parameters) and +"nobs" the number of observations used to fit the model

    +
    +
    +

    Author

    +

    David L Miller

    +
    + +
    +

    Examples

    +
    if (FALSE) { # \dontrun{
    +library(Distance)
    +data(minke)
    +model <- ds(minke, truncation=4)
    +# extract the log likelihood
    +logLik(model)
    +} # }
    +
    +
    +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/make_activity_fn.html b/docs/reference/make_activity_fn.html new file mode 100644 index 0000000..156353d --- /dev/null +++ b/docs/reference/make_activity_fn.html @@ -0,0 +1,116 @@ + +Multiplier bootstrap helper functions — make_activity_fn • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Helper to use a models specified using activity::fitact to fit an +activity model and generate single realisations for bootstrapping with +bootdht.

    +
    + +
    +

    Usage

    +
    make_activity_fn(..., detector_daily_duration = 24)
    +
    + +
    +

    Arguments

    + + +
    ...
    +

    parameters specified by activity::fitact

    + + +
    detector_daily_duration
    +

    by default we assume that detectors were able to detect animals for 24 hours, if they were only able to do this for some proportion of the day (say daylight hours), then adjust this argument accordingly

    + +
    +
    +

    Value

    +

    a function which generates a single bootstrap estimate of +availability

    +
    +
    +

    Details

    +

    Uses activity::fitact to generate single possible availability estimates +based on bootstraps. The function returns another function, which can be +passed to bootdht. It is recommended that you try out the function before +passing it to bootdht. See examples for a template for use.

    +
    +
    +

    Author

    +

    David L Miller

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/minke.html b/docs/reference/minke.html new file mode 100644 index 0000000..0d5d339 --- /dev/null +++ b/docs/reference/minke.html @@ -0,0 +1,130 @@ + +Simulated minke whale data — minke • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Data simulated from models fitted to 1992/1993 Southern Hemisphere minke +whale data collected by the International Whaling Commission. See Branch and +Butterworth (2001) for survey details (survey design is shown in figure +1(e)). Data simulated by David Borchers.

    +
    + + +
    +

    Format

    +

    data.frame with 99 observations of 5 variables:

    • Region.Label stratum label ("North" or "South")

    • +
    • Area stratum area

    • +
    • Sample.Label transect identifier

    • +
    • Effort transect length

    • +
    • distance observed distance

    • +
    • object unique object ID

    • +
    +
    +

    Source

    +

    Shipped with the Distance for Windows.

    +
    +
    +

    Details

    +

    Data are included here as both R data and as an Excel spreadsheet to +illustrate the "flat file" input method. See flatfile for how +to load this data and an example analysis.

    +
    +
    +

    References

    +

    Branch, T.A. and D.S. Butterworth (2001) Southern Hemisphere +minke whales: standardised abundance estimates from the 1978/79 to 1997/98 +IDCR-SOWER surveys. Journal of Cetacean Research and Management 3(2): +143-174

    +

    Hedley, S.L., and S.T. Buckland. Spatial Models for Line Transect Sampling. +Journal of Agricultural, Biological, and Environmental Statistics 9, no. 2 +(2004): 181-199. doi:10.1198/1085711043578 +.

    +
    + +
    +

    Examples

    +
    data(minke)
    +head(minke)
    +#>   Region.Label  Area Sample.Label Effort distance object
    +#> 1        South 84734            1  86.75     0.10      1
    +#> 2        South 84734            1  86.75     0.22      2
    +#> 3        South 84734            1  86.75     0.16      3
    +#> 4        South 84734            1  86.75     0.78      4
    +#> 5        South 84734            1  86.75     0.21      5
    +#> 6        South 84734            1  86.75     0.95      6
    +
    +
    +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/p_dist_table.html b/docs/reference/p_dist_table.html new file mode 100644 index 0000000..c462fb5 --- /dev/null +++ b/docs/reference/p_dist_table.html @@ -0,0 +1,177 @@ + +Distribution of probabilities of detection — p_dist_table • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Generate a table of frequencies of probability of detection from a detection +function model. This is particularly useful when employing covariates, as it +can indicate if there are detections with very small detection probabilities +that can be unduly influential when calculating abundance estimates.

    +
    + + +
    +

    Arguments

    + + +
    object
    +

    fitted detection function

    + + +
    bins
    +

    how the results should be binned

    + + +
    proportion
    +

    should proportions be returned as well as counts?

    + +
    +
    +

    Value

    +

    a data.frame with probability bins, counts and (optionally) +proportions. The object has an attribute p_range which contains the +range of estimated detection probabilities

    +
    +
    +

    Details

    +

    Because dht uses a Horvitz-Thompson-like estimator, abundance +estimates can be sensitive to errors in the estimated probabilities. The +estimator is based on \(\sum 1/ \hat{P}_a(z_i)\), which means that the +sensitivity is greater for smaller detection probabilities. As a rough +guide, we recommend that the method be not used if more than say 5% of the +\(\hat{P}_a(z_i)\) are less than 0.2, or if any are less than 0.1. If +these conditions are violated, the truncation distance w can be reduced. +This causes some loss of precision relative to standard distance sampling +without covariates.

    +
    +
    +

    Note

    +

    This function is located in the mrds package but the documentation +is provided here for easy access.

    +
    +
    +

    References

    +

    Marques, F.F.C. and S.T. Buckland. 2004. Covariate models for +the detection function. + In: Advanced Distance Sampling, eds. S.T. Buckland, D.R. Anderson, K.P. + Burnham, J.L. Laake, D.L. Borchers, and L. Thomas. Oxford University + Press.

    +
    +
    +

    Author

    +

    David L Miller

    +
    + +
    +

    Examples

    +
    # example using a model for the minke data
    +data(minke)
    +# fit a model
    +result <- ds(minke, formula=~Region.Label)
    +#> Model contains covariate term(s): no adjustment terms will be included.
    +#> Fitting half-normal key function
    +#> AIC= 57.005
    +# print table
    +p_dist_table(result)
    +#>          p count
    +#>    0 - 0.1     0
    +#>  0.1 - 0.2     0
    +#>  0.2 - 0.3     0
    +#>  0.3 - 0.4    39
    +#>  0.4 - 0.5     0
    +#>  0.5 - 0.6    51
    +#>  0.6 - 0.7     0
    +#>  0.7 - 0.8     0
    +#>  0.8 - 0.9     0
    +#>    0.9 - 1     0
    +#> Range of probabilities:  0.33 - 0.54 
    +# with proportions
    +p_dist_table(result, proportion=TRUE)
    +#>          p count proportion
    +#>    0 - 0.1     0       0.00
    +#>  0.1 - 0.2     0       0.00
    +#>  0.2 - 0.3     0       0.00
    +#>  0.3 - 0.4    39       0.43
    +#>  0.4 - 0.5     0       0.00
    +#>  0.5 - 0.6    51       0.57
    +#>  0.6 - 0.7     0       0.00
    +#>  0.7 - 0.8     0       0.00
    +#>  0.8 - 0.9     0       0.00
    +#>    0.9 - 1     0       0.00
    +#> Range of probabilities:  0.33 - 0.54 
    +
    +
    +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/plot.dsmodel.html b/docs/reference/plot.dsmodel.html new file mode 100644 index 0000000..e6186dc --- /dev/null +++ b/docs/reference/plot.dsmodel.html @@ -0,0 +1,114 @@ + +Plot a fitted detection function — plot.dsmodel • Distance + Skip to contents + + +
    +
    +
    + +
    +

    This is just a simple wrapper around plot.ds. See the +manual page for that function for more information.

    +
    + +
    +

    Usage

    +
    # S3 method for class 'dsmodel'
    +plot(x, pl.den = 0, ...)
    +
    + +
    +

    Arguments

    + + +
    x
    +

    an object of class dsmodel.

    + + +
    pl.den
    +

    shading density for histogram (default 0, no shading)

    + + +
    ...
    +

    extra arguments to be passed to plot.ds.

    + +
    +
    +

    Value

    +

    NULL, just produces a plot.

    +
    +
    +

    See also

    + +
    +
    +

    Author

    +

    David L. Miller

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/predict.dsmodel.html b/docs/reference/predict.dsmodel.html new file mode 100644 index 0000000..4ef6c39 --- /dev/null +++ b/docs/reference/predict.dsmodel.html @@ -0,0 +1,160 @@ + +Predictions from a fitted detection function — predict.dsmodel • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Predict detection probabilities (or effective strip widths/effective areas +of detection) from a fitted distance sampling model using either the +original data (i.e., "fitted" values) or using new data.

    +
    + +
    +

    Usage

    +
    # S3 method for class 'dsmodel'
    +predict(
    +  object,
    +  newdata = NULL,
    +  compute = FALSE,
    +  esw = FALSE,
    +  se.fit = FALSE,
    +  ...
    +)
    +
    + +
    +

    Arguments

    + + +
    object
    +

    ds model object.

    + + +
    newdata
    +

    new data.frame for prediction, this must include a column +called "distance".

    + + +
    compute
    +

    if TRUE compute values and don't use the fitted values +stored in the model object.

    + + +
    esw
    +

    if TRUE, returns effective strip half-width (or effective area +of detection for point transect models) integral from 0 to the truncation +distance (width) of \(p(y)dy\); otherwise it returns the integral from 0 +to truncation width of \(p(y)\pi(y)\) where \(\pi(y)=1/w\) for lines and +\(\pi(y)=2r/w^2\) for points.

    + + +
    se.fit
    +

    should standard errors on the predicted probabilities of +detection (or ESW if esw=TRUE) estimated? Stored in the se.fit element

    + + +
    ...
    +

    for S3 consistency

    + +
    +
    +

    Value

    +

    a list with a single element: fitted, a vector of average +detection probabilities or esw values for each observation in the original +data ornewdata. If se.fit=TRUE there is an additional element $se.fit, +which contains the standard errors of the probabilities of detection or ESW.

    +
    +
    +

    Details

    +

    For line transects, the effective strip half-width (esw=TRUE) is the +integral of the fitted detection function over either 0 to W or the +specified int.range. The predicted detection probability is the +average probability which is simply the integral divided by the distance +range. For point transect models, esw=TRUE calculates the effective +area of detection (commonly referred to as "nu", this is the integral of +2/width^2 * r * g(r).

    +

    Fitted detection probabilities are stored in the model object and +these are returned unless compute=TRUE or newdata is +specified. compute=TRUE is used to estimate numerical derivatives for +use in delta method approximations to the variance.

    +

    Note that the ordering of the returned results when no new data is supplied +(the "fitted" values) will not necessarily be the same as the data supplied +to ddf, the data (and hence results from predict) will +be sorted by object ID (object).

    +
    +
    +

    Author

    +

    David L Miller

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/predict.fake_ddf.html b/docs/reference/predict.fake_ddf.html new file mode 100644 index 0000000..bc129bd --- /dev/null +++ b/docs/reference/predict.fake_ddf.html @@ -0,0 +1,128 @@ + +Prediction for fake detection functions — predict.fake_ddf • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Prediction function for dummy detection functions. The function returns as +many 1s as there are rows in newdata. If esw=TRUE then the +strip width is returned.

    +
    + +
    +

    Usage

    +
    # S3 method for class 'fake_ddf'
    +predict(
    +  object,
    +  newdata = NULL,
    +  compute = FALSE,
    +  int.range = NULL,
    +  esw = FALSE,
    +  ...
    +)
    +
    + +
    +

    Arguments

    + + +
    object
    +

    model object

    + + +
    newdata
    +

    how many 1s should we return?

    + + +
    compute
    +

    unused, compatibility with mrds::predict

    + + +
    int.range
    +

    unused, compatibility with mrds::predict

    + + +
    esw
    +

    should the strip width be returned?

    + + +
    ...
    +

    for S3 consistency

    + +
    +
    +

    Author

    +

    David L Miller

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/print.dht_result.html b/docs/reference/print.dht_result.html new file mode 100644 index 0000000..a9c98ad --- /dev/null +++ b/docs/reference/print.dht_result.html @@ -0,0 +1,103 @@ + +Print abundance estimates — print.dht_result • Distance + Skip to contents + + +
    +
    +
    + +
    +

    See dht2 for information on printed column names.

    +
    + +
    +

    Usage

    +
    # S3 method for class 'dht_result'
    +print(x, report = "abundance", groups = FALSE, ...)
    +
    + +
    +

    Arguments

    + + +
    x
    +

    object of class dht_result

    + + +
    report
    +

    should "abundance", "density" or "both" be reported?

    + + +
    groups
    +

    should abundance/density of groups be produced?

    + + +
    ...
    +

    unused

    + +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/print.dsmodel.html b/docs/reference/print.dsmodel.html new file mode 100644 index 0000000..e831ed0 --- /dev/null +++ b/docs/reference/print.dsmodel.html @@ -0,0 +1,102 @@ + +Simple pretty printer for distance sampling analyses — print.dsmodel • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Simply prints out a brief description of the model which was fitted. For more +detailed information use summary.

    +
    + +
    +

    Usage

    +
    # S3 method for class 'dsmodel'
    +print(x, ...)
    +
    + +
    +

    Arguments

    + + +
    x
    +

    a distance sampling analysis (result from calling ds).

    + + +
    ...
    +

    not passed through, just for S3 compatibility.

    + +
    +
    +

    Author

    +

    David L. Miller

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/print.summary.dsmodel.html b/docs/reference/print.summary.dsmodel.html new file mode 100644 index 0000000..78749c9 --- /dev/null +++ b/docs/reference/print.summary.dsmodel.html @@ -0,0 +1,113 @@ + +Print summary of distance detection function model object — print.summary.dsmodel • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Provides a brief summary of a distance sampling analysis. Including: +detection function parameters, model selection criterion, and optionally +abundance in the covered (sampled) region and its standard error.

    +
    + +
    +

    Usage

    +
    # S3 method for class 'summary.dsmodel'
    +print(x, ...)
    +
    + +
    +

    Arguments

    + + +
    x
    +

    a summary of distance sampling analysis

    + + +
    ...
    +

    unspecified and unused arguments for S3 consistency

    + +
    +
    +

    Value

    +

    Nothing, just prints the summary.

    +
    +
    +

    See also

    + +
    +
    +

    Author

    +

    David L. Miller and Jeff Laake

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/sikadeer.html b/docs/reference/sikadeer.html new file mode 100644 index 0000000..7b38040 --- /dev/null +++ b/docs/reference/sikadeer.html @@ -0,0 +1,110 @@ + +Sika deer pellet data from southern Scotland — sikadeer • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Because sika deer spend most of their time in woodland areas, abundance +estimates are based on pellet group counts. Line transect methods were +applied to estimate deer pellet group density by geographic block.

    +
    + + +
    +

    Format

    +

    A data.frame with 1923 rows and 11 variables.

    • Region.Label stratum labels

    • +
    • Area size (ha) of each stratum

    • +
    • Sample.Label transect labels

    • +
    • Defecation.rate rate of dung production per individual per day

    • +
    • Defecation.rate.SE variability in defecation rate

    • +
    • Decay.rate time (days) for dung to become undetectable

    • +
    • Decay.rate.SE variability in decay rate

    • +
    • Effort transect length (km)

    • +
    • object object ID

    • +
    • distance perpendicular distance (cm)

    • +
    • Study.Area study area name

    • +
    +
    +

    Details

    +

    Data presented here are from the Peebleshire portion of the study described +by Marques et al. (2001).

    +
    +
    +

    References

    +

    Marques, F.F.C., S.T. Buckland, D. Goffin, C.E. Dixon, D.L. Borchers, B.A. +Mayle, and A.J. Peace. (2001). Estimating deer abundance from line transect +surveys of dung: sika deer in southern Scotland. Journal of Applied Ecology +38 (2): 349–363. doi:10.1046/j.1365-2664.2001.00584.x

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/summarize_ds_models.html b/docs/reference/summarize_ds_models.html new file mode 100644 index 0000000..f464587 --- /dev/null +++ b/docs/reference/summarize_ds_models.html @@ -0,0 +1,135 @@ + +Make a table of summary statistics for detection function models — summarize_ds_models • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Provide a summary table of useful information about fitted detection +functions. This can be useful when paired with knitr's kable function. By +default models are sorted by AIC and will therefore not allow models with +different truncations and distance binning.

    +
    + +
    +

    Usage

    +
    summarize_ds_models(..., sort = "AIC", output = "latex", delta_only = TRUE)
    +
    + +
    +

    Arguments

    + + +
    ...
    +

    models to be summarised

    + + +
    sort
    +

    column to sort by (default "AIC")

    + + +
    output
    +

    should the output be given in "latex" compatible format +or as "plain" text?

    + + +
    delta_only
    +

    only output AIC differences (default TRUE)

    + +
    +
    +

    Details

    +

    Note that the column names are in LaTeX format, so if you plan to manipulate +the resulting data.frame in R, you may wish to rename the columns for +ease of access.

    +
    +
    +

    Author

    +

    David L Miller

    +
    + +
    +

    Examples

    +
    if (FALSE) { # \dontrun{
    +# fit some models to the golf tee data
    +library(Distance)
    +data(book.tee.data)
    +tee.data <- subset(book.tee.data$book.tee.dataframe, observer==1)
    +model_hn <- ds(tee.data,4)
    +model_hr <- ds(tee.data,4, key="hr")
    +summarize_ds_models(model_hr, model_hn, output="plain")
    +} # }
    +
    +
    +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/summary.dht_bootstrap.html b/docs/reference/summary.dht_bootstrap.html new file mode 100644 index 0000000..fa18899 --- /dev/null +++ b/docs/reference/summary.dht_bootstrap.html @@ -0,0 +1,113 @@ + +Summarize bootstrap abundance uncertainty estimate output — summary.dht_bootstrap • Distance + Skip to contents + + +
    +
    +
    + +
    +

    A simple function to calculate summaries of bootstrap output generated by +bootdht.

    +
    + +
    +

    Usage

    +
    # S3 method for class 'dht_bootstrap'
    +summary(object, alpha = 0.05, ...)
    +
    + +
    +

    Arguments

    + + +
    object
    +

    output from bootdht

    + + +
    alpha
    +

    value to use in confidence interval calculation (to obtain +alpha/2 and 1-alpha/2 intervals

    + + +
    ...
    +

    for S3 compatibility, unused.

    + +
    +
    +

    Value

    +

    a data.frame of summary statistics

    +
    +
    +

    Details

    +

    Summaries are only made for numeric outputs. Both median and mean are +reported to allow assessment of bias. The coefficient of variation reported +(in column cv) is based on the median calculated from the bootstraps.

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/summary.dsmodel.html b/docs/reference/summary.dsmodel.html new file mode 100644 index 0000000..2e6486f --- /dev/null +++ b/docs/reference/summary.dsmodel.html @@ -0,0 +1,114 @@ + +Summary of distance sampling analysis — summary.dsmodel • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Provides a brief summary of a distance sampling analysis. This includes +parameters, model selection criterion, and optionally abundance in the +covered (sampled) region and its standard error.

    +
    + +
    +

    Usage

    +
    # S3 method for class 'dsmodel'
    +summary(object, ...)
    +
    + +
    +

    Arguments

    + + +
    object
    +

    a distance analysis

    + + +
    ...
    +

    unspecified and unused arguments for S3 consistency

    + +
    +
    +

    Value

    +

    list of extracted and summarized objects

    +
    +
    +

    Note

    +

    This function just calls summary.ds and dht, +collates and prints the results in a nice way.

    +
    +
    +

    Author

    +

    David L. Miller

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/unflatten.html b/docs/reference/unflatten.html new file mode 100644 index 0000000..287fc68 --- /dev/null +++ b/docs/reference/unflatten.html @@ -0,0 +1,108 @@ + +Unflatten flatfile data.frames — unflatten • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Sometimes data is provided in the flatfile format, but we +really want it in mrds format (that is, as distance data, observation +table, sample table and region table format). This function undoes the +flattening, assuming that the data have the correct columns.

    +
    + +
    +

    Usage

    +
    unflatten(data)
    +
    + +
    +

    Arguments

    + + +
    data
    +

    data in flatfile format (a data.frame)

    + +
    +
    +

    Value

    +

    list of four data.frames: distance data, observation table, +sample table, region table.

    +
    +
    +

    Author

    +

    David L Miller

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/unimak.html b/docs/reference/unimak.html new file mode 100644 index 0000000..8a167b2 --- /dev/null +++ b/docs/reference/unimak.html @@ -0,0 +1,105 @@ + +Simulated line transect survey data with covariates — unimak • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Simulated line transect survey. Only eight line transects, detection +function is half-normal.

    +
    + + +
    +

    Format

    +

    A data.frame with 60 rows and 9 variables

    • Region.Label strata names (single stratum)

    • +
    • Area size of study area (mi^2)

    • +
    • Sample.Label transect ID

    • +
    • Effort transect length (mi)

    • +
    • object object ID

    • +
    • distance perpendicular distance (km)

    • +
    • MSTDO time since medication taken by observer (min)

    • +
    • Hour time of day of sighting (hour)

    • +
    • Study.Area name of study area

    • +
    +
    +

    Source

    +

    Simulated data, from the distance sampling introductory course, +Centre for Research into Ecological & Environmental Modelling, University of +St Andrews.

    +
    +
    +

    Note

    +

    Hour is covariate that has no effect on detection function, +while MSTDO does affect the detection function. Examine the ability +of model selection to choose the correct model.

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/units_table.html b/docs/reference/units_table.html new file mode 100644 index 0000000..96185a9 --- /dev/null +++ b/docs/reference/units_table.html @@ -0,0 +1,89 @@ + +Generate table of unit conversions — units_table • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Returns a table of conversions between the units used in Distance for +Windows. This is extracted from the DistIni.mdb default database.

    +
    + +
    +

    Usage

    +
    units_table()
    +
    + +
    +

    Author

    +

    David L Miller

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/reference/wren.html b/docs/reference/wren.html new file mode 100644 index 0000000..e1b9f89 --- /dev/null +++ b/docs/reference/wren.html @@ -0,0 +1,131 @@ + +Steve Buckland's winter wren surveys — wren • Distance + Skip to contents + + +
    +
    +
    + +
    +

    Observations of winter wren (Troglodytes troglodytes L.) collected by Steve +Buckland in woodland/parkland at Montrave Estate near Leven, Fife, Scotland.

    +
    + + +
    +

    Source

    +

    Steve Buckland

    +
    +
    +

    Details

    +

    Four different surveys were carried out:

    • wren_5min 5-minute point count

    • +
    • wren_snapshot snapshot method

    • +
    • wren_cuecount cue count

    • +
    • wren_lt line transect survey

    • +
    +
    +

    Note

    +

    wren_5min: 134 observations of 8 variables

    • Region.Label stratum name (single stratum)

    • +
    • Area size (ha) of Montrave study area

    • +
    • Sample.Label point label

    • +
    • Effort Number of visits to point

    • +
    • object Object ID

    • +
    • distance radial distance (m)

    • +
    • direction direction of detection from point

    • +
    • Study.Area Montrave Estate

    • +

    wren_snapshot: 119 observations of 7 variables

    • Region.Label stratum name (single stratum)

    • +
    • Area size (ha) of Montrave study area

    • +
    • Sample.Label point label

    • +
    • Effort Number of visits to point

    • +
    • object Object ID

    • +
    • distance radial distance (m)

    • +
    • Study.Area Montrave Estate

    • +

    wren_cuecount: 774 observations of 9 variables

    • Region.Label stratum name (single stratum)

    • +
    • Area size (ha) of Montrave study area

    • +
    • Sample.Label point label

    • +
    • Cue.rate Production rate (per min) of cues

    • +
    • Cue.rate.SE SE of cue production rate

    • +
    • object Object ID

    • +
    • distance radial distance (m)

    • +
    • Search.time Time (min) listening for cues

    • +
    • Study.Area Montrave Estate

    • +

    wren_lt: 156 observations of 8 variables

    • Region.Label stratum name (single stratum)

    • +
    • Area size (ha) of Montrave study area

    • +
    • Sample.Label transect label

    • +
    • Effort transect length (km)

    • +
    • object Object ID

    • +
    • distance perpendicular distance (m)

    • +
    • Study.Area Montrave Estate

    • +
    +
    +

    References

    +

    Buckland, S. T. (2006) Point-transect surveys for songbirds: +robust methodologies. The Auk 123 (2): 345–357.

    +
    + +
    + + +
    + + + +
    + + + + + + + diff --git a/docs/search.json b/docs/search.json new file mode 100644 index 0000000..b81e81d --- /dev/null +++ b/docs/search.json @@ -0,0 +1 @@ +[{"path":"/articles/covariates-distill.html","id":"exploratory-data-analysis","dir":"Articles","previous_headings":"","what":"Exploratory data analysis","title":"Incorporating covariates in the detection function","text":"important gain understanding data prior fitting detection functions. mind, preliminary analysis distance sampling data involves: assessing shape collected data, considering level truncation distances, exploring patterns potential covariates. begin assessing distribution distances decide truncation distance (Figure 1). Figure 1: Distribution radial distances amakihi see differences distribution distances recorded different observers hour sunrise, boxplots can used. Note ~ symbol used define discrete groupings (.e. observer hour) (Figure 2). Figure 2: Visual assessment effect observer hour since sunrise upon detection. components boxplot : thick black line indicates median lower limit box first quartile (25th percentile) upper limit third quartile (75th percentile) height box interquartile range (75th - 25th quartiles) whiskers extend extreme points 1.5 times interquartile range. dots indicate ‘outliers’ , .e. points beyond range whiskers. minutes sunrise (continuous variable), create scatterplot MAS (\\(x\\)-axis) distances (\\(y\\)-axis). plotting symbol (character) selected argument pch (Figure 3) Figure 3: Visualisation detectability function minutes since sunrise. Clearly room right truncation figure radial distance distribution. Subsequent detection function fitting use truncation argument ds() exclude largest 15% detection distances. may also want think potential collinearity (linear relationship) covariates - collinear variables included detection function, explaining variation distances reduce importance potential covariate. might investigate relationship MAS? plots, infer whether covariates useful explaining distribution detection distances.","code":"hist(amakihi$distance, main=\"Radial distances\", xlab=\"Distance (m)\") boxplot(amakihi$distance~amakihi$OBs, xlab=\"Observer\", ylab=\"Distance (m)\") boxplot(amakihi$distance~amakihi$HAS, xlab=\"Hour\", ylab=\"Distance (m)\") scatter.smooth(amakihi$MAS, amakihi$distance, family = \"gaussian\", pch=20, cex=.9, lpars=list(lwd=3), xlab=\"Minutes after sunrise\",ylab=\"Distance (m)\")"},{"path":"/articles/covariates-distill.html","id":"adjusting-the-raw-covariates","dir":"Articles","previous_headings":"","what":"Adjusting the raw covariates","title":"Incorporating covariates in the detection function","text":"like treat OBs factor variables original analysis; OBs , default, treated factor variable consists characters rather numbers. , hand, consists numbers default treated continuous variable (.e. non-factor). fine want effect monotonic (.e. detectability either increases decreases function ). want non-linear effect detectability, need indicate R treat factor shown . One , subtle adjustment, transformation continuous covariate MAS. considering three possible covariates detection function: OBs, MAS. first two variables, OBs , factor variables, , essentially, can think taking values 1 3 case OBS, 1 6 case . However, MAS can take values -18 (detections sunrise) >300 disparity scales measure MAS candidate covariates can lead difficulties performance optimizer fitting detection functions R. solution difficulty scale MAS scale (approx. 1 5) comparable covariates.","code":"amakihi$HAS <- factor(amakihi$HAS)"},{"path":"/articles/covariates-distill.html","id":"candidate-models","dir":"Articles","previous_headings":"","what":"Candidate models","title":"Incorporating covariates in the detection function","text":"three potential covariates, 8 possible models detection function: covariates OBs MAS OBs + OBs + MAS + MAS OBs + + MAS Even without considering covariates also several possible key function/adjustment term combinations available: key function/covariate combinations considered number potential models large. Note covariates allowed uniform key function chosen covariate terms included, adjustment terms allowed. Even restrictions, best practice take scatter gun approach detection function model fitting. Buckland et al. (2015) considered 13 combinations key function/covariates. , look subset . Fit hazard rate model covariates adjustment terms make note AIC. Note, 15% largest distances truncated - may decided different truncation distance. Now fit hazard rate model OBs covariate detection function make note AIC. AIC reduced including covariate? Fit hazard rate model OBs MAS detection function: Try fitting possible formula decide model best terms AIC. quickly compare AIC values different models, use AIC command follows (note models truncation distance can compared): Another useful function summarize_ds_models - advantage ordering models AIC (smallest largest). Table 1: Model selection table Hawaiian amakihi. Examine shape preferred detection function (including covariates observer minutes sunrise) (Figure 4). Figure 4: PDF best fitting model, including effects observer minutes sunrise.","code":"conversion.factor <- convert_units(\"meter\", NULL, \"hectare\") amak.hr <- ds(amakihi, transect=\"point\", key=\"hr\", truncation=\"15%\", adjustment=NULL, convert_units = conversion.factor) amak.hr.obs <- ds(amakihi, transect=\"point\", key=\"hr\", formula=~OBs, truncation=\"15%\", convert_units = conversion.factor) amak.hr.obs.mas <- ds(amakihi, transect=\"point\", key=\"hr\", formula=~OBs+MAS, truncation=\"15%\", convert_units = conversion.factor) AIC(amak.hr, amak.hr.obs, amak.hr.obs.mas) ## df AIC ## amak.hr 2 11400.47 ## amak.hr.obs 4 11368.20 ## amak.hr.obs.mas 5 11365.96 knitr::kable(summarize_ds_models(amak.hr, amak.hr.obs, amak.hr.obs.mas), digits=3, caption=\"Model selection table for Hawaiian amakihi.\") plot(amak.hr.obs.mas, pdf=TRUE, main=\"Hazard rate with observer and minutes after sunrise.\", showpoints=FALSE) sfzero <- data.frame(OBs=\"SGF\", MAS=0) sf180 <- data.frame(OBs=\"SGF\", MAS=180) t1zero <- data.frame(OBs=\"TJS\", MAS=0) t1180 <- data.frame(OBs=\"TJS\", MAS=180) t2zero <- data.frame(OBs=\"TKP\", MAS=0) t2180 <- data.frame(OBs=\"TKP\", MAS=180) add_df_covar_line(amak.hr.obs.mas, data=sfzero, lty=1, lwd=2,col=\"blue\", pdf=TRUE) add_df_covar_line(amak.hr.obs.mas, data=sf180, lty=2, lwd=2,col=\"blue\", pdf=TRUE) add_df_covar_line(amak.hr.obs.mas, data=t1zero, lty=1,lwd=2,col=\"darkorange\", pdf=TRUE) add_df_covar_line(amak.hr.obs.mas, data=t1180, lty=2, lwd=2,col=\"darkorange\", pdf=TRUE) add_df_covar_line(amak.hr.obs.mas, data=t2zero, lty=1,lwd=2,col=\"violet\", pdf=TRUE) add_df_covar_line(amak.hr.obs.mas, data=t2180, lty=2, lwd=2,col=\"violet\", pdf=TRUE) legend(\"topright\", legend=c(\"SF, minutes=0\", \"SF, minutes=180\", \"TS, minutes=0\", \"TS, minutes=180\", \"TP, minutes=0\", \"TP, minutes=180\"), title=\"Covariate combination: observer and minutes\", lty=rep(c(1,2),times=3), lwd=2, col=rep(c(\"blue\",\"darkorange\",\"violet\"), each=2))"},{"path":"/articles/covariates-distill.html","id":"comments-about-the-chosen-model","dir":"Articles","previous_headings":"","what":"Comments about the chosen model","title":"Incorporating covariates in the detection function","text":"three observers involved survey. One observer made ~80% detections, second observer responsible 15% third observer 5%.","code":""},{"path":[]},{"path":"/articles/lines-distill.html","id":"objectives","dir":"Articles","previous_headings":"","what":"Objectives","title":"Line transect density estimation","text":"Fit basic detection function using ds function Plot examine detection function Fit different detection function forms.","code":""},{"path":"/articles/lines-distill.html","id":"survey-design","dir":"Articles","previous_headings":"","what":"Survey design","title":"Line transect density estimation","text":"Nineteen line transects walked twice (Figure 1). Figure 1: Montrave study area; diagonal lines indicate line transects walked generate data. fields wren_lt data set : Region.Label - identifier regions: case one region set ‘Montrave’ required field Area - size study region (hectares): 33.2ha Sample.Label - line transect identifier (numbered 1-19) required field Effort - length line transects (km) required field object - unique identifier detected winter wren distance - perpendicular distance (metres) detection required field Study.Area - name study, ‘Montrave 4’","code":""},{"path":"/articles/lines-distill.html","id":"make-the-data-available-for-r-session","dir":"Articles","previous_headings":"","what":"Make the data available for R session","title":"Line transect density estimation","text":"command assumes Distance package installed computer. R workspace wren_lt contains detections winter wrens line transect surveys Buckland (2006). effort, transect length adjusted recognise transect walked twice. Examine first rows wren_lt using function head() object wren_lt dataframe object made rows columns. code determines number detection distances missing. might rows data detection distance missing? Distance recorded missing rows representing transects detections. transect effort need appear data, without detections, perpendicular distance recorded missing (NA).","code":"library(Distance) data(wren_lt) head(wren_lt) ## Region.Label Area Sample.Label Effort object distance Study.Area ## 1 Montrave 33.2 1 0.416 5 15 Montrave 4 ## 2 Montrave 33.2 1 0.416 6 80 Montrave 4 ## 3 Montrave 33.2 1 0.416 7 35 Montrave 4 ## 4 Montrave 33.2 1 0.416 8 55 Montrave 4 ## 5 Montrave 33.2 1 0.416 12 12 Montrave 4 ## 6 Montrave 33.2 1 0.416 13 75 Montrave 4 sum(!is.na(wren_lt$distance)) ## [1] 156"},{"path":"/articles/lines-distill.html","id":"examine-the-distribution-of-detection-distances","dir":"Articles","previous_headings":"","what":"Examine the distribution of detection distances","title":"Line transect density estimation","text":"Gain familiarity perpendicular distance data using hist() function (Figure 2). Figure 2: Distribution perpendicular distances winter wren (Buckland, 2006). Note appears detections 0 20m, many detections 20m 40m. may evidence evasive movement winter wrens; see discussion .","code":"hist(wren_lt$distance, xlab=\"Distance (m)\", main=\"Winter wren line transects\")"},{"path":"/articles/lines-distill.html","id":"specify-unit-conversions","dir":"Articles","previous_headings":"","what":"Specify unit conversions","title":"Line transect density estimation","text":"guaranteed way produce incorrect results analysis misspecify units distances measured. ds function argument convert.units user provides value report density proper units. Providing incorrect value result estimates orders magnitude. can choose units winter wren density reported, choose square kilometre. transmit information ds function? answer another function convert_units. Arguments function units measure perpendicular/radial distances units measure effort (NULL point transects) units measure study area. Specify correct arguments function winter wren data set. Note: units specified quoted strings, singular rather plural; e.g. “meter” rather “meters”","code":"conversion.factor <- convert_units(\"meter\", \"kilometer\", \"hectare\")"},{"path":"/articles/lines-distill.html","id":"fitting-a-simple-detection-function-model-with-ds","dir":"Articles","previous_headings":"","what":"Fitting a simple detection function model with ds","title":"Line transect density estimation","text":"Detection functions fitted using ds function function requires data frame column called distance. nests data, therefore, can simply supply name data frame function along additional arguments. Details arguments function: fit half-normal key detection function include adjustment terms required , example, perpendicular distances metres line transect lengths kilometer - argument converts perpendicular distance measurements metres kilometer. density estimates reported number birds per hectare. calling ds function, information provided screen reminding user model fitted associated AIC value. information supplied applying summary() function object created ds().","code":"wren.hn <- ds(data=wren_lt, key=\"hn\", adjustment=NULL, convert_units=conversion.factor) summary(wren.hn) ## ## Summary for distance analysis ## Number of observations : 156 ## Distance range : 0 - 100 ## ## Model : Half-normal key function ## AIC : 1418.188 ## Optimisation: mrds (nlminb) ## ## Detection function parameters ## Scale coefficient(s): ## estimate se ## (Intercept) 4.105816 0.1327744 ## ## Estimate SE CV ## Average p 0.685037 0.05678821 0.08289802 ## N in covered region 227.724931 21.47275208 0.09429250 ## ## Summary statistics: ## Region Area CoveredArea Effort n k ER se.ER cv.ER ## 1 Montrave 33.2 193.2 9.66 156 19 16.14907 1.226096 0.07592366 ## ## Abundance: ## Label Estimate se cv lcl ucl df ## 1 Total 39.13286 4.399007 0.1124121 31.3023 48.9223 74.24595 ## ## Density: ## Label Estimate se cv lcl ucl df ## 1 Total 1.1787 0.1325002 0.1124121 0.9428403 1.473563 74.24595"},{"path":"/articles/lines-distill.html","id":"the-summary-function","dir":"Articles","previous_headings":"Fitting a simple detection function model with ds","what":"The summary function","title":"Line transect density estimation","text":"Examining output produced summary(wren.hn) notice number detections used fitting truncation distances AIC score parameters detection function (natural log scale) estimated probability detection within truncation distance estimated number objects area covered survey effort encounter rate variability measures precision strata, estimates provided stratum objects detected groups, estimates abundance groups individuals Visually inspect fitted detection function plot() function, specifying cutpoints histogram argument breaks (Figure 3): Figure 3: Fit half normal detection function wren data. Note large number break points specified small distances. Continue note presence evasive movement plot fit detection function observed data.","code":"cutpoints <- c(0,5,10,15,20,30,40,50,65,80,100) plot(wren.hn, breaks=cutpoints, main=\"Half normal model, wren line transects\")"},{"path":"/articles/lines-distill.html","id":"specifying-different-detection-functions","dir":"Articles","previous_headings":"","what":"Specifying different detection functions","title":"Line transect density estimation","text":"Detection function forms shapes, specified changing key adjustment arguments. options available key detection functions : half normal (key=\"hn\") - default hazard rate (key=\"hr\") uniform (key=\"unif\") options available adjustment terms : adjustment terms (adjustment=NULL) cosine (adjustment=\"cos\") - default Hermite polynomial (adjustment=\"herm\") Simple polynomial (adjustment=\"poly\") fit uniform key function cosine adjustment terms, use command: line code executed, multiple models fitted, successively adding addition adjustment terms. model four adjustment terms fit, error message returned; uniform key 3 cosine adjustments fitted contained returned object. AIC model selection used fit adjustment terms order 5. fit hazard rate key function simple polynomial adjustment terms, use command:","code":"wren.unif.cos <- ds(wren_lt, key=\"unif\", adjustment=\"cos\", convert_units=conversion.factor) wren.hr.poly <- ds(wren_lt, key=\"hr\", adjustment=\"poly\", convert_units=conversion.factor)"},{"path":"/articles/lines-distill.html","id":"model-comparison","dir":"Articles","previous_headings":"","what":"Model comparison","title":"Line transect density estimation","text":"fitted detection function produces different estimate winter wren abundance density. estimate depends upon model chosen. model selection tool distance sampling data AIC. df AIC table indicates number parameters associated model.","code":"AIC(wren.hn, wren.hr.poly, wren.unif.cos) ## df AIC ## wren.hn 1 1418.188 ## wren.hr.poly 2 1412.133 ## wren.unif.cos 3 1416.430"},{"path":"/articles/lines-distill.html","id":"absolute-goodness-of-fit","dir":"Articles","previous_headings":"Model comparison","what":"Absolute goodness of fit","title":"Line transect density estimation","text":"addition relative ranking models provided AIC, also important know whether selected model(s) actually fit data. model basis inference, dangerous make inference model fit data. Goodness fit assessed using function gof_ds. function default, reports goodness fit assessed Cramer von-Mises test along quantile-quantile plot showing locations deviations good fit. Optionally, \\(\\chi^2\\) goodness fit test bootstrap version Kolomogorov-Smirnov goodness fit test can performed. Using function defaults, see results Cramer von-Mises test along Q-Q plot (Figure 4). Figure 4: Q-Q plot hazard rate key function fitted ot wren line transect data. Even though may evasive movement, goodness fit statistics still sufficient using detection function models inference.","code":"gof_ds(wren.hr.poly) ## ## Goodness of fit results for ddf object ## ## Distance sampling Cramer-von Mises test (unweighted) ## Test statistic = 0.249897 p-value = 0.188501"},{"path":"/articles/lines-distill.html","id":"model-comparison-tables","dir":"Articles","previous_headings":"","what":"Model comparison tables","title":"Line transect density estimation","text":"function summarise_ds_models combines work AIC gof_ds produce table fitted models summary statistics. Table 1: Model comparison table wren line transect data, Montrave.","code":"knitr::kable(summarize_ds_models(wren.hn, wren.hr.poly, wren.unif.cos),digits=3, caption=\"Model comparison table for wren line transect data, Montrave.\")"},{"path":"/articles/lines-distill.html","id":"model-selection-is-not-a-cookbook","dir":"Articles","previous_headings":"Model comparison tables","what":"Model selection is not a cookbook","title":"Line transect density estimation","text":"AIC model selection tools suggest hazard rate key function preferred model. However, examine shape hazard rate detection function contrast uniform cosine fitted detection function (Figure 5). Figure 5: Possible evidence evasive movement wrens. Note left figure (hazard rate) implausible perfect detectability 70m, precipitous decline. fellow gathered data (Prof Buckland) maintained shape fitted hazard rate detection function plausible. Instead, chose uniform key cosine adjustments making inference (Buckland, 2006, p. 352): Common Chaffinch Winter Wren showed evidence observer avoidance. 2 12 data sets, resulted fitted hazard rate detection function certain detection ∼60 m, implausibly rapid fall-beyond 70 m. two analyses, model slightly higher AIC value plausible fit detection function selected. example moderating objective model selection tools common sense understanding field procedures.","code":"plot(wren.hr.poly, breaks=cutpoints, main=\"Hazard rate\") plot(wren.unif.cos, breaks=cutpoints, main=\"Uniform cosine\")"},{"path":[]},{"path":"/articles/species-covariate-distill.html","id":"background","dir":"Articles","previous_headings":"","what":"Background","title":"Covariate modeling with rare species","text":"Sometimes focal species distance sampling survey quite rare. rare difficult accumulate sufficient detections fit detection function species question. Likewise, also common species detected survey focal species. detections species useful estimating detection function focal species? One approach might consider species serve “strata” proceed analyse data stratified survey. See example stratified survey analysis. However, pooled detection function (one combines data multiple species) fitted, dubious apply pooled detection function data lower level aggregation (species level). Applying pooled detection function lead biased estimate abundance rare species. Instead treating species strata, alternative form analysis treat species covariate modelling detection function (Marques & Buckland, 2003). principle general key function shared across species, scale parameter \\((\\sigma)\\) differs species. way, detections species shared, estimation detection function rare species bolstered information species; yet rare species receives unique detection function bias induced abundance estimation species. demonstrate analysis, Montrave songbird study conducted Buckland (2006) used. species covariate approach analysis snapshot point count version survey described book Buckland et al. (2015, sec. 5.3.2.2). Distance R package (Miller, Rexstad, Thomas, Marshall, & Laake, 2019) used analyse line transect survey Buckland conducted. Results compared estimates presented Buckland (2006). data available online website serves companion Buckland et al. (2015). data set can read R directly URL.","code":"theurl <-\"https://www.creem.st-andrews.ac.uk/files/2023/01/montrave-line_csv.zip\" download.file(theurl, destfile = \"montrave.zip\", mode = \"wb\") unzip(\"montrave.zip\") birds <- read.csv(\"montrave-line.csv\") birds$object <- NA birds$object[!is.na(birds$distance)] <- 1:sum(!is.na(birds$distance))"},{"path":"/articles/species-covariate-distill.html","id":"data-preparation","dir":"Articles","previous_headings":"","what":"Data preparation","title":"Covariate modeling with rare species","text":"one slight modification data needs conducted can analysed. Buckland (2006) made two transits transects, line transect effort needs modified reflect multiple visits.","code":"birds$Effort <- birds$Effort * birds$repeats # two visits library(Distance) convunit <- convert_units(\"meter\", \"kilometer\", \"hectare\")"},{"path":"/articles/species-covariate-distill.html","id":"detections-by-species","dir":"Articles","previous_headings":"","what":"Detections by species","title":"Covariate modeling with rare species","text":"Buckland’s (2006) line transect survey, three four songbird species (c-chaffinch, g-great tit, r-robin, w-winter wren) detected sufficient quantities sample size issue. However, great tit detected 32 times, making support species open question. Table 1: Table 2: Number detections species Montrave line transect survey. mentioned Background, fit pooled detection function across species species stratification criterion produce species-specific density estimates using pooled detection function conjunction species-specific encounter rates. However using wrong detection function every species. take alternative analysis route incorporate species detection function.","code":""},{"path":"/articles/species-covariate-distill.html","id":"covariate-in-detection-function","dir":"Articles","previous_headings":"","what":"Covariate in detection function","title":"Covariate modeling with rare species","text":"Inclusion species covariate detection function simple using formula= argument ds(). Note species names coded letters, R automatically treat variable containing letters factor covariate. numbers used coding species, .factor need employed. CvM goodness fit test indicates model adequately fits data, W=0.401, P=0.072.","code":"all.birds <- ds(data = birds, key=\"hn\", convert_units = convunit, formula=~species, truncation = 95)"},{"path":"/articles/species-covariate-distill.html","id":"visualising-the-detection-functions-for-each-species","dir":"Articles","previous_headings":"","what":"Visualising the detection functions for each species","title":"Covariate modeling with rare species","text":"shape species-specific detection functions can seen using plotting function provided . Figure 1: Species-specific detection functions.","code":"plot(all.birds, showpoints=FALSE, main=\"Montrave line transects\\nspecies as covariate\") add.df.covar.line(all.birds, data=data.frame(species=\"c\"), lwd=3, lty=1, col=\"blue\") add.df.covar.line(all.birds, data=data.frame(species=\"g\"), lwd=3, lty=1, col=\"darkgreen\") add.df.covar.line(all.birds, data=data.frame(species=\"r\"), lwd=3, lty=1, col=\"brown\") add.df.covar.line(all.birds, data=data.frame(species=\"w\"), lwd=3, lty=1, col=\"salmon\") legend(\"topright\", legend=c(\"chaffinch\", \"great tit\", \"robin\", \"winter wren\"), lwd=3, lty=1, col=c(\"blue\", \"darkgreen\", \"brown\", \"salmon\"))"},{"path":"/articles/species-covariate-distill.html","id":"species-specific-density-estimates","dir":"Articles","previous_headings":"","what":"Species-specific density estimates","title":"Covariate modeling with rare species","text":"Density estimates species can produced using dht2 function contains argument strat_formula used specific levels stratum-specific estimates requested. stratification argument ensures correct measures precision associated species-specific density estimates. value object indicates analysis form post-stratification, rather geographic stratification criterion know prior gathering data. Table 3: Table 4: Species-specific density estimates using detection function species covariate.","code":"bird.ests <- dht2(ddf=all.birds, flatfile=birds, strat_formula = ~species, convert_units = convunit, stratification = \"object\")"},{"path":"/articles/species-covariate-distill.html","id":"compare-with-published-estimates","dir":"Articles","previous_headings":"","what":"Compare with published estimates","title":"Covariate modeling with rare species","text":"density estimates chaffinch great tits match reported Buckland (S. T. Buckland, 2006) almost exactly. congruence estimates produced analysis reported Buckland less good robins winter wrens. Figure 2: Reproduction Table 2 Buckland (2006).","code":""},{"path":"/articles/species-covariate-distill.html","id":"postscript","dir":"Articles","previous_headings":"","what":"Postscript","title":"Covariate modeling with rare species","text":"described Buckland (S. T. Buckland, 2006), reason believe evasive movement took place part robins winter wrens. Conceivably, accommodated using hazard rate key function two species. lead complex analysis data set divided chaffinch/great tit data set, half normal key species covariate detection function model. portion data set contain robins/winter wrens modelled using hazard rate key function species covariate. Indeed, goodness fit complex analysis (shown) leads better fit “two model” approach: Table 5: Table 6: Goodness fit comparison single model compared HN/HR split.","code":""},{"path":[]},{"path":"/articles/web-only/alt-optimise/mcds-dot-exe.html","id":"objectives","dir":"Articles > Web-only > Alt-optimise","previous_headings":"","what":"Objectives","title":"Alternative optimization engine for fitting detection functions","text":"Download mcds.exe optimization engine Demonstrate use simple line transect example (golf tee dataset) via Distance package Demonstrate example via mrds package Demonstrate use point transect example (wren data) one optimizers work well (gives negative estimated detection probability) Demonstrate use speed analysis camera trap distance sampling data (duiker data) via Distance package Discuss using alternative optimization engine may useful.","code":""},{"path":"/articles/web-only/alt-optimise/mcds-dot-exe.html","id":"introduction","dir":"Articles > Web-only > Alt-optimise","previous_headings":"","what":"Introduction","title":"Alternative optimization engine for fitting detection functions","text":"Distance package designed provide simple way fit detection functions estimate abundance using conventional distance sampling methodology (.e., single observer distance sampling, possibly covariates, described Buckland et al. (2015)). main function ds. Underlying Distance package mrds – function ds called pre-processing calls function ddf mrds package work detection function fitting. mrds uses maximum likelihood fit specified detection function model distance data using built-algorithm written R. alternative method analyzing distance sampling data using Distance Windows software (Thomas et al., 2010). software also uses maximum liklihood fit detection function models, relies software written programming language FORTRAN fitting. filename software MCDS.exe. perfect world, methods produce identical results given data model specification, since likelihood one maximum. However, likelihood surface sometimes complex, especially monotonicity constraints used (ensures estimated detection probability flat decreasing increasing distance adjustment terms used) “overdispersed” “spiked” data (see Figure 2 Thomas et al. (2010)), (rare) cases one piece software fails find maximum. Note tests, found extremely rare Distance version 2.0.0 mrds version 3.0.0 onwards. Nevertheless, counteract , possible run R-based optimizer MCDS.exe ds function within Distance package ddf function within mrds package. Another historical motivation using MCDS.exe software within R R-based optimizer sometimes slow converge using MCDS.exe place R-based optimizer can save significant time, particularly nonparametric bootstrap large datasets. However, Distance 2.0.0 mrds 3.0.0 R-based optimizer longer generally slower. vignette demonstrates download use MCDS.exe sofware within Distance mrds packages. information, see MCDS.exe help page within mrds package.","code":""},{"path":"/articles/web-only/alt-optimise/mcds-dot-exe.html","id":"downloading-and-verifying-mcds-exe","dir":"Articles > Web-only > Alt-optimise","previous_headings":"","what":"Downloading and verifying MCDS.exe","title":"Alternative optimization engine for fitting detection functions","text":"program MCDS.exe come automatically Distance mrds packages, avoid violating CRAN rules, must first download distance sampling website. Now software available, R optimizer used default analysis; can also choose use just one , shown .","code":"#Unload Distance package if it's already loaded in R if(\"Distance\" %in% (.packages())){ detach(\"package:Distance\", unload=TRUE) } #Download MCDS.exe download.file(\"http://distancesampling.org/R/MCDS.exe\", paste0(system.file(package=\"mrds\"),\"/MCDS.exe\"), mode = \"wb\") ## Warning in download.file(\"http://distancesampling.org/R/MCDS.exe\", ## paste0(system.file(package = \"mrds\"), : URL ## http://distancesampling.org/R/MCDS.exe: cannot open destfile ## 'C:/Users/erexs/Documents/R/win-library/4.1/mrds/MCDS.exe', reason 'Permission ## denied' ## Warning in download.file(\"http://distancesampling.org/R/MCDS.exe\", ## paste0(system.file(package = \"mrds\"), : download had nonzero exit status #Load the Distance package - now it will be able to use MCDS.exe library(Distance) ## Loading required package: mrds ## This is mrds 3.0.0 ## Built: R 4.4.1; ; 2024-10-23 19:10:34 UTC; windows ## ## Attaching package: 'Distance' ## The following object is masked from 'package:mrds': ## ## create.bins"},{"path":[]},{"path":"/articles/web-only/alt-optimise/mcds-dot-exe.html","id":"both-mcds-exe-and-the-r-based-optimizer","dir":"Articles > Web-only > Alt-optimise","previous_headings":"Example with Golf Tee data","what":"Both MCDS.exe and the R-based optimizer","title":"Alternative optimization engine for fitting detection functions","text":"example (golf tee data, using observer 1) taken R help ds function: (warning cluster sizes coded -1 can ignored.) Assuming MCDS.exe installed, default R-based optimizer run. give result example, happens result R-based optimizer used. can see line summary output: Optimisation: mrds (nlminb) mrds R package Distance package relies , nlminb R-based optimizer. can see process optimizers used setting debug_level argument ds function value larger default 0 examining output: First half-normal adjustments run; model MCDS.exe software run first, followed R-based (mrds) optimizer. converge give nll (negative log-likelihood) 154.5692, giving AIC 311.138. model half-normal cosine adjustment order 2 fitted data, first MCDS.exe optimizer R-based optimizer. give result nll 154.5619 AIC 313.124. higher AIC adjustments half-normal adjustments chosen. case, optimizers produced result, benefit run MCDS.exe.","code":"#Load data data(book.tee.data) tee.data <- subset(book.tee.data$book.tee.dataframe, observer==1) #Fit detection function - default is half-normal with cosine adjustments ds.model <- ds(tee.data, truncation = 4) ## Starting AIC adjustment term selection. ## Fitting half-normal key function ## AIC= 311.138 ## Fitting half-normal key function with cosine(2) adjustments ## AIC= 313.124 ## ## Half-normal key function selected. ## No survey area information supplied, only estimating detection function. summary(ds.model) ## ## Summary for distance analysis ## Number of observations : 124 ## Distance range : 0 - 4 ## ## Model : Half-normal key function ## AIC : 311.1385 ## Optimisation: mrds (nlminb) ## ## Detection function parameters ## Scale coefficient(s): ## estimate se ## (Intercept) 0.6632435 0.09981249 ## ## Estimate SE CV ## Average p 0.5842744 0.04637627 0.07937412 ## N in covered region 212.2290462 20.85130344 0.09824906 ds.model <- ds(tee.data, truncation = 4, debug_level = 1) ## Starting AIC adjustment term selection. ## Fitting half-normal key function ## DEBUG: initial values = -0.1031529 ## Running MCDS.exe... ## Command file written to C:\\Users\\erexs\\AppData\\Local\\Temp\\RtmpsdWor7\\cmdtmp46cc6da77768.txt ## Stats file written to C:\\Users\\erexs\\AppData\\Local\\Temp\\RtmpsdWor7\\stat46cc26507b7a.txt ## DEBUG: initial values = 0.6632378 ## ## DEBUG: Convergence! ## Iteration 0.0 ## Converge = 0 ## nll = 154.5692 ## parameters = 0.6632378 ## MCDS.exe log likehood: -154.5697 ## MCDS.exe pars: 1.941067 ## mrds refitted log likehood: -154.5692276 ## mrds refitted pars: 0.6632378 ## ## DEBUG: Convergence! ## Iteration 0.0 ## Converge = 0 ## nll = 154.5692 ## parameters = 0.6632435 ## AIC= 311.138 ## Fitting half-normal key function with cosine(2) adjustments ## DEBUG: initial values = -0.1031529 0 ## Running MCDS.exe... ## Command file written to C:\\Users\\erexs\\AppData\\Local\\Temp\\RtmpsdWor7\\cmdtmp46cc19ae5459.txt ## Stats file written to C:\\Users\\erexs\\AppData\\Local\\Temp\\RtmpsdWor7\\stat46cc5f227f6c.txt ## DEBUG: initial values = 0.6606793 -0.0159333 ## ## DEBUG: Convergence! ## Iteration 0.0 ## Converge = 0 ## nll = 154.5619 ## parameters = 0.6606793, -0.0159333 ## MCDS.exe log likehood: -154.5624 ## MCDS.exe pars: 1.936107, -0.0159333 ## mrds refitted log likehood: -154.5619307 ## mrds refitted pars: 0.6606793, -0.0159333 ## iteration: 1 ## f(x) = 243.539291 ## iteration: 2 ## f(x) = 164.079444 ## iteration: 3 ## f(x) = 156.273060 ## iteration: 4 ## f(x) = 155.340034 ## iteration: 5 ## f(x) = 154.684098 ## iteration: 6 ## f(x) = 154.571590 ## iteration: 7 ## f(x) = 154.562292 ## iteration: 8 ## f(x) = 154.561975 ## iteration: 9 ## f(x) = 154.561931 ## ## DEBUG: Convergence! ## Iteration 0.0 ## Converge = 0 ## nll = 154.5619 ## parameters = 0.6606883, -0.0159336 ## DEBUG: MCDS lnl = -154.5619 mrds lnl = 154.5619 ## AIC= 313.124 ## ## Half-normal key function selected. ## No survey area information supplied, only estimating detection function."},{"path":"/articles/web-only/alt-optimise/mcds-dot-exe.html","id":"specifying-which-optimzier-to-run","dir":"Articles > Web-only > Alt-optimise","previous_headings":"Example with Golf Tee data","what":"Specifying which optimzier to run","title":"Alternative optimization engine for fitting detection functions","text":"said earlier, default behaviour MCDS.exe downloaded run MCDS.exe R-based optimizer. However, optimizer argument can used specify use – either , R MCDS. example just MCDS.exe optimizer: summary output now says Optimisation: MCDS.exe.","code":"ds.model <- ds(tee.data, truncation = 4, optimizer = \"MCDS\") ## Starting AIC adjustment term selection. ## Fitting half-normal key function ## AIC= 311.138 ## Fitting half-normal key function with cosine(2) adjustments ## AIC= 313.124 ## ## Half-normal key function selected. ## No survey area information supplied, only estimating detection function. summary(ds.model) ## ## Summary for distance analysis ## Number of observations : 124 ## Distance range : 0 - 4 ## ## Model : Half-normal key function ## AIC : 311.1385 ## Optimisation: MCDS.exe ## ## Detection function parameters ## Scale coefficient(s): ## estimate se ## (Intercept) 0.6632378 0.09981136 ## ## Estimate SE CV ## Average p 0.5842718 0.04637577 0.07937362 ## N in covered region 212.2300013 20.85133459 0.09824876"},{"path":"/articles/web-only/alt-optimise/mcds-dot-exe.html","id":"demonstration-using-ddf-in-mrds-package","dir":"Articles > Web-only > Alt-optimise","previous_headings":"Example with Golf Tee data","what":"Demonstration using ddf in mrds package","title":"Alternative optimization engine for fitting detection functions","text":"demonstrate using optimizers ddf function, rather via ds. exercise, fit using just MCDS.exe optimizer:","code":"#Half normal detection function ddf.model <- ddf(dsmodel = ~mcds(key = \"hn\", formula = ~1), data = tee.data, method = \"ds\", meta.data = list(width = 4)) #Half normal with cos(2) adjustment ddf.model.cos2 <- ddf(dsmodel = ~mcds(key = \"hn\", adj.series = \"cos\", adj.order = 2, formula = ~1), data = tee.data, method = \"ds\", meta.data = list(width = 4)) #Compare with AIC AIC(ddf.model, ddf.model.cos2) ## df AIC ## ddf.model 1 311.1385 ## ddf.model.cos2 2 313.1239 #Model with no adjustment term has lower AIC; show summary of this model summary(ddf.model) ## ## Summary for ds object ## Number of observations : 124 ## Distance range : 0 - 4 ## AIC : 311.1385 ## Optimisation : mrds (nlminb) ## ## Detection function: ## Half-normal key function ## ## Detection function parameters ## Scale coefficient(s): ## estimate se ## (Intercept) 0.6632435 0.09981249 ## ## Estimate SE CV ## Average p 0.5842744 0.04637627 0.07937412 ## N in covered region 212.2290462 20.85130344 0.09824906 ddf.model <- ddf(dsmodel = ~mcds(key = \"hn\", adj.series = \"cos\", adj.order = 2, formula = ~1), data = tee.data, method = \"ds\", meta.data = list(width = 4), control = list(optimizer = \"MCDS\")) summary(ddf.model) ## ## Summary for ds object ## Number of observations : 124 ## Distance range : 0 - 4 ## AIC : 313.1239 ## Optimisation : MCDS.exe ## ## Detection function: ## Half-normal key function with cosine adjustment term of order 2 ## ## Detection function parameters ## Scale coefficient(s): ## estimate se ## (Intercept) 0.6606782 0.1043327 ## ## Adjustment term coefficient(s): ## estimate se ## cos, order 2 -0.01593274 0.1351281 ## ## Estimate SE CV ## Average p 0.5925856 0.08165144 0.1377884 ## N in covered region 209.2524623 31.22790760 0.1492356"},{"path":"/articles/web-only/alt-optimise/mcds-dot-exe.html","id":"point-transect-example---wren-data","dir":"Articles > Web-only > Alt-optimise","previous_headings":"","what":"Point transect example - wren data","title":"Alternative optimization engine for fitting detection functions","text":"example point transect data bird (wren), Buckland (2006). case one optimizers fails correctly constrain detection function probability detection zero distances, use optimizer inference. load wren 5 minute example dataset define cutpoints distances (collected intervals). following call ds gives several warnings. warnings detection function less zero distances. also warning Hessian (used variance estimation), relates Hermite(4, 6) model (.e., two Hermite adjustment terms order 4 6) chosen using AIC warning can ignored. MCDS.exe optimizer chosen one (see `Optimisation’ line output). warnings persist MCDS.exe optimizer used: Looking plot fitted object (Figure 1), seems evaluated pdf less 0 distances close truncation point (approx. 95m greater): Figure 1: PDF fitted model MCDS optimizer. appears happening failure optimization routine appropriately constrain model parameters detection function valid. happens occasion (routines aren’t perfect!) recommend trying optimization routine. use R-based optimizer: fitted AIC chosen model (half normal one Hermite adjustment order 4) 422.73, higher MCDS.exe optimizer (422.23), explains MCDS.exe optimizer fit chosen allowed ds choose freely. However, detection function fit MCDS.exe invalid, went lower 0 95m, fit R-based optimizer looks valid (Figure 2): Figure 2: PDF fitted model R-based optimizer. Hence case, use R-based optimizer’s fit.","code":"data(\"wren_5min\") bin.cutpoints.100m <- bin.cutpoints <- c(0, 10, 20, 30, 40, 60, 80, 100) wren5min.hn.herm.t100 <- ds(data = wren_5min, key = \"hn\", adjustment = \"herm\", transect = \"point\", cutpoints = bin.cutpoints.100m) ## Warning in create_bins(data, cutpoints): Some distances were outside bins and ## have been removed. ## Starting AIC adjustment term selection. ## Fitting half-normal key function ## AIC= 427.471 ## Fitting half-normal key function with Hermite(4) adjustments ## Warning in check.mono(result, n.pts = control$mono.points): Detection function ## is less than 0 at some distances ## Warning in check.mono(result, n.pts = control$mono.points): Detection function ## is less than 0 at some distances ## AIC= 422.228 ## Fitting half-normal key function with Hermite(4,6) adjustments ## Warning: First partial hessian is singular and second-partial hessian is NULL, no hessian ## Warning: Detection function is less than 0 at some distances ## Warning: Detection function is less than 0 at some distances ## AIC= 423.255 ## ## Half-normal key function with Hermite(4) adjustments selected. ## Warning in mrds::check.mono(model, n.pts = 10): Detection function is less than ## 0 at some distances summary(wren5min.hn.herm.t100) ## ## Summary for distance analysis ## Number of observations : 132 ## Distance range : 0 - 100 ## ## Model : Half-normal key function with Hermite polynomial adjustment term of order 4 ## ## Strict monotonicity constraints were enforced. ## AIC : 422.2284 ## Optimisation: MCDS.exe ## ## Detection function parameters ## Scale coefficient(s): ## estimate se ## (Intercept) 12.08697 1e+05 ## ## Adjustment term coefficient(s): ## estimate se ## herm, order 4 0.5723854 0.07888508 ## ## Estimate SE CV ## Average p 0.4399177 0.0253475 0.05761875 ## N in covered region 300.0561563 26.0944820 0.08696533 ## ## Summary statistics: ## Region Area CoveredArea Effort n k ER se.ER cv.ER ## 1 Montrave 33.2 2010619 64 132 32 2.0625 0.1901692 0.09220324 ## ## Abundance: ## Label Estimate se cv lcl ucl df ## 1 Total 0.004954625 0.0005386969 0.1087261 0.003988075 0.006155428 57.83608 ## ## Density: ## Label Estimate se cv lcl ucl df ## 1 Total 0.0001492357 1.622581e-05 0.1087261 0.0001201227 0.0001854045 57.83608 wren5min.hn.herm.t100.mcds <- ds(data = wren_5min, key = \"hn\", adjustment = \"herm\", transect = \"point\", cutpoints = bin.cutpoints.100m, optimizer = \"MCDS\") ## Warning in create_bins(data, cutpoints): Some distances were outside bins and ## have been removed. ## Starting AIC adjustment term selection. ## Fitting half-normal key function ## AIC= 427.471 ## Fitting half-normal key function with Hermite(4) adjustments ## Warning in check.mono(result, n.pts = control$mono.points): Detection function ## is less than 0 at some distances ## Warning in check.mono(result, n.pts = control$mono.points): Detection function ## is less than 0 at some distances ## AIC= 422.228 ## Fitting half-normal key function with Hermite(4,6) adjustments ## Warning: First partial hessian is singular and second-partial hessian is NULL, no hessian ## Warning: Detection function is less than 0 at some distances ## Warning: Detection function is less than 0 at some distances ## AIC= 423.255 ## ## Half-normal key function with Hermite(4) adjustments selected. ## Warning in mrds::check.mono(model, n.pts = 10): Detection function is less than ## 0 at some distances plot(wren5min.hn.herm.t100.mcds, pdf = TRUE) wren5min.hn.herm.t100.r <- ds(data=wren_5min, key=\"hn\", adjustment=\"herm\", transect=\"point\", cutpoints=bin.cutpoints.100m, optimizer = \"R\") ## Warning in create_bins(data, cutpoints): Some distances were outside bins and ## have been removed. ## Starting AIC adjustment term selection. ## Fitting half-normal key function ## AIC= 427.471 ## Fitting half-normal key function with Hermite(4) adjustments ## AIC= 422.73 ## Fitting half-normal key function with Hermite(4,6) adjustments ## AIC= 424.717 ## ## Half-normal key function with Hermite(4) adjustments selected. plot(wren5min.hn.herm.t100.r, pdf = TRUE)"},{"path":"/articles/web-only/alt-optimise/mcds-dot-exe.html","id":"camera-trap-example","dir":"Articles > Web-only > Alt-optimise","previous_headings":"","what":"Camera trap example","title":"Alternative optimization engine for fitting detection functions","text":"example, helps familiar Analysis camera trapping data vignette distance sampling web site. also need Download Dryad data repository detection distances full daytime data set read code : fit detection function selected camera trap vignette, uniform plus 3 cosine adjustment terms, time long fitting takes: Fitting takes 10 secs. (Note, versions Distance 2.0.0 much higher number!) try MCDS.exe optimizer: took little less time: 9 secs. Hence, datasets, may quicker use MCDS.exe optimizer. make significant difference using nonparametric bootstrap estimate variance. However, making improvements optimizer mrds 3.0.0 Distance 2.0.0 difference generally small, many cases R optimizer faster MCDS.exe likely productive avenue pursue general.","code":"#Read in data and set up data for analysis DuikerCameraTraps <- read.csv(file=\"DaytimeDistances.txt\", header=TRUE, sep=\"\\t\") DuikerCameraTraps$Area <- DuikerCameraTraps$Area / (1000*1000) DuikerCameraTraps$object <- NA DuikerCameraTraps$object[!is.na(DuikerCameraTraps$distance)] <- 1:sum(!is.na(DuikerCameraTraps$distance)) #Specify breakpoints and truncation trunc.list <- list(left=2, right=15) mybreaks <- c(seq(2, 8, 1), 10, 12, 15) start.time <- Sys.time() uni3.r <- ds(DuikerCameraTraps, transect = \"point\", key=\"unif\", adjustment = \"cos\", nadj=3, cutpoints = mybreaks, truncation = trunc.list, optimizer = \"R\") ## Warning in create_bins(data, cutpoints): Some distances were outside bins and ## have been removed. ## Fitting uniform key function with cosine(1,2,3) adjustments ## AIC= 44012.238 R.opt.time <- Sys.time() - start.time summary(uni3.r) ## ## Summary for distance analysis ## Number of observations : 10284 ## Distance range : 2 - 15 ## ## Model : Uniform key function with cosine adjustment terms of order 1,2,3 ## ## Strict monotonicity constraints were enforced. ## AIC : 44012.24 ## Optimisation: mrds (slsqp) ## ## Detection function parameters ## Scale coefficient(s): ## NULL ## ## Adjustment term coefficient(s): ## estimate se ## cos, order 1 0.93529846 0.01504415 ## cos, order 2 -0.05342058 0.02438026 ## cos, order 3 -0.08069257 0.01557680 ## ## Estimate SE CV ## Average p 3.290022e-01 1.349494e-02 0.04101777 ## N in covered region 3.125815e+04 1.306764e+03 0.04180555 ## ## Summary statistics: ## Region Area CoveredArea Effort n k ER se.ER cv.ER ## 1 Tai 40.37 21858518573 31483179 10284 21 0.0003266506 8.763252e-05 0.268276 ## ## Abundance: ## Label Estimate se cv lcl ucl df ## 1 Total 5.772996e-05 1.566754e-05 0.2713936 3.315829e-05 0.0001005103 20.94597 ## ## Density: ## Label Estimate se cv lcl ucl df ## 1 Total 1.430021e-06 3.880986e-07 0.2713936 8.213597e-07 2.489727e-06 20.94597 start.time <- Sys.time() uni3.mcds <- ds(DuikerCameraTraps, transect = \"point\", key=\"unif\", adjustment = \"cos\", nadj=3, cutpoints = mybreaks, truncation = trunc.list, optimizer = \"MCDS\") ## Warning in create_bins(data, cutpoints): Some distances were outside bins and ## have been removed. ## Fitting uniform key function with cosine(1,2,3) adjustments ## AIC= 44012.211 MCDS.opt.time <- Sys.time() - start.time summary(uni3.mcds) ## ## Summary for distance analysis ## Number of observations : 10284 ## Distance range : 2 - 15 ## ## Model : Uniform key function with cosine adjustment terms of order 1,2,3 ## ## Strict monotonicity constraints were enforced. ## AIC : 44012.21 ## Optimisation: MCDS.exe ## ## Detection function parameters ## Scale coefficient(s): ## NULL ## ## Adjustment term coefficient(s): ## estimate se ## cos, order 1 0.93518220 0.01504583 ## cos, order 2 -0.05345965 0.02438049 ## cos, order 3 -0.08073799 0.01557817 ## ## Estimate SE CV ## Average p 3.290679e-01 1.349917e-02 0.04102246 ## N in covered region 3.125191e+04 1.306645e+03 0.04181008 ## ## Summary statistics: ## Region Area CoveredArea Effort n k ER se.ER cv.ER ## 1 Tai 40.37 21858518573 31483179 10284 21 0.0003266506 8.763252e-05 0.268276 ## ## Abundance: ## Label Estimate se cv lcl ucl df ## 1 Total 5.771844e-05 1.566445e-05 0.2713943 3.315164e-05 0.0001004903 20.94619 ## ## Density: ## Label Estimate se cv lcl ucl df ## 1 Total 1.429736e-06 3.880222e-07 0.2713943 8.21195e-07 2.489232e-06 20.94619"},{"path":"/articles/web-only/alt-optimise/mcds-dot-exe.html","id":"discussion","dir":"Articles > Web-only > Alt-optimise","previous_headings":"","what":"Discussion","title":"Alternative optimization engine for fitting detection functions","text":"shown fit distance sampling detection functions (single platform data) using either R-based optimizer built ddf function (via calling ddf , likely, calling ds function Distance package) MCDS.exe analysis engine used Distance Windows. vast majority cases fitting methods give result, need use . However, downside fitting takes longer, called turn. downloaded MCDS.exe file want speed things , can use just R-based optimizer specifying optimizer = \"R\" call ds ddf, just MCDS.exe optimizer optimizer = \"MCDS\". situations two may produce different results given . Note case give update related new algorithms developed used mrds 3.0.0. Detection functions close non-monotonic close zero distances. adjustment terms used detection function, constraints required prevent fitted function “bumps” detection probability increases increasing distance also prevent detection probability becoming less zero. former called monotonicity constraints set using monotonicity argument ds meta.data argument ddf; monotonicity set default. practice, monotonicity values less zero monitored finite set distances 0 right truncation point, (historical reasons) set distances different R-based MCDS.exe optimizers. typically makes difference optimization, particularly borderline cases can result different fitted functions. Plotting fitted functions (wren example ) can reveal issue fitted function, occurs associated optimizer used. future plan bring two line use distances checking. Update: mrds 3.0.0 Distance 2.0.0 now aligned, difference gone away. Detection functions many adjustment terms. two optimizers use different algorithms optimization: R-based optimizer uses routine called nlminb MCDS.exe uses nonlinear constrained optimizer routine produced IMSL group. cases multiple adjustment terms, hence several parameters estimate (often correlated) likelihood maximization harder, one routine can sometimes fail find maximum. case, choosing routine higher likelihood (.e., lower negative log-likelihod, equivalently lower AIC) right thing , default behaviour software. Update: mrds 3.0.0 now use Sequential Least Squares Programming (SLSQP) algorithm ‘nloptr’ package via nlminb R-based optimizer (rather old solnp algorithm). old algorithm can accessed ds() function Distance using argument mono_method = \"solnp\" ddf() function mrds using argument control(mono.method = \"solnp\"). However, new one shows improved performance testing, recommend using old algorithm except reasons backwards compatibility. Detection functions “overdispersed” “spike” detection function close zero distance. Similarly , detection function can hard maximize hence optimizer can fail find maximum. Solution . Overdispersed data common camera trap distance sampling many detections can generated individual crossing front camera. Update . interested seeing comparisons optimizers various datasets, maintain test suite straightforward challenging datasets together test code run compare two optimizers – available MCDS_mrds_compare repository. encounter difficulties using optimizers, one possible troubleshooting step run analysis first choosing one optimizer (e.g., specifing argument optimizer = \"MCDS\") choosing (optimizer = \"R\"). allows clearly see output optimizer (including error messages) facilitates comparison. One criterion favour one optimizer speed. found large datasets MCDS.exe optimizer quicker, Distance 2.0.0 mrds 3.0.0 longer necessarily case. One thing note MCDS.exe file get deleted time update mrds package, ’ll need re-download file want continue using MCDS.exe optimizer. shown , requires running one line code.","code":""},{"path":[]},{"path":"/articles/web-only/ctds/camera-distill.html","id":"analysis-of-camera-trapping-data-using-distance-sampling","dir":"Articles > Web-only > Ctds","previous_headings":"","what":"Analysis of camera trapping data using distance sampling","title":"Analysis of camera trapping data","text":"distance sampling approach analysis camera trapping data offers potential advantage individual animal identification required. However, accurate animal--camera detection distances required. requires calibration prior survey images objects taken known distances camera. See details Howe, Buckland, Després-Einspenner, & Kühl (2017) description field work data analysis. present analysis data Howe et al. (2017) using R package Distance (Miller, Rexstad, Thomas, Marshall, & Laake, 2019).","code":""},{"path":"/articles/web-only/ctds/camera-distill.html","id":"estimating-temporal-availability-for-detection","dir":"Articles > Web-only > Ctds","previous_headings":"Analysis of camera trapping data using distance sampling","what":"Estimating temporal availability for detection","title":"Analysis of camera trapping data","text":"Heat- motion-sensitive camera traps detect moving animals within range sensor field view camera. Animals therefore unavailable detection camera traps stationary, (e.g., semi-arboreal species) (e.g., semi-fossorial species) range sensor camera, regardless distance camera two dimensions. temporally limited availability detection must accounted avoid negative bias estimated densities. data abundant, researchers may choose include data times 100% population can assumed active within vertical range camera traps (Howe et al., 2017). However, rarely-detected species surveys lower effort, might necessary include observations distance. situations, survey duration (\\(T_k\\)) might 12- 24-hours per day, becomes necessary estimate proportion time included \\(T_k\\) animals available detection. Methods estimating proportion directly CT data described (Rowcliffe, Kays, Kranstauber, Carbone, & Jansen, 2014), can included analyses estimate density (Bessone et al., 2020), example another multiplier, potentially associated standard errors.","code":""},{"path":"/articles/web-only/ctds/camera-distill.html","id":"data-input","dir":"Articles > Web-only > Ctds","previous_headings":"Analysis of camera trapping data using distance sampling","what":"Data input","title":"Analysis of camera trapping data","text":"Times independent camera triggering events period 28 June 21 September 2014 23 cameras recorded file described data repository Howe, Buckland, Després-Einspenner, Kühl, & Buckland (2018). Download file Dryad save local drive, read following code: format trigger.events data frame adjusted create datetime field use activity package Rowcliffe (2021)","code":"trigger.events <- read.table(file=\"VideoStartTimes_FullDays.txt\", header=TRUE) trigger.events$date <- paste(\"2014\", sprintf(\"%02i\", trigger.events$month), sprintf(\"%02i\", trigger.events$day), sep=\"/\") trigger.events$time <- paste(sprintf(\"%02i\", trigger.events$hour), sprintf(\"%02i\", trigger.events$minute), sep=\":\") trigger.events$datetime <- paste(trigger.events$date, trigger.events$time)"},{"path":"/articles/web-only/ctds/camera-distill.html","id":"functions-in-the-activity-package","dir":"Articles > Web-only > Ctds","previous_headings":"Analysis of camera trapping data using distance sampling","what":"Functions in the activity package","title":"Analysis of camera trapping data","text":"employ two functions activity package. First, convert time day camera triggering event fraction 24hr cycle event took place, measured radians. words, event occurring midday recorded \\(\\pi\\) event occurring midnight recorded 2\\(\\pi\\). radian conversion camera triggering times, distribution triggering events times smoothed, using kernel smoother function fitact. function estimates proportion time (24hr day) animals active. addition, triggering time data can resampled provide measure uncertainty point estimate activity proportion. plot histogram triggering times (Figure 1), along fitted smooth provided plot function applied object returned fitact. Figure 1: Fitted smooth histogram camera triggering times Maxwell’s duiker data. value computed smooth activity histogram can extracted object created fitact. extraction reaches object look slot called act. uncertainty around point estimate derived resampling takes place within fitact. slot display point estimates, standard error confidence interval bounds. output used adjust density estimates temporal activity cameras operation 24hrs per day. However, study, cameras active 11.5 hours per day (0630-1800).","code":"library(activity) trigger.events$rtime <- gettime(trigger.events$datetime, tryFormats = \"%Y/%m/%d %H:%M\", scale = \"radian\") act_result <- fitact(trigger.events$rtime, sample=\"data\", reps=100) plot(act_result) print(act_result@act) ## act se lcl.2.5% ucl.97.5% ## 0.33463831 0.02096859 0.30195769 0.37801207"},{"path":"/articles/web-only/ctds/camera-distill.html","id":"adjustment-for-temporal-availability","dir":"Articles > Web-only > Ctds","previous_headings":"Analysis of camera trapping data using distance sampling","what":"Adjustment for temporal availability","title":"Analysis of camera trapping data","text":"use temporal availability information create multiplier. multiplier must defined > proportion camera operation time animals available detected equivalent value produced fitact function; value proportion 24hr animals available detected. availability multiplier must adjusted based daily camera operation period. Uncertainty proportion also included computations. point estimate standard error pulled fitact object, adjusted daily camera operation time placed data frame named creation named list, specifically fashion shown. robust way incorporating uncertainty temporal availability estimate described later.","code":"camera.operation.per.day <- 11.5 prop.camera.time <- camera.operation.per.day / 24 avail <- list(creation=data.frame(rate = act_result@act[1]/prop.camera.time, SE = act_result@act[2]/prop.camera.time))"},{"path":"/articles/web-only/ctds/camera-distill.html","id":"detection-data-analysis","dir":"Articles > Web-only > Ctds","previous_headings":"","what":"Detection data analysis","title":"Analysis of camera trapping data","text":"Detection distances full daytime data set also available Howe et al. (2018). Download Dryad read code chunk : Data file recorded study area size square meters; second line converts area square kilometers; remaining lines create object field, uniquely identify observation.","code":"DuikerCameraTraps <- read.csv(file=\"DaytimeDistances.txt\", header=TRUE, sep=\"\\t\") DuikerCameraTraps$Area <- DuikerCameraTraps$Area / (1000*1000) DuikerCameraTraps$object <- NA DuikerCameraTraps$object[!is.na(DuikerCameraTraps$distance)] <- 1:sum(!is.na(DuikerCameraTraps$distance))"},{"path":"/articles/web-only/ctds/camera-distill.html","id":"exploratory-data-analysis","dir":"Articles > Web-only > Ctds","previous_headings":"Detection data analysis","what":"Exploratory Data Analysis","title":"Analysis of camera trapping data","text":"quick summary data set including: many camera stations many detections total. Note, three sampling stations (B1, C5, E4) detections. one record stations distance recorded NA, record important contains effort information.","code":"sum(!is.na(DuikerCameraTraps$distance)) ## [1] 11180 table(DuikerCameraTraps$Sample.Label) ## ## A1 A2 A3 A4 B1 B2 B3 B4 C1 C2 C3 C4 C5 C6 D3 D4 ## 388 66 988 420 3 1951 73 208 52 195 767 153 41 2682 342 193 ## D5 E3 E4 E5 E6 ## 524 518 1 375 1241"},{"path":"/articles/web-only/ctds/camera-distill.html","id":"distance-recording","dir":"Articles > Web-only > Ctds","previous_headings":"Detection data analysis","what":"Distance recording","title":"Analysis of camera trapping data","text":"examination distribution detection distances; note bespoke cutpoints causing distance bins narrow 8m, increasing width maximum detection distance 21m (Figure 2). Figure 2: Distribution detection distances peak activity period.","code":"breakpoints <- c(seq(0, 8, 1), 10, 12, 15, 21) hist(DuikerCameraTraps$distance, breaks=breakpoints, main=\"Peak activity data set\", xlab=\"Radial distance (m)\")"},{"path":"/articles/web-only/ctds/camera-distill.html","id":"truncation-decisions","dir":"Articles > Web-only > Ctds","previous_headings":"Detection data analysis","what":"Truncation decisions","title":"Analysis of camera trapping data","text":"described Howe et al. (2017): paucity observations 1 2 m 2 3 m, left-truncated 2 m. Fitted detection functions probability density functions heavy-tailed distances >15 m included, right truncated 15 m.","code":""},{"path":"/articles/web-only/ctds/camera-distill.html","id":"detection-function-fits","dir":"Articles > Web-only > Ctds","previous_headings":"Detection data analysis","what":"Detection function fits","title":"Analysis of camera trapping data","text":"conversion factor must included call ds() call bootdht(). Candidate models considered differ candidate set presented Howe et al. (2017). set includes uniform key 1, 2 3 cosine adjustments, half normal key 0, 1 2 cosine adjustment hazard rate key 0, 1 simple polynomial adjustments. maximum number parameters models within candidate model set 3. present density estimates produced fitted detection function models ) chosen preferred model b) density estimates adjusted viewing angle temporal availability.","code":"library(Distance) trunc.list <- list(left = 2, right = 15) mybreaks <- c(seq(2, 8, 1), 10, 12, 15) conversion <- convert_units(\"meter\", NULL, \"square kilometer\") uni1 <- ds(DuikerCameraTraps, transect = \"point\", key = \"unif\", adjustment = \"cos\", nadj = 1, convert_units = conversion, cutpoints = mybreaks, truncation = trunc.list) ## Warning in create_bins(data, cutpoints): Some distances were outside bins and ## have been removed. uni2 <- ds(DuikerCameraTraps, transect = \"point\", key = \"unif\", adjustment = \"cos\", nadj = 2, convert_units = conversion, cutpoints = mybreaks, truncation = trunc.list) ## Warning in create_bins(data, cutpoints): Some distances were outside bins and ## have been removed. uni3 <- ds(DuikerCameraTraps, transect = \"point\", key = \"unif\", adjustment = \"cos\", nadj = 3, convert_units = conversion, cutpoints = mybreaks, truncation = trunc.list) ## Warning in create_bins(data, cutpoints): Some distances were outside bins and ## have been removed. hn0 <- ds(DuikerCameraTraps, transect = \"point\", key = \"hn\", adjustment = NULL, convert_units = conversion, cutpoints = mybreaks, truncation = trunc.list) ## Warning in create_bins(data, cutpoints): Some distances were outside bins and ## have been removed. hn1 <- ds(DuikerCameraTraps, transect = \"point\", key = \"hn\", adjustment = \"cos\", nadj = 1, convert_units = conversion, cutpoints = mybreaks, truncation = trunc.list) ## Warning in create_bins(data, cutpoints): Some distances were outside bins and ## have been removed. hn2 <- ds(DuikerCameraTraps, transect = \"point\", key = \"hn\", adjustment = \"cos\", nadj = 2, convert_units = conversion, cutpoints = mybreaks, truncation = trunc.list) ## Warning in create_bins(data, cutpoints): Some distances were outside bins and ## have been removed. ## Warning in check.mono(result, n.pts = control$mono.points): Detection function ## is greater than 1 at some distances ## Warning in check.mono(result, n.pts = control$mono.points): Detection function ## is greater than 1 at some distances ## Warning in mrds::check.mono(model, n.pts = 10): Detection function is greater ## than 1 at some distances hr0 <- ds(DuikerCameraTraps, transect = \"point\", key = \"hr\", adjustment = NULL, convert_units = conversion, cutpoints = mybreaks, truncation = trunc.list) ## Warning in create_bins(data, cutpoints): Some distances were outside bins and ## have been removed. hr1 <- ds(DuikerCameraTraps, transect = \"point\", key = \"hr\", adjustment = \"poly\", nadj = 1, convert_units = conversion, cutpoints = mybreaks, truncation = trunc.list) ## Warning in create_bins(data, cutpoints): Some distances were outside bins and ## have been removed."},{"path":"/articles/web-only/ctds/camera-distill.html","id":"model-selection-adjustments-from-overdispersion","dir":"Articles > Web-only > Ctds","previous_headings":"Detection data analysis","what":"Model selection adjustments from overdispersion","title":"Analysis of camera trapping data","text":"Overdispersion causes AIC select overly-complex models, analysts specify number/order adjustment terms manually fitting distance sampling models data camera traps, rather allowing automated selection using AIC. Howe, Buckland, Després-Einspenner, & Kühl (2019) describe two methods performing model selection distance sampling models face overdispersion. provide R functions perform first methods. first method Howe et al. (2019) employs two-step process. First, overdisersion factor \\((\\hat{c})\\) computed key function family complex model family. \\(\\hat{c}\\) derived \\(\\chi^2\\) goodness fit test statistic divided degrees freedom. results adjusted AIC score model key function family: \\[QAIC = -2 \\left \\{ \\frac{log(\\mathcal{L}(\\hat{\\theta}))}{\\hat{c}} \\right \\} + 2K\\] Code perform QAIC computation found function QAIC Distance package, produces following results: Tables QAIC values key function family shown (code kable() calls suppressed easier readability results). Table 1: Table 2: QAIC values uniform key models. Table 3: Table 4: QAIC values half normal key models. Table 5: Table 6: QAIC values hazard rate key models. first pass model selection based QAIC values, find model uniform key function preferred QAIC three cosine adjustment terms. preferred model half normal key function family one cosine adjustment term. Finally, preferable model hazard rate key function family adjustment terms. second step model selection ranks models \\(\\hat{c}\\) values. Table 7: Table 8: Compare Table S5 Howe et al. (2018) data set, model chosen algorithm adjusts overdispersion model (uniform key three cosine adjustments) chosen conventional model selection; , model selected Howe et al. (2017) differing candidate model sets.","code":"chats <- chi2_select(uni3, hn1, hr0)$criteria modnames <- unlist(lapply(list(uni3, hn1, hr0), function(x) x$ddf$name.message)) results <- data.frame(modnames, chats) results.sort <- results[order(results$chats),] knitr::kable(results.sort, digits=2, row.names = FALSE, caption=\"Compare with Table S5 of Howe et al. (2018)\") %>% kable_paper(full_width = FALSE) %>% row_spec(1, bold=TRUE, background = \"#4da6ff\")"},{"path":"/articles/web-only/ctds/camera-distill.html","id":"sense-check-for-detection-parameter-estimates","dir":"Articles > Web-only > Ctds","previous_headings":"Detection data analysis","what":"Sense check for detection parameter estimates","title":"Analysis of camera trapping data","text":"check detection function vis--vis Howe et al. (2017), paper reports effective detection radius (\\(\\rho\\)) 9.4m peak activity data set. Howe et al. (2017) employed different candidate model set, resulting unadjusted hazard rate model preferred model. present estimated effective detection radius selected uniform key function three cosine adjustment terms. effective detection radius can derived \\(\\hat{P_a}\\) reported function ds \\[\\hat{\\rho} = \\sqrt{\\hat{P_a} \\cdot w^2}\\] \\(\\hat{P_a}\\) estimated 0.329, resulting estimate \\(\\hat{\\rho}\\) 7.457.","code":"p_a <- uni3$ddf$fitted[1] w <- range(mybreaks)[2] - range(mybreaks)[1] rho <- sqrt(p_a * w^2)"},{"path":"/articles/web-only/ctds/camera-distill.html","id":"selected-detection-function","dir":"Articles > Web-only > Ctds","previous_headings":"Detection data analysis","what":"Selected detection function","title":"Analysis of camera trapping data","text":"Figure 3 shows detection function probability density function selected model. Figure 3: Detection function probability density function selected detection function model.","code":"plot(uni3, main=\"Daytime activity\", xlab=\"Distance (m)\", showpoints=FALSE, lwd=3, xlim=c(0, 15)) plot(uni3, main=\"Daytime activity\", xlab=\"Distance (m)\", pdf=TRUE, showpoints=FALSE, lwd=3, xlim=c(0, 15))"},{"path":"/articles/web-only/ctds/camera-distill.html","id":"density-estimates","dir":"Articles > Web-only > Ctds","previous_headings":"Detection data analysis","what":"Density estimates","title":"Analysis of camera trapping data","text":"camera traps view entire area around , case simple point transect sampling. portion area sampled needs incorporated estimation abundance. data file contains column multiplier represents proportion circle sampled. Howe et al. (2017) notes camera angle view (AOV) 42\\(^{\\circ}\\). proportion circle viewed value 360\\(^{\\circ}\\). argument dht2 sample_fraction, obvious place include quantity. also add multiplier temporal availability described section temporal availability dht2 function produce analytical measures precision call.","code":"viewangle <- 42 # degrees samfrac <- viewangle / 360 peak.uni.dens <- dht2(uni3, flatfile=DuikerCameraTraps, strat_formula = ~1, sample_fraction = samfrac, er_est = \"P2\", multipliers = avail, convert_units = conversion) print(peak.uni.dens, report=\"density\") ## Density estimates from distance sampling ## Stratification : geographical ## Variance : P2, n/L ## Multipliers : creation ## Sample fraction : 0.1166667 ## ## ## Summary statistics: ## .Label Area CoveredArea Effort n k ER se.ER cv.ER ## Total 40.37 2596.317 31483179 10284 21 0 0 0.268 ## ## Density estimates: ## .Label Estimate se cv LCI UCI df ## Total 17.2357 4.801 0.279 9.7947 30.3297 23.239 ## ## Component percentages of variance: ## .Label Detection ER Multipliers ## Total 2.17 92.77 5.06"},{"path":"/articles/web-only/ctds/camera-distill.html","id":"bootstrap-for-variance-estimation","dir":"Articles > Web-only > Ctds","previous_headings":"","what":"Bootstrap for variance estimation","title":"Analysis of camera trapping data","text":"produce reliable estimate precision point estimate, produce bootstrap estimates using bootdht. user needs create function another named list facilitate use bootstrap: summary function extract information replicate multiplier list describing temporal availability derived.","code":""},{"path":"/articles/web-only/ctds/camera-distill.html","id":"summary-function","dir":"Articles > Web-only > Ctds","previous_headings":"Bootstrap for variance estimation","what":"Summary function","title":"Analysis of camera trapping data","text":"constructed, mysummary keep density estimate produced bootstrap replicate stratum () estimate pertains.","code":"mysummary <- function(ests, fit){ return(data.frame(Label = ests$individuals$D$Label, Dhat = ests$individuals$D$Estimate)) }"},{"path":"/articles/web-only/ctds/camera-distill.html","id":"multiplier-function","dir":"Articles > Web-only > Ctds","previous_headings":"Bootstrap for variance estimation","what":"Multiplier function","title":"Analysis of camera trapping data","text":"rather complex list makes use make_activity_fn exists Distance package used call fitact function activity package. user, responsibility provide three arguments function: vector containing detection times radians (computed earlier section), manner precision temporal availability estimate produced number hours per day cameras operation","code":"mult <- list(availability= make_activity_fn(trigger.events$rtime, sample=\"data\", detector_daily_duration=camera.operation.per.day))"},{"path":"/articles/web-only/ctds/camera-distill.html","id":"speeding-up-the-bootstrap","dir":"Articles > Web-only > Ctds","previous_headings":"Bootstrap for variance estimation","what":"Speeding up the bootstrap","title":"Analysis of camera trapping data","text":"Bootstrap analyses camera trap data can quite slow. general, camera traps produce large amount distance sampling data, addition data tend “overdispersed” meaning (case) lots observations distances. Together, can cause analyses run slowly, can especially true bootstrap analyses variance estimation. One way speed bootstrap run multiple analyses parallel, using multiple cores computer. can achieve using cores argument bootdht - fastest results set number cores machine minus 1 (best leave 1 free things). can find number cores calling parallel::detectCores() code . Another possible speed-set starting values - quite advanced technique come back later document.","code":""},{"path":"/articles/web-only/ctds/camera-distill.html","id":"remaining-arguments-to-bootdht","dir":"Articles > Web-only > Ctds","previous_headings":"Bootstrap for variance estimation","what":"Remaining arguments to bootdht","title":"Analysis of camera trapping data","text":"Just dht2 arguments model, flatfile, sample_fraction, convert.units multipliers (although bootdht multipliers uses function rather single value). novel arguments dht2 resample_transects indicating camera stations resampled replacement, nboot number bootstrap replicates.","code":"n.cores <- parallel::detectCores() daytime.boot.uni <- bootdht(model=uni3, flatfile=DuikerCameraTraps, resample_transects = TRUE, nboot = 500, cores = n.cores - 1, summary_fun=mysummary, sample_fraction = samfrac, convert_units = conversion, multipliers=mult)"},{"path":"/articles/web-only/ctds/camera-distill.html","id":"confidence-limits-computed-via-the-percentile-method-of-the-bootstrap-","dir":"Articles > Web-only > Ctds","previous_headings":"Bootstrap for variance estimation","what":"Confidence limits computed via the percentile method of the bootstrap.","title":"Analysis of camera trapping data","text":"Figure 4: Distribution density estimates bootstrap replicates. Red dashed lines indicate bootstrap 95% confidence intervals (obtained using quantile method); grey dashed lines indicate analytical 95% confidence intervals obtained earlier. confidence interval derived bootstrap wider confidence interval derived analytical methods (Figure 4).","code":"print(summary(daytime.boot.uni)) ## Bootstrap results ## ## Boostraps : 500 ## Successes : 498 ## Failures : 2 ## ## median mean se lcl ucl cv ## Dhat 18.01 19.13 7.85 7.62 37.79 0.44 hist(daytime.boot.uni$Dhat, breaks = 20, xlab = \"Estimated density\", main = \"D-hat estimates bootstraps\") abline(v = quantile(daytime.boot.uni$Dhat, probs = c(0.025,0.975), na.rm = TRUE), lwd = 2, lty = 2, col = \"red\") abline(v = c(peak.uni.dens$LCI/peak.uni.dens$Area, peak.uni.dens$UCI/peak.uni.dens$Area), lwd = 2, lty = 2, col = \"grey\")"},{"path":"/articles/web-only/ctds/camera-distill.html","id":"an-esoteric-note-on-starting-values-and-bootstrapping","dir":"Articles > Web-only > Ctds","previous_headings":"Bootstrap for variance estimation","what":"An esoteric note on starting values and bootstrapping","title":"Analysis of camera trapping data","text":"Feel free skip unless ’re fairly advanced user! cases, may necessary set starting values detection function optimization, help converge. can achieved using initial_values argument ds function. example, say want use fitted values uniform + 2 cosine function uni2 starting values first two parameters uniform + 3 cosine function fitting (0 third parameter). following code : comes bootstrapping variance estimation. can pass model boot.dht problems, long don’t set ncores 1. set ncores 1 won’t work, returning 0 successful bootstraps. ? uni2$ddf$par passed along parallel cores. fix hard-code starting values. , example, see values use work fine bootdht. final tip setting starting values can sometimes speed bootstrap (optimization faster starts good initial spot), might want pass starting values uni3 bootstrap routine - something like following, found nearly halved run time test machine. Note, code set run examples file - just show might use.","code":"uni3.with.startvals <- ds(DuikerCameraTraps, transect = \"point\", key=\"unif\", adjustment = \"cos\", nadj=3, cutpoints = mybreaks, truncation = trunc.list, initial_values = list(adjustment = c(as.numeric(uni2$ddf$par), 0))) ## Warning in create_bins(data, cutpoints): Some distances were outside bins and ## have been removed. print(uni2$ddf$par) ## [1] 0.97177303 0.03540654 uni3.with.startvals <- ds(DuikerCameraTraps, transect = \"point\", key=\"unif\", adjustment = \"cos\", nadj=3, cutpoints = mybreaks, truncation = trunc.list, initial_values = list(adjustment = c(0.97177303, 0.03540654, 0))) ## Warning in create_bins(data, cutpoints): Some distances were outside bins and ## have been removed. print(uni3$ddf$par) uni3.with.startvals <- ds(DuikerCameraTraps, transect = \"point\", key=\"unif\", adjustment = \"cos\", nadj=3, cutpoints = mybreaks, truncation = trunc.list, optimizer = \"MCDS\", initial_values = list(adjustment = c(0.93518220, -0.05345965, -0.08073799))) daytime.boot.uni <- bootdht(model=uni3.with.startvals, flatfile=DuikerCameraTraps, resample_transects = TRUE, nboot = 500, cores = n.cores - 1, summary_fun=mysummary, sample_fraction = samfrac, convert_units = conversion, multipliers=mult)"},{"path":[]},{"path":"/articles/web-only/cues/cuecounts-distill.html","id":"objectives","dir":"Articles > Web-only > Cues","previous_headings":"","what":"Objectives","title":"Analysis of cue count surveys","text":"Estimate density cues point transect data Convert cue density animal density using rate song production","code":""},{"path":"/articles/web-only/cues/cuecounts-distill.html","id":"survey-design","dir":"Articles > Web-only > Cues","previous_headings":"","what":"Survey design","title":"Analysis of cue count surveys","text":"32 point count stations visited twice. visit, observer recorded distances songs detected 5-minute sampling period (Figure 1). Figure 1: Montrave study area; white circles point count stations. addition, 43 male winter wrens observed rate song production measured. mean cue rate, along standard error (individuals) calculated included data set serve multiplier. fields wren_cuecount data set : Region.Label - identifier regions: case one region set ‘Montrave’ Area - size study region (hectares): 33.2ha Sample.Label - point transect identifier (numbered 1-32) Cue.rate - production cues (per minute) Cue.rate.SE - standard error cue production rate (individuals) object - unique identifier detected winter wren distance - radial distance (metres) detection Search.time - Duration listening station (minutes) Study.Area - name study, ‘Montrave 3’","code":""},{"path":"/articles/web-only/cues/cuecounts-distill.html","id":"accessing-the-distance-package-and-cue-count-data","dir":"Articles > Web-only > Cues","previous_headings":"","what":"Accessing the Distance package and cue count data","title":"Analysis of cue count surveys","text":"command assumes dsdata package installed computer. R workspace wren_cuecount contains detections winter wrens line transect surveys Buckland (2006). Examine first rows wren_cuecount using function head() Note field data indicate sampling effort. line transects, lengths transect provided measure effort. point transects, number visits station specified. data set, specified Search.time length time station sampled. Note, station visited twice sampling 5 minutes length visit. Hence Search.time recorded 10. Note also units measure Search.time must consistent units measure cue rate.","code":"library(Distance) data(wren_cuecount) head(wren_cuecount) ## Region.Label Area Sample.Label Cue.rate Cue.rate.SE object distance ## 1 Montrave 33.2 1 1.4558 0.2428 38 50 ## 2 Montrave 33.2 1 1.4558 0.2428 39 55 ## 3 Montrave 33.2 1 1.4558 0.2428 40 55 ## 4 Montrave 33.2 1 1.4558 0.2428 41 55 ## 5 Montrave 33.2 1 1.4558 0.2428 46 50 ## 6 Montrave 33.2 1 1.4558 0.2428 47 50 ## Study.Area Search.time ## 1 montrave 3 10 ## 2 montrave 3 10 ## 3 montrave 3 10 ## 4 montrave 3 10 ## 5 montrave 3 10 ## 6 montrave 3 10"},{"path":"/articles/web-only/cues/cuecounts-distill.html","id":"examine-the-distribution-of-detection-distances","dir":"Articles > Web-only > Cues","previous_headings":"","what":"Examine the distribution of detection distances","title":"Analysis of cue count surveys","text":"Gain familiarity perpendicular distance data using hist() function (Figure 2). Figure 2: Radial detection distances winter wren song bursts. Note long right tail cut truncation argument ds().","code":"hist(wren_cuecount$distance, xlab=\"Distance (m)\", main=\"Song detection distances\")"},{"path":"/articles/web-only/cues/cuecounts-distill.html","id":"fitting-a-simple-detection-function-model-with-ds","dir":"Articles > Web-only > Cues","previous_headings":"","what":"Fitting a simple detection function model with ds","title":"Analysis of cue count surveys","text":"noted , Effort missing data. cue count surveys, effort measured time rather length number visits. Therefore define new field Effort set equal Search.time field. Note: converstion.factor specified call ds() detection function interest step analysis, nothing density abundance. Visually inspect fitted detection function plot() function, specifying cutpoints histogram argument breaks (Figure 3). Figure 3: Fit hazard rate detection function winter wren song detection distances.","code":"conversion.factor <- convert_units(\"meter\", NULL, \"hectare\") wren_cuecount$Effort <- wren_cuecount$Search.time wrensong.hr <- ds(wren_cuecount, transect=\"point\", key=\"hr\", adjustment=NULL, truncation=100) cutpoints <- c(0,5,10,15,20,30,40,50,65,80,100) plot(wrensong.hr, breaks=cutpoints, pdf=TRUE, main=\"Hazard rate function fit to winter wren song counts.\")"},{"path":"/articles/web-only/cues/cuecounts-distill.html","id":"caution","dir":"Articles > Web-only > Cues","previous_headings":"Fitting a simple detection function model with ds","what":"Caution","title":"Analysis of cue count surveys","text":"examine abundance density estimates produced summary(wrensong.hr) results contains nonsense. summary values properly recognise unit effort time rather visits point count survey. additional component analysis provided next step.","code":""},{"path":"/articles/web-only/cues/cuecounts-distill.html","id":"introducing-a-new-function-dht2","dir":"Articles > Web-only > Cues","previous_headings":"","what":"Introducing a new function dht2","title":"Analysis of cue count surveys","text":"function dht2 provides additional capacity providing density abundance estimates novel situations cue counts multipliers need incorporated. argument multipliers dht2 provides mechanism whereby cue production rate uncertainty incorporated analysis. properly perform calculations responsible converting song density bird density, enlist aide function dht2. additional information cue rates variability provided list. multiplier list required name creation contains cue rate point estimate associated measure precision. Additional arguments also passed dht2. flatfile name data set strat_formula contains information stratification might exist survey design. Montrave study stratification, inference 33 hectare woodland, strat_formula simply constant ~1. Results overall winter wren density estimate provided print method, specifying report=\"density\". alternative report argument report=\"abundance\".","code":"cuerate <- unique(wren_cuecount[ , c(\"Cue.rate\",\"Cue.rate.SE\")]) names(cuerate) <- c(\"rate\", \"SE\") (mult <- list(creation=cuerate)) ## $creation ## rate SE ## 1 1.4558 0.2428 wren.estimate <- dht2(wrensong.hr, flatfile=wren_cuecount, strat_formula=~1, multipliers=mult, convert_units=conversion.factor) print(wren.estimate, report=\"density\") ## Density estimates from distance sampling ## Stratification : geographical ## Variance : P2, n/L ## Multipliers : creation ## Sample fraction : 1 ## ## ## Summary statistics: ## .Label Area CoveredArea Effort n k ER se.ER cv.ER ## Total 33.2 1005.31 320 771 32 2.409 0.236 0.098 ## ## Density estimates: ## .Label Estimate se cv LCI UCI df ## Total 1.2018 0.238 0.198 0.8172 1.7674 520.679 ## ## Component percentages of variance: ## .Label Detection ER Multipliers ## Total 4.83 24.38 70.79"},{"path":"/articles/web-only/cues/cuecounts-distill.html","id":"absolute-goodness-of-fit","dir":"Articles > Web-only > Cues","previous_headings":"Introducing a new function dht2","what":"Absolute goodness of fit","title":"Analysis of cue count surveys","text":"assess goodness fit hazard rate model winter wren cue count data (Figure 4). Figure 4: Q-Q plot hazard rate model winter wren radial detection distances. Note distinct lack fit song data. many detections identical distances birds stationary singing. induces phenomenon known dispersion.","code":"gof_ds(wrensong.hr) ## ## Goodness of fit results for ddf object ## ## Distance sampling Cramer-von Mises test (unweighted) ## Test statistic = 1.69439 p-value = 6.24759e-05"},{"path":"/articles/web-only/cues/cuecounts-distill.html","id":"notes-regarding-the-cue-count-estimates-of-montrave-winter-wrens","dir":"Articles > Web-only > Cues","previous_headings":"","what":"Notes regarding the cue count estimates of Montrave winter wrens","title":"Analysis of cue count surveys","text":"vignette uses function dht2 function knows incorporate multipliers cue rates propogate uncertainty cue rate overall uncertainty density abundance. uncertainty coming encounter rate variability uncertainty detection function parameters, also cue rate variability, relative contribution source uncertainty tablated. last table produced printing wren.estimate object. Montrave winter wren data, 4% uncertainty density estimate attributable detection function, 24% attributable encounter rate variability 71% attributable -individual variability call rate. insight suggests survey repeated, exerting effort measuring -individual variation call rate likely yield benefits tightening precision density estimates. Also note poor fit model data; P-value Cramer von-Mises test <<0.05. caused -dispersion distribution detected call distances. single individual may sit tree branch emit many song bursts, leading jagged distribution call distances well fitted smooth detection function. -dispersion bias density estimates.","code":""},{"path":[]},{"path":"/articles/web-only/differences/differences.html","id":"management-context","dir":"Articles > Web-only > Differences","previous_headings":"","what":"Management context","title":"Detecting density estimate differences","text":"Often ecological questions extend beyond simply wanting estimate density study region. common inference extend differences density time space.","code":""},{"path":"/articles/web-only/differences/differences.html","id":"conventional-analysis","dir":"Articles > Web-only > Differences","previous_headings":"","what":"Conventional analysis","title":"Detecting density estimate differences","text":"Buckland et al. (2001, Sect. 3.6.5) methods described produce tests significance based t-test methods. section presents formulas comparing two density estimates two scenarios two estimates separate detection functions, estimates share common detection function. situation Buckland et al. (2001) consider situation two estimates linked via covariate detection function. t-test framework deal intermediate situation, alternative approach, employing bootstrap, can employed. bootstrap provides added advantage parametric assumptions (t-distribution) need invoked making inference.","code":""},{"path":"/articles/web-only/differences/differences.html","id":"bootstrap-analysis","dir":"Articles > Web-only > Differences","previous_headings":"","what":"Bootstrap analysis","title":"Detecting density estimate differences","text":"function Distance R package (Miller, Rexstad, Thomas, Marshall, & Laake, 2019) exists computing uncertainty density estimates via bootstrapping. vignette demonstrates function harnesses bootdht function produce sampling distribution difference pairs density estimates embedded strata within data set. Recognise strata can represent geographic divisions study area, potentially also survey study area another time. data set organised manner, assessment differences strata assessment possible change density time. Furthermore, shown example multi-species surveys, species serve strata. context, assessing difference stratum-specific density examine difference density species.","code":"#' @title differences.bootstrap #' #' @description Test for pairwise density differences between strata #' #' Test is performed by producing replicate stratum-specific estimates and calculating #' differences of each replicate. Differencing is done for all pairs of strata in #' the survey, e.g. if there are 4 strata there are \\code{choose(4,2)=6} pairwise #' comparisons computed. #' #' Histograms are produced for each comparison, designating the median of the distribution #' and a percentile-based 95% confidence interval from the sampling distribution #' #' Difficulties can arise from very long left or right tails of the distribution #' resulting from awkward bootstrap replicates. The limits of the histogram are #' cut off at 5*median so histogram shape does not appear degenerate. Code presumes differences will be positive. #' #' @param dsobj dsmodel object generated by \\code{ds} #' @param flatfile flatfile of survey data analysed by \\code{ds} #' @param nboot number of bootstrap replicates to compute #' #' @return Histogram showing sampling distribution of differences plus named list #' \\itemize{ #' \\item medians - median of sampling distribution #' \\item ps - P-value for two-tailed test that difference is zero #' \\item thematrix - Matrix of replicate pairwise differences #' } #' @importFrom Distance bootdht #' @export #' #' @examples #' library(Distance) #' data(minke) #' hn.pooled <- ds(minke) # pooled detection function with hn key #' result <- differences.bootstrap(hn.pooled, minke, nboot=100) differences.bootstrap <- function(dsobj, flatfile, nboot) { num.strata <- length(dsobj$dht$individuals$D$Estimate) - 1 stopifnot( 'first argument is not a dsmodel object' = class(dsobj) == 'dsmodel', 'study area must have >1 stratum' = num.strata > 1, 'specified flatfile object is not a data.frame ' = class(flatfile) == 'data.frame' ) d.point.ests <- dsobj$dht$individuals$D$Estimate strata.names <- dsobj$dht$individuals$D$Label # Following function used by bootdht to collect density point estimates # from each bootstrap replicate pullout.D <- function(ests, fit) { bill <- ests$individuals$D$Estimate extract <- data.frame(t(bill)) colnames(extract) <- ests$individuals$D$Label return(extract) } outcome <- bootdht(dsobj, flatfile=flatfile, cores=10, summary_fun=pullout.D, nboot=nboot) # Having run the bootstrap, calculate number of pairwise comparisons btwn strata # create objects to receive the replicate-wise differences for each comparison # median differences are reported and empirical P-value computed for each comparison # histograms of sampling distribution for differences are shown with CIs # allstrata <- complete.cases(outcome) num.compare <- choose(num.strata, 2) pairs <- t(combn(1:num.strata, 2)) result.matrix <- matrix(data=NA, nrow=nrow(outcome), ncol=num.compare) themedian <- array(data=NA, dim=num.compare) pvalue <- array(data=NA, dim=num.compare) par(mfrow=c(num.compare, 1)) for (i in 1:num.compare) { result.matrix[,i] <- mapply('-', outcome[pairs[i,2]], outcome[pairs[i,1]]) themedian[i] <- median(result.matrix[,i], na.rm=TRUE) pvalue[i] <- ifelse(themedian[i]>0, sum(result.matrix[,i]<0, na.rm=TRUE) / sum(!is.na(result.matrix[ ,i])), sum(result.matrix[,i]>0, na.rm=TRUE) / sum(!is.na(result.matrix[ ,i]))) tmp <- result.matrix[ ,i] hist(tmp[abs(tmp)<5*abs(themedian[i])], breaks=30, xlab=\"Estimated difference\", main=paste(\"Bootstrap test of equality of two density estimates\", \"\\nMedian difference=\", round(themedian[i],4), \" Two-tailed P-value=\", round(2*pvalue[i],4))) abline(v=themedian[i]) abline(v=quantile(result.matrix[,i], probs = c(0.025, 0.975), na.rm=TRUE), lty=3) first <- pairs[i, 1] second <- pairs[i, 2] line1 <- bquote(hat(D)[.(strata.names[first])] == .(round(d.point.ests[first], 4))) line2 <- bquote(hat(D)[.(strata.names[second])] == .(round(d.point.ests[second], 4))) legend(\"topleft\", legend=as.expression(c(line1, line2))) } par(mfrow=c(1,1)) return(list(medians=themedian, ps=2*pvalue, thematrix=result.matrix)) }"},{"path":"/articles/web-only/differences/differences.html","id":"examples","dir":"Articles > Web-only > Differences","previous_headings":"","what":"Examples","title":"Detecting density estimate differences","text":"Several examples use differences.bootstrap provided. make use data sets included Distance package.","code":""},{"path":"/articles/web-only/differences/differences.html","id":"two-strata-with-pooled-detection-function","dir":"Articles > Web-only > Differences","previous_headings":"Examples","what":"Two strata with pooled detection function","title":"Detecting density estimate differences","text":"simplest example uses minke data set consists two geographic strata (North South). model can fitted data assumes two strata share common detection function Figure 1: Strata share pooled detection function. Output function consists primarily histogram replicate density differences. approximates sampling distribution estimated density difference. solid vertical line depicts median distribution (medians less influenced outliers means). Dotted vertical lines depict 95th percentiles around estimated difference. two-tailed P-value presented histogram main title. legend box presented density estimates two strata, labelled using Region.Label values found dsmodel object passed function.","code":"library(Distance) data(minke) hr.pooled <- ds(minke, key=\"hr\", truncation=1.5) result <- differences.bootstrap(hr.pooled, flatfile=minke, nboot=250)"},{"path":"/articles/web-only/differences/differences.html","id":"two-strata-with-stratum-as-covariate","dir":"Articles > Web-only > Differences","previous_headings":"Examples","what":"Two strata with stratum as covariate","title":"Detecting density estimate differences","text":"Working minke data set, present alternative analysis stratum-specific detection functions derived using stratum covariate detection function. fitted detection function model data, comparison densities strata performed using function. Figure 2: Two strata Region.Label covariate detection function. evidence densities differ two strata appear stronger analysis dependence two estimates reduced result stratum-specific detection functions used. course, inference drawn two different analyses data set, merely demonstrate use function. perform model selection upon two detection function models fitted minke data, find model stratum covariate preferable inference based upon second analysis.","code":"hr.covar <- ds(minke, key=\"hr\", truncation=1.5, formula=~Region.Label) resultcovar <- differences.bootstrap(hr.covar, flatfile=minke, nboot=250)"},{"path":"/articles/web-only/differences/differences.html","id":"three-strata-with-stratum-as-covariate","dir":"Articles > Web-only > Differences","previous_headings":"Examples","what":"Three strata with stratum as covariate","title":"Detecting density estimate differences","text":"Another data set, Savannah_sparrow_1980, derived point transect survey study area three strata. fit model stratum covariate send result function assess whether differences three strata. Figure 3: Two strata Region.Label covariate detection function. Note , three strata, three pairwise comparisons. function can cope number strata, recognise number comparisons (hence number histograms) grows rapidly number strata exceeds roughly 5.","code":"data(\"Savannah_sparrow_1980\") hn.sparrow <- ds(Savannah_sparrow_1980, transect=\"point\", key=\"hn\", truncation=\"10%\", convert_units=convert_units(\"meter\", NULL, \"hectare\"), formula=~Region.Label) resultsparrow <- differences.bootstrap(hn.sparrow, flatfile=Savannah_sparrow_1980, nboot=250)"},{"path":"/articles/web-only/differences/differences.html","id":"limitations","dir":"Articles > Web-only > Differences","previous_headings":"","what":"Limitations","title":"Detecting density estimate differences","text":"function compute significance density estimate differences estimation carried via multiple calls ds(), case analysing data different study areas residing different data files. However, based upon provided code, clear produce replicate density estimates via bootdht() difference single line code. Depending upon circumstances, might also possible combine two data sets single data file treat strata allow use provided function.","code":""},{"path":[]},{"path":[]},{"path":"/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys.html","id":"exploratory-data-analysis","dir":"Articles > Web-only > Groupsize","previous_headings":"","what":"Exploratory data analysis","title":"Solving the size bias problem","text":"described, number potential covariates might influence dolphin detectability. Rather throw covariates detection function models, examine distribution detection distances (y-axis figure ) function plausible factor covariates. Figure 1: Exploratory data analysis using violin plots. Prepared using vioplot package. Number detections show plots. Fig. 1 several decisions made concerning remaining analysis: discernible effect month sea state upon distribution detection distances data set. covariates feature subsequent modelling. distribution detection distances cue type appears differ splashes floating objects. However, number detections associated splash (n=25) float objects (n=22) cues small, accounting ~4% total number detections. choose ignore variability detection probability associated cue type. proper way handle situation remove helicopter sightings detection function modelling. Detectability assumed perfect truncation distance, hence treat helicopter portion survey strip transect. number pods detected helicopters added estimated number pods within covered area. remove detections helicopter remainder analysis. number detections radar small unlikely exert much influence upon detection function modelling.","code":""},{"path":"/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys.html","id":"evidence-for-size-bias","dir":"Articles > Web-only > Groupsize","previous_headings":"Exploratory data analysis","what":"Evidence for size bias","title":"Solving the size bias problem","text":"Size bias (Buckland et al., 2001) can examined plotting distribution group size function detection distances. Figure 2: Box plot observed group sizes perpendicular distance band. Outliers shown; notches indicate discernable difference mean group size 2nm. Fig. 2 indicates difference observed mean group size 2nm; average group size distinctly larger distances greater 2nm. Hence, average group size sample overestimate average group size population. modelling detection function need counteract bias including group size detection function.","code":""},{"path":"/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys.html","id":"stage-one-of-detection-function-modelling","dir":"Articles > Web-only > Groupsize","previous_headings":"","what":"Stage one of detection function modelling","title":"Solving the size bias problem","text":"creating host candidate models, address question appropriate key function data. Recall including sightings made helicopter platform analyses. Fitting models half normal key function without adjustments without Search.method Figure 3: Q-Q goodness fit plots half normal key function without adjustments also including search method covariate. indicates lack fit half normal key function models. rounding trackline, detection function maintains shoulder falling away quite rapidly. Even taking consideration idea sample size large (n=961), making goodness fit test quite powerful, doubt half normal key function appropriate data. remove half normal modelling, hazard rate serve purposes, hazard rate without adjustments covariates, adequately fit data.","code":"hn <- ds(nochopper, key=\"hn\", adjustment = NULL) hn.method <- ds(nochopper, key=\"hn\", formula = ~factor(Search.method)) par(mfrow=c(1,2)) gof_ds(hn, main=\"HN key, no adj\", cex=0.5) ## ## Goodness of fit results for ddf object ## ## Distance sampling Cramer-von Mises test (unweighted) ## Test statistic = 0.656421 p-value = 0.0162635 gof_ds(hn.method, main=\"HN key + method\", cex=0.5) ## ## Goodness of fit results for ddf object ## ## Distance sampling Cramer-von Mises test (unweighted) ## Test statistic = 0.672219 p-value = 0.0148816 par(mfrow=c(1,2)) hr <- ds(nochopper, key=\"hr\") ## Starting AIC adjustment term selection. ## Fitting hazard-rate key function ## AIC= 2920.797 ## Fitting hazard-rate key function with cosine(2) adjustments ## Warning in check.mono(result, n.pts = control$mono.points): Detection function ## is greater than 1 at some distances ## Warning in check.mono(result, n.pts = control$mono.points): Detection function ## is greater than 1 at some distances ## AIC= 2922.8 ## ## Hazard-rate key function selected. gof_ds(hr, plot=FALSE) ## ## Goodness of fit results for ddf object ## ## Distance sampling Cramer-von Mises test (unweighted) ## Test statistic = 0.130299 p-value = 0.455606"},{"path":"/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys.html","id":"counteracting-size-bias","dir":"Articles > Web-only > Groupsize","previous_headings":"Stage one of detection function modelling","what":"Counteracting size bias","title":"Solving the size bias problem","text":"Conducting modeling using hazard rate key function, turn attention incorporating group size detection function. way counteract effect size bias include group size detection function. disappointment learn model including group size covariate fails converge. numerical difficulties associated covariate spans three orders magnitude. fitting issues covariates, consult covariate example amakihi. distribution group sizes strongly skewed right, long right tail. transformation natural logs reduce range log(size) one order magnitude shift centre distribution covariate (Fig. 4). Figure 4: Effect log transformation upon distribution observed group sizes. convergence problems associated using size covariate detection function alleviated result transformation. successfully incorporated group size detection function, proceed examine consequence using Search.method covariate model incorporating covariates. Table 7: Table 8: Models hazard rate key function fitted tuna fishing vessel sightings dolphins. Sightings helicopter included modelling.","code":"hr.size <- ds(nochopper, key=\"hr\", formula = ~size) ## Model contains covariate term(s): no adjustment terms will be included. ## Fitting hazard-rate key function ## AIC= 2919.357 hr.clus <- ds(nochopper, key=\"hr\", formula = ~log(size)) ## Model contains covariate term(s): no adjustment terms will be included. ## Fitting hazard-rate key function ## AIC= 2904.307 hr.method <- ds(nochopper, key=\"hr\", formula = ~factor(Search.method)) hr.clus.method <- ds(nochopper, key=\"hr\", formula = ~log(size) + factor(Search.method))"},{"path":"/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys.html","id":"interpretation-of-findings","dir":"Articles > Web-only > Groupsize","previous_headings":"","what":"Interpretation of findings","title":"Solving the size bias problem","text":"fitted models using hazard rate key function fit data. addition, note estimates \\(\\widehat{P_a}\\) four models. Inclusion covariates negligible effect upon estimated detection probability. Despite \\(\\Delta\\)AIC value > 15, model without covariates produces virtually identical estimate detection probability. another example remarkable property pooling robustness distance sampling estimators (Rexstad, Buckland, Marshall, & Borchers, 2023). discuss estimates group individual density data set. However, data set accurately reflect survey effort. Effort column filled 1 single transect labelled data. Hence, density estimates reflect biological reality; nevertheless comparisons models legitimate. Variability transects also properly incorporated analysis, won’t present measures precision associated following point estimates. slight variation \\(\\widehat{P_a}\\) among hazard rate candidate models reflected equally similar estimates dolphin pod density among competing models. model largest \\(\\widehat{P_a}\\) produces lowest estimate \\(\\widehat{D_s}\\) (170.5); model smallest \\(\\widehat{P_a}\\) produces largest estimate \\(\\widehat{D_s}\\) (175.8). However, important consideration analysis data set proper treatment size bias. hazard rate models without group size detection function, estimate average group size population 515 whereas model incorporating group size detection function estimates average group size population 408. Based evidence presented Fig. 2, reason believe estimates average group size without incorporating group size detection function results positively biased estimate group size population. group size estimates two models, appears magnitude positive size bias data set 26.2. difference estimated average group size magnified estimates individual density \\(\\widehat{D_I}\\). model without covariates estimates \\(\\widehat{D_I}\\) = 87805 model group size covariate estimates \\(\\widehat{D_I}\\) 71150.","code":""},{"path":"/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys.html","id":"summary","dir":"Articles > Web-only > Groupsize","previous_headings":"","what":"Summary","title":"Solving the size bias problem","text":"Take home points: incorporating covariates detection function, thorough exploratory data analysis lots plots. Make least preliminary decision regarding key functions consider building extensive candidate model set. data set, little difference fit detection functions inclusion covariates (pooling robustness). However, exploratory data analysis suggested small dolphin groups missed large distances, resulting size bias estimate average group size population. Incorporating group size covariate detection function reduced estimate group size population 26.2%. reduction estimated group size compensated size bias induced detection process.","code":""},{"path":[]},{"path":"/articles/web-only/multipliers/multipliers-distill.html","id":"objectives","dir":"Articles > Web-only > Multipliers","previous_headings":"","what":"Objectives","title":"Multipliers and indirect surveys","text":"objectives exercise Fit detection functions cues Obtain relevant multipliers Use multipliers dht2 function obtain animal abundances.","code":""},{"path":"/articles/web-only/multipliers/multipliers-distill.html","id":"dung-survey-of-deer","dir":"Articles > Web-only > Multipliers","previous_headings":"","what":"Dung survey of deer","title":"Multipliers and indirect surveys","text":"question estimate density sika deer number woodlands Scottish Borders (Marques et al., 2001). animals shy aware presence observer observer detects , making surveys species challenging. consequence, indirect estimation methods applied problem. manner, estimate density produced sign generated deer (case, faecal dung pellets) estimate transformed density deer (\\(D_{\\textrm{deer}}\\)) \\[ \\hat D_{\\textrm{deer}} = \\frac{\\textrm{dung deposited daily}}{\\textrm{dung production rate (per animal)}} \\] dung deposited daily given \\[ \\textrm{dung deposited daily} = \\frac{\\hat D_{\\textrm{pellet groups}}}{\\textrm{mean time decay}} \\] Hence, use distance sampling produce pellet group density estimate, adjust accordingly account production decay processes operating time data acquired. also take uncertainty dung production decay rates account final estimate deer density. Data 9 woodlands (labelled -H J) collected according survey design (Figure 1) note data block D included exercise. Figure 1: Location sika deer survey southern Scotland survey design ((Marques et al., 2001)). Note differing amounts effort different woodlands based information derived pilot surveys. addition data, also require estimates production rate. literature search, learn sika deer produce 25 pellet groups daily source provide measure variability estimate. course surveys also followed fate marked pellet groups estimate decay (disappearance) rates pellet group. thorough discussion methods useful estimating decay rates associated measures precision can found Laing et al. (2003). many factors might influence production decay rates, purposes exercise make simplifying assumption decay rate homogeneous across woodlands; mean time decay 163 days standard error 13 days. (conduct survey , want investigate assumption thoroughly.)","code":""},{"path":"/articles/web-only/multipliers/multipliers-distill.html","id":"getting-started","dir":"Articles > Web-only > Multipliers","previous_headings":"Dung survey of deer","what":"Getting started","title":"Multipliers and indirect surveys","text":"data (called sikadeer) available Distance package. Detection deer dung takes place small spatial scales; perpendicular distances measured centimeters. transects long; measured kilometers deer densities customarily reported numbers kilometer-2.","code":"library(Distance) data(sikadeer) conversion.factor <- convert_units(\"centimeter\", \"kilometer\", \"square kilometer\")"},{"path":"/articles/web-only/multipliers/multipliers-distill.html","id":"fit-detection-function-to-dung-pellets","dir":"Articles > Web-only > Multipliers","previous_headings":"Dung survey of deer","what":"Fit detection function to dung pellets","title":"Multipliers and indirect surveys","text":"Fit usual series models (.e. half normal, hazard rate, uniform) models distances pellet groups decide detection function. detection function (Figure 2) used obtain \\(\\hat D_{\\textrm{pellet groups}}\\). Figure 2: Simple detection function deer pellet line transect data. look Summary statistics model - note woodlands single transect effort allocated.","code":"deer.df <- ds(sikadeer, key=\"hn\", truncation=\"10%\", convert_units = conversion.factor) plot(deer.df, main=\"Half normal detection function\") print(deer.df$dht$individuals$summary) ## Region Area CoveredArea Effort n k ER se.ER cv.ER ## 1 A 13.9 0.005950 1.70 1217 13 715.88234 119.918872 0.1675120 ## 2 B 10.3 0.003850 1.10 396 10 359.99999 86.859289 0.2412758 ## 3 C 8.6 0.001575 0.45 17 3 37.77778 8.521202 0.2255612 ## 4 E 8.0 0.002975 0.85 30 5 35.29412 16.568939 0.4694533 ## 5 F 14.0 0.000700 0.20 29 1 145.00000 0.000000 0.0000000 ## 6 G 15.2 0.001400 0.40 32 3 80.00000 39.686269 0.4960784 ## 7 H 11.3 0.000700 0.20 3 1 15.00000 0.000000 0.0000000 ## 8 J 9.6 0.000350 0.10 7 1 70.00000 0.000000 0.0000000 ## 9 Total 90.9 0.017500 5.00 1731 37 201.90876 0.000000 0.0000000"},{"path":"/articles/web-only/multipliers/multipliers-distill.html","id":"multipliers","dir":"Articles > Web-only > Multipliers","previous_headings":"Dung survey of deer","what":"Multipliers","title":"Multipliers and indirect surveys","text":"next step create object contains multipliers wish use. already estimates dung production rates need similar information dung decay (persistence) rate. Analysis based upon methods presented Laing et al. (2003). Data calculate dung persistence collected file dung_persistence.csv. Following code (Meredith, 2017). Figure 3: Logistic curve fitted pellet persistence survey data. Vertical line represents day 50% pellets decayed non-detectable. Running command produced plot dung persistence versus days since produced fitted logistic regression (like simple linear regression restricts response taking values 0 1). Note points can reality take values 0 1 purposes plotting ‘jittered’ avoid -plotting. estimate mean persistence time measure variability also provided - make note required . Dotted vertical line indicates time estimated probability persistence 0.5. stated , want object contains information dung production rate (standard error) dung decay rate (standard error). following command creates list containing two data frames: creation contains estimates dung production rate associated standard error decay contains dung decay rate associated standard error XX YY estimates obtained dung decay rate analysis. final step use multipliers convert \\(\\hat D_{\\textrm{pellet groups}}\\) \\(\\hat D_{\\textrm{deer}}\\) (equations ) - need employ dht2 function. command multipliers= argument allows us specify rates standard errors. couple function arguments need explanation: strat_formula=~Region.Label specified take account design (.e. different woodlands blocks). stratification=\"geographical\" specified want produce overall estimate density mean woodland specific densities weighted area block. deer.df detection function fitted.","code":"MIKE.persistence <- function(DATA) { # Purpose: calculate mean persistence time (mean time to decay) for dung/nest data # Input: data frame with at least two columns: # DAYS - calendar day on which dung status was observed # STATE - dung status: 1-intact, 0-decayed # Output: point estimate, standard error and CV of mean persistence time # # Attribution: code from Mike Meredith website: # http://www.mikemeredith.net/blog/2017/Sign_persistence.htm # Citing: CITES elephant protocol # https://cites.org/sites/default/files/common/prog/mike/survey/dung_standards.pdf ## Fit logistic regression model to STATE on DAYS, extract coefficients dung.glm <- glm(STATE ~ DAYS, data=DATA, family=binomial(link = \"logit\")) betas <- coefficients(dung.glm) ## Calculate mean persistence time mean.decay <- -(1+exp(-betas[1])) * log(1+exp(betas[1])) / betas[2] ## Calculate the variance of the estimate vcovar <- vcov(dung.glm) var0 <- vcovar[1,1] # variance of beta0 var1 <- vcovar[2,2] # variance of beta1 covar <- vcovar[2,1] # covariance deriv0 <- -(1-exp(-betas[1]) * log(1+exp(betas[1])))/betas[2] deriv1 <- -mean.decay/betas[2] var.mean <- var0*deriv0^2 + 2*covar*deriv0*deriv1 + var1*deriv1^2 ## Calculate the SE and CV and return se.mean <- sqrt(var.mean) cv.mean <- se.mean/mean.decay out <- c(mean.decay, se.mean, 100*cv.mean) names(out) <- c(\"Mean persistence time\", \"SE\", \"%CV\") plot(decay$DAYS, jitter(decay$STATE, amount=0.10), xlab=\"Days since initiation\", ylab=\"Dung persists (yes=1)\", main=\"Eight dung piles revisited over time\") curve(predict(dung.glm, data.frame(DAYS=x), type=\"resp\"), add=TRUE) abline(v=mean.decay, lwd=2, lty=3) return(out) } decay <- read.csv(\"dung_persistence.csv\") persistence.time <- MIKE.persistence(decay) print(persistence.time) ## Mean persistence time SE %CV ## 163.396748 14.226998 8.707026 # Create list of multipliers mult <- list(creation = data.frame(rate=25, SE=0), decay = data.frame(rate=163, SE=14.2)) print(mult) ## $creation ## rate SE ## 1 25 0 ## ## $decay ## rate SE ## 1 163 14.2 deer.ests <- dht2(deer.df, flatfile=sikadeer, strat_formula=~Region.Label, convert_units=conversion.factor, multipliers=mult, stratification=\"geographical\") ## Warning in dht2(deer.df, flatfile = sikadeer, strat_formula = ~Region.Label, : ## One or more strata have only one transect, cannot calculate empirical encounter ## rate variance print(deer.ests, report=\"density\") ## Density estimates from distance sampling ## Stratification : geographical ## Variance : R2, n/L ## Multipliers : creation, decay ## Sample fraction : 1 ## ## ## Summary statistics: ## Region.Label Area CoveredArea Effort n k ER se.ER cv.ER ## A 13.9 0.005950 1.70 1217 13 715.882 119.919 0.168 ## B 10.3 0.003850 1.10 396 10 360.000 86.859 0.241 ## C 8.6 0.001575 0.45 17 3 37.778 8.521 0.226 ## E 8.0 0.002975 0.85 30 5 35.294 16.569 0.469 ## F 14.0 0.000700 0.20 29 1 145.000 0.000 0.000 ## G 15.2 0.001400 0.40 32 3 80.000 39.686 0.496 ## H 11.3 0.000700 0.20 3 1 15.000 0.000 0.000 ## J 9.6 0.000350 0.10 7 1 70.000 0.000 0.000 ## Total 90.9 0.017500 5.00 1731 37 346.200 68.158 0.197 ## ## Density estimates: ## Region.Label Estimate se cv LCI UCI df ## A 73.9167 14.248 0.193 49.6889 109.9576 21.037 ## B 37.1709 9.643 0.259 21.3191 64.8093 12.031 ## C 3.9007 0.955 0.245 1.7460 8.7142 2.779 ## E 3.6442 1.746 0.479 1.0713 12.3958 4.337 ## F 14.9716 1.428 0.095 12.4246 18.0407 63231.773 ## G 8.2602 4.173 0.505 1.2114 56.3218 2.151 ## H 1.5488 0.148 0.095 1.2853 1.8663 63231.773 ## J 7.2277 0.689 0.095 5.9981 8.7093 63231.773 ## Total 20.8476 3.011 0.144 15.5123 28.0180 25.610 ## ## Component percentages of variance: ## Region.Label Detection ER Multipliers ## A 4.05 75.53 20.43 ## B 2.23 86.49 11.28 ## C 2.51 84.84 12.65 ## E 0.66 96.04 3.31 ## F 16.54 0.00 83.46 ## G 0.59 96.44 2.97 ## H 16.54 0.00 83.46 ## J 16.54 0.00 83.46 ## Total 3.73 96.27 0.00"},{"path":"/articles/web-only/multipliers/multipliers-distill.html","id":"other-stratification-choices-with-dht2","dir":"Articles > Web-only > Multipliers","previous_headings":"","what":"Other stratification choices with dht2","title":"Multipliers and indirect surveys","text":"example Sika deer different hunting estates uses geographical stratification. also option using option replicate stratification argument. useful repeated surveys geographic area; average abundance computed variance variability surveys. Alternatively effort_sum used replicate surveys, replicates reporting average variance. Finally, specification stratification=\"object\" can used detections made different species, sexes ages animals. option produce species-specific abundance estimates well abundance estimate species, properly calculating variance total abundance. information available diagramatic comparison well help file ?dht2. function dht2 also provides information components variance. Make note (contribution detection function, encounter rate, decay rate happened production rate component?) strata.","code":""},{"path":"/articles/web-only/multipliers/multipliers-distill.html","id":"notes-regarding-this-dung-survey","dir":"Articles > Web-only > Multipliers","previous_headings":"","what":"Notes regarding this dung survey","title":"Multipliers and indirect surveys","text":"effort took place woodland deer density high. Therefore, overall estimate estimated density woodland lower densities woodlands. now uncertainty associated encounter rate, detection function decay rate (note uncertainty associated production rate) components variation three components provided. woodland , 13 transects 1,200 pellet groups detected: uncertainty estimated density (measured CV) 19% variance components apportioned detection probability 4%, encounter rate 76% multipliers 20%. woodland E, 5 transects 30 pellet groups resulting coefficient variation (CV) 48%: variance components apportioned detection probability 0.7%, encounter rate 96% multipliers 3%. CV abundance estimates blocks F, H J identical (9%) pooled detection function used across blocks dung deposition decay rates block-specific. element computation remaining block-specific encounter rate; three blocks single transect per block, meaning encounter rate variance computed set zero. estimated abundance across blocks CV 14%. far away, greatest contribution uncertainty encounter rate variance–differences pellet encounters transects. context distance sampling, uncertainty parameter estimates detection function accounts <1% total estimate deer abundance across blocks.","code":""},{"path":[]},{"path":"/articles/web-only/multispecies/multispecies-multioccasion-analysis.html","id":"a-multispecies-data-set-with-multiple-visits","dir":"Articles > Web-only > Multispecies","previous_headings":"","what":"A multispecies data set with multiple visits","title":"Perils of multispecies and multisession distance sampling analysis","text":"increasingly common investigators conduct surveys multiple species detected density estimates several species interest. many ways analysing data sets, care must taken. approaches produce correct density estimates. demonstrate one ways produce incorrect estimates, use line transect survey data reported Buckland (2006). survey (data file) recorded detections four species songbirds. conduct analysis chaffinch (Fringilla coelebs) (coded c data file), similar results arise species. Begin reading flat file comma delimited format. Note URL data file long, double check can read URL including Github token.","code":"URLpart1 <- \"https://raw.githubusercontent.com/distanceexamples/Distance-multispecies/main/montrave-line.csv\" URLpart2 <- \"?token=GHSAT0AAAAAABP6QDHAQ677QTIJEKSK2WYEYWG4EYA\" birds <- read.csv(file=paste0(URLpart1, URLpart2))"},{"path":"/articles/web-only/multispecies/multispecies-multioccasion-analysis.html","id":"survey-design","dir":"Articles > Web-only > Multispecies","previous_headings":"","what":"Survey design","title":"Perils of multispecies and multisession distance sampling analysis","text":"Buckland’s design consisted visiting 19 transects study twice. examine errors can arise improper analysis, choose treat two visits strata express purpose generating stratum (visit) -specific density estimates. Density estimates reported Buckland (2006) units birds \\(\\cdot hectare^{-1}\\).","code":"birds$Region.Label <- birds$visit cu <- convert_units(\"meter\", \"kilometer\", \"hectare\")"},{"path":"/articles/web-only/multispecies/multispecies-multioccasion-analysis.html","id":"analysis-of-only-one-species-incorrectly","dir":"Articles > Web-only > Multispecies","previous_headings":"","what":"Analysis of only one species (incorrectly)","title":"Perils of multispecies and multisession distance sampling analysis","text":"direct approach producing density estimate chaffinch subset original data frame use species-specific data frame analysis. Begin performing subset operation. data subset, integrity survey design preserved. simple frequency table species-specific data frame flags number transect/visit combinations chaffinches detected. result subset data frame suggests 3 19 transects lacked chaffinch detections first visit one 19 transects lacked chaffinch detections second visit. revelation, , causes problems estimate density chaffinches. However, problem hidden within table . Transect 12 appear table detections chaffinches either visit. Consequently, 4 transects without chaffinches first visit 2 transects without chaffinches second visit, rather 3 transects 1 transect might mistakenly conclude chaffinch detections relied completely upon table. Let’s see ds() function thinks survey effort using information species-specific data frame. Examine column labelled k (number transects) visits. Rather 19 transects surveyed visit, ds() function erroneously believes 15 transects surveyed first visit 17 transects surveyed second visit. Note also number detections per kilometer; roughly 9 first visit 7.7 second visit. encounter rates exclude kilometers effort transects detections. return comparison later.","code":"chaf <- birds[birds$species==\"c\", ] detects <- table(chaf$Sample.Label, chaf$visit) detects <- as.data.frame(detects) names(detects) <- c(\"Transect\", \"Visit\", \"Detections\") detects$Detections <- cell_spec(detects$Detections, background = ifelse(detects$Detections==0, \"red\", \"white\")) knitr::kable(detects, escape=FALSE) %>% kable_paper(full_width=FALSE) chaf.wrong <- ds(chaf, key=\"hn\", convert_units = cu, truncation=95, formula = ~Region.Label) knitr::kable(chaf.wrong$dht$individuals$summary) %>% kable_paper(full_width=FALSE) %>% column_spec(6, background=\"salmon\") %>% column_spec(7, background=\"steelblue\")"},{"path":"/articles/web-only/multispecies/multispecies-multioccasion-analysis.html","id":"use-explicit-data-hierarchy","dir":"Articles > Web-only > Multispecies","previous_headings":"","what":"Use explicit data hierarchy","title":"Perils of multispecies and multisession distance sampling analysis","text":"Additional arguments can passed ds() resolve problem. Consulting ds() documentation analysis produces erroneous results can remedied explicitly letting ds() function know study design; specifically, many strata number transects within stratum (associated transect lengths). Construct region table sample table showing two strata equal areas labelled transect (given length) repeated two times.","code":"birds.regiontable <- data.frame(Region.Label=as.factor(c(1,2)), Area=c(33.2,33.2)) birds.sampletable <- data.frame(Region.Label=as.factor(rep(c(1,2), each=19)), Sample.Label=rep(1:19, times=2), Effort=c(0.208, 0.401, 0.401, 0.299, 0.350, 0.401, 0.393, 0.405, 0.385, 0.204, 0.039, 0.047, 0.204, 0.271, 0.236, 0.189, 0.177, 0.200, 0.020))"},{"path":"/articles/web-only/multispecies/multispecies-multioccasion-analysis.html","id":"help-file-for-ds","dir":"Articles > Web-only > Multispecies","previous_headings":"Use explicit data hierarchy","what":"Help file for ds","title":"Perils of multispecies and multisession distance sampling analysis","text":"Region.Label label region Area area region region_table one row stratum. stratification region_table one entry Area corresponding total survey area. Area omitted density estimates produced. Sample.Label label sample Region.Label label region sample belongs . Effort effort expended sample (e.g. transect length).","code":""},{"path":"/articles/web-only/multispecies/multispecies-multioccasion-analysis.html","id":"simple-detection-function-model","dir":"Articles > Web-only > Multispecies","previous_headings":"","what":"Simple detection function model","title":"Perils of multispecies and multisession distance sampling analysis","text":"chaffinch analysis performed , time supplying region_table sample_table information ds(). correct number transects (19) sampled visits (even though chaffinch detected 4 transects visit 1 2 transects visit 2) now recognised. Hence, use region table sample table solves problem effort miscalculation species detected transects.","code":"tr <- 95 # as per Buckland (2006) onlycf <- ds(data=birds[birds$species==\"c\", ], region_table = birds.regiontable, sample_table = birds.sampletable, trunc=tr, convert_units=cu, key=\"hn\", formula = ~Region.Label) knitr::kable(onlycf$dht$individuals$summary) %>% kable_paper(full_width=FALSE) %>% column_spec(6, background=\"salmon\") %>% column_spec(7, background=\"steelblue\")"},{"path":"/articles/web-only/multispecies/multispecies-multioccasion-analysis.html","id":"consequence-of-incorrect-analysis","dir":"Articles > Web-only > Multispecies","previous_headings":"","what":"Consequence of incorrect analysis","title":"Perils of multispecies and multisession distance sampling analysis","text":"drive home consequence failing properly specify survey effort, contrast encounter rate two visits incorrect calculations (9.0 7.7 respectively), correct calculation (8.1 7.0 respectively). number transects incorrect knock-effect effort incorrect. effort incorrect covered area. ripple effect incomplete information survey design results positively biased estimates density.","code":""},{"path":[]},{"path":"/articles/web-only/points/pointtransects-distill.html","id":"objectives","dir":"Articles > Web-only > Points","previous_headings":"","what":"Objectives","title":"Point transect density estimation","text":"Fit basic detection function using ds function Plot examine detection function Fit different detection function forms.","code":""},{"path":"/articles/web-only/points/pointtransects-distill.html","id":"survey-design","dir":"Articles > Web-only > Points","previous_headings":"","what":"Survey design","title":"Point transect density estimation","text":"total 373 point transects placed three pastures Arapaho National Wildlife Refuge Colorado (Figure 1). Elevation pastures ~2500m. deal pasture-level analysis data vignette alter data remove strata designations. Figure 1: Summer grazed pastures along Illinois River Arapaho National Wildlife Refuge, Colorado. Figure (Knopf et al., 1988). fields Savannah_sparrow_1980 data set : Region.Label - three pastures constituted sections study area. However, vignette going make labels identical. treat data detected pasture. matter stratification taken another vignette. Area - size study region. place holder, pasture sizes known. Estimates density abundance equivalent. Sample.Label - point transect identifier (total 373 points) Effort - number visits point object - unique identifier detected savanna sparrow distance - radial distance (metres) detection Study.Area - data savanna sparrow (SASP) included data set","code":""},{"path":"/articles/web-only/points/pointtransects-distill.html","id":"make-the-data-available-for-r-session","dir":"Articles > Web-only > Points","previous_headings":"","what":"Make the data available for R session","title":"Point transect density estimation","text":"command assumes dsdata package installed computer. R workspace Savannah_sparrow_1980 contains detections savanna sparrows point transect surveys Knopf et al. (1988). code overwrites strata designations original data make appear data derived single stratum. makes analysis simpler perform. examples analysis stratified data another vignette. Examine first rows Savannah_sparrow_1980 using function head() object Savannah_sparrow_1980 dataframe object made rows columns. contrast Montrave winter wren line transect data used previous vignette, savannah sparrows detected point transects. Radial distances receive value NA transects detections. determine number detections data set, total number values distance field NA","code":"library(Distance) data(Savannah_sparrow_1980) # remove pasture-level identifier in Region.Label Savannah_sparrow_1980$Region.Label <- \"Single_stratum\" head(Savannah_sparrow_1980) ## Region.Label Area Sample.Label Effort object distance Study.Area ## 1 Single_stratum 1 POINT 1 1 NA NA SASP 1980 ## 2 Single_stratum 1 POINT 2 1 NA NA SASP 1980 ## 3 Single_stratum 1 POINT 3 1 NA NA SASP 1980 ## 4 Single_stratum 1 POINT 4 1 NA NA SASP 1980 ## 5 Single_stratum 1 POINT 5 1 NA NA SASP 1980 ## 6 Single_stratum 1 POINT 6 1 NA NA SASP 1980 sum(!is.na(Savannah_sparrow_1980$distance)) ## [1] 276"},{"path":"/articles/web-only/points/pointtransects-distill.html","id":"examine-the-distribution-of-detection-distances","dir":"Articles > Web-only > Points","previous_headings":"","what":"Examine the distribution of detection distances","title":"Point transect density estimation","text":"Gain familiarity radial distance data using hist() function (Figure 2). Figure 2: Histogram radial distances savannah sparrows across pastures. Note shape radial distance histogram resemble shape perpendicular distances gathered line transect sampling (Buckland, Rexstad, Marques, & Oedekoven, 2015, sec. 1.3).","code":"hist(Savannah_sparrow_1980$distance, xlab=\"Distance (m)\", main=\"Savannah sparrow point transects\")"},{"path":"/articles/web-only/points/pointtransects-distill.html","id":"specify-unit-conversions","dir":"Articles > Web-only > Points","previous_headings":"","what":"Specify unit conversions","title":"Point transect density estimation","text":"point transects, units measure associated size study area radial distance measures, effort measured number visits, rather distance. units measure radial distances units measure effort (NULL point transects) units measure study area. Recall data set set size study area 1, resulting abundance density equal.","code":"conversion.factor <- convert_units(\"meter\", NULL, \"hectare\")"},{"path":"/articles/web-only/points/pointtransects-distill.html","id":"fitting-a-simple-detection-function-model-with-ds","dir":"Articles > Web-only > Points","previous_headings":"","what":"Fitting a simple detection function model with ds","title":"Point transect density estimation","text":"Detection functions fitted using ds function function requires data frame column called distance. nests data, therefore, can simply supply name data frame function along additional arguments. Details arguments function: fit half-normal key detection function include adjustment terms necessary indicate point transect data required , example, radial distances metres . density estimates reported number birds per hectare. right truncation (described ) customary, right truncation employed remove 5% observations distant transects, detections distances contain little information shape fitted probability density function near point. calling ds function, information provided screen reminding user model fitted associated AIC value. information supplied applying summary() function object created ds(). Visually inspect fitted detection function plot() function, specifying cutpoints histogram argument breaks. Add argument pdf plot shows probability densiy function rather detection function. probability density function preferred assessing model fit PDF incorporates information availability animals detected. animals available detected small distances, therefore lack fit small distances consequential points lines (Figure 3). Figure 3: Fit half normal detection function savannah sparrow data.","code":"sasp.hn <- ds(data=Savannah_sparrow_1980, key=\"hn\", adjustment=NULL, transect=\"point\", convert_units=conversion.factor, truncation=\"5%\") summary(sasp.hn) ## ## Summary for distance analysis ## Number of observations : 262 ## Distance range : 0 - 51.025 ## ## Model : Half-normal key function ## AIC : 2021.776 ## Optimisation: mrds (nlminb) ## ## Detection function parameters ## Scale coefficient(s): ## estimate se ## (Intercept) 3.044624 0.04270318 ## ## Estimate SE CV ## Average p 0.321125 0.02296165 0.07150378 ## N in covered region 815.881752 71.61153776 0.08777196 ## ## Summary statistics: ## Region Area CoveredArea Effort n k ER se.ER ## 1 Single_stratum 1 305.0877 373 262 373 0.7024129 0.04726421 ## cv.ER ## 1 0.06728836 ## ## Abundance: ## Label Estimate se cv lcl ucl df ## 1 Total 2.674253 0.2625745 0.09818612 2.206266 3.241509 598.5905 ## ## Density: ## Label Estimate se cv lcl ucl df ## 1 Total 2.674253 0.2625745 0.09818612 2.206266 3.241509 598.5905 cutpoints <- c(0,5,10,15,20,30,40,max(Savannah_sparrow_1980$distance, na.rm=TRUE)) plot(sasp.hn, breaks=cutpoints, pdf=TRUE, main=\"Savannah sparrow point transect data.\")"},{"path":"/articles/web-only/points/pointtransects-distill.html","id":"specifying-different-detection-functions","dir":"Articles > Web-only > Points","previous_headings":"","what":"Specifying different detection functions","title":"Point transect density estimation","text":"Detection function forms shapes, specified changing key adjustment arguments. options available key adjustment elements detection functions : half normal (key=\"hn\") - default hazard rate (key=\"hr\") uniform (key=\"unif\") adjustment terms (adjustment=NULL) cosine (adjustment=\"cos\") - default Hermite polynomial (adjustment=\"herm\") Simple polynomial (adjustment=\"poly\") fit uniform key function cosine adjustment terms, use command: fit hazard rate key function simple polynomial adjustment terms, use command:","code":"sasp.unif.cos <- ds(Savannah_sparrow_1980, key=\"unif\", adjustment=\"cos\", transect=\"point\", convert_units=conversion.factor, truncation=\"5%\") sasp.hr.poly <- ds(Savannah_sparrow_1980, key=\"hr\", adjustment=\"poly\", transect=\"point\", convert_units=conversion.factor, truncation=\"5%\") ## Warning in ddf.ds(dsmodel = dsmodel, data = data, meta.data = meta.data, : ## Estimated hazard-rate scale parameter close to 0 (on log scale). Possible ## problem in data (e.g., spike near zero distance). ## Warning in ddf.ds(dsmodel = dsmodel, data = data, meta.data = meta.data, : ## Estimated hazard-rate scale parameter close to 0 (on log scale). Possible ## problem in data (e.g., spike near zero distance)."},{"path":"/articles/web-only/points/pointtransects-distill.html","id":"model-comparison","dir":"Articles > Web-only > Points","previous_headings":"","what":"Model comparison","title":"Point transect density estimation","text":"fitted detection function produces different estimate Savannah sparrow abundance density. estimate depends upon model chosen. model selection tool distance sampling data AIC.","code":"AIC(sasp.hn, sasp.hr.poly, sasp.unif.cos) ## df AIC ## sasp.hn 1 2021.776 ## sasp.hr.poly 3 2024.785 ## sasp.unif.cos 1 2023.178"},{"path":"/articles/web-only/points/pointtransects-distill.html","id":"absolute-goodness-of-fit","dir":"Articles > Web-only > Points","previous_headings":"Model comparison","what":"Absolute goodness of fit","title":"Point transect density estimation","text":"addition relative ranking models provided AIC, also important know whether selected model(s) actually fit data. model basis inference, dangerous make inference model fit data. Goodness fit assessed using function gof_ds (Figure 4). Figure 4: Q-Q plot half normal detection function savannah sparrow data.","code":"gof_ds(sasp.hn) ## ## Goodness of fit results for ddf object ## ## Distance sampling Cramer-von Mises test (unweighted) ## Test statistic = 0.0835959 p-value = 0.671325"},{"path":"/articles/web-only/points/pointtransects-distill.html","id":"model-comparison-tables","dir":"Articles > Web-only > Points","previous_headings":"","what":"Model comparison tables","title":"Point transect density estimation","text":"function summarise_ds_models combines work AIC gof_ds produce table fitted models summary statistics. Table 1: Model selection summary savannah sparrow point transect data.","code":"knitr::kable(summarize_ds_models(sasp.hn, sasp.hr.poly, sasp.unif.cos),digits=3, caption=\"Model selection summary of savannah sparrow point transect data.\")"},{"path":"/articles/web-only/points/pointtransects-distill.html","id":"conclusions","dir":"Articles > Web-only > Points","previous_headings":"","what":"Conclusions","title":"Point transect density estimation","text":"Key differences analysis line transect data point transect data argument transect ds() must set \"point\", histogram radial detection distances characteristically “humped” individuals available detected near points, hump shape (Figure 2), plotting assess fit data detection distribution usually assessed via pdf=TRUE argument added plot() function, Arapaho National Refuge Savannah sparrow data, three candidate models provide adequeate fit data produce comparable estimates \\(P_a\\).","code":""},{"path":[]},{"path":"/articles/web-only/pointtransects-distill.html","id":"objectives","dir":"Articles > Web-only","previous_headings":"","what":"Objectives","title":"Point transect density estimation","text":"Import data file Fit basic detection function using ds function Plot examine detection function Fit different detection function forms.","code":""},{"path":"/articles/web-only/pointtransects-distill.html","id":"survey-design","dir":"Articles > Web-only","previous_headings":"","what":"Survey design","title":"Point transect density estimation","text":"total 373 point transects placed three pastures Arapaho National Wildlife Refuge Colorado (Figure 1). Elevation pastures ~2500m. deal pasture-level analysis data vignette alter data remove strata designations. Figure 1: Summer grazed pastures along Illinois River Arapaho National Wildlife Refuge, Colorado. Figure (Knopf et al., 1988). fields Savannah_sparrow_1980 data set : Region.Label - three pastures constituted sections study area. However, vignette going make labels identical. treat data detected pasture. matter stratification taken another vignette. Area - size study region. place holder, pasture sizes known. Estimates density abundance equivalent. Sample.Label - point transect identifier (total 373 points) Effort - number visits point object - unique identifier detected savanna sparrow distance - radial distance (metres) detection Study.Area - data savanna sparrow (SASP) included data set","code":""},{"path":"/articles/web-only/pointtransects-distill.html","id":"make-the-data-available-for-r-session","dir":"Articles > Web-only","previous_headings":"","what":"Make the data available for R session","title":"Point transect density estimation","text":"command assumes dsdata package installed computer. R workspace Savannah_sparrow_1980 contains detections savanna sparrows point transect surveys Knopf et al. (1988). code overwrites strata designations original data make appear data derived single stratum. makes analysis simpler perform. examples analysis stratified data another vignette. Examine first rows Savannah_sparrow_1980 using function head() object Savannah_sparrow_1980 dataframe object made rows columns. contrast Montrave winter wren line transect data used previous vignette, savannah sparrows detected point transects. Radial distances receive value NA transects detections. determine number detections data set, total number values distance field NA","code":"library(Distance) data(Savannah_sparrow_1980) # remove pasture-level identifier in Region.Label Savannah_sparrow_1980$Region.Label <- \"Single_stratum\" head(Savannah_sparrow_1980) ## Region.Label Area Sample.Label Effort object distance Study.Area ## 1 Single_stratum 1 POINT 1 1 NA NA SASP 1980 ## 2 Single_stratum 1 POINT 2 1 NA NA SASP 1980 ## 3 Single_stratum 1 POINT 3 1 NA NA SASP 1980 ## 4 Single_stratum 1 POINT 4 1 NA NA SASP 1980 ## 5 Single_stratum 1 POINT 5 1 NA NA SASP 1980 ## 6 Single_stratum 1 POINT 6 1 NA NA SASP 1980 sum(!is.na(Savannah_sparrow_1980$distance)) ## [1] 276"},{"path":"/articles/web-only/pointtransects-distill.html","id":"examine-the-distribution-of-detection-distances","dir":"Articles > Web-only","previous_headings":"","what":"Examine the distribution of detection distances","title":"Point transect density estimation","text":"Gain familiarity radial distance data using hist() function (Figure 2). Figure 2: Histogram radial distances savannah sparrows across pastures. Note shape radial distance histogram resemble shape perpendicular distances gathered line transect sampling (Buckland, Rexstad, Marques, & Oedekoven, 2015, sec. 1.3).","code":"hist(Savannah_sparrow_1980$distance, xlab=\"Distance (m)\", main=\"Savannah sparrow point transects\")"},{"path":"/articles/web-only/pointtransects-distill.html","id":"specify-unit-conversions","dir":"Articles > Web-only","previous_headings":"","what":"Specify unit conversions","title":"Point transect density estimation","text":"point transects, units measure associated size study area radial distance measures, effort measured number visits, rather distance. units measure radial distances units measure effort (NULL point transects) units measure study area. Recall data set set size study area 1, resulting abundance density equal.","code":"conversion.factor <- convert_units(\"meter\", NULL, \"hectare\")"},{"path":"/articles/web-only/pointtransects-distill.html","id":"fitting-a-simple-detection-function-model-with-ds","dir":"Articles > Web-only","previous_headings":"","what":"Fitting a simple detection function model with ds","title":"Point transect density estimation","text":"Detection functions fitted using ds function function requires data frame column called distance. nests data, therefore, can simply supply name data frame function along additional arguments. Details arguments function: fit half-normal key detection function include adjustment terms necessary indicate point transect data required , example, radial distances metres . density estimates reported number birds per hectare. right truncation (described ) customary, right truncation employed remove 5% observations distant transects, detections distances contain little information shape fitted probability density function near point. calling ds function, information provided screen reminding user model fitted associated AIC value. information supplied applying summary() function object created ds(). Visually inspect fitted detection function plot() function, specifying cutpoints histogram argument breaks. Add argument pdf plot shows probability densiy function rather detection function. probability density function preferred assessing model fit PDF incorporates information availability animals detected. animals available detected small distances, therefore lack fit small distances consequential points lines (Figure 3). Figure 3: Fit half normal detection function savannah sparrow data.","code":"sasp.hn <- ds(data=Savannah_sparrow_1980, key=\"hn\", adjustment=NULL, transect=\"point\", convert_units=conversion.factor, truncation=\"5%\") summary(sasp.hn) ## ## Summary for distance analysis ## Number of observations : 262 ## Distance range : 0 - 51.025 ## ## Model : Half-normal key function ## AIC : 2021.776 ## Optimisation: mrds (nlminb) ## ## Detection function parameters ## Scale coefficient(s): ## estimate se ## (Intercept) 3.044624 0.04270318 ## ## Estimate SE CV ## Average p 0.321125 0.02296165 0.07150378 ## N in covered region 815.881752 71.61153776 0.08777196 ## ## Summary statistics: ## Region Area CoveredArea Effort n k ER se.ER ## 1 Single_stratum 1 305.0877 373 262 373 0.7024129 0.04726421 ## cv.ER ## 1 0.06728836 ## ## Abundance: ## Label Estimate se cv lcl ucl df ## 1 Total 2.674253 0.2625745 0.09818612 2.206266 3.241509 598.5905 ## ## Density: ## Label Estimate se cv lcl ucl df ## 1 Total 2.674253 0.2625745 0.09818612 2.206266 3.241509 598.5905 cutpoints <- c(0,5,10,15,20,30,40,max(Savannah_sparrow_1980$distance, na.rm=TRUE)) plot(sasp.hn, breaks=cutpoints, pdf=TRUE, main=\"Savannah sparrow point transect data.\")"},{"path":"/articles/web-only/pointtransects-distill.html","id":"specifying-different-detection-functions","dir":"Articles > Web-only","previous_headings":"","what":"Specifying different detection functions","title":"Point transect density estimation","text":"Detection function forms shapes, specified changing key adjustment arguments. options available key adjustment elements detection functions : half normal (key=\"hn\") - default hazard rate (key=\"hr\") uniform (key=\"unif\") adjustment terms (adjustment=NULL) cosine (adjustment=\"cos\") - default Hermite polynomial (adjustment=\"herm\") Simple polynomial (adjustment=\"poly\") fit uniform key function cosine adjustment terms, use command: fit hazard rate key function simple polynomial adjustment terms, use command:","code":"sasp.unif.cos <- ds(Savannah_sparrow_1980, key=\"unif\", adjustment=\"cos\", transect=\"point\", convert_units=conversion.factor, truncation=\"5%\") sasp.hr.poly <- ds(Savannah_sparrow_1980, key=\"hr\", adjustment=\"poly\", transect=\"point\", convert_units=conversion.factor, truncation=\"5%\")"},{"path":"/articles/web-only/pointtransects-distill.html","id":"model-comparison","dir":"Articles > Web-only","previous_headings":"","what":"Model comparison","title":"Point transect density estimation","text":"fitted detection function produces different estimate Savannah sparrow abundance density. estimate depends upon model chosen. model selection tool distance sampling data AIC.","code":"AIC(sasp.hn, sasp.hr.poly, sasp.unif.cos) ## df AIC ## sasp.hn 1 2021.776 ## sasp.hr.poly 3 2024.785 ## sasp.unif.cos 1 2023.178"},{"path":"/articles/web-only/pointtransects-distill.html","id":"absolute-goodness-of-fit","dir":"Articles > Web-only","previous_headings":"Model comparison","what":"Absolute goodness of fit","title":"Point transect density estimation","text":"addition relative ranking models provided AIC, also important know whether selected model(s) actually fit data. model basis inference, dangerous make inference model fit data. Goodness fit assessed using function gof_ds (Figure 4). Figure 4: Q-Q plot half normal detection function savannah sparrow data.","code":"gof_ds(sasp.hn) ## ## Goodness of fit results for ddf object ## ## Distance sampling Cramer-von Mises test (unweighted) ## Test statistic = 0.0835959 p-value = 0.671325"},{"path":"/articles/web-only/pointtransects-distill.html","id":"model-comparison-tables","dir":"Articles > Web-only","previous_headings":"","what":"Model comparison tables","title":"Point transect density estimation","text":"function summarise_ds_models combines work AIC gof_ds produce table fitted models summary statistics. Table 1: Model selection summary savannah sparrow point transect data.","code":"knitr::kable(summarize_ds_models(sasp.hn, sasp.hr.poly, sasp.unif.cos),digits=3, caption=\"Model selection summary of savannah sparrow point transect data.\")"},{"path":"/articles/web-only/pointtransects-distill.html","id":"conclusions","dir":"Articles > Web-only","previous_headings":"","what":"Conclusions","title":"Point transect density estimation","text":"Key differences analysis line transect data point transect data argument transect ds() must set \"point\", histogram radial detection distances characteristically “humped” individuals available detected near points, hump shape (Figure 2), plotting assess fit data detection distribution usually assessed via pdf=TRUE argument added plot() function, Arapaho National Refuge Savannah sparrow data, three candidate models provide adequeate fit data produce comparable estimates \\(P_a\\).","code":""},{"path":"/articles/web-only/strata/strata-distill.html","id":"objectives","dir":"Articles > Web-only > Strata","previous_headings":"","what":"Objectives","title":"Analysis of stratified survey designs","text":"Fit detection function pooling data across pastures, Fit pasture-specific detection functions, Choose appropriate analysis using model selection.","code":""},{"path":"/articles/web-only/strata/strata-distill.html","id":"survey-design","dir":"Articles > Web-only > Strata","previous_headings":"","what":"Survey design","title":"Analysis of stratified survey designs","text":"total 373 point transects placed three pastures Arapaho National Wildlife Refuge Colorado (Figure 1). Elevation pastures ~2500m. example, perform pasture-level analysis data. Figure 1: Summer grazed pastures along Illinois River Arapaho National Wildlife Refuge, Colorado. Figure (Knopf et al., 1988). fields Savannah_sparrow_1980 data set : Region.Label - three pastures constituted sections study area. Area - size study region. place holder, pasture sizes known. Estimates density abundance equivalent. Sample.Label - point transect identifier (total 273) Effort - number visits point object - unique identifier detected savanna sparrow distance - radial distance (metres) detection Study.Area - data savanna sparrow (SASP) included data set","code":""},{"path":"/articles/web-only/strata/strata-distill.html","id":"make-the-data-available-for-r-session","dir":"Articles > Web-only > Strata","previous_headings":"","what":"Make the data available for R session","title":"Analysis of stratified survey designs","text":"command assumes dsdata package installed computer. R workspace Savannah_sparrow_1980 contains detections savanna sparrows point transect surveys Knopf et al. (1988).","code":"library(Distance) data(Savannah_sparrow_1980) conversion.factor <- convert_units(\"meter\", NULL, \"hectare\")"},{"path":"/articles/web-only/strata/strata-distill.html","id":"separate-data-into-pasture-specific-data-sets","dir":"Articles > Web-only > Strata","previous_headings":"","what":"Separate data into pasture-specific data sets","title":"Analysis of stratified survey designs","text":"simplest way fit pasture-specific detection functions subset data. done time ds() function called, perform step data preparation step.","code":"sasp.past1 <- subset(Savannah_sparrow_1980, Region.Label == \"PASTURE 1\") sasp.past2 <- subset(Savannah_sparrow_1980, Region.Label == \"PASTURE 2\") sasp.past3 <- subset(Savannah_sparrow_1980, Region.Label == \"PASTURE 3\")"},{"path":"/articles/web-only/strata/strata-distill.html","id":"pasture-stratum-specific-detection-functions","dir":"Articles > Web-only > Strata","previous_headings":"","what":"Pasture (stratum)-specific detection functions","title":"Analysis of stratified survey designs","text":"Fit half-normal key functions without adjustments pasture separately performing 5% right truncation. total AIC model fits separate detection functions pasture sum AICs individual pastures.","code":"past1.hn <- ds(data=sasp.past1, key=\"hn\", adjustment=NULL, transect=\"point\", convert_units=conversion.factor, truncation=\"5%\") past2.hn <- ds(data=sasp.past2, key=\"hn\", adjustment=NULL, transect=\"point\", convert_units=conversion.factor, truncation=\"5%\") past3.hn <- ds(data=sasp.past3, key=\"hn\", adjustment=NULL, transect=\"point\", convert_units=conversion.factor, truncation=\"5%\") model.separate.AIC <- sum(AIC(past1.hn, past2.hn, past3.hn)$AIC)"},{"path":"/articles/web-only/strata/strata-distill.html","id":"common-detection-function-across-pastures","dir":"Articles > Web-only > Strata","previous_headings":"","what":"Common detection function across pastures","title":"Analysis of stratified survey designs","text":"model much simpler fit single call ds() using original data.","code":"model.pooled <- ds(data=Savannah_sparrow_1980, key=\"hn\", adjustment=NULL, transect=\"point\", convert_units = conversion.factor, truncation = \"5%\") model.pooled.AIC <- AIC(model.pooled)"},{"path":"/articles/web-only/strata/strata-distill.html","id":"comparison-of-aic-scores","dir":"Articles > Web-only > Strata","previous_headings":"","what":"Comparison of AIC scores","title":"Analysis of stratified survey designs","text":"AIC model stratum-specific detection functions (2007) less AIC model pooled detection function (2022), base inference upon stratum-specific detection function model (depicted Figure 2). Figure 2: Pasture-specific detection functions based upon half-normal key function.","code":"cat(paste(\"Stratum-specific detection AIC\", round(model.separate.AIC), \"\\nCommon detection function AIC\", round(model.pooled.AIC$AIC)), sep=\" \") ## Stratum-specific detection AIC 2007 ## Common detection function AIC 2022 cutpoints <- c(0,5,10,15,20,30,40,53) par(mfrow=c(1,3)) plot(past1.hn, breaks=cutpoints, pdf=TRUE, main=\"Pasture 1\") plot(past2.hn, breaks=cutpoints, pdf=TRUE, main=\"Pasture 2\") plot(past3.hn, breaks=cutpoints, pdf=TRUE, main=\"Pasture 3\")"},{"path":"/articles/web-only/strata/strata-distill.html","id":"absolute-goodness-of-fit","dir":"Articles > Web-only > Strata","previous_headings":"Comparison of AIC scores","what":"Absolute goodness of fit","title":"Analysis of stratified survey designs","text":"Always best check fit preferred model data. exploration analyses involving stratification can found example dung survey analysis.","code":"gof_ds(past1.hn, plot = FALSE) gof_ds(past2.hn, plot = FALSE) gof_ds(past3.hn, plot = FALSE) ## ## Goodness of fit results for ddf object ## ## Distance sampling Cramer-von Mises test (unweighted) ## Test statistic = 0.0939637 p-value = 0.615284 ## ## Goodness of fit results for ddf object ## ## Distance sampling Cramer-von Mises test (unweighted) ## Test statistic = 0.0478577 p-value = 0.889162 ## ## Goodness of fit results for ddf object ## ## Distance sampling Cramer-von Mises test (unweighted) ## Test statistic = 0.0402974 p-value = 0.931609"},{"path":"/articles/web-only/strata/strata-distill.html","id":"comments","dir":"Articles > Web-only > Strata","previous_headings":"","what":"Comments","title":"Analysis of stratified survey designs","text":"Note difference 14 AIC units model using stratum-specific detection functions model using pooled detection function, stratum-specific detection function model preferrable. thorough, absolute goodness fit three stratum-specific detection functions checked, models fit data adequately. vignette focuses upon use stratum-specific detection functions model selection exercise. Consequently, vignette examine stratum-specific abundance density estimates. output included example analysis, can easily produced continuing analysis begun example.","code":""},{"path":[]},{"path":"/articles/web-only/variance/variance-distill.html","id":"objectives","dir":"Articles > Web-only > Variance","previous_headings":"","what":"Objectives","title":"Variance estimation","text":"Estimate precision standard manner Use bootstrap estimate precision Incorporate model uncertainty estimates precision","code":""},{"path":"/articles/web-only/variance/variance-distill.html","id":"survey-data","dir":"Articles > Web-only > Variance","previous_headings":"","what":"Survey data","title":"Variance estimation","text":"R workspace wren_lt contains detections winter wrens line transect surveys S. T. Buckland (2006). function names() allows see names columns data frame wren_lt. Definitions fields provided line transect vignette. effort, transect length adjusted recognise transect walked twice.","code":"library(Distance) data(wren_lt) conversion.factor <- convert_units(\"meter\", \"kilometer\", \"hectare\")"},{"path":"/articles/web-only/variance/variance-distill.html","id":"fitting-a-suitable-detection-function","dir":"Articles > Web-only > Variance","previous_headings":"","what":"Fitting a suitable detection function","title":"Variance estimation","text":"Rather refitting models used line transect vignette, move directly model selected S. T. Buckland (2006). Based upon experience field, uniform cosine model used inference.","code":"wren.unif.cos <- ds(wren_lt, key=\"unif\", adjustment=\"cos\", convert_units=conversion.factor)"},{"path":"/articles/web-only/variance/variance-distill.html","id":"estimation-of-precision","dir":"Articles > Web-only > Variance","previous_headings":"","what":"Estimation of precision","title":"Variance estimation","text":"Looking density estimates uniform cosine model coefficient variation (CV) 0.2, confidence interval bounds (0.72 - 1.57) birds per hectare. coefficient variation based upon delta-method approximation uncertainty parameters detection function variability encounter rates transects. \\[[CV(\\hat{D})]^2 = [CV(\\frac{n}{L})]^2 + [CV(P_a)]^2\\] \\(n\\) number detections \\(L\\) total effort \\(P_a\\) probability detection given bird within covered region. confidence interval bounds assume sampling distribution \\(\\hat{D}\\) log-normal (S. Buckland, Rexstad, Marques, & Oedekoven, 2015, sec. 6.2.1).","code":"print(wren.unif.cos$dht$individuals$D) ## Label Estimate se cv lcl ucl df ## 1 Total 1.066101 0.2126892 0.1995019 0.7218009 1.574632 168.204"},{"path":"/articles/web-only/variance/variance-distill.html","id":"bootstrap-estimates-of-precision","dir":"Articles > Web-only > Variance","previous_headings":"Estimation of precision","what":"Bootstrap estimates of precision","title":"Variance estimation","text":"Rather relying upon delta-method approximation assumes independence uncertainty detection function variability encounter rate, bootstrap procedure can employed. Resampling replacement transects produces replicate samples sampling distribution \\(\\hat{D}\\) approximated. sampling distribution, percentile method used produce confidence interval bounds respecting shape sampling distribution (S. Buckland et al., 2015, sec. 6.3.1.2). function bootdht_Nhat_summarize included Distance package. used extract information object created bootdht. modify slightly extract density estimates rather abundance estimates. summary function defined, bootstrap procedure can performed. Arguments name fitted object, object containing data, conversion factor number bootstrap replicates. , use cores= argument use multiple cores process bootstraps parallel. many cores computer, need reduce/remove argument. object est.boot contains data frame two columns consisting \\(\\hat{D}\\) specified bootdht_Dhat_summarize. data frame can processed produce histogram (Fig. 1) representing sampling distribution estimated parameters well percentile confidence interval bounds. Figure 1: Sampling distribution \\(\\hat{D}\\) approximated bootstrap.","code":"bootdht_Dhat_summarize <- function(ests, fit) { return(data.frame(D=ests$individuals$D$Estimate)) } nboots <- 300 est.boot <- bootdht(model=wren.unif.cos, flatfile=wren_lt, summary_fun=bootdht_Dhat_summarize, convert_units=conversion.factor, nboot=nboots, cores=10) alpha <- 0.05 (bootci <- quantile(est.boot$D, probs = c(alpha/2, 1-alpha/2), na.rm=TRUE)) ## 2.5% 97.5% ## 0.7940937 1.4088653 hist(est.boot$D, nc=30, main=\"Distribution of bootstrap estimates\\nwithout model uncertainty\", xlab=\"Estimated density\") abline(v=bootci, lwd=2, lty=2)"},{"path":"/articles/web-only/variance/variance-distill.html","id":"incorporating-model-uncertainty-in-precision-estimates","dir":"Articles > Web-only > Variance","previous_headings":"","what":"Incorporating model uncertainty in precision estimates","title":"Variance estimation","text":"argument model bootdht can single model shown , can consist list models. later instance, models list fitted bootstrap replicate model selection based AIC performed replicate. consequence model uncertainty incorporated resulting estimate precision (Fig. 2). Figure 2: Sampling distribution \\(\\hat{D}\\) approximated bootstrap including model uncertainty.","code":"wren.hn <- ds(wren_lt, key=\"hn\", adjustment=\"cos\", convert_units=conversion.factor) ## Warning in check.mono(result, n.pts = control$mono.points): Detection function ## is not strictly monotonic! ## Warning in check.mono(result, n.pts = control$mono.points): Detection function ## is not strictly monotonic! wren.hr.poly <- ds(wren_lt, key=\"hr\", adjustment=\"poly\", convert_units=conversion.factor) est.boot.uncert <- bootdht(model=list(wren.hn, wren.hr.poly, wren.unif.cos), flatfile=wren_lt, summary_fun=bootdht_Dhat_summarize, convert_units=conversion.factor, nboot=nboots, cores=10) (modselci <- quantile(est.boot.uncert$D, probs = c(alpha/2, 1-alpha/2), na.rm=TRUE)) ## 2.5% 97.5% ## 0.8080775 1.3620822 hist(est.boot.uncert$D, nc=30, main=\"Distribution of bootstrap estimates\\nincluding model uncertainty\", xlab=\"Estimated density\") abline(v=modselci, lwd=2, lty=2)"},{"path":"/articles/web-only/variance/variance-distill.html","id":"comments","dir":"Articles > Web-only > Variance","previous_headings":"","what":"Comments","title":"Variance estimation","text":"Recognise producing bootstrap estimates precision computer-intensive. example created 300 bootstrap replicates interest computation time. inference wish draw, likely increase number bootstrap replicates 999. data set, bootstrap estimate precision greater delta-method approximation precision (based confidence interval width). addition, incorporating model uncertainty estimate precision density changes precision estimate little. confidence interval width without incorporating model uncertainty 0.615 confidence interval including model uncertainty 0.554. represents change -10% due uncertainty regarding best model data.","code":""},{"path":[]},{"path":"/authors.html","id":null,"dir":"","previous_headings":"","what":"Authors","title":"Authors and Citation","text":"Laura Marshall. Maintainer. David Miller. Author. T.J. Clark-Wolf. Author. Len Thomas. Contributor. Jeff Laake. Contributor. Eric Rexstad. Reviewer.","code":""},{"path":"/authors.html","id":"citation","dir":"","previous_headings":"","what":"Citation","title":"Authors and Citation","text":"Miller DL, Rexstad E, Thomas L, Marshall L, Laake JL (2019). “Distance Sampling R.” Journal Statistical Software, 89(1), 1–28. doi:10.18637/jss.v089.i01.","code":"@Article{, title = {Distance Sampling in {R}}, author = {David L. Miller and Eric Rexstad and Len Thomas and Laura Marshall and Jeffrey L. Laake}, journal = {Journal of Statistical Software}, year = {2019}, volume = {89}, number = {1}, pages = {1--28}, doi = {10.18637/jss.v089.i01}, }"},{"path":[]},{"path":"/index.html","id":"distance-r-package-preferred-citation","dir":"","previous_headings":"","what":"Distance R package preferred citation","title":"Distance Sampling Detection Function and Abundance Estimation","text":"Miller, D. L., Rexstad, E., Thomas, L., Marshall, L., & Laake, J. L. (2019). Distance Sampling R. Journal Statistical Software, 89(1), 1–28. DOI: 10.18637/jss.v089.i01 Consult Articles case studies distance sampling analyses.","code":""},{"path":"/index.html","id":"getting-distance","dir":"","previous_headings":"","what":"Getting Distance","title":"Distance Sampling Detection Function and Abundance Estimation","text":"easiest way ensure latest version Distance, install devtools: {r} install.packages(\"devtools\") install Distance Github: {r} library(devtools) install_github(\"DistanceDevelopment/Distance\")","code":""},{"path":"/reference/add_df_covar_line.html","id":null,"dir":"Reference","previous_headings":"","what":"Add covariate levels detection function plots — add_df_covar_line","title":"Add covariate levels detection function plots — add_df_covar_line","text":"Add line lines plot detection function correspond given covariate combination. can particularly useful small number factor levels quantiles continuous covariate specified.","code":""},{"path":"/reference/add_df_covar_line.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Add covariate levels detection function plots — add_df_covar_line","text":"ddf fitted detection function object. data data.frame covariate combination want plot. ... extra arguments give lines (e.g., lty, lwd, col). ndist number distances evaluate detection function. pdf line drawn probability density scale; ignored line transects breaks required ensure PDF lines right size, match supplied original plot command. Defaults \"Sturges\" breaks, hist. used pdf=TRUE","code":""},{"path":"/reference/add_df_covar_line.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Add covariate levels detection function plots — add_df_covar_line","text":"invisibly, values detectability truncation range.","code":""},{"path":"/reference/add_df_covar_line.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Add covariate levels detection function plots — add_df_covar_line","text":"covariates must specified data. Plots can become quite busy approach used. may useful fix covariates median level plot set values covariate interest. example setting weather (e.g., Beaufort) median plotting levels observer, creating second plot fixed observer levels weather. Arguments lines supplied ... aesthetics like line type (lty), line width (lwd) colour (col) recycled. default lty used distinguish lines. may useful add legend plot (lines plotted order data).","code":""},{"path":"/reference/add_df_covar_line.html","id":"note","dir":"Reference","previous_headings":"","what":"Note","title":"Add covariate levels detection function plots — add_df_covar_line","text":"function located mrds package documentation provided easy access.","code":""},{"path":"/reference/add_df_covar_line.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Add covariate levels detection function plots — add_df_covar_line","text":"David L Miller","code":""},{"path":"/reference/add_df_covar_line.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Add covariate levels detection function plots — add_df_covar_line","text":"","code":"# example using a model for the minke data data(minke) # fit a model result <- ds(minke, formula=~Region.Label) #> Model contains covariate term(s): no adjustment terms will be included. #> Fitting half-normal key function #> AIC= 57.005 # make a base plot, showpoints=FALSE makes the plot less busy plot(result, showpoints=FALSE) # add lines for sex one at a time add_df_covar_line(result, data.frame(Region.Label=\"South\"), lty=2) add_df_covar_line(result, data.frame(Region.Label=\"North\"), lty=3) # add a legend legend(1.5, 1, c(\"Average\", \"South\", \"North\"), lty=1:3) # point transect example data(amakihi) result <- ds(amakihi, truncation=150, transect=\"point\", formula=~OBs) #> Model contains covariate term(s): no adjustment terms will be included. #> Fitting half-normal key function #> AIC= 13870.198 plot(result, showpoints=FALSE, pdf=TRUE) add_df_covar_line(result, data.frame(OBs=na.omit(unique(amakihi$OBs))), pdf=TRUE)"},{"path":"/reference/AIC.dsmodel.html","id":null,"dir":"Reference","previous_headings":"","what":"Akaike's An Information Criterion for detection functions — AIC.dsmodel","title":"Akaike's An Information Criterion for detection functions — AIC.dsmodel","text":"Extract AIC fitted detection function.","code":""},{"path":"/reference/AIC.dsmodel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Akaike's An Information Criterion for detection functions — AIC.dsmodel","text":"","code":"# S3 method for class 'dsmodel' AIC(object, ..., k = 2)"},{"path":"/reference/AIC.dsmodel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Akaike's An Information Criterion for detection functions — AIC.dsmodel","text":"object fitted detection function object ... optionally fitted model objects. k penalty per parameter used; default k = 2 \"classical\" AIC","code":""},{"path":"/reference/AIC.dsmodel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Akaike's An Information Criterion for detection functions — AIC.dsmodel","text":"David L Miller","code":""},{"path":"/reference/AIC.dsmodel.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Akaike's An Information Criterion for detection functions — AIC.dsmodel","text":"","code":"if (FALSE) { # \\dontrun{ library(Distance) data(minke) model <- ds(minke, truncation=4) model_hr <- ds(minke, truncation=4, key=\"hr\") # extract the AIC for 2 models AIC(model, model_hr) } # }"},{"path":"/reference/amakihi.html","id":null,"dir":"Reference","previous_headings":"","what":"Hawaiian amakihi point transect data — amakihi","title":"Hawaiian amakihi point transect data — amakihi","text":"Also known Common 'Amakihi, type Hawaiian honeycreeper","code":""},{"path":"/reference/amakihi.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Hawaiian amakihi point transect data — amakihi","text":"data.frame 1487 rows 12 variables Region.Label strata names (seven strata) Area size study area (set 0) Sample.Label transect ID Effort number visits point object object ID distance radial distance (m) Month month survey conducted (used) OBs observer ID (note capitalisation variable name) Sp species code (COAM) detections MAS Time sunrise (min) Time sunrise (hours) Study.Area name study area","code":""},{"path":"/reference/amakihi.html","id":"note","dir":"Reference","previous_headings":"","what":"Note","title":"Hawaiian amakihi point transect data — amakihi","text":"Example investigating covariates detection function. Note high colinearity two measures time since sunrise. Convergence problems can result models several factor covariates.","code":""},{"path":"/reference/amakihi.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Hawaiian amakihi point transect data — amakihi","text":"Marques, T.., L. Thomas, S.G. Fancy S.T. Buckland. (2007) Improving estimates bird density using multiple-covariate distance sampling. Auk 124 (4): 1229–1243. doi:10.1642/0004-8038(2007)124[1229:IEOBDU]2.0.CO;2","code":""},{"path":"/reference/bootdht.html","id":null,"dir":"Reference","previous_headings":"","what":"Bootstrap uncertainty estimation for distance sampling models — bootdht","title":"Bootstrap uncertainty estimation for distance sampling models — bootdht","text":"Performs bootstrap simple distance sampling models using data structures dht. Note geographical stratification supported dht allowed.","code":""},{"path":"/reference/bootdht.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Bootstrap uncertainty estimation for distance sampling models — bootdht","text":"","code":"bootdht( model, flatfile, resample_strata = FALSE, resample_obs = FALSE, resample_transects = TRUE, nboot = 100, summary_fun = bootdht_Nhat_summarize, convert_units = 1, select_adjustments = FALSE, sample_fraction = 1, multipliers = NULL, progress_bar = \"base\", cores = 1, convert.units = NULL )"},{"path":"/reference/bootdht.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Bootstrap uncertainty estimation for distance sampling models — bootdht","text":"model model fitted ds list models flatfile Data provided flatfile format. See flatfile details. Please note, current limitation bootdht Sample.Label identifiers must unique across strata, .e.transect ids must re-used one strata another. easy way achieve paste together stratum names transect ids. resample_strata resampling happen stratum (Region.Label) level? (Default FALSE) resample_obs resampling happen observation (object) level? (Default FALSE) resample_transects resampling happen transect (Sample.Label) level? (Default TRUE) nboot number bootstrap replicates summary_fun function used obtain summary statistics bootstrap, see Summary Functions . default bootdht_Nhat_summarize used, just extracts abundance estimates. convert_units conversion units abundance estimation, see \"Units\", . (Defaults 1, implying units \"correct\" already.) takes precedence unit conversion stored model. select_adjustments select number adjustments bootstrap, FALSE exact detection function specified model fitted replicate. Setting option TRUE can significantly increase runtime bootstrap. Note work model must fitted adjustment!=NULL. sample_fraction proportion transects covered (e.g., 0.5 one-sided line transects). multipliers list multipliers. See \"Multipliers\" . progress_bar progress bar used? Default \"base\" uses txtProgressBar, \"none\" suppresses output, \"progress\" uses progress package, installed. cores number CPU cores use compute estimates. See \"Parallelization\" . convert.units deprecated, see argument underscore, .","code":""},{"path":"/reference/bootdht.html","id":"summary-functions","dir":"Reference","previous_headings":"","what":"Summary Functions","title":"Bootstrap uncertainty estimation for distance sampling models — bootdht","text":"function summary_fun allows user specify summary statistics recorded bootstrap. function take two arguments, ests fit. former output dht2, giving tables estimates. latter fitted detection function object. function called fitting estimation performed return data.frame. data.frames concatenated using rbind. One can make functions return information within objects, example abundance density estimates AIC model. See Examples .","code":""},{"path":"/reference/bootdht.html","id":"multipliers","dir":"Reference","previous_headings":"","what":"Multipliers","title":"Bootstrap uncertainty estimation for distance sampling models — bootdht","text":"often case measure distances individuals groups directly, instead need estimate distances something produce (e.g., whales, blows; elephants dung) – referred indirect sampling. may need use estimates production rate decay rate estimates (case dung nests) just production rates (case songbird calls whale blows). refer conversions \"number cues\" \"number animals\" \"multipliers\". multipliers argument list, 3 possible elements (creation decay). element either: data.frame must least column named rate, abundance estimates divided (term \"multiplier\" misnomer, kept compatibility Distance Windows). Additional columns can added give standard error degrees freedom rate known SE df, respectively. can use multirow data.frame different rates different geographical areas (example). case rows need column (columns) merge data (example Region.Label). function return single estimate relevant multiplier. See make_activity_fn helper function use activity package.","code":""},{"path":"/reference/bootdht.html","id":"model-selection","dir":"Reference","previous_headings":"","what":"Model selection","title":"Bootstrap uncertainty estimation for distance sampling models — bootdht","text":"Model selection can performed per-replicate basis within bootstrap. three variations: select_adjustments TRUE adjustment terms selected AIC within bootstrap replicate (provided model order adjustment options set non-NULL. model list fitted detection functions, fitted replicate results generated one lowest AIC. select_adjustments TRUE model list fitted detection functions, model fitted replicate number adjustments selected via AIC. last option can extremely time consuming.","code":""},{"path":"/reference/bootdht.html","id":"parallelization","dir":"Reference","previous_headings":"","what":"Parallelization","title":"Bootstrap uncertainty estimation for distance sampling models — bootdht","text":"cores>1 parallel/doParallel/foreach/doRNG packages used run computation multiple cores computer. use component need install packages using: install.packages(c(\"foreach\", \"doParallel\", \"doRNG\")) advised set cores greater one less number cores machine. doRNG package required make analyses reproducible (set.seed can used ensure answers). also hard debug issues summary_fun best run small number bootstraps first parallel check things work. Windows systems summary_fun access global environment running parallel, computations must made using ests fit arguments (.e., can use R objects elsewhere function, even available console). Another consequence global environment unavailable inside parallel bootstraps starting values model object passed bootdht must hard coded (otherwise get back 0 successful bootstraps). worked example showing , see camera trap distance sampling online example https://examples.distancesampling.org/Distance-cameratraps/camera-distill.html.","code":""},{"path":[]},{"path":"/reference/bootdht.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Bootstrap uncertainty estimation for distance sampling models — bootdht","text":"","code":"if (FALSE) { # \\dontrun{ # fit a model to the minke data data(minke) mod1 <- ds(minke) # summary function to save the abundance estimate Nhat_summarize <- function(ests, fit) { return(data.frame(Nhat=ests$individuals$N$Estimate)) } # perform 5 bootstraps bootout <- bootdht(mod1, flatfile=minke, summary_fun=Nhat_summarize, nboot=5) # obtain basic summary information summary(bootout) } # }"},{"path":"/reference/bootdht_Dhat_summarize.html","id":null,"dir":"Reference","previous_headings":"","what":"Simple summary of density results for bootstrap model — bootdht_Dhat_summarize","title":"Simple summary of density results for bootstrap model — bootdht_Dhat_summarize","text":"using bootdht one needs use summary function extract results resulting models per replicate. function simplest possible example function, just extracts estimated density (stratum labels).","code":""},{"path":"/reference/bootdht_Dhat_summarize.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simple summary of density results for bootstrap model — bootdht_Dhat_summarize","text":"","code":"bootdht_Dhat_summarize(ests, fit)"},{"path":"/reference/bootdht_Dhat_summarize.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simple summary of density results for bootstrap model — bootdht_Dhat_summarize","text":"ests output dht2. fit fitted detection function object (unused).","code":""},{"path":"/reference/bootdht_Dhat_summarize.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simple summary of density results for bootstrap model — bootdht_Dhat_summarize","text":"data.frame two columns (\"Dhat\" \"Label\"), giving estimate(s) density individuals per stratum bootstrap replicate. data.frame can examined example, quantile compute confidence intervals.","code":""},{"path":"/reference/bootdht_Dhat_summarize.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simple summary of density results for bootstrap model — bootdht_Dhat_summarize","text":"examples functions can found http://examples.distancesampling.org.","code":""},{"path":[]},{"path":"/reference/bootdht_Nhat_summarize.html","id":null,"dir":"Reference","previous_headings":"","what":"Simple summary of abundance results for bootstrap model — bootdht_Nhat_summarize","title":"Simple summary of abundance results for bootstrap model — bootdht_Nhat_summarize","text":"using bootdht one needs use summary function extract results resulting models per replicate. function simplest possible example function, just extracts estimated abundance (stratum labels).","code":""},{"path":"/reference/bootdht_Nhat_summarize.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simple summary of abundance results for bootstrap model — bootdht_Nhat_summarize","text":"","code":"bootdht_Nhat_summarize(ests, fit)"},{"path":"/reference/bootdht_Nhat_summarize.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simple summary of abundance results for bootstrap model — bootdht_Nhat_summarize","text":"ests output dht2. fit fitted detection function object (unused).","code":""},{"path":"/reference/bootdht_Nhat_summarize.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Simple summary of abundance results for bootstrap model — bootdht_Nhat_summarize","text":"data.frame two columns (\"Nhat\" \"Label\"), giving estimate(s) abundance individuals per stratum bootstrap replicate. data.frame can examined example, quantile compute confidence intervals.","code":""},{"path":"/reference/bootdht_Nhat_summarize.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simple summary of abundance results for bootstrap model — bootdht_Nhat_summarize","text":"examples functions can found http://examples.distancesampling.org.","code":""},{"path":[]},{"path":"/reference/capercaillie.html","id":null,"dir":"Reference","previous_headings":"","what":"Capercaillie in Monaughty Forest — capercaillie","title":"Capercaillie in Monaughty Forest — capercaillie","text":"Data line transect survey capercaillie Monaughty Forest, Moray, Scotland.","code":""},{"path":"/reference/capercaillie.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Capercaillie in Monaughty Forest — capercaillie","text":"data.frame 112 observations following 9 variables. Sample.Label name single transect Effort transect length (km) distance perpendicular distance (m) object object ID size individual birds detected detected whether detected observer single observer data Region.Label stratum name Area size Monaughty Forest (ha)","code":""},{"path":"/reference/checkdata.html","id":null,"dir":"Reference","previous_headings":"","what":"Check that the data supplied to ds is correct — checkdata","title":"Check that the data supplied to ds is correct — checkdata","text":"internal function checks data.frames supplied ds \"correct\".","code":""},{"path":"/reference/checkdata.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Check that the data supplied to ds is correct — checkdata","text":"","code":"checkdata( data, region.table = NULL, sample.table = NULL, obs.table = NULL, formula = ~1 )"},{"path":"/reference/checkdata.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Check that the data supplied to ds is correct — checkdata","text":"data ds region.table ds sample.table ds obs.table ds formula formula covariates","code":""},{"path":"/reference/checkdata.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Check that the data supplied to ds is correct — checkdata","text":"Throws error something goes wrong, otherwise returns data.frame.","code":""},{"path":"/reference/checkdata.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Check that the data supplied to ds is correct — checkdata","text":"David L. Miller","code":""},{"path":"/reference/ClusterExercise.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulated minke whale data with cluster size — ClusterExercise","title":"Simulated minke whale data with cluster size — ClusterExercise","text":"Data simulated models fitted 1992/1993 Southern Hemisphere minke whale data collected International Whaling Commission. See Branch Butterworth (2001) survey details (survey design shown figure 1(e)). Data simulated David Borchers.","code":""},{"path":"/reference/ClusterExercise.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Simulated minke whale data with cluster size — ClusterExercise","text":"data.frame 99 observations 9 variables: Region.Label stratum label (\"North\" \"South\") Area stratum area (square nautical mile) Sample.Label transect identifier Effort transect length (nautical mile) object unique object ID distance observed distance (nautical mile) Cluster.strat strata based cluster size: 1, 2 3+ size cluster size Study.Area name study area","code":""},{"path":"/reference/ClusterExercise.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Simulated minke whale data with cluster size — ClusterExercise","text":"Branch, T.. D.S. Butterworth. (2001) Southern Hemisphere minke whales: standardised abundance estimates 1978/79 1997/98 IDCR-SOWER surveys. Journal Cetacean Research Management 3(2): 143-174 Hedley, S.L., S.T. Buckland. (2004) Spatial models line transect sampling. Journal Agricultural, Biological, Environmental Statistics 9: 181-199. doi:10.1198/1085711043578 .","code":""},{"path":"/reference/convert_units.html","id":null,"dir":"Reference","previous_headings":"","what":"Convert units for abundance estimation — convert_units","title":"Convert units for abundance estimation — convert_units","text":"often case effort, distances prediction area collected different units field. Functions Distance allow argument convert provide answer makes sense. function calculates conversion factor, given knowledge units quantities used.","code":""},{"path":"/reference/convert_units.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Convert units for abundance estimation — convert_units","text":"","code":"convert_units(distance_units, effort_units, area_units)"},{"path":"/reference/convert_units.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Convert units for abundance estimation — convert_units","text":"distance_units units distances measured . effort_units units effort measured . Set NULL point transects. area_units units prediction area.","code":""},{"path":"/reference/convert_units.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Convert units for abundance estimation — convert_units","text":"convert_units expects particular names inputs – singular names unit (e.g., \"metre\" rather \"metres\"). can view possible options units_table. UK US spellings acceptable, case matter. density estimation, area must still provided (\"objects per square ???\"). Note cue counts (multiplier-based methods) one still ensure rates correct units survey.","code":""},{"path":"/reference/convert_units.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Convert units for abundance estimation — convert_units","text":"David L Miller","code":""},{"path":"/reference/convert_units.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Convert units for abundance estimation — convert_units","text":"","code":"# distances measured in metres, effort in kilometres and # abundance over an area measured in hectares: convert_units(\"Metre\", \"Kilometre\", \"Hectare\") #> [1] 0.1 # all SI units, so the result is 1 convert_units(\"Metre\", \"metre\", \"square metre\") #> [1] 1 # for points ignore effort convert_units(\"Metre\", NULL, \"Hectare\") #> [1] 0.01"},{"path":"/reference/create.bins.html","id":null,"dir":"Reference","previous_headings":"","what":"Create bins from a set of binned distances and a set of cutpoints. — create.bins","title":"Create bins from a set of binned distances and a set of cutpoints. — create.bins","text":"create.bins now deprecated, please use create_bins","code":""},{"path":"/reference/create.bins.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Create bins from a set of binned distances and a set of cutpoints. — create.bins","text":"","code":"create.bins(data, cutpoints)"},{"path":"/reference/create.bins.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Create bins from a set of binned distances and a set of cutpoints. — create.bins","text":"data data.frame least column distance. cutpoints vector cutpoints bins","code":""},{"path":"/reference/create.bins.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Create bins from a set of binned distances and a set of cutpoints. — create.bins","text":"argument data two extra columns distbegin distend.","code":""},{"path":"/reference/create.bins.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Create bins from a set of binned distances and a set of cutpoints. — create.bins","text":"David L. Miller","code":""},{"path":"/reference/create_bins.html","id":null,"dir":"Reference","previous_headings":"","what":"Create bins from a set of binned distances and a set of cutpoints. — create_bins","title":"Create bins from a set of binned distances and a set of cutpoints. — create_bins","text":"internal routine necessary normal analyses.","code":""},{"path":"/reference/create_bins.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Create bins from a set of binned distances and a set of cutpoints. — create_bins","text":"","code":"create_bins(data, cutpoints)"},{"path":"/reference/create_bins.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Create bins from a set of binned distances and a set of cutpoints. — create_bins","text":"data data.frame least column distance. cutpoints vector cutpoints bins","code":""},{"path":"/reference/create_bins.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Create bins from a set of binned distances and a set of cutpoints. — create_bins","text":"argument data two extra columns distbegin distend.","code":""},{"path":"/reference/create_bins.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Create bins from a set of binned distances and a set of cutpoints. — create_bins","text":"David L. Miller","code":""},{"path":"/reference/create_bins.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Create bins from a set of binned distances and a set of cutpoints. — create_bins","text":"","code":"if (FALSE) { # \\dontrun{ library(Distance) data(minke) # put the minke data into bins 0-1, 1-2, 2-3 km minke_cuts <- create_bins(minke[!is.na(minke$distance),], c(0,1,2,3)) } # }"},{"path":"/reference/CueCountingExample.html","id":null,"dir":"Reference","previous_headings":"","what":"Cue counts of whale blows — CueCountingExample","title":"Cue counts of whale blows — CueCountingExample","text":"Cues treated indirect count, requiring use multipliers.","code":""},{"path":"/reference/CueCountingExample.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Cue counts of whale blows — CueCountingExample","text":"data.frame 109 rows 15 variables. `Region.Label stratum labels Area size (km^2) stratum Sample.Label transect labels Cue.rate rate blows per animal per hour Cue.rate.SE variability cue rate Cue.rate.df degrees freedom (number animals sampled cues) object object ID distance perpendicular distance (km) Sample.Fraction proportion full circle scanned (radians) Sample.Fraction.SE variability sampling fraction (0) Search.time Duration scanning effort (hr) bss Beaufort sea state sp Species detected (observations W data) size Number animals group (1 data) Study.Area study area name","code":""},{"path":"/reference/CueCountingExample.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Cue counts of whale blows — CueCountingExample","text":"whale blows disappear instantaneously, need measure decay rate. However cue production rate (blows per individual per unit time) required, measure variability rate.","code":""},{"path":"/reference/CueCountingExample.html","id":"note","dir":"Reference","previous_headings":"","what":"Note","title":"Cue counts of whale blows — CueCountingExample","text":"two nuances survey. Even though survey taking place moving ship, effort measured amount time scanning blows. instances, possible observer scan sea around view may restricted ship's superstructure. sampling fraction multiplier employed deal restricted vision. Units measure cue.rate Search.time must equal.","code":""},{"path":"/reference/dht2.html","id":null,"dir":"Reference","previous_headings":"","what":"Abundance estimation for distance sampling models — dht2","title":"Abundance estimation for distance sampling models — dht2","text":"detection function fitted data, function can used compute abundance estimates required areas. function also allows stratification variance estimation via various schemes (see ).","code":""},{"path":"/reference/dht2.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Abundance estimation for distance sampling models — dht2","text":"","code":"dht2( ddf, observations = NULL, transects = NULL, geo_strat = NULL, flatfile = NULL, strat_formula, convert_units = 1, er_est = c(\"R2\", \"P2\"), multipliers = NULL, sample_fraction = 1, ci_width = 0.95, innes = FALSE, stratification = \"geographical\", total_area = NULL, binomial_var = FALSE )"},{"path":"/reference/dht2.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Abundance estimation for distance sampling models — dht2","text":"ddf model fitted ds ddf. Multiple detection functions can supplied list. observations data.frame link detection function data (indexed object column IDs) transects (indexed Sample.Label column IDs). See \"Data\" . transects data.frame information samples (points line transects). See \"Data\" . geo_strat data.frame information geographical stratification. See \"Data\" . flatfile data flatfile format, see flatfile. Note object column (uniquely identifying observations) required. strat_formula formula giving stratification structure (see \"Stratification\" ). Currently one level stratification supported. convert_units conversion factor units distances, effort area. See \"Units\" . Can supply one per detection function ddf. er_est encounter rate variance estimator used. See \"Variance\" varn. Can supply one per detection function ddf. multipliers list data.frames. See \"Multipliers\" . sample_fraction proportion transect covered (e.g., 0.5 one-sided line transects). May specified either single number data.frame 2 columns Sample.Label fraction (fractions different transect). ci_width use confidence interval calculation (defined 1-alpha, default 95 give 95% confidence interval). innes logical flag computing encounter rate variance using either method Innes et al (2002) estimated abundance per transect divided effort used encounter rate, vs. (innes=FALSE) using number observations divided effort (Buckland et al., 2001) stratification strata represent, see \"Stratification\" . total_area options stratification=\"effort_sum\" stratification=\"replicate\" area use total combined, weighted final estimates. binomial_var wish estimate abundance covered area (.e., study area = surveyed area) must set TRUE use binomial variance estimator Borchers et al. (1998). valid objects clustered. (situation rare.)","code":""},{"path":"/reference/dht2.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Abundance estimation for distance sampling models — dht2","text":"data.frame (class dht_result pretty printing) estimates attributes containing additional information, see \"Outputs\" information column names.","code":""},{"path":"/reference/dht2.html","id":"data","dir":"Reference","previous_headings":"","what":"Data","title":"Abundance estimation for distance sampling models — dht2","text":"data format allows complex stratification schemes set-. Three objects always required: ddf detection function (see ds ddf information format inputs). observations one row per observation links observations transects. Required columns: object (unique ID observation, must match data detection function) Sample.Label (unique ID transect). Additional columns strata included detection function required (stratification covariates included detection function need included ). important case group size, must column name size (need detection function). transects one row per sample (point line transect). least one row required. Required columns: Sample.Label (unique ID transect), Effort (line length line transects, number visits point transects), one geographical stratum. three arguments, abundance can calculated covered area. Including additional information area wish extrapolate (.e., study area), can obtain abundance estimates: geo_strat one row stratum wish estimate abundance . abundance study area, least one row required. Required columns: Area (area stratum). >1 row, additional columns, named strat_formula.` Note Area column set 0, density estimates returned.","code":""},{"path":"/reference/dht2.html","id":"multipliers","dir":"Reference","previous_headings":"","what":"Multipliers","title":"Abundance estimation for distance sampling models — dht2","text":"often case measure distances individuals groups directly, instead need estimate distances something produce (e.g., whales, blows; elephants dung) – referred indirect sampling. may need use estimates production rate decay rate estimates (case dung nests) just production rates (case songbird calls whale blows). refer conversions \"number cues\" \"number animals\" \"multipliers\". multipliers argument list, 2 possible elements (creation decay). element data.frame must least column named rate, abundance estimates divided (term \"multiplier\" misnomer, kept compatibility Distance Windows). Additional columns can added give standard error degrees freedom rate known SE df, respectively. can use multirow data.frame different rates different geographical areas (example). case rows need column (columns) merge data (example Region.Label).","code":""},{"path":"/reference/dht2.html","id":"stratification","dir":"Reference","previous_headings":"","what":"Stratification","title":"Abundance estimation for distance sampling models — dht2","text":"strat_formula argument used specify column use stratify results, using form ~column.name column.name column name wish use. stratification argument used specify four types stratification intended: \"geographical\" stratum represents different geographical areas want total areas \"effort_sum\" strata fact replicate surveys (perhaps using different designs) many replicates /want estimate \"average variance\" \"replicate\" replicate surveys many , calculates average abundance variance many surveys (think population surveys) \"object\" stratification really type object observed, example sex, species life stage want total number individuals across classes objects. example, stratified sex males females, also want total number animals, use option. simple example using stratification=\"geographical\" given . examples can found http://examples.distancesampling.org/ (see, e.g., deer pellet survey).","code":""},{"path":"/reference/dht2.html","id":"variance","dir":"Reference","previous_headings":"","what":"Variance","title":"Abundance estimation for distance sampling models — dht2","text":"Variance estimated abundance comes multiple sources. Depending data used fit model estimate abundance, different components included estimated variances. simplest case, detection function encounter rate variance need combined. group size varies, must included. Finally, multipliers used corresponding standard errors given, also included. Variances combined assuming independence measures adding variances. brief summary component calculated given , though see references details. detection function: variance detection function parameters transformed variance abundance via sandwich estimator (see e.g., Appendix C Borchers et al (2002)). encounter rate: strata >1 transect , encounter rate estimators given Fewster et al (2009) can specified via er_est argument. argument innes=TRUE calculations use estimated number individuals transect (rather observed), give Innes et al (2002) superior estimator. one transect stratum, Poisson variance assumed. Information Fewster encounter rate variance estimators given varn group size: objects occur groups (sometimes \"clusters\"), empirical variance group sizes added total variance. multipliers: multipliers standard errors given, corresponding variances added. standard errors supplied, contribution variance assumed 0.","code":""},{"path":"/reference/dht2.html","id":"units","dir":"Reference","previous_headings":"","what":"Units","title":"Abundance estimation for distance sampling models — dht2","text":"often case distances recorded one convenient set units, whereas study area effort recorded units. ensure results function expected units, use convert_units argument supply single number convert units covered area study/stratification area (results always returned units study area). line transects, covered area calculated 2 * width * length width effective (half)width transect (often referred w literature) length line length (referred L). width length measured kilometres study area square kilometres, fine convert_units 1 (can ignored). , example, line length distances measured metres, instead need convert kilometres, dividing 1000 distance length, hence convert_units=1e-6. point transects, slightly easier radius study area consider, conversion just units truncation radius square root study area units.","code":""},{"path":"/reference/dht2.html","id":"output","dir":"Reference","previous_headings":"","what":"Output","title":"Abundance estimation for distance sampling models — dht2","text":"printing output call dht2, three tables produced. guide output columns names, per table. Summary statistics table Region.Label Stratum name (first column name depends formula supplied) Area Size stratum CoveredArea Surveyed area stratum (2 x w x L) Effort Transect length number point visits per stratum n Number detections k Number replicate transects ER Encounter rate se.ER Standard error encounter rate cv.ER Coefficient variation encounter rate Abundance density estimates table: Region.Label Estimate Point estimate abundance density se Standard error cv Coefficient variation LCI Lower confidence bound UCI Upper confidence bound df Degrees freedom used confidence interval computation Components percentage variance: Region.Label Detection Percent variance abundance/density associated detection function uncertainty ER Percent variance abundance/density associated variability encounter rate Multipliers Percent variance abundance/density associated uncertainty multipliers","code":""},{"path":"/reference/dht2.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Abundance estimation for distance sampling models — dht2","text":"Borchers, D.L., S.T. Buckland, P.W. Goedhart, E.D. Clarke, S.L. Hedley. 1998. Horvitz-Thompson estimators double-platform line transect surveys. Biometrics 54: 1221-1237. Borchers, D.L., S.T. Buckland, W. Zucchini. 2002 Estimating Animal Abundance: Closed Populations. Statistics Biology Health. Springer London. Buckland, S.T., E.. Rexstad, T.. Marques, C.S. Oedekoven. 2015 Distance Sampling: Methods Applications. Methods Statistical Ecology. Springer International Publishing. Buckland, S.T., D.R. Anderson, K. Burnham, J.L. Laake, D.L. Borchers, L. Thomas. 2001 Introduction Distance Sampling: Estimating Abundance Biological Populations. Oxford University Press. Innes, S., M. P. Heide-Jorgensen, J.L. Laake, K.L. Laidre, H.J. Cleator, P. Richard, R.E.. Stewart. 2002 Surveys belugas narwhals Canadian high arctic 1996. NAMMCO Scientific Publications 4, 169-190.","code":""},{"path":"/reference/dht2.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Abundance estimation for distance sampling models — dht2","text":"","code":"if (FALSE) { # \\dontrun{ # example of simple geographical stratification # minke whale data, with 2 strata: North and South data(minke) # first fitting the detection function minke_df <- ds(minke, truncation=1.5, adjustment=NULL) # now estimate abundance using dht2 # stratum labels are in the Region.Label column minke_dht2 <- dht2(minke_df, flatfile=minke, stratification=\"geographical\", strat_formula=~Region.Label) # could compare this to minke_df$dht and see the same results minke_dht2 # can alternatively report density print(minke_dht2, report=\"density\") } # }"},{"path":"/reference/Distance-package.html","id":null,"dir":"Reference","previous_headings":"","what":"Distance sampling — Distance-package","title":"Distance sampling — Distance-package","text":"Distance simple way fit detection functions estimate abundance using distance sampling methodology.","code":""},{"path":"/reference/Distance-package.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Distance sampling — Distance-package","text":"Underlying Distance package mrds, advanced analyses (involving double observer surveys) one may find necessary use mrds. Examples distance sampling analyses available http://examples.distancesampling.org/. help distance sampling package, Google Group https://groups.google.com/forum/#!forum/distance-sampling. Bugs can reported https://github.com/DistanceDevelopment/Distance/issues.","code":""},{"path":"/reference/Distance-package.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Distance sampling — Distance-package","text":"\"_PACKAGE\" Key References: Miller D.L., E. Rexstad, L. Thomas, L. Marshall J.L. Laake. 2019. Distance Sampling R. Journal Statistical Software, 89(1), 1-28. doi:10.18637/jss.v089.i01 Background References: Laake, J.L. D.L. Borchers. 2004. Methods incomplete detection distance zero. : Advanced Distance Sampling, eds. S.T. Buckland, D.R.Anderson, K.P. Burnham, J.L. Laake, D.L. Borchers, L. Thomas. Oxford University Press. Marques, F.F.C. S.T. Buckland. 2004. Covariate models detection function. : Advanced Distance Sampling, eds. S.T. Buckland, D.R.Anderson, K.P. Burnham, J.L. Laake, D.L. Borchers, L. Thomas. Oxford University Press.","code":""},{"path":"/reference/Distance-package.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Distance sampling — Distance-package","text":"David L. Miller dave@ninepointeightone.net","code":""},{"path":"/reference/ds.gof.html","id":null,"dir":"Reference","previous_headings":"","what":"Goodness of fit tests for distance sampling models — ds.gof","title":"Goodness of fit tests for distance sampling models — ds.gof","text":"function deprecated, please see gof_ds.","code":""},{"path":"/reference/ds.gof.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Goodness of fit tests for distance sampling models — ds.gof","text":"","code":"ds.gof(model, breaks = NULL, nc = NULL, qq = TRUE, ks = FALSE, ...)"},{"path":"/reference/ds.gof.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Goodness of fit tests for distance sampling models — ds.gof","text":"model deprecated. breaks deprecated. nc deprecated. qq deprecated. ks deprecated. ... deprecated.","code":""},{"path":"/reference/ds.gof.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Goodness of fit tests for distance sampling models — ds.gof","text":"Nothing, deprecated.","code":""},{"path":[]},{"path":"/reference/ds.gof.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Goodness of fit tests for distance sampling models — ds.gof","text":"David L Miller","code":""},{"path":"/reference/ds.html","id":null,"dir":"Reference","previous_headings":"","what":"Fit detection functions and calculate abundance from line or point transect data — ds","title":"Fit detection functions and calculate abundance from line or point transect data — ds","text":"function fits detection functions line point transect data (provided survey information supplied) calculates abundance density estimates. examples illustrate basic types analysis using ds().","code":""},{"path":"/reference/ds.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Fit detection functions and calculate abundance from line or point transect data — ds","text":"","code":"ds( data, truncation = ifelse(is.null(cutpoints), ifelse(is.null(data$distend), max(data$distance), max(data$distend)), max(cutpoints)), transect = \"line\", formula = ~1, key = c(\"hn\", \"hr\", \"unif\"), adjustment = c(\"cos\", \"herm\", \"poly\"), nadj = NULL, order = NULL, scale = c(\"width\", \"scale\"), cutpoints = NULL, dht_group = FALSE, monotonicity = ifelse(formula == ~1, \"strict\", \"none\"), region_table = NULL, sample_table = NULL, obs_table = NULL, convert_units = 1, er_var = ifelse(transect == \"line\", \"R2\", \"P2\"), method = \"nlminb\", mono_method = \"slsqp\", quiet = FALSE, debug_level = 0, initial_values = NULL, max_adjustments = 5, er_method = 2, dht_se = TRUE, optimizer = \"both\", winebin = NULL, dht.group, region.table, sample.table, obs.table, convert.units, er.var, debug.level, initial.values, max.adjustments )"},{"path":"/reference/ds.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Fit detection functions and calculate abundance from line or point transect data — ds","text":"data data.frame containing least column called distance numeric vector containing distances. NOTE! column called size data interpreted group/cluster size, see section \"Clusters/groups\", . One can supply data \"flat file\" supply region_table, sample_table obs_table, see \"Data format\", flatfile. truncation either truncation distance (numeric, e.g. 5) percentage (string, e.g. \"15%\"). Can supplied list elements left right left truncation required (e.g. list(left=1,right=20) list(left=\"1%\",right=\"15%\") even list(left=\"1\",right=\"15%\")). default exact distances maximum observed distance used right truncation. data binned, right truncation largest bin end point. Default left truncation set zero. transect indicates transect type \"line\" (default) \"point\". formula formula scale parameter. CDS analysis leave default ~1. key key function use; \"hn\" gives half-normal (default), \"hr\" gives hazard-rate \"unif\" gives uniform. Note uniform key used, covariates included model. adjustment adjustment terms use; \"cos\" gives cosine (default), \"herm\" gives Hermite polynomial \"poly\" gives simple polynomial. value NULL indicates adjustments fitted. nadj number adjustment terms fit. absence covariates formula, default value (NULL) select via AIC (using sequential forward selection algorithm) max.adjustment adjustments (unless order specified). covariates present model formula, default value NULL results adjustment terms fitted model. non-negative integer value cause specified number adjustments fitted. Supplying integer value allow use adjustment terms addition specifying covariates model. order adjustment terms used depend keyand adjustment. key=\"unif\", adjustments order 1, 2, 3, ... fitted adjustment = \"cos\" order 2, 4, 6, ... otherwise. key=\"hn\" \"hr\" adjustments order 2, 3, 4, ... fitted adjustment = \"cos\" order 4, 6, 8, ... otherwise. See Buckland et al. (2001, p. 47) details. order order adjustment terms fit. default value (NULL) results ds choosing orders use - see nadj. Otherwise scalar positive integer value can used fit single adjustment term specified order, vector positive integers fit multiple adjustment terms specified orders. simple Hermite polynomial adjustments, even orders allowed. number adjustment terms specified must match nadj (nadj can default NULL value). scale scale distances adjustment terms divided. Defaults \"width\", scaling truncation distance. key uniform \"width\" used. option \"scale\": scale parameter detection cutpoints data binned, vector gives cutpoints bins. Supplying distance column data specifying cutpoints recommended approach standard binned analyses. Ensure first element 0 (left truncation distance) last distance end furthest bin. (Default NULL, binning.) provided distbegin distend columns data (note used cutpoints constant across data, e.g. planes flying differing altitudes) specify cutpoints argument cause distbegin distend columns data overwritten. dht_group density abundance estimates consider groups size 1 (abundance groups) dht_group=TRUE abundance individuals (group size taken account), dht_group=FALSE. Default FALSE (abundance individuals calculated). monotonicity detection function constrained monotonicity weakly (\"weak\"), strictly (\"strict\") (\"none\" FALSE). See Monotonicity, . (Default \"strict\"). default models without covariates detection function, covariates present. region_table data_frame two columns: Region.Label label region Area area region region_table one row stratum. stratification region_table one entry Area corresponding total survey area. Area omitted density estimates produced. sample_table data.frame mapping regions samples (.e. transects). three columns: Sample.Label label sample Region.Label label region sample belongs . Effort effort expended sample (e.g. transect length). obs_table data.frame mapping individual observations (objects) regions samples. three columns: object unique numeric identifier observation Region.Label label region sample belongs Sample.Label label sample convert_units conversion units abundance estimation, see \"Units\", . (Defaults 1, implying units \"correct\" already.) er_var encounter rate variance estimator use abundance estimates required. Defaults \"R2\" line transects \"P2\" point transects (>= 1.0.9, earlier versions <= 1.0.8 used \"P3\" estimator default points). See dht2 information complex options required. method optimization method use (method usable optim optimx). Defaults \"nlminb\". mono_method optimization method use monotonicity enforced. Can either slsqp solnp. Defaults slsqp. quiet suppress non-essential messages (useful bootstraps etc). Default value FALSE. debug_level print debugging output. 0=none, 1-3 increasing levels debugging output. initial_values list named starting values, see mrds_opt. allowed AIC term selection used. max_adjustments maximum number adjustments try (default 5) used order=NULL. er_method encounter rate variance calculation: default = 2 gives method Innes et al, using expected counts encounter rate. Setting 1 gives observed counts (matches Distance Windows) 0 uses binomial variance (useful rare situation study area = surveyed area). See dht.se details. dht_se uncertainty calculated using dht? Safe leave TRUE, used bootdht. optimizer default set ''. case R optimizer used present MCDS optimizer also used. result best likelihood value selected. run specified optimizer set value either 'R' 'MCDS'. See mcds_dot_exe setup instructions. winebin trying use MCDS.exe optimizer non-windows system may need specify winebin. Please see mcds_dot_exe details. dht.group deprecated, see argument underscore, . region.table deprecated, see argument underscore, . sample.table deprecated, see argument underscore, . obs.table deprecated, see argument underscore, . convert.units deprecated, see argument underscore, . er.var deprecated, see argument underscore, . debug.level deprecated, see argument underscore, . initial.values deprecated, see argument underscore, . max.adjustments deprecated, see argument underscore, .","code":""},{"path":"/reference/ds.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Fit detection functions and calculate abundance from line or point transect data — ds","text":"list elements: ddf detection function model object. dht abundance/density information (survey region data supplied, else NULL)","code":""},{"path":"/reference/ds.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Fit detection functions and calculate abundance from line or point transect data — ds","text":"abundance estimates required data.frames region_table sample_table must supplied. data contain columns Region.Label Sample.Label data.frame obs_table must also supplied. Note stratification applies abundance estimates detection function level. Density abundance estimates, corresponding estimates variance confidence intervals, calculated using methods described Buckland et al. (2001) sections 3.6.1 3.7.1 (details can found documentation dht). advanced abundance/density estimation please see dht dht2 functions. Examples distance sampling analyses available http://examples.distancesampling.org/. Hints tips fitting (particularly optimisation issues) mrds_opt manual page.","code":""},{"path":"/reference/ds.html","id":"clusters-groups","dir":"Reference","previous_headings":"","what":"Clusters/groups","title":"Fit detection functions and calculate abundance from line or point transect data — ds","text":"Note data contains column named size, cluster size estimated density/abundance based clustered analysis data. Setting column NULL perform non-clustered analysis (example \"size\" means something else dataset).","code":""},{"path":"/reference/ds.html","id":"truncation","dir":"Reference","previous_headings":"","what":"Truncation","title":"Fit detection functions and calculate abundance from line or point transect data — ds","text":"right truncation point default set largest observed distance bin end point. default appropriate data can often cause model convergence failures. recommended one plots histogram observed distances prior model fitting get feel appropriate truncation distance. (Similar arguments go left truncation, appropriate). Buckland et al (2001) provide guidelines truncation. specified percentage, largest right smallest left percent distances discarded. Percentages supplied using binned data. left truncation, two options: (1) fit detection function truncated data (happens set left). assume g(x)=1 truncation point. (2) manually remove data distances less left truncation distance – effectively move centre line truncation distance (needs done calling ds). assumes detection certain left truncation distance. former strategy weaker assumption, give higher variance detection function close line data tell fit – relying data left truncation point assumed shape detection function. latter appropriate case aerial surveys, area plane visible observers, probability detection certain smallest distance.","code":""},{"path":"/reference/ds.html","id":"binning","dir":"Reference","previous_headings":"","what":"Binning","title":"Fit detection functions and calculate abundance from line or point transect data — ds","text":"Note binning performed bin 1 distances greater equal cutpoint 1 (>=0 left truncation distance) less cutpoint 2. Bin 2 distances greater equal cutpoint 2 less cutpoint 3 .","code":""},{"path":"/reference/ds.html","id":"monotonicity","dir":"Reference","previous_headings":"","what":"Monotonicity","title":"Fit detection functions and calculate abundance from line or point transect data — ds","text":"adjustment terms used, possible detection function always decrease increasing distance. unrealistic can lead bias. avoid , detection function can constrained monotonicity (default detection functions without covariates). Monotonicity constraints supported similar way described Buckland et al (2001). 20 equally spaced points range detection function (left right truncation) evaluated round optimisation function constrained either always less value zero (\"weak\") value less equal previous point (monotonically decreasing; \"strict\"). See also check.mono. Even monotonicity constraints, checks still made detection function monotonic, see check.mono.","code":""},{"path":"/reference/ds.html","id":"units","dir":"Reference","previous_headings":"","what":"Units","title":"Fit detection functions and calculate abundance from line or point transect data — ds","text":"extrapolating entire survey region important unit measurements consistent converted consistency. conversion factor can specified convert_units argument. values Area region_table, must made consistent units Effort sample_table units distance data.frame analyzed. easiest units Area square units Effort necessary convert units distance units Effort. example, Effort entered kilometres Area square kilometres distance metres using convert_units=0.001 convert metres kilometres, density expressed square kilometres consistent units Area. However, can different units long appropriate composite value convert_units chosen. Abundance survey region can expressed : *N/Area survey region, N abundance covered (sampled) region, area sampled region units Effort * distance. sampled region multiplied convert_units, chosen result units Area. example, Effort entered kilometres, Area hectares (100m x 100m) distance metres, using convert_units=10 convert units hectares (100 convert metres 100 metres distance .1 convert km 100m units).","code":""},{"path":"/reference/ds.html","id":"data-format","dir":"Reference","previous_headings":"","what":"Data format","title":"Fit detection functions and calculate abundance from line or point transect data — ds","text":"One can supply data simply fit detection function. However, abundance/density estimates necessary information required. Either region_table, sample_table obs_table data.frames can supplied data can supplied \"flat file\" data argument. format row data additional information ordinarily tables. usually means additional columns named: Sample.Label, Region.Label, Effort Area observation. See flatfile example.","code":""},{"path":"/reference/ds.html","id":"density-estimation","dir":"Reference","previous_headings":"","what":"Density estimation","title":"Fit detection functions and calculate abundance from line or point transect data — ds","text":"column Area omitted, density estimate generated note degrees freedom/standard errors/confidence intervals match density estimates made Area column present.","code":""},{"path":"/reference/ds.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Fit detection functions and calculate abundance from line or point transect data — ds","text":"Buckland, S.T., Anderson, D.R., Burnham, K.P., Laake, J.L., Borchers, D.L., Thomas, L. (2001). Distance Sampling. Oxford University Press. Oxford, UK. Buckland, S.T., Anderson, D.R., Burnham, K.P., Laake, J.L., Borchers, D.L., Thomas, L. (2004). Advanced Distance Sampling. Oxford University Press. Oxford, UK.","code":""},{"path":[]},{"path":"/reference/ds.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Fit detection functions and calculate abundance from line or point transect data — ds","text":"David L. Miller","code":""},{"path":"/reference/ds.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Fit detection functions and calculate abundance from line or point transect data — ds","text":"","code":"# An example from mrds, the golf tee data. library(Distance) data(book.tee.data) tee.data <- subset(book.tee.data$book.tee.dataframe, observer==1) ds.model <- ds(tee.data, 4) #> Starting AIC adjustment term selection. #> Fitting half-normal key function #> AIC= 311.138 #> Fitting half-normal key function with cosine(2) adjustments #> AIC= 313.124 #> #> Half-normal key function selected. #> No survey area information supplied, only estimating detection function. summary(ds.model) #> #> Summary for distance analysis #> Number of observations : 124 #> Distance range : 0 - 4 #> #> Model : Half-normal key function #> AIC : 311.1385 #> Optimisation: mrds (nlminb) #> #> Detection function parameters #> Scale coefficient(s): #> estimate se #> (Intercept) 0.6632435 0.09981249 #> #> Estimate SE CV #> Average p 0.5842744 0.04637627 0.07937412 #> N in covered region 212.2290462 20.85130344 0.09824906 plot(ds.model) # same model, but calculating abundance # need to supply the region, sample and observation tables region <- book.tee.data$book.tee.region samples <- book.tee.data$book.tee.samples obs <- book.tee.data$book.tee.obs ds.dht.model <- ds(tee.data, 4, region_table=region, sample_table=samples, obs_table=obs) #> Starting AIC adjustment term selection. #> Fitting half-normal key function #> AIC= 311.138 #> Fitting half-normal key function with cosine(2) adjustments #> AIC= 313.124 #> #> Half-normal key function selected. summary(ds.dht.model) #> #> Summary for distance analysis #> Number of observations : 124 #> Distance range : 0 - 4 #> #> Model : Half-normal key function #> AIC : 311.1385 #> Optimisation: mrds (nlminb) #> #> Detection function parameters #> Scale coefficient(s): #> estimate se #> (Intercept) 0.6632435 0.09981249 #> #> Estimate SE CV #> Average p 0.5842744 0.04637627 0.07937412 #> N in covered region 212.2290462 20.85130344 0.09824906 #> #> Summary for clusters #> #> Summary statistics: #> Region Area CoveredArea Effort n k ER se.ER cv.ER #> 1 1 1040 1040 130 72 6 0.5538462 0.02926903 0.05284685 #> 2 2 640 640 80 52 5 0.6500000 0.08292740 0.12758061 #> 3 Total 1680 1680 210 124 11 0.5904762 0.03641856 0.06167659 #> #> Abundance: #> Label Estimate se cv lcl ucl df #> 1 1 123.22977 11.75088 0.09535744 101.72724 149.2774 43.918771 #> 2 2 88.99928 13.37273 0.15025666 62.88926 125.9495 7.658528 #> 3 Total 212.22905 21.33324 0.10051991 173.30068 259.9019 40.063051 #> #> Density: #> Label Estimate se cv lcl ucl df #> 1 1 0.1184902 0.01129892 0.09535744 0.09781465 0.1435359 43.918771 #> 2 2 0.1390614 0.02089490 0.15025666 0.09826447 0.1967961 7.658528 #> 3 Total 0.1263268 0.01269836 0.10051991 0.10315517 0.1547035 40.063051 #> #> Summary for individuals #> #> Summary statistics: #> Region Area CoveredArea Effort n k ER se.ER cv.ER mean.size #> 1 1 1040 1040 130 229 6 1.761538 0.1165805 0.06618107 3.180556 #> 2 2 640 640 80 152 5 1.900000 0.3342319 0.17591151 2.923077 #> 3 Total 1680 1680 210 381 11 1.814286 0.1463570 0.08066920 3.072581 #> se.mean #> 1 0.2086982 #> 2 0.2261991 #> 3 0.1537082 #> #> Abundance: #> Label Estimate se cv lcl ucl df #> 1 1 391.9391 40.50494 0.1033450 317.2772 484.1706 27.423274 #> 2 2 260.1517 50.20666 0.1929899 162.2494 417.1289 5.786773 #> 3 Total 652.0909 73.79805 0.1131714 516.5938 823.1274 23.815556 #> #> Density: #> Label Estimate se cv lcl ucl df #> 1 1 0.3768645 0.03894706 0.1033450 0.3050742 0.4655487 27.423274 #> 2 2 0.4064871 0.07844791 0.1929899 0.2535147 0.6517639 5.786773 #> 3 Total 0.3881493 0.04392741 0.1131714 0.3074963 0.4899568 23.815556 #> #> Expected cluster size #> Region Expected.S se.Expected.S cv.Expected.S #> 1 1 3.180556 0.2114629 0.06648615 #> 2 2 2.923077 0.1750319 0.05987935 #> 3 Total 3.072581 0.1391365 0.04528327 # specify order 2 cosine adjustments ds.model.cos2 <- ds(tee.data, 4, adjustment=\"cos\", order=2) #> Fitting half-normal key function with cosine(2) adjustments #> AIC= 313.124 #> No survey area information supplied, only estimating detection function. summary(ds.model.cos2) #> #> Summary for distance analysis #> Number of observations : 124 #> Distance range : 0 - 4 #> #> Model : Half-normal key function with cosine adjustment term of order 2 #> #> Strict monotonicity constraints were enforced. #> AIC : 313.1239 #> Optimisation: MCDS.exe #> #> Detection function parameters #> Scale coefficient(s): #> estimate se #> (Intercept) 0.6606793 0.1043329 #> #> Adjustment term coefficient(s): #> estimate se #> cos, order 2 -0.01593329 0.1351281 #> #> Estimate SE CV #> Average p 0.5925864 0.08165162 0.1377885 #> N in covered region 209.2521718 31.22787931 0.1492356 # specify order 2 and 3 cosine adjustments, turning monotonicity # constraints off ds.model.cos23 <- ds(tee.data, 4, adjustment=\"cos\", order=c(2, 3), monotonicity=FALSE) #> Fitting half-normal key function with cosine(2,3) adjustments #> AIC= 314.26 #> No survey area information supplied, only estimating detection function. # check for non-monotonicity -- actually no problems check.mono(ds.model.cos23$ddf, plot=TRUE, n.pts=100) #> [1] TRUE # include both a covariate and adjustment terms in the model ds.model.cos2.sex <- ds(tee.data, 4, adjustment=\"cos\", order=2, monotonicity=FALSE, formula=~as.factor(sex)) #> Fitting half-normal key function with cosine(2) adjustments #> Warning: Detection function is not weakly monotonic! #> Warning: Detection function is not strictly monotonic! #> Warning: Detection function is greater than 1 at some distances #> Warning: Detection function is not weakly monotonic! #> Warning: Detection function is not strictly monotonic! #> Warning: Detection function is greater than 1 at some distances #> AIC= 306.019 #> Warning: Detection function is not weakly monotonic! #> Warning: Detection function is not strictly monotonic! #> Warning: Detection function is greater than 1 at some distances #> No survey area information supplied, only estimating detection function. # check for non-monotonicity -- actually no problems check.mono(ds.model.cos2.sex$ddf, plot=TRUE, n.pts=100) #> Warning: Detection function is not weakly monotonic! #> Warning: Detection function is not strictly monotonic! #> Warning: Detection function is greater than 1 at some distances #> [1] FALSE # truncate the largest 10% of the data and fit only a hazard-rate # detection function ds.model.hr.trunc <- ds(tee.data, truncation=\"10%\", key=\"hr\", adjustment=NULL) #> Fitting hazard-rate key function #> Warning: Estimated hazard-rate scale parameter close to 0 (on log scale). Possible problem in data (e.g., spike near zero distance). #> Warning: Estimated hazard-rate scale parameter close to 0 (on log scale). Possible problem in data (e.g., spike near zero distance). #> AIC= 260.267 #> Warning: Estimated hazard-rate scale parameter close to 0 (on log scale). Possible problem in data (e.g., spike near zero distance). #> No survey area information supplied, only estimating detection function. summary(ds.model.hr.trunc) #> #> Summary for distance analysis #> Number of observations : 117 #> Distance range : 0 - 3.104 #> #> Model : Hazard-rate key function #> AIC : 260.2669 #> Optimisation: mrds (nlminb) #> #> Detection function parameters #> Scale coefficient(s): #> estimate se #> (Intercept) 0.5240633 0.4245238 #> #> Shape coefficient(s): #> estimate se #> (Intercept) 0 0.594522 #> #> Estimate SE CV #> Average p 0.6969118 0.1182424 0.1696662 #> N in covered region 167.8835155 29.7381876 0.1771358 # compare AICs between these models: AIC(ds.model) #> df AIC #> ds.model 1 311.1385 AIC(ds.model.cos2) #> df AIC #> ds.model.cos2 2 313.1239 AIC(ds.model.cos23) #> df AIC #> ds.model.cos23 3 314.2601"},{"path":"/reference/ducknest.html","id":null,"dir":"Reference","previous_headings":"","what":"Ducknest line transect survey data — ducknest","title":"Ducknest line transect survey data — ducknest","text":"Simulated line transect survey duck nests, designed reproduce data Figure 2 Anderson Pospahala (1970).","code":""},{"path":"/reference/ducknest.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Ducknest line transect survey data — ducknest","text":"data.frame 534 rows 7 variables Region.Label strata names (single stratum instance) Area size refuge (0 case, actual size 60km^2) Sample.Label transect ID Effort length transects (km) object nest ID distance perpendicular distance (m) Study.Area name wildlife refuge","code":""},{"path":"/reference/ducknest.html","id":"source","dir":"Reference","previous_headings":"","what":"Source","title":"Ducknest line transect survey data — ducknest","text":"Simulated data, distance sampling introductory course, Centre Research Ecological & Environmental Modelling, University St Andrews.","code":""},{"path":"/reference/ducknest.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Ducknest line transect survey data — ducknest","text":"Monte Vista National Wildlife Refuge southern Colorado USA altitude roughly 2400m.","code":""},{"path":"/reference/ducknest.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Ducknest line transect survey data — ducknest","text":"Anderson, D. R., R. S. Pospahala. 1970. Correction bias belt transect studies immotile objects. Journal Wildlife Management 34 (1): 141–146. doi:10.2307/3799501","code":""},{"path":"/reference/DuikerCameraTraps.html","id":null,"dir":"Reference","previous_headings":"","what":"Duiker camera trap survey — DuikerCameraTraps","title":"Duiker camera trap survey — DuikerCameraTraps","text":"Study took place Tai National Park Cote d'Ivoire 2014. Filmed Maxwell's duikers (Philantomba maxwellii) assigned distance intervals; recorded distances midpoints intervals. data includes observations recorded times peak activity.","code":""},{"path":"/reference/DuikerCameraTraps.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Duiker camera trap survey — DuikerCameraTraps","text":"data.frame 6277 rows 6 variables Region.Label strata names (single stratum) Area size study area (40.37 km^2) multiplier spatial effort, proportion circle covered angle view camera (42 degrees cameras) Sample.Label camera station identifier (21 functioning cameras data set) Effort temporal effort, .e. number 2-second time-steps camera operated object unique object ID distance radial distance (m) interval midpoint","code":""},{"path":"/reference/DuikerCameraTraps.html","id":"source","dir":"Reference","previous_headings":"","what":"Source","title":"Duiker camera trap survey — DuikerCameraTraps","text":"Howe, E.J., Buckland, S.T., Després-Einspenner, M.-L. Kühl, H.S. (2017), Distance sampling camera traps. Methods Ecol Evol, 8: 1558-1565. doi:10.1111/2041-210X.12790 Howe, Eric J. et al. (2018), Data : Distance sampling camera traps, Dryad, Dataset, doi:10.5061/dryad.b4c70","code":""},{"path":"/reference/dummy_ddf.html","id":null,"dir":"Reference","previous_headings":"","what":"Detection function objects when detection is certain — dummy_ddf","title":"Detection function objects when detection is certain — dummy_ddf","text":"Create detection function object strip/plot surveys use dht2.","code":""},{"path":"/reference/dummy_ddf.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Detection function objects when detection is certain — dummy_ddf","text":"","code":"dummy_ddf(data, width, left = 0, transect = \"line\")"},{"path":"/reference/dummy_ddf.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Detection function objects when detection is certain — dummy_ddf","text":"data specified ds ddf (including size column) width right truncation left left truncation (default 0, left truncation) transect \"line\" \"point\" transect","code":""},{"path":"/reference/dummy_ddf.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Detection function objects when detection is certain — dummy_ddf","text":"David L Miller","code":""},{"path":"/reference/ETP_Dolphin.html","id":null,"dir":"Reference","previous_headings":"","what":"Eastern Tropical Pacific spotted dolphin survey — ETP_Dolphin","title":"Eastern Tropical Pacific spotted dolphin survey — ETP_Dolphin","text":"Observers aboard tuna vessels detecting dolphin schools along number possibly useful covariates modelling detection function.","code":""},{"path":"/reference/ETP_Dolphin.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Eastern Tropical Pacific spotted dolphin survey — ETP_Dolphin","text":"data.frame 1090 rows 13 variables: Region.Label stratum labels (one) Area size (nmi) stratum Sample.Label transect labels Effort transect length (nmi) object object ID distance perpendicular distance (nmi) LnCluster natural log cluster size Month month detection Beauf.class Beaufort sea state Cue.type initial cue triggering detection Search.method observer method making detection size cluster size Study.Area study area name","code":""},{"path":"/reference/ETP_Dolphin.html","id":"source","dir":"Reference","previous_headings":"","what":"Source","title":"Eastern Tropical Pacific spotted dolphin survey — ETP_Dolphin","text":"Inter-American Tropical Tuna Commission","code":""},{"path":"/reference/ETP_Dolphin.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Eastern Tropical Pacific spotted dolphin survey — ETP_Dolphin","text":"Several different search methods included data 0 binoculars crows nest 2 binoculars elsewhere ship 3 helicopter searching ahead ship 5 radar detects seabirds dolphin schools Several cue types also recorded observers. 1 seabirds school 2 water splashes 3 unspecified 4 floating objects logs","code":""},{"path":"/reference/flatfile.html","id":null,"dir":"Reference","previous_headings":"","what":"The flatfile data format — flatfile","title":"The flatfile data format — flatfile","text":"Distance allows loading data \"flat file\" analyse data (obtain abundance estimates) straight away, provided format flat file correct. One can provide file , example, Excel spreadsheet using readxl::read_xls CSV using read.csv.","code":""},{"path":"/reference/flatfile.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"The flatfile data format — flatfile","text":"row data table corresponds either: (1) observation (2) sample (transect) without observations. either case following columns must present: distance observed distance object object unique identifier observation (required using dht2) Sample.Label identifier sample (transect id) Effort effort transect (e.g. line transect length number times point transect visited) Region.Label label given stratum (see ) Area area strataWhen row represents transect without observations,distanceand observation-specific covariates (includingsizeand detection function covariates) take valueNA`. Note simplest case (one area surveyed ) one Region.Label single corresponding Area duplicated observation. example given provided Eric Rexstad. Additional examples can found http://examples.distancesampling.org/.","code":""},{"path":"/reference/flatfile.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"The flatfile data format — flatfile","text":"","code":"if (FALSE) { # \\dontrun{ library(Distance) # Need to have the readxl package installed from CRAN require(readxl) # Need to get the file path first minke.filepath <- system.file(\"minke.xlsx\", package=\"Distance\") # Load the Excel file, note that col_names=FALSE and we add column names after minke <- read_xlsx(minke.filepath, col_names=FALSE) names(minke) <- c(\"Region.Label\", \"Area\", \"Sample.Label\", \"Effort\", \"distance\") # One may want to call edit(minke) or head(minke) at this point # to examine the data format ## perform an analysis using the exact distances pooled.exact <- ds(minke, truncation=1.5, key=\"hr\", order=0) summary(pooled.exact) ## Try a binned analysis # first define the bins dist.bins <- c(0,.214, .428,.643,.857,1.071,1.286,1.5) pooled.binned <- ds(minke, truncation=1.5, cutpoints=dist.bins, key=\"hr\", order=0) # binned with stratum as a covariate minke$stratum <- ifelse(minke$Region.Label==\"North\", \"N\", \"S\") strat.covar.binned <- ds(minke, truncation=1.5, key=\"hr\", formula=~as.factor(stratum), cutpoints=dist.bins) # Stratified by North/South full.strat.binned.North <- ds(minke[minke$Region.Label==\"North\",], truncation=1.5, key=\"hr\", order=0, cutpoints=dist.bins) full.strat.binned.South <- ds(minke[minke$Region.Label==\"South\",], truncation=1.5, key=\"hr\", order=0, cutpoints=dist.bins) ## model summaries model.sel.bin <- data.frame(name=c(\"Pooled f(0)\", \"Stratum covariate\", \"Full stratification\"), aic=c(pooled.binned$ddf$criterion, strat.covar.binned$ddf$criterion, full.strat.binned.North$ddf$criterion+ full.strat.binned.South$ddf$criterion)) # Note model with stratum as covariate is most parsimonious print(model.sel.bin) } # }"},{"path":"/reference/gof_ds.html","id":null,"dir":"Reference","previous_headings":"","what":"Goodness of fit testing and quantile-quantile plots — gof_ds","title":"Goodness of fit testing and quantile-quantile plots — gof_ds","text":"Goodness fit testing detection function models. continuous distances Kolmogorov-Smirnov Cramer-von Mises tests can used, binned continuous distances used \\(\\chi^2\\) test can used.","code":""},{"path":"/reference/gof_ds.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Goodness of fit testing and quantile-quantile plots — gof_ds","text":"","code":"gof_ds( model, plot = TRUE, chisq = FALSE, nboot = 100, ks = FALSE, nc = NULL, breaks = NULL, ... )"},{"path":"/reference/gof_ds.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Goodness of fit testing and quantile-quantile plots — gof_ds","text":"model fitted detection function. plot TRUE Q-Q plot plotted chisq TRUE chi-squared statistic calculated even models use exact distances. Ignored models use binned distances nboot number replicates use calculate p-values Kolmogorov-Smirnov goodness fit test statistics ks perform Kolmogorov-Smirnov test (involves many bootstraps can take ) nc number evenly-spaced distance classes chi-squared test, chisq=TRUE breaks vector cutpoints use binning, chisq=TRUE ... arguments passed ddf.gof","code":""},{"path":"/reference/gof_ds.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Goodness of fit testing and quantile-quantile plots — gof_ds","text":"Kolmogorov-Smirnov Cramer-von Mises tests based looking quantile-quantile plot produced qqplot.ddf deviations line \\(x=y\\). Kolmogorov-Smirnov test asks question \"largest vertical distance point \\(y=x\\) line?\" uses distance statistic test null hypothesis samples (EDF CDF case) distribution (hence model fits well). deviation \\(y=x\\) line points large reject null hypothesis say model good fit. Rather looking single biggest difference y=x line points Q-Q plot, might prefer think differences line points, since may many smaller differences want take account rather looking one large deviation. null hypothesis , statistic uses sum deviations point line. chi-squared test also run chisq=TRUE. case binning distances required distance data continuous. can specified number equally-spaced bins (using argument nc=) cutpoints bins (using breaks=). test compares number observations given bin number predicted fitted detection function.","code":""},{"path":"/reference/gof_ds.html","id":"details-1","dir":"Reference","previous_headings":"","what":"Details","title":"Goodness of fit testing and quantile-quantile plots — gof_ds","text":"Note bootstrap procedure required Kolmogorov-Smirnov test ensure p-values procedure correct comparing cumulative distribution function (CDF) empirical distribution function (EDF) estimated parameters detection function. nboot parameter controls number bootstraps use. Set 0 avoid computing bootstraps (much faster Kolmogorov-Smirnov results, course).","code":""},{"path":"/reference/gof_ds.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Goodness of fit testing and quantile-quantile plots — gof_ds","text":"","code":"if (FALSE) { # \\dontrun{ # fit and test a simple model for the golf tee data library(Distance) data(book.tee.data) tee.data <- subset(book.tee.data$book.tee.dataframe, observer==1) ds.model <- ds(tee.data,4) # don't make plot gof_ds(ds.model, plot=FALSE) } # }"},{"path":"/reference/golftees.html","id":null,"dir":"Reference","previous_headings":"","what":"Golf tee data — golftees","title":"Golf tee data — golftees","text":"data independent surveys eight observers population 250 groups (760 individuals) golf tees. tees, two colours, placed groups 1 8 survey region 1680 m^2, either exposed surrounding grass, least partially hidden . surveyed 1999 statistics honours class University St Andrews.","code":""},{"path":"/reference/golftees.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Golf tee data — golftees","text":"Data list 4 elements data.frame: book.tee.dataframe object object ID observer observer ID detected detected detected distance perpendicular distance size group size sex number tees group exposure tee height ground book.tee.region Region.Label stratum name Area stratum size book.tee.samples Sample.Label transect label Region.Label stratum name Effort transect length book.tee.obs object object ID Region.Label stratum detected Sample.Label transect detected","code":""},{"path":"/reference/golftees.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Golf tee data — golftees","text":"treat group golf tees single animal size equal number tees group; yellow tees male, green female; tees exposed surrounding grass classified exposed, others unexposed. grateful Miguel Bernal making data available; collected part masters project.","code":""},{"path":"/reference/golftees.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Golf tee data — golftees","text":"Borchers, D. L., S.T. Buckland, W. Zucchini. 2002. Estimating Animal Abundance: Closed Populations. Statistics Biology Health. London: Springer-Verlag. https://link.springer.com/book/10.1007/978-1-4471-3708-5 Buckland, S.T., D.R. Anderson, K.P. Burnham, J.L. Laake, D.L. Borchers, L. Thomas. Advanced Distance Sampling: Estimating Abundance Biological Populations. Oxford University Press. Oxford, 2004.","code":""},{"path":"/reference/logLik.dsmodel.html","id":null,"dir":"Reference","previous_headings":"","what":"log-likelihood value for a fitted detection function — logLik.dsmodel","title":"log-likelihood value for a fitted detection function — logLik.dsmodel","text":"Extract log-likelihood fitted detection function.","code":""},{"path":"/reference/logLik.dsmodel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"log-likelihood value for a fitted detection function — logLik.dsmodel","text":"","code":"# S3 method for class 'dsmodel' logLik(object, ...)"},{"path":"/reference/logLik.dsmodel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"log-likelihood value for a fitted detection function — logLik.dsmodel","text":"object fitted detection function model object ... included S3 completeness, ignored","code":""},{"path":"/reference/logLik.dsmodel.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"log-likelihood value for a fitted detection function — logLik.dsmodel","text":"numeric value giving log-likelihood two attributes: \"df\" \"degrees freedom model (number parameters) \"nobs\" number observations used fit model","code":""},{"path":"/reference/logLik.dsmodel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"log-likelihood value for a fitted detection function — logLik.dsmodel","text":"David L Miller","code":""},{"path":"/reference/logLik.dsmodel.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"log-likelihood value for a fitted detection function — logLik.dsmodel","text":"","code":"if (FALSE) { # \\dontrun{ library(Distance) data(minke) model <- ds(minke, truncation=4) # extract the log likelihood logLik(model) } # }"},{"path":"/reference/LTExercise.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulated line transect survey data — LTExercise","title":"Simulated line transect survey data — LTExercise","text":"Simulated line transect survey. Twelve transects, detection function half-normal. True object density 79.8 animals per km^2.","code":""},{"path":"/reference/LTExercise.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Simulated line transect survey data — LTExercise","text":"data.frame 106 rows 7 variables Region.Label strata names (single stratum) Area size study area (1 case, making abundance density equal) Sample.Label transect ID Effort length transects (km) object object ID distance perpendicular distance (m) Study.Area name study area","code":""},{"path":"/reference/LTExercise.html","id":"source","dir":"Reference","previous_headings":"","what":"Source","title":"Simulated line transect survey data — LTExercise","text":"Simulated data, distance sampling introductory course, Centre Research Ecological & Environmental Modelling, University St Andrews.","code":""},{"path":"/reference/LTExercise.html","id":"note","dir":"Reference","previous_headings":"","what":"Note","title":"Simulated line transect survey data — LTExercise","text":"unit object associated dataset","code":""},{"path":"/reference/make_activity_fn.html","id":null,"dir":"Reference","previous_headings":"","what":"Multiplier bootstrap helper functions — make_activity_fn","title":"Multiplier bootstrap helper functions — make_activity_fn","text":"Helper use models specified using activity::fitact fit activity model generate single realisations bootstrapping bootdht.","code":""},{"path":"/reference/make_activity_fn.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Multiplier bootstrap helper functions — make_activity_fn","text":"","code":"make_activity_fn(..., detector_daily_duration = 24)"},{"path":"/reference/make_activity_fn.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Multiplier bootstrap helper functions — make_activity_fn","text":"... parameters specified activity::fitact detector_daily_duration default assume detectors able detect animals 24 hours, able proportion day (say daylight hours), adjust argument accordingly","code":""},{"path":"/reference/make_activity_fn.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Multiplier bootstrap helper functions — make_activity_fn","text":"function generates single bootstrap estimate availability","code":""},{"path":"/reference/make_activity_fn.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Multiplier bootstrap helper functions — make_activity_fn","text":"Uses activity::fitact generate single possible availability estimates based bootstraps. function returns another function, can passed bootdht. recommended try function passing bootdht. See examples template use.","code":""},{"path":"/reference/make_activity_fn.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Multiplier bootstrap helper functions — make_activity_fn","text":"David L Miller","code":""},{"path":"/reference/minke.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulated minke whale data — minke","title":"Simulated minke whale data — minke","text":"Data simulated models fitted 1992/1993 Southern Hemisphere minke whale data collected International Whaling Commission. See Branch Butterworth (2001) survey details (survey design shown figure 1(e)). Data simulated David Borchers.","code":""},{"path":"/reference/minke.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Simulated minke whale data — minke","text":"data.frame 99 observations 5 variables: Region.Label stratum label (\"North\" \"South\") Area stratum area Sample.Label transect identifier Effort transect length distance observed distance object unique object ID","code":""},{"path":"/reference/minke.html","id":"source","dir":"Reference","previous_headings":"","what":"Source","title":"Simulated minke whale data — minke","text":"Shipped Distance Windows.","code":""},{"path":"/reference/minke.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulated minke whale data — minke","text":"Data included R data Excel spreadsheet illustrate \"flat file\" input method. See flatfile load data example analysis.","code":""},{"path":"/reference/minke.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Simulated minke whale data — minke","text":"Branch, T.. D.S. Butterworth (2001) Southern Hemisphere minke whales: standardised abundance estimates 1978/79 1997/98 IDCR-SOWER surveys. Journal Cetacean Research Management 3(2): 143-174 Hedley, S.L., S.T. Buckland. Spatial Models Line Transect Sampling. Journal Agricultural, Biological, Environmental Statistics 9, . 2 (2004): 181-199. doi:10.1198/1085711043578 .","code":""},{"path":"/reference/minke.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Simulated minke whale data — minke","text":"","code":"data(minke) head(minke) #> Region.Label Area Sample.Label Effort distance object #> 1 South 84734 1 86.75 0.10 1 #> 2 South 84734 1 86.75 0.22 2 #> 3 South 84734 1 86.75 0.16 3 #> 4 South 84734 1 86.75 0.78 4 #> 5 South 84734 1 86.75 0.21 5 #> 6 South 84734 1 86.75 0.95 6"},{"path":"/reference/plot.dsmodel.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot a fitted detection function — plot.dsmodel","title":"Plot a fitted detection function — plot.dsmodel","text":"just simple wrapper around plot.ds. See manual page function information.","code":""},{"path":"/reference/plot.dsmodel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot a fitted detection function — plot.dsmodel","text":"","code":"# S3 method for class 'dsmodel' plot(x, pl.den = 0, ...)"},{"path":"/reference/plot.dsmodel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot a fitted detection function — plot.dsmodel","text":"x object class dsmodel. pl.den shading density histogram (default 0, shading) ... extra arguments passed plot.ds.","code":""},{"path":"/reference/plot.dsmodel.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot a fitted detection function — plot.dsmodel","text":"NULL, just produces plot.","code":""},{"path":[]},{"path":"/reference/plot.dsmodel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Plot a fitted detection function — plot.dsmodel","text":"David L. Miller","code":""},{"path":"/reference/predict.dsmodel.html","id":null,"dir":"Reference","previous_headings":"","what":"Predictions from a fitted detection function — predict.dsmodel","title":"Predictions from a fitted detection function — predict.dsmodel","text":"Predict detection probabilities (effective strip widths/effective areas detection) fitted distance sampling model using either original data (.e., \"fitted\" values) using new data.","code":""},{"path":"/reference/predict.dsmodel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Predictions from a fitted detection function — predict.dsmodel","text":"","code":"# S3 method for class 'dsmodel' predict( object, newdata = NULL, compute = FALSE, esw = FALSE, se.fit = FALSE, ... )"},{"path":"/reference/predict.dsmodel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Predictions from a fitted detection function — predict.dsmodel","text":"object ds model object. newdata new data.frame prediction, must include column called \"distance\". compute TRUE compute values use fitted values stored model object. esw TRUE, returns effective strip half-width (effective area detection point transect models) integral 0 truncation distance (width) \\(p(y)dy\\); otherwise returns integral 0 truncation width \\(p(y)\\pi(y)\\) \\(\\pi(y)=1/w\\) lines \\(\\pi(y)=2r/w^2\\) points. se.fit standard errors predicted probabilities detection (ESW esw=TRUE) estimated? Stored se.fit element ... S3 consistency","code":""},{"path":"/reference/predict.dsmodel.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Predictions from a fitted detection function — predict.dsmodel","text":"list single element: fitted, vector average detection probabilities esw values observation original data ornewdata. se.fit=TRUE additional element $se.fit, contains standard errors probabilities detection ESW.","code":""},{"path":"/reference/predict.dsmodel.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Predictions from a fitted detection function — predict.dsmodel","text":"line transects, effective strip half-width (esw=TRUE) integral fitted detection function either 0 W specified int.range. predicted detection probability average probability simply integral divided distance range. point transect models, esw=TRUE calculates effective area detection (commonly referred \"nu\", integral 2/width^2 * r * g(r). Fitted detection probabilities stored model object returned unless compute=TRUE newdata specified. compute=TRUE used estimate numerical derivatives use delta method approximations variance. Note ordering returned results new data supplied (\"fitted\" values) necessarily data supplied ddf, data (hence results predict) sorted object ID (object).","code":""},{"path":"/reference/predict.dsmodel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Predictions from a fitted detection function — predict.dsmodel","text":"David L Miller","code":""},{"path":"/reference/predict.fake_ddf.html","id":null,"dir":"Reference","previous_headings":"","what":"Prediction for fake detection functions — predict.fake_ddf","title":"Prediction for fake detection functions — predict.fake_ddf","text":"Prediction function dummy detection functions. function returns many 1s rows newdata. esw=TRUE strip width returned.","code":""},{"path":"/reference/predict.fake_ddf.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Prediction for fake detection functions — predict.fake_ddf","text":"","code":"# S3 method for class 'fake_ddf' predict( object, newdata = NULL, compute = FALSE, int.range = NULL, esw = FALSE, ... )"},{"path":"/reference/predict.fake_ddf.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Prediction for fake detection functions — predict.fake_ddf","text":"object model object newdata many 1s return? compute unused, compatibility mrds::predict int.range unused, compatibility mrds::predict esw strip width returned? ... S3 consistency","code":""},{"path":"/reference/predict.fake_ddf.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Prediction for fake detection functions — predict.fake_ddf","text":"David L Miller","code":""},{"path":"/reference/print.dht_result.html","id":null,"dir":"Reference","previous_headings":"","what":"Print abundance estimates — print.dht_result","title":"Print abundance estimates — print.dht_result","text":"See dht2 information printed column names.","code":""},{"path":"/reference/print.dht_result.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Print abundance estimates — print.dht_result","text":"","code":"# S3 method for class 'dht_result' print(x, report = \"abundance\", groups = FALSE, ...)"},{"path":"/reference/print.dht_result.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Print abundance estimates — print.dht_result","text":"x object class dht_result report \"abundance\", \"density\" \"\" reported? groups abundance/density groups produced? ... unused","code":""},{"path":"/reference/print.dsmodel.html","id":null,"dir":"Reference","previous_headings":"","what":"Simple pretty printer for distance sampling analyses — print.dsmodel","title":"Simple pretty printer for distance sampling analyses — print.dsmodel","text":"Simply prints brief description model fitted. detailed information use summary.","code":""},{"path":"/reference/print.dsmodel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Simple pretty printer for distance sampling analyses — print.dsmodel","text":"","code":"# S3 method for class 'dsmodel' print(x, ...)"},{"path":"/reference/print.dsmodel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Simple pretty printer for distance sampling analyses — print.dsmodel","text":"x distance sampling analysis (result calling ds). ... passed , just S3 compatibility.","code":""},{"path":"/reference/print.dsmodel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Simple pretty printer for distance sampling analyses — print.dsmodel","text":"David L. Miller","code":""},{"path":"/reference/print.summary.dsmodel.html","id":null,"dir":"Reference","previous_headings":"","what":"Print summary of distance detection function model object — print.summary.dsmodel","title":"Print summary of distance detection function model object — print.summary.dsmodel","text":"Provides brief summary distance sampling analysis. Including: detection function parameters, model selection criterion, optionally abundance covered (sampled) region standard error.","code":""},{"path":"/reference/print.summary.dsmodel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Print summary of distance detection function model object — print.summary.dsmodel","text":"","code":"# S3 method for class 'summary.dsmodel' print(x, ...)"},{"path":"/reference/print.summary.dsmodel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Print summary of distance detection function model object — print.summary.dsmodel","text":"x summary distance sampling analysis ... unspecified unused arguments S3 consistency","code":""},{"path":"/reference/print.summary.dsmodel.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Print summary of distance detection function model object — print.summary.dsmodel","text":"Nothing, just prints summary.","code":""},{"path":[]},{"path":"/reference/print.summary.dsmodel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Print summary of distance detection function model object — print.summary.dsmodel","text":"David L. Miller Jeff Laake","code":""},{"path":"/reference/PTExercise.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulated point transect survey data — PTExercise","title":"Simulated point transect survey data — PTExercise","text":"Simulated point transect survey. Thirty point transects, detection function half-normal. True object density 79.6 animals per hectare.","code":""},{"path":"/reference/PTExercise.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Simulated point transect survey data — PTExercise","text":"data.frame 144 rows 7 variables Region.Label strata names (single stratum) Area size study area (0 case) Sample.Label transect ID Effort number visits point object object ID distance radial distance (m) Study.Area name study area","code":""},{"path":"/reference/PTExercise.html","id":"source","dir":"Reference","previous_headings":"","what":"Source","title":"Simulated point transect survey data — PTExercise","text":"Simulated data, distance sampling introductory course, Centre Research Ecological & Environmental Modelling, University St Andrews.","code":""},{"path":"/reference/p_dist_table.html","id":null,"dir":"Reference","previous_headings":"","what":"Distribution of probabilities of detection — p_dist_table","title":"Distribution of probabilities of detection — p_dist_table","text":"Generate table frequencies probability detection detection function model. particularly useful employing covariates, can indicate detections small detection probabilities can unduly influential calculating abundance estimates.","code":""},{"path":"/reference/p_dist_table.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Distribution of probabilities of detection — p_dist_table","text":"object fitted detection function bins results binned proportion proportions returned well counts?","code":""},{"path":"/reference/p_dist_table.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Distribution of probabilities of detection — p_dist_table","text":"data.frame probability bins, counts (optionally) proportions. object attribute p_range contains range estimated detection probabilities","code":""},{"path":"/reference/p_dist_table.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Distribution of probabilities of detection — p_dist_table","text":"dht uses Horvitz-Thompson-like estimator, abundance estimates can sensitive errors estimated probabilities. estimator based \\(\\sum 1/ \\hat{P}_a(z_i)\\), means sensitivity greater smaller detection probabilities. rough guide, recommend method used say 5% \\(\\hat{P}_a(z_i)\\) less 0.2, less 0.1. conditions violated, truncation distance w can reduced. causes loss precision relative standard distance sampling without covariates.","code":""},{"path":"/reference/p_dist_table.html","id":"note","dir":"Reference","previous_headings":"","what":"Note","title":"Distribution of probabilities of detection — p_dist_table","text":"function located mrds package documentation provided easy access.","code":""},{"path":"/reference/p_dist_table.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Distribution of probabilities of detection — p_dist_table","text":"Marques, F.F.C. S.T. Buckland. 2004. Covariate models detection function. : Advanced Distance Sampling, eds. S.T. Buckland, D.R. Anderson, K.P. Burnham, J.L. Laake, D.L. Borchers, L. Thomas. Oxford University Press.","code":""},{"path":"/reference/p_dist_table.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Distribution of probabilities of detection — p_dist_table","text":"David L Miller","code":""},{"path":"/reference/p_dist_table.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Distribution of probabilities of detection — p_dist_table","text":"","code":"# example using a model for the minke data data(minke) # fit a model result <- ds(minke, formula=~Region.Label) #> Model contains covariate term(s): no adjustment terms will be included. #> Fitting half-normal key function #> AIC= 57.005 # print table p_dist_table(result) #> p count #> 0 - 0.1 0 #> 0.1 - 0.2 0 #> 0.2 - 0.3 0 #> 0.3 - 0.4 39 #> 0.4 - 0.5 0 #> 0.5 - 0.6 51 #> 0.6 - 0.7 0 #> 0.7 - 0.8 0 #> 0.8 - 0.9 0 #> 0.9 - 1 0 #> Range of probabilities: 0.33 - 0.54 # with proportions p_dist_table(result, proportion=TRUE) #> p count proportion #> 0 - 0.1 0 0.00 #> 0.1 - 0.2 0 0.00 #> 0.2 - 0.3 0 0.00 #> 0.3 - 0.4 39 0.43 #> 0.4 - 0.5 0 0.00 #> 0.5 - 0.6 51 0.57 #> 0.6 - 0.7 0 0.00 #> 0.7 - 0.8 0 0.00 #> 0.8 - 0.9 0 0.00 #> 0.9 - 1 0 0.00 #> Range of probabilities: 0.33 - 0.54"},{"path":"/reference/QAIC.html","id":null,"dir":"Reference","previous_headings":"","what":"Tools for model selection when distance sampling data are overdispersed — QAIC","title":"Tools for model selection when distance sampling data are overdispersed — QAIC","text":"Overdispersion causes AIC select overly-complex models, analysts specify number/order adjustment terms manually fitting distance sampling models data camera traps, rather allowing automated selection using AIC. Howe et al (2019) described two-step method selecting among models detection function face overdispersion.","code":""},{"path":"/reference/QAIC.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Tools for model selection when distance sampling data are overdispersed — QAIC","text":"","code":"QAIC(object, ..., chat = NULL, k = 2) chi2_select(object, ...)"},{"path":"/reference/QAIC.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Tools for model selection when distance sampling data are overdispersed — QAIC","text":"object fitted detection function object ... additional fitted model objects. chat value \\(\\hat{c}\\) used QAIC calculation k penalty per parameter used; default 2","code":""},{"path":"/reference/QAIC.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Tools for model selection when distance sampling data are overdispersed — QAIC","text":"data.frame one row per model supplied, order given","code":""},{"path":"/reference/QAIC.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Tools for model selection when distance sampling data are overdispersed — QAIC","text":"step 1, overdispersion factor (\\(\\hat{c}\\)) computed either (1) key function family, complex model family, chi-square goodness fit test statistic divided degrees freedom (\\(\\hat{c}_1\\)), (2) models candidate set, raw data (\\(\\hat{c}_1\\)). camera trap surveys solitary animals, \\(\\hat{c}_1\\) mean number distance observations recorded single pass animal front trap. surveys social animals employing human observers, \\(\\hat{c}_1\\) mean number detected animals per detected group, camera trap surveys social animals \\(\\hat{c}_1\\) mean number distance observations recorded encounter group animals CT. step two, chi-square goodness fit statistic divided degrees freedom calculated QAIC-minimizing model within key function, model lowest value selected estimation. QAIC() function used select among models key function (step 1). QAIC() uses \\(\\hat{c}_1\\) default, computing model parameters. Alternatively, \\(\\hat{c}_1\\) can calculated raw data included call QAIC(). Users must identify QAIC-minimizing model within key functions resulting data.frame, provide models arguments ch2_select(). chi2_select() computes reports chi-square goodness fit statistic divided degrees freedom models. model lowest value recommended estimation.","code":""},{"path":"/reference/QAIC.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Tools for model selection when distance sampling data are overdispersed — QAIC","text":"Howe, E. J., Buckland, S. T., Després-Einspenner, M.-L., & Kühl, H. S. (2019). Model selection overdispersed distance sampling data. Methods Ecology Evolution, 10(1), 38–47. doi:10.1111/2041-210X.13082","code":""},{"path":"/reference/QAIC.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Tools for model selection when distance sampling data are overdispersed — QAIC","text":"David L Miller, based code Eric Rexstad explanation Eric Howe.","code":""},{"path":"/reference/QAIC.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Tools for model selection when distance sampling data are overdispersed — QAIC","text":"","code":"library(Distance) data(\"wren_cuecount\") # fit hazard-rate key models w3.hr0 <- ds(wren_cuecount, transect=\"point\", key=\"hr\", adjustment=NULL, truncation=92.5) #> Fitting hazard-rate key function #> AIC= 6621.473 #> No survey area information supplied, only estimating detection function. w3.hr1 <- ds(wren_cuecount, transect=\"point\", key=\"hr\", adjustment=\"cos\", order=2, truncation=92.5) #> Fitting hazard-rate key function with cosine(2) adjustments #> AIC= 6623.473 #> No survey area information supplied, only estimating detection function. w3.hr2 <- ds(wren_cuecount, transect=\"point\", key=\"hr\", adjustment=\"cos\", order=c(2, 4), truncation=92.5) #> Fitting hazard-rate key function with cosine(2,4) adjustments #> AIC= 6625.335 #> No survey area information supplied, only estimating detection function. # fit unform key models w3.u1 <- ds(wren_cuecount, transect=\"point\", key=\"unif\", adjustment=\"cos\", order=1, truncation=92.5) #> Fitting uniform key function with cosine(1) adjustments #> AIC= 6667.045 #> No survey area information supplied, only estimating detection function. w3.u2 <- ds(wren_cuecount, transect=\"point\", key=\"unif\", adjustment=\"cos\", order=c(1,2), monotonicity=\"none\", truncation=92.5) #> Fitting uniform key function with cosine(1,2) adjustments #> ** Warning: Maximum probability of detection is greater than one: invalid model fitted ** #> ** Warning: Maximum probability of detection is greater than one: invalid model fitted ** #> ** Warning: Maximum probability of detection is greater than one: invalid model fitted ** #> Warning: Detection function is not weakly monotonic! #> Warning: Detection function is not strictly monotonic! #> Warning: Detection function is greater than 1 at some distances #> Warning: Detection function is not weakly monotonic! #> Warning: Detection function is not strictly monotonic! #> Warning: Detection function is greater than 1 at some distances #> AIC= 6618.005 #> Warning: Detection function is not weakly monotonic! #> Warning: Detection function is not strictly monotonic! #> Warning: Detection function is greater than 1 at some distances #> No survey area information supplied, only estimating detection function. w3.u3 <- ds(wren_cuecount, transect=\"point\", key=\"unif\", adjustment=\"cos\", order=c(1,2,3), monotonicity=\"none\", truncation=92.5) #> Fitting uniform key function with cosine(1,2,3) adjustments #> ** Warning: Maximum probability of detection is greater than one: invalid model fitted ** #> ** Warning: Maximum probability of detection is greater than one: invalid model fitted ** #> ** Warning: Maximum probability of detection is greater than one: invalid model fitted ** #> Warning: Detection function is not weakly monotonic! #> Warning: Detection function is not strictly monotonic! #> Warning: Detection function is greater than 1 at some distances #> Warning: Detection function is not weakly monotonic! #> Warning: Detection function is not strictly monotonic! #> Warning: Detection function is greater than 1 at some distances #> AIC= 6585.701 #> Warning: Detection function is not weakly monotonic! #> Warning: Detection function is not strictly monotonic! #> Warning: Detection function is greater than 1 at some distances #> No survey area information supplied, only estimating detection function. # fit half-normal key functions w3.hn0 <- ds(wren_cuecount, transect=\"point\", key=\"hn\", adjustment=NULL, truncation=92.5) #> Fitting half-normal key function #> AIC= 6657.954 #> No survey area information supplied, only estimating detection function. w3.hn1 <- ds(wren_cuecount, transect=\"point\", key=\"hn\", adjustment=\"herm\", order=2, truncation=92.5) #> Fitting half-normal key function with Hermite(2) adjustments #> Error in adj.check.order(adj.series, adj.order, key) : #> Hermite polynomial adjustment terms of order < 4 selected #> #> #> All models failed to fit! #> Error: No models could be fitted. # stage 1: calculate QAIC per model set QAIC(w3.hr0, w3.hr1, w3.hr2) # no adjustments smallest #> df QAIC #> w3.hr0 2 241.6884 #> w3.hr1 3 243.6884 #> w3.hr2 4 245.6834 QAIC(w3.u1, w3.u2, w3.u3) # 2 adjustment terms (by 0.07) #> df QAIC #> w3.u1 1 274.4930 #> w3.u2 2 274.4215 #> w3.u3 3 275.0294 QAIC(w3.hn0, w3.hn1) # no adjustments smallest #> Error: object 'w3.hn1' not found # stage 2: select using chi^2/degrees of freedom between sets chi2_select(w3.hr0, w3.u2, w3.hn0) #> criteria #> w3.hr0 25.86191 #> w3.u2 27.08399 #> w3.hn0 27.05415 # example using a pre-calculated chat chat <- attr(QAIC(w3.hr0, w3.hr1, w3.hr2), \"chat\") QAIC(w3.hr0, chat=chat) #> df QAIC #> w3.hr0 2 241.6884"},{"path":"/reference/Savannah_sparrow_1980.html","id":null,"dir":"Reference","previous_headings":"","what":"Savanna sparrow point transects — Savannah_sparrow_1980","title":"Savanna sparrow point transects — Savannah_sparrow_1980","text":"Point transect data collected Colorado 1980/81 examine effect agricultural practices upon avian community.","code":""},{"path":"/reference/Savannah_sparrow_1980.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Savanna sparrow point transects — Savannah_sparrow_1980","text":"data.frame 468 observations (1980) 448 observations (1981) 7 variables: Region.Label stratum label (pasture ID) Area stratum area (set 1 density reported) Sample.Label transect identifier Effort number visits object object ID distance radial distance (m) Study.Area name study area","code":""},{"path":"/reference/Savannah_sparrow_1980.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Savanna sparrow point transects — Savannah_sparrow_1980","text":"Design consisted point transects placed multiple pastures (3 1980 4 1981). many species observed, data Savannah sparrows (Passerculus sandwichensis) included . Data given different Distance Windows example project. individual sighting treated independent observation. corresponds analysis Buckland et al. (2001) Section 8.7. Distance Windows project objects clusters individuals. affect results greatly clusters size 1, results obtained far .","code":""},{"path":"/reference/Savannah_sparrow_1980.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Savanna sparrow point transects — Savannah_sparrow_1980","text":"Knopf, F.L., J.. Sedgwick, R.W. Cannon. (1988) Guild structure riparian avifauna relative seasonal cattle grazing. Journal Wildlife Management 52 (2): 280–290. doi:10.2307/3801235","code":""},{"path":"/reference/sikadeer.html","id":null,"dir":"Reference","previous_headings":"","what":"Sika deer pellet data from southern Scotland — sikadeer","title":"Sika deer pellet data from southern Scotland — sikadeer","text":"sika deer spend time woodland areas, abundance estimates based pellet group counts. Line transect methods applied estimate deer pellet group density geographic block.","code":""},{"path":"/reference/sikadeer.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Sika deer pellet data from southern Scotland — sikadeer","text":"data.frame 1923 rows 11 variables. Region.Label stratum labels Area size (ha) stratum Sample.Label transect labels Defecation.rate rate dung production per individual per day Defecation.rate.SE variability defecation rate Decay.rate time (days) dung become undetectable Decay.rate.SE variability decay rate Effort transect length (km) object object ID distance perpendicular distance (cm) Study.Area study area name","code":""},{"path":"/reference/sikadeer.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Sika deer pellet data from southern Scotland — sikadeer","text":"Data presented Peebleshire portion study described Marques et al. (2001).","code":""},{"path":"/reference/sikadeer.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Sika deer pellet data from southern Scotland — sikadeer","text":"Marques, F.F.C., S.T. Buckland, D. Goffin, C.E. Dixon, D.L. Borchers, B.. Mayle, .J. Peace. (2001). Estimating deer abundance line transect surveys dung: sika deer southern Scotland. Journal Applied Ecology 38 (2): 349–363. doi:10.1046/j.1365-2664.2001.00584.x","code":""},{"path":"/reference/Stratify_example.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulated minke whale data — Stratify_example","title":"Simulated minke whale data — Stratify_example","text":"Data simulated models fitted 1992/1993 Southern Hemisphere minke whale data collected International Whaling Commission. See Branch Butterworth (2001) survey details (survey design shown figure 1(e)). Data simulated David Borchers.","code":""},{"path":"/reference/Stratify_example.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Simulated minke whale data — Stratify_example","text":"data.frame 99 observations 7 variables: Region.Label stratum label (\"North\" \"South\") Area stratum area (square nautical mile) Sample.Label transect identifier Effort transect length (nautical mile) object object ID distance observed distance (nautical mile) Study.Area name study area","code":""},{"path":"/reference/Stratify_example.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Simulated minke whale data — Stratify_example","text":"Branch, T.. D.S. Butterworth. (2001) Southern Hemisphere minke whales: standardised abundance estimates 1978/79 1997/98 IDCR-SOWER surveys. Journal Cetacean Research Management 3(2): 143-174 Hedley, S.L., S.T. Buckland. (2004) Spatial models line transect sampling. Journal Agricultural, Biological, Environmental Statistics 9: 181-199. doi:10.1198/1085711043578 .","code":""},{"path":"/reference/summarize_ds_models.html","id":null,"dir":"Reference","previous_headings":"","what":"Make a table of summary statistics for detection function models — summarize_ds_models","title":"Make a table of summary statistics for detection function models — summarize_ds_models","text":"Provide summary table useful information fitted detection functions. can useful paired knitr's kable function. default models sorted AIC therefore allow models different truncations distance binning.","code":""},{"path":"/reference/summarize_ds_models.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Make a table of summary statistics for detection function models — summarize_ds_models","text":"","code":"summarize_ds_models(..., sort = \"AIC\", output = \"latex\", delta_only = TRUE)"},{"path":"/reference/summarize_ds_models.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Make a table of summary statistics for detection function models — summarize_ds_models","text":"... models summarised sort column sort (default \"AIC\") output output given \"latex\" compatible format \"plain\" text? delta_only output AIC differences (default TRUE)","code":""},{"path":"/reference/summarize_ds_models.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Make a table of summary statistics for detection function models — summarize_ds_models","text":"Note column names LaTeX format, plan manipulate resulting data.frame R, may wish rename columns ease access.","code":""},{"path":"/reference/summarize_ds_models.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Make a table of summary statistics for detection function models — summarize_ds_models","text":"David L Miller","code":""},{"path":"/reference/summarize_ds_models.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Make a table of summary statistics for detection function models — summarize_ds_models","text":"","code":"if (FALSE) { # \\dontrun{ # fit some models to the golf tee data library(Distance) data(book.tee.data) tee.data <- subset(book.tee.data$book.tee.dataframe, observer==1) model_hn <- ds(tee.data,4) model_hr <- ds(tee.data,4, key=\"hr\") summarize_ds_models(model_hr, model_hn, output=\"plain\") } # }"},{"path":"/reference/summary.dht_bootstrap.html","id":null,"dir":"Reference","previous_headings":"","what":"Summarize bootstrap abundance uncertainty estimate output — summary.dht_bootstrap","title":"Summarize bootstrap abundance uncertainty estimate output — summary.dht_bootstrap","text":"simple function calculate summaries bootstrap output generated bootdht.","code":""},{"path":"/reference/summary.dht_bootstrap.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Summarize bootstrap abundance uncertainty estimate output — summary.dht_bootstrap","text":"","code":"# S3 method for class 'dht_bootstrap' summary(object, alpha = 0.05, ...)"},{"path":"/reference/summary.dht_bootstrap.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Summarize bootstrap abundance uncertainty estimate output — summary.dht_bootstrap","text":"object output bootdht alpha value use confidence interval calculation (obtain alpha/2 1-alpha/2 intervals ... S3 compatibility, unused.","code":""},{"path":"/reference/summary.dht_bootstrap.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Summarize bootstrap abundance uncertainty estimate output — summary.dht_bootstrap","text":"data.frame summary statistics","code":""},{"path":"/reference/summary.dht_bootstrap.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Summarize bootstrap abundance uncertainty estimate output — summary.dht_bootstrap","text":"Summaries made numeric outputs. median mean reported allow assessment bias. coefficient variation reported (column cv) based median calculated bootstraps.","code":""},{"path":"/reference/summary.dsmodel.html","id":null,"dir":"Reference","previous_headings":"","what":"Summary of distance sampling analysis — summary.dsmodel","title":"Summary of distance sampling analysis — summary.dsmodel","text":"Provides brief summary distance sampling analysis. includes parameters, model selection criterion, optionally abundance covered (sampled) region standard error.","code":""},{"path":"/reference/summary.dsmodel.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Summary of distance sampling analysis — summary.dsmodel","text":"","code":"# S3 method for class 'dsmodel' summary(object, ...)"},{"path":"/reference/summary.dsmodel.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Summary of distance sampling analysis — summary.dsmodel","text":"object distance analysis ... unspecified unused arguments S3 consistency","code":""},{"path":"/reference/summary.dsmodel.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Summary of distance sampling analysis — summary.dsmodel","text":"list extracted summarized objects","code":""},{"path":"/reference/summary.dsmodel.html","id":"note","dir":"Reference","previous_headings":"","what":"Note","title":"Summary of distance sampling analysis — summary.dsmodel","text":"function just calls summary.ds dht, collates prints results nice way.","code":""},{"path":"/reference/summary.dsmodel.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Summary of distance sampling analysis — summary.dsmodel","text":"David L. Miller","code":""},{"path":"/reference/Systematic_variance_1.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulation of encounter rate variance — Systematic_variance_1","title":"Simulation of encounter rate variance — Systematic_variance_1","text":"systematic_var_1 consists simulated line transect data large differences transect length. systematic_var_2 transect length gradient coupled strong animal gradient; exaggerating encounter rate variance transects.","code":""},{"path":"/reference/Systematic_variance_1.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Simulation of encounter rate variance — Systematic_variance_1","text":"data.frame 253 observations (systematic_var_1) 256 observations (systematic_var_2) 7 variables: Region.Label stratum label (default) Area stratum area (0.5 km^2) Sample.Label transect identifier Effort transect length (km) object object ID distance perpendicular distance (m) Study.Area name study area","code":""},{"path":"/reference/Systematic_variance_1.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Simulation of encounter rate variance — Systematic_variance_1","text":"True population size 1000 objects study area size 0.5 km^2; true density 2000 objects per km.","code":""},{"path":"/reference/Systematic_variance_1.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Simulation of encounter rate variance — Systematic_variance_1","text":"Fewster, R.M., S.T. Buckland, K.P. Burnham, D.L. Borchers, P.E. Jupp, J.L. Laake L. Thomas. (2009) Estimating encounter rate variance distance sampling. Biometrics 65 (1): 225–236. doi:10.1111/j.1541-0420.2008.01018.x","code":""},{"path":"/reference/unflatten.html","id":null,"dir":"Reference","previous_headings":"","what":"Unflatten flatfile data.frames — unflatten","title":"Unflatten flatfile data.frames — unflatten","text":"Sometimes data provided flatfile format, really want mrds format (, distance data, observation table, sample table region table format). function undoes flattening, assuming data correct columns.","code":""},{"path":"/reference/unflatten.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Unflatten flatfile data.frames — unflatten","text":"","code":"unflatten(data)"},{"path":"/reference/unflatten.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Unflatten flatfile data.frames — unflatten","text":"data data flatfile format (data.frame)","code":""},{"path":"/reference/unflatten.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Unflatten flatfile data.frames — unflatten","text":"list four data.frames: distance data, observation table, sample table, region table.","code":""},{"path":"/reference/unflatten.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Unflatten flatfile data.frames — unflatten","text":"David L Miller","code":""},{"path":"/reference/unimak.html","id":null,"dir":"Reference","previous_headings":"","what":"Simulated line transect survey data with covariates — unimak","title":"Simulated line transect survey data with covariates — unimak","text":"Simulated line transect survey. eight line transects, detection function half-normal.","code":""},{"path":"/reference/unimak.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Simulated line transect survey data with covariates — unimak","text":"data.frame 60 rows 9 variables Region.Label strata names (single stratum) Area size study area (mi^2) Sample.Label transect ID Effort transect length (mi) object object ID distance perpendicular distance (km) MSTDO time since medication taken observer (min) Hour time day sighting (hour) Study.Area name study area","code":""},{"path":"/reference/unimak.html","id":"source","dir":"Reference","previous_headings":"","what":"Source","title":"Simulated line transect survey data with covariates — unimak","text":"Simulated data, distance sampling introductory course, Centre Research Ecological & Environmental Modelling, University St Andrews.","code":""},{"path":"/reference/unimak.html","id":"note","dir":"Reference","previous_headings":"","what":"Note","title":"Simulated line transect survey data with covariates — unimak","text":"Hour covariate effect detection function, MSTDO affect detection function. Examine ability model selection choose correct model.","code":""},{"path":"/reference/units_table.html","id":null,"dir":"Reference","previous_headings":"","what":"Generate table of unit conversions — units_table","title":"Generate table of unit conversions — units_table","text":"Returns table conversions units used Distance Windows. extracted DistIni.mdb default database.","code":""},{"path":"/reference/units_table.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Generate table of unit conversions — units_table","text":"","code":"units_table()"},{"path":"/reference/units_table.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"Generate table of unit conversions — units_table","text":"David L Miller","code":""},{"path":"/reference/wren.html","id":null,"dir":"Reference","previous_headings":"","what":"Steve Buckland's winter wren surveys — wren","title":"Steve Buckland's winter wren surveys — wren","text":"Observations winter wren (Troglodytes troglodytes L.) collected Steve Buckland woodland/parkland Montrave Estate near Leven, Fife, Scotland.","code":""},{"path":"/reference/wren.html","id":"source","dir":"Reference","previous_headings":"","what":"Source","title":"Steve Buckland's winter wren surveys — wren","text":"Steve Buckland","code":""},{"path":"/reference/wren.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Steve Buckland's winter wren surveys — wren","text":"Four different surveys carried : wren_5min 5-minute point count wren_snapshot snapshot method wren_cuecount cue count wren_lt line transect survey","code":""},{"path":"/reference/wren.html","id":"note","dir":"Reference","previous_headings":"","what":"Note","title":"Steve Buckland's winter wren surveys — wren","text":"wren_5min: 134 observations 8 variables Region.Label stratum name (single stratum) Area size (ha) Montrave study area Sample.Label point label Effort Number visits point object Object ID distance radial distance (m) direction direction detection point Study.Area Montrave Estate wren_snapshot: 119 observations 7 variables Region.Label stratum name (single stratum) Area size (ha) Montrave study area Sample.Label point label Effort Number visits point object Object ID distance radial distance (m) Study.Area Montrave Estate wren_cuecount: 774 observations 9 variables Region.Label stratum name (single stratum) Area size (ha) Montrave study area Sample.Label point label Cue.rate Production rate (per min) cues Cue.rate.SE SE cue production rate object Object ID distance radial distance (m) Search.time Time (min) listening cues Study.Area Montrave Estate wren_lt: 156 observations 8 variables Region.Label stratum name (single stratum) Area size (ha) Montrave study area Sample.Label transect label Effort transect length (km) object Object ID distance perpendicular distance (m) Study.Area Montrave Estate","code":""},{"path":"/reference/wren.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Steve Buckland's winter wren surveys — wren","text":"Buckland, S. T. (2006) Point-transect surveys songbirds: robust methodologies. Auk 123 (2): 345–357.","code":""},{"path":"/news/index.html","id":"distance-200","dir":"Changelog","previous_headings":"","what":"Distance 2.0.0","title":"Distance 2.0.0","text":"CRAN release: 2024-10-24 Requires mrds 3.0.0. mrds called ds fitting detection functions. mrds change optimizer used CDS detection functions - constraint solver slsqp now used. removes need external optimizer MCDS.exe cases. minor changes optimization implemented improve reliability (see NEWS file mrds info). New argument mono_method added previous constraint solver (solnp) can still used. MCDS.exe also still available needed.","code":""},{"path":"/news/index.html","id":"distance-109","dir":"Changelog","previous_headings":"","what":"Distance 1.0.9","title":"Distance 1.0.9","text":"CRAN release: 2023-12-21 Changed default encounter rate estimator point transect surveys P3 P2. (Issue #138) Fixed bug produced NA’s stratum names came ‘Total’ alphabet. (Issue #158) Added additional documentation explaining adjustment term options covariates model. (Issue #156) Fixed dht bootstrap work distbegin distend supplied distance. (Issue #147) Added warning dht bootstrap Sample.Label values unique across strata. (Issue #157) Distance 1.0.9 depends mrds >= 2.3.0 due re-named documentation page links.","code":""},{"path":"/news/index.html","id":"distance-108","dir":"Changelog","previous_headings":"","what":"Distance 1.0.8","title":"Distance 1.0.8","text":"CRAN release: 2023-07-17 Support using MCDS.exe Distance Windows run analyses. can now download MCDS.exe using mrds::download_MCDS_dot_exe run analyses using engine, rather (tandem ) usual R optimizers provided mrds. ds pick best (likelihood) return . See ?ds ?“mcds-dot-exe” details.","code":""},{"path":"/news/index.html","id":"distance-107","dir":"Changelog","previous_headings":"","what":"Distance 1.0.7","title":"Distance 1.0.7","text":"CRAN release: 2022-11-15 dht2 now requires object field flatfile formatted data. following vignette shows add object field data already one: https://examples.distancesampling.org/Distance-cameratraps/camera-distill.html Fix bugs uniform fitted adjustments Fixed error dht2 binned data used distend / distbegin","code":""},{"path":"/news/index.html","id":"distance-106","dir":"Changelog","previous_headings":"","what":"Distance 1.0.6","title":"Distance 1.0.6","text":"CRAN release: 2022-08-20 Fix bug auto binning data using flatfile (#116) convert.units bootdht() properly implemented previous release, fixed (#122) fix bug detection function variance estimation (#125) fix bug bootstrap columns needed character (thanks Nick Wilkinson finding ) fix bug covered area calculation dht2, fixes incorrect density estimate left truncation (#135) experimental support multiple detection functions dht2, joint work T.J. Clark-Wolf, funded Environment Canada. Note now object field required data supplied dht2.","code":""},{"path":"/news/index.html","id":"distance-105","dir":"Changelog","previous_headings":"","what":"Distance 1.0.5","title":"Distance 1.0.5","text":"CRAN release: 2022-03-17 create.bins() -> create_bins() convert.units -> convert_units dht.group -> dht_group region.table -> region_table sample.table -> sample_table obs.table -> obs_table convert.units -> convert_units er.var -> er_var debug.level -> debug_level initial.values -> initial_values max.adjustments -> max_adjustments fix bootdht issue cluster results requests (#103) improve flatfile documentation (thanks Maggie Blake pointing ) fixed bug cutpoint calculations create.bins (#108) order argument ds() now used specify order, fix given number adjustments use new argument nadj (see ?ds info) fix bug polynomial adjustments started wrong order (2 rather 4)","code":""},{"path":"/news/index.html","id":"distance-104","dir":"Changelog","previous_headings":"","what":"Distance 1.0.4","title":"Distance 1.0.4","text":"CRAN release: 2021-08-12 fix bootdht issue arguments ds() found bootdht_Nhat_summarize now reports stratum labels well abundance estimates ease use add function QAIC calculate QAIC overdispersed data, camera trap distance sampling bootdht now less verbose cores>1 bootdht now accepts multipliers bootdht multipliers can now specified using activity package, see ?make_activity_fun fix issue Hermite adjustment order calculation length(order)>1 set.seed can now used bootdht parallel obtain reproducible bootstrap results","code":""},{"path":"/news/index.html","id":"distance-103","dir":"Changelog","previous_headings":"","what":"Distance 1.0.3","title":"Distance 1.0.3","text":"CRAN release: 2021-07-01 fix bug dht2 warnings thrown object column flatfile (https://github.com/DistanceDevelopment/Distance/issues/83) removed silent=TRUE try() around model fitting enable users get error messages mrds fitting. Old behaviour can recovered using quiet=TRUE argument ds() better handling models fail converge AIC adjustment term selection documentation now rmarkdown format fix issue #85 species used detection function post-stratification. Thanks jason-airst reporting bug. fix dht2 bug stratification=“replicate” variance estimation 0 due order operations fix dht2 bug stratification=“effort_sum” encounter rate variance estimation, due incorrect grouping transects strata. Thanks Samantha Ball Jamie McKaughan reporting issue. bootdht can now run parallel via foreach/doParallel packages, see cores argument. multiple multipliers can now specified, example different creation/decay rates stratum new argument er.method ds(), allows refinement encounter rate variance calculation. Default 2 , use er.method=1 get results match Distance Windows. fix issues Satterthwaite degrees freedom calculations geographical stratification used clustered observations Sample fraction may now specified data.frame fractions different transect Fix various bugs dht2 stratification=“replicate”, thanks Sam Ball Jamie McKaughan reporting issues testing.","code":""},{"path":"/news/index.html","id":"distance-102","dir":"Changelog","previous_headings":"","what":"Distance 1.0.2","title":"Distance 1.0.2","text":"CRAN release: 2020-12-01 ds.gof now deprecated goodness--fit testing. gof_ds now preferred. add_df_covar_line (actually located mrds) can now plot probability density functioins point transects bootdht can now use progress package installed give estimated time remaining bootstraps (option progress_bar=“progress”). Alternatively progress bar can shown progress_bar=“none”.","code":""},{"path":"/news/index.html","id":"distance-101","dir":"Changelog","previous_headings":"","what":"Distance 1.0.1","title":"Distance 1.0.1","text":"CRAN release: 2020-07-31 fix bug dht2 object IDs specified flatfile formatted data fix bugs bootdht function crashed models failed fit hessian couldn’t computed better checking data$observer, thanks Martin Biuw pointing fix bug dht2 covered area calculated incorrectly left truncation used point transects add example data camera trap distance sampling, see ?DuikerCameraTrap information Stratum area column (Area) longer required ds(). omitted density estimates returned. Fix bug dht2 used pre-binned data. Thanks Delphine Ducros reporting bug. Fix dht2 bugs Innes et al estimator used encounter rate variance estimation fix bootdht issue convert.units argument handled properly","code":""},{"path":"/news/index.html","id":"distance-100","dir":"Changelog","previous_headings":"","what":"Distance 1.0.0","title":"Distance 1.0.0","text":"CRAN release: 2020-01-31 call now saved model object $call Added lots example data sets new abundance estimation via dht2! Handles complex situations. bootstrap variance estimation via bootdht examples see http://examples.distancesampling.org","code":""},{"path":"/news/index.html","id":"distance-098","dir":"Changelog","previous_headings":"","what":"Distance 0.9.8","title":"Distance 0.9.8","text":"CRAN release: 2019-05-01 Includes reference citation paper ‘Distance Sampling R’. AIC now works multiple models (model classes) thanks Tiago Marques Len Thomas suggestion. Added examples create.bins, ds.gof, gof_ds, summarize_ds_models, logLik.dsmodel AIC.dsmodel. Thanks reviewer Journal Statistical Software paper. Parameters previous fit used starting values next fit AIC used select adjustments distbegin distend specified data distance wasn’t, checkdata() threw error. checkdata() now generates distance column midpoint. Thanks Tom spotting . new argument ds(), max.adjustments gives maximum number adjustment terms add model AIC term selection. Thanks Oscar Dewhurst suggestion.","code":""},{"path":"/news/index.html","id":"distance-097","dir":"Changelog","previous_headings":"","what":"Distance 0.9.7","title":"Distance 0.9.7","text":"CRAN release: 2017-07-03 summarize_ds_models now compare models allowed AIC (binning truncation must ). Thanks Carolin Tröger Eric Rextad highlighting issue. numerical issues cause NAs Hessian, ds() try run dht() estimate abundance (fail), instead throws message returns detection function. Thanks Steve Ahlswede bringing attention.","code":""},{"path":"/news/index.html","id":"distance-096","dir":"Changelog","previous_headings":"","what":"Distance 0.9.6","title":"Distance 0.9.6","text":"CRAN release: 2016-08-10 Coefficients called coefficients (mixture coefficients parameters) summary() results Added gof_ds() easy access goodness fit testing q-q plotting Checking truncation distance checking via .double rather .numeric. Thanks Tiago Marques spotting ! Functions AIC() logLik() now exist quick extraction AIC log-likelihood values. Thanks Tiago Marques suggestion. Added amakihi (point transect) data add extra documentation objects obs.table, thanks Olivier Devineau spotting ","code":""},{"path":"/news/index.html","id":"distance-095","dir":"Changelog","previous_headings":"","what":"Distance 0.9.5","title":"Distance 0.9.5","text":"Truncation percentage now works missing distances (.e. using flatfile). Thanks Len Thomas pointing bug.","code":""},{"path":"/news/index.html","id":"distance-094","dir":"Changelog","previous_headings":"","what":"Distance 0.9.4","title":"Distance 0.9.4","text":"CRAN release: 2015-07-29 Object ID uniqueness stopped abundance estimation working (since NA IDs “unique”). Check areas consistently entered. problematic areas entered identically region, unique used extract region table. Thanks Katy Echave finding bug! Monotonicity constraints applied automated model selection. Thanks Tiago Marques spotting . AIC selection adjustment terms goes 5 terms default, DISTANCE. Thanks Eric Rexstad suggesting .","code":""},{"path":"/news/index.html","id":"distance-093","dir":"Changelog","previous_headings":"","what":"Distance 0.9.3","title":"Distance 0.9.3","text":"CRAN release: 2015-02-05 Updated tests work new unique object ID code. Liberally sprinkled tests suppressMessages()","code":""},{"path":"/news/index.html","id":"distance-092","dir":"Changelog","previous_headings":"","what":"Distance 0.9.2","title":"Distance 0.9.2","text":"CRAN release: 2014-09-16 Now warning columns correctly named correct case. Thanks Richard Borthwick reporting bug. Now checks object IDs unique. Thanks Ricardo Lima & Francisco Azevedo highlighting issue.","code":""},{"path":"/news/index.html","id":"distance-091","dir":"Changelog","previous_headings":"","what":"Distance 0.9.1","title":"Distance 0.9.1","text":"CRAN release: 2014-06-11 Models covariates adjustment terms can actually specified – fully implemented previous version. ds() now tells user models returned (rather previously fitted model) links mrds documentation optimisation issues","code":""},{"path":"/news/index.html","id":"distance-09","dir":"Changelog","previous_headings":"","what":"Distance 0.9","title":"Distance 0.9","text":"CRAN release: 2014-04-22 Flat file support example, see ?flatfile New data set: simulated minke whale data, see ?minke ?flatfile example analysis Models covariates adjustment terms can specified. Default left truncation now 0, default right truncation now largest observed distance furthest bin end.","code":""},{"path":"/news/index.html","id":"distance-081","dir":"Changelog","previous_headings":"","what":"Distance 0.8.1","title":"Distance 0.8.1","text":"another fix binning (redundant code/inconsistent definition docs code). (Thanks Jason Roberts finding .) binning fail NA distances, might occur using simplified data tables check implemented ensure samples consistent (.e. ) effort (Eric Rexstad found bug) clarification stratification occurs abundance/density estimation stage (dht), rather detection function modelling stage (thanks Filipe Dias suggestion) Setting order=0 equivalent adjustment=NULL specify detection function without adjustments. (Eric Rexstad brought attention.)","code":""},{"path":"/news/index.html","id":"distance-080","dir":"Changelog","previous_headings":"","what":"Distance 0.8.0","title":"Distance 0.8.0","text":"CRAN release: 2014-01-09 new simplified table data format (see ?ds) bug binning cutpoints (thanks Colin Beale finding ) removed percentage truncation binned data, doesn’t really make sense","code":""},{"path":"/news/index.html","id":"distance-074","dir":"Changelog","previous_headings":"","what":"Distance 0.7.4","title":"Distance 0.7.4","text":"new initial values argument","code":""},{"path":"/news/index.html","id":"distance-073","dir":"Changelog","previous_headings":"","what":"Distance 0.7.3","title":"Distance 0.7.3","text":"CRAN release: 2013-08-19 remove annoying crash mrds failed fit model NB optimiser underlying mrds (optimx) changed, update packages avoid issues.","code":""},{"path":"/news/index.html","id":"distance-072","dir":"Changelog","previous_headings":"","what":"Distance 0.7.2","title":"Distance 0.7.2","text":"CRAN release: 2013-07-04 message tells user model selected","code":""},{"path":"/news/index.html","id":"distance-071","dir":"Changelog","previous_headings":"","what":"Distance 0.7.1","title":"Distance 0.7.1","text":"CRAN release: 2012-11-08 debugging options bug fixes (see github details) automatic generation adjustments generate poly/herm.","code":""},{"path":"/news/index.html","id":"distance-07","dir":"Changelog","previous_headings":"","what":"Distance 0.7","title":"Distance 0.7","text":"“width” now default scaling","code":""}] diff --git a/docs/sitemap.xml b/docs/sitemap.xml new file mode 100644 index 0000000..6ca9e28 --- /dev/null +++ b/docs/sitemap.xml @@ -0,0 +1,72 @@ + +/404.html +/articles/covariates-distill.html +/articles/index.html +/articles/lines-distill.html +/articles/species-covariate-distill.html +/articles/web-only/alt-optimise/mcds-dot-exe.html +/articles/web-only/ctds/camera-distill.html +/articles/web-only/cues/cuecounts-distill.html +/articles/web-only/differences/differences.html +/articles/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys.html +/articles/web-only/multipliers/multipliers-distill.html +/articles/web-only/multispecies/multispecies-multioccasion-analysis.html +/articles/web-only/points/pointtransects-distill.html +/articles/web-only/pointtransects-distill.html +/articles/web-only/strata/strata-distill.html +/articles/web-only/variance/variance-distill.html +/authors.html +/index.html +/LICENSE-text.html +/news/index.html +/reference/add_df_covar_line.html +/reference/AIC.dsmodel.html +/reference/amakihi.html +/reference/bootdht.html +/reference/bootdht_Dhat_summarize.html +/reference/bootdht_Nhat_summarize.html +/reference/capercaillie.html +/reference/checkdata.html +/reference/ClusterExercise.html +/reference/convert_units.html +/reference/create.bins.html +/reference/create_bins.html +/reference/CueCountingExample.html +/reference/dht2.html +/reference/Distance-package.html +/reference/ds.gof.html +/reference/ds.html +/reference/ducknest.html +/reference/DuikerCameraTraps.html +/reference/dummy_ddf.html +/reference/ETP_Dolphin.html +/reference/flatfile.html +/reference/gof_ds.html +/reference/golftees.html +/reference/index.html +/reference/logLik.dsmodel.html +/reference/LTExercise.html +/reference/make_activity_fn.html +/reference/minke.html +/reference/plot.dsmodel.html +/reference/predict.dsmodel.html +/reference/predict.fake_ddf.html +/reference/print.dht_result.html +/reference/print.dsmodel.html +/reference/print.summary.dsmodel.html +/reference/PTExercise.html +/reference/p_dist_table.html +/reference/QAIC.html +/reference/Savannah_sparrow_1980.html +/reference/sikadeer.html +/reference/Stratify_example.html +/reference/summarize_ds_models.html +/reference/summary.dht_bootstrap.html +/reference/summary.dsmodel.html +/reference/Systematic_variance_1.html +/reference/unflatten.html +/reference/unimak.html +/reference/units_table.html +/reference/wren.html + + diff --git a/man/p_dist_table.Rd b/man/p_dist_table.Rd index 5705dbe..7e52d00 100644 --- a/man/p_dist_table.Rd +++ b/man/p_dist_table.Rd @@ -38,7 +38,6 @@ This function is located in the \code{mrds} package but the documentation is provided here for easy access. } \examples{ -\dontrun{ # example using a model for the minke data data(minke) # fit a model @@ -48,7 +47,6 @@ p_dist_table(result) # with proportions p_dist_table(result, proportion=TRUE) } -} \references{ Marques, F.F.C. and S.T. Buckland. 2004. Covariate models for the detection function. diff --git a/tests/testthat/test_dht2.R b/tests/testthat/test_dht2.R index ca968f6..bf478b1 100644 --- a/tests/testthat/test_dht2.R +++ b/tests/testthat/test_dht2.R @@ -215,9 +215,9 @@ test_that("varflag=0 works", { }) -test_that("0 effort errors", { +data(minke) - data(minke) +test_that("0 effort errors", { minke$object <- NA minke$object[!is.na(minke$distance)] <- 1:sum(!is.na(minke$distance)) @@ -233,3 +233,30 @@ test_that("0 effort errors", { "Some transects have Effort <=0 or NA") }) + +test_that("can accept data.frame and scalar sampling fractions", { + + # Add a sampling fraction + minke.samp.frac <- data.frame(Sample.Label = unique(minke$Sample.Label)) + minke.samp.frac$fraction <- c(rep(0.5,15),rep(1,10)) + # first fitting the detection function + minke_df <- ds(minke, truncation=1.5, adjustment=NULL) + # now estimate abundance using dht2 + # stratum labels are in the Region.Label column + minke_dht2 <- dht2(minke_df, + flatfile=minke, + stratification="geographical", + sample_fraction = minke.samp.frac, + strat_formula=~Region.Label) + # could compare this to minke_df$dht and see the same results + minke_dht2 + # Alternative + minke_dht2 <- dht2(minke_df, + flatfile=minke, + stratification="geographical", + sample_fraction = 0.5, + strat_formula=~Region.Label) + # could compare this to minke_df$dht and see the same results + minke_dht2 + +}) diff --git a/tests/testthat/test_ds.R b/tests/testthat/test_ds.R index 395de3c..09eca95 100644 --- a/tests/testthat/test_ds.R +++ b/tests/testthat/test_ds.R @@ -151,6 +151,15 @@ test_that("Uniform does work after all",{ dd <- suppressMessages(ds(egdata,4,key="unif",order=c(1,2))) expect_equal(unname(dd$ddf$par), c(0.7050144, -0.1056291), tol=par.tol) + # Used to generate an error issue #180 + data(ducknest) + x1 <- ds(ducknest, key="unif", adjustment = NULL) + x2 <- ds(ducknest, key="unif", nadj = 1) + x3 <- ds(ducknest, key="hn", adjustment = NULL) + tmp <- summarize_ds_models(x1, x2, x3, + delta_only = FALSE) + expect_is(tmp, "data.frame") + expect_equal(nrow(tmp), 3) }) diff --git a/vignettes/apa.csl b/vignettes/apa.csl new file mode 100644 index 0000000..3f2ccc8 --- /dev/null +++ b/vignettes/apa.csl @@ -0,0 +1,1539 @@ + + diff --git a/vignettes/covar.bib b/vignettes/covar.bib new file mode 100644 index 0000000..ceefa3c --- /dev/null +++ b/vignettes/covar.bib @@ -0,0 +1,39 @@ + +@Article{Maretal07, + author = {Marques, T. A. and L. Thomas and S. G. Fancy and S. T. Buckland}, + title = {Improving estimates of bird density using multiple covariate distance sampling}, + journal = {The Auk}, + year = {2007}, + volume = {124}, + pages = {1229--1243}, + doi = {10.1642/0004-8038(2007)124[1229:IEOBDU]2.0.CO;2}, + comment = {http://www.creem.st-and.ac.uk/len/papers/MarquesAuk2007.pdf}, + file = {Marquesetal2007.pdf:Marquesetal2007.pdf:PDF}, + groups = {Stats Biology PG Reading List, PB SB paper}, + numero = {13}, + owner = {Tiago}, + paperprinted = {yes}, + subdatabase = {cvonline, distance}, + timestamp = {2006.11.16}, +} +@article{miller_distance_2019, + title = {Distance sampling in R}, + volume = {89}, + copyright = {Copyright (c) 2019 David L. Miller, Eric Rexstad, Len Thomas, Laura Marshall, Jeffrey L. Laake}, + issn = {1548-7660}, + language = {en}, + number = {1}, + journal = {Journal of Statistical Software}, + doi = {10.18637/jss.v089.i01}, + author = {Miller, David L. and Rexstad, Eric and Thomas, Len and Marshall, Laura and Laake, Jeffrey L.}, + month = may, + year = {2019}, + keywords = {distance sampling,abundance estimation,detection function,distance,Horvitz-Thompson,line transect,point transecs,R}, + pages = {1-28}, +} +@Book{buckland2015distance, + title = {Distance sampling: methods and applications}, + publisher = {Springer}, + year = {2015}, + author = {Buckland, Steve and Rexstad, Eric and Marques, Tiago and Oedekoven, Cornelia}, +} \ No newline at end of file diff --git a/vignettes/covariates-distill.Rmd b/vignettes/covariates-distill.Rmd new file mode 100644 index 0000000..fc27121 --- /dev/null +++ b/vignettes/covariates-distill.Rmd @@ -0,0 +1,188 @@ +--- +title: "Incorporating covariates in the detection function" +description: | + Hawaiian amakihi point transect data. +author: + - name: Eric Rexstad + url: http://distancesampling.org + affiliation: CREEM, Univ of St Andrews + affiliation_url: https://creem.st-andrews.ac.uk +date: "`r format(Sys.time(), '%B %Y')`" +output: + bookdown::html_document2: + number_sections: false + toc: true + toc_depth: 2 + base_format: rmarkdown::html_vignette +pkgdown: + as_is: true +bibliography: covar.bib +csl: apa.csl +vignette: > + %\VignetteIndexEntry{Incorporating covariates in the detection function} + %\VignetteEngine{knitr::rmarkdown} + \usepackage[utf8]{inputenc} +--- + +```{r include=FALSE} +knitr::opts_chunk$set(eval=TRUE, echo=TRUE, message=FALSE, warnings=FALSE) +``` + +In this problem, we illustrate fitting multiple covariate distance sampling (MCDS) models to point transect data using a bird survey from Hawaii: data on an abundant species, the Hawaii amakihi *(Hemignathus virens)* is used. This practical is makes use of the `Distance` R package described by Miller et al. [-@miller_distance_2019] duplicating the analysis in Marques et al. [-@Maretal07]. For basic information regarding analysis of point transect data, consult the [point transect example](https://examples.distancesampling.org/Distance-points/pointtransects-distill.html) + +```{r layout="l-page"} +library(Distance) +data(amakihi) +head(amakihi, n=3) +``` + +These data include: + +- `Region.Label` - survey dates (month and year, e.g. 792 is July 1992) which are used as 'strata' +- `Area` - study area size (not used, set to 0) will only produce density estimates, not abundance +- `Sample.Label` - point transect identifier (41 transects) +- `Effort` - survey effort (1 for all points because each point was visited once) +- `distance` - radial distance of detection from observer (meters) +- `month` - +- `OBs` - initials of the observer +- `Sp` - species code (COAM) +- `MAS` - minutes after sunrise +- `HAS` - hour after sunrise +- `Study.Area` - name of the study area (Kana) + +Note that the `Area` column is always zero, hence, detection functions can be fitted to the data, but bird abundance cannot be estimated. The covariates to be considered for possible inclusion into the detection function are `OBs`, `MAS` and `HAS`. + +# Exploratory data analysis + +It is important to gain an understanding of the data prior to fitting detection functions. With this in mind, preliminary analysis of distance sampling data involves: + +* assessing the shape of the collected data, +* considering the level of truncation of distances, and +* exploring patterns in potential covariates. + +We begin by assessing the distribution of distances to decide on a truncation distance (Figure \@ref(fig:basic)). + +```{r basic, fig.cap="Distribution of radial distances of amakihi", fig.dim=c(8,6)} +hist(amakihi$distance, main="Radial distances", xlab="Distance (m)") +``` + +To see if there are differences in the distribution of distances recorded by the different observers and in each hour after sunrise, boxplots can be used. Note how the `~` symbol is used to define the discrete groupings (i.e. observer and hour) (Figure \@ref(fig:box)). + +```{r box, fig.show='hold', fig.cap="Visual assessment of effect of observer and hour since sunrise upon detection.", fig.dim=c(7,5)} +boxplot(amakihi$distance~amakihi$OBs, xlab="Observer", ylab="Distance (m)") +boxplot(amakihi$distance~amakihi$HAS, xlab="Hour", ylab="Distance (m)") +``` + +The components of the boxplot are: + ++ the thick black line indicates the median ++ the lower limit of the box is the first quartile (25th percentile) and the upper limit is the third quartile (75th percentile) ++ the height of the box is the interquartile range (75th - 25th quartiles) ++ the whiskers extend to the most extreme points which are no more than 1.5 times the interquartile range. ++ dots indicate 'outliers' if there are any, i.e. points beyond the range of the whiskers. + +For minutes after sunrise (a continuous variable), we create a scatterplot of MAS (on the $x$-axis) against distances (on the $y$-axis). The plotting symbol (or character) is selected with the argument `pch` (Figure \@ref(fig:scatter)) + +```{r, scatter, fig.cap="Visualisation of detectability as function of minutes since sunrise.", fig.dim=c(7,5)} +scatter.smooth(amakihi$MAS, amakihi$distance, family = "gaussian", pch=20, cex=.9, lpars=list(lwd=3), + xlab="Minutes after sunrise",ylab="Distance (m)") +``` + +Clearly room for right truncation from this figure of the radial distance distribution. Subsequent detection function fitting will use the `truncation` argument in `ds()` to exclude the largest 15\% of the detection distances. + +You may also want to think about potential collinearity (linear relationship) between the covariates - if collinear variables are included in the detection function, they will be explaining some of the same variation in the distances and this will reduce their importance as a potential covariate. How might you investigate the relationship between `HAS` and `MAS`? + +From these plots, infer whether any of the covariates will be useful in explaining the distribution of detection distances. + +# Adjusting the raw covariates + +We would like to treat `OBs` and `HAS` as factor variables as in the original analysis; `OBs` is, by default, treated as a factor variable because it consists of characters rather than numbers. `HAS`, on the other hand, consists of numbers and so by default would be treated as a continuous variable (i.e. non-factor). That is fine if we want the effect of `HAS` to be monotonic (i.e. detectability either increases or decreases as a function of `HAS`). If we want `HAS` to have a non-linear effect on detectability, then we need to indicate to `R` to treat it as a factor as shown below. + +```{r} +amakihi$HAS <- factor(amakihi$HAS) +``` + +One other, more subtle adjustment, is a transformation of the continuous covariate `MAS`. We are considering three possible covariates in our detection function: `OBs`, `HAS` and `MAS`. The first two variables, `OBs` and `HAS`, are both factor variables, and so, essentially, we can think of them as taking on values between 1 and 3 in the case of `OBS`, and 1 to 6 in the case of `HAS`. However, `MAS` can take on values from -18 (detections before sunrise) to >300 and the disparity in scales of measure between `MAS` and the other candidate covariates can lead to difficulties in the performance of the optimizer fitting the detection functions in R. The solution to the difficulty is to scale `MAS` such that it is on a scale (approx. 1 to 5) comparable with the other covariates. + +# Candidate models + +With three potential covariates, there are 8 possible models for the detection function: + ++ No covariates ++ OBs ++ HAS ++ MAS ++ OBs + HAS ++ OBs + MAS ++ HAS + MAS ++ OBs + HAS + MAS + +Even without considering covariates there are also several possible key function/adjustment term combinations available: if all key function/covariate combinations are considered the number of potential models is large. Note that covariates are not allowed if a uniform key function is chosen and if covariate terms are included, adjustment terms are not allowed. Even with these restrictions, it is not best practice to take a scatter gun approach to detection function model fitting. Buckland et al. [-@buckland2015distance] considered 13 combinations of key function/covariates. Here, we look at a subset of these. + +Fit a hazard rate model with no covariates or adjustment terms and make a note of the AIC. Note, that 15\% of the largest distances are truncated - you may have decided on a different truncation distance. + +```{r} +conversion.factor <- convert_units("meter", NULL, "hectare") +amak.hr <- ds(amakihi, transect="point", key="hr", truncation="15%", + adjustment=NULL, convert_units = conversion.factor) +``` + +Now fit a hazard rate model with `OBs` as a covariate in the detection function and make a note of the AIC. Has the AIC reduced by including a covariate? + +```{r} +amak.hr.obs <- ds(amakihi, transect="point", key="hr", formula=~OBs, + truncation="15%", convert_units = conversion.factor) +``` + +Fit a hazard rate model with `OBs` and `MAS` in the detection function: + +```{r} +amak.hr.obs.mas <- ds(amakihi, transect="point", key="hr", formula=~OBs+MAS, + truncation="15%", convert_units = conversion.factor) +``` + +Try fitting other possible formula and decide which model is best in terms of AIC. To quickly compare AIC values from different models, use the `AIC` command as follows (note only models with the same truncation distance can be compared): + +```{r} +AIC(amak.hr, amak.hr.obs, amak.hr.obs.mas) +``` + +Another useful function is `summarize_ds_models` - this has the advantage of ordering the models by AIC (smallest to largest). + +```{r} +knitr::kable(summarize_ds_models(amak.hr, amak.hr.obs, amak.hr.obs.mas), digits=3, + caption="Model selection table for Hawaiian amakihi.") +``` + +Examine the shape of the preferred detection function (including covariates observer and minutes after sunrise) (Figure \@ref(fig:bestmod)). + +```{r bestmod, fig.cap="PDF of best fitting model, including effects of observer and minutes after sunrise.", fig.dim=c(8,6)} +plot(amak.hr.obs.mas, pdf=TRUE, main="Hazard rate with observer and minutes after sunrise.", showpoints=FALSE) +sfzero <- data.frame(OBs="SGF", MAS=0) +sf180 <- data.frame(OBs="SGF", MAS=180) +t1zero <- data.frame(OBs="TJS", MAS=0) +t1180 <- data.frame(OBs="TJS", MAS=180) +t2zero <- data.frame(OBs="TKP", MAS=0) +t2180 <- data.frame(OBs="TKP", MAS=180) +add_df_covar_line(amak.hr.obs.mas, data=sfzero, lty=1, lwd=2,col="blue", pdf=TRUE) +add_df_covar_line(amak.hr.obs.mas, data=sf180, lty=2, lwd=2,col="blue", pdf=TRUE) +add_df_covar_line(amak.hr.obs.mas, data=t1zero, lty=1,lwd=2,col="darkorange", pdf=TRUE) +add_df_covar_line(amak.hr.obs.mas, data=t1180, lty=2, lwd=2,col="darkorange", pdf=TRUE) +add_df_covar_line(amak.hr.obs.mas, data=t2zero, lty=1,lwd=2,col="violet", pdf=TRUE) +add_df_covar_line(amak.hr.obs.mas, data=t2180, lty=2, lwd=2,col="violet", pdf=TRUE) +legend("topright", legend=c("SF, minutes=0", + "SF, minutes=180", + "TS, minutes=0", + "TS, minutes=180", + "TP, minutes=0", + "TP, minutes=180"), + title="Covariate combination: observer and minutes", + lty=rep(c(1,2),times=3), lwd=2, col=rep(c("blue","darkorange","violet"), each=2)) +``` + + +# Comments about the chosen model + +There were three observers involved in the survey. One observer made ~80\% of the detections, with a second observer responsible for a further 15\% and the third observer 5\%. + +# References \ No newline at end of file diff --git a/vignettes/lines-distill.Rmd b/vignettes/lines-distill.Rmd new file mode 100644 index 0000000..3958d9c --- /dev/null +++ b/vignettes/lines-distill.Rmd @@ -0,0 +1,239 @@ +--- +title: "Line transect density estimation" +description: | + Example analysis of line transect data. +author: + - name: Eric Rexstad + url: http://distancesampling.org + affiliation: CREEM, Univ of St Andrews + affiliation_url: https://creem.st-andrews.ac.uk +date: "`r format(Sys.time(), '%B %Y')`" +output: + bookdown::html_document2: + number_sections: false + toc: true + toc_depth: 2 + base_format: rmarkdown::html_vignette +pkgdown: + as_is: true +bibliography: lines.bib +csl: apa.csl +vignette: > + %\VignetteIndexEntry{Line transect density estimation} + %\VignetteEngine{knitr::rmarkdown} + \usepackage[utf8]{inputenc} +--- + +```{r include=FALSE} +knitr::opts_chunk$set(eval=TRUE, echo=TRUE, message=FALSE, warnings=FALSE) +``` + +In this exercise, we use `R` [@r_core_team_r_2019] and the `Distance` package [@miller_distance_2019] to fit different detection function models to line transect survey data of winter wren *(Troglodytes troglodytes)* density and abundance. These data were part of a study described by Buckland [-@Buckland2006]. + +# Objectives + +- Fit a basic detection function using the `ds` function +- Plot and examine a detection function +- Fit different detection function forms. + +# Survey design + +Nineteen line transects were walked twice (Figure \@ref(fig:fig)). + +```{r fig, echo=FALSE, fig.cap="Montrave study area; diagonal lines indicate line transects walked to generate these data.", outwidth='100%', eval=TRUE} +knitr::include_graphics("montrave.JPG") +``` + +The fields of the `wren_lt` data set are: + ++ Region.Label - identifier of regions: in this case there is only one region and set to 'Montrave' **required field** ++ Area - size of the study region (hectares): 33.2ha ++ Sample.Label - line transect identifier (numbered 1-19) **required field** ++ Effort - length of the line transects (km) **required field** ++ object - unique identifier for each detected winter wren ++ distance - perpendicular distance (metres) to each detection **required field** ++ Study.Area - this is the name of the study, 'Montrave 4' + +# Make the data available for R session + +This command assumes that the `Distance` package has been installed on your computer. The R workspace `wren_lt` contains detections of winter wrens from the line transect surveys of Buckland [-@Buckland2006]. + +```{r, echo=TRUE} +library(Distance) +data(wren_lt) +``` + +The effort, or transect length has been adjusted to recognise each transect is walked twice. Examine the first few rows of `wren_lt` using the function `head()` + +```{r,echo=TRUE} +head(wren_lt) +``` + +The object `wren_lt` is a dataframe object made up of rows and columns. + +```{r, echo=TRUE} +sum(!is.na(wren_lt$distance)) +``` + +The code above determines the number of detection distances that are not missing. Why might there be rows in our data where detection distance is missing? Distance would have to be recorded as missing for rows representing transects on which there were no detections. The transect and its effort would need to appear in the data, but without detections, the perpendicular distance would be recorded as missing (NA). + +# Examine the distribution of detection distances + +Gain familiarity with the perpendicular distance data using the `hist()` function (Figure \@ref(fig:basichist)). + +```{r basichist, fig.cap="Distribution of perpendicular distances for winter wren from [@Buckland2006].", fig.dim=c(7,5)} +hist(wren_lt$distance, xlab="Distance (m)", main="Winter wren line transects") +``` + +Note that there appears to be too few detections between 0 and 20m, and too many detections between 20m and 40m. This may be evidence of evasive movement by winter wrens; [see further discussion of this below](#model-selection-is-not-a-cookbook). + +# Specify unit conversions + +> A guaranteed way to produce incorrect results from your analysis is to misspecify the units distances are measured. The `ds` function has an argument `convert.units` where the user provides a value to report density in proper units. Providing an incorrect value will result in estimates that are out by orders of magnitude. + +We can choose the units in which winter wren density is to be reported, we choose *square kilometre*. How to transmit this information to the `ds` function? + +The answer is another function `convert_units`. Arguments to this function are + +- distance_units + - units of measure for perpendicular/radial distances +- effort_units + - units of measure for effort (NULL for point transects) +- area_units + - units of measure for the study area. + +Specify the correct arguments to this function for the winter wren data set. *Note*: units are specified as quoted strings, singular rather than plural; e.g. "meter" rather than "meters" + +```{r} +conversion.factor <- convert_units("meter", "kilometer", "hectare") +``` + +# Fitting a simple detection function model with `ds` + +Detection functions are fitted using the `ds` function and this function requires a data frame to have a column called `distance`. We have this in our `nests` data, therefore, we can simply supply the name of the data frame to the function along with additional arguments. + +Details about the arguments for this function: + ++ `key="hn"` + - fit a half-normal key detection function ++ `adjustment=NULL` + - do not include adjustment terms ++ `convert_units=conversion.factor` + - required because, for this example, the perpendicular distances are in metres and the line transect lengths are in kilometer - this argument converts the perpendicular distance measurements from metres to kilometer. Our density estimates will be reported in number of birds per hectare. + +```{r} +wren.hn <- ds(data=wren_lt, key="hn", adjustment=NULL, convert_units=conversion.factor) +``` + +On calling the `ds` function, information is provided to the screen reminding the user what model has been fitted and the associated AIC value. More information is supplied by applying the `summary()` function to the object created by `ds()`. + +```{r} +summary(wren.hn) +``` + +## The `summary` function + +Examining the output produced by `summary(wren.hn)` notice + +- number of detections used in fitting +- truncation distances +- AIC score +- parameters of the detection function (on a natural log scale) +- estimated probability of detection within the truncation distance +- estimated number of objects in the area covered by survey effort +- summary of the survey (effort, number of transects, number of detections) + - encounter rate and its variability +- estimated abundance and density within the study area + - and measures of precision +- if there are strata, estimates are provided for each stratum +- if objects were detected in groups, there are estimates of abundance of groups and of individuals + + +Visually inspect the fitted detection function with the `plot()` function, specifying the cutpoints histogram with argument `breaks` (Figure \@ref(fig:hnfitted)): + +```{r, hnfitted, fig.cap="Fit of half normal detection function to wren data. Note large number of break points specified at small distances.", fig.dim=c(7,5)} +cutpoints <- c(0,5,10,15,20,30,40,50,65,80,100) +plot(wren.hn, breaks=cutpoints, main="Half normal model, wren line transects") +``` + +Continue to note the presence of evasive movement in this plot of the fit of detection function to the observed data. + +# Specifying different detection functions + +Detection function forms and shapes, are specified by changing the `key` and `adjustment` arguments. + +The options available for `key` detection functions are: + ++ half normal (`key="hn"`) - default ++ hazard rate (`key="hr"`) ++ uniform (`key="unif"`) + +The options available for adjustment terms are: + ++ no adjustment terms (`adjustment=NULL`) ++ cosine (`adjustment="cos"`) - default ++ Hermite polynomial (`adjustment="herm"`) ++ Simple polynomial (`adjustment="poly"`) + +To fit a uniform key function with cosine adjustment terms, use the command: + +```{r} +wren.unif.cos <- ds(wren_lt, key="unif", adjustment="cos", convert_units=conversion.factor) +``` + +When this line of code is executed, multiple models will be fitted, successively adding addition adjustment terms. When the model with four adjustment terms is fit, an error message is returned; but a uniform key with 3 cosine adjustments is fitted and contained in the returned object. + +AIC model selection will be used to fit adjustment terms of up to order 5. + +To fit a hazard rate key function with simple polynomial adjustment terms, then use the command: + +```{r} +wren.hr.poly <- ds(wren_lt, key="hr", adjustment="poly", convert_units=conversion.factor) +``` + +# Model comparison + +Each fitted detection function produces a different estimate of winter wren abundance and density. The estimate depends upon the model chosen. The model selection tool for distance sampling data is AIC. + +```{r} +AIC(wren.hn, wren.hr.poly, wren.unif.cos) +``` +`df` in the AIC table indicates the number of parameters associated with each model. + + +## Absolute goodness of fit + +In addition to the relative ranking of models provided by AIC, it is also important to know whether selected model(s) actually fit the data. The model is the basis of inference, so it is dangerous to make inference from a model that does not fit the data. Goodness of fit is assessed using the function `gof_ds`. This function by default, reports the goodness of fit assessed by the Cramer von-Mises test along with a quantile-quantile plot showing locations of deviations from good fit. Optionally, a $\chi^2$ goodness of fit test and a bootstrap version of the Kolomogorov-Smirnov goodness of fit test can be performed. Using function defaults, we see results only of the Cramer von-Mises test along with the Q-Q plot (Figure \@ref(fig:qq)). + +```{r qq, fig.cap="Q-Q plot of hazard rate key function fitted ot wren line transect data.", fig.dim=c(7,5)} +gof_ds(wren.hr.poly) +``` + +Even though there may have been evasive movement, the goodness of fit statistics are still sufficient for using detection function models for inference. + +# Model comparison tables + +The function `summarise_ds_models` combines the work of `AIC` and `gof_ds` to produce a table of fitted models and summary statistics. + +```{r} +knitr::kable(summarize_ds_models(wren.hn, wren.hr.poly, wren.unif.cos),digits=3, + caption="Model comparison table for wren line transect data, Montrave.") +``` + + +## Model selection is not a cookbook + +The AIC model selection tools suggest the hazard rate key function is the preferred model. However, examine the shape of the hazard rate detection function in contrast to the uniform cosine fitted detection function (Figure \@ref(fig:evasive)). + +```{r, evasive, fig.dim=c(7,5), fig.show='hold', fig.cap="Possible evidence of evasive movement of wrens. Note left figure (hazard rate) with implausible perfect detectability out to 70m, then precipitous decline."} +plot(wren.hr.poly, breaks=cutpoints, main="Hazard rate") +plot(wren.unif.cos, breaks=cutpoints, main="Uniform cosine") +``` + +The fellow who gathered these data (Prof Buckland) maintained the shape of the fitted hazard rate detection function is not plausible. Instead, he chose the uniform key with cosine adjustments for making inference [@Buckland2006, p.352]: + +> Common Chaffinch and Winter Wren showed some evidence of observer avoidance. For 2 of the 12 data sets, this resulted in a fitted hazard rate detection function with certain detection out to ∼60 m, with an implausibly rapid fall-off beyond 70 m. In these two analyses, a model with a slightly higher AIC value and a more plausible fit to the detection function was selected. + +This is an example of moderating objective model selection tools with common sense and understanding of field procedures. + +# References \ No newline at end of file diff --git a/vignettes/lines.bib b/vignettes/lines.bib new file mode 100644 index 0000000..d9a4bb5 --- /dev/null +++ b/vignettes/lines.bib @@ -0,0 +1,42 @@ + +@article{miller_distance_2019, + title = {Distance sampling in R}, + volume = {89}, + copyright = {Copyright (c) 2019 David L. Miller, Eric Rexstad, Len Thomas, Laura Marshall, Jeffrey L. Laake}, + issn = {1548-7660}, + language = {en}, + number = {1}, + journal = {Journal of Statistical Software}, + doi = {10.18637/jss.v089.i01}, + author = {Miller, David L. and Rexstad, Eric and Thomas, Len and Marshall, Laura and Laake, Jeffrey L.}, + month = may, + year = {2019}, + keywords = {distance sampling,abundance estimation,detection function,distance,Horvitz-Thompson,line transect,point transects,R}, + pages = {1-28}, + file = {C\:\\Users\\erexs\\Zotero\\storage\\DRB57MH8\\v089i01.html} +} + +@article{Buckland2006, + title = {Point transect surveys for songbirds: robust methodologies}, + volume = {123}, + number = {2}, + journal = {The Auk}, + doi = {10.1642/0004-8038(2006)123[345:psfsrm]2.0.co;2}, + author = {Buckland, S. T.}, + year = {2006}, + pages = {345-345}, + owner = {Tiago}, + refid = {15765}, + subdatabase = {distance}, + timestamp = {2006.11.23} +} + +@misc{r_core_team_r_2019, + address = {{Vienna Austria}}, + title = {R: A Language and Environment for Statistical Computing}, + howpublished = {R Foundation for Statistical Computing}, + author = {{R Core Team}}, + year = {2019} +} + + diff --git a/vignettes/montrave-line.csv b/vignettes/montrave-line.csv new file mode 100644 index 0000000..993f4f8 --- /dev/null +++ b/vignettes/montrave-line.csv @@ -0,0 +1,344 @@ +Region.Label,Area,repeats,Sample.Label,Effort,distance,species,visit +Montrave,33.2,2,1,0.208,75,c,1 +Montrave,33.2,2,1,0.208,40,c,1 +Montrave,33.2,2,1,0.208,42,c,1 +Montrave,33.2,2,1,0.208,12,r,1 +Montrave,33.2,2,1,0.208,15,w,1 +Montrave,33.2,2,1,0.208,80,w,1 +Montrave,33.2,2,1,0.208,35,w,1 +Montrave,33.2,2,1,0.208,55,w,1 +Montrave,33.2,2,1,0.208,55,c,2 +Montrave,33.2,2,1,0.208,26,r,2 +Montrave,33.2,2,1,0.208,70,r,2 +Montrave,33.2,2,1,0.208,12,w,2 +Montrave,33.2,2,1,0.208,75,w,2 +Montrave,33.2,2,1,0.208,23,w,2 +Montrave,33.2,2,1,0.208,70,w,2 +Montrave,33.2,2,1,0.208,75,w,2 +Montrave,33.2,2,1,0.208,56,w,2 +Montrave,33.2,2,2,0.401,8,c,1 +Montrave,33.2,2,2,0.401,5,c,1 +Montrave,33.2,2,2,0.401,40,c,1 +Montrave,33.2,2,2,0.401,20,g,1 +Montrave,33.2,2,2,0.401,5,r,1 +Montrave,33.2,2,2,0.401,24,r,1 +Montrave,33.2,2,2,0.401,20,r,1 +Montrave,33.2,2,2,0.401,20,w,1 +Montrave,33.2,2,2,0.401,24,w,1 +Montrave,33.2,2,2,0.401,10,w,1 +Montrave,33.2,2,2,0.401,60,w,1 +Montrave,33.2,2,2,0.401,65,w,1 +Montrave,33.2,2,2,0.401,0,w,1 +Montrave,33.2,2,2,0.401,0,c,2 +Montrave,33.2,2,2,0.401,35,c,2 +Montrave,33.2,2,2,0.401,28,c,2 +Montrave,33.2,2,2,0.401,60,c,2 +Montrave,33.2,2,2,0.401,19,g,2 +Montrave,33.2,2,2,0.401,5,r,2 +Montrave,33.2,2,2,0.401,30,r,2 +Montrave,33.2,2,2,0.401,45,r,2 +Montrave,33.2,2,2,0.401,53,r,2 +Montrave,33.2,2,2,0.401,50,r,2 +Montrave,33.2,2,2,0.401,40,w,2 +Montrave,33.2,2,2,0.401,32,w,2 +Montrave,33.2,2,2,0.401,20,w,2 +Montrave,33.2,2,2,0.401,60,w,2 +Montrave,33.2,2,2,0.401,40,w,2 +Montrave,33.2,2,3,0.401,8,c,1 +Montrave,33.2,2,3,0.401,34,c,1 +Montrave,33.2,2,3,0.401,55,c,1 +Montrave,33.2,2,3,0.401,60,c,1 +Montrave,33.2,2,3,0.401,55,g,1 +Montrave,33.2,2,3,0.401,28,r,1 +Montrave,33.2,2,3,0.401,27,r,1 +Montrave,33.2,2,3,0.401,5,r,1 +Montrave,33.2,2,3,0.401,22,r,1 +Montrave,33.2,2,3,0.401,40,r,1 +Montrave,33.2,2,3,0.401,33,w,1 +Montrave,33.2,2,3,0.401,5,w,1 +Montrave,33.2,2,3,0.401,35,w,1 +Montrave,33.2,2,3,0.401,15,w,1 +Montrave,33.2,2,3,0.401,70,w,1 +Montrave,33.2,2,3,0.401,5,w,1 +Montrave,33.2,2,3,0.401,5,c,2 +Montrave,33.2,2,3,0.401,15,c,2 +Montrave,33.2,2,3,0.401,80,c,2 +Montrave,33.2,2,3,0.401,25,g,2 +Montrave,33.2,2,3,0.401,25,g,2 +Montrave,33.2,2,3,0.401,5,r,2 +Montrave,33.2,2,3,0.401,32,r,2 +Montrave,33.2,2,3,0.401,15,r,2 +Montrave,33.2,2,3,0.401,0,r,2 +Montrave,33.2,2,3,0.401,20,r,2 +Montrave,33.2,2,3,0.401,60,r,2 +Montrave,33.2,2,3,0.401,48,w,2 +Montrave,33.2,2,3,0.401,32,w,2 +Montrave,33.2,2,3,0.401,0,w,2 +Montrave,33.2,2,3,0.401,33,w,2 +Montrave,33.2,2,3,0.401,20,w,2 +Montrave,33.2,2,3,0.401,35,w,2 +Montrave,33.2,2,4,0.299,45,c,1 +Montrave,33.2,2,4,0.299,10,c,1 +Montrave,33.2,2,4,0.299,15,c,1 +Montrave,33.2,2,4,0.299,85,g,1 +Montrave,33.2,2,4,0.299,60,g,1 +Montrave,33.2,2,4,0.299,30,g,1 +Montrave,33.2,2,4,0.299,72,r,1 +Montrave,33.2,2,4,0.299,35,r,1 +Montrave,33.2,2,4,0.299,5,w,1 +Montrave,33.2,2,4,0.299,80,w,1 +Montrave,33.2,2,4,0.299,80,w,1 +Montrave,33.2,2,4,0.299,55,w,1 +Montrave,33.2,2,4,0.299,12,c,2 +Montrave,33.2,2,4,0.299,78,c,2 +Montrave,33.2,2,4,0.299,8,g,2 +Montrave,33.2,2,4,0.299,22,g,2 +Montrave,33.2,2,4,0.299,100,r,2 +Montrave,33.2,2,4,0.299,75,r,2 +Montrave,33.2,2,4,0.299,15,r,2 +Montrave,33.2,2,4,0.299,70,w,2 +Montrave,33.2,2,4,0.299,75,w,2 +Montrave,33.2,2,4,0.299,22,w,2 +Montrave,33.2,2,4,0.299,85,w,2 +Montrave,33.2,2,4,0.299,75,w,2 +Montrave,33.2,2,4,0.299,35,w,2 +Montrave,33.2,2,4,0.299,40,w,2 +Montrave,33.2,2,5,0.35,80,c,1 +Montrave,33.2,2,5,0.35,15,c,1 +Montrave,33.2,2,5,0.35,30,c,1 +Montrave,33.2,2,5,0.35,25,c,1 +Montrave,33.2,2,5,0.35,45,c,1 +Montrave,33.2,2,5,0.35,8,g,1 +Montrave,33.2,2,5,0.35,22,r,1 +Montrave,33.2,2,5,0.35,35,r,1 +Montrave,33.2,2,5,0.35,33,r,1 +Montrave,33.2,2,5,0.35,15,r,1 +Montrave,33.2,2,5,0.35,35,w,1 +Montrave,33.2,2,5,0.35,10,w,1 +Montrave,33.2,2,5,0.35,70,w,1 +Montrave,33.2,2,5,0.35,70,w,1 +Montrave,33.2,2,5,0.35,75,w,1 +Montrave,33.2,2,5,0.35,55,c,2 +Montrave,33.2,2,5,0.35,4,c,2 +Montrave,33.2,2,5,0.35,8,c,2 +Montrave,33.2,2,5,0.35,33,c,2 +Montrave,33.2,2,5,0.35,50,g,2 +Montrave,33.2,2,5,0.35,85,g,2 +Montrave,33.2,2,5,0.35,95,g,2 +Montrave,33.2,2,5,0.35,35,g,2 +Montrave,33.2,2,5,0.35,21,r,2 +Montrave,33.2,2,5,0.35,45,r,2 +Montrave,33.2,2,5,0.35,28,r,2 +Montrave,33.2,2,5,0.35,60,r,2 +Montrave,33.2,2,5,0.35,60,w,2 +Montrave,33.2,2,5,0.35,30,w,2 +Montrave,33.2,2,5,0.35,25,w,2 +Montrave,33.2,2,5,0.35,80,w,2 +Montrave,33.2,2,5,0.35,80,w,2 +Montrave,33.2,2,5,0.35,40,w,2 +Montrave,33.2,2,5,0.35,85,w,2 +Montrave,33.2,2,5,0.35,55,w,2 +Montrave,33.2,2,5,0.35,65,w,2 +Montrave,33.2,2,6,0.401,12,c,1 +Montrave,33.2,2,6,0.401,45,c,1 +Montrave,33.2,2,6,0.401,12,c,1 +Montrave,33.2,2,6,0.401,80,c,1 +Montrave,33.2,2,6,0.401,15,r,1 +Montrave,33.2,2,6,0.401,50,r,1 +Montrave,33.2,2,6,0.401,20,r,1 +Montrave,33.2,2,6,0.401,65,r,1 +Montrave,33.2,2,6,0.401,20,w,1 +Montrave,33.2,2,6,0.401,30,w,1 +Montrave,33.2,2,6,0.401,40,w,1 +Montrave,33.2,2,6,0.401,25,w,1 +Montrave,33.2,2,6,0.401,45,w,1 +Montrave,33.2,2,6,0.401,60,w,1 +Montrave,33.2,2,6,0.401,25,c,2 +Montrave,33.2,2,6,0.401,11,c,2 +Montrave,33.2,2,6,0.401,38,c,2 +Montrave,33.2,2,6,0.401,42,g,2 +Montrave,33.2,2,6,0.401,35,r,2 +Montrave,33.2,2,6,0.401,70,r,2 +Montrave,33.2,2,6,0.401,15,r,2 +Montrave,33.2,2,6,0.401,25,w,2 +Montrave,33.2,2,6,0.401,35,w,2 +Montrave,33.2,2,6,0.401,25,w,2 +Montrave,33.2,2,6,0.401,10,w,2 +Montrave,33.2,2,6,0.401,2,w,2 +Montrave,33.2,2,6,0.401,35,w,2 +Montrave,33.2,2,7,0.393,33,c,1 +Montrave,33.2,2,7,0.393,23,c,1 +Montrave,33.2,2,7,0.393,85,g,1 +Montrave,33.2,2,7,0.393,45,g,1 +Montrave,33.2,2,7,0.393,85,r,1 +Montrave,33.2,2,7,0.393,15,r,1 +Montrave,33.2,2,7,0.393,27,w,1 +Montrave,33.2,2,7,0.393,35,w,1 +Montrave,33.2,2,7,0.393,65,w,1 +Montrave,33.2,2,7,0.393,45,w,1 +Montrave,33.2,2,7,0.393,80,w,1 +Montrave,33.2,2,7,0.393,30,w,1 +Montrave,33.2,2,7,0.393,50,c,2 +Montrave,33.2,2,7,0.393,15,c,2 +Montrave,33.2,2,7,0.393,25,c,2 +Montrave,33.2,2,7,0.393,65,g,2 +Montrave,33.2,2,7,0.393,60,r,2 +Montrave,33.2,2,7,0.393,50,r,2 +Montrave,33.2,2,7,0.393,30,r,2 +Montrave,33.2,2,7,0.393,25,w,2 +Montrave,33.2,2,7,0.393,70,w,2 +Montrave,33.2,2,7,0.393,30,w,2 +Montrave,33.2,2,7,0.393,55,w,2 +Montrave,33.2,2,7,0.393,60,w,2 +Montrave,33.2,2,7,0.393,40,w,2 +Montrave,33.2,2,7,0.393,75,w,2 +Montrave,33.2,2,8,0.405,60,g,1 +Montrave,33.2,2,8,0.405,26,g,1 +Montrave,33.2,2,8,0.405,55,r,1 +Montrave,33.2,2,8,0.405,27,r,1 +Montrave,33.2,2,8,0.405,75,r,1 +Montrave,33.2,2,8,0.405,70,w,1 +Montrave,33.2,2,8,0.405,23,w,1 +Montrave,33.2,2,8,0.405,55,w,1 +Montrave,33.2,2,8,0.405,60,w,1 +Montrave,33.2,2,8,0.405,75,w,1 +Montrave,33.2,2,8,0.405,30,w,1 +Montrave,33.2,2,8,0.405,65,w,1 +Montrave,33.2,2,8,0.405,25,c,2 +Montrave,33.2,2,8,0.405,100,r,2 +Montrave,33.2,2,8,0.405,38,r,2 +Montrave,33.2,2,8,0.405,23,r,2 +Montrave,33.2,2,8,0.405,58,r,2 +Montrave,33.2,2,8,0.405,45,w,2 +Montrave,33.2,2,8,0.405,20,w,2 +Montrave,33.2,2,8,0.405,55,w,2 +Montrave,33.2,2,8,0.405,30,w,2 +Montrave,33.2,2,9,0.385,65,c,1 +Montrave,33.2,2,9,0.385,80,r,1 +Montrave,33.2,2,9,0.385,45,w,1 +Montrave,33.2,2,9,0.385,10,w,1 +Montrave,33.2,2,9,0.385,75,w,1 +Montrave,33.2,2,9,0.385,17,g,2 +Montrave,33.2,2,9,0.385,15,r,2 +Montrave,33.2,2,9,0.385,45,r,2 +Montrave,33.2,2,9,0.385,30,w,2 +Montrave,33.2,2,9,0.385,70,w,2 +Montrave,33.2,2,9,0.385,35,w,2 +Montrave,33.2,2,10,0.204,20,c,1 +Montrave,33.2,2,10,0.204,26,g,1 +Montrave,33.2,2,10,0.204,55,r,1 +Montrave,33.2,2,10,0.204,55,w,1 +Montrave,33.2,2,10,0.204,23,w,1 +Montrave,33.2,2,10,0.204,5,c,2 +Montrave,33.2,2,10,0.204,50,c,2 +Montrave,33.2,2,10,0.204,85,w,2 +Montrave,33.2,2,11,0.039,25,w,1 +Montrave,33.2,2,11,0.039,30,c,2 +Montrave,33.2,2,12,0.047,45,r,1 +Montrave,33.2,2,12,0.047,90,w,1 +Montrave,33.2,2,12,0.047,40,w,1 +Montrave,33.2,2,12,0.047,50,r,2 +Montrave,33.2,2,12,0.047,50,w,2 +Montrave,33.2,2,12,0.047,90,w,2 +Montrave,33.2,2,13,0.204,68,c,1 +Montrave,33.2,2,13,0.204,65,g,1 +Montrave,33.2,2,13,0.204,25,r,1 +Montrave,33.2,2,13,0.204,45,r,1 +Montrave,33.2,2,13,0.204,40,w,1 +Montrave,33.2,2,13,0.204,0,w,1 +Montrave,33.2,2,13,0.204,100,w,1 +Montrave,33.2,2,13,0.204,45,w,1 +Montrave,33.2,2,13,0.204,20,w,1 +Montrave,33.2,2,13,0.204,30,c,2 +Montrave,33.2,2,13,0.204,35,g,2 +Montrave,33.2,2,13,0.204,38,r,2 +Montrave,33.2,2,13,0.204,5,r,2 +Montrave,33.2,2,13,0.204,45,r,2 +Montrave,33.2,2,13,0.204,40,w,2 +Montrave,33.2,2,13,0.204,20,w,2 +Montrave,33.2,2,13,0.204,45,w,2 +Montrave,33.2,2,13,0.204,45,w,2 +Montrave,33.2,2,14,0.271,20,c,1 +Montrave,33.2,2,14,0.271,45,r,1 +Montrave,33.2,2,14,0.271,27,r,1 +Montrave,33.2,2,14,0.271,5,r,1 +Montrave,33.2,2,14,0.271,40,r,1 +Montrave,33.2,2,14,0.271,80,w,1 +Montrave,33.2,2,14,0.271,5,w,1 +Montrave,33.2,2,14,0.271,35,w,1 +Montrave,33.2,2,14,0.271,35,w,1 +Montrave,33.2,2,14,0.271,10,w,1 +Montrave,33.2,2,14,0.271,20,c,2 +Montrave,33.2,2,14,0.271,10,r,2 +Montrave,33.2,2,14,0.271,45,r,2 +Montrave,33.2,2,14,0.271,50,w,2 +Montrave,33.2,2,14,0.271,30,w,2 +Montrave,33.2,2,14,0.271,20,w,2 +Montrave,33.2,2,14,0.271,35,w,2 +Montrave,33.2,2,14,0.271,60,w,2 +Montrave,33.2,2,14,0.271,15,w,2 +Montrave,33.2,2,14,0.271,10,w,2 +Montrave,33.2,2,15,0.236,48,c,1 +Montrave,33.2,2,15,0.236,80,c,1 +Montrave,33.2,2,15,0.236,60,c,1 +Montrave,33.2,2,15,0.236,20,g,1 +Montrave,33.2,2,15,0.236,45,r,1 +Montrave,33.2,2,15,0.236,25,r,1 +Montrave,33.2,2,15,0.236,22,w,1 +Montrave,33.2,2,15,0.236,15,w,1 +Montrave,33.2,2,15,0.236,30,w,1 +Montrave,33.2,2,15,0.236,40,w,1 +Montrave,33.2,2,15,0.236,50,c,2 +Montrave,33.2,2,15,0.236,6,g,2 +Montrave,33.2,2,15,0.236,20,r,2 +Montrave,33.2,2,15,0.236,5,r,2 +Montrave,33.2,2,15,0.236,15,w,2 +Montrave,33.2,2,15,0.236,35,w,2 +Montrave,33.2,2,15,0.236,16,w,2 +Montrave,33.2,2,15,0.236,15,w,2 +Montrave,33.2,2,15,0.236,25,w,2 +Montrave,33.2,2,16,0.189,10,c,1 +Montrave,33.2,2,16,0.189,20,c,1 +Montrave,33.2,2,16,0.189,60,w,1 +Montrave,33.2,2,16,0.189,20,c,2 +Montrave,33.2,2,16,0.189,35,w,2 +Montrave,33.2,2,17,0.177,55,c,1 +Montrave,33.2,2,17,0.177,10,c,1 +Montrave,33.2,2,17,0.177,15,c,1 +Montrave,33.2,2,17,0.177,45,g,1 +Montrave,33.2,2,17,0.177,8,g,1 +Montrave,33.2,2,17,0.177,35,r,1 +Montrave,33.2,2,17,0.177,33,r,1 +Montrave,33.2,2,17,0.177,25,r,1 +Montrave,33.2,2,17,0.177,10,w,1 +Montrave,33.2,2,17,0.177,55,w,1 +Montrave,33.2,2,17,0.177,12,w,1 +Montrave,33.2,2,17,0.177,15,c,2 +Montrave,33.2,2,17,0.177,18,g,2 +Montrave,33.2,2,17,0.177,15,r,2 +Montrave,33.2,2,17,0.177,35,w,2 +Montrave,33.2,2,17,0.177,30,w,2 +Montrave,33.2,2,17,0.177,70,w,2 +Montrave,33.2,2,17,0.177,25,w,2 +Montrave,33.2,2,18,0.2,50,c,1 +Montrave,33.2,2,18,0.2,80,c,1 +Montrave,33.2,2,18,0.2,90,c,1 +Montrave,33.2,2,18,0.2,25,r,1 +Montrave,33.2,2,18,0.2,10,w,1 +Montrave,33.2,2,18,0.2,60,w,1 +Montrave,33.2,2,18,0.2,25,c,2 +Montrave,33.2,2,18,0.2,30,c,2 +Montrave,33.2,2,18,0.2,45,c,2 +Montrave,33.2,2,18,0.2,80,c,2 +Montrave,33.2,2,18,0.2,20,g,2 +Montrave,33.2,2,18,0.2,10,r,2 +Montrave,33.2,2,18,0.2,70,r,2 +Montrave,33.2,2,18,0.2,10,w,2 +Montrave,33.2,2,18,0.2,60,w,2 +Montrave,33.2,2,18,0.2,40,w,2 +Montrave,33.2,2,18,0.2,50,w,2 +Montrave,33.2,2,19,0.02,29,g,1 +Montrave,33.2,2,19,0.02,40,w,1 +Montrave,33.2,2,19,0.02,80,w,1 +Montrave,33.2,2,19,0.02,5,c,2 +Montrave,33.2,2,19,0.02,25,w,2 diff --git a/vignettes/montrave.JPG b/vignettes/montrave.JPG new file mode 100644 index 0000000..01bc5bf Binary files /dev/null and b/vignettes/montrave.JPG differ diff --git a/vignettes/montrave.zip b/vignettes/montrave.zip new file mode 100644 index 0000000..b4a5932 Binary files /dev/null and b/vignettes/montrave.zip differ diff --git a/vignettes/species-covariate-distill.Rmd b/vignettes/species-covariate-distill.Rmd new file mode 100644 index 0000000..8cf138d --- /dev/null +++ b/vignettes/species-covariate-distill.Rmd @@ -0,0 +1,182 @@ +--- +title: "Covariate modeling with rare species" +description: | + Use of covariate to model detectability in multi-species surveys. +author: + - name: Eric Rexstad + url: http://distancesampling.org + affiliation: CREEM, Univ of St Andrews + affiliation_url: https://creem.st-andrews.ac.uk +date: "`r format(Sys.time(), '%B %Y')`" +output: + bookdown::html_document2: + number_sections: false + toc: true + toc_depth: 2 + base_format: rmarkdown::html_vignette +pkgdown: + as_is: true +bibliography: species.bib +csl: apa.csl +vignette: > + %\VignetteIndexEntry{Covariate modeling with rare species} + %\VignetteEngine{knitr::rmarkdown} + \usepackage[utf8]{inputenc} +--- + +```{r include=FALSE} +knitr::opts_chunk$set(eval=TRUE, echo=TRUE, message=FALSE, warnings=FALSE) +library(kableExtra) +options(kableExtra.html.bsTable = TRUE) +``` + +# Background + +Sometimes the focal species of a distance sampling survey is quite rare. So rare that it is difficult to accumulate sufficient detections to fit a detection function for the species in question. Likewise, it is also common for other species to be detected during the survey for the focal species. Could the detections of the other species be useful in estimating a detection function for the focal species? + +One approach might be to consider the species to serve as "strata" and proceed to analyse the data as if they were from a stratified survey. See the [example for stratified survey analysis](http://examples.distancesampling.org/Distance-strata/strata-distill.html). However, if a pooled detection function (one that combines data from multiple species) is fitted, it would be dubious to apply this pooled detection function to data at a lower level of aggregation (species level). Applying the pooled detection function would lead to a biased estimate of abundance for the rare species. + +Instead of treating species as strata, an alternative form of analysis is to treat species as a covariate in the modelling of the detection function [@FMARBUC03]. The principle is that the general key function is shared across species, but the scale parameter $(\sigma)$ differs between species. In this way, the detections of all species is shared, such that the estimation of the detection function for the rare species is bolstered by information from other species; yet the rare species receives its own *unique* detection function such that bias is not induced in the abundance estimation for that species. + +To demonstrate such an analysis, the Montrave songbird study conducted by Buckland [-@Buckland2006] is used. The species covariate approach to analysis of the snapshot point count version of his survey is described in the book by Buckland et al. [-@buckland2015distance, Section 5.3.2.2]. The `Distance` R package [@miller_distance_2019] is used to analyse the line transect survey Buckland conducted. Results are compared with estimates presented by Buckland [-@Buckland2006]. + +The data are available online at a website that serves as a companion to Buckland et al. [-@buckland2015distance]. The data set can be read into R directly from the URL. + +```{r readdata} +theurl <-"https://www.creem.st-andrews.ac.uk/files/2023/01/montrave-line_csv.zip" +download.file(theurl, destfile = "montrave.zip", mode = "wb") +unzip("montrave.zip") +birds <- read.csv("montrave-line.csv") +birds$object <- NA +birds$object[!is.na(birds$distance)] <- 1:sum(!is.na(birds$distance)) +``` + +# Data preparation + +Only one slight modification to the data needs to be conducted before they can be analysed. Buckland [-@Buckland2006] made two transits of the transects, the line transect effort needs to be modified to reflect the multiple visits. + +```{r prep} +birds$Effort <- birds$Effort * birds$repeats # two visits +library(Distance) +convunit <- convert_units("meter", "kilometer", "hectare") +``` + +# Detections by species + +In Buckland's [-@Buckland2006] line transect survey, three of the four songbird species (c-chaffinch, g-great tit, r-robin, w-winter wren) were detected in sufficient quantities that sample size is not an issue. However, the great tit was only detected 32 times, making the support for this species open to question. + +```{r numdetects, echo=FALSE} +knitr::kable(table(birds$species), + caption="Number of detections by species for Montrave line transect survey.") %>% + kable_styling(bootstrap_options = "striped", full_width = F) %>% + row_spec(2, bold=T, background="yellow") +``` + +As mentioned in the Background, we could fit a pooled detection function across species and with species as a stratification criterion produce species-specific density estimates using the pooled detection function in conjunction with species-specific encounter rates. However that would be using the *wrong* detection function for every species. We take the alternative analysis route and incorporate species into the detection function. + +# Covariate in detection function + +Inclusion of `species` as a covariate in the detection function is simple using the `formula=` argument in `ds()`. Note the species names are coded as letters, `R` will automatically treat a variable containing letters as a factor covariate. If numbers were used in coding species, `as.factor` would need to be employed. + +```{r detfn} +all.birds <- ds(data = birds, key="hn", convert_units = convunit, + formula=~species, truncation = 95) +``` + +```{r gof, echo=FALSE} +fit <- gof_ds(all.birds, plot=FALSE) +stat <- round(fit$dsgof$CvM$W,3) +p <- round(fit$dsgof$CvM$p,3) +``` + +The CvM goodness of fit test indicates this model adequately fits the data, W=`r stat`, P=`r p`. + +# Visualising the detection functions for each species + +The shape of the species-specific detection functions can be seen by using the plotting function provided below. + +```{r plotcode, fig.dim=c(7,5), fig.cap="Species-specific detection functions." } +plot(all.birds, showpoints=FALSE, main="Montrave line transects\nspecies as covariate") +add.df.covar.line(all.birds, data=data.frame(species="c"), lwd=3, lty=1, col="blue") +add.df.covar.line(all.birds, data=data.frame(species="g"), lwd=3, lty=1, col="darkgreen") +add.df.covar.line(all.birds, data=data.frame(species="r"), lwd=3, lty=1, col="brown") +add.df.covar.line(all.birds, data=data.frame(species="w"), lwd=3, lty=1, col="salmon") +legend("topright", legend=c("chaffinch", "great tit", "robin", "winter wren"), + lwd=3, lty=1, col=c("blue", "darkgreen", "brown", "salmon")) +``` + +# Species-specific density estimates + +Density estimates for each species can be produced by using the `dht2` function that contains the argument `strat_formula` used to specific the levels of stratum-specific estimates requested. The `stratification` argument ensures the correct measures of precision are associated with the species-specific density estimates. The value `object` indicates this analysis is a form of post-stratification, rather than geographic stratification criterion that could have been know prior to the gathering of the data. + +```{r densest} +bird.ests <- dht2(ddf=all.birds, flatfile=birds, + strat_formula = ~species, convert_units = convunit, + stratification = "object") +``` + +```{r maketable, echo=FALSE} +density <- attr(bird.ests, "density") +knitr::kable(density[1:4 ,c(1,3,7,8,11,10)], + digits = c(NA,0,3,3,3,3), + caption="Species-specific density estimates using detection function with species as covariate.") %>% + kable_styling(bootstrap_options = "striped", full_width = F) +``` + +# Compare with published estimates + +The density estimates for chaffinch and great tits match those reported by Buckland [@Buckland2006] almost exactly. The congruence between estimates produced by this analysis and those reported by Buckland are less good for the robins and winter wrens. + +```{r screenclip, fig.dim=c(7,5), fig.cap="Reproduction of Table 2 of Buckland (2006).", echo=FALSE} +knitr::include_graphics("tab2-buck.png") +``` + +# Postscript + +As described by Buckland [@Buckland2006], there was some reason to believe evasive movement took place on the part of robins and winter wrens. Conceivably, this could be accommodated by using a hazard rate key function for those two species. This would lead to a more complex analysis in which the data set was divided into a *chaffinch/great tit* data set, with a half normal key and species covariate detection function model. The other portion of the data set would contain *robins/winter wrens* modelled using a hazard rate key function and species covariate. + +```{r stuff, echo=FALSE} +chafgt <- birds[birds$species %in% c("c","g"), ] +chafgt <- droplevels(chafgt) +last.row <- dim(chafgt)[1] + 1 +chafgt[last.row, "Region.Label"] <- "Montrave" +chafgt[last.row, "Area"] <- 33.2 +chafgt[last.row, "repeats"] <- 2 +chafgt[last.row, "Sample.Label"] <- 12 +chafgt[last.row, "Effort"] <- unique(birds[birds$Sample.Label==12, "Effort"]) * 2 +chafgt[last.row, "distance"] <- NA +chafgt[last.row, "species"] <- NA +chafgt[last.row, "visit"] <- NA + +robwren <- birds[birds$species %in% c("r","w"), ] +robwren <- droplevels(robwren) +hn.birds <- ds(data = chafgt, + key="hn", convert_units = convunit, + formula=~species, truncation = 95) +hr.birds <- ds(data = robwren, + key="hr", convert_units = convunit, + formula=~species, truncation = 95) + +gof.cg <- gof_ds(hn.birds, plot=FALSE)$dsgof$CvM +gof.rw <- gof_ds(hr.birds, plot=FALSE)$dsgof$CvM + +compare.test <- data.frame(analysis=c("Single analysis", "HN key", "HR key"), + "CvM W"=round(c(stat, gof.cg$W, gof.rw$W),3), + "P value"=round(c(p, gof.cg$p, gof.rw$p),3)) + +chafgt.ests <- dht2(ddf=hn.birds, flatfile=chafgt, + strat_formula = ~species, convert_units = convunit, + stratification = "object") +robwren.ests <- dht2(ddf=hr.birds, flatfile=robwren, + strat_formula = ~species, convert_units = convunit, + stratification = "object") +``` + +Indeed, the goodness of fit for this more complex analysis (not shown) leads to better fit of the "two model" approach: + +```{r fittab, echo=FALSE} +knitr::kable(compare.test, caption="Goodness of fit comparison for single model compared with HN/HR split.") %>% + kable_styling(bootstrap_options = "striped", full_width = F) +``` + +# References \ No newline at end of file diff --git a/vignettes/species.bib b/vignettes/species.bib new file mode 100644 index 0000000..f347eed --- /dev/null +++ b/vignettes/species.bib @@ -0,0 +1,65 @@ +@Book{buckland2015distance, + title = {Distance sampling: methods and applications}, + publisher = {Springer}, + year = {2015}, + url = {https://www.springer.com/gb/book/9783319192185}, + author = {Buckland, Steve and Rexstad, Eric and Marques, Tiago and Oedekoven, Cornelia}, +} + +@article{Buckland2006, + title = {Point transect surveys for songbirds: robust methodologies}, + author = {Buckland, S. T.}, + year = {2006}, + volume = {123}, + pages = {345--345}, + doi = {10.1642/0004-8038(2006)123[345:psfsrm]2.0.co;2}, + journal = {The Auk}, + number = {2}, + owner = {Tiago}, + refid = {15765}, + subdatabase = {distance}, + timestamp = {2006.11.23} +} + +@article{FMARBUC03, + title = {Incorporating covariates into standard line transect analyses}, + author = {Marques, F. F. C. and Buckland, S. T.}, + year = {2003}, + volume = {59}, + pages = {924--935}, + doi = {10.1111/j.0006-341x.2003.00107.x}, + journal = {Biometrics}, + owner = {eric}, + subdatabase = {distance}, + timestamp = {2010.08.17} +} + +@article{Marques2007, + title = {Improving estimates of bird density using multiple covariate distance sampling}, + author = {Marques, T.A. and Thomas, L. and Fancy, S.G. and Buckland, S.T.}, + year = {2007}, + volume = {127}, + pages = {1229--1243}, + doi = {10.1642/0004-8038(2007)124[1229:ieobdu]2.0.co;2}, + journal = {The Auk}, + owner = {eric}, + timestamp = {2011.08.23} +} + +@article{miller_distance_2019, + title = {Distance sampling in R}, + volume = {89}, + copyright = {Copyright (c) 2019 David L. Miller, Eric Rexstad, Len Thomas, Laura Marshall, Jeffrey L. Laake}, + issn = {1548-7660}, + language = {en}, + number = {1}, + journal = {Journal of Statistical Software}, + doi = {10.18637/jss.v089.i01}, + author = {Miller, David L. and Rexstad, Eric and Thomas, Len and Marshall, Laura and Laake, Jeffrey L.}, + month = may, + year = {2019}, + keywords = {distance sampling,abundance estimation,detection function,distance,Horvitz-Thompson,line transect,point transects,R}, + pages = {1-28}, + file = {C\:\\Users\\erexs\\Zotero\\storage\\DRB57MH8\\v089i01.html} +} + diff --git a/vignettes/tab2-buck.png b/vignettes/tab2-buck.png new file mode 100644 index 0000000..9500fc8 Binary files /dev/null and b/vignettes/tab2-buck.png differ diff --git a/vignettes/web-only/CTDS/DaytimeDistances.txt b/vignettes/web-only/CTDS/DaytimeDistances.txt new file mode 100644 index 0000000..2e77fb1 --- /dev/null +++ b/vignettes/web-only/CTDS/DaytimeDistances.txt @@ -0,0 +1,11182 @@ +distance Sample.Label Effort Region.Label Area multiplier utm.e utm.n +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +3.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +3.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +3.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +3.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +3.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +3.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +2.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +7.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +7.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +7.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +3.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +3.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +3.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +4.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +4.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +5.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +6.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +7.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +4.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +3.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +3.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +3.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +3.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +5.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +6.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +6.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +13.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +13.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +13.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +13.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +1.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 B1 1738716 Tai 40370000 0.1166667 689999 646201 +4.5 B1 1738716 Tai 40370000 0.1166667 689999 646201 +4.5 B1 1738716 Tai 40370000 0.1166667 689999 646201 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +4.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +5.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +6.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +7.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +11 B3 1511027 Tai 40370000 0.1166667 690017 644206 +11 B3 1511027 Tai 40370000 0.1166667 690017 644206 +11 B3 1511027 Tai 40370000 0.1166667 690017 644206 +11 B3 1511027 Tai 40370000 0.1166667 690017 644206 +13.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +13.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +13.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +13.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +13.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +4.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +4.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +5.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +5.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +5.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +7.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +7.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +7.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +7.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +3.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +3.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +4.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +5.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +5.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +6.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +7.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +2.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +3.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +4.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +1.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +2.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +3.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +4.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +3.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +4.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +4.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +4.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +4.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +3.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +3.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +2.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +3.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +4.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +18 B4 1283338 Tai 40370000 0.1166667 690006 643198 +18 B4 1283338 Tai 40370000 0.1166667 690006 643198 +18 B4 1283338 Tai 40370000 0.1166667 690006 643198 +18 B4 1283338 Tai 40370000 0.1166667 690006 643198 +18 B4 1283338 Tai 40370000 0.1166667 690006 643198 +18 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +1.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +2.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +5.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +5.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +4.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +4.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +4.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +4.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +5.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +6.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +7.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +5.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +5.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +6.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +7.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +7.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +7.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +7.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +7.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +3.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +3.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +18 C4 1635221 Tai 40370000 0.1166667 691005 643201 +18 C4 1635221 Tai 40370000 0.1166667 691005 643201 +18 C4 1635221 Tai 40370000 0.1166667 691005 643201 +18 C4 1635221 Tai 40370000 0.1166667 691005 643201 +18 C4 1635221 Tai 40370000 0.1166667 691005 643201 +18 C4 1635221 Tai 40370000 0.1166667 691005 643201 +18 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +3.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +2.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +3.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +3.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +3.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +3.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +3.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +3.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +3.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +3.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +7.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +9 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +9 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +7.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +7.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +7.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +5.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +4.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +3.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +5.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +5.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +5.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +4.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +4.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +5.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +5.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +9 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +9 C5 1593823 Tai 40370000 0.1166667 691003 642214 +7.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +9 C5 1593823 Tai 40370000 0.1166667 691003 642214 +7.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +7.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +7.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +13.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +13.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +13.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +2.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +2.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +2.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +18 D4 1593823 Tai 40370000 0.1166667 691993 643181 +18 D4 1593823 Tai 40370000 0.1166667 691993 643181 +18 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +2.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 + E4 1614522 Tai 40370000 0.1166667 692963 643204 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +18 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 diff --git a/vignettes/web-only/CTDS/VideoStartTimes_FullDays.txt b/vignettes/web-only/CTDS/VideoStartTimes_FullDays.txt new file mode 100644 index 0000000..cab931c --- /dev/null +++ b/vignettes/web-only/CTDS/VideoStartTimes_FullDays.txt @@ -0,0 +1,807 @@ +order folder vid.no ek.no easting northing month day hour minute +1 A1 (1) 1 689991 646193 7 6 11 32 +2 A1(2) 1 7 689991 646193 7 22 17 27 +3 A1(2) 2 9 689991 646193 8 6 18 18 +4 A1(2) 3 17 689991 646193 8 14 7 0 +5 A1(2) 4 30 689991 646193 8 18 16 9 +6 A1(2) 5 31 689991 646193 8 19 6 25 +7 A1(2) 6 36 689991 646193 8 20 17 5 +8 A1(2) 7 38 689991 646193 8 22 14 6 +9 A1(2) 8 40 689991 646193 8 22 17 16 +10 A1(2) 9 42 689991 646193 8 23 8 45 +11 A1(2) 10 45 689991 646193 8 25 9 16 +12 A1(2) 11 46 689991 646193 8 25 12 6 +13 A1(2) 12 49 689991 646193 8 28 15 35 +14 A1(2) 13 51 689991 646193 8 30 6 0 +15 A1(2) 14 53 689991 646193 9 2 16 10 +16 A1(2) 15 54 689991 646193 9 3 14 43 +17 A1(2) 16 55 689991 646193 9 4 12 32 +18 A1(2) 17 59 689991 646193 9 8 17 30 +19 A1(2) 18 61 689991 646193 9 9 9 51 +20 A1(2) 19 62 689991 646193 9 9 11 10 +21 A1(2) 20 63 689991 646193 9 10 17 16 +22 A1(2) 21 64 689991 646193 9 10 11 13 +23 A1(2) 22 69 689991 646193 9 13 9 22 +24 A1(2) 23 70 689991 646193 9 13 11 13 +25 A1(2) 24 73 689991 646193 9 13 17 2 +26 A1(2) 25 74 689991 646193 9 13 18 37 +27 A1(2) 26 78 689991 646193 9 14 16 42 +28 A2 1 13 689012 645186 7 3 16 36 +29 A2 2 14 689012 645186 7 3 18 44 +30 A2 3 17 689012 645186 7 10 15 43 +31 A2 4 19 689012 645186 7 12 10 42 +32 A2 5 22 689012 645186 7 13 7 2 +34 A3(1) 1 10 689007 644158 7 7 6 30 +35 A3(1) 2 24 689007 644158 7 13 18 0 +36 A3(2) 1 5 689007 644158 7 24 9 1 +37 A3(2) 2 12 689007 644158 7 28 8 53 +39 A3(3) 2 8 689007 644158 8 20 7 32 +40 A3(3) 3 9 689007 644158 8 20 16 5 +41 A3(3) 4 10 689007 644158 8 22 7 44 +42 A3(3) 5 11 689007 644158 8 22 8 44 +43 A3(3) 6 12 689007 644158 8 23 7 21 +44 A3(3) 7 13 689007 644158 8 23 7 22 +45 A3(3) 8 14 689007 644158 8 24 8 2 +46 A3(3) 9 16 689007 644158 8 24 17 0 +47 A3(3) 10 18 689007 644158 8 25 13 2 +48 A3(3) 11 19 689007 644158 8 25 15 11 +49 A3(3) 12 20 689007 644158 8 26 6 25 +50 A3(3) 13 21 689007 644158 8 26 7 43 +51 A3(3) 14 22 689007 644158 8 27 6 54 +52 A3(3) 15 23 689007 644158 8 27 15 9 +53 A3(3) 16 24 689007 644158 8 28 7 30 +54 A3(3) 17 25 689007 644158 8 28 7 32 +55 A3(3) 18 29 689007 644158 8 29 13 28 +56 A3(3) 19 32 689007 644158 8 29 13 42 +57 A3(3) 20 37 689007 644158 8 31 9 1 +58 A3(3) 21 38 689007 644158 8 31 15 8 +59 A3(3) 22 39 689007 644158 8 31 15 10 +60 A3(3) 23 41 689007 644158 9 1 15 8 +61 A3(3) 24 44 689007 644158 9 2 11 21 +62 A3(3) 25 45 689007 644158 9 2 11 23 +63 A3(3) 26 46 689007 644158 9 2 11 26 +64 A3(3) 27 48 689007 644158 9 2 17 14 +65 A3(3) 28 49 689007 644158 9 3 18 12 +66 A3(3) 29 53 689007 644158 9 6 17 34 +67 A3(3) 30 54 689007 644158 9 7 10 34 +68 A3(3) 31 55 689007 644158 9 8 6 22 +69 A3(3) 32 56 689007 644158 9 9 7 49 +70 A3(3) 33 57 689007 644158 9 9 10 42 +71 A3(3) 34 58 689007 644158 9 10 6 50 +72 A3(3) 35 59 689007 644158 9 10 7 15 +73 A3(3) 36 60 689007 644158 9 10 15 57 +74 A3(3) 37 61 689007 644158 9 10 17 27 +75 A3(3) 38 62 689007 644158 9 10 18 12 +76 A3(3) 39 64 689007 644158 9 11 6 39 +77 A3(3) 40 68 689007 644158 9 12 18 18 +78 A3(3) 41 71 689007 644158 9 13 8 13 +79 A3(3) 42 72 689007 644158 9 13 9 37 +80 A3(3) 43 73 689007 644158 9 13 10 0 +81 A3(3) 44 74 689007 644158 9 13 10 3 +82 A3(3) 45 75 689007 644158 9 13 10 14 +83 A3(3) 46 76 689007 644158 9 13 13 19 +84 A3(3) 47 81 689007 644158 9 15 9 30 +85 A3(3) 48 82 689007 644158 9 15 14 52 +86 A3(3) 49 83 689007 644158 9 16 6 24 +87 A3(3) 50 84 689007 644158 9 16 7 31 +88 A3(3) 51 85 689007 644158 9 16 7 39 +89 A3(3) 52 88 689007 644158 9 16 8 26 +90 A3(3) 53 89 689007 644158 9 16 9 31 +91 A3(3) 54 92 689007 644158 9 17 6 33 +92 A3(3) 55 93 689007 644158 9 17 6 45 +93 A3(3) 56 94 689007 644158 9 17 6 47 +94 A3(3) 57 95 689007 644158 9 17 9 15 +95 A3(3) 58 96 689007 644158 9 17 9 22 +96 A3(3) 59 97 689007 644158 9 18 9 14 +97 A3(3) 60 98 689007 644158 9 18 14 50 +98 A3(3) 61 102 689007 644158 9 19 11 12 +99 A3(3) 62 103 689007 644158 9 19 14 15 +100 A3(3) 63 104 689007 644158 9 19 17 4 +101 A3(3) 64 106 689007 644158 9 20 9 50 +102 A3(3) 65 107 689007 644158 9 20 16 21 +103 A3(3) 66 109 689007 644158 9 21 6 20 +104 A3(3) 67 110 689007 644158 9 21 6 52 +105 A3(3) 68 111 689007 644158 9 21 8 19 +106 A3(3) 69 114 689007 644158 9 21 11 26 +107 A3(3) 70 118 689007 644158 9 21 17 35 +108 A3(3) 71 120 689007 644158 9 21 18 31 +109 A4 1 6 688999 643213 7 9 16 4 +110 A4 2 15 688999 643213 7 27 9 39 +111 A4 3 17 688999 643213 8 8 9 57 +112 A4 4 21 688999 643213 8 13 15 44 +113 A4 5 23 688999 643213 8 15 17 32 +114 A4 6 24 688999 643213 8 16 9 29 +115 A4 7 28 688999 643213 8 19 8 17 +116 A4 8 29 688999 643213 8 19 12 29 +117 A4 9 30 688999 643213 8 19 18 56 +118 A4 10 31 688999 643213 8 22 7 9 +119 A4 11 32 688999 643213 8 22 18 20 +120 A4 12 33 688999 643213 8 25 7 55 +121 A4 13 35 688999 643213 8 28 13 54 +122 A4 14 38 688999 643213 8 28 16 57 +123 A4 15 39 688999 643213 8 28 17 11 +124 A4 16 40 688999 643213 8 31 11 52 +125 A4 17 41 688999 643213 9 1 9 29 +126 A4 18 42 688999 643213 9 4 7 27 +127 A4 19 43 688999 643213 9 5 17 33 +128 A4 20 44 688999 643213 9 7 16 21 +129 A4 21 45 688999 643213 9 8 13 19 +130 A4 22 47 688999 643213 9 11 8 14 +131 A4 23 48 688999 643213 9 11 8 18 +132 A4 24 49 688999 643213 9 11 8 25 +133 A4 25 50 688999 643213 9 11 18 7 +134 A4 26 51 688999 643213 9 12 15 13 +135 A4 27 52 688999 643213 9 13 8 16 +136 B1(1) 1 18 689999 646201 7 7 11 10 +137 B1(2) 1 12 689999 646201 8 31 15 8 +138 B2(1) 1 11 690010 645198 7 9 15 50 +139 B2(1) 2 12 690010 645198 7 9 15 53 +140 B2(1) 3 23 690010 645198 7 20 11 37 +141 B2(1) 4 37 690010 645198 7 30 17 24 +142 B2(1) 5 38 690010 645198 7 30 17 31 +143 B2(1) 6 42 690010 645198 7 31 13 4 +144 B2(2) 1 6 690010 645198 8 19 13 54 +145 B2(2) 2 7 690010 645198 8 19 13 55 +146 B2(2) 3 9 690010 645198 8 20 14 39 +147 B2(2) 4 10 690010 645198 8 20 15 12 +148 B2(2) 5 11 690010 645198 8 20 15 14 +149 B2(2) 6 15 690010 645198 8 23 8 11 +150 B2(2) 7 18 690010 645198 8 23 14 38 +151 B2(2) 8 23 690010 645198 8 23 14 51 +152 B2(2) 9 25 690010 645198 8 23 17 28 +153 B2(2) 10 35 690010 645198 8 28 7 24 +154 B2(2) 11 37 690010 645198 8 28 17 49 +155 B2(2) 12 38 690010 645198 8 29 7 49 +156 B2(2) 13 44 690010 645198 8 31 17 26 +157 B2(2) 14 45 690010 645198 8 31 23 31 +158 B2(2) 15 47 690010 645198 9 1 8 20 +159 B2(2) 16 50 690010 645198 9 2 7 27 +160 B2(2) 17 51 690010 645198 9 2 16 31 +161 B2(2) 18 52 690010 645198 9 2 16 32 +162 B2(2) 19 53 690010 645198 9 2 16 34 +163 B2(2) 20 54 690010 645198 9 2 16 37 +164 B2(2) 21 55 690010 645198 9 2 16 45 +165 B2(2) 22 59 690010 645198 9 3 7 36 +166 B2(2) 23 62 690010 645198 9 4 7 5 +167 B2(2) 24 63 690010 645198 9 4 7 6 +168 B2(2) 25 64 690010 645198 9 4 17 8 +169 B2(2) 26 65 690010 645198 9 4 17 9 +170 B2(2) 27 66 690010 645198 9 4 17 11 +171 B2(2) 28 67 690010 645198 9 4 17 12 +172 B2(2) 29 68 690010 645198 9 4 17 22 +173 B2(2) 30 69 690010 645198 9 4 17 24 +174 B2(2) 31 70 690010 645198 9 4 17 26 +175 B2(2) 32 71 690010 645198 9 4 17 29 +176 B2(2) 33 72 690010 645198 9 4 17 30 +177 B2(2) 34 73 690010 645198 9 4 17 39 +178 B2(2) 35 74 690010 645198 9 4 17 39 +179 B2(2) 36 75 690010 645198 9 4 17 47 +180 B2(2) 37 76 690010 645198 9 4 17 48 +181 B2(2) 38 77 690010 645198 9 5 6 50 +182 B2(2) 39 78 690010 645198 9 5 6 52 +183 B2(2) 40 79 690010 645198 9 6 12 28 +184 B2(2) 41 80 690010 645198 9 6 12 48 +185 B2(2) 42 84 690010 645198 9 6 18 18 +186 B2(2) 43 85 690010 645198 9 6 18 19 +187 B2(2) 44 87 690010 645198 9 7 10 26 +188 B2(2) 45 89 690010 645198 9 7 11 44 +189 B2(2) 46 92 690010 645198 9 8 6 47 +190 B2(2) 47 93 690010 645198 9 8 8 42 +191 B2(2) 48 94 690010 645198 9 8 8 47 +192 B2(2) 49 95 690010 645198 9 8 15 5 +193 B2(2) 50 96 690010 645198 9 8 15 54 +195 B2(3) 1 10 690010 645198 9 10 7 34 +196 B2(3) 2 11 690010 645198 9 10 7 36 +197 B2(3) 3 12 690010 645198 9 10 17 32 +198 B2(3) 4 13 690010 645198 9 11 7 47 +199 B2(3) 5 14 690010 645198 9 11 13 6 +200 B2(3) 6 16 690010 645198 9 11 13 53 +201 B2(3) 7 17 690010 645198 9 11 17 20 +202 B2(3) 8 20 690010 645198 9 12 7 3 +203 B2(3) 9 26 690010 645198 9 12 17 11 +204 B2(3) 10 27 690010 645198 9 12 17 13 +205 B2(3) 11 28 690010 645198 9 12 17 34 +206 B2(3) 12 34 690010 645198 9 13 7 23 +207 B2(3) 13 35 690010 645198 9 13 18 14 +208 B2(3) 14 36 690010 645198 9 13 18 16 +209 B2(3) 15 37 690010 645198 9 13 18 19 +210 B2(3) 16 38 690010 645198 9 14 12 24 +211 B2(3) 17 40 690010 645198 9 14 16 2 +212 B2(3) 18 41 690010 645198 9 15 16 46 +213 B2(3) 19 42 690010 645198 9 16 16 48 +214 B2(3) 20 51 690010 645198 9 18 16 14 +215 B2(3) 21 52 690010 645198 9 19 14 44 +216 B2(3) 22 53 690010 645198 9 19 14 47 +217 B2(3) 23 54 690010 645198 9 20 8 48 +218 B2(3) 24 55 690010 645198 9 20 8 49 +219 B2(3) 25 56 690010 645198 9 20 8 51 +220 B2(3) 26 57 690010 645198 9 20 8 53 +221 B2(3) 27 58 690010 645198 9 20 9 0 +222 B2(3) 28 59 690010 645198 9 20 9 30 +223 B2(3) 29 60 690010 645198 9 20 9 31 +224 B2(3) 30 61 690010 645198 9 20 9 33 +225 B2(3) 31 62 690010 645198 9 20 10 52 +226 B2(3) 32 63 690010 645198 9 20 10 55 +227 B2(3) 33 66 690010 645198 9 21 8 10 +228 B2(3) 34 67 690010 645198 9 21 8 14 +229 B3(1) 1 7 690017 644206 7 10 12 58 +230 B3(1) 2 10 690017 644206 7 12 15 54 +231 B3(2) 1 7 690017 644206 8 16 8 16 +232 B3(2) 2 14 690017 644206 8 19 9 12 +233 B3(2) 3 19 690017 644206 8 23 10 2 +234 B3(2) 4 26 690017 644206 9 8 14 19 +235 B4 1 5 690006 643198 7 25 17 25 +236 B4 2 6 690006 643198 7 28 11 3 +237 B4 3 7 690006 643198 7 28 17 28 +238 B4 4 8 690006 643198 7 30 10 49 +239 B4 5 13 690006 643198 8 5 16 14 +240 B4 6 22 690006 643198 8 14 8 39 +241 B4 7 27 690006 643198 8 21 8 9 +242 B4 8 29 690006 643198 8 23 13 39 +243 B4 9 30 690006 643198 8 24 10 23 +244 B4 10 37 690006 643198 9 6 15 55 +245 B4 11 47 690006 643198 9 21 18 37 +247 C1(1) 1 18 690985 646203 7 11 11 27 +248 C1(2) 1 7 690985 646203 8 9 16 10 +249 C1(3) 1 10 690985 646203 9 7 10 3 +250 C1(3) 2 19 690985 646203 9 17 7 18 +251 C1(3) 3 23 690985 646203 9 21 17 17 +252 C2(1) 1 755 691012 645186 6 30 13 12 +253 C2(1) 2 759 691012 645186 7 2 8 25 +254 C2(1) 3 770 691012 645186 7 3 16 39 +255 C2(1) 4 771 691012 645186 7 4 6 26 +256 C2(1) 5 772 691012 645186 7 4 15 27 +257 C2(2) 1 34 691012 645186 7 8 15 39 +258 C2(2) 2 36 691012 645186 7 23 8 9 +259 C2(2) 3 42 691012 645186 8 3 7 50 +260 C2(2) 4 44 691012 645186 8 4 8 58 +261 C2(2) 5 50 691012 645186 8 4 17 45 +262 C2(3) 1 8 691012 645186 9 8 16 27 +263 C2(3) 2 9 691012 645186 9 12 11 37 +264 C2(3) 3 10 691012 645186 9 16 10 7 +266 C3(2) 1 8 690995 644190 7 12 14 15 +267 C3(2) 2 11 690995 644190 7 13 17 55 +268 C3(2) 3 14 690995 644190 7 15 14 26 +273 C3(3) 5 17 690995 644190 7 24 6 58 +274 C3(3) 6 18 690995 644190 7 24 7 9 +275 C3(3) 7 20 690995 644190 7 25 12 33 +276 C3(3) 8 21 690995 644190 7 26 7 46 +277 C3(3) 9 22 690995 644190 7 26 17 34 +278 C3(3) 10 23 690995 644190 7 27 6 44 +279 C3(3) 11 24 690995 644190 7 28 8 27 +280 C3(3) 12 25 690995 644190 7 29 6 51 +281 C3(3) 13 26 690995 644190 7 30 11 4 +282 C3(3) 14 27 690995 644190 7 30 16 14 +283 C3(3) 15 28 690995 644190 7 30 16 49 +284 C3(3) 16 29 690995 644190 7 31 6 44 +285 C3(3) 17 30 690995 644190 7 31 11 28 +286 C3(3) 18 35 690995 644190 8 2 7 11 +287 C3(3) 19 36 690995 644190 8 2 10 18 +288 C3(3) 20 37 690995 644190 8 2 13 25 +289 C3(3) 21 38 690995 644190 8 2 16 46 +290 C3(3) 22 39 690995 644190 8 2 17 2 +291 C3(3) 23 40 690995 644190 8 3 6 31 +292 C3(3) 24 41 690995 644190 8 3 8 54 +293 C3(3) 25 42 690995 644190 8 3 9 2 +294 C3(3) 26 43 690995 644190 8 3 13 0 +295 C3(3) 27 45 690995 644190 8 3 17 14 +296 C3(3) 28 46 690995 644190 8 4 6 26 +297 C3(3) 29 47 690995 644190 8 4 10 40 +298 C3(3) 30 48 690995 644190 8 4 14 39 +299 C3(3) 31 49 690995 644190 8 5 6 30 +300 C3(3) 32 50 690995 644190 8 5 8 50 +301 C3(3) 33 52 690995 644190 8 5 14 11 +302 C3(3) 34 53 690995 644190 8 5 18 6 +303 C3(3) 35 54 690995 644190 8 6 6 34 +304 C3(3) 36 55 690995 644190 8 6 6 42 +305 C3(3) 37 58 690995 644190 8 6 18 16 +306 C3(3) 38 59 690995 644190 8 7 6 45 +307 C3(3) 39 60 690995 644190 8 7 10 19 +308 C3(3) 40 61 690995 644190 8 8 14 27 +309 C3(3) 41 62 690995 644190 8 8 14 52 +310 C3(3) 42 63 690995 644190 8 9 10 16 +311 C3(3) 43 64 690995 644190 8 9 15 19 +312 C3(3) 44 65 690995 644190 8 9 15 32 +313 C3(3) 45 66 690995 644190 8 10 6 29 +314 C3(3) 46 67 690995 644190 8 10 7 6 +315 C3(3) 47 68 690995 644190 8 10 10 4 +316 C3(3) 48 69 690995 644190 8 10 17 57 +317 C3(3) 49 70 690995 644190 8 10 18 4 +318 C3(3) 50 71 690995 644190 8 11 6 43 +319 C3(3) 51 72 690995 644190 8 11 6 51 +320 C3(3) 52 73 690995 644190 8 11 13 26 +321 C3(3) 53 74 690995 644190 8 13 6 43 +322 C3(3) 54 75 690995 644190 8 13 6 45 +323 C3(3) 55 76 690995 644190 8 13 9 29 +324 C3(3) 56 77 690995 644190 8 13 15 24 +325 C3(3) 57 78 690995 644190 8 13 15 28 +326 C3(3) 58 79 690995 644190 8 13 15 48 +327 C3(3) 59 83 690995 644190 8 14 6 31 +328 C3(3) 60 84 690995 644190 8 14 16 53 +329 C3(3) 61 85 690995 644190 8 15 6 28 +330 C3(3) 62 86 690995 644190 8 16 6 16 +331 C3(3) 63 87 690995 644190 8 17 11 10 +332 C3(3) 64 90 690995 644190 8 18 6 47 +334 C3(4) 1 5 690995 644190 8 21 14 38 +335 C3(4) 2 6 690995 644190 8 23 6 44 +336 C3(4) 3 8 690995 644190 8 31 11 1 +337 C3(4) 4 9 690995 644190 8 31 11 6 +338 C3(4) 5 10 690995 644190 9 1 7 13 +339 C3(4) 6 11 690995 644190 9 5 7 0 +340 C3(4) 7 12 690995 644190 9 5 7 2 +341 C3(4) 8 13 690995 644190 9 5 7 20 +342 C3(4) 9 16 690995 644190 9 12 7 28 +343 C3(4) 10 17 690995 644190 9 14 7 7 +344 C3(4) 11 19 690995 644190 9 18 6 19 +345 C3(4) 12 20 690995 644190 9 18 18 6 +346 C4(1) 1 7 691005 643201 7 3 13 24 +347 C4(1) 2 10 691005 643201 7 9 13 8 +348 C4(1) 3 12 691005 643201 7 11 18 46 +349 C4(1) 4 18 691005 643201 7 15 16 44 +350 C4(1) 5 22 691005 643201 7 17 18 35 +351 C4(1) 6 23 691005 643201 7 18 6 29 +352 C4(2) 1 12 691005 643201 8 7 10 11 +353 C4(2) 2 36 691005 643201 8 22 8 13 +354 C4(2) 3 38 691005 643201 8 24 6 25 +355 C4(2) 4 40 691005 643201 8 24 15 48 +356 C4(2) 5 49 691005 643201 8 31 17 2 +357 C4(2) 6 60 691005 643201 9 8 18 21 +358 C4(2) 7 64 691005 643201 9 10 6 46 +359 C4(2) 8 67 691005 643201 9 12 6 27 +360 C4(2) 9 70 691005 643201 9 14 9 1 +361 C4(2) 10 73 691005 643201 9 15 12 27 +362 C5(1) 1 8 691003 642214 7 13 11 43 +363 C5(2) 1 6 691003 642214 8 2 13 24 +364 C5(2) 2 8 691003 642214 8 5 18 3 +365 C5(2) 3 11 691003 642214 8 14 18 41 +366 C5(2) 4 12 691003 642214 8 15 15 46 +367 C5(2) 5 15 691003 642214 8 24 14 37 +369 C6(1) 1 12 690977 641224 7 4 9 14 +370 C6(1) 2 13 690977 641224 7 7 14 5 +371 C6(1) 3 14 690977 641224 7 8 11 0 +372 C6(1) 4 17 690977 641224 7 9 15 27 +373 C6(1) 5 18 690977 641224 7 9 17 3 +374 C6(1) 6 19 690977 641224 7 9 17 31 +375 C6(1) 7 20 690977 641224 7 9 17 49 +376 C6(1) 8 21 690977 641224 7 10 8 25 +377 C6(1) 9 22 690977 641224 7 10 11 29 +378 C6(1) 10 23 690977 641224 7 10 23 8 +379 C6(1) 11 27 690977 641224 7 13 10 57 +380 C6(1) 12 28 690977 641224 7 13 11 38 +381 C6(1) 13 31 690977 641224 7 13 18 8 +382 C6(1) 14 32 690977 641224 7 15 6 7 +383 C6(1) 15 35 690977 641224 7 16 17 53 +384 C6(1) 16 37 690977 641224 7 18 6 37 +385 C6(1) 17 39 690977 641224 7 20 12 39 +386 C6(1) 18 44 690977 641224 7 24 16 2 +387 C6(1) 19 45 690977 641224 7 24 17 51 +388 C6(1) 20 46 690977 641224 7 25 6 26 +389 C6(1) 21 47 690977 641224 7 25 13 39 +390 C6(1) 22 50 690977 641224 7 26 18 20 +391 C6(1) 23 51 690977 641224 7 27 18 43 +392 C6(1) 24 52 690977 641224 7 27 18 44 +393 C6(1) 25 53 690977 641224 7 28 10 25 +394 C6(1) 26 56 690977 641224 7 29 18 36 +395 C6(1) 27 62 690977 641224 8 1 10 44 +396 C6(1) 28 63 690977 641224 8 1 18 0 +397 C6(1) 29 65 690977 641224 8 2 16 51 +398 C6(1) 30 67 690977 641224 8 3 12 20 +399 C6(1) 31 68 690977 641224 8 3 17 34 +402 C6(2) 3 9 690977 641224 8 5 18 41 +403 C6(2) 4 13 690977 641224 8 6 18 5 +404 C6(2) 5 14 690977 641224 8 7 12 53 +405 C6(2) 6 15 690977 641224 8 8 7 30 +406 C6(2) 7 17 690977 641224 8 9 12 42 +407 C6(2) 8 19 690977 641224 8 9 17 28 +408 C6(2) 9 20 690977 641224 8 9 17 41 +409 C6(2) 10 34 690977 641224 8 11 7 54 +410 C6(2) 11 35 690977 641224 8 11 8 34 +411 C6(2) 12 36 690977 641224 8 11 11 18 +412 C6(2) 13 37 690977 641224 8 11 18 38 +413 C6(2) 14 38 690977 641224 8 12 8 5 +414 C6(2) 15 39 690977 641224 8 12 8 6 +415 C6(2) 16 40 690977 641224 8 12 9 22 +416 C6(2) 17 41 690977 641224 8 12 9 24 +417 C6(2) 18 42 690977 641224 8 12 9 26 +418 C6(2) 19 43 690977 641224 8 12 9 30 +419 C6(2) 20 44 690977 641224 8 12 10 45 +420 C6(2) 21 45 690977 641224 8 12 10 47 +421 C6(2) 22 46 690977 641224 8 12 13 0 +422 C6(2) 23 47 690977 641224 8 12 13 2 +423 C6(2) 24 48 690977 641224 8 12 13 4 +424 C6(2) 25 49 690977 641224 8 12 13 6 +425 C6(2) 26 50 690977 641224 8 12 15 28 +426 C6(2) 27 51 690977 641224 8 12 15 29 +427 C6(2) 28 52 690977 641224 8 12 15 51 +428 C6(2) 29 53 690977 641224 8 13 6 30 +429 C6(2) 30 54 690977 641224 8 13 6 31 +430 C6(2) 31 55 690977 641224 8 13 6 32 +431 C6(2) 32 56 690977 641224 8 13 8 17 +432 C6(2) 33 57 690977 641224 8 13 8 33 +433 C6(2) 34 58 690977 641224 8 13 9 17 +434 C6(2) 35 59 690977 641224 8 13 9 32 +435 C6(2) 36 60 690977 641224 8 13 11 50 +436 C6(2) 37 61 690977 641224 8 13 14 43 +437 C6(2) 38 62 690977 641224 8 13 14 45 +438 C6(2) 39 63 690977 641224 8 13 14 46 +439 C6(2) 40 64 690977 641224 8 13 15 42 +440 C6(2) 41 68 690977 641224 8 14 6 17 +441 C6(2) 42 69 690977 641224 8 14 6 25 +442 C6(2) 43 70 690977 641224 8 14 6 53 +443 C6(2) 44 71 690977 641224 8 14 6 54 +444 C6(2) 45 72 690977 641224 8 14 7 0 +445 C6(2) 46 73 690977 641224 8 14 9 21 +446 C6(2) 47 74 690977 641224 8 14 9 52 +447 C6(2) 48 75 690977 641224 8 14 10 2 +448 C6(2) 49 76 690977 641224 8 14 11 34 +449 C6(2) 50 77 690977 641224 8 14 12 37 +450 C6(2) 51 78 690977 641224 8 14 12 51 +451 C6(2) 52 79 690977 641224 8 14 12 57 +452 C6(2) 53 80 690977 641224 8 14 14 51 +453 C6(2) 54 81 690977 641224 8 14 14 52 +454 C6(2) 55 83 690977 641224 8 15 7 26 +455 C6(2) 56 85 690977 641224 8 15 7 39 +456 C6(2) 57 86 690977 641224 8 15 7 49 +457 C6(2) 58 87 690977 641224 8 15 7 59 +458 C6(2) 59 88 690977 641224 8 15 13 20 +459 C6(2) 60 89 690977 641224 8 15 16 38 +460 C6(2) 61 90 690977 641224 8 15 17 19 +461 C6(2) 62 91 690977 641224 8 16 6 41 +462 C6(2) 63 94 690977 641224 8 16 7 29 +463 C6(2) 64 95 690977 641224 8 16 9 26 +464 C6(2) 65 96 690977 641224 8 16 13 38 +465 C6(2) 66 99 690977 641224 8 17 6 37 +466 C6(2) 67 100 690977 641224 8 17 7 26 +467 C6(2) 68 101 690977 641224 8 17 7 49 +468 C6(2) 69 102 690977 641224 8 17 7 51 +469 C6(2) 70 104 690977 641224 8 17 10 0 +470 C6(2) 71 106 690977 641224 8 17 11 52 +471 C6(2) 72 107 690977 641224 8 17 14 15 +472 C6(2) 73 107 690977 641224 8 17 16 23 +473 C6(2) 74 110 690977 641224 8 17 16 47 +474 C6(2) 75 112 690977 641224 8 18 6 42 +475 C6(2) 76 113 690977 641224 8 18 6 50 +476 C6(2) 77 115 690977 641224 8 18 8 19 +477 C6(2) 78 117 690977 641224 8 18 17 9 +478 C6(2) 79 118 690977 641224 8 18 17 10 +479 C6(2) 80 119 690977 641224 8 19 6 59 +480 C6(2) 81 120 690977 641224 8 19 7 0 +481 C6(2) 82 121 690977 641224 8 19 7 6 +482 C6(2) 83 122 690977 641224 8 19 8 9 +483 C6(2) 84 123 690977 641224 8 19 12 41 +484 C6(2) 85 124 690977 641224 8 19 13 41 +485 C6(2) 86 125 690977 641224 8 19 13 42 +486 C6(2) 87 126 690977 641224 8 19 14 15 +487 C6(2) 88 127 690977 641224 8 19 16 48 +488 C6(2) 89 128 690977 641224 8 19 17 39 +489 C6(2) 90 129 690977 641224 8 20 11 27 +490 C6(2) 91 130 690977 641224 8 20 16 53 +491 C6(2) 92 132 690977 641224 8 20 6 39 +492 C6(2) 93 134 690977 641224 8 21 6 25 +493 C6(2) 94 135 690977 641224 8 21 7 32 +494 C6(2) 95 136 690977 641224 8 21 10 11 +495 C6(2) 96 138 690977 641224 8 22 6 45 +496 C6(2) 97 139 690977 641224 8 22 8 54 +497 C6(2) 98 142 690977 641224 8 22 15 3 +498 C6(2) 99 144 690977 641224 8 22 16 26 +499 C6(2) 100 145 690977 641224 8 22 16 28 +500 C6(2) 101 146 690977 641224 8 22 17 33 +501 C6(2) 102 147 690977 641224 8 22 17 37 +502 C6(2) 103 151 690977 641224 8 23 11 1 +503 C6(2) 104 155 690977 641224 8 23 14 46 +504 C6(2) 105 156 690977 641224 8 23 14 57 +505 C6(2) 106 157 690977 641224 8 23 15 23 +506 C6(2) 107 158 690977 641224 8 24 10 41 +507 C6(2) 108 159 690977 641224 8 24 11 13 +508 C6(2) 109 160 690977 641224 8 24 12 56 +509 C6(2) 110 163 690977 641224 8 25 7 51 +510 C6(2) 111 164 690977 641224 8 25 15 6 +511 C6(2) 112 168 690977 641224 8 26 16 22 +512 C6(2) 113 169 690977 641224 8 26 16 29 +513 C6(2) 114 170 690977 641224 8 26 17 39 +514 C6(2) 115 172 690977 641224 8 27 8 49 +515 C6(2) 116 174 690977 641224 8 27 17 12 +516 C6(2) 117 176 690977 641224 8 28 10 11 +517 C6(2) 118 177 690977 641224 8 28 14 24 +518 C6(2) 119 178 690977 641224 8 28 15 35 +519 C6(2) 120 179 690977 641224 8 28 17 47 +520 C6(2) 121 180 690977 641224 8 29 7 1 +521 C6(2) 122 181 690977 641224 8 29 10 46 +522 C6(2) 123 185 690977 641224 8 30 10 43 +523 C6(2) 124 188 690977 641224 8 31 6 55 +524 C6(2) 125 189 690977 641224 8 31 12 5 +525 C6(2) 126 190 690977 641224 8 31 12 10 +526 C6(2) 127 191 690977 641224 8 31 17 6 +527 C6(2) 128 192 690977 641224 8 31 17 8 +528 C6(2) 129 193 690977 641224 8 31 17 12 +529 C6(2) 130 194 690977 641224 9 1 9 26 +530 C6(2) 131 196 690977 641224 9 1 18 13 +531 C6(2) 132 197 690977 641224 9 2 7 3 +532 C6(2) 133 198 690977 641224 9 2 14 20 +533 C6(2) 134 199 690977 641224 9 2 14 23 +534 C6(2) 135 200 690977 641224 9 2 14 26 +535 C6(2) 136 201 690977 641224 9 2 17 31 +536 C6(2) 137 203 690977 641224 9 2 18 17 +537 C6(2) 138 204 690977 641224 9 3 7 35 +538 C6(2) 139 205 690977 641224 9 3 7 37 +539 C6(2) 140 206 690977 641224 9 3 16 5 +540 C6(2) 141 207 690977 641224 9 3 16 42 +541 C6(2) 142 209 690977 641224 9 4 13 3 +542 C6(2) 143 210 690977 641224 9 4 14 33 +543 C6(2) 144 212 690977 641224 9 4 16 58 +544 C6(2) 145 215 690977 641224 9 5 14 23 +545 C6(2) 146 220 690977 641224 9 6 9 58 +546 C6(2) 147 222 690977 641224 9 6 13 11 +547 C6(2) 148 223 690977 641224 9 7 8 45 +548 C6(2) 149 224 690977 641224 9 7 13 34 +549 C6(2) 150 225 690977 641224 9 7 16 34 +550 C6(2) 151 226 690977 641224 9 8 6 54 +551 C6(2) 152 227 690977 641224 9 8 12 4 +552 C6(2) 153 230 690977 641224 9 8 16 58 +553 C6(2) 154 231 690977 641224 9 8 18 10 +554 C6(2) 155 232 690977 641224 9 8 18 18 +555 C6(2) 156 234 690977 641224 9 9 12 53 +556 C6(2) 157 235 690977 641224 9 10 8 10 +557 C6(2) 158 236 690977 641224 9 10 14 4 +558 C6(2) 159 244 690977 641224 9 11 11 10 +559 C6(2) 160 248 690977 641224 9 12 13 58 +560 C6(2) 161 250 690977 641224 9 12 15 50 +561 C6(2) 162 251 690977 641224 9 12 15 52 +562 C6(2) 163 252 690977 641224 9 13 11 56 +563 C6(2) 164 254 690977 641224 9 14 16 20 +564 C6(2) 165 256 690977 641224 9 16 14 57 +565 C6(2) 166 257 690977 641224 9 17 11 19 +566 D3(1) 1 17 692017 644193 7 19 7 57 +567 D3(1) 2 30 692017 644193 7 28 17 46 +568 D3(1) 3 31 692017 644193 8 2 13 7 +569 D3(2) 1 4 692017 644193 8 4 9 26 +570 D3(2) 2 6 692017 644193 8 5 18 35 +571 D3(2) 3 14 692017 644193 8 10 19 4 +572 D3(2) 4 24 692017 644193 8 14 11 49 +573 D3(2) 5 25 692017 644193 8 14 11 53 +574 D3(2) 6 28 692017 644193 8 15 11 10 +575 D3(2) 7 29 692017 644193 8 15 13 27 +576 D3(2) 8 30 692017 644193 8 18 16 41 +577 D3(2) 9 31 692017 644193 8 21 6 16 +578 D3(2) 10 33 692017 644193 8 23 6 23 +579 D3(2) 11 35 692017 644193 8 23 13 24 +580 D3(2) 12 38 692017 644193 8 24 19 38 +581 D3(2) 13 40 692017 644193 8 26 9 46 +582 D3(2) 14 41 692017 644193 8 26 10 28 +583 D3(2) 15 42 692017 644193 8 28 12 34 +584 D3(2) 16 43 692017 644193 8 28 12 37 +585 D3(2) 17 49 692017 644193 8 30 18 29 +586 D3(2) 18 53 692017 644193 9 4 13 4 +587 D3(2) 19 69 692017 644193 9 15 10 1 +588 D3(2) 20 73 692017 644193 9 17 15 43 +589 D3(2) 21 77 692017 644193 9 18 18 50 +590 D3(2) 22 78 692017 644193 9 19 10 4 +591 D3(2) 23 79 692017 644193 9 19 10 9 +592 D3(2) 24 82 692017 644193 9 20 8 15 +593 D3(2) 25 83 692017 644193 9 20 8 45 +594 D3(2) 26 84 692017 644193 9 20 9 8 +595 D4 1 10 691993 643181 7 5 15 1 +596 D4 2 11 691993 643181 7 13 11 1 +597 D4 3 14 691993 643181 7 22 18 0 +598 D4 4 24 691993 643181 8 3 17 34 +599 D4 5 25 691993 643181 8 3 18 17 +600 D4 6 27 691993 643181 8 7 12 10 +601 D4 7 36 691993 643181 8 11 8 51 +602 D4 8 39 691993 643181 8 13 9 41 +603 D4 9 43 691993 643181 8 16 18 8 +604 D4 10 44 691993 643181 8 17 10 17 +605 D4 11 46 691993 643181 8 19 16 17 +606 D4 12 47 691993 643181 8 19 17 16 +607 D4 13 50 691993 643181 8 28 9 25 +608 D4 14 61 691993 643181 9 13 16 30 +609 D4 15 63 691993 643181 9 16 7 26 +610 D4 16 67 691993 643181 9 18 7 41 +611 D4 17 70 691993 643181 9 20 9 20 +612 D4 18 71 691993 643181 9 20 10 37 +613 D5 1 5 692006 642200 7 19 10 56 +614 D5 2 6 692006 642200 7 19 11 3 +615 D5 3 8 692006 642200 7 21 11 4 +616 D5 4 10 692006 642200 7 25 18 5 +617 D5 5 11 692006 642200 7 25 18 7 +618 D5 6 13 692006 642200 7 26 17 53 +619 D5 7 14 692006 642200 7 29 12 21 +620 D5 8 15 692006 642200 7 31 10 12 +621 D5 9 17 692006 642200 8 1 16 53 +622 D5 10 18 692006 642200 8 2 17 42 +623 D5 11 19 692006 642200 8 3 6 57 +624 D5 12 27 692006 642200 8 6 17 28 +625 D5 13 28 692006 642200 8 8 7 4 +626 D5 14 31 692006 642200 8 9 6 55 +627 D5 15 32 692006 642200 8 9 12 7 +628 D5 16 34 692006 642200 8 12 10 17 +629 D5 17 36 692006 642200 8 14 9 26 +630 D5 18 38 692006 642200 8 15 12 24 +631 D5 19 39 692006 642200 8 15 13 4 +632 D5 20 40 692006 642200 8 15 13 45 +633 D5 21 41 692006 642200 8 15 14 36 +634 D5 22 42 692006 642200 8 17 7 19 +635 D5 23 44 692006 642200 8 18 7 3 +636 D5 24 47 692006 642200 8 20 9 34 +637 D5 25 49 692006 642200 8 22 18 16 +638 D5 26 50 692006 642200 8 23 7 6 +639 D5 27 51 692006 642200 8 24 12 0 +640 D5 28 52 692006 642200 8 25 7 33 +641 D5 29 53 692006 642200 8 26 7 18 +642 D5 30 56 692006 642200 8 26 9 47 +643 D5 31 57 692006 642200 8 26 9 50 +644 D5 32 58 692006 642200 8 26 13 20 +645 D5 33 63 692006 642200 8 31 7 35 +646 D5 34 65 692006 642200 9 3 16 42 +647 D5 35 67 692006 642200 9 5 7 58 +648 D5 36 70 692006 642200 9 9 8 48 +649 D5 37 71 692006 642200 9 12 13 47 +650 D5 38 74 692006 642200 9 17 12 36 +651 D5 39 77 692006 642200 9 18 17 38 +652 D5 40 78 692006 642200 9 20 16 40 +653 D5 41 79 692006 642200 9 21 7 17 +668 E3(1) 1 7 692983 644219 7 7 14 28 +669 E3(1) 2 8 692983 644219 7 8 8 27 +670 E3(1) 3 10 692983 644219 7 8 12 0 +671 E3(1) 4 11 692983 644219 7 9 11 49 +672 E3(1) 5 13 692983 644219 7 10 10 26 +673 E3(1) 6 14 692983 644219 7 10 18 20 +674 E3(1) 7 15 692983 644219 7 11 10 3 +675 E3(1) 8 16 692983 644219 7 11 10 48 +676 E3(1) 9 18 692983 644219 7 12 11 25 +677 E3(1) 10 19 692983 644219 7 12 12 7 +678 E3(1) 11 21 692983 644219 7 12 15 3 +679 E3(1) 12 22 692983 644219 7 13 7 42 +680 E3(1) 13 23 692983 644219 7 14 11 37 +681 E3(1) 14 25 692983 644219 7 15 13 29 +682 E3(1) 15 26 692983 644219 7 15 13 33 +683 E3(1) 16 30 692983 644219 7 16 12 4 +684 E3(1) 17 31 692983 644219 7 16 13 36 +685 E3(1) 18 33 692983 644219 7 17 11 20 +686 E3(1) 19 36 692983 644219 7 18 13 9 +687 E3(1) 20 37 692983 644219 7 18 15 59 +688 E3(1) 21 39 692983 644219 7 19 6 16 +689 E3(1) 22 40 692983 644219 7 19 9 43 +690 E3(1) 23 42 692983 644219 7 20 13 33 +691 E3(1) 24 43 692983 644219 7 20 13 39 +692 E3(1) 25 44 692983 644219 7 22 8 50 +693 E3(1) 26 49 692983 644219 7 26 13 2 +694 E3(1) 27 52 692983 644219 7 29 11 39 +695 E3(1) 28 55 692983 644219 8 3 9 13 +696 E3(1) 29 57 692983 644219 8 5 11 42 +697 E3(1) 30 60 692983 644219 8 6 8 43 +698 E3(1) 31 63 692983 644219 8 9 12 6 +703 E5(1) 1 8 692995 642203 7 11 17 22 +704 E5(1) 2 9 692995 642203 7 14 18 4 +705 E5(1) 3 15 692995 642203 7 20 17 45 +706 E5(1) 4 16 692995 642203 7 20 18 11 +707 E5(1) 5 18 692995 642203 7 24 7 4 +708 E5(1) 6 19 692995 642203 7 25 6 41 +709 E5(1) 7 24 692995 642203 7 29 6 45 +710 E5(1) 8 28 692995 642203 7 30 8 44 +711 E5(1) 9 31 692995 642203 8 1 7 50 +712 E5(1) 10 43 692995 642203 8 4 18 3 +713 E5(1) 11 44 692995 642203 8 6 8 20 +714 E5(1) 12 59 692995 642203 8 15 6 22 +715 E5(1) 13 61 692995 642203 8 16 6 28 +717 E5(1) 15 70 692995 642203 8 19 16 51 +718 E5(1) 16 73 692995 642203 8 22 23 48 +719 E5(1) 17 75 692995 642203 8 24 8 47 +720 E5(1) 18 78 692995 642203 8 26 7 30 +721 E5(1) 19 80 692995 642203 8 27 17 49 +722 E5(1) 20 84 692995 642203 8 29 7 31 +723 E5(1) 21 86 692995 642203 8 30 17 35 +724 E5(1) 22 94 692995 642203 9 5 6 6 +725 E5(1) 23 95 692995 642203 9 6 18 6 +726 E5(1) 24 100 692995 642203 9 11 15 53 +727 E5(1) 25 103 692995 642203 9 15 8 1 +728 E5(1) 26 107 692995 642203 9 20 6 44 +729 E5(1) 27 108 692995 642203 9 20 17 3 +730 E5(1) 28 111 692995 642203 9 21 17 17 +731 E6(1) 1 12 692974 641159 7 12 18 47 +732 E6(1) 2 13 692974 641159 7 13 14 33 +733 E6(1) 3 14 692974 641159 7 14 11 25 +734 E6(1) 4 15 692974 641159 7 14 16 6 +735 E6(1) 5 19 692974 641159 7 18 10 26 +736 E6(1) 6 21 692974 641159 7 19 11 15 +737 E6(1) 7 22 692974 641159 7 20 11 27 +738 E6(1) 8 23 692974 641159 7 20 12 33 +739 E6(1) 9 24 692974 641159 7 20 13 25 +740 E6(1) 10 25 692974 641159 7 20 17 14 +741 E6(1) 11 27 692974 641159 7 21 8 35 +742 E6(1) 12 32 692974 641159 7 26 9 19 +743 E6(1) 13 33 692974 641159 7 28 8 34 +744 E6(1) 14 34 692974 641159 7 28 15 18 +745 E6(1) 15 37 692974 641159 7 29 9 30 +746 E6(1) 16 47 692974 641159 7 31 14 6 +747 E6(1) 17 49 692974 641159 8 2 10 44 +748 E6(1) 18 50 692974 641159 8 2 11 7 +749 E6(1) 19 53 692974 641159 8 4 12 20 +750 E6(1) 20 54 692974 641159 8 5 7 14 +751 E6(1) 21 57 692974 641159 8 5 12 7 +752 E6(1) 22 58 692974 641159 8 6 7 37 +753 E6(1) 23 63 692974 641159 8 10 9 6 +754 E6(1) 24 64 692974 641159 8 11 7 54 +755 E6(1) 25 67 692974 641159 8 12 8 22 +756 E6(1) 26 71 692974 641159 8 13 11 39 +757 E6(1) 27 77 692974 641159 8 14 14 12 +758 E6(1) 28 78 692974 641159 8 14 16 36 +759 E6(1) 29 82 692974 641159 8 15 16 45 +760 E6(1) 30 83 692974 641159 8 16 8 20 +761 E6(1) 31 85 692974 641159 8 16 14 7 +762 E6(2) 1 8 692974 641159 8 19 8 55 +763 E6(2) 2 9 692974 641159 8 19 11 34 +764 E6(2) 3 10 692974 641159 8 19 11 35 +765 E6(2) 4 11 692974 641159 8 20 6 38 +766 E6(2) 5 12 692974 641159 8 20 6 41 +767 E6(2) 6 13 692974 641159 8 21 7 18 +768 E6(2) 7 14 692974 641159 8 21 7 19 +769 E6(2) 8 15 692974 641159 8 21 7 22 +770 E6(2) 9 16 692974 641159 8 21 7 25 +771 E6(2) 10 18 692974 641159 8 21 16 7 +772 E6(2) 11 19 692974 641159 8 22 16 8 +773 E6(2) 12 20 692974 641159 8 22 16 10 +774 E6(2) 13 21 692974 641159 8 23 6 42 +775 E6(2) 14 25 692974 641159 8 24 10 54 +776 E6(2) 15 27 692974 641159 8 25 7 27 +777 E6(2) 16 28 692974 641159 8 25 17 23 +778 E6(2) 17 31 692974 641159 8 27 8 43 +779 E6(2) 18 33 692974 641159 8 28 8 16 +780 E6(2) 19 36 692974 641159 8 29 7 19 +781 E6(2) 20 37 692974 641159 8 29 7 55 +782 E6(2) 21 41 692974 641159 8 30 9 24 +783 E6(2) 22 42 692974 641159 8 31 7 59 +784 E6(2) 23 43 692974 641159 8 31 8 1 +785 E6(2) 24 44 692974 641159 8 31 8 31 +786 E6(2) 25 45 692974 641159 9 1 6 28 +787 E6(2) 26 46 692974 641159 9 1 11 38 +788 E6(2) 27 47 692974 641159 9 1 11 44 +789 E6(2) 28 48 692974 641159 9 1 15 24 +790 E6(2) 29 49 692974 641159 9 2 7 39 +791 E6(2) 30 50 692974 641159 9 3 8 7 +792 E6(2) 31 54 692974 641159 9 4 14 0 +793 E6(2) 32 55 692974 641159 9 5 6 15 +794 E6(2) 33 57 692974 641159 9 5 7 0 +795 E6(2) 34 58 692974 641159 9 5 7 1 +796 E6(2) 35 59 692974 641159 9 5 7 4 +797 E6(2) 36 60 692974 641159 9 5 7 6 +798 E6(2) 37 62 692974 641159 9 5 7 35 +799 E6(2) 38 65 692974 641159 9 5 10 18 +800 E6(2) 39 68 692974 641159 9 6 14 53 +801 E6(2) 40 69 692974 641159 9 6 15 42 +802 E6(2) 41 72 692974 641159 9 7 15 3 +803 E6(2) 42 73 692974 641159 9 7 15 55 +804 E6(2) 43 75 692974 641159 9 8 6 38 +805 E6(2) 44 76 692974 641159 9 8 7 15 +806 E6(2) 45 77 692974 641159 9 8 17 7 +807 E6(2) 46 78 692974 641159 9 8 17 9 +808 E6(2) 47 79 692974 641159 9 9 7 12 +809 E6(2) 48 81 692974 641159 9 10 7 43 +810 E6(2) 49 82 692974 641159 9 10 7 46 +811 E6(2) 50 83 692974 641159 9 10 7 50 +812 E6(2) 51 85 692974 641159 9 10 15 44 +813 E6(2) 52 86 692974 641159 9 10 16 13 +814 E6(2) 53 87 692974 641159 9 11 7 26 +815 E6(2) 54 88 692974 641159 9 11 7 46 +816 E6(2) 55 89 692974 641159 9 11 16 51 +817 E6(2) 56 91 692974 641159 9 12 7 41 +818 E6(2) 57 93 692974 641159 9 12 12 22 +819 E6(2) 58 95 692974 641159 9 13 8 56 +820 E6(2) 59 97 692974 641159 9 13 13 17 +821 E6(2) 60 98 692974 641159 9 13 13 19 +822 E6(2) 61 99 692974 641159 9 14 7 13 +823 E6(2) 62 100 692974 641159 9 14 7 32 +824 E6(2) 63 101 692974 641159 9 14 10 22 +825 E6(2) 64 102 692974 641159 9 14 13 29 +826 E6(2) 65 103 692974 641159 9 15 6 21 +827 E6(2) 66 107 692974 641159 9 16 8 33 +828 E6(2) 67 108 692974 641159 9 16 8 34 +829 E6(2) 68 111 692974 641159 9 17 6 48 +830 E6(2) 69 112 692974 641159 9 17 17 12 +831 E6(2) 70 113 692974 641159 9 18 6 32 +832 E6(2) 71 114 692974 641159 9 18 14 20 +833 E6(2) 72 115 692974 641159 9 18 14 32 +834 E6(2) 73 116 692974 641159 9 19 6 47 +835 E6(2) 74 117 692974 641159 9 19 7 18 +838 E6(2) 77 122 692974 641159 9 21 7 15 +839 E6(2) 78 123 692974 641159 9 21 7 16 +840 E6(2) 79 124 692974 641159 9 21 11 40 diff --git a/vignettes/web-only/CTDS/camera-distill.Rmd b/vignettes/web-only/CTDS/camera-distill.Rmd new file mode 100644 index 0000000..8678b90 --- /dev/null +++ b/vignettes/web-only/CTDS/camera-distill.Rmd @@ -0,0 +1,398 @@ +--- +title: "Analysis of camera trapping data" +description: | + Example analysis with Ivory Coast Maxwell's duiker. +author: + - name: Eric Howe, Eric Rexstad and Len Thomas + url: http://distancesampling.org + affiliation: CREEM, Univ of St Andrews + affiliation_url: https://creem.st-andrews.ac.uk +date: "`r format(Sys.time(), '%B %Y')`" +output: + bookdown::html_document2: + number_sections: false + toc: true + toc_depth: 2 + base_format: rmarkdown::html_vignette +pkgdown: + as_is: true +bibliography: howeetal18.bib +csl: ../apa.csl +vignette: > + %\VignetteIndexEntry{Analysis of camera trapping data} + %\VignetteEngine{knitr::rmarkdown} + \usepackage[utf8]{inputenc} +--- + +```{r include=FALSE} +knitr::opts_chunk$set(eval=TRUE, echo=TRUE, message=FALSE, warnings=FALSE) +library (kableExtra) +solution <- TRUE +``` + +# Analysis of camera trapping data using distance sampling + +A distance sampling approach to the analysis of camera trapping data offers the potential advantage that individual animal identification is not required. However, accurate animal-to-camera detection distances are required. This requires calibration prior to the survey with images of objects taken at known distances from the camera. See details in @howeetal for description of the field work and data analysis. Here we present analysis of data from @howeetal using the R package `Distance` [@miller]. + +## Estimating temporal availability for detection + +Heat- and motion-sensitive camera traps detect only moving animals within the range of the sensor and the field of view of the camera. Animals are therefore unavailable for detection by camera traps when they are stationary, and when they are above (e.g., semi-arboreal species) or below (e.g., semi-fossorial species) the range of the sensor or the camera, regardless of their distance from the camera in two dimensions. This temporally limited availability for detection must be accounted for to avoid negative bias in estimated densities. When data are abundant, researchers may choose to include only data from times when 100% of the population can be assumed to be active within the vertical range of camera traps [@howeetal]. However, for rarely-detected species or surveys with lower effort, it might be necessary to include most or all observations of distance. In these situations, survey duration ($T_k$) might be 12- or 24-hours per day, and it becomes necessary to estimate the proportion of time included in $T_k$ when animals were available for detection. Methods for estimating this proportion directly from CT data have been described [@rowcliffe_2014], and it can be included in analyses to estimate density [@bessone_2020], for example as another multiplier, potentially with an associated standard errors. + +## Data input + +Times of independent camera triggering events for the period 28 June 21 September 2014 at 23 cameras are recorded in a file described in the data repository @dryad. [Download the file from Dryad](https://datadryad.org/stash/downloads/file_stream/73223) and save to your local drive, then read with the following code: + +```{r, readin, message=FALSE} +trigger.events <- read.table(file="VideoStartTimes_FullDays.txt", header=TRUE) +``` + +The format of the `trigger.events` data frame is adjusted to create a `datetime` field for use in the `activity` package @activity_pkg + +```{r massage} +trigger.events$date <- paste("2014", + sprintf("%02i", trigger.events$month), + sprintf("%02i", trigger.events$day), + sep="/") +trigger.events$time <- paste(sprintf("%02i", trigger.events$hour), + sprintf("%02i", trigger.events$minute), + sep=":") +trigger.events$datetime <- paste(trigger.events$date, trigger.events$time) +``` + +## Functions in the `activity` package + +We will employ two functions from the `activity` package. First, convert the time of day of a camera triggering event into the fraction of the 24hr cycle when the event took place, measured in radians. In other words, an event occurring at midday is recorded as $\pi$ and an event occurring at midnight is recorded as 2$\pi$. + +```{r radian, eval=solution} +library(activity) +trigger.events$rtime <- gettime(trigger.events$datetime, + tryFormats = "%Y/%m/%d %H:%M", + scale = "radian") +``` + +With the radian conversion of the camera triggering times, the distribution of the triggering events times is smoothed, using a kernel smoother by the function `fitact`. The function estimates the proportion of time (in a 24hr day) animals were active. In addition, the triggering time data can be resampled to provide a measure of uncertainty in the point estimate of activity proportion. + +```{r activity, eval=solution} +act_result <- fitact(trigger.events$rtime, sample="data", reps=100) +``` + +A plot of the histogram of triggering times (Figure \@ref(fig:actplot)), along with the fitted smooth is provided by a plot function applied to the object returned by `fitact`. + +```{r actplot, eval=solution, fig.dim=c(7,5), fig.cap="Fitted smooth to histogram of camera triggering times for Maxwell's duiker data."} +plot(act_result) +``` + +The value computed by the smooth through the activity histogram can be extracted from the object created by `fitact`. The extraction reaches into the object to look at the `slot` called `act`. The uncertainty around the point estimate is derived from resampling that takes place within `fitact`. The slot will display the point estimates, standard error and confidence interval bounds. + +```{r thenumber, eval=solution} +print(act_result@act) +``` + +The output above would be used to adjust density estimates for temporal activity **if** the cameras were in operation 24hrs per day. However, in this study, cameras were only active for 11.5 hours per day (0630-1800). + +## Adjustment for temporal availability + +We use the temporal availability information to create a *multiplier*. Our multiplier must be defined as +> proportion of the *camera operation time* animals were available to be detected + +This is not equivalent to the value produced by the `fitact` function; that value is the proportion of *24hr* animals were available to be detected. The availability multiplier must be adjusted based on the daily camera operation period. Uncertainty in this proportion is also included in our computations. + +The point estimate and standard error are pulled from the `fitact` object, adjusted for daily camera operation time and placed into a data frame named `creation` in a named list, specifically in the fashion shown. + +```{r avmultiplier, eval=solution} +camera.operation.per.day <- 11.5 +prop.camera.time <- camera.operation.per.day / 24 +avail <- list(creation=data.frame(rate = act_result@act[1]/prop.camera.time, + SE = act_result@act[2]/prop.camera.time)) +``` + +A more robust way of incorporating uncertainty in the temporal availability estimate will be described later. + +# Detection data analysis + +Detection distances for the full daytime data set is also available on @dryad. [Download from Dryad](https://datadryad.org/stash/downloads/file_stream/73221) and is read in the code chunk below: + +```{r DuikerCameraTraps} +DuikerCameraTraps <- read.csv(file="DaytimeDistances.txt", header=TRUE, sep="\t") +DuikerCameraTraps$Area <- DuikerCameraTraps$Area / (1000*1000) +DuikerCameraTraps$object <- NA +DuikerCameraTraps$object[!is.na(DuikerCameraTraps$distance)] <- 1:sum(!is.na(DuikerCameraTraps$distance)) +``` + +Data file recorded study area size in square meters; second line above converts this to area in square kilometers; the remaining lines create an `object` field, which uniquely identify each observation. + +## Exploratory Data Analysis + +A quick summary of the data set including: How many camera stations and how many detections in total. + +```{r smaltable} +sum(!is.na(DuikerCameraTraps$distance)) +table(DuikerCameraTraps$Sample.Label) +``` + +Note, three sampling stations (B1, C5, E4) had no detections. The one record for each of those stations has distance recorded as `NA`, but the record is important because it contains effort information. + +## Distance recording + +An examination of the distribution of detection distances; note the bespoke cutpoints causing distance bins to be narrow out to 8m, then increasing in width to the maximum detection distance of 21m (Figure \@ref(fig:distances)). + +```{r, distances, fig.dim = c(7, 5), fig.cap = "Distribution of detection distances during peak activity period."} +breakpoints <- c(seq(0, 8, 1), 10, 12, 15, 21) +hist(DuikerCameraTraps$distance, breaks=breakpoints, main="Peak activity data set", + xlab="Radial distance (m)") +``` + +## Truncation decisions + +As described by @howeetal: + +> a paucity of observations between 1 and 2 m but not between 2 and 3 m, so we left-truncated at 2 m. Fitted detection functions and probability density functions were heavy-tailed when distances \>15 m were included, so we right truncated at 15 m. + +## Detection function fits + +The conversion factor must be included **both** in the call to `ds()` and the call to `bootdht()`. + +Candidate models considered here differ from the candidate set presented in @howeetal. This set includes + +- uniform key with 1, 2 and 3 cosine adjustments, +- half normal key with 0, 1 and 2 cosine adjustment and +- hazard rate key with 0, 1 simple polynomial adjustments. + +The maximum number of parameters in models within the candidate model set is no more than 3. + +```{r fit} +library(Distance) +trunc.list <- list(left = 2, right = 15) +mybreaks <- c(seq(2, 8, 1), 10, 12, 15) +conversion <- convert_units("meter", NULL, "square kilometer") +uni1 <- ds(DuikerCameraTraps, transect = "point", key = "unif", adjustment = "cos", + nadj = 1, convert_units = conversion, + cutpoints = mybreaks, truncation = trunc.list) +uni2 <- ds(DuikerCameraTraps, transect = "point", key = "unif", adjustment = "cos", + nadj = 2, convert_units = conversion, + cutpoints = mybreaks, truncation = trunc.list) +uni3 <- ds(DuikerCameraTraps, transect = "point", key = "unif", adjustment = "cos", + nadj = 3, convert_units = conversion, + cutpoints = mybreaks, truncation = trunc.list) + +hn0 <- ds(DuikerCameraTraps, transect = "point", key = "hn", adjustment = NULL, + convert_units = conversion, cutpoints = mybreaks, truncation = trunc.list) +hn1 <- ds(DuikerCameraTraps, transect = "point", key = "hn", adjustment = "cos", + nadj = 1, convert_units = conversion, + cutpoints = mybreaks, truncation = trunc.list) +hn2 <- ds(DuikerCameraTraps, transect = "point", key = "hn", adjustment = "cos", + nadj = 2, convert_units = conversion, + cutpoints = mybreaks, truncation = trunc.list) + +hr0 <- ds(DuikerCameraTraps, transect = "point", key = "hr", adjustment = NULL, + convert_units = conversion, cutpoints = mybreaks, truncation = trunc.list) +hr1 <- ds(DuikerCameraTraps, transect = "point", key = "hr", adjustment = "poly", + nadj = 1, convert_units = conversion, + cutpoints = mybreaks, truncation = trunc.list) +``` + +We do not present the density estimates produced from the fitted detection function models because a) we have not chosen a preferred model and b) the density estimates have not been adjusted for viewing angle and temporal availability. + +## Model selection adjustments from overdispersion + +Overdispersion causes AIC to select overly-complex models, so analysts should specify the number/order of adjustment terms manually when fitting distance sampling models to data from camera traps, rather than allowing automated selection using AIC. @howe_model_2019 describe two methods for performing model selection of distance sampling models in the face of overdispersion. Here we provide R functions to perform the first of these methods. The first method of @howe_model_2019 employs a two-step process. First, an overdisersion factor $(\hat{c})$ is computed for each key function family from the most complex model in each family. The $\hat{c}$ is derived from the $\chi^2$ goodness of fit test statistic divided by its degrees of freedom. This results in an adjusted AIC score for each model in the key function family: + +$$QAIC = -2 \left \{ \frac{log(\mathcal{L}(\hat{\theta}))}{\hat{c}} \right \} + 2K$$ + +Code to perform this QAIC computation is found in the function `QAIC` in the `Distance` package, and produces the following results: + + +Tables of QAIC values for each key function family are shown below (code for `kable()` calls suppressed for easier readability of results). + +```{r pass1a, echo=FALSE} +knitr::kable(QAIC(uni1, uni2, uni3), + caption="QAIC values for uniform key models.") %>% + kable_paper(full_width = FALSE) %>% + row_spec(3, bold=TRUE, background = "#ff8c1a") +``` + +```{r pass1b, echo=FALSE} +knitr::kable(QAIC(hn0, hn1, hn2), + caption="QAIC values for half normal key models.") %>% + kable_paper(full_width = FALSE) %>% + row_spec(2, bold=TRUE, background = "#ff8c1a") +``` + +```{r pass1c, echo=FALSE} +knitr::kable(QAIC(hr0, hr1), + caption="QAIC values for hazard rate key models.") %>% + kable_paper(full_width = FALSE) %>% + row_spec(1, bold=TRUE, background = "#ff8c1a") +``` + +From this first pass of model selection based on QAIC values, we find the model with the uniform key function preferred by QAIC has three cosine adjustment terms. The preferred model from the half normal key function family has one cosine adjustment term. Finally, the preferable model from the hazard rate key function family has no adjustment terms. + +The second step of model selection ranks the models by their $\hat{c}$ values. + +```{r pass2} +chats <- chi2_select(uni3, hn1, hr0)$criteria +modnames <- unlist(lapply(list(uni3, hn1, hr0), function(x) x$ddf$name.message)) +results <- data.frame(modnames, chats) +results.sort <- results[order(results$chats),] +knitr::kable(results.sort, digits=2, row.names = FALSE, + caption="Compare with Table S5 of Howe et al. (2018)") %>% + kable_paper(full_width = FALSE) %>% + row_spec(1, bold=TRUE, background = "#4da6ff") + +``` + +For this data set, the model chosen by this algorithm that adjusts for overdispersion is the same model (uniform key with three cosine adjustments) as would have been chosen by conventional model selection; but again, not the model selected by @howeetal because of the differing candidate model sets. + +## Sense check for detection parameter estimates + +As a check of the detection function vis-a-vis @howeetal, the paper reports the effective detection radius ($\rho$) to be 9.4m for the peak activity data set. @howeetal employed a different candidate model set, resulting in the unadjusted hazard rate model as the preferred model. Here we present the estimated effective detection radius from the selected uniform key function with three cosine adjustment terms. + +The effective detection radius can be derived from $\hat{P_a}$ as reported by the function `ds` as + +$$\hat{\rho} = \sqrt{\hat{P_a} \cdot w^2}$$ + +```{r} +p_a <- uni3$ddf$fitted[1] +w <- range(mybreaks)[2] - range(mybreaks)[1] +rho <- sqrt(p_a * w^2) +``` + +$\hat{P_a}$ is estimated to be `r round(p_a,3)`, resulting in an estimate of $\hat{\rho}$ of `r round(rho,3)`. + +## Selected detection function + +Figure \@ref(fig:selected) shows the detection function probability density function of selected model. + +```{r, selected, fig.dim=c(4,4), fig.cap="Detection function and probability density function of the selected detection function model.", fig.show='hold'} +plot(uni3, main="Daytime activity", xlab="Distance (m)", + showpoints=FALSE, lwd=3, xlim=c(0, 15)) +plot(uni3, main="Daytime activity", xlab="Distance (m)", pdf=TRUE, + showpoints=FALSE, lwd=3, xlim=c(0, 15)) +``` + +## Density estimates + +The camera traps do not view the entire area around them, as would be the case with simple point transect sampling. The portion of the area sampled needs to be incorporated in the estimation of abundance. The data file contains a column `multiplier` that represents the proportion of the circle sampled. @howeetal notes the camera angle of view (AOV) of 42$^{\circ}$. The proportion of the circle viewed is this value over 360$^{\circ}$. + +An argument to `dht2` is `sample_fraction`, an obvious place to include this quantity. We also add the multiplier for temporal availability described in [the section on temporal availability](#adjustment-for-temporal-availability) The `dht2` function will produce analytical measures of precision with this call. + +```{r, sampfrac} +viewangle <- 42 # degrees +samfrac <- viewangle / 360 +peak.uni.dens <- dht2(uni3, flatfile=DuikerCameraTraps, strat_formula = ~1, + sample_fraction = samfrac, er_est = "P2", multipliers = avail, + convert_units = conversion) +print(peak.uni.dens, report="density") +``` + +# Bootstrap for variance estimation + +To produce a more reliable estimate of the precision of the point estimate, produce bootstrap estimates using `bootdht`. The user needs to create a function and another named list to facilitate use of the bootstrap: a summary function to extract information from each replicate and a multiplier list describing how temporal availability is being derived. + +## Summary function + +As constructed, `mysummary` will keep the density estimate produced by each bootstrap replicate and the stratum (if any) to which the estimate pertains. + +```{r mysummary} +mysummary <- function(ests, fit){ + return(data.frame(Label = ests$individuals$D$Label, + Dhat = ests$individuals$D$Estimate)) +} +``` + +## Multiplier function + +This rather complex list makes use of `make_activity_fn` that exists in the `Distance` package used to call the `fitact` function from the `activity` package. For the user, your responsibility is to provide three arguments to this function: + +- vector containing the detection times in radians (computed in [earlier section](#functions-in-the-activity-package)), +- the manner in which precision of the temporal availability estimate is produced and +- the number of hours per day the cameras are in operation + +```{r multifunc, eval=solution} +mult <- list(availability= make_activity_fn(trigger.events$rtime, sample="data", + detector_daily_duration=camera.operation.per.day)) +``` + +## Speeding up the bootstrap + +Bootstrap analyses of camera trap data can be quite slow. In general, camera traps produce a large amount of distance sampling data, and in addition these data tend to be "overdispersed" meaning (in this case) that there are lots of observations with the same distances. Together, this can cause analyses to run slowly, and this can be especially true for bootstrap analyses for variance estimation. + +One way to speed up the bootstrap is to run multiple analyses in parallel, using multiple cores of your computer. You can achieve this using the `cores` argument to `bootdht` - for fastest results set this to the number of cores on your machine minus 1 (best to leave 1 free for other things). You can find the number of cores by calling `parallel::detectCores()` and we do this in the code below. + +Another possible speed-up is to set starting values - but this is quite an advanced technique and so we come back to this later in this document. + +## Remaining arguments to `bootdht` + +Just as with `dht2` there are arguments for the `model`, `flatfile`, `sample_fraction`, `convert.units` and `multipliers` (although for `bootdht` `multipliers` uses a function rather than a single value). The only novel arguments to `dht2` are `resample_transects` indicating camera stations are to be resampled with replacement, and `nboot` for the number of bootstrap replicates. + +```{r, bootstrap, results='hide', eval=solution} +n.cores <- parallel::detectCores() +daytime.boot.uni <- bootdht(model=uni3, flatfile=DuikerCameraTraps, + resample_transects = TRUE, nboot = 500, + cores = n.cores - 1, + summary_fun=mysummary, sample_fraction = samfrac, + convert_units = conversion, multipliers=mult) +``` + +## Confidence limits computed via the percentile method of the bootstrap. + +```{r bootresult, eval=solution} +print(summary(daytime.boot.uni)) +``` + +```{r, sampdist, fig.dim=c(8,6), fig.cap="Distribution of density estimates from bootstrap replicates. Red dashed lines indicate bootstrap 95% confidence intervals (obtained using the quantile method); grey dashed lines indicate the analytical 95% confidence intervals obtained earlier.", eval=solution} +hist(daytime.boot.uni$Dhat, breaks = 20, + xlab = "Estimated density", main = "D-hat estimates bootstraps") +abline(v = quantile(daytime.boot.uni$Dhat, probs = c(0.025,0.975), na.rm = TRUE), lwd = 2, lty = 2, col = "red") +abline(v = c(peak.uni.dens$LCI/peak.uni.dens$Area, peak.uni.dens$UCI/peak.uni.dens$Area), lwd = 2, lty = 2, col = "grey") +``` + +The confidence interval derived from the bootstrap is wider than the confidence interval derived from analytical methods (Figure \@ref(fig:sampdist)). + +## An esoteric note on starting values and bootstrapping + +Feel free to skip this unless you're a fairly advanced user! + +In some cases, it may be necessary to set starting values for the detection function optimization, to help it converge. This can be achieved using the `initial_values` argument of the `ds` function. As an example, say we want to use the fitted values from the uniform + 2 cosine function `uni2` as starting values for the first two parameters of the uniform + 3 cosine function fitting (and 0 for the third parameter). The following code does this: + +```{r, startvals, eval = solution} +uni3.with.startvals <- ds(DuikerCameraTraps, transect = "point", key="unif", adjustment = "cos", + nadj=3, + cutpoints = mybreaks, truncation = trunc.list, + initial_values = list(adjustment = c(as.numeric(uni2$ddf$par), 0))) +``` + +What about when it comes to bootstrapping for variance estimation. You can pass this model in to `boot.dht` with no problems, so long as you don't set `ncores` to more than 1. If you do set `ncores` to more than 1 it won't work, returning 0 successful bootstraps. Why? Because `uni2$ddf$par` is not passed along to all those parallel cores. To fix this you have to hard-code the starting values. So, in this example, we see that the values are + +```{r, startvals2, eval = solution} +print(uni2$ddf$par) +``` + +and so we use + +```{r, startvals3, eval = solution} +uni3.with.startvals <- ds(DuikerCameraTraps, transect = "point", key="unif", adjustment = "cos", + nadj=3, + cutpoints = mybreaks, truncation = trunc.list, + initial_values = list(adjustment = c(0.97177303, 0.03540654, 0))) +``` + +and this will work fine in `bootdht`. + +A final tip is that setting starting values can sometimes speed up the bootstrap (as optimization is faster if it starts from a good initial spot), so you might want to pass in the starting values from `uni3` to your bootstrap routine - something like the following, which we found nearly halved the run time on our test machine. Note, this code is set not to run in this examples file - just here to show what you might use. + +```{r, startvals4, eval = FALSE} +print(uni3$ddf$par) +uni3.with.startvals <- ds(DuikerCameraTraps, transect = "point", key="unif", adjustment = "cos", + nadj=3, + cutpoints = mybreaks, truncation = trunc.list, + optimizer = "MCDS", + initial_values = list(adjustment = c(0.93518220, -0.05345965, -0.08073799))) +daytime.boot.uni <- bootdht(model=uni3.with.startvals, flatfile=DuikerCameraTraps, + resample_transects = TRUE, nboot = 500, + cores = n.cores - 1, + summary_fun=mysummary, sample_fraction = samfrac, + convert_units = conversion, multipliers=mult) +``` + +# References \ No newline at end of file diff --git a/vignettes/web-only/CTDS/camera-distill.html b/vignettes/web-only/CTDS/camera-distill.html new file mode 100644 index 0000000..b315204 --- /dev/null +++ b/vignettes/web-only/CTDS/camera-distill.html @@ -0,0 +1,1161 @@ + + + + + + + + + + + + + + +Analysis of camera trapping data + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Analysis of camera trapping data

    +

    Eric Howe, Eric Rexstad and Len Thomas

    +
    +CREEM, Univ of St Andrews

    November 2024

    + + + + +
    +

    Analysis of camera trapping data using distance sampling

    +

    A distance sampling approach to the analysis of camera trapping data offers the potential advantage that individual animal identification is not required. However, accurate animal-to-camera detection distances are required. This requires calibration prior to the survey with images of objects taken at known distances from the camera. See details in Howe, Buckland, Després-Einspenner, & Kühl (2017) for description of the field work and data analysis. Here we present analysis of data from Howe et al. (2017) using the R package Distance (Miller, Rexstad, Thomas, Marshall, & Laake, 2019).

    +
    +

    Estimating temporal availability for detection

    +

    Heat- and motion-sensitive camera traps detect only moving animals within the range of the sensor and the field of view of the camera. Animals are therefore unavailable for detection by camera traps when they are stationary, and when they are above (e.g., semi-arboreal species) or below (e.g., semi-fossorial species) the range of the sensor or the camera, regardless of their distance from the camera in two dimensions. This temporally limited availability for detection must be accounted for to avoid negative bias in estimated densities. When data are abundant, researchers may choose to include only data from times when 100% of the population can be assumed to be active within the vertical range of camera traps (Howe et al., 2017). However, for rarely-detected species or surveys with lower effort, it might be necessary to include most or all observations of distance. In these situations, survey duration (\(T_k\)) might be 12- or 24-hours per day, and it becomes necessary to estimate the proportion of time included in \(T_k\) when animals were available for detection. Methods for estimating this proportion directly from CT data have been described (Rowcliffe, Kays, Kranstauber, Carbone, & Jansen, 2014), and it can be included in analyses to estimate density (Bessone et al., 2020), for example as another multiplier, potentially with an associated standard errors.

    +
    +
    +

    Data input

    +

    Times of independent camera triggering events for the period 28 June 21 September 2014 at 23 cameras are recorded in a file described in the data repository Howe, Buckland, Després-Einspenner, Kühl, & Buckland (2018). Download the file from Dryad and save to your local drive, then read with the following code:

    +
    trigger.events <- read.table(file="VideoStartTimes_FullDays.txt", header=TRUE)
    +

    The format of the trigger.events data frame is adjusted to create a datetime field for use in the activity package Rowcliffe (2021)

    +
    trigger.events$date <- paste("2014",
    +                       sprintf("%02i", trigger.events$month), 
    +                       sprintf("%02i", trigger.events$day),
    +                       sep="/")
    +trigger.events$time <- paste(sprintf("%02i", trigger.events$hour),
    +                       sprintf("%02i", trigger.events$minute),
    +                       sep=":")
    +trigger.events$datetime <- paste(trigger.events$date, trigger.events$time)
    +
    +
    +

    Functions in the activity package

    +

    We will employ two functions from the activity package. First, convert the time of day of a camera triggering event into the fraction of the 24hr cycle when the event took place, measured in radians. In other words, an event occurring at midday is recorded as \(\pi\) and an event occurring at midnight is recorded as 2\(\pi\).

    +
    library(activity)
    +trigger.events$rtime <- gettime(trigger.events$datetime, 
    +                                tryFormats = "%Y/%m/%d %H:%M",
    +                                scale = "radian")
    +

    With the radian conversion of the camera triggering times, the distribution of the triggering events times is smoothed, using a kernel smoother by the function fitact. The function estimates the proportion of time (in a 24hr day) animals were active. In addition, the triggering time data can be resampled to provide a measure of uncertainty in the point estimate of activity proportion.

    +
    act_result <- fitact(trigger.events$rtime, sample="data", reps=100)
    +

    A plot of the histogram of triggering times (Figure 1), along with the fitted smooth is provided by a plot function applied to the object returned by fitact.

    +
    plot(act_result)
    +
    +Fitted smooth to histogram of camera triggering times for Maxwell's duiker data. +

    +Figure 1: Fitted smooth to histogram of camera triggering times for Maxwell’s duiker data. +

    +
    +

    The value computed by the smooth through the activity histogram can be extracted from the object created by fitact. The extraction reaches into the object to look at the slot called act. The uncertainty around the point estimate is derived from resampling that takes place within fitact. The slot will display the point estimates, standard error and confidence interval bounds.

    +
    print(act_result@act)
    +
    ##        act         se   lcl.2.5%  ucl.97.5% 
    +## 0.33463831 0.02354367 0.28663522 0.38147082
    +

    The output above would be used to adjust density estimates for temporal activity if the cameras were in operation 24hrs per day. However, in this study, cameras were only active for 11.5 hours per day (0630-1800).

    +
    +
    +

    Adjustment for temporal availability

    +

    We use the temporal availability information to create a multiplier. Our multiplier must be defined as +> proportion of the camera operation time animals were available to be detected

    +

    This is not equivalent to the value produced by the fitact function; that value is the proportion of 24hr animals were available to be detected. The availability multiplier must be adjusted based on the daily camera operation period. Uncertainty in this proportion is also included in our computations.

    +

    The point estimate and standard error are pulled from the fitact object, adjusted for daily camera operation time and placed into a data frame named creation in a named list, specifically in the fashion shown.

    +
    camera.operation.per.day <- 11.5
    +prop.camera.time <- camera.operation.per.day / 24
    +avail <- list(creation=data.frame(rate = act_result@act[1]/prop.camera.time,
    +                                  SE   = act_result@act[2]/prop.camera.time))
    +

    A more robust way of incorporating uncertainty in the temporal availability estimate will be described later.

    +
    +
    +
    +

    Detection data analysis

    +

    Detection distances for the full daytime data set is also available on Howe et al. (2018). Download from Dryad and is read in the code chunk below:

    +
    DuikerCameraTraps <- read.csv(file="DaytimeDistances.txt", header=TRUE, sep="\t")
    +DuikerCameraTraps$Area <- DuikerCameraTraps$Area / (1000*1000)
    +DuikerCameraTraps$object <- NA
    +DuikerCameraTraps$object[!is.na(DuikerCameraTraps$distance)] <- 1:sum(!is.na(DuikerCameraTraps$distance))
    +

    Data file recorded study area size in square meters; second line above converts this to area in square kilometers; the remaining lines create an object field, which uniquely identify each observation.

    +
    +

    Exploratory Data Analysis

    +

    A quick summary of the data set including: How many camera stations and how many detections in total.

    +
    sum(!is.na(DuikerCameraTraps$distance))
    +
    ## [1] 11180
    +
    table(DuikerCameraTraps$Sample.Label)
    +
    ## 
    +##   A1   A2   A3   A4   B1   B2   B3   B4   C1   C2   C3   C4   C5   C6   D3   D4 
    +##  388   66  988  420    3 1951   73  208   52  195  767  153   41 2682  342  193 
    +##   D5   E3   E4   E5   E6 
    +##  524  518    1  375 1241
    +

    Note, three sampling stations (B1, C5, E4) had no detections. The one record for each of those stations has distance recorded as NA, but the record is important because it contains effort information.

    +
    +
    +

    Distance recording

    +

    An examination of the distribution of detection distances; note the bespoke cutpoints causing distance bins to be narrow out to 8m, then increasing in width to the maximum detection distance of 21m (Figure 2).

    +
    breakpoints <- c(seq(0, 8, 1), 10, 12, 15, 21)
    +hist(DuikerCameraTraps$distance, breaks=breakpoints, main="Peak activity data set",
    +     xlab="Radial distance (m)")
    +
    +Distribution of detection distances during peak activity period. +

    +Figure 2: Distribution of detection distances during peak activity period. +

    +
    +
    +
    +

    Truncation decisions

    +

    As described by Howe et al. (2017):

    +
    +

    a paucity of observations between 1 and 2 m but not between 2 and 3 m, so we left-truncated at 2 m. Fitted detection functions and probability density functions were heavy-tailed when distances >15 m were included, so we right truncated at 15 m.

    +
    +
    +
    +

    Detection function fits

    +

    The conversion factor must be included both in the call to ds() and the call to bootdht().

    +

    Candidate models considered here differ from the candidate set presented in Howe et al. (2017). This set includes

    +
      +
    • uniform key with 1, 2 and 3 cosine adjustments,
    • +
    • half normal key with 0, 1 and 2 cosine adjustment and
    • +
    • hazard rate key with 0, 1 simple polynomial adjustments.
    • +
    +

    The maximum number of parameters in models within the candidate model set is no more than 3.

    +
    library(Distance)
    +trunc.list <- list(left = 2, right = 15)
    +mybreaks <- c(seq(2, 8, 1), 10, 12, 15)
    +conversion <- convert_units("meter", NULL, "square kilometer")
    +uni1 <- ds(DuikerCameraTraps, transect = "point", key = "unif", adjustment = "cos",
    +           nadj = 1, convert_units = conversion,
    +           cutpoints = mybreaks, truncation = trunc.list)
    +
    ## Warning in create_bins(data, cutpoints): Some distances were outside bins and
    +## have been removed.
    +
    uni2 <- ds(DuikerCameraTraps, transect = "point", key = "unif", adjustment = "cos",
    +           nadj = 2, convert_units = conversion,
    +           cutpoints = mybreaks, truncation = trunc.list)
    +
    ## Warning in create_bins(data, cutpoints): Some distances were outside bins and
    +## have been removed.
    +
    uni3 <- ds(DuikerCameraTraps, transect = "point", key = "unif", adjustment = "cos",
    +           nadj = 3, convert_units = conversion,
    +           cutpoints = mybreaks, truncation = trunc.list)
    +
    ## Warning in create_bins(data, cutpoints): Some distances were outside bins and
    +## have been removed.
    +
    hn0 <- ds(DuikerCameraTraps, transect = "point", key = "hn", adjustment = NULL,
    +          convert_units = conversion, cutpoints = mybreaks, truncation = trunc.list)
    +
    ## Warning in create_bins(data, cutpoints): Some distances were outside bins and
    +## have been removed.
    +
    hn1 <- ds(DuikerCameraTraps, transect = "point", key = "hn", adjustment = "cos",
    +          nadj = 1, convert_units = conversion,
    +          cutpoints = mybreaks, truncation = trunc.list)
    +
    ## Warning in create_bins(data, cutpoints): Some distances were outside bins and
    +## have been removed.
    +
    hn2 <- ds(DuikerCameraTraps, transect = "point", key = "hn", adjustment = "cos",
    +          nadj = 2, convert_units = conversion,
    +          cutpoints = mybreaks, truncation = trunc.list)
    +
    ## Warning in create_bins(data, cutpoints): Some distances were outside bins and
    +## have been removed.
    +
    hr0 <- ds(DuikerCameraTraps, transect = "point", key = "hr", adjustment = NULL,
    +          convert_units = conversion, cutpoints = mybreaks, truncation = trunc.list)
    +
    ## Warning in create_bins(data, cutpoints): Some distances were outside bins and
    +## have been removed.
    +
    hr1 <- ds(DuikerCameraTraps, transect = "point", key = "hr", adjustment = "poly",
    +          nadj = 1, convert_units = conversion,
    +          cutpoints = mybreaks, truncation = trunc.list)
    +
    ## Warning in create_bins(data, cutpoints): Some distances were outside bins and
    +## have been removed.
    +

    We do not present the density estimates produced from the fitted detection function models because a) we have not chosen a preferred model and b) the density estimates have not been adjusted for viewing angle and temporal availability.

    +
    +
    +

    Model selection adjustments from overdispersion

    +

    Overdispersion causes AIC to select overly-complex models, so analysts should specify the number/order of adjustment terms manually when fitting distance sampling models to data from camera traps, rather than allowing automated selection using AIC. Howe, Buckland, Després-Einspenner, & Kühl (2019) describe two methods for performing model selection of distance sampling models in the face of overdispersion. Here we provide R functions to perform the first of these methods. The first method of Howe et al. (2019) employs a two-step process. First, an overdisersion factor \((\hat{c})\) is computed for each key function family from the most complex model in each family. The \(\hat{c}\) is derived from the \(\chi^2\) goodness of fit test statistic divided by its degrees of freedom. This results in an adjusted AIC score for each model in the key function family:

    +

    \[QAIC = -2 \left \{ \frac{log(\mathcal{L}(\hat{\theta}))}{\hat{c}} \right \} + 2K\]

    +

    Code to perform this QAIC computation is found in the function QAIC in the Distance package, and produces the following results:

    +

    Tables of QAIC values for each key function family are shown below (code for kable() calls suppressed for easier readability of results).

    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Table 1: Table 2: QAIC values for uniform key models. +
    + +df + +QAIC +
    +uni1 + +1 + +2824.517 +
    +uni2 + +2 + +2826.023 +
    +uni3 + +3 + +2823.125 +
    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Table 3: Table 4: QAIC values for half normal key models. +
    + +df + +QAIC +
    +hn0 + +1 + +2295.446 +
    +hn1 + +2 + +2291.497 +
    +hn2 + +3 + +2293.341 +
    + + + + + + + + + + + + + + + + + + + + + +
    +Table 5: Table 6: QAIC values for hazard rate key models. +
    + +df + +QAIC +
    +hr0 + +2 + +2465.086 +
    +hr1 + +3 + +2466.362 +
    +

    From this first pass of model selection based on QAIC values, we find the model with the uniform key function preferred by QAIC has three cosine adjustment terms. The preferred model from the half normal key function family has one cosine adjustment term. Finally, the preferable model from the hazard rate key function family has no adjustment terms.

    +

    The second step of model selection ranks the models by their \(\hat{c}\) values.

    +
    chats <- chi2_select(uni3, hn1, hr0)$criteria
    +modnames <- unlist(lapply(list(uni3, hn1, hr0), function(x) x$ddf$name.message))
    +results <- data.frame(modnames, chats)
    +results.sort <- results[order(results$chats),]
    +knitr::kable(results.sort, digits=2, row.names = FALSE,
    +             caption="Compare with Table S5 of Howe et al. (2018)") %>%
    +  kable_paper(full_width = FALSE) %>%
    +  row_spec(1, bold=TRUE,  background = "#4da6ff")
    + + + + + + + + + + + + + + + + + + + + + + +
    +Table 7: Table 8: Compare with Table S5 of Howe et al. (2018) +
    +modnames + +chats +
    +uniform key function with cosine(1,2,3) adjustments + +15.63 +
    +half-normal key function with cosine(2) adjustments + +16.55 +
    +hazard-rate key function + +17.21 +
    +

    For this data set, the model chosen by this algorithm that adjusts for overdispersion is the same model (uniform key with three cosine adjustments) as would have been chosen by conventional model selection; but again, not the model selected by Howe et al. (2017) because of the differing candidate model sets.

    +
    +
    +

    Sense check for detection parameter estimates

    +

    As a check of the detection function vis-a-vis Howe et al. (2017), the paper reports the effective detection radius (\(\rho\)) to be 9.4m for the peak activity data set. Howe et al. (2017) employed a different candidate model set, resulting in the unadjusted hazard rate model as the preferred model. Here we present the estimated effective detection radius from the selected uniform key function with three cosine adjustment terms.

    +

    The effective detection radius can be derived from \(\hat{P_a}\) as reported by the function ds as

    +

    \[\hat{\rho} = \sqrt{\hat{P_a} \cdot w^2}\]

    +
    p_a <- uni3$ddf$fitted[1]
    +w <- range(mybreaks)[2] - range(mybreaks)[1]
    +rho <- sqrt(p_a * w^2)
    +

    \(\hat{P_a}\) is estimated to be 0.329, resulting in an estimate of \(\hat{\rho}\) of 7.457.

    +
    +
    +

    Selected detection function

    +

    Figure 3 shows the detection function probability density function of selected model.

    +
    plot(uni3, main="Daytime activity", xlab="Distance (m)",
    +     showpoints=FALSE, lwd=3, xlim=c(0, 15))
    +plot(uni3, main="Daytime activity", xlab="Distance (m)", pdf=TRUE,
    +     showpoints=FALSE, lwd=3, xlim=c(0, 15))
    +
    +Detection function and probability density function of the selected detection function model.Detection function and probability density function of the selected detection function model. +

    +Figure 3: Detection function and probability density function of the selected detection function model. +

    +
    +
    +
    +

    Density estimates

    +

    The camera traps do not view the entire area around them, as would be the case with simple point transect sampling. The portion of the area sampled needs to be incorporated in the estimation of abundance. The data file contains a column multiplier that represents the proportion of the circle sampled. Howe et al. (2017) notes the camera angle of view (AOV) of 42\(^{\circ}\). The proportion of the circle viewed is this value over 360\(^{\circ}\).

    +

    An argument to dht2 is sample_fraction, an obvious place to include this quantity. We also add the multiplier for temporal availability described in the section on temporal availability The dht2 function will produce analytical measures of precision with this call.

    +
    viewangle <- 42 # degrees
    +samfrac <- viewangle / 360
    +peak.uni.dens <- dht2(uni3, flatfile=DuikerCameraTraps, strat_formula = ~1,
    +                     sample_fraction = samfrac, er_est = "P2", multipliers = avail,
    +                     convert_units = conversion)
    +print(peak.uni.dens, report="density")
    +
    ## Density estimates from distance sampling
    +## Stratification : geographical 
    +## Variance       : P2, n/L 
    +## Multipliers    : creation 
    +## Sample fraction : 0.1166667 
    +## 
    +## 
    +## Summary statistics:
    +##  .Label  Area CoveredArea   Effort     n  k ER se.ER cv.ER
    +##   Total 40.37    2596.317 31483179 10284 21  0     0 0.268
    +## 
    +## Density estimates:
    +##  .Label Estimate    se   cv    LCI   UCI     df
    +##   Total  17.2392 4.833 0.28 9.7695 30.42 23.856
    +## 
    +## Component percentages of variance:
    +##  .Label Detection    ER Multipliers
    +##   Total      2.14 91.56         6.3
    +
    +
    +
    +

    Bootstrap for variance estimation

    +

    To produce a more reliable estimate of the precision of the point estimate, produce bootstrap estimates using bootdht. The user needs to create a function and another named list to facilitate use of the bootstrap: a summary function to extract information from each replicate and a multiplier list describing how temporal availability is being derived.

    +
    +

    Summary function

    +

    As constructed, mysummary will keep the density estimate produced by each bootstrap replicate and the stratum (if any) to which the estimate pertains.

    +
    mysummary <- function(ests, fit){
    +  return(data.frame(Label = ests$individuals$D$Label,
    +                    Dhat = ests$individuals$D$Estimate))
    +}
    +
    +
    +

    Multiplier function

    +

    This rather complex list makes use of make_activity_fn that exists in the Distance package used to call the fitact function from the activity package. For the user, your responsibility is to provide three arguments to this function:

    +
      +
    • vector containing the detection times in radians (computed in earlier section),
    • +
    • the manner in which precision of the temporal availability estimate is produced and
    • +
    • the number of hours per day the cameras are in operation
    • +
    +
    mult <- list(availability= make_activity_fn(trigger.events$rtime, sample="data",
    +                                            detector_daily_duration=camera.operation.per.day))
    +
    +
    +

    Speeding up the bootstrap

    +

    Bootstrap analyses of camera trap data can be quite slow. In general, camera traps produce a large amount of distance sampling data, and in addition these data tend to be “overdispersed” meaning (in this case) that there are lots of observations with the same distances. Together, this can cause analyses to run slowly, and this can be especially true for bootstrap analyses for variance estimation.

    +

    One way to speed up the bootstrap is to run multiple analyses in parallel, using multiple cores of your computer. You can achieve this using the cores argument to bootdht - for fastest results set this to the number of cores on your machine minus 1 (best to leave 1 free for other things). You can find the number of cores by calling parallel::detectCores() and we do this in the code below.

    +

    Another possible speed-up is to set starting values - but this is quite an advanced technique and so we come back to this later in this document.

    +
    +
    +

    Remaining arguments to bootdht

    +

    Just as with dht2 there are arguments for the model, flatfile, sample_fraction, convert.units and multipliers (although for bootdht multipliers uses a function rather than a single value). The only novel arguments to dht2 are resample_transects indicating camera stations are to be resampled with replacement, and nboot for the number of bootstrap replicates.

    +
    n.cores <- parallel::detectCores()
    +daytime.boot.uni <- bootdht(model=uni3, flatfile=DuikerCameraTraps,
    +                          resample_transects = TRUE, nboot = 500, 
    +                          cores = n.cores - 1,
    +                          summary_fun=mysummary, sample_fraction = samfrac,
    +                          convert_units = conversion, multipliers=mult)
    +
    +
    +

    Confidence limits computed via the percentile method of the bootstrap.

    +
    print(summary(daytime.boot.uni))
    +
    ## Bootstrap results
    +## 
    +## Boostraps          : 500 
    +## Successes          : 499 
    +## Failures           : 1 
    +## 
    +##      median mean   se  lcl   ucl   cv
    +## Dhat  17.11 17.9 7.18 5.98 34.64 0.42
    +
    hist(daytime.boot.uni$Dhat, breaks = 20, 
    +     xlab = "Estimated density", main = "D-hat estimates bootstraps")
    +abline(v = quantile(daytime.boot.uni$Dhat, probs = c(0.025,0.975), na.rm = TRUE), lwd = 2, lty = 2, col = "red")
    +abline(v = c(peak.uni.dens$LCI/peak.uni.dens$Area, peak.uni.dens$UCI/peak.uni.dens$Area), lwd = 2, lty = 2, col = "grey")
    +
    +Distribution of density estimates from bootstrap replicates.  Red dashed lines indicate bootstrap 95% confidence intervals (obtained using the quantile method); grey dashed lines indicate the analytical 95% confidence intervals obtained earlier. +

    +Figure 4: Distribution of density estimates from bootstrap replicates. Red dashed lines indicate bootstrap 95% confidence intervals (obtained using the quantile method); grey dashed lines indicate the analytical 95% confidence intervals obtained earlier. +

    +
    +

    The confidence interval derived from the bootstrap is wider than the confidence interval derived from analytical methods (Figure 4).

    +
    +
    +

    An esoteric note on starting values and bootstrapping

    +

    Feel free to skip this unless you’re a fairly advanced user!

    +

    In some cases, it may be necessary to set starting values for the detection function optimization, to help it converge. This can be achieved using the initial_values argument of the ds function. As an example, say we want to use the fitted values from the uniform + 2 cosine function uni2 as starting values for the first two parameters of the uniform + 3 cosine function fitting (and 0 for the third parameter). The following code does this:

    +
    uni3.with.startvals <- ds(DuikerCameraTraps, transect = "point", key="unif", adjustment = "cos",
    +           nadj=3,
    +           cutpoints = mybreaks, truncation = trunc.list, 
    +           initial_values = list(adjustment = c(as.numeric(uni2$ddf$par), 0)))
    +
    ## Warning in create_bins(data, cutpoints): Some distances were outside bins and
    +## have been removed.
    +

    What about when it comes to bootstrapping for variance estimation. You can pass this model in to boot.dht with no problems, so long as you don’t set ncores to more than 1. If you do set ncores to more than 1 it won’t work, returning 0 successful bootstraps. Why? Because uni2$ddf$par is not passed along to all those parallel cores. To fix this you have to hard-code the starting values. So, in this example, we see that the values are

    +
    print(uni2$ddf$par)
    +
    ## [1] 0.97177303 0.03540654
    +

    and so we use

    +
    uni3.with.startvals <- ds(DuikerCameraTraps, transect = "point", key="unif", adjustment = "cos",
    +           nadj=3,
    +           cutpoints = mybreaks, truncation = trunc.list, 
    +           initial_values = list(adjustment = c(0.97177303, 0.03540654, 0)))
    +
    ## Warning in create_bins(data, cutpoints): Some distances were outside bins and
    +## have been removed.
    +

    and this will work fine in bootdht.

    +

    A final tip is that setting starting values can sometimes speed up the bootstrap (as optimization is faster if it starts from a good initial spot), so you might want to pass in the starting values from uni3 to your bootstrap routine - something like the following, which we found nearly halved the run time on our test machine. Note, this code is set not to run in this examples file - just here to show what you might use.

    +
    print(uni3$ddf$par)
    +uni3.with.startvals <- ds(DuikerCameraTraps, transect = "point", key="unif", adjustment = "cos",
    +           nadj=3,
    +           cutpoints = mybreaks, truncation = trunc.list, 
    +           optimizer = "MCDS",
    +           initial_values = list(adjustment = c(0.93518220, -0.05345965, -0.08073799)))
    +daytime.boot.uni <- bootdht(model=uni3.with.startvals, flatfile=DuikerCameraTraps,
    +                          resample_transects = TRUE, nboot = 500, 
    +                          cores = n.cores - 1,
    +                          summary_fun=mysummary, sample_fraction = samfrac,
    +                          convert_units = conversion, multipliers=mult)
    +
    +
    +
    +

    References

    +
    +
    +Bessone, M., Kühl, H. S., Hohmann, G., Herbinger, I., N’Goran, K. P., Asanzi, P., … Fruth, B. (2020). Drawn out of the shadows: Surveying secretive forest species with camera trap distance sampling. Journal of Applied Ecology, 57(5), 963–974. https://doi.org/10.1111/1365-2664.13602 +
    +
    +Howe, E. J., Buckland, S. T., Després-Einspenner, M.-L., & Kühl, H. S. (2017). Distance sampling with camera traps. Methods in Ecology and Evolution, 8(11), 1558–1565. https://doi.org/10.1111/2041-210X.12790 +
    +
    +Howe, E. J., Buckland, S. T., Després-Einspenner, M.-L., & Kühl, H. S. (2019). Model selection with overdispersed distance sampling data. Methods in Ecology and Evolution, 10(1), 38–47. https://doi.org/10.1111/2041-210X.13082 +
    +
    +Howe, E. J., Buckland, S. T., Després-Einspenner, M.-L., Kühl, H. S., & Buckland, S. T. (2018). Data from: Distance sampling with camera traps. https://doi.org/https://doi.org/10.5061/dryad.b4c70 +
    +
    +Miller, D., Rexstad, E., Thomas, L., Marshall, L., & Laake, J. (2019). Distance sampling in r. Journal of Statistical Software, Articles, 89(1), 1–28. https://doi.org/10.18637/jss.v089.i01 +
    +
    +Rowcliffe, J. M. (2021). Activity: Animal activity statistics. Retrieved from https://CRAN.R-project.org/package=activity +
    +
    +Rowcliffe, J. M., Kays, R., Kranstauber, B., Carbone, C., & Jansen, P. A. (2014). Quantifying levels of animal activity using camera trap data. Methods in Ecology and Evolution, 5(11), 1170–1179. https://doi.org/10.1111/2041-210X.12278 +
    +
    +
    + + + + + + + + + + + diff --git a/vignettes/web-only/CTDS/howeetal18.bib b/vignettes/web-only/CTDS/howeetal18.bib new file mode 100644 index 0000000..8b03c2d --- /dev/null +++ b/vignettes/web-only/CTDS/howeetal18.bib @@ -0,0 +1,119 @@ +@article{howeetal, +author = {Howe, Eric J. and Buckland, Stephen T. and Despr{\'e}s-Einspenner, Marie-Lyne and K{\"u}hl, Hjalmar S.}, +title = {Distance sampling with camera traps}, +journal = {Methods in Ecology and Evolution}, +volume = {8}, +number = {11}, +pages = {1558-1565}, +keywords = {animal abundance, camera trapping, density, distance sampling, Maxwell's duiker}, +doi = {10.1111/2041-210X.12790}, +url = {https://besjournals.onlinelibrary.wiley.com/doi/abs/10.1111/2041-210X.12790}, +eprint = {https://besjournals.onlinelibrary.wiley.com/doi/pdf/10.1111/2041-210X.12790}, +abstract = {Summary Reliable estimates of animal density and abundance are essential for effective wildlife conservation and management. Camera trapping has proven efficient for sampling multiple species, but statistical estimators of density from camera trapping data for species that cannot be individually identified are still in development. We extend point-transect methods for estimating animal density to accommodate data from camera traps, allowing researchers to exploit existing distance sampling theory and software for designing studies and analysing data. We tested it by simulation, and used it to estimate densities of Maxwell's duikers (Philantomba maxwellii) in Taï National Park, Côte d'Ivoire. Densities estimated from simulated data were unbiased when we assumed animals were not available for detection during long periods of rest. Estimated duiker densities were higher than recent estimates from line transect surveys, which are believed to underestimate densities of forest ungulates. We expect these methods to provide an effective means to estimate animal density from camera trapping data and to be applicable in a variety of settings.}, +year = {2017} +} + + +@article{howe_model_2019, + title = {Model selection with overdispersed distance sampling data}, + author = {Howe, Eric J. and Buckland, Stephen T. and Despr{\'e}s-Einspenner, Marie-Lyne and K{\"u}hl, Hjalmar S.}, + year = {2019}, + volume = {10}, + pages = {38--47}, + issn = {2041-210X}, + doi = {10.1111/2041-210X.13082}, + abstract = {Distance sampling (DS) is a widely used framework for estimating animal abundance. DS models assume that observations of distances to animals are independent. Non-independent observations introduce overdispersion, causing model selection criteria such as AIC or AICc to favour overly complex models, with adverse effects on accuracy and precision. We describe, and evaluate via simulation and with real data, estimators of an overdispersion factor (), and associated adjusted model selection criteria (QAIC) for use with overdispersed DS data. In other contexts, a single value of is calculated from the ``global'' model, that is the most highly parameterised model in the candidate set, and used to calculate QAIC for all models in the set; the resulting QAIC values, and associated {$\Delta$}QAIC values and QAIC weights, are comparable across the entire set. Candidate models of the DS detection function include models with different general forms (e.g. half-normal, hazard rate, uniform), so it may not be possible to identify a single global model. We therefore propose a two-step model selection procedure by which QAIC is used to select among models with the same general form, and then a goodness-of-fit statistic is used to select among models with different forms. A drawback of this approach is that QAIC values are not comparable across all models in the candidate set. Relative to AIC, QAIC and the two-step model selection procedure avoided overfitting and improved the accuracy and precision of densities estimated from simulated data. When applied to six real datasets, adjusted criteria and procedures selected either the same model as AIC or a model that yielded a more accurate density estimate in five cases, and a model that yielded a less accurate estimate in one case. Many DS surveys yield overdispersed data, including cue counting surveys of songbirds and cetaceans, surveys of social species including primates, and camera-trapping surveys. Methods that adjust for overdispersion during the model selection stage of DS analyses therefore address a conspicuous gap in the DS analytical framework as applied to species of conservation concern.}, + copyright = {\textcopyright{} 2018 The Authors. Methods in Ecology and Evolution \textcopyright{} 2018 British Ecological Society}, + file = {C\:\\Users\\erexs\\Zotero\\storage\\ZIA9EGYY\\Howe et al. - 2019 - Model selection with overdispersed distance sampli.pdf;C\:\\Users\\erexs\\Zotero\\storage\\DQHFEKRZ\\2041-210X.html}, + journal = {Methods in Ecology and Evolution}, + keywords = {animal abundance,camera trapping,cue counting,distance sampling,model selection,overdispersion,QAIC}, + language = {en}, + number = {1} +} + + + + +@Misc{dryad, + author = {Howe, Eric J. and Buckland, Steven T. and Despr{\'e}s-Einspenner, Marie-Lyne and K{\"u}hl, Hjalmar S. and Buckland, Stephen T.}, + title = {Data from: Distance sampling with camera traps}, + year = {2018}, + doi = {https://doi.org/10.5061/dryad.b4c70 }, + keywords = {Philantomba maxwellii, Population Ecology, statistics}, + language = {en}, + publisher = {Dryad}, +} + +@Article{Thomas2010, + author = {Len Thomas and Stephen T. Buckland and Eric A. Rexstad and Jeff L. Laake and Samantha Strindberg and Sharon L. Hedley and Jon R.B. Bishop and Tiago A. Marques and Kenneth P. Burnham}, + title = {Distance software: design and analysis of distance sampling surveys for estimating population size}, + doi = {10.1111/j.1365-2664.2009.01737.x}, + pages = {5--14}, + volume = {47}, + comment = {http://www3.interscience.wiley.com/cgi-bin/fulltext/122685866/PDFSTART}, + file = {:Thomasetal2010.pdf:PDF;:Thomasetalsubmitted.pdf:PDF}, + groups = {Acoustics Today}, + journal = {Journal of Applied Ecology}, + owner = {Tiago}, + subdatabase = {distance, cvonline}, + timestamp = {2009.07.29}, + year = {2010}, +} + +@article{miller, + author = {David Miller and Eric Rexstad and Len Thomas and Laura Marshall and Jeffrey Laake}, + title = {Distance sampling in R}, + journal = {Journal of Statistical Software, Articles}, + volume = {89}, + number = {1}, + year = {2019}, + keywords = {distance sampling; abundance estimation; line transect; point transects; detection function; Horvitz-Thompson; R; distance}, + abstract = {Estimating the abundance and spatial distribution of animal and plant populations is essential for conservation and management. We introduce the R package Distance that implements distance sampling methods to estimate abundance. We describe how users can obtain estimates of abundance (and density) using the package as well as documenting the links it provides with other more specialized R packages. We also demonstrate how Distance provides a migration pathway from previous software, thereby allowing us to deliver cutting-edge methods to the users more quickly.}, + issn = {1548-7660}, + pages = {1--28}, + doi = {10.18637/jss.v089.i01}, + url = {https://www.jstatsoft.org/v089/i01} +} + + +@article{bessone_2020, + title = {Drawn out of the shadows: Surveying secretive forest species with camera trap distance sampling}, + shorttitle = {Drawn out of the Shadows}, + author = {Bessone, Mattia and K{\"u}hl, Hjalmar S. and Hohmann, Gottfried and Herbinger, Ilka and N'Goran, Kouame Paul and Asanzi, Papy and Costa, Pedro B. Da and D{\'e}rozier, Violette and Fotsing, Ernest D. B. and Beka, Bernard Ikembelo and Iyomi, Mpongo D. and Iyatshi, Iyomi B. and Kafando, Pierre and Kambere, Mbangi A. and Moundzoho, Dissondet B. and Wanzalire, Musubaho L. K. and Fruth, Barbara}, + year = {2020}, + volume = {57}, + pages = {963--974}, + issn = {1365-2664}, + doi = {10.1111/1365-2664.13602}, + abstract = {With animal species disappearing at unprecedented rates, we need an efficient monitoring method providing reliable estimates of population density and abundance, critical for the assessment of population status and trend. We deployed 160 camera traps (CTs) systematically over 743 locations covering 17,127 km2 of evergreen lowland rainforest of Salonga National Park, block South, Democratic Republic of the Congo. We evaluated the applicability of CT distance sampling (CTDS) to species different in size and behaviour. To improve precision of estimates, we evaluated two methods estimating species' availability (`A') for detection by CTs. We recorded 16,700 video clips, revealing 43 different animal taxa. We estimated densities of 14 species differing in physical, behavioural and ecological traits, and extracted species-specific availability from available video footage using two methods (a) `ACa' (Cappelle et al. [2019] Am. J. Primatol., 81, e22962) and (b) `ARo' (Rowcliffe et al. [2014] Methods Ecol. Evol. 5, 1170). With sample sizes being large enough, we found minor differences between ACa and ARo in estimated densities. In contrast, low detectability and reactivity to the camera were main sources of bias. CTDS proved efficient for estimating density of homogenously rather than patchily distributed species. Synthesis and applications. Our application of camera trap distance sampling (CTDS) to a diverse vertebrate community demonstrates the enormous potential of this methodology for surveys of terrestrial wildlife, allowing rapid assessments of species' status and trends that can translate into effective conservation strategies. By providing the first estimates of understudied species such as the Congo peafowl, the giant ground pangolin and the cusimanses, CTDS may be used as a tool to revise these species' conservation status in the IUCN Red List of Threatened Species. Based on the constraints we encountered, we identify improvements to the current application, enhancing the general applicability of this method.}, + copyright = {\textcopyright{} 2020 The Authors. Journal of Applied Ecology published by John Wiley \& Sons Ltd on behalf of British Ecological Society}, + journal = {Journal of Applied Ecology}, + keywords = {biomonitoring,camera trap,cryptic species,density estimation,distance sampling,multi-species,Salonga National Park,unmarked population}, + language = {en}, + number = {5} +} + +@article{rowcliffe_2014, + title = {Quantifying levels of animal activity using camera trap data}, + author = {Rowcliffe, J. Marcus and Kays, Roland and Kranstauber, Bart and Carbone, Chris and Jansen, Patrick A.}, + year = {2014}, + volume = {5}, + pages = {1170--1179}, + issn = {2041-210X}, + doi = {10.1111/2041-210X.12278}, + abstract = {Activity level (the proportion of time that animals spend active) is a behavioural and ecological metric that can provide an indicator of energetics, foraging effort and exposure to risk. However, activity level is poorly known for free-living animals because it is difficult to quantify activity in the field in a consistent, cost-effective and non-invasive way. This article presents a new method to estimate activity level with time-of-detection data from camera traps (or more generally any remote sensors), fitting a flexible circular distribution to these data to describe the underlying activity schedule, and calculating overall proportion of time active from this. Using simulations and a case study for a range of small- to medium-sized mammal species, we find that activity level can reliably be estimated using the new method. The method depends on the key assumption that all individuals in the sampled population are active at the peak of the daily activity cycle. We provide theoretical and empirical evidence suggesting that this assumption is likely to be met for many species, but may be less likely met in large predators, or in high-latitude winters. Further research is needed to establish stronger evidence on the validity of this assumption in specific cases; however, the approach has the potential to provide an effective, non-invasive alternative to existing methods for quantifying population activity levels.}, + copyright = {\textcopyright{} 2014 The Authors. Methods in Ecology and Evolution published by John Wiley \& Sons Ltd on behalf of British Ecological Society.}, + journal = {Methods in Ecology and Evolution}, + keywords = {activity level,activity time,circular kernel,proportion active,remote sensors,Von Mises distribution,weighted kernel}, + language = {en}, + number = {11} +} + +@Manual{activity_pkg, + title = {activity: Animal Activity Statistics}, + author = {Rowcliffe, J. Marcus}, + year = {2021}, + note = {R package version 1.3.1}, + url = {https://CRAN.R-project.org/package=activity}, + } + diff --git a/vignettes/web-only/alt-optimise/DaytimeDistances.txt b/vignettes/web-only/alt-optimise/DaytimeDistances.txt new file mode 100644 index 0000000..2e77fb1 --- /dev/null +++ b/vignettes/web-only/alt-optimise/DaytimeDistances.txt @@ -0,0 +1,11182 @@ +distance Sample.Label Effort Region.Label Area multiplier utm.e utm.n +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +3.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +3.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +3.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +3.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +3.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +1.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +3.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +2.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +18 A1 1738716 Tai 40370000 0.1166667 689991 646193 +13.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +11 A1 1738716 Tai 40370000 0.1166667 689991 646193 +9 A1 1738716 Tai 40370000 0.1166667 689991 646193 +7.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +6.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +5.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +4.5 A1 1738716 Tai 40370000 0.1166667 689991 646193 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +7.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +7.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +7.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +3.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +3.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +3.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +4.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +4.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +5.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +6.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +7.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +4.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +3.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +3.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +3.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +3.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +2.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +5.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +6.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +6.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +13.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +13.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +13.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +13.5 A2 331184 Tai 40370000 0.1166667 689012 645186 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +6.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +3.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +7.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +11 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +4.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +1.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +2.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +5.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +18 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +13.5 A3 1718017 Tai 40370000 0.1166667 689007 644158 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +11 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +5.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +1.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +13.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +18 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +3.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +6.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +7.5 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +9 A4 1738716 Tai 40370000 0.1166667 688999 643213 +4.5 B1 1738716 Tai 40370000 0.1166667 689999 646201 +4.5 B1 1738716 Tai 40370000 0.1166667 689999 646201 +4.5 B1 1738716 Tai 40370000 0.1166667 689999 646201 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +18 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +5.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +4.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +11 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +13.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +7.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +6.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +9 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +2.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +1.5 B2 1511027 Tai 40370000 0.1166667 690010 645198 +3.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +4.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +5.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +6.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +7.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +11 B3 1511027 Tai 40370000 0.1166667 690017 644206 +11 B3 1511027 Tai 40370000 0.1166667 690017 644206 +11 B3 1511027 Tai 40370000 0.1166667 690017 644206 +11 B3 1511027 Tai 40370000 0.1166667 690017 644206 +13.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +13.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +13.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +13.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +13.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +4.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +4.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +5.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +5.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +2.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +5.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +7.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +7.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +7.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +7.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +1.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +3.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +3.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +4.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +5.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +5.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +6.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +7.5 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +9 B3 1511027 Tai 40370000 0.1166667 690017 644206 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +2.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +3.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +4.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +1.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +2.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +3.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +4.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +3.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +4.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +4.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +4.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +4.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +3.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +3.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +11 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +2.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +3.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +4.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +13.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +18 B4 1283338 Tai 40370000 0.1166667 690006 643198 +18 B4 1283338 Tai 40370000 0.1166667 690006 643198 +18 B4 1283338 Tai 40370000 0.1166667 690006 643198 +18 B4 1283338 Tai 40370000 0.1166667 690006 643198 +18 B4 1283338 Tai 40370000 0.1166667 690006 643198 +18 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +6.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +7.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +1.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +2.5 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +9 B4 1283338 Tai 40370000 0.1166667 690006 643198 +5.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +5.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +5.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +4.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +4.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +4.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +4.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +5.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +6.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +7.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +5.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +5.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +6.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +7.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +7.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +7.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +7.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +7.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +9 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +11 C1 1738716 Tai 40370000 0.1166667 690985 646203 +3.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +3.5 C1 1738716 Tai 40370000 0.1166667 690985 646203 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +18 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +13.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +4.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +11 C2 1718017 Tai 40370000 0.1166667 691012 645186 +5.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +6.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +7.5 C2 1718017 Tai 40370000 0.1166667 691012 645186 +9 C2 1718017 Tai 40370000 0.1166667 691012 645186 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +7.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +6.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +4.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +5.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +3.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +2.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +18 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +11 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +13.5 C3 1676619 Tai 40370000 0.1166667 690995 644190 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +13.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +18 C4 1635221 Tai 40370000 0.1166667 691005 643201 +18 C4 1635221 Tai 40370000 0.1166667 691005 643201 +18 C4 1635221 Tai 40370000 0.1166667 691005 643201 +18 C4 1635221 Tai 40370000 0.1166667 691005 643201 +18 C4 1635221 Tai 40370000 0.1166667 691005 643201 +18 C4 1635221 Tai 40370000 0.1166667 691005 643201 +18 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +11 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +3.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +2.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +6.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +7.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +9 C4 1635221 Tai 40370000 0.1166667 691005 643201 +3.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +3.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +3.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +3.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +3.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +4.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +5.5 C4 1635221 Tai 40370000 0.1166667 691005 643201 +3.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +3.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +3.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +7.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +9 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +9 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +7.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +7.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +7.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +5.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +4.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +3.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +5.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +5.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +5.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +4.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +4.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +5.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +5.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +9 C5 1593823 Tai 40370000 0.1166667 691003 642214 +6.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +9 C5 1593823 Tai 40370000 0.1166667 691003 642214 +7.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +9 C5 1593823 Tai 40370000 0.1166667 691003 642214 +7.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +7.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +7.5 C5 1593823 Tai 40370000 0.1166667 691003 642214 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +1.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +2.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +4.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +5.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +6.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +7.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +11 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +13.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +18 C6 1655920 Tai 40370000 0.1166667 690977 641224 +3.5 C6 1655920 Tai 40370000 0.1166667 690977 641224 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +13.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +13.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +13.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +2.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +2.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +2.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +3.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +4.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +11 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +6.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +7.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +9 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +5.5 D3 1614522 Tai 40370000 0.1166667 692017 644193 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +11 D4 1593823 Tai 40370000 0.1166667 691993 643181 +18 D4 1593823 Tai 40370000 0.1166667 691993 643181 +18 D4 1593823 Tai 40370000 0.1166667 691993 643181 +18 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +1.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +4.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +5.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +6.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +7.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +9 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +2.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +3.5 D4 1593823 Tai 40370000 0.1166667 691993 643181 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +18 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +2.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +11 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +13.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +5.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +6.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +7.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +9 D5 1386833 Tai 40370000 0.1166667 692006 642200 +4.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 D5 1386833 Tai 40370000 0.1166667 692006 642200 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +2.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +11 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +13.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +18 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +9 E3 745164 Tai 40370000 0.1166667 692983 644219 +7.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +6.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +5.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +4.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 +3.5 E3 745164 Tai 40370000 0.1166667 692983 644219 + E4 1614522 Tai 40370000 0.1166667 692963 643204 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +18 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +13.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +4.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +5.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +3.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +6.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +7.5 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +9 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +11 E5 1490328 Tai 40370000 0.1166667 692995 642203 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +11 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +4.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +3.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +2.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +1.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +5.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +6.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +7.5 E6 1448930 Tai 40370000 0.1166667 692974 641159 +9 E6 1448930 Tai 40370000 0.1166667 692974 641159 diff --git a/vignettes/web-only/alt-optimise/mcds-dot-exe.Rmd b/vignettes/web-only/alt-optimise/mcds-dot-exe.Rmd new file mode 100644 index 0000000..a3379ce --- /dev/null +++ b/vignettes/web-only/alt-optimise/mcds-dot-exe.Rmd @@ -0,0 +1,258 @@ +--- +title: "Alternative optimization engine for fitting detection functions" +description: | + Examples demonstrating the use of the mcds.exe alternative optimization engine for fitting single platform detection functions in the Distance and mrds packages. +author: + - name: Len Thomas + url: http://distancesampling.org + affiliation: CREEM, Univ of St Andrews + affiliation_url: https://creem.st-andrews.ac.uk +date: "`r format(Sys.time(), '%B %Y')`" +output: + bookdown::html_document2: + number_sections: false + toc: true + toc_depth: 2 + base_format: rmarkdown::html_vignette +pkgdown: + as_is: true +bibliography: mcds-dot-exe.bib +csl: ../apa.csl +vignette: > + %\VignetteIndexEntry{Line transect density estimation} + %\VignetteEngine{knitr::rmarkdown} + \usepackage[utf8]{inputenc} +--- + +```{r include=FALSE} +knitr::opts_chunk$set(eval=TRUE, message=TRUE, warnings=FALSE, cache = FALSE) +``` + +Here we demonstrate the use of the alternative optimization engine `mcds.exe` in the `Distance` and `mrds` packages. This engine was introduced with `Distance` version 1.0.8 and `mrds` version 2.2.9 to provide an alternative to the built-in optimizer in our `R` packages -- but subsequent improvements in the built-in optimizer implemented in `Distance` 2.0.0 and `mrds` 3.0.0 mean that we no longer recommend use of `mcds.exe`. Nevertheless, the option to use `mcds.exe` remains open, and may be useful for some users, so we have retained this vignette. We may deprecate the option in future releases. + +Note also that this vignette is designed for use within the Microsoft Windows operating system -- the `mcds.exe` engine only has experimental support for MacOS or Linux (see the `MCDS.exe` help page within the `mrds` package.for more information). + +# Objectives + +- Download the mcds.exe optimization engine +- Demonstrate its use in a simple line transect example (golf tee dataset) via the `Distance` package +- Demonstrate the same example via the `mrds` package +- Demonstrate its use in a point transect example (wren data) where one of the optimizers does not work well (gives a negative estimated detection probability) +- Demonstrate its use to speed up an analysis of camera trap distance sampling data (duiker data) via the `Distance` package +- Discuss when using the alternative optimization engine may be useful. + +# Introduction + +The `Distance` package is designed to provide a simple way to fit detection functions and estimate abundance using conventional distance sampling methodology (i.e., single observer distance sampling, possibly with covariates, as described by Buckland et al. [-@buckland2015distance]). The main function is `ds`. Underlying `Distance` is the package `mrds` -- when the function `ds` is called it does some pre-processing and then calls the function `ddf` in the `mrds` package to do the work of detection function fitting. `mrds` uses maximum likelihood to fit the specified detection function model to the distance data using a built-in algorithm written in `R`. + +An alternative method for analyzing distance sampling data is using the Distance for Windows software [@Thomas2010]. This software also uses maximum liklihood to fit the detection function models, and relies on software written in the programming language FORTRAN to do the fitting. The filename of this software is `MCDS.exe`. + +In a perfect world, both methods would produce identical results given the same data and model specification, since the likelihood has only one maximum. However, the likelihood surface is sometimes complex, especially when monotonicity constraints are used (which ensures the estimated detection probability is flat or decreasing with increasing distance when adjustment terms are used) or with "overdispersed" or "spiked" data (see Figure 2 in Thomas et al. [-@Thomas2010]), and so in some (rare) cases one or other piece of software fails to find the maximum. Note that in our tests, we have found this to be extremely rare from `Distance` version 2.0.0 and `mrds` version 3.0.0 onwards. Nevertheless, to counteract this, it is possible to run both the `R`-based optimizer and `MCDS.exe` from the `ds` function within the `Distance` package or the `ddf` function within `mrds` package. + +Another historical motivation for using the `MCDS.exe` software from within `R` was that the `R`-based optimizer was sometimes slow to converge and so using `MCDS.exe` in place of the `R`-based optimizer can then save significant time, particularly when doing a nonparametric bootstrap for large datasets. However, from `Distance` 2.0.0 and `mrds` 3.0.0 the `R`-based optimizer is no longer generally slower. + +This vignette demonstrates how to download and then use the MCDS.exe sofware from within the `Distance` and `mrds` packages. For more information, see the `MCDS.exe` help page within the `mrds` package. + +# Downloading and verifying MCDS.exe + +The program `MCDS.exe` does not come automatically with the `Distance` or `mrds` packages, to avoid violating CRAN rules, so you must first download it from the distance sampling website. + +```{r} +#Unload Distance package if it's already loaded in R +if("Distance" %in% (.packages())){ + detach("package:Distance", unload=TRUE) +} + +#Download MCDS.exe +download.file("http://distancesampling.org/R/MCDS.exe", paste0(system.file(package="mrds"),"/MCDS.exe"), mode = "wb") + +#Load the Distance package - now it will be able to use MCDS.exe +library(Distance) +``` + +Now that this software is available, both it and the `R` optimizer will be used by default for each analysis; you can also choose to use just one or the other, as shown below. + +# Example with Golf Tee data + +## Both MCDS.exe and the R-based optimizer + +This example (of golf tee data, using only observer 1) is taken from the `R` help for the `ds` function: (There is a warning about cluster sizes being coded as -1 that can be ignored.) + +```{r} +#Load data +data(book.tee.data) +tee.data <- subset(book.tee.data$book.tee.dataframe, observer==1) +#Fit detection function - default is half-normal with cosine adjustments +ds.model <- ds(tee.data, truncation = 4) +summary(ds.model) +``` + +Assuming you have `MCDS.exe` installed, the default is that both it and the `R`-based optimizer are run. Both give the same result in this example, and when this happens the result from the `R`-based optimizer is used. You can see this from the line of summary output: + +`Optimisation: mrds (nlminb)` + +where `mrds` is the `R` package that the `Distance` package relies on, and `nlminb` is the `R`-based optimizer. + +You can see the process of both optimizers being used by setting the `debug_level` argument of the `ds` function to a value larger than the default of 0 and then examining the output: + +```{r} +ds.model <- ds(tee.data, truncation = 4, debug_level = 1) +``` + +First the half-normal with no adjustments is run; for this model the `MCDS.exe` software is run first, followed by the `R`-based (`mrds`) optimizer. Both converge and both give the same `nll` (negative log-likelihood) or 154.5692, giving an AIC of 311.138. The model with half-normal and a cosine adjustment of order 2 is then fitted to the data, with first the `MCDS.exe` optimizer and then the `R`-based optimizer. Again both give the same result of nll 154.5619 and an AIC of 313.124. This is higher than the AIC with no adjustments so half-normal with no adjustments is chosen. + +In this case, both optimizers produced the same result, so there is no benefit to run `MCDS.exe`. + +## Specifying which optimzier to run + +As we said earlier, the default behaviour when `MCDS.exe` has been downloaded is to run both `MCDS.exe` and the `R`-based optimizer. However, the `optimizer` argument can be used to specify which to use -- either `both`, `R` or `MCDS`. Here is an example with just the `MCDS.exe` optimizer: + +```{r} +ds.model <- ds(tee.data, truncation = 4, optimizer = "MCDS") +summary(ds.model) +``` + +The summary output now says `Optimisation: MCDS.exe`. + +## Demonstration using `ddf` in `mrds` package + +Here we demonstrate using both optimizers in the `ddf` function, rather than via `ds`. + +```{r} +#Half normal detection function +ddf.model <- ddf(dsmodel = ~mcds(key = "hn", formula = ~1), data = tee.data, method = "ds", + meta.data = list(width = 4)) +#Half normal with cos(2) adjustment +ddf.model.cos2 <- ddf(dsmodel = ~mcds(key = "hn", adj.series = "cos", adj.order = 2, formula = ~1), + data = tee.data, method = "ds", meta.data = list(width = 4)) +#Compare with AIC +AIC(ddf.model, ddf.model.cos2) +#Model with no adjustment term has lower AIC; show summary of this model +summary(ddf.model) +``` + +As an exercise, fit using just the `MCDS.exe` optimizer: + +```{r} +ddf.model <- ddf(dsmodel = ~mcds(key = "hn", adj.series = "cos", adj.order = 2, + formula = ~1), data = tee.data, method = "ds", + meta.data = list(width = 4), + control = list(optimizer = "MCDS")) +summary(ddf.model) +``` + +# Point transect example - wren data + +This is an example of point transect data for a bird (wren), from Buckland [-@Buckland2006]. In this case one of the optimizers fails correctly to constrain the detection function so the probability of detection is more than zero at all distances, and so we use the other optimizer for inference. + +We load the wren 5 minute example dataset and define cutpoints for the distances (they were collected in intervals). + +```{r, warning=TRUE} +data("wren_5min") +bin.cutpoints.100m <- bin.cutpoints <- c(0, 10, 20, 30, 40, 60, 80, 100) +``` + +The following call to `ds` gives several warnings. Some warnings are about the detection function being less than zero at some distances. There is also a warning about the Hessian (which is used for variance estimation), but this relates to the Hermite(4, 6) model (i.e., two Hermite adjustment terms of order 4 and 6) which is not chosen using AIC and so this warning can be ignored. + +```{r, warning = TRUE} +wren5min.hn.herm.t100 <- ds(data = wren_5min, key = "hn", adjustment = "herm", + transect = "point", cutpoints = bin.cutpoints.100m) +summary(wren5min.hn.herm.t100) +``` + +The `MCDS.exe` optimizer is the chosen one (see the `Optimisation' line of output). + +The warnings persist if only the `MCDS.exe` optimizer is used: + +```{r, warning = TRUE} +wren5min.hn.herm.t100.mcds <- ds(data = wren_5min, key = "hn", adjustment = "herm", + transect = "point", cutpoints = bin.cutpoints.100m, + optimizer = "MCDS") +``` + +Looking at a plot of the fitted object (Figure \@ref(fig:mcds)), it seems that the evaluated pdf is less than 0 at distances close to the truncation point (approx. 95m and greater): + +```{r, mcds, fig.dim=c(7,5), fig.cap="PDF of fitted model with MCDS optimizer."} +plot(wren5min.hn.herm.t100.mcds, pdf = TRUE) +``` + +What appears to be happening here is a failure of the optimization routine to appropriately constrain the model parameters so that the detection function is valid. This happens on occasion (the routines aren't perfect!) and where it does we recommend trying the other optimization routine. Here we use the `R`-based optimizer: + +```{r, warning = TRUE} +wren5min.hn.herm.t100.r <- ds(data=wren_5min, key="hn", adjustment="herm", + transect="point", cutpoints=bin.cutpoints.100m, + optimizer = "R") +``` + +Here the fitted AIC for the chosen model (half normal with one Hermite adjustment of order 4) is `r format(AIC(wren5min.hn.herm.t100.r)$AIC, digits = 5)`, higher than that with the `MCDS.exe` optimizer (which was `r format(AIC(wren5min.hn.herm.t100.mcds)$AIC, digits = 5)`), which explains why the `MCDS.exe` optimizer fit was chosen when we allowed `ds` to choose freely. However, the detection function fit from `MCDS.exe` was invalid, because it went lower than 0 at about 95m, while the fit with the `R`-based optimizer looks valid (Figure \@ref(fig:usingr)): + +```{r, usingr, fig.dim=c(7,5), fig.cap="PDF of fitted model with R-based optimizer."} +plot(wren5min.hn.herm.t100.r, pdf = TRUE) +``` + +Hence in this case, we would use the `R`-based optimizer's fit. + +# Camera trap example + +For this example, it helps if you are familiar with the [Analysis of camera trapping data](https://distancedevelopment.github.io/Distance/articles/web-only/CTDS/camera-distill.html) vignette on the distance sampling web site. + +You also need to [Download from the Dryad data repository](https://datadryad.org/stash/downloads/file_stream/73221) the detection distances for the full daytime data set and then read it in with the code below: + +```{r} +#Read in data and set up data for analysis +DuikerCameraTraps <- read.csv(file="DaytimeDistances.txt", header=TRUE, sep="\t") +DuikerCameraTraps$Area <- DuikerCameraTraps$Area / (1000*1000) +DuikerCameraTraps$object <- NA +DuikerCameraTraps$object[!is.na(DuikerCameraTraps$distance)] <- 1:sum(!is.na(DuikerCameraTraps$distance)) + +#Specify breakpoints and truncation +trunc.list <- list(left=2, right=15) +mybreaks <- c(seq(2, 8, 1), 10, 12, 15) +``` + +Then we fit the detection function selected in the camera trap vignette, uniform plus 3 cosine adjustment terms, and time how long the fitting takes: + +```{r} +start.time <- Sys.time() +uni3.r <- ds(DuikerCameraTraps, transect = "point", key="unif", adjustment = "cos", + nadj=3, cutpoints = mybreaks, truncation = trunc.list, optimizer = "R") +R.opt.time <- Sys.time() - start.time +summary(uni3.r) +``` + +Fitting takes `r format(R.opt.time, digits = 2)`. (Note, in versions of `Distance` before 2.0.0 this was a much higher number!) Here we try the `MCDS.exe` optimizer: + +```{r} +start.time <- Sys.time() +uni3.mcds <- ds(DuikerCameraTraps, transect = "point", key="unif", adjustment = "cos", + nadj=3, cutpoints = mybreaks, truncation = trunc.list, optimizer = "MCDS") +MCDS.opt.time <- Sys.time() - start.time +summary(uni3.mcds) +``` + +This took a little less time: `r format(MCDS.opt.time, digits = 1)`. Hence, for some datasets, it may be quicker to use the `MCDS.exe` optimizer. This could make a significant difference if using the nonparametric bootstrap to estimate variance. However, after making improvements to the optimizer in `mrds` 3.0.0 and `Distance` 2.0.0 the difference is generally small, and in many cases the `R` optimizer is faster than `MCDS.exe` so this is likely not a productive avenue to pursue in general. + +# Discussion + +We have shown how to fit distance sampling detection functions (for single platform data) using either the `R`-based optimizer built into the `ddf` function (via calling `ddf` or, more likely, calling the `ds` function in the `Distance` package) or the `MCDS.exe` analysis engine used by Distance for Windows. In the vast majority of cases both fitting methods give the same result, and so there is no need to use both. However, the only downside is that fitting takes longer, as each is called in turn. If you have downloaded the `MCDS.exe` file and want to speed things up, you can use just the `R`-based optimizer by specifying `optimizer = "R"` in the call to `ds` or `ddf`, or just the `MCDS.exe` optimizer with `optimizer = "MCDS"`. + +Some situations where the two may produce different results are given below. Note that in each case we give an update related to new algorithms developed and used in `mrds` 3.0.0. + +- Detection functions that are close to non-monotonic or close to zero at some distances. When adjustment terms are used in the detection function, then constraints are required to prevent the fitted function from having "bumps" where detection probability increases with increasing distance and also to prevent detection probability from becoming less than zero. The former are called monotonicity constraints and are set using the `monotonicity` argument in `ds` or in the `meta.data` argument in `ddf`; monotonicity is set on by default. In practice, monotonicity and values less than zero are monitored at a finite set of distances between the 0 and the right truncation point, and (for historical reasons) this set of distances is different for the `R`-based and `MCDS.exe` optimizers. This typically makes no difference to the optimization, but particularly in borderline cases it can result in different fitted functions. Plotting the fitted functions (as we did in the wren example above) can reveal when there is an issue with a fitted function, and if this occurs the associated optimizer should not be used. In the future we plan to bring the two into line so they use the same distances for checking. + - Update: As of `mrds` 3.0.0 and `Distance` 2.0.0 these are now aligned, so this difference should have gone away. + +- Detection functions with many adjustment terms. The two optimizers use different algorithms for optimization: the `R`-based optimizer uses a routine called `nlminb` while `MCDS.exe` uses a nonlinear constrained optimizer routine produced by the IMSL group. In cases where there are multiple adjustment terms, and hence several parameters to estimate (that are often correlated) the likelihood maximization is harder, and one or other routine can sometimes fail to find the maximum. In this case, choosing the routine with the higher likelihood (i.e., lower negative log-likelihod, or equivalently lower AIC) is the right thing to do, and this is the default behaviour of the software. + - Update: in `mrds` 3.0.0 we now use a Sequential Least Squares Programming (SLSQP) algorithm from the 'nloptr' package via `nlminb` in the `R`-based optimizer (rather than the old solnp algorithm). The old algorithm can be accessed from the `ds`() function in `Distance` using the argument `mono_method = "solnp"` or with the `ddf`() function in `mrds` using the argument `control(mono.method = "solnp") `. However, the new one shows improved performance in our testing, and so we do not recommend using the old algorithm except for reasons of backwards compatibility. + +- Detection functions that are "overdispersed" or with a "spike" in the detection function close to zero distance. Similarly to the above, the detection function can then be hard to maximize and hence on or other optimizer can fail to find the maximum. Solution is as above. Overdispersed data is common in camera trap distance sampling because many detections can be generated by the same individual crossing in front of the camera. + - Update is as above. + +If you are interested in seeing more comparisons of the optimizers on various datasets, we maintain a test suite of both straightforward and challenging datasets together with test code to run and compare the two optimizers -- this is available at the [MCDS_mrds_compare repository](https://github.com/DistanceDevelopment/MCDS_mrds_compare). + +If you encounter difficulties when using both optimizers, one possible troubleshooting step is to run the analysis first choosing one optimizer (e.g., specifing the argument `optimizer = "MCDS"`) and then choosing the other (`optimizer = "R"`). This allows you clearly to see what the output of each optimizer is (including any error messages) and facilitates their comparison. + +One other criterion to favour one optimizer over the other is speed. We found that for large datasets the `MCDS.exe` optimizer was quicker, but as of `Distance` 2.0.0 and `mrds` 3.0.0 this is no longer necessarily the case. + +One thing to note is that the `MCDS.exe` file will get deleted each time you update the `mrds` package, so you'll need to re-download the file if you want to continue using the `MCDS.exe` optimizer. As shown above, this only requires running one line of code. + +# References \ No newline at end of file diff --git a/vignettes/web-only/alt-optimise/mcds-dot-exe.bib b/vignettes/web-only/alt-optimise/mcds-dot-exe.bib new file mode 100644 index 0000000..794094c --- /dev/null +++ b/vignettes/web-only/alt-optimise/mcds-dot-exe.bib @@ -0,0 +1,43 @@ +@article{Buckland2006, + title = {Point transect surveys for songbirds: robust methodologies}, + author = {Buckland, S. T.}, + year = {2006}, + volume = {123}, + pages = {345--345}, + doi = {10.1642/0004-8038(2006)123[345:psfsrm]2.0.co;2}, + journal = {The Auk}, + number = {2}, + owner = {Tiago}, + refid = {15765}, + subdatabase = {distance}, + timestamp = {2006.11.23} +} + + +@Book{buckland2015distance, + title = {Distance sampling: methods and applications}, + publisher = {Springer}, + year = {2015}, + author = {Buckland, Steve and Rexstad, Eric and Marques, Tiago and Oedekoven, Cornelia}, +} + + +@misc{r_core_team_r_2023, + address = {{Vienna Austria}}, + title = {R: A Language and Environment for Statistical Computing}, + howpublished = {R Foundation for Statistical Computing}, + author = {{R Core Team}}, + year = {2023} +} + +@article{Thomas2010, + title = {Distance software: design and analysis of distance sampling surveys for estimating population size}, + volume = {47}, + journal = {Journal of Applied Ecology}, + doi = {110.1111/j.1365-2664.2009.01737.x}, + author = {Thomas, L. and Buckland, S.T. and Rexstad, E.A. and Laake, J.L. and Strindberg, S. and Hedley, S.L. and Bishop, J.R.B and Marques, T.A.}, + year = {2010}, + pages = {5-14}, +} + + diff --git a/vignettes/web-only/apa.csl b/vignettes/web-only/apa.csl new file mode 100644 index 0000000..3f2ccc8 --- /dev/null +++ b/vignettes/web-only/apa.csl @@ -0,0 +1,1539 @@ + + diff --git a/vignettes/web-only/cues/cuecounts-distill.Rmd b/vignettes/web-only/cues/cuecounts-distill.Rmd new file mode 100644 index 0000000..f3f0008 --- /dev/null +++ b/vignettes/web-only/cues/cuecounts-distill.Rmd @@ -0,0 +1,153 @@ +--- +title: "Analysis of cue count surveys" +description: | + Revisiting the winter wren point transects with cue counts. +author: + - name: Eric Rexstad + url: http://distancesampling.org + affiliation: CREEM, Univ of St Andrews + affiliation_url: https://creem.st-andrews.ac.uk +date: "`r format(Sys.time(), '%B %Y')`" +output: + bookdown::html_document2: + number_sections: false + toc: true + toc_depth: 2 + base_format: rmarkdown::html_vignette +pkgdown: + as_is: true +bibliography: cues.bib +csl: ../apa.csl +vignette: > + %\VignetteIndexEntry{Analysis of cue count surveys} + %\VignetteEngine{knitr::rmarkdown} + \usepackage[utf8]{inputenc} +--- + +```{r include=FALSE} +knitr::opts_chunk$set(eval=TRUE, echo=TRUE, message=FALSE, warnings=FALSE) +``` + +In this exercise, we use `R` [@r_core_team_r_2019] and the `Distance` package [@miller_distance_2019] to fit different detection function models to point transect cue count survey data of winter wren *(Troglodytes troglodytes)* density and abundance. These data were part of a study described by Buckland [-@Buckland2006]. + +# Objectives + +- Estimate density of cues from point transect data +- Convert cue density to animal density using rate of song production + +# Survey design + +Each of the 32 point count stations were visited twice. During each visit, the observer recorded distances to all songs detected during a 5-minute sampling period (Figure \@ref(fig:fig)). + +```{r fig, echo=FALSE, fig.cap="Montrave study area; white circles are point count stations."} +knitr::include_graphics("montrave.JPG") +``` + +In addition, 43 male winter wrens were observed and their rate of song production was measured. The mean cue rate, along with its standard error (between individuals) was calculated and included in the data set to serve as a multiplier. + +The fields of the `wren_cuecount` data set are: + +- Region.Label - identifier of regions: in this case there is only one region and set to 'Montrave' +- Area - size of the study region (hectares): 33.2ha +- Sample.Label - point transect identifier (numbered 1-32) +- Cue.rate - production of cues (per minute) +- Cue.rate.SE - standard error of cue production rate (between individuals) +- object - unique identifier for each detected winter wren +- distance - radial distance (metres) to each detection +- Search.time - Duration of listening at each station (minutes) +- Study.Area - this is the name of the study, 'Montrave 3' + +# Accessing the `Distance` package and cue count data + +This command assumes that the `dsdata` package has been installed on your computer. The R workspace `wren_cuecount` contains detections of winter wrens from the line transect surveys of Buckland [-@Buckland2006]. + +```{r} +library(Distance) +data(wren_cuecount) +``` + + Examine the first few rows of `wren_cuecount` using the function `head()` + +```{r} +head(wren_cuecount) +``` +Note there is no field in the data to indicate sampling effort. With line transects, the lengths of each transect were provided to measure effort. For point transects, the number of visits to each station was specified. In this data set, all that is specified is `Search.time` the length of time each station was sampled. *Note*, each station was visited twice and sampling was 5 minutes in length on each visit. Hence `Search.time` is recorded as 10. *Note also* the units of measure of `Search.time` must be consistent with the units of measure of cue rate. + +# Examine the distribution of detection distances + +Gain familiarity with the perpendicular distance data using the `hist()` function (Figure \@ref(fig:hist)). + +```{r hist, fig.dim=c(7,5), fig.cap="Radial detection distances of winter wren song bursts."} +hist(wren_cuecount$distance, xlab="Distance (m)", main="Song detection distances") +``` + +Note the long right tail we will cut off with the `truncation` argument to `ds()`. + + +# Fitting a simple detection function model with `ds` + + +As noted above, **Effort** is missing from the data. With cue count surveys, effort is measured in time rather than length or number of visits. Therefore we define a new field `Effort` and set it equal to the `Search.time` field. + +*Note*: no `converstion.factor` is specified in the call to `ds()` because it is only the detection function that is of interest at this step of the analysis, nothing about density or abundance. + +```{r} +conversion.factor <- convert_units("meter", NULL, "hectare") +wren_cuecount$Effort <- wren_cuecount$Search.time +wrensong.hr <- ds(wren_cuecount, transect="point", key="hr", adjustment=NULL, + truncation=100) +``` + +Visually inspect the fitted detection function with the `plot()` function, specifying the cutpoints histogram with argument `breaks` (Figure \@ref(fig:fit)). + +```{r fit, fig.dim=c(7,5), fig.cap="Fit of hazard rate detection function to winter wren song detection distances."} +cutpoints <- c(0,5,10,15,20,30,40,50,65,80,100) +plot(wrensong.hr, breaks=cutpoints, pdf=TRUE, main="Hazard rate function fit to winter wren song counts.") +``` + +## Caution + +Do not examine the abundance or density estimates produced by `summary(wrensong.hr)` because as the results it contains are *nonsense*. These summary values do not properly recognise that the unit of effort is time rather than visits for the point count survey. This additional component of the analysis is provided in the next step. + +# Introducing a new function `dht2` + +The function `dht2` provides additional capacity for providing density or abundance estimates in novel situations such as cue counts where multipliers need to be incorporated. + +The argument `multipliers` in `dht2` provides the mechanism whereby the cue production rate and its uncertainty are incorporated into the analysis. + +To properly perform the calculations responsible for converting song density to bird density, we enlist the aide of the function `dht2`. The additional information about cue rates and their variability are provided in a `list`. The multiplier in the list is **required** to have the name `creation` and it contains both the cue rate point estimate and its associated measure of precision. + +```{r} +cuerate <- unique(wren_cuecount[ , c("Cue.rate","Cue.rate.SE")]) +names(cuerate) <- c("rate", "SE") +(mult <- list(creation=cuerate)) +``` + +Additional arguments are also passed to `dht2`. `flatfile` is the name of the data set and `strat_formula` contains information about stratification that might exist in the survey design. The Montrave study had no stratification, inference was only for the 33 hectare woodland, so `strat_formula` here is simply constant `~1`. + +Results of the overall winter wren density estimate is provided by a `print` method, specifying `report="density"`. The alternative for the `report` argument is `report="abundance"`. + +```{r} +wren.estimate <- dht2(wrensong.hr, flatfile=wren_cuecount, strat_formula=~1, + multipliers=mult, convert_units=conversion.factor) +print(wren.estimate, report="density") +``` + +## Absolute goodness of fit + +We assess the goodness of fit of the hazard rate model to the winter wren cue count data (Figure \@ref(fig:gof)). + +```{r gof, fig.dim=c(7,5), fig.cap="Q-Q plot of hazard rate model to winter wren radial detection distances."} +gof_ds(wrensong.hr) +``` +Note the distinct lack of fit to the song data. This is because of many detections at the identical distances from birds being stationary and singing. This induces a phenomenon known as *over dispersion*. + +# Notes regarding the cue count estimates of Montrave winter wrens + +This vignette uses the function `dht2` because that function knows how to incorporate multipliers such as cue rates and propogate the uncertainty in cue rate into overall uncertainty in density and abundance. Because there is uncertainty coming not only from encounter rate variability and uncertainty in detection function parameters, but also from cue rate variability, the relative contribution of each source of uncertainty is tablated. This is the last table produced by printing the `wren.estimate` object. For the Montrave winter wren data, only 4% of the uncertainty in the density estimate is attributable to the detection function, 24% attributable to encounter rate variability and 71% attributable to between-individual variability in call rate. + +This insight suggests that if this survey was to be repeated, exerting more effort in measuring between-individual variation in call rate would likely yield the most benefits in tightening the precision in density estimates. + +Also note the poor fit of the model to the data; the P-value for the Cramer von-Mises test is <<0.05. This is caused by over-dispersion in the distribution of detected call distances. A single individual may sit on a tree branch and emit many song bursts, leading to a jagged distribution of call distances that is not well fitted by a smooth detection function. That over-dispersion will not bias the density estimates. + +# References diff --git a/vignettes/web-only/cues/cues.bib b/vignettes/web-only/cues/cues.bib new file mode 100644 index 0000000..672097a --- /dev/null +++ b/vignettes/web-only/cues/cues.bib @@ -0,0 +1,42 @@ + +@article{miller_distance_2019, + title = {Distance sampling in R}, + volume = {89}, + copyright = {Copyright (c) 2019 David L. Miller, Eric Rexstad, Len Thomas, Laura Marshall, Jeffrey L. Laake}, + issn = {1548-7660}, + language = {en}, + number = {1}, + journal = {Journal of Statistical Software}, + doi = {10.18637/jss.v089.i01}, + author = {Miller, David L. and Rexstad, Eric and Thomas, Len and Marshall, Laura and Laake, Jeffrey L.}, + month = may, + year = {2019}, + keywords = {distance sampling,abundance estimation,detection function,distance,Horvitz-Thompson,line transect,point transecs,R}, + pages = {1-28}, + file = {C\:\\Users\\erexs\\Zotero\\storage\\DRB57MH8\\v089i01.html} +} + +@article{Buckland2006, + title = {Point transect surveys for songbirds: robust methodologies}, + volume = {123}, + number = {2}, + journal = {The Auk}, + doi = {10.1642/0004-8038(2006)123[345:psfsrm]2.0.co;2}, + author = {Buckland, S. T.}, + year = {2006}, + pages = {345-345}, + owner = {Tiago}, + refid = {15765}, + subdatabase = {distance}, + timestamp = {2006.11.23} +} + +@misc{r_core_team_r_2019, + address = {{Vienna Austria}}, + title = {R: A Language and Environment for Statistical Computing}, + howpublished = {R Foundation for Statistical Computing}, + author = {{R Core Team}}, + year = {2019} +} + + diff --git a/vignettes/web-only/cues/montrave.JPG b/vignettes/web-only/cues/montrave.JPG new file mode 100644 index 0000000..01bc5bf Binary files /dev/null and b/vignettes/web-only/cues/montrave.JPG differ diff --git a/vignettes/web-only/differences/differences.Rmd b/vignettes/web-only/differences/differences.Rmd new file mode 100644 index 0000000..c0c9fd7 --- /dev/null +++ b/vignettes/web-only/differences/differences.Rmd @@ -0,0 +1,187 @@ +--- +title: "Detecting density estimate differences" +description: | + Using the bootstrap to derive the sampling distribution of pairwise differences in estimated density. +author: + - name: Eric Rexstad + url: http://distancesampling.org + affiliation: CREEM, Univ of St Andrews + affiliation_url: https://creem.st-andrews.ac.uk +output: + bookdown::html_document2: + number_sections: false + toc: true + toc_depth: 2 + base_format: rmarkdown::html_vignette +pkgdown: + as_is: true +bibliography: references.bib +csl: ../apa.csl +vignette: > + %\VignetteIndexEntry{Detecting density estimate differences} + %\VignetteEngine{knitr::rmarkdown} + \usepackage[utf8]{inputenc} +--- + +```{r include=FALSE} +knitr::opts_chunk$set(eval=TRUE, echo=TRUE, message=FALSE, warnings=FALSE) +``` + +# Management context + +Often ecological questions extend beyond simply wanting an estimate of density in a study region. It is common for inference to extend to differences in density over time or space. + +# Conventional analysis + +In @buckland2001[Sect. 3.6.5] methods are described to produce tests of significance based on t-test methods. That section presents formulas for comparing two density estimates under two scenarios + +- the two estimates have separate detection functions, or +- the estimates share a common detection function. + +The situation that @buckland2001 does not consider is the situation in which the two estimates are linked via a covariate in the detection function. Because the t-test framework cannot deal with this intermediate situation, an alternative approach, employing the bootstrap, can be employed. The bootstrap provides the added advantage that no parametric assumptions (*t*-distribution) need to be invoked when making inference. + +# Bootstrap analysis + +A function in the Distance R package [@miller2019] exists for computing uncertainty in density estimates via bootstrapping. This vignette demonstrates a function that harnesses the `bootdht` function to produce a sampling distribution of the difference between pairs of density estimates embedded as strata within a data set. + +Recognise that strata can represent not only geographic divisions of a study area, but potentially also a survey of the same study area at another time. If a data set is organised in this manner, then the assessment of differences between strata would be an assessment of the possible change in density over time. Furthermore, as shown in the example of [multi-species surveys](https://distancedevelopment.github.io/Distance/articles/species-covariate-distill.html), species could serve as strata. In this context, assessing the difference in stratum-specific density would examine the difference in density between species. + +```{r, sourcefn} +#' @title differences.bootstrap +#' +#' @description Test for pairwise density differences between strata +#' +#' Test is performed by producing replicate stratum-specific estimates and calculating +#' differences of each replicate. Differencing is done for all pairs of strata in +#' the survey, e.g. if there are 4 strata there are \code{choose(4,2)=6} pairwise +#' comparisons computed. +#' +#' Histograms are produced for each comparison, designating the median of the distribution +#' and a percentile-based 95% confidence interval from the sampling distribution +#' +#' Difficulties can arise from very long left or right tails of the distribution +#' resulting from awkward bootstrap replicates. The limits of the histogram are +#' cut off at 5*median so histogram shape does not appear degenerate. Code presumes differences will be positive. +#' +#' @param dsobj dsmodel object generated by \code{ds} +#' @param flatfile flatfile of survey data analysed by \code{ds} +#' @param nboot number of bootstrap replicates to compute +#' +#' @return Histogram showing sampling distribution of differences plus named list +#' \itemize{ +#' \item medians - median of sampling distribution +#' \item ps - P-value for two-tailed test that difference is zero +#' \item thematrix - Matrix of replicate pairwise differences +#' } +#' @importFrom Distance bootdht +#' @export +#' +#' @examples +#' library(Distance) +#' data(minke) +#' hn.pooled <- ds(minke) # pooled detection function with hn key +#' result <- differences.bootstrap(hn.pooled, minke, nboot=100) +differences.bootstrap <- function(dsobj, flatfile, nboot) { + + num.strata <- length(dsobj$dht$individuals$D$Estimate) - 1 + stopifnot( + 'first argument is not a dsmodel object' = class(dsobj) == 'dsmodel', + 'study area must have >1 stratum' = num.strata > 1, + 'specified flatfile object is not a data.frame ' = class(flatfile) == 'data.frame' + ) + d.point.ests <- dsobj$dht$individuals$D$Estimate + strata.names <- dsobj$dht$individuals$D$Label +# Following function used by bootdht to collect density point estimates +# from each bootstrap replicate + pullout.D <- function(ests, fit) { + bill <- ests$individuals$D$Estimate + extract <- data.frame(t(bill)) + colnames(extract) <- ests$individuals$D$Label + return(extract) + } + outcome <- bootdht(dsobj, flatfile=flatfile, cores=10, + summary_fun=pullout.D, nboot=nboot) +# Having run the bootstrap, calculate number of pairwise comparisons btwn strata +# create objects to receive the replicate-wise differences for each comparison +# median differences are reported and empirical P-value computed for each comparison +# histograms of sampling distribution for differences are shown with CIs +# allstrata <- complete.cases(outcome) + num.compare <- choose(num.strata, 2) + pairs <- t(combn(1:num.strata, 2)) + result.matrix <- matrix(data=NA, nrow=nrow(outcome), ncol=num.compare) + themedian <- array(data=NA, dim=num.compare) + pvalue <- array(data=NA, dim=num.compare) + par(mfrow=c(num.compare, 1)) + for (i in 1:num.compare) { + result.matrix[,i] <- mapply('-', outcome[pairs[i,2]], outcome[pairs[i,1]]) + themedian[i] <- median(result.matrix[,i], na.rm=TRUE) + pvalue[i] <- ifelse(themedian[i]>0, + sum(result.matrix[,i]<0, na.rm=TRUE) / sum(!is.na(result.matrix[ ,i])), + sum(result.matrix[,i]>0, na.rm=TRUE) / sum(!is.na(result.matrix[ ,i]))) + tmp <- result.matrix[ ,i] + hist(tmp[abs(tmp)<5*abs(themedian[i])], + breaks=30, xlab="Estimated difference", + main=paste("Bootstrap test of equality of two density estimates", + "\nMedian difference=", round(themedian[i],4), + " Two-tailed P-value=", round(2*pvalue[i],4))) + abline(v=themedian[i]) + abline(v=quantile(result.matrix[,i], probs = c(0.025, 0.975), na.rm=TRUE), lty=3) + first <- pairs[i, 1] + second <- pairs[i, 2] + line1 <- bquote(hat(D)[.(strata.names[first])] == .(round(d.point.ests[first], 4))) + line2 <- bquote(hat(D)[.(strata.names[second])] == .(round(d.point.ests[second], 4))) + legend("topleft", legend=as.expression(c(line1, line2))) + } + par(mfrow=c(1,1)) + return(list(medians=themedian, ps=2*pvalue, thematrix=result.matrix)) +} +``` + +# Examples {#examples} + +Several examples of the use of `differences.bootstrap` are provided. They make use of data sets that are included in the Distance package. + +## Two strata with pooled detection function {#two-strata-with-pooled-detection-function} + +The simplest example uses the `minke` data set that consists of two geographic strata (North and South). A model that can be fitted to these data assumes the two strata share a common detection function + +```{r, pooled, fig.cap="Strata share a pooled detection function.", results='hide', fig.dim=c(7,5)} +library(Distance) +data(minke) +hr.pooled <- ds(minke, key="hr", truncation=1.5) +result <- differences.bootstrap(hr.pooled, flatfile=minke, nboot=250) +``` + +Output from the function consists primarily of a histogram of the replicate density differences. This approximates the sampling distribution of the estimated density difference. A solid vertical line depicts the median of that distribution (medians are less influenced by outliers than are means). Dotted vertical lines depict the 95^th^ percentiles around the estimated difference. The two-tailed P-value is presented in the histogram main title. In the legend box are presented the density estimates from the two strata, labelled using the `Region.Label` values found in the `dsmodel` object passed to the function. + +## Two strata with stratum as covariate {#two-strata-with-stratum-as-covariate} + +Working with the same `minke` data set, we present an alternative analysis in which stratum-specific detection functions are derived using stratum as a covariate in the detection function. Having fitted that detection function model to the data, the comparison of the densities in the strata are performed using the same function. + +```{r, two-covar, fig.cap="Two strata with Region.Label as a covariate in detection function.", results='hide', fig.dim=c(7,5)} +hr.covar <- ds(minke, key="hr", truncation=1.5, formula=~Region.Label) +resultcovar <- differences.bootstrap(hr.covar, flatfile=minke, nboot=250) +``` + +The evidence that densities differ in the two strata appear stronger in this analysis because the dependence in the two estimates is reduced as a result of stratum-specific detection functions being used. Of course, inference would not be drawn from two different analyses of the same data set, this is merely to demonstrate the use of the function. If we were to perform model selection upon the two detection function models fitted to the minke data, we would find the model with stratum as a covariate is preferable and our inference should be based upon this second analysis. + +## Three strata with stratum as covariate {#three-strata-with-stratum-as-covariate} + +Another data set, `Savannah_sparrow_1980`, is derived from a point transect survey of a study area with three strata. We will fit a model with stratum as a covariate and send the result to our function to assess whether there are differences between the three strata. + +```{r, sparrow, fig.height=7, fig.cap="Two strata with Region.Label as a covariate in detection function.", results='hide', fig.dim=c(8,7)} +data("Savannah_sparrow_1980") +hn.sparrow <- ds(Savannah_sparrow_1980, transect="point", key="hn", truncation="10%", + convert_units=convert_units("meter", NULL, "hectare"), formula=~Region.Label) +resultsparrow <- differences.bootstrap(hn.sparrow, + flatfile=Savannah_sparrow_1980, + nboot=250) +``` + +Note here, when there are three strata, there are three pairwise comparisons. The function can cope with any number of strata, but recognise the number of comparisons (hence number of histograms) grows rapidly when the number of strata exceeds roughly 5. + +# Limitations + +This function cannot compute significance of density estimate differences when estimation is carried out via multiple calls to `ds()`, as would be the case when analysing data from different study areas residing in different data files. However, based upon the provided code, it should be clear how to produce replicate density estimates via `bootdht()` and then difference them with a single line of code. Depending upon circumstances, it might also be possible to combine the two data sets into a single data file and treat them as strata which could allow use of the provided function. + +# References \ No newline at end of file diff --git a/vignettes/web-only/differences/references.bib b/vignettes/web-only/differences/references.bib new file mode 100644 index 0000000..eb15309 --- /dev/null +++ b/vignettes/web-only/differences/references.bib @@ -0,0 +1,25 @@ + +@book{buckland2001, + title = {Introduction to Distance Sampling: Estimating Abundance of Biological Populations}, + author = {{Buckland}, {Stephen Terrence} and {Anderson}, {David R.} and {Burnham}, {Kenneth Paul} and {Laake}, {Jeffrey Lee} and {Borchers}, {David Louis} and {Thomas}, {Leonard}}, + year = {2001}, + month = {07}, + date = {2001-07-19}, + publisher = {Oxford University Press}, + address = {Oxford, New York} +} + +@article{miller2019, + title = {Distance Sampling in {R}}, + author = {{Miller}, {David L.} and {Rexstad}, {Eric} and {Thomas}, {Len} and {Marshall}, {Laura} and {Laake}, {Jeffrey L.}}, + year = {2019}, + month = {05}, + date = {2019-05-09}, + journal = {Journal of Statistical Software}, + pages = {1--28}, + volume = {89}, + number = {1}, + doi = {10.18637/jss.v089.i01}, + url = {https://www.jstatsoft.org/index.php/jss/article/view/v089i01}, + langid = {en} +} diff --git a/vignettes/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys.Rmd b/vignettes/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys.Rmd new file mode 100644 index 0000000..c34d6ec --- /dev/null +++ b/vignettes/web-only/groupsize/Remedy-size-bias-for-dolphin-surveys.Rmd @@ -0,0 +1,238 @@ +--- +title: "Solving the size bias problem" +description: | + Eastern tropical Pacific spotted dolphin surveys from tuna fishing vessels. +author: + - name: Eric Rexstad + url: http://distancesampling.org + affiliation: CREEM, Univ of St Andrews + affiliation_url: https://creem.st-andrews.ac.uk +date: "`r format(Sys.time(), '%B %Y')`" +output: + bookdown::html_document2: + number_sections: false + toc: true + toc_depth: 2 + base_format: rmarkdown::html_vignette +pkgdown: + as_is: true +bibliography: size.bib +csl: ../apa.csl +vignette: > + %\VignetteIndexEntry{Solving the size bias problem} + %\VignetteEngine{knitr::rmarkdown} + \usepackage[utf8]{inputenc} +--- + +```{r echo=FALSE, message=FALSE} +knitr::opts_chunk$set(echo=FALSE) +library(kableExtra) +library(vioplot) +options(scipen = 999) +``` + +In this example we have a sample of sightings data from eastern tropical Pacific (ETP) offshore spotted dolphin, collected by observers board tuna vessels (the data were made available by the Inter-American Tropical Tuna Commission - IATTC). More details about surveys of dolphins in the ETP can be found in @gerrodette_2005 and @swfc_2008. In the ETP, schools of yellow fin tuna commonly associate with schools of certain species of dolphins, and so vessels fishing for tuna often search for dolphins in the hopes of also locating tuna. For each school detected by the tuna vessels, the observer records the species, sighting angle and distance (later converted to perpendicular distance and truncated at 5 nautical miles), school size, and a number of covariates associated with each detected school. + +A variety of search methods were used to find the dolphins from these tuna vessels. The coding in the data set is shown below. + +```{r echo=FALSE} +search <- data.frame(Method=c("Crows nest","Bridge","Helicopter","Radar"), code=c(0,2,3,5)) +knitr::kable(search, caption="Search method coding from tuna vessels in ETP.") %>% + kable_styling(bootstrap_options = "condensed", full_width = F) +``` + +Some of these methods may have a wider range of search than the others, and so it is possible that the detection function varies according to the method being used. + +For each sighting the initial cue type is recorded. This may be birds flying above the school, splashes on the water, floating objects such as logs, or some other unspecified cue. + +```{r echo=FALSE} +cue <- data.frame(Cue=c("Birds","Splashes","Unspecified cue","Floating objects"), code=c(1,2,3,4)) +knitr::kable(cue, caption="Cue coding from tuna vessels in ETP.") %>% + kable_styling(bootstrap_options = "condensed", full_width = F) +``` + +Another covariate that potentially affects the detection function is sea state. Beaufort levels are grouped into two categories, the first including Beaufort values ranging from 0 to 2 (coded as 1) and the second containing values from 3 to 5 (coded as 2). + +The sample data encompasses sightings made over a three month summer period. + +```{r echo=FALSE} +month <- data.frame(Month=c("June","July","August"), code=c(6,7,8)) +knitr::kable(month, caption="Month coding from tuna vessels in ETP.") %>% + kable_styling(bootstrap_options = "condensed", full_width = F) +``` + +# Prepare data for analysis + +```{r prep, message=FALSE} +library(Distance) +data("ETP_Dolphin") +``` + +# Exploratory data analysis + +As described, there are a number of potential covariates that might influence dolphin detectability. Rather than throw all covariates into detection function models, examine the distribution of detection distances (y-axis of figure below) as a function of the plausible factor covariates. + +```{r EDA, fig.dim=c(8,6), fig.cap="Exploratory data analysis using violin plots. Prepared using the `vioplot` package. Number of detections show above plots.", echo=FALSE} +par(mfrow = c(2, 2), # 2x2 layout + oma = c(2, 2, 0, 0), # two rows of text at the outer left and bottom margin + mar = c(1, 2, 1, 0), # space for one row of text at ticks and to separate plots + mgp = c(0, 0, 0), # axis label at 2 rows distance, tick labels at 1 row + xpd = NA, + cex.lab=0.8, cex.main=0.7, cex.axis=0.6) +with(ETP_Dolphin, vioplot( + distance[Search.method==0], + distance[Search.method==2], + distance[Search.method==3], + distance[Search.method==5], + names=c("Crows nest","Bridge","Helicopter","Radar"), + col=rgb(0.1,0.4,0.7,0.7), main="Search method")) +ndetects <- table(ETP_Dolphin$Search.method) +for (i in 1:4) { + text(i, 5.15, paste("n =", ndetects[i]), cex=0.6) +} + +with(ETP_Dolphin, vioplot( + distance[Cue.type==1], + distance[Cue.type==2], + distance[Cue.type==3], + distance[Cue.type==4], + names=c("Birds","Splashes","Other","Floating obj."), + col=rgb(0.1,0.4,0.7,0.7), main="Cue type")) +ndetects <- table(ETP_Dolphin$Cue.type) +for (i in 1:4) { + text(i, 5.15, paste("n =", ndetects[i]), cex=0.6) +} + +with(ETP_Dolphin, vioplot( + distance[Month==6], + distance[Month==7], + distance[Month==8], + names=c("June","July","August"), + col=rgb(0.1,0.4,0.7,0.7), main="Month")) +ndetects <- table(ETP_Dolphin$Month) +for (i in 1:3) { + text(i, 5.15, paste("n =", ndetects[i]), cex=0.6) +} + +with(ETP_Dolphin, vioplot( + distance[Beauf.class==1], + distance[Beauf.class==2], + names=c("0-2","3-5"), + col=rgb(0.1,0.4,0.7,0.7), main="Sea state")) +ndetects <- table(ETP_Dolphin$Beauf.class) +for (i in 1:2) { + text(i, 5.15, paste("n =", ndetects[i]), cex=0.6) +} +par(mfrow=c(1,1)) +``` + +From Fig. \@ref(fig:EDA) there are several decisions to be made concerning the remaining analysis: + +- there is no discernible effect of month or sea state upon distribution of detection distances in this data set. Those covariates will not feature in subsequent modelling. +- the distribution of detection distances by cue type appears to differ for splashes and floating objects. However, the number of detections associated with splash (n=25) or float objects (n=22) cues is small, accounting for ~4\% of the total number of detections. I choose to ignore variability in detection probability associated with cue type. +- shape of the distribution of detections likely does change for the different search methods. However, the method for which detection distances are most different is the helicopter. The violin plot shows there to be roughly an equal number of pods detected between 4 and 5 nautical miles as were detected between 0 and 1 nautical miles. + - the proper way to handle this situation would be to remove helicopter sightings from the detection function modelling. Detectability could be assumed perfect out to the truncation distance, hence treat the helicopter portion of the survey as a strip transect. The number of pods detected by helicopters could be added into the estimated number of pods within the covered area. We will remove detections by helicopter from the remainder of our analysis. +- the number of detections by radar is small and unlikely to exert much influence upon detection function modelling. + +## Evidence for size bias + +Size bias [@buckland_2001] can be examined by plotting distribution of group size as a function of detection distances. + +```{r boxplot, fig.dim=c(7,5), fig.cap="Box plot of observed group sizes by perpendicular distance band. Outliers are not shown; notches indicate discernable difference in mean group size at 2nm."} +nochopper <- subset(ETP_Dolphin, ETP_Dolphin$Search.method != 3) +with(nochopper, + boxplot(size~cut(nochopper$distance, seq(0, 5, 1), right=FALSE, labels=FALSE), + outline=FALSE, notch=TRUE, ylab="Group size", xlab="Distance category", + names=c("0-1nm","1-2nm","2-3nm","3-4nm","4-5nm")) +) +``` + +Fig. \@ref(fig:boxplot) indicates a difference in observed mean group size at 2nm; with average group size being distinctly larger at distances greater than 2nm. Hence, average group size in the sample is an overestimate of the average group size in the population. Our modelling of the detection function will need to counteract this bias by including group size in the detection function. + +# Stage one of detection function modelling + +Before creating a host of candidate models, we should address with the question of the appropriate key function for these data. Recall we are not including sightings made from the helicopter platform in our analyses. + +Fitting models with half normal key function without adjustments and with and without `Search.method` + +```{r, message=FALSE, fig.dim=c(7,5), fig.cap="Q-Q goodness of fit plots for half normal key function without adjustments also including search method as a covariate.", echo=TRUE} +hn <- ds(nochopper, key="hn", adjustment = NULL) +hn.method <- ds(nochopper, key="hn", formula = ~factor(Search.method)) +par(mfrow=c(1,2)) +gof_ds(hn, main="HN key, no adj", cex=0.5) +gof_ds(hn.method, main="HN key + method", cex=0.5) +par(mfrow=c(1,2)) +``` + +indicates a lack of fit of the half normal key function models. After some rounding to the trackline, the detection function maintains a shoulder before falling away quite rapidly. Even taking into consideration the idea that the sample size is very large (n=`r dim(nochopper)[1]`), making the goodness of fit test quite powerful, there is some doubt that the half normal key function is appropriate for these data. We will remove the half normal from further modelling, as the hazard rate will serve our purposes, as the hazard rate without adjustments or covariates, adequately fit the data. + +```{r, echo=TRUE} +hr <- ds(nochopper, key="hr") +gof_ds(hr, plot=FALSE) +``` + +## Counteracting size bias + +Conducting our modeling using the hazard rate key function, we turn our attention to incorporating group size into the detection function. The way to counteract the effect of size bias is to include group size in the detection function. + +```{r, error=TRUE, echo=TRUE} +hr.size <- ds(nochopper, key="hr", formula = ~size) +``` + +It is a disappointment to learn that a model including group size as a covariate fails to converge. There are numerical difficulties associated with a covariate that spans three orders of magnitude. For more about fitting issues with covariates, consult the [covariate example with amakihi](../../covariates-distill.Rmd). + +The distribution of group sizes is strongly skewed to the right, with a very long right tail. A transformation by natural logs will both reduce the range of `log(size)` to one order of magnitude and shift the centre of the distribution of the covariate (Fig. \@ref(fig:transf)). + +```{r transf, fig.dim=c(7,5), fig.cap="Effect of log transformation upon distribution of observed group sizes."} +par(mfrow=c(1,2)) +hist(nochopper$size, main="Observed group sizes.", + xlab="Group size") +hist(log(nochopper$size), main="log(observed group sizes).", + xlab="Log transform of group size.") +par(mfrow=c(1,1)) +``` + +The convergence problems associated with using `size` as a covariate in the detection function are alleviated as a result of the transformation. + + +```{r, echo=TRUE} +hr.clus <- ds(nochopper, key="hr", formula = ~log(size)) +``` + +Having successfully incorporated group size into the detection function, we proceed to examine the consequence of using `Search.method` as a covariate and a model incorporating both covariates. + + +```{r, message=FALSE, echo=TRUE} +hr.method <- ds(nochopper, key="hr", formula = ~factor(Search.method)) +hr.clus.method <- ds(nochopper, key="hr", formula = ~log(size) + factor(Search.method)) +``` + +```{r} +knitr::kable(summarize_ds_models(hr, hr.clus, hr.method, hr.clus.method), + caption="Models with hazard rate key function fitted to tuna fishing vessel sightings of dolphins. Sightings from helicopter not included in modelling.", digits=3, row.names = FALSE) %>% + kable_styling(bootstrap_options = "condensed", full_width = F) +``` + +# Interpretation of findings + +All of the fitted models using the hazard rate as the key function fit the data. In addition, note the estimates of $\widehat{P_a}$ for all four models. Inclusion of covariates has a negligible effect upon estimated detection probability. Despite a $\Delta$AIC value > 15, the model without covariates produces a virtually identical estimate of detection probability. This is another example of the remarkable property of pooling robustness of distance sampling estimators [@rexstad2023]. + +We discuss estimates of group and individual density from this data set. However, this data set does not accurately reflect survey effort. The `Effort` column is filled with `1` and there is only a single transect labelled in the data. Hence, the density estimates do not reflect biological reality; nevertheless the comparisons between models are legitimate. Variability between transects is also not properly incorporated into this analysis, so I won't present measures of precision associated with any of the following point estimates. + +This slight variation in $\widehat{P_a}$ among the hazard rate candidate models is reflected in the equally similar estimates of dolphin pod density among the competing models. The model with the largest $\widehat{P_a}$ produces the lowest estimate of $\widehat{D_s}$ (`r round(hr$dht$clusters$D[2],1)`); while the model with the smallest $\widehat{P_a}$ produces the largest estimate of $\widehat{D_s}$ (`r round(hr.clus.method$dht$clusters$D[2],1)`). + +However, the most important consideration in analysis of this data set is proper treatment of size bias. The hazard rate models without group size in the detection function, estimate average group size in the population to be `r round(hr$dht$Expected.S[1,2],0)` whereas the model incorporating group size in the detection function estimates average group size in the population to be `r round(hr.clus$dht$Expected.S[1,2],0)`. Based on the evidence presented in Fig. \@ref(fig:boxplot), there is reason to believe that estimates of average group size without incorporating group size in the detection function results in a positively biased estimate of group size in the population. From the group size estimates under the two models, it appears the magnitude of that positive size bias in this data set is `r round((hr$dht$Expected.S[1,2]/ hr.clus$dht$Expected.S[1,2]-1)*100, 1)`. + +This difference in estimated average group size is magnified in the estimates of individual density $\widehat{D_I}$. The model without covariates estimates $\widehat{D_I}$ = `r round(hr$dht$individuals$D[2],0)` while the model with group size as a covariate estimates $\widehat{D_I}$ to be `r round(hr.clus$dht$individuals$D[2],0)`. + +# Summary + +Take home points: + +- Before incorporating covariates into the detection function, do a thorough exploratory data analysis with lots of plots. +- Make at least a preliminary decision regarding key functions to consider before building an extensive candidate model set. +- For this data set, there is little difference in the fit of the detection functions through the inclusion of covariates (pooling robustness). +- However, exploratory data analysis suggested that small dolphin groups were missed at large distances, resulting in size bias in the estimate of average group size in the population. +- Incorporating group size as a covariate in the detection function reduced the estimate group size in the population by `r round((hr$dht$Expected.S[1,2]/ hr.clus$dht$Expected.S[1,2]-1)*100, 1)`\%. This reduction in estimated group size compensated for the size bias induced by the detection process. + +# References diff --git a/vignettes/web-only/groupsize/size.bib b/vignettes/web-only/groupsize/size.bib new file mode 100644 index 0000000..34b88b2 --- /dev/null +++ b/vignettes/web-only/groupsize/size.bib @@ -0,0 +1,70 @@ + +@book{buckland_2001, + title = {Introduction to Distance Sampling: Estimating Abundance of Biological Populations}, + shorttitle = {Introduction to {{Distance Sampling}}}, + author = {Buckland, Stephen Terrence and Anderson, David R. and Burnham, Kenneth Paul and Laake, Jeffrey Lee and Borchers, David Louis and Thomas, Leonard}, + year = {2001}, + month = jul, + publisher = {Oxford University Press}, + address = {{Oxford, New York}}, + abstract = {This book introduces the suite of techniques known as 'distance sampling', so-called because the common theme is the sampling of distances of objects from a line or point. The objects are usually animals or groups of animals ('clusters'), and the primary aim is to estimate their density or abundance in a survey area. In line transect sampling, the sampled distances are the shortest or perpendicular distance from a detected object to the line. It is the most widely used method for assessing the abundance of a wide range of terrestrial and marine animals. In point transect sampling, distances of detected objects from the sampled points are recorded. This book provides a comprehensive introduction to both techniques, and also describes several related techniques.'Introduction to Distance Sampling' updates the 1993 book 'Distance Sampling', which was the first, and until now, only book devoted to the topic. The book is aimed at quantitative biologists and wildlife managers, and statisticians involved in wildlife monitoring programmes. Of particular significance in this update is the chapter on study design and field methods, which has been extensively rewritten and extended. New technologies such as laser range finders, theodolites and the Geographical Positioning System (GPS) are discussed, and advice is given on a wide range of survey methods. Analysis methods have also been generalized, through the use of various types of multiplier. Many exercises have been introduced, to make the book more useful to graduate students in wildlife and conservation management.}, + file = {C\:\\Users\\erexs\\Zotero\\storage\\YFHEZ7DG\\introduction-to-distance-sampling-9780198509271.html}, + isbn = {978-0-19-850927-1} +} + + +@article{gerrodette_2005, + title = {Non-Recovery of two spotted and spinner dolphin populations in the Eastern Tropical Pacific Ocean}, + author = {Gerrodette, T and Forcada, J}, + year = {2005}, + volume = {291}, + pages = {1--21}, + issn = {0171-8630, 1616-1599}, + doi = {10.3354/meps291001}, + abstract = {Populations of northeastern offshore spotted dolphins Stenella attenuata attenuata and eastern spinner dolphins S. longirostris orientalis have been reduced because the dolphins are bycatch in the purse-seine fishery for yellowfin tuna in the eastern tropical Pacific Ocean (the `tuna\textendash{}dolphin issue'). Abundance and trends of these dolphin stocks were assessed from 12 large-scale pelagic surveys carried out between 1979 and 2000. Estimates of abundance were based on a multivariate linetransect analysis, using covariates to model the detection process and group size. Current estimates of abundance are about 640 000 northeastern offshore spotted dolphins (CV = 0.17) and 450 000 eastern spinner dolphins (CV = 0.23). For the whole period from 1979 to 2000, annual estimates of abundance ranged from 494 000 to 954 000 for northeastern offshore spotted dolphins and from 271 000 to 734 000 for eastern spinner dolphins. Management actions by USA and international fishing agencies over 3 decades have successfully reduced dolphin bycatch by 2 orders of magnitude, yet neither stock is showing clear signs of recovery. Possible reasons include underreporting of dolphin bycatch, effects of chase and encirclement on dolphin survival and reproduction, longterm changes in the ecosystem, and effects of other species on spotted and spinner dolphin population dynamics.}, + file = {C\:\\Users\\erexs\\Zotero\\storage\\W2ZGLF3D\\Gerrodette and Forcada - 2005 - Non-recovery of two spotted and spinner dolphin po.pdf}, + journal = {Marine Ecology Progress Series}, + language = {en} +} + +@article{swfc_2008, + title = {Estimates of 2006 Dolphin Abundance in the Eastern Tropical Pacific, with Revised Estimates from 1986-2003}, + author = {Gerrodette, Tim}, + editor = {{Southwest Fisheries Science Center (U.S.)}}, + year = {2008}, + abstract = {Tim Gerrodette ... [et al.].}, + keywords = {Animal populations,Dolphins,Environmental aspects,Tuna fisheries}, + journal = {NOAA-TM-NMFS-SWFSC;422} +} + +@inbook{burnham_etal_2004, +title = "Further topics in distance sampling", +author = "Burnham, K. P. and Buckland, S. T. and Laake, J. L. and Borchers, D. L. and Marques, T. A. M. and Bishop, J. R. B. and L. Thomas", +year = "2004", +language = "English", +pages = "307--392", +editor = "ST Buckland and DR Anderson and KP Burnham and JL Laake and DL Borchers and L Thomas", +booktitle = "Advanced Distance Sampling", +publisher = "Oxford University Press", +address = "United Kingdom" +} + +@article{rexstad2023, + title = {Pooling Robustness in Distance Sampling: {{Avoiding}} Bias When There Is Unmodelled Heterogeneity}, + shorttitle = {Pooling Robustness in Distance Sampling}, + author = {Rexstad, Eric and Buckland, Steve and Marshall, Laura and Borchers, David}, + year = {2023}, + journal = {Ecology and Evolution}, + volume = {13}, + number = {1}, + pages = {e9684}, + issn = {2045-7758}, + doi = {10.1002/ece3.9684}, + urldate = {2023-01-26}, + abstract = {The pooling robustness property of distance sampling results in unbiased abundance estimation even when sources of variation in detection probability are not modeled. However, this property cannot be relied upon to produce unbiased subpopulation abundance estimates when using a single pooled detection function that ignores subpopulations. We investigate by simulation the effect of differences in subpopulation detectability upon bias in subpopulation abundance estimates. We contrast subpopulation abundance estimates using a pooled detection function with estimates derived using a detection function model employing a subpopulation covariate. Using point transect survey data from a multispecies songbird study, species-specific abundance estimates are compared using pooled detection functions with and without a small number of adjustment terms, and a detection function with species as a covariate. With simulation, we demonstrate the bias of subpopulation abundance estimates when a pooled detection function is employed. The magnitude of the bias is positively related to the magnitude of disparity between the subpopulation detection functions. However, the abundance estimate for the entire population remains unbiased except when there is extreme heterogeneity in detection functions. Inclusion of a detection function model with a subpopulation covariate essentially removes the bias of the subpopulation abundance estimates. The analysis of the songbird point count surveys shows some bias in species-specific abundance estimates when a pooled detection function is used. Pooling robustness is a unique property of distance sampling, producing unbiased abundance estimates at the level of the study area even in the presence of large differences in detectability between subpopulations. In situations where subpopulation abundance estimates are required for data-poor subpopulations and where the subpopulations can be identified, we recommend the use of subpopulation as a covariate to reduce bias induced in subpopulation abundance estimates.}, + langid = {english}, + keywords = {abundance estimation,detectability,distance sampling,heterogeneity,pooling robustness}, + annotation = {0 citations (Crossref) [2023-08-23]}, + file = {C\:\\Users\\erexs\\Zotero\\storage\\3TAYLL9I\\Rexstad et al_2023_Pooling robustness in distance sampling.pdf;C\:\\Users\\erexs\\Zotero\\storage\\KM7R96GT\\ece3.html} +} + diff --git a/vignettes/web-only/multipliers/Prac_9_Figure_1.png b/vignettes/web-only/multipliers/Prac_9_Figure_1.png new file mode 100644 index 0000000..b834a80 Binary files /dev/null and b/vignettes/web-only/multipliers/Prac_9_Figure_1.png differ diff --git a/vignettes/web-only/multipliers/dung_persistence.csv b/vignettes/web-only/multipliers/dung_persistence.csv new file mode 100644 index 0000000..cc4828d --- /dev/null +++ b/vignettes/web-only/multipliers/dung_persistence.csv @@ -0,0 +1,89 @@ +DAYS,STATE +26.3,1 +26.3,1 +26.3,1 +26.3,1 +26.3,1 +26.3,1 +26.3,1 +26.3,1 +52.6,1 +52.6,1 +52.6,1 +52.6,1 +52.6,1 +52.6,1 +52.6,1 +52.6,1 +78.9,0 +78.9,1 +78.9,1 +78.9,1 +78.9,0 +78.9,1 +78.9,0 +78.9,1 +105.2,0 +105.2,0 +105.2,0 +105.2,1 +105.2,1 +105.2,1 +105.2,1 +105.2,0 +131.5,0 +131.5,1 +131.5,1 +131.5,1 +131.5,0 +131.5,1 +131.5,0 +131.5,1 +157.8,1 +157.8,1 +157.8,0 +157.8,0 +157.8,0 +157.8,1 +157.8,0 +157.8,0 +184.1,1 +184.1,1 +184.1,0 +184.1,0 +184.1,0 +184.1,1 +184.1,0 +184.1,0 +210.4,1 +210.4,0 +210.4,0 +210.4,0 +210.4,1 +210.4,1 +210.4,0 +210.4,0 +236.7,0 +236.7,0 +236.7,1 +236.7,1 +236.7,0 +236.7,0 +236.7,0 +236.7,0 +263,0 +263,0 +263,0 +263,0 +263,0 +263,0 +263,1 +263,0 +289.3,0 +289.3,0 +289.3,0 +289.3,0 +289.3,0 +289.3,0 +289.3,0 +289.3,0 diff --git a/vignettes/web-only/multipliers/mult.bib b/vignettes/web-only/multipliers/mult.bib new file mode 100644 index 0000000..fd04d2e --- /dev/null +++ b/vignettes/web-only/multipliers/mult.bib @@ -0,0 +1,36 @@ +@ARTICLE{Laietal03, + author = {Laing, S. E and Buckland, S. T and Burn, R. W and Lambie, D. and + Amphlett, A.}, + title = {Dung and nest surveys: estimating decay rate}, + journal = {Journal of Applied Ecology}, + year = {2003}, + volume = {40}, + pages = {1102--1111}, + doi = {https://doi.org/10.1111/j.1365-2664.2003.00861.x}, + comment = {http://www.creem.st-and.ac.uk/stb/JPE_laing_et_al.pdf}, + file = {Laingetal2003.pdf:Laingetal2003.pdf:PDF}, + subdatabase = {distance} +} + +@ARTICLE{Maretal01, + author = {Marques, F. F. C. and Buckland, S. T. and Goffin, D. and Dixon, C. + E. and Borchers, D. L. and Mayle, B. A. and Peace, A. J.}, + title = {Estimating deer abundance from line transect surveys of dung: sika + deer in southern Scotland}, + journal = {Journal of Applied Ecology}, + year = {2001}, + volume = {38}, + pages = {349--363}, + doi = {https://doi.org/10.1046/j.1365-2664.2001.00584.x}, + comment = {http://dolphin.mcs.st-and.ac.uk/marques%20et%20al%20jappecol%202001.pdf}, + file = {:Marques et al jappecol 2001.pdf:PDF}, + subdatabase = {distance} +} + +@Misc{Meredith2017, + author = {Mike Meredith}, + title = {How long do animal signs remain visible?}, + year = {2017}, + url = {http://www.mikemeredith.net/blog/2017/Sign_persistence.htm}, +} + diff --git a/vignettes/web-only/multipliers/multipliers-distill.Rmd b/vignettes/web-only/multipliers/multipliers-distill.Rmd new file mode 100644 index 0000000..14f7ea2 --- /dev/null +++ b/vignettes/web-only/multipliers/multipliers-distill.Rmd @@ -0,0 +1,183 @@ +--- +title: "Multipliers and indirect surveys" +description: | + Dung surveys including estimates of production and decay rates. +author: + - name: Eric Rexstad + url: http://distancesampling.org + affiliation: CREEM, Univ of St Andrews + affiliation_url: https://creem.st-andrews.ac.uk +output: + bookdown::html_document2: + number_sections: false + toc: true + toc_depth: 2 + base_format: rmarkdown::html_vignette +pkgdown: + as_is: true +bibliography: mult.bib +csl: ../apa.csl +vignette: > + %\VignetteIndexEntry{Multipliers and indirect surveys} + %\VignetteEngine{knitr::rmarkdown} + \usepackage[utf8]{inputenc} +--- + +```{r include=FALSE} +knitr::opts_chunk$set(eval=TRUE, echo=TRUE, message=FALSE, warnings=FALSE) +``` + +We consider indirect methods to estimate abundance and hence include multipliers in the abundance calculations. The first problem uses data from a dung survey of deer and there are two levels of multipliers that need to be incorporated in the analysis (dung production rate and dung decay rate). + +# Objectives + +The objectives of this exercise are to + +- Fit detection functions to cues +- Obtain relevant multipliers +- Use the multipliers in the `dht2` function to obtain animal abundances. + +# Dung survey of deer + +The question is how to estimate of the density of sika deer in a number of woodlands in the Scottish Borders [@Maretal01]. These animals are shy and will be aware of the presence of an observer before the observer detects them, making surveys of this species challenging. As a consequence, indirect estimation methods have been applied to this problem. In this manner, an estimate of density is produced for some sign generated by deer (in this case, faecal or dung pellets) and this estimate is transformed to density of deer ($D_{\textrm{deer}}$) by + +$$ \hat D_{\textrm{deer}} = \frac{\textrm{dung deposited daily}}{\textrm{dung production rate (per animal)}} $$ +where the dung deposited daily is given by + +$$ \textrm{dung deposited daily} = \frac{\hat D_{\textrm{pellet groups}}}{\textrm{mean time to decay}} $$ +Hence, we use distance sampling to produce a pellet group density estimate, then adjust it accordingly to account for the production and decay processes operating during the time the data were being acquired. We will also take uncertainty in the dung production and decay rates into account in our final estimate of deer density. + +Data from 9 woodlands (labelled A-H and J) were collected according to the survey design (Figure \@ref(fig:map)) but note that data from block D were not included in this exercise. + +```{r map, echo=FALSE, fig.cap="Location of sika deer survey in southern Scotland and the survey design (from [@Maretal01]). Note the differing amounts of effort in different woodlands based on information derived from pilot surveys."} +knitr::include_graphics("Prac_9_Figure_1.png") +``` + +In addition to these data, we also require estimates of the production rate. From a literature search, we learn that sika deer produce 25 pellet groups daily but this source did not provide a measure of variability of this estimate. During the course of our surveys we also followed the fate of some marked pellet groups to estimate the decay (disappearance) rates of a pellet group. A thorough discussion of methods useful for estimating decay rates and associated measures of precision can be found in Laing et al. [-@Laietal03]. + +There are many factors that might influence both production and decay rates, and for purposes of this exercise we will make the simplifying assumption that decay rate is homogeneous across these woodlands; with their mean time to decay of 163 days and a standard error of 13 days. (If you were to conduct a survey such as this, you would want to investigate this assumption more thoroughly.) + +## Getting started + +These data (called `sikadeer`) are available in the `Distance` package. Detection of deer dung takes place at small spatial scales; perpendicular distances are measured in centimeters. But transects were long; measured in kilometers and deer densities are customarily reported in numbers kilometer^-2^. + +```{r, message=FALSE} +library(Distance) +data(sikadeer) +conversion.factor <- convert_units("centimeter", "kilometer", "square kilometer") +``` + +## Fit detection function to dung pellets + +Fit the usual series of models (i.e. half normal, hazard rate, uniform) models to the distances to pellet groups and decide on a detection function. This detection function (Figure \@ref(fig:detfn)) will be used to obtain $\hat D_{\textrm{pellet groups}}$. + +```{r detfn, fig.dim=c(7,5), fig.cap="Simple detection function to deer pellet line transect data."} +deer.df <- ds(sikadeer, key="hn", truncation="10%", convert_units = conversion.factor) +plot(deer.df, main="Half normal detection function") +print(deer.df$dht$individuals$summary) +``` + +Have a look at the `Summary statistics` for this model - note some woodlands have but a single transect of effort allocated. + +## Multipliers + +The next step is to create an object which contains the multipliers we wish to use. We already have estimates of dung production rates but need similar information on dung decay (or persistence) rate. Analysis is based upon methods presented in Laing et al. [-@Laietal03]. + +Data to calculate dung persistence has been collected in the file [dung_persistence.csv](dung_persistence.csv). Following code from [@Meredith2017]. + +```{r, logistic, fig.dim=c(7,5), fig.cap="Logistic curve fitted to pellet persistence survey data. Vertical line represents day at which 50% of pellets have decayed to non-detectable."} +MIKE.persistence <- function(DATA) { + +# Purpose: calculate mean persistence time (mean time to decay) for dung/nest data +# Input: data frame with at least two columns: +# DAYS - calendar day on which dung status was observed +# STATE - dung status: 1-intact, 0-decayed +# Output: point estimate, standard error and CV of mean persistence time +# +# Attribution: code from Mike Meredith website: +# http://www.mikemeredith.net/blog/2017/Sign_persistence.htm +# Citing: CITES elephant protocol +# https://cites.org/sites/default/files/common/prog/mike/survey/dung_standards.pdf + + ## Fit logistic regression model to STATE on DAYS, extract coefficients + dung.glm <- glm(STATE ~ DAYS, data=DATA, family=binomial(link = "logit")) + betas <- coefficients(dung.glm) + ## Calculate mean persistence time + mean.decay <- -(1+exp(-betas[1])) * log(1+exp(betas[1])) / betas[2] + ## Calculate the variance of the estimate + vcovar <- vcov(dung.glm) + var0 <- vcovar[1,1] # variance of beta0 + var1 <- vcovar[2,2] # variance of beta1 + covar <- vcovar[2,1] # covariance + deriv0 <- -(1-exp(-betas[1]) * log(1+exp(betas[1])))/betas[2] + deriv1 <- -mean.decay/betas[2] + var.mean <- var0*deriv0^2 + 2*covar*deriv0*deriv1 + var1*deriv1^2 + ## Calculate the SE and CV and return + se.mean <- sqrt(var.mean) + cv.mean <- se.mean/mean.decay + out <- c(mean.decay, se.mean, 100*cv.mean) + names(out) <- c("Mean persistence time", "SE", "%CV") + plot(decay$DAYS, jitter(decay$STATE, amount=0.10), xlab="Days since initiation", + ylab="Dung persists (yes=1)", + main="Eight dung piles revisited over time") + curve(predict(dung.glm, data.frame(DAYS=x), type="resp"), add=TRUE) + abline(v=mean.decay, lwd=2, lty=3) + return(out) +} +decay <- read.csv("dung_persistence.csv") +persistence.time <- MIKE.persistence(decay) +print(persistence.time) +``` + +Running the above command should have produced a plot of dung persistence versus days since produced and fitted a logistic regression (this is like a simple linear regression but restricts the response to taking values between 0 and 1). Note the points can in reality only take values between 0 and 1 but for the purposes of plotting have been 'jittered' to avoid over-plotting. + +An estimate of mean persistence time and measure of variability are also provided - make a note of these as they will be required below. Dotted vertical line indicates the time at which the estimated probability of persistence is 0.5. + +As stated above, we want an object which contains information on the dung production rate (and standard error) and dung decay rate (and standard error). The following command creates a list containing two data frames: + ++ `creation` contains estimates of the dung production rate and associated standard error ++ `decay` contains the dung decay rate and associated standard error where `XX` and `YY` are the estimates obtained from the dung decay rate analysis. + +```{r} +# Create list of multipliers +mult <- list(creation = data.frame(rate=25, SE=0), + decay = data.frame(rate=163, SE=14.2)) +print(mult) +``` + +The final step is to use these multipliers to convert $\hat D_{\textrm{pellet groups}}$ to $\hat D_{\textrm{deer}}$ (as in the equations above) - for this we need to employ the `dht2` function. In the command below the `multipliers=` argument allows us to specify the rates and standard errors. There are a couple of other function arguments that need some explanation: + ++ `strat_formula=~Region.Label` is specified to take into account the design (i.e. different woodlands or blocks). ++ `stratification="geographical"` is specified because we want to produce an overall estimate density that is the mean of the woodland specific densities weighted by area of each block. ++ `deer.df` is the detection function you have fitted. + +```{r} +deer.ests <- dht2(deer.df, flatfile=sikadeer, strat_formula=~Region.Label, + convert_units=conversion.factor, multipliers=mult, + stratification="geographical") +print(deer.ests, report="density") +``` + +# Other `stratification` choices with `dht2` + +This example of Sika deer on different hunting estates uses geographical stratification. There is also the option of using the option `replicate` for the `stratification` argument. This is useful when there are repeated surveys in a geographic area; the average abundance is computed and variance is variability between surveys. Alternatively `effort_sum` is used with replicate surveys, but few replicates reporting average variance. Finally, the specification of `stratification="object"` can be used when detections are made of different species, sexes or ages of animals. This option will produce species-specific abundance estimates as well as abundance estimate over all species, properly calculating variance of total abundance. More information is available in [this diagramatic comparison](strat.pdf) as well as in the help file for `?dht2`. + +The function `dht2` also provides information on the components of variance. Make a note of the these (contribution of detection function, encounter rate, decay rate and what happened to production rate component?) in each strata. + + +# Notes regarding this dung survey + ++ overall estimate of density + - most effort took place in woodland A where deer density was high. Therefore, the overall estimate is between the estimated density in woodland A and the lower densities in the other woodlands. ++ components of variance + - we now have uncertainty associated with the encounter rate, detection function and decay rate (note there was no uncertainty associated with the production rate) and so the components of variation for all three components are provided. + +In woodland A, there were 13 transects on which over 1,200 pellet groups were detected: uncertainty in the estimated density (measured by CV) was 19\% and the variance components were apportioned as detection probability 4\%, encounter rate 76\% and multipliers 20\%. + +In woodland E, there were 5 transects and 30 pellet groups resulting in a coefficient of variation (CV) of 48\%: the variance components were apportioned as detection probability 0.7\%, encounter rate 96\% and multipliers 3\%. + +The CV of the abundance estimates for blocks F, H and J are identical (9\%) because a pooled detection function was used across all blocks and the dung deposition and decay rates were not block-specific. The only element of the computation remaining that is block-specific is the encounter rate; and for these three blocks there was but a single transect per block, meaning the encounter rate variance could not be computed and was set to zero. + +The estimated abundance across all blocks had a CV of 14\%. But far and away, the greatest contribution to this uncertainty was encounter rate variance--differences in pellet encounters between transects. In the context of distance sampling, the uncertainty in the parameter estimates of the detection function accounts for <1\% in the total estimate of deer abundance across the blocks. + +# References diff --git a/vignettes/web-only/multispecies/multi.bib b/vignettes/web-only/multispecies/multi.bib new file mode 100644 index 0000000..c83ff11 --- /dev/null +++ b/vignettes/web-only/multispecies/multi.bib @@ -0,0 +1,15 @@ +@article{Buckland2006, + title = {Point Transect Surveys for Songbirds: Robust Methodologies}, + author = {Buckland, S. T.}, + year = {2006}, + journal = {The Auk}, + volume = {123}, + number = {2}, + pages = {345--357}, + doi = {10.1093/auk/123.2.345}, + owner = {Tiago}, + refid = {15765}, + subdatabase = {distance}, + timestamp = {2006.11.23}, + file = {C:\Users\erexs\Zotero\storage\AK9DNCEZ\Buckland_2006_Point transect surveys for songbirds.pdf} +} diff --git a/vignettes/web-only/multispecies/multispecies-multioccasion-analysis.Rmd b/vignettes/web-only/multispecies/multispecies-multioccasion-analysis.Rmd new file mode 100644 index 0000000..1c160f1 --- /dev/null +++ b/vignettes/web-only/multispecies/multispecies-multioccasion-analysis.Rmd @@ -0,0 +1,145 @@ +--- +title: "Perils of multispecies and multisession distance sampling analysis" +description: | + Example using Montrave data employing `region_table` and `sample_table` construct +author: + - name: Eric Rexstad + url: http://distancesampling.org + affiliation: CREEM, Univ of St Andrews + affiliation_url: https://creem.st-andrews.ac.uk +output: + bookdown::html_document2: + number_sections: false + toc: true + toc_depth: 2 + base_format: rmarkdown::html_vignette +pkgdown: + as_is: true +bibliography: multi.bib +csl: ../apa.csl +vignette: > + %\VignetteIndexEntry{Perils of multispecies and multisession distance sampling analysis} + %\VignetteEngine{knitr::rmarkdown} + \usepackage[utf8]{inputenc} +--- + +```{r include=FALSE} +knitr::opts_chunk$set(eval=TRUE, echo=TRUE, message=FALSE, warnings=FALSE) +``` +```{r setup, include=FALSE} +library(Distance) +library(kableExtra) +options(knitr.table.format = "html") +``` + + +# A multispecies data set with multiple visits + +It is increasingly common for investigators to conduct surveys in which multiple species are detected and density estimates for several species are of interest. There are many ways of analysing such data sets, but care must be taken. Not all approaches will produce correct density estimates. To demonstrate one of the ways to produce incorrect estimates, we will use the line transect survey data reported in @Buckland2006. This survey (and data file) recorded detections of four species of songbirds. We conduct an analysis of chaffinch *(Fringilla coelebs)* (coded `c` in the data file), but similar results would arise with the other species. + +Begin by reading the flat file in a comma delimited format. Note the URL for the data file is very long, double check that you can read the URL including the Github token. + +```{r dataread} +URLpart1 <- "https://raw.githubusercontent.com/distanceexamples/Distance-multispecies/main/montrave-line.csv" +URLpart2 <- "?token=GHSAT0AAAAAABP6QDHAQ677QTIJEKSK2WYEYWG4EYA" +birds <- read.csv(file=paste0(URLpart1, URLpart2)) +``` + +# Survey design + +Buckland's design consisted of visiting each of the 19 transects in his study twice. To examine some of the errors that can arise from improper analysis, I choose to treat the two visits as `strata` for the express purpose of generating stratum (visit) -specific density estimates. Density estimates reported in @Buckland2006 are in units of birds $\cdot hectare^{-1}$. + +```{r organise} +birds$Region.Label <- birds$visit +cu <- convert_units("meter", "kilometer", "hectare") +``` + +# Analysis of only one species (incorrectly) + +The direct approach to producing a density estimate for the chaffinch would be to subset the original data frame and use the species-specific data frame for analysis. Begin by performing the subset operation. + +```{r subset} +chaf <- birds[birds$species=="c", ] +``` + +When the data are subset, the integrity of the survey design is not preserved. A simple frequency table of the species-specific data frame flags up a number of transect/visit combinations where no chaffinches were detected. The result is that the subset data frame suggests 3 of the 19 transects lacked chaffinch detections on the first visit and one of the 19 transects lacked chaffinch detections on the second visit. This revelation, in itself, causes no problems for our estimate of density of chaffinches. + +```{r missingrows} +detects <- table(chaf$Sample.Label, chaf$visit) +detects <- as.data.frame(detects) +names(detects) <- c("Transect", "Visit", "Detections") +detects$Detections <- cell_spec(detects$Detections, + background = ifelse(detects$Detections==0, "red", "white")) +knitr::kable(detects, escape=FALSE) %>% + kable_paper(full_width=FALSE) + +``` + +However, there is a problem hidden within the table above. Transect 12 does not appear in the table because there were no detections of chaffinches on *either* visit. Consequently, there were 4 transects without chaffinches on the first visit and 2 transects without chaffinches on the second visit, rather than the 3 transects and 1 transect you might mistakenly conclude do not have chaffinch detections if you relied completely upon the table. + +Let's see what the `ds()` function thinks about the survey effort using information from the species-specific data frame. + +```{r incorrect-result} +chaf.wrong <- ds(chaf, key="hn", convert_units = cu, truncation=95, formula = ~Region.Label) +knitr::kable(chaf.wrong$dht$individuals$summary) %>% + kable_paper(full_width=FALSE) %>% + column_spec(6, background="salmon") %>% + column_spec(7, background="steelblue") +``` + +Examine the column labelled `k` (the number of transects) for each of the visits. Rather than the 19 transects that were surveyed on each visit, the `ds()` function erroneously believes there were only 15 transects surveyed on the first visit and 17 transects surveyed on the second visit. + +Note also the number of detections per kilometer; roughly 9 on the first visit and 7.7 on the second visit. These encounter rates exclude kilometers of effort on transects where there were no detections. We will return to this comparison later. + +# Use explicit data hierarchy + +Additional arguments can be passed to `ds()` to resolve this problem. Consulting the `ds()` documentation + +:::{.callout-warning collapse=false appearance='default' icon=true} +## Help file for `ds` +- region_table data.frame with two columns: + - Region.Label label for the region + - Area area of the region + - region_table has one row for each stratum. If there is no stratification then region_table has one entry with Area corresponding to the total survey area. If Area is omitted density estimates only are produced. +- sample_table data.frame mapping the regions to the samples (i.e. transects). There are three columns: + - Sample.Label label for the sample + - Region.Label label for the region that the sample belongs to. + - Effort the effort expended in that sample (e.g. transect length). +::: + +This analysis that produces erroneous results can be remedied by explicitly letting the `ds()` function know about the study design; specifically, how many strata and the number of transects within each stratum (and associated transect lengths). + +Construct the `region table` and `sample table` showing the two strata with equal areas and each labelled transect (of given length) is repeated two times. + +```{r buildtables} +birds.regiontable <- data.frame(Region.Label=as.factor(c(1,2)), Area=c(33.2,33.2)) +birds.sampletable <- data.frame(Region.Label=as.factor(rep(c(1,2), each=19)), + Sample.Label=rep(1:19, times=2), + Effort=c(0.208, 0.401, 0.401, 0.299, 0.350, + 0.401, 0.393, 0.405, 0.385, 0.204, + 0.039, 0.047, 0.204, 0.271, 0.236, + 0.189, 0.177, 0.200, 0.020)) +``` + +# Simple detection function model + +The chaffinch analysis is performed again, this time supplying the `region_table` and `sample_table` information to `ds()`. The correct number of transects (19) sampled on both visits (even though chaffinch was not detected on 4 transects on visit 1 and 2 transects on visit 2) is now recognised. Hence, the use of `region table` and `sample table` **solves the problem** of effort miscalculation if a species is not detected on all transects. + +```{r truncate} +tr <- 95 # as per Buckland (2006) +onlycf <- ds(data=birds[birds$species=="c", ], + region_table = birds.regiontable, + sample_table = birds.sampletable, + trunc=tr, convert_units=cu, key="hn", formula = ~Region.Label) +knitr::kable(onlycf$dht$individuals$summary) %>% + kable_paper(full_width=FALSE) %>% + column_spec(6, background="salmon") %>% + column_spec(7, background="steelblue") +``` + +# Consequence of incorrect analysis + +To drive home the consequence of failing to properly specify the survey effort, contrast the encounter rate for the two visits from the incorrect calculations above (9.0 and 7.7 respectively), with the correct calculation (8.1 and 7.0 respectively). The number of transects is incorrect with the knock-on effect of effort being incorrect. If effort is incorrect then so too is covered area. +The ripple effect from incomplete information about the survey design results in positively biased estimates of density. + +# References \ No newline at end of file diff --git a/vignettes/web-only/points/arapaho.JPG b/vignettes/web-only/points/arapaho.JPG new file mode 100644 index 0000000..4633ecf Binary files /dev/null and b/vignettes/web-only/points/arapaho.JPG differ diff --git a/vignettes/web-only/points/points.bib b/vignettes/web-only/points/points.bib new file mode 100644 index 0000000..561e02f --- /dev/null +++ b/vignettes/web-only/points/points.bib @@ -0,0 +1,44 @@ + +@article{knopf_guild_1988, + title = {Guild structure of a riparian avifauna relative to seasonal cattle grazing}, + author = {Knopf, Fritz L. and Sedgwick, James A. and Cannon, Richard W.}, + year = {1988}, + volume = {52}, + pages = {280--290}, + issn = {0022-541X}, + doi = {10.2307/3801235}, + journal = {The Journal of Wildlife Management}, + number = {2} +} + +@article{miller_distance_2019, + title = {Distance Sampling in R}, + volume = {89}, + copyright = {Copyright (c) 2019 David L. Miller, Eric Rexstad, Len Thomas, Laura Marshall, Jeffrey L. Laake}, + issn = {1548-7660}, + language = {en}, + number = {1}, + journal = {Journal of Statistical Software}, + doi = {10.18637/jss.v089.i01}, + author = {Miller, David L. and Rexstad, Eric and Thomas, Len and Marshall, Laura and Laake, Jeffrey L.}, + month = may, + year = {2019}, + keywords = {distance sampling,abundance estimation,detection function,distance,Horvitz-Thompson,line transect,point transecs,R}, + pages = {1-28}, +} + +@misc{r_core_team_r_2019, + address = {{Vienna Austria}}, + title = {R: A Language and Environment for Statistical Computing}, + howpublished = {R Foundation for Statistical Computing}, + author = {{R Core Team}}, + year = {2019} +} + + +@Book{buckland2015distance, + title = {Distance sampling: methods and applications}, + publisher = {Springer}, + year = {2015}, + author = {Buckland, Steve and Rexstad, Eric and Marques, Tiago and Oedekoven, Cornelia}, +} diff --git a/vignettes/web-only/points/pointtransects-distill.Rmd b/vignettes/web-only/points/pointtransects-distill.Rmd new file mode 100644 index 0000000..c4812a2 --- /dev/null +++ b/vignettes/web-only/points/pointtransects-distill.Rmd @@ -0,0 +1,211 @@ +--- +title: "Point transect density estimation" +description: | + Example analysis of point transect songbird data. +author: + - name: Eric Rexstad + url: http://distancesampling.org + affiliation: CREEM, Univ of St Andrews + affiliation_url: https://creem.st-andrews.ac.uk +date: "`r format(Sys.time(), '%B %Y')`" +output: + bookdown::html_document2: + number_sections: false + toc: true + toc_depth: 2 + base_format: rmarkdown::html_vignette +pkgdown: + as_is: true +bibliography: points.bib +csl: ../apa.csl +vignette: > + %\VignetteIndexEntry{Point transect density estimation} + %\VignetteEngine{knitr::rmarkdown} + \usepackage[utf8]{inputenc} +--- + +```{r include=FALSE} +knitr::opts_chunk$set(eval=TRUE, echo=TRUE, message=FALSE, warnings=FALSE) +``` + +In this exercise, we use `R` [@r_core_team_r_2019] and the `Distance` package [@miller_distance_2019] to fit different detection function models to point transect survey data of savanna sparrows *(Passerculus sandwichensis)* density and abundance. These data were part of a study examining the effect of livestock grazing upon vegetation structure and consequently upon the avian community described by Knopf et al. [-@knopf_guild_1988]. + +Steps in this analysis are similar to the steps taken in the [line transect analysis of winter wren data](https://distancedevelopment.github.io/docs/articles/lines-distill.html). + +# Objectives + +- Fit a basic detection function using the `ds` function +- Plot and examine a detection function +- Fit different detection function forms. + +# Survey design + +A total of 373 point transects were placed in three pastures in the Arapaho National Wildlife Refuge in Colorado (Figure \@ref(fig:fig)). Elevation of these pastures was ~2500m. We will not deal with pasture-level analysis of these data in this vignette and will alter the data to remove the strata designations. + +```{r fig, echo=FALSE, fig.dim=c(7,5), fig.cap="Summer grazed pastures along Illinois River Arapaho National Wildlife Refuge, Colorado. Figure from [@knopf_guild_1988]."} +knitr::include_graphics("arapaho.JPG") +``` + + +The fields of the `Savannah_sparrow_1980` data set are: + ++ Region.Label - three pastures that constituted sections of the study area. However, for this vignette we are going to make all labels identical. This will treat the data as if they were all detected in the same pasture. The matter of stratification will be taken up in another vignette. ++ Area - size of the study region. A place holder, because pasture sizes are not known. Estimates of density and abundance will be equivalent. ++ Sample.Label - point transect identifier (total of 373 points) ++ Effort - number of visits to each point ++ object - unique identifier for each detected savanna sparrow ++ distance - radial distance (metres) to each detection ++ Study.Area - only data for savanna sparrow (SASP) are included in this data set + +# Make the data available for R session + +This command assumes that the `dsdata` package has been installed on your computer. The R workspace `Savannah_sparrow_1980` contains detections of savanna sparrows from point transect surveys of Knopf et al. [-@knopf_guild_1988]. + +```{r} +library(Distance) +data(Savannah_sparrow_1980) +# remove pasture-level identifier in Region.Label +Savannah_sparrow_1980$Region.Label <- "Single_stratum" +``` + +The code above overwrites the strata designations in the original data to make it appear that all data were derived from a single stratum. This makes the analysis simpler to perform. There are examples of analysis of [stratified data in another vignette](https://examples.distancesampling.org/Distance-strata/strata.html). + +Examine the first few rows of `Savannah_sparrow_1980` using the function `head()` + +```{r} +head(Savannah_sparrow_1980) +``` + +The object `Savannah_sparrow_1980` is a dataframe object made up of rows and columns. In contrast to the [Montrave winter wren line transect data used in the previous vignette](https://examples.distancesampling.org/Distance-strata/linetransects-distill.html), savannah sparrows were not detected at all point transects. Radial distances receive the value `NA` for transects where there were no detections. To determine the number of detections in this data set, we total the number of values in the `distance` field that are not `NA` + +```{r} +sum(!is.na(Savannah_sparrow_1980$distance)) +``` + +# Examine the distribution of detection distances + +Gain familiarity with the radial distance data using the `hist()` function (Figure \@ref(fig:basichist)). + +```{r, basichist, fig.dim=c(7,5), fig.cap="Histogram of radial distances of savannah sparrows across all pastures."} +hist(Savannah_sparrow_1980$distance, xlab="Distance (m)", + main="Savannah sparrow point transects") +``` + +Note the shape of the radial distance histogram does not resemble the shape of perpendicular distances gathered from line transect sampling [@buckland2015distance, Section 1.3]. + +# Specify unit conversions + +With point transects, there are only units of measure associated with the size of the study area and the radial distance measures, because effort is measured in number of visits, rather than distance. + +- distance_units + - units of measure for radial distances +- effort_units + - units of measure for effort (`NULL` for point transects) +- area_units + - units of measure for the study area. Recall this data set has set the size of the study area to be `1`, resulting in abundance and density to be equal. + +```{r} +conversion.factor <- convert_units("meter", NULL, "hectare") +``` + +# Fitting a simple detection function model with `ds` + +Detection functions are fitted using the `ds` function and this function requires a data frame to have a column called `distance`. We have this in our `nests` data, therefore, we can simply supply the name of the data frame to the function along with additional arguments. + +Details about the arguments for this function: + ++ `key="hn"` + - fit a half-normal key detection function ++ `adjustment=NULL` + - do not include adjustment terms ++ `transect="point"` + - necessary to indicate this is point transect data ++ `convert_units=conversion.factor` + - required because, for this example, the radial distances are in metres . Our density estimates will be reported in number of birds per hectare. ++ `truncation="5%"` + - right truncation (described below) + +As is customary, right truncation is employed to remove 5\% of the observations most distant from the transects, as detections at these distances contain little information about the shape of the fitted probability density function near the point. + +```{r} +sasp.hn <- ds(data=Savannah_sparrow_1980, key="hn", adjustment=NULL, + transect="point", convert_units=conversion.factor, truncation="5%") +``` + +On calling the `ds` function, information is provided to the screen reminding the user what model has been fitted and the associated AIC value. More information is supplied by applying the `summary()` function to the object created by `ds()`. + +```{r} +summary(sasp.hn) +``` + +Visually inspect the fitted detection function with the `plot()` function, specifying the cutpoints histogram with argument `breaks`. Add the argument `pdf` so the plot shows the probability densiy function rather than the detection function. The probability density function is preferred for assessing model fit because the PDF incorporates information about the availability of animals to be detected. There are few animals available to be detected at small distances, therefore lack of fit at small distances is not as consequential for points as it is for lines (Figure \@ref(fig:modelfit)). + +```{r, modelfit, fig.dim=c(7,5), fig.cap="Fit of half normal detection function to savannah sparrow data."} +cutpoints <- c(0,5,10,15,20,30,40,max(Savannah_sparrow_1980$distance, na.rm=TRUE)) +plot(sasp.hn, breaks=cutpoints, pdf=TRUE, main="Savannah sparrow point transect data.") +``` + +# Specifying different detection functions + +Detection function forms and shapes, are specified by changing the `key` and `adjustment` arguments. + +The options available for `key` and `adjustment` elements detection functions are: + ++ half normal (`key="hn"`) - default ++ hazard rate (`key="hr"`) ++ uniform (`key="unif"`) ++ no adjustment terms (`adjustment=NULL`) ++ cosine (`adjustment="cos"`) - default ++ Hermite polynomial (`adjustment="herm"`) ++ Simple polynomial (`adjustment="poly"`) + +To fit a uniform key function with cosine adjustment terms, use the command: + +```{r} +sasp.unif.cos <- ds(Savannah_sparrow_1980, key="unif", adjustment="cos", + transect="point", convert_units=conversion.factor, truncation="5%") +``` + +To fit a hazard rate key function with simple polynomial adjustment terms, then use the command: + +```{r} +sasp.hr.poly <- ds(Savannah_sparrow_1980, key="hr", adjustment="poly", + transect="point", convert_units=conversion.factor, truncation="5%") +``` + +# Model comparison + +Each fitted detection function produces a different estimate of Savannah sparrow abundance and density. The estimate depends upon the model chosen. The model selection tool for distance sampling data is AIC. + +```{r} +AIC(sasp.hn, sasp.hr.poly, sasp.unif.cos) +``` + +## Absolute goodness of fit + +In addition to the relative ranking of models provided by AIC, it is also important to know whether selected model(s) actually fit the data. The model is the basis of inference, so it is dangerous to make inference from a model that does not fit the data. Goodness of fit is assessed using the function `gof_ds` (Figure \@ref(fig:gof)). + +```{r, gof, fig.dim=c(7,5), fig.cap="Q-Q plot of half normal detection function to savannah sparrow data."} +gof_ds(sasp.hn) +``` + +# Model comparison tables + +The function `summarise_ds_models` combines the work of `AIC` and `gof_ds` to produce a table of fitted models and summary statistics. + +```{r} +knitr::kable(summarize_ds_models(sasp.hn, sasp.hr.poly, sasp.unif.cos),digits=3, + caption="Model selection summary of savannah sparrow point transect data.") +``` + + +# Conclusions + +Key differences between analysis of line transect data and point transect data + +- argument `transect` in `ds()` must be set to `"point"`, +- histogram of radial detection distances is characteristically "humped" because few individuals are available to be detected near the points, +- because of the hump shape (Figure \@ref(fig:basichist)), plotting to assess fit of data to detection distribution usually assessed via `pdf=TRUE` argument added to `plot()` function, +- for the Arapaho National Refuge Savannah sparrow data, the three candidate models all provide adequeate fit to the data and produce comparable estimates of $P_a$. + +# References \ No newline at end of file diff --git a/vignettes/web-only/strata/arapaho.JPG b/vignettes/web-only/strata/arapaho.JPG new file mode 100644 index 0000000..4633ecf Binary files /dev/null and b/vignettes/web-only/strata/arapaho.JPG differ diff --git a/vignettes/web-only/strata/strata-distill.Rmd b/vignettes/web-only/strata/strata-distill.Rmd new file mode 100644 index 0000000..b85423e --- /dev/null +++ b/vignettes/web-only/strata/strata-distill.Rmd @@ -0,0 +1,144 @@ +--- +title: "Analysis of stratified survey designs" +description: | + Revisiting the savanna sparrow point transect data. +author: + - name: Eric Rexstad + url: http://distancesampling.org + affiliation: CREEM, Univ of St Andrews + affiliation_url: https://creem.st-andrews.ac.uk +date: "`r format(Sys.time(), '%B %Y')`" +output: + bookdown::html_document2: + number_sections: false + toc: true + toc_depth: 2 + base_format: rmarkdown::html_vignette +pkgdown: + as_is: true +bibliography: strata.bib +csl: ../apa.csl +vignette: > + %\VignetteIndexEntry{Analysis of stratified survey designs} + %\VignetteEngine{knitr::rmarkdown} + \usepackage[utf8]{inputenc} +--- + +```{r include=FALSE} +knitr::opts_chunk$set(eval=TRUE, echo=TRUE, message=FALSE, warnings=FALSE) +``` + +In this exercise, we use `R` [@r_core_team_r_2019] and the `Distance` package [@miller_distance_2019] to fit different detection function models to point transect survey data of savanna sparrows *(Passerculus sandwichensis)* density and abundance. These data were part of a study examining the effect of livestock grazing upon vegetation structure and consequently upon the avian community described by Knopf et al. [-@knopf_guild_1988]. This dataset was also used to demonstrate [point transect analysis](https://examples.distancesampling.org/Distance-points/pointtransects-distill.html) + +# Objectives + +- Fit a detection function pooling data across pastures, +- Fit pasture-specific detection functions, +- Choose most appropriate analysis using model selection. + +# Survey design + +A total of 373 point transects were placed in three pastures in the Arapaho National Wildlife Refuge in Colorado (Figure \@ref(fig:fig)). Elevation of these pastures was ~2500m. In this example, we **will** perform pasture-level analysis of these data. + +```{r fig, echo=FALSE, fig.cap="Summer grazed pastures along Illinois River Arapaho National Wildlife Refuge, Colorado.\nFigure from [@knopf_guild_1988]."} +knitr::include_graphics("arapaho.jpg") +``` + + +The fields of the `Savannah_sparrow_1980` data set are: + ++ Region.Label - three pastures that constituted sections of the study area. ++ Area - size of the study region. A place holder, because pasture sizes are not known. Estimates of density and abundance will be equivalent. ++ Sample.Label - point transect identifier (total of 273) ++ Effort - number of visits to each point ++ object - unique identifier for each detected savanna sparrow ++ distance - radial distance (metres) to each detection ++ Study.Area - only data for savanna sparrow (SASP) are included in this data set + +# Make the data available for R session + +This command assumes that the `dsdata` package has been installed on your computer. The R workspace `Savannah_sparrow_1980` contains detections of savanna sparrows from point transect surveys of Knopf et al. [-@knopf_guild_1988]. + +```{r} +library(Distance) +data(Savannah_sparrow_1980) +conversion.factor <- convert_units("meter", NULL, "hectare") +``` + + +# Separate data into pasture-specific data sets + +The simplest way to fit pasture-specific detection functions is to subset the data. This could be done at the time the `ds()` function is called, but we perform the step here as a data preparation step. + +```{r} +sasp.past1 <- subset(Savannah_sparrow_1980, Region.Label == "PASTURE 1") +sasp.past2 <- subset(Savannah_sparrow_1980, Region.Label == "PASTURE 2") +sasp.past3 <- subset(Savannah_sparrow_1980, Region.Label == "PASTURE 3") +``` + +# Pasture (stratum)-specific detection functions + +Fit half-normal key functions without adjustments to each pasture separately after performing 5\% right truncation. + +```{r} +past1.hn <- ds(data=sasp.past1, key="hn", adjustment=NULL, + transect="point", convert_units=conversion.factor, truncation="5%") +past2.hn <- ds(data=sasp.past2, key="hn", adjustment=NULL, + transect="point", convert_units=conversion.factor, truncation="5%") +past3.hn <- ds(data=sasp.past3, key="hn", adjustment=NULL, + transect="point", convert_units=conversion.factor, truncation="5%") +``` + +The total AIC for the model that fits separate detection functions to each pasture is the sum of the AICs for the individual pastures. + +```{r} +model.separate.AIC <- sum(AIC(past1.hn, past2.hn, past3.hn)$AIC) +``` + +# Common detection function across pastures + +This model is much simpler to fit because there is only a single call to `ds()` using the original data. + +```{r} +model.pooled <- ds(data=Savannah_sparrow_1980, key="hn", adjustment=NULL, + transect="point", convert_units = conversion.factor, truncation = "5%") +model.pooled.AIC <- AIC(model.pooled) +``` + +# Comparison of AIC scores + +```{r} +cat(paste("Stratum-specific detection AIC", round(model.separate.AIC), + "\nCommon detection function AIC", round(model.pooled.AIC$AIC)), sep=" ") +``` + +Because the AIC for model with stratum-specific detection functions (`r round(model.separate.AIC)`) is less than AIC for model with pooled detection function (`r round(model.pooled.AIC$AIC)`), we base our inference upon the stratum-specific detection function model (depicted in Figure \@ref(fig:threeplot)). + +```{r, threeplot, fig.dim=c(8,6), fig.cap="Pasture-specific detection functions based upon half-normal key function."} +cutpoints <- c(0,5,10,15,20,30,40,53) +par(mfrow=c(1,3)) +plot(past1.hn, breaks=cutpoints, pdf=TRUE, main="Pasture 1") +plot(past2.hn, breaks=cutpoints, pdf=TRUE, main="Pasture 2") +plot(past3.hn, breaks=cutpoints, pdf=TRUE, main="Pasture 3") +``` + + +## Absolute goodness of fit + +Always best to check the fit of the preferred model to the data. + +```{r, fitcheck, results='hold'} +gof_ds(past1.hn, plot = FALSE) +gof_ds(past2.hn, plot = FALSE) +gof_ds(past3.hn, plot = FALSE) +``` + +Further exploration of analyses involving stratification can be found in the [example of dung survey analysis](https://examples.distancesampling.org/Distance-mult/multipliers-distill.html). + +# Comments + +Note there is a difference of `r round(model.pooled.AIC$AIC - model.separate.AIC)` AIC units between the model using stratum-specific detection functions and the model using a pooled detection function, with the stratum-specific detection function model being preferrable. To be thorough, absolute goodness of fit for the three stratum-specific detection functions is checked, and all models fit the data adequately. + +This vignette focuses upon use of stratum-specific detection functions as a model selection exercise. Consequently, the vignette does not examine stratum-specific abundance or density estimates. That output is not included in this example analysis, but can easily be produced by continuing the analysis begun in this example. + +# References \ No newline at end of file diff --git a/vignettes/web-only/strata/strata.bib b/vignettes/web-only/strata/strata.bib new file mode 100644 index 0000000..693fc6f --- /dev/null +++ b/vignettes/web-only/strata/strata.bib @@ -0,0 +1,44 @@ + +@article{knopf_guild_1988, + title = {Guild structure of a riparian avifauna relative to seasonal cattle grazing}, + author = {Knopf, Fritz L. and Sedgwick, James A. and Cannon, Richard W.}, + year = {1988}, + volume = {52}, + pages = {280--290}, + issn = {0022-541X}, + doi = {10.2307/3801235}, + journal = {The Journal of Wildlife Management}, + number = {2} +} + +@article{miller_distance_2019, + title = {Distance sampling in R}, + volume = {89}, + copyright = {Copyright (c) 2019 David L. Miller, Eric Rexstad, Len Thomas, Laura Marshall, Jeffrey L. Laake}, + issn = {1548-7660}, + language = {en}, + number = {1}, + journal = {Journal of Statistical Software}, + doi = {10.18637/jss.v089.i01}, + author = {Miller, David L. and Rexstad, Eric and Thomas, Len and Marshall, Laura and Laake, Jeffrey L.}, + month = may, + year = {2019}, + keywords = {distance sampling,abundance estimation,detection function,distance,Horvitz-Thompson,line transect,point transecs,R}, + pages = {1-28}, +} + +@misc{r_core_team_r_2019, + address = {{Vienna Austria}}, + title = {R: A Language and Environment for Statistical Computing}, + howpublished = {R Foundation for Statistical Computing}, + author = {{R Core Team}}, + year = {2019} +} + + +@Book{buckland2015distance, + title = {Distance sampling: methods and applications}, + publisher = {Springer}, + year = {2015}, + author = {Buckland, Steve and Rexstad, Eric and Marques, Tiago and Oedekoven, Cornelia}, +} diff --git a/vignettes/web-only/variance/variance-distill.Rmd b/vignettes/web-only/variance/variance-distill.Rmd new file mode 100644 index 0000000..22b8510 --- /dev/null +++ b/vignettes/web-only/variance/variance-distill.Rmd @@ -0,0 +1,147 @@ +--- +title: "Variance estimation" +description: | + Variance estimation using bootstrap resampling. +author: + - name: Eric Rexstad + url: http://distancesampling.org + affiliation: CREEM, Univ of St Andrews + affiliation_url: https://creem.st-andrews.ac.uk +date: "`r format(Sys.time(), '%B %Y')`" +output: + bookdown::html_document2: + number_sections: false + toc: true + toc_depth: 2 + base_format: rmarkdown::html_vignette +pkgdown: + as_is: true +bibliography: variance.bib +csl: ../apa.csl +vignette: > + %\VignetteIndexEntry{Variance estimation} + %\VignetteEngine{knitr::rmarkdown} + \usepackage[utf8]{inputenc} +--- + +```{r include=FALSE} +knitr::opts_chunk$set(eval=TRUE, echo=TRUE, message=FALSE, warnings=FALSE, progress=FALSE) +``` + +Continuing with the Montrave winter wren line transect data from the line transect vignette, we focus upon producing robust estimates of precision in our point estimates of abundance and density. The analysis in `R` [@r_core_team_r_2019] makes use of the `Distance` package [@miller_distance_2019]. + +# Objectives + +- Estimate precision in the standard manner +- Use the bootstrap to estimate precision +- Incorporate model uncertainty in our estimates of precision + +# Survey data + +The R workspace `wren_lt` contains detections of winter wrens from the line transect surveys of @Buckland2006. + +```{r} +library(Distance) +data(wren_lt) +``` + +The function `names()` allows you to see the names of the columns of the data frame `wren_lt`. Definitions of those fields were provided in the [line transect vignette](https://examples.distancesampling.org/Distance-lines/linetransects.html). + +The effort, or transect length has been adjusted to recognise each transect is walked twice. + +```{r} +conversion.factor <- convert_units("meter", "kilometer", "hectare") +``` + +# Fitting a suitable detection function + +Rather than refitting models used in the line transect vignette, we move directly to the model selected by @Buckland2006. + +```{r} +wren.unif.cos <- ds(wren_lt, key="unif", adjustment="cos", + convert_units=conversion.factor) +``` + +Based upon experience in the field, the uniform cosine model was used for inference. + +# Estimation of precision + +Looking at the density estimates from the uniform cosine model + +```{r} +print(wren.unif.cos$dht$individuals$D) +``` + +The coefficient of variation (CV) is `r round(wren.unif.cos$dht$indiv$D$cv,3)`, and confidence interval bounds are (`r round(wren.unif.cos$dht$indiv$D$lcl,2)` - `r round(wren.unif.cos$dht$indiv$D$ucl,2)`) birds per hectare. The coefficient of variation is based upon a delta-method approximation of the uncertainty in both the parameters of the detection function and the variability in encounter rates between transects. + +$$[CV(\hat{D})]^2 = [CV(\frac{n}{L})]^2 + [CV(P_a)]^2$$ +where + +- $n$ is number of detections +- $L$ is total effort +- $P_a$ is probability of detection given a bird is within the covered region. + +These confidence interval bounds assume the sampling distribution of $\hat{D}$ is log-normal [@buckland2015distance, Section 6.2.1]. + +## Bootstrap estimates of precision + +Rather than relying upon the delta-method approximation that assumes independence between uncertainty in the detection function and variability in encounter rate, a bootstrap procedure can be employed. Resampling with replacement of the transects produces replicate samples with which a sampling distribution of $\hat{D}$ is approximated. From that sampling distribution, the percentile method is used to produce confidence interval bounds respecting the shape of the sampling distribution [@buckland2015distance, Section 6.3.1.2]. + +The function `bootdht_Nhat_summarize` is included in the `Distance` package. It is used to extract information from the object created by `bootdht`. I will modify it slightly so as to extract the density estimates rather than the abundance estimates. + +```{r} +bootdht_Dhat_summarize <- function(ests, fit) { + return(data.frame(D=ests$individuals$D$Estimate)) +} +``` + +After the summary function is defined, the bootstrap procedure can be performed. Arguments here are the name of the fitted object, the object containing the data, conversion factor and number of bootstrap replicates. Here, I use the `cores=` argument to use multiple cores to process the bootstraps in parallel. If you do not have this many cores in your computer, you will need to reduce/remove the argument. + +```{r, message=FALSE, results='hide'} +nboots <- 300 +est.boot <- bootdht(model=wren.unif.cos, flatfile=wren_lt, + summary_fun=bootdht_Dhat_summarize, + convert_units=conversion.factor, nboot=nboots, cores=10) +``` + +The object `est.boot` contains a data frame with two columns consisting of $\hat{D}$ as specified in `bootdht_Dhat_summarize`. This data frame can be processed to produce a histogram (Fig. \@ref(fig:single)) representing the sampling distribution of the estimated parameters as well as the percentile confidence interval bounds. + +```{r, single, fig.dim=c(7,5), fig.cap="Sampling distribution of $\\hat{D}$ approximated from bootstrap."} +alpha <- 0.05 +(bootci <- quantile(est.boot$D, probs = c(alpha/2, 1-alpha/2), na.rm=TRUE)) +hist(est.boot$D, nc=30, + main="Distribution of bootstrap estimates\nwithout model uncertainty", + xlab="Estimated density") +abline(v=bootci, lwd=2, lty=2) +``` + +# Incorporating model uncertainty in precision estimates + +The argument `model` in `bootdht` can be a single model as shown above, or it can consist of a list of models. In the later instance, all models in the list are fitted to each bootstrap replicate and model selection based on AIC is performed for each replicate. The consequence is that model uncertainty is incorporated into the resulting estimate of precision (Fig. \@ref(fig:triple)). + +```{r, message=FALSE, results='hide'} +wren.hn <- ds(wren_lt, key="hn", adjustment="cos", + convert_units=conversion.factor) +wren.hr.poly <- ds(wren_lt, key="hr", adjustment="poly", + convert_units=conversion.factor) +est.boot.uncert <- bootdht(model=list(wren.hn, wren.hr.poly, wren.unif.cos), + flatfile=wren_lt, + summary_fun=bootdht_Dhat_summarize, + convert_units=conversion.factor, nboot=nboots, cores=10) +``` + +```{r, triple, fig.dim=c(7,5), fig.cap="Sampling distribution of $\\hat{D}$ approximated from bootstrap including model uncertainty."} +(modselci <- quantile(est.boot.uncert$D, probs = c(alpha/2, 1-alpha/2), na.rm=TRUE)) +hist(est.boot.uncert$D, nc=30, + main="Distribution of bootstrap estimates\nincluding model uncertainty", + xlab="Estimated density") +abline(v=modselci, lwd=2, lty=2) +``` + +# Comments + +Recognise that producing bootstrap estimates of precision is computer-intensive. In this example we have created only `r nboots` bootstrap replicates in the interest of computation time. For inference you wish to draw, you will likely increase the number of bootstrap replicates to 999. + +For this data set, the bootstrap estimate of precision is greater than the delta-method approximation precision (based on confidence interval width). In addition, incorporating model uncertainty into the estimate of precision for density changes the precision estimate very little. The confidence interval width without incorporating model uncertainty is `r (a<-round(unname(bootci)[2]-unname(bootci)[1],3))` while the confidence interval including model uncertainty is `r (b<-round(unname(modselci)[2]-unname(modselci)[1],3))`. This represents a change of `r round((b-a)/a*100)`\% due to uncertainty regarding the best model for these data. + +# References \ No newline at end of file diff --git a/vignettes/web-only/variance/variance.bib b/vignettes/web-only/variance/variance.bib new file mode 100644 index 0000000..22e580d --- /dev/null +++ b/vignettes/web-only/variance/variance.bib @@ -0,0 +1,48 @@ + +@article{miller_distance_2019, + title = {Distance sampling in R}, + volume = {89}, + copyright = {Copyright (c) 2019 David L. Miller, Eric Rexstad, Len Thomas, Laura Marshall, Jeffrey L. Laake}, + issn = {1548-7660}, + language = {en}, + number = {1}, + journal = {Journal of Statistical Software}, + doi = {10.18637/jss.v089.i01}, + author = {Miller, David L. and Rexstad, Eric and Thomas, Len and Marshall, Laura and Laake, Jeffrey L.}, + month = may, + year = {2019}, + keywords = {distance sampling,abundance estimation,detection function,distance,Horvitz-Thompson,line transect,point transecs,R}, + pages = {1-28}, + file = {C\:\\Users\\erexs\\Zotero\\storage\\DRB57MH8\\v089i01.html} +} + +@article{Buckland2006, + title = {Point transect surveys for songbirds: robust methodologies}, + volume = {123}, + number = {2}, + journal = {The Auk}, + doi = {10.1642/0004-8038(2006)123[345:psfsrm]2.0.co;2}, + author = {Buckland, S. T.}, + year = {2006}, + pages = {345-345}, + owner = {Tiago}, + refid = {15765}, + subdatabase = {distance}, + timestamp = {2006.11.23} +} + +@misc{r_core_team_r_2019, + address = {{Vienna Austria}}, + title = {R: A Language and Environment for Statistical Computing}, + howpublished = {R Foundation for Statistical Computing}, + author = {{R Core Team}}, + year = {2019} +} + + +@Book{buckland2015distance, + title = {Distance sampling: methods and applications}, + publisher = {Springer}, + year = {2015}, + author = {Buckland, Steve and Rexstad, Eric and Marques, Tiago and Oedekoven, Cornelia}, +}