gplots/0000755000175100001440000000000012677021462011607 5ustar hornikusersgplots/TODO0000644000175100001440000000052212471456254012301 0ustar hornikusers plot.lm2 -------- - Upgrade to match current plot.lm code - For predictor vs resid, use boxplot when predictor is a factor - Rug plot or histogram for residuals/fitted values in both dimensions - Confidence region for normal distribution with equivalent number of points on QQ plot - display "bad" cutoff line for cook's distance plot gplots/inst/0000755000175100001440000000000012677006672012572 5ustar hornikusersgplots/inst/TODO0000644000175100001440000000052212471456254013256 0ustar hornikusers plot.lm2 -------- - Upgrade to match current plot.lm code - For predictor vs resid, use boxplot when predictor is a factor - Rug plot or histogram for residuals/fitted values in both dimensions - Confidence region for normal distribution with equivalent number of points on QQ plot - display "bad" cutoff line for cook's distance plot gplots/inst/NEWS0000644000175100001440000003713312676770503013300 0ustar hornikusersRelease 3.0.1 - 2016-03-30 -------------------------- Bug Fixes: - An error in plotLowess() prevented it from finding objects in the caller's environment. - The manual page for heatmap.2() stated the incorrect type for the 'layout' element of the return list. It is a named list, not a named numeric vector. Release 3.0.0 - 2016-03-28 --------------------------- New Features: - venn(): - now support matrices of indicator values. Previously indicator values were only supported when supplied as a dataframe. - The 'intersections' attribute returned from venn() has been improved so that goups are labeled using set names instead of indicators, and are ordered from simplest to most complex set intersection. - New angleAxis() function to create axis labels with rotated text. - heatmap.2(): - heatmap.2() can now be used to plot subsets of a previous heatmap. - Decrease the granularity of the carpet in heatmap.2()'s color key to avoid visual artifacts. - Returned object now includes 'layout' element that contains layout information. (Patch provided by Jenny Drnevich.) - lowess(): - New function plotLowess() to display a scatter plot with a superimposed lowess curve. - The lowess() functions now returns a list object of class 'lowess' - A new lowess method for plot() method for 'lowess' objects that generates a scatterplot of the raw data with a lowess curve superimposed. Bug Fixes: - Defunct message for boxplot.n() was recommending the wrong function. - heatmap.2(): - Remove debugging print() statement. - Now properly sets 'srtCol' default if missing and 'colCol' is specified. - Corrected a bug causing "Error in plot.new() : figure margins too large" to occur when 'key=FALSE'. (Reported and patch provided by Sveinung Gundersen.) - Corrected a bug causing an error when "Rowv=FALSE" or "Colv=FALSE". - Corrected message when "Rowv=FALSE" or "Colv=FALSE" and the the "dendrogram" argument requested the corresponding dendrogram. - venn(): - Fix warning message that was missing spaces between words. Other Changes: - The smartlegend(), plot.lm2(), and boxplot.n() functions are now defunct. Please use grephics::legend(), lmplot2() or boxplot2() respectively. Release 2.17.0 - 2015-05-01 --------------------------- New Features: - heatmap.2() has two new arguments, 'colRow' and 'colCol' to control the color of row and column text labels. See the man page for examples. - heatmap.2() has been modified to make it easier to extract and plot subclusters from a large heatmap. Simply pass the dendrogram of the subcluster together with the full data matrix and, optionally, the breaks of the full heatmap in order to obtain the same color scaling. (Suggestion and patch contributed by Ilia Kats.) - venn() now returns a list of the members of each set intersection in the attribute 'intersections'. This can be disabled using the argument 'intersection=FALSE' (Patch by Steffen Möller.) Bug Fixes: - In heatmap.2(), the color key now properly handles color breaks that are not equally spaced. (Issue reported by Tim Richter-Heitmann.) - In heatmap.2(), row/column traces in could be plotted on the wrong row/column. - plotCI() now properly respects the 'type=' argument. (Bug report and correction by Wiktor Żelazny.) - Remove stray browser() call from overplot() - In the balloonplot() examples, explicitly specify the 'neworder' argument to gplots:::reorder.factor to prevent errors. Other Changes: - smartlegend() is now deprecated because the relative positioning feature ('top', 'right') has been added to graphics::legend(). Calling smartlegend() will generate a warning. - boxplot.n() and plot.lm2() are defunct have been removed. Use of these functions will now generate an error. - Update out-of-date URLs in man pages. Release 2.16.0 - 2015-01-02 --------------------------- New Features: - plotmeans() has a new argument, 'text.n.label' which specifies the text used for labeling the number of elements in a group. Bug Fixes: - plotmeans() now respects (optional) graphical arguments captured in '...' when drawing the x axis. Release 2.15.0 - 2014-12-01 --------------------------- New features: - Convert bandplot() to S3-method dispatch and add method for class formula, so that 'bandplot( y ~ x, data=dataframe )' now works as expected. Other changes: - heatmap.2() now uses a local *non-byte-compiled* copy of plot.dengrogram, because the byte-compiled stats:::plot.dendrogram uses a recursive algorithm that generates a 'node stack overflow' error for deeply nested dendrograms and the node stack size cannot be changed at execution time. Instead, tne local non-byte-compiled gplots:::plot.dendrogram will trigger a recursion limit for such dengrograms. heatmap.2() will detect this error and recommend that the user increase the recursion limit (via, e.g. 'options("expressions"=20000)' ) and rerun. Release 2.14.2 - 2014-09-17 --------------------------- Bug Fixes: - heatmap.2() was not respecting key.title=NA when density.info="none". - Correct the man page for heatmap.2 to state that the default color for 'notecol' is cyan. - In heatmap.2(), modify default arguments to 'symbreaks' and 'symkey' to make the logic more evident by replacing min(...) with any(...). (The previous code executed properly, but relied on implicit coercion of logicals to numeric, obscuring the intent.) - Calling heatmap.2 with deeply nested dendrograms could trigger a 'node stack overflow' error. Now, this situation is deteceted, and a message is generated indicating how to increase the relevant recursion limit via options("expressions"=...). Release 2.14.1 - 2014-06-30 --------------------------- Bug Fixes: - Correct heatmap.2() bug in Colv dendrogram object dimension checking introduced in 2.14.0. (Reported by Yong Fuga Li.) Release 2.14.0 - 2014-06-18 --------------------------- Bug Fixes: - heatmap.2(): Fix typo in heatmap.2() that caused an error when 'Rowv=FALSE'. (Reported by Yuanhua Liu.) Enhancements: - heatmap.2(): Add new 'reorderfun' argument to allow the user to specify an alternative function to reorder rows/columns based on row/column dendrogram. (Suggested by Yuanhua Liu.) - heatmap.2(): Center margin labels. - heatmap.2(): Check size of user-provided Rowv and Colv dendrogram objects to ensure they match the dimensions of the data. - Add references to man page for hist2d() and ci2d() to the new r2d2 package which implements an improved algorithm for 2-dimensional emprical confidence regions. Release 2.13.0 - 2014-04-04 --------------------------- Bug Fixes: - heatmap.2 was not properly handling row trace reference line ('hline'). Patch submitted by Ilia Kats. Enhancements: - In heatmap.2, when the row or column trace is enabled, show the corresponding reference line in the color key. - In heatmap.2, a new 'extrafun' argument is provided that allows the user to specify a function to be called before the function returns. This allows the user to add additional plots to the page. Release 2.12.1 - 2013-10-14 --------------------------- API Changes: - boxplot.n() has been renamed to boxplot2() to avoid potential S3 method calling issues. - plot.lm2() has been rename to lmplot2() to avoid potential S3 method calling issues. Enhancements: - Add heatmap.2() parameters to control row and column label rotation ('srtRow', 'srtCol'), justification ('adjRow', 'adjCol'), and space from plot edge ('offsetRow', 'offsetCol'). Bug Fixes: - Fix error in in venn() when all groups contained the same number of TRUE cases. - Correct error in overplot() when that occured when a group-category contained no finite values. Other Changes: - Changes to overplot() to avoid warnings from upcoming enhancements to R CMD check. - Move several packages from Depends to Imports or Suggests. - Packages caTools and KernSmooth now have namespaces, so import needed functions in NAMESPACE. - Mark one example in manual page for ci2d 'dontrun' to avoid timing warning in R CMD check. Release 2.11.3 - 2013-06-27 --------------------------- Enhancements: - Modify sinkplot() to use a local environment rather than the global environment, to conform to CRAN policies. Bug Fixes: - Fixed typo/spelling error in plotmeans() man page. Release 2.11.2 - 2013-03-24 --------------------------- Enhancements: - Add ci.width argument to barplot2() to allow varying the length of the 't' at the end of confidence interval bars. Bug Fixes: - Fix error in heatmap.2 when colsep argument had length 1. Updates: - Update manual page for lowess.default() to match changed argument list for lowess() in R 3.0.0 Release 2.11.1 - 2012-12-14 --------------------------- Bug Fixes: - Replace corrupted BalloonPlot.pdf in inst/doc. Release 2.11.0 - 2012-06-08 --------------------------- New Features: - Objects returned by hist2d() have been changed: 1) $x and $y now contain the n midpoints of the bins in each direction 2) $x.breaks, $y.breaks now contain the n+1 limits of the bins in each direction. - Add lwd argument to plotmeans(). Bug Fixes: - Correct error in handling binning in hist2d(): (N+1)x(N+1) bins were being created instead of NxN bins, and the highest row/column in each direction was being omitted from the results and plot. - Changes to fix R CMD check warnings Release 2.10.1 - 2011-09-02 --------------------------- New features: - Make results of hist2d() and ci2d() into objects, and add print() methods to display them. Release 2.10.0 - 2011-08-26 --------------------------- New Features: - New ci2d() function to create 2-dimensional empirical confidence intervals utilizing KernSmooth:bkde2D and gplots::hist2d(). See ?ci2d for details. - Add 'alpha' argument to rich.colors() to control transparency. Improvements: - Accellerate hist2d by replacing for() loop with tapply(), and allow user to specify summary function applied (per suggestion by Peter Hagedorn). Bug Fixes: - Correct error in heatmap.2() that arises when data includes NA values (identified by Melissa Key). Release 2.8.0 - 2010-06-10 -------------------------- Improvements: - venn() now returns an object of class venn() and a plot method for this class is provided. - Manual page for venn has been improved, based on contributions by Steffen Moeller Release 2.7.5 - ?? -------------------------- Improvements: - Performance of 'hist2d' improved thanks to a suggestion from Joerg van den Hoff. Release 2.7.4 - 2009-11-12 -------------------------- Bug Fixes: - Correct bug reported by Alan Yong: plotmeans() failed when bars=FALSE. Release 2.7.3 - 2009-10-22 -------------------------- Bug Fixes: - Correct bug reported by Rudolf Talens: heatmap.2() incorrectly transposed the displayed matrix when the option symm=TRUE. Release 2.7.2 - 2009-05-08 -------------------------- Bug Fixes: - Correct bug reported by Ken Lo: cox2hex() had blue and green components swapped. Release 2.7.1 - 2009-05-08 -------------------------- New Features: - Enhancements to heatmap.2() - New arguments 'lmat', 'lhei', and 'lwid' that allow controlling component plot layout. Users can now resize and rearrange plot components. - heatmap.2() will now compute color breakpoints that are symmetric about 0 when the new 'symbreak' parameter is TRUE. This parameter, as well as the symkey parameter now default to TRUE whenever negative values of x are present, and to FALSE othewise. - the heatmap.2() return value now includes additional useful information, including: call, rowMeans, rowSDs, colMeans, colSDs, carpet (reordered and scaled 'x' values), rowDendrogram, colDendrogram, breaks, col, vline, hline, and colorTable. Of these, the most useful are breaks, col, and colorTable. The latter is a three-column data frame providing the lower and upper bound and color for each bin. See the manual page for complete details and examples. - New function venn(), contributed by Steffen Moeller (Thanks Steffen!) to generate Venn diagrams for up to 5 sets. See ?venn for details. - Performance of bandplot() has been dramatically improved, in part by using runsd() and runmean() from the caTools package. As a consequence, gplots now depends on the caTools package. - Improved performance of gplots::plot.lm for large lm objects by using the new bandplot() and by using fitted() instead of predict() to obtain y-hat. - Add 'scale.range' argument to balloonplot(), option to scale balloons so [min,max]->[0,1] ('relative') or [0,max] -> [0,1] ('absolute'). Bug Fixes: - balloonplot() now properly handles dimension labels provided by 'xlab' and 'ylab' - plotCI now properly handles 'NULL' and 'NA' values for ui, li, uiw, and liw. - Corrections of minor typos in man pages - Update Greg's email address to 'greg@random-technologies-llc.com' Release 2.6.0 - 2008-04-07 -------------------------- New Features: - heatmap() now allows control of the location of individual plot components (e.g. color key) Bug Fixes: - Fix bug in handling rowsep, per suggestion by Steven Paugh - Fix examples for overplot() - Two letter clarification of help text for heatmap.2() - Restore plot layout settings to default state at end of ooplot() example - Various typo fixes Release 2.5.0 - 2007-11-02 -------------------------- New Features: - textplot() now converts tab characters to spaces before processing to avoid problems with computing height and width of text that includes tabs. - Add col2hex() function to convert color names to rgb hex codes Bug Fixes: - Correct balloonplot.default to properly show specified x and y axis labels when explicitly provided - R/balloonplot.R: Correct error in balloonplot when z contains NA values. - Fix typos and code/doc mismatches identified by the latest R CMD check Other: - Clarify GPL version Release 2.4.0 - 2007-02-08 -------------------------- New Features: - Add parameters to bandplot() to control line width and type. - Add paramaeters to textplot.matrix() to allow specification of the color of the matrix data, rows, and column Bug Fixes: Other: Release 2.3.2 - 2006-11-14 -------------------------- - heatmap.2.Rd: Fix example that was broken by changes in 2.3.0. Release 2.3.1 ------------- - Changed maintainer back to Greg Warnes - Updated Greg's email address - heatmap.2.R: Fixed a bug which displayed warnings when Rowv and Colv were specified as dendrograms Release 2.3.0 ------------- - heatmap.2.R, heatmap.2.Rd: Updated the code and man page to make sure the Rowv and Colv values are properly handled - Added the tests directory Release 2.2.0 ------------- - plotmeans.R: Fixed bug in plotmeans - based on Stefano Calza's suggestion (the function didn't account for factors unused levels, returning an error.) - exported plot.lm to NAMESPACE, Remove .Alias calls in plot.lm.R since .Alias is defunct. - barplot2.R: Changed the default grey colors to heat colors, if height is matrix - Updated Greg's email address - balloonplot.R: Recent changes to align row totals with the overall total broke how the marginal cumulative fractions were displayed. Added example using Titanic data that exercises the multi-factor display. Added -.tex, .pdf files and figuers, and RNEWS article in inst/doc - colorpanel.R: colorpanel now allows only 2 colors to be specified if no 'middle' color is desired. Release 2.0.8 ------------- - Added DESCRIPTION and removed DESCRIPTION.in - Updated barplot2 - Updated heatmap.2 gplots/inst/ChangeLog0000644000175100001440000013231112676760017014344 0ustar hornikusers2016-03-30 warnes * [r2122] R/plot.lowess.R: plotLowess() wasn't finding objects in the caller's environment. 2016-03-28 warnes * [r2121] DESCRIPTION, inst/NEWS: Update gplots version to 3.0.0. * [r2120] man/heatmap.2.Rd: The 'layout' element of the list returned from heatmap.2 is a named list, not a named vector. * [r2119] man/gplots-deprecated.Rd: Used wrong comment character. * [r2118] man/gplots-deprecated.Rd: Comment out arguments section to avoid R CMD check warning. 2016-03-25 warnes * [r2112] man/heatmap.2.Rd: Update URL for RColorBrewer * [r2111] DESCRIPTION: Fix typos and quote uncommon words to make R CMD check happy * [r2110] DESCRIPTION, inst/ChangeLog, inst/NEWS: Update files for gplots 2.18.0 * [r2109] NAMESPACE: Add imports recommended by R CMD check on WinBuilder * [r2108] man/heatmap.2.Rd: Add trailing slash to make R CMD check's URL testing happy. * [r2107] tests/heatmap2Test.Rout.save: Update test output to match corrected messages * [r2106] R/plot.venn.R: Warning message didn't have spaces between words. Minor code reformatting. * [r2105] R/lowess.R: Remove obsolete function to add '...' to argument list for stats::lowess(). * [r2104] man/lowess.Rd, man/venn.Rd: Fix errors identified by R CMD check * [r2103] R/heatmap.2.R: Fix error when Rowv=FALSE or Colv=FALSE * [r2102] man/gplots-defunct.Rd, man/gplots-deprecated.Rd: Fix documenation issues identified by 'R CMD check' * [r2101] man/venn.Rd: Correct discrepencies in man page * [r2100] man/venn.Rd: Correct discrepencies in man page * [r2099] man/lowess.Rd: Correct differences between calls on man page and in code * [r2098] R/lmplot2.R: Fix name of replacement functon in defuct message generated by plot.lm2 * [r2097] man/lowess.Rd: Improve lowess() man page * [r2096] NAMESPACE: Add plotLowess() and plot.lowess() to the NAMESPACE * [r2095] R/plot.lowess.R: Ensure lowess plot methods (invisibly) return the lowess object. * [r2094] man/lowess.Rd: Update man page for lowess to reflect new lowess method for plot(). * [r2093] R/plot.lowess.R: Ensure extra arguments are properly passed to the plot call. * [r2092] R/heatmap.2.R: Corrected a bug causing "Error in plot.new() : figure margins too large" to occur when 'key=FALSE'. (Reported and patch provided by Sveinung Gundersen.) 2016-03-24 warnes * [r2091] R/lowess.R, R/plot.lowess.R: Rename plot.lowess to plotLowess to avoid confusions with plot() method for class 'lowess', create a plot() method for class 'lowess' and modify the lowess.default() and lowess.formula() to add the 'lowess' class to the returned object, along with a 'call' list element. * [r2090] R/venn.R, R/vennMembers.R, man/venn.Rd: The 'intersections' attribute returned from venn() has been improved to use set names instead of indicators, and is ordered from simplest to most complex set interactions. * [r2089] R/smartlegend.R, man/gplots-defunct.Rd, man/gplots-deprecated.Rd: The smartlegend() function has been made defunct and is no longer available. * [r2088] R/lmplot2.R: Indentation changes * [r2087] man/heatmap.2.Rd: Update heatmap.2() man page to reflect addition of to the returned object. * [r2086] R/lowess.R: Remove observations with missing values when lowess is called using the formula interface. * [r2085] R/heatmap.2.R: Add layout infromation to object returned from heatmap.2() (patch provided by Jenny Drnevich). * [r2084] DESCRIPTION: Correct spelling 2016-03-08 warnes * [r2083] R/plot.lowess.R: Add function to plot points and lowess using formula interface. * [r2082] R/lowess.R: Remove old code for S-Plus and modernize formula handling code. * [r2081] R/heatmap.2.R: Set srtCol default if missing and colCol is set 2016-02-26 warnes * [r2080] R/venn.R: venn() now support matrix arguments. * [r2079] R/angleAxis.R, man/angleAxis.Rd: New angleAxis() function to create axis labels with rotated text. * [r2078] R/heatmap.2.R: - heatmap.2() can now be used to plot subsets of a previous heatmap. - Remove stray 'browser()' debuggint statement from heatmap.2() code. - Decrease the granularity of the carpet in heatmap.2()'s color key to avoid visual artifacts. 2015-11-23 warnes * [r2070] R/heatmap.2.R: Remove debugging print() statement. 2015-07-22 warnes * [r2062] DESCRIPTION, R/heatmap.2.R, R/layout_set.R: Renamed 'test' directory to 'tests', commented out tests for lme4 which has a changed API 2015-06-02 warnes * [r2052] R/boxplot2.R: Defunct message for boxplot.n was recommending the wrong function 2015-05-02 warnes * [r2018] Rename 'trunk' to 'pkg' for compatibility with R-forge 2015-05-01 warnes * [r2014] Again... * [r2013] Update ChangeLog (again) * [r2012] Summary: Correct man page name * [r2011] Summary: Forgot to add \alias for smartlegend. * [r2010] Remove leftover alias * [r2009] Commit ChangeLog * [r2008] Update NEWS again. * [r2007] Mark boxplot.n and() plot.lm2() as defunct. * [r2006] Make ballonplot.n() and plot.lm2() 'defunct'. * [r2005] Update NEWS and ChangeLog again. * [r2004] Summary: Punctuation. * [r2003] Correct URLs in man pages. * [r2002] Correct URLs in man pages. * [r2001] Update NEWS again. * [r2000] Improve package description. * [r1999] Mark 'smartlegend' as deprecated * [r1998] Summary: Mark smartlegend() as deprecated. * [r1997] Summary: venn example used 'F' instead of 'FALSE'. * [r1996] Update DESCRIPTION, NEWS, and ChangeLog again for gplots 2.17.0. * [r1995] - heatmap.2: row traces could be plotted in the wrong order. * [r1994] - heatmap.2: column traces could be plotted in the wrong order. - heatmap.2: add support for plotting sub-clusters of the full row and column dendrograms 2015-04-23 warnes * [r1955] Update NEWS and ChangeLog * [r1954] In heatmap.2(), the color key now properly handles color breaks that are not equally spaced. (Issue reported by Tim Richter-Heitmann.) * [r1948] - plotCI() was not properly respecting the 'type=' argument. This has been corrected. * [r1947] - Remove stray browser() call from overplot() * [r1943] Explicitly specify argument to gplots:::reorder.factor to prevent error. * [r1942] - The returned object from venn() now includes a 'interesection' attribution containing a list of which items are in each set intersection. This can be turned off by settting 'intersection=FALSE'. * [r1941] Patch submitted by Ilia Kats: - easily extract and plot subclusters from a big heatmap using the same colorkey, by passing a dendgrogram of the subcluster together with the full data matrix and, optionally, the breaks of the full heatmap in order to obtain the same color scaling. This is useful if one wants to plot several subclusters as different panels in a paper, but maintain consistent color coding. - Improves the behavior of the color key axis labels, as they now honor par("cex") and par("cex.lab"). * [r1940] In heatmap.2() split calls to distfun() and hclustfun() into separate steps to make debugging easier 2015-04-22 warnes * [r1931] Update DESCRIPTION, ChangeLog, and NEWS for gplots 2.17.0 * [r1930] heatmap.2: add new 'colRow' and 'colCol' arguments to control the color of row and column text labels 2015-04-06 warnes * [r1916] Add ChangeLog files to repository 2015-01-02 warnes * [r1913] Update for gplots release 2.16.0. * [r1912] Change default group count lable back to 'n='. * [r1911] - plotmeans: Pass optional graphical arguments captured in '...' axis function used to draw the x axis. - plotmeans: Add an new argument 'text.n.label' to specify the text used for labelingthe number of elements in a group. * [r1910] - Remove S-Plus-specific code - Simplify model frame code 2014-12-03 warnes * [r1909] Update stored test output to account for new startup message from KernSmooth package * [r1908] Fix package title capitalization. 2014-12-02 warnes * [r1907] Add descrioption of node stack overflow issue and work-around. * [r1906] Move '...' argument to bandplot.formula to match man page. * [r1905] plot.dendrogram isn't exported by gplots, so it must be referenced using the ':::' notation. * [r1904] Man page fixes. * [r1903] Add exports of new bandplot methods to NAMESPACE file. * [r1902] Code cleanup. * [r1901] Simplify model.frame code for bandplot.formula. 2014-12-01 warnes * [r1900] Update for 2.15.0 * [r1899] Convert bandplot to S3-method dispatch and add method for class formula. * [r1898] Improve whitespace 2014-09-17 warnes * [r1895] Minor reformatting. * [r1894] Explicitly reset namespace for dendrogram functions copied from stats. * [r1893] Update DESCRIPTION and NEWS for gplots 2.14.2 * [r1892] To work around recursion limit issues triggered by deeply nested dendrograms, (1) create a local *intepreted* copy of stats:::plotNode(), (2) detect recursion limit error message within heatmap.2() and generate a more user-friendly message. * [r1891] Add test case for exceeding recursion limits when plotting deeply nested dendrograms * [r1890] heatmap.2 was not properly handling integer vectors for Rowv and Colv. * [r1889] key.title=NA was not being honored when density.info=NA. 2014-09-16 warnes * [r1888] Add plotNode code to allow modificaiton of algorithm from recursive to iterative for the purpose of avoiding node stack overflow. * [r1887] - Correct statement of default color for 'notecol' argumemt to 'heatmap.2'. - Modify default arguments to 'symbreaks' and 'symkey' to make the logic more evident by replacing min() with any(). (The previous code executed properly, but relied on implicit coercion of logicals to numeric, obscuring the intent.) 2014-06-30 warnes * [r1823] Fix typo in dendrogram size checking code. 2014-06-19 warnes * [r1822] Fix typo 'ColInd' --> 'colInd'. * [r1821] Update for gplots 2.14.0 2014-06-17 warnes * [r1820] - Document new 'key.title', 'key.xlab', 'key.ylab', 'key.xtickfun', 'key.ytickfun', 'key.par' arguments to heatmap.2 (belated commit). - Document new 'reorderfun' argument to heatmap.2. * [r1819] Allow user to specify function used to reorder based on the dendogram via a new 'reorderfun' argument. Suggested by Yuanhua Liu. * [r1818] Fix typo in heatmap.2() reported by Yuanhua Liu. 2014-06-05 warnes * [r1817] Check size of Rowv and Colv dendogram objects to ensure they matches data. 2014-04-17 warnes * [r1812] Add see also to r2d2::freq2d. * [r1811] Add reference to r2d2::conf2d. 2014-04-09 warnes * [r1802] Add padj=0.5 to better align margin labels. 2014-04-05 warnes * [r1781] Update NEWS * [r1780] Add 'extrafun' argument to heatmap.2 to allow the user to perform additional customization by providing a function to be called before heatmap.2 exits. 2014-04-04 warnes * [r1779] Update for gplots 2.13.0 * [r1778] Fix handling of row trace (hline). Bug report and patch provided by Ilia Kats. 2013-10-21 warnes * [r1744] Handle 'ask' argument in lmplot2 function proper, rather than in (depreciated) plot.lm2 wrapper. * [r1743] Correct release number * [r1742] Handle 'ask' argument in lmplot2 function proper, rather than in (depreciated) plot.lm2 wrapper. * [r1741] Fix typo 2013-10-15 warnes * [r1740] Add boxplot2 and lmplot2 to NAMESPACE * [r1739] Update for gplots release 2.12.1 * [r1738] Rename boxplot.n to boxplt2 and plot.lm2 to lmplot2 * [r1737] Make lmplot2 manual page from plot.lm.2 manual page. * [r1736] Make boxplot2 manual page from boxplot.n manual page. * [r1735] Create deprecated man page from boxplot.n man page 2013-10-12 warnes * [r1734] Update NEWS with latest changes * [r1733] Mark one example dontrun to avoid --as-cran warning. 2013-10-11 warnes * [r1732] Allow standard S3 method handling to locate the correct function. * [r1731] Fix error when a subgroup contains no finite values * [r1730] Update test output * [r1729] Move several packages from Depends to Imports, Suggests * [r1728] Use gdata::nobs in example * [r1727] caTools and KernSmooth now have namespaces, so import from them. * [r1726] Update files for gplots 2.12.0 * [r1725] Update files for gplots 2.12.0 * [r1724] Add parameters to control row and column label positioning, rotation, justification, and offset. * [r1723] Fix bug in getVennCounts.data.frame when number of TRUE cases in each variable are equal. 2013-06-28 warnes * [r1680] Update PDF file, including new email addresses 2013-06-27 warnes * [r1679] Update for gplots 2.11.3 * [r1678] Update for release 2.11.3 * [r1677] Update with tests for only 1 row/column separator * [r1676] Fix typo * [r1675] Add test for one row/column separator * [r1674] Add more in-line comments * [r1673] Modify sinkplot to use a local environement to store its information instead of the global environment. 2013-03-24 warnes * [r1647] Update news for release 2.11.2 * [r1646] Add ci.width argument to barplot2() to allow varying the length of the 't' at the end of confidence interval bars. * [r1642] Update for release 2.11.2 * [r1641] Update manual page for lowess.default() to match changed argument list for lowess() in R 3.0.0 2012-12-14 warnes * [r1631] Fix typo: warn() instead of warning(). * [r1630] Fix syntax of VignetteIndexEntry in venn.Rnw. * [r1629] Add generated vignette pdf. * [r1628] Add required VignetteIndexEntry metadata to venn vignette code. * [r1627] Update DESCRIPTION and NEWS for release 2.11.1. * [r1626] Improve venn() to work with PDF and Sweave/pdflatex. Provide a vignette for venn(). * [r1625] Fix error in processing the colsep argument to heatmap.2. * [r1624] Clarify that plotmeans is intended for a *continuous* outcome based on a *factor* grouping level. * [r1623] Replace corrupted BalloonPlot.pdf file and remove svn properties that were causing it to be corrupted. 2012-06-08 warnes * [r1558] Update NEWS for 2.11.0 release. * [r1557] Fix R CMD check warnings. * [r1556] Move incorrectly placed closing brace. 2012-06-07 warnes * [r1555] Object returned by hist2d() has been changed: - $x and $y now contain the n midpoints of the bins in each direction - $x.breaks, $y.breaks now contain the n+1 limits of the bins in each direction The function print.hist2d() has been updated appropriately. * [r1554] Correct error in handling binning: (N+1)x(N+1) bins were being created instead of NxN bins, and the highest row/column in each direction was being omitted from the results and plot. * [r1553] Add default value for lwd argument to plotmeans() 2012-05-31 warnes * [r1533] Properly mark up S3 method. 2011-12-09 warnes * [r1519] Add 'lwd' (linewidth) to arguments handled by plotmeans. 2011-09-02 warnes * [r1505] Update NEWS for release 2.10.1. * [r1504] Increment version counter. * [r1503] Add necessary alias statment to man files for for 'hist2d' and 'ci2d' print methods. * [r1502] Fix naming error * [r1501] Provide print() methods for 'hist2d' and 'ci2d' objects. * [r1498] Correct dependence on R >= 2.10 2011-09-01 warnes * [r1491] - Correct issues in ci2d() man page. * [r1490] - Comment out import from KernSmooth in NAMESPACES, since KernSmooth doesn't provide a namespace. - Update a test output. * [r1489] - Update NEWS file and correct version number * [r1488] - Depend on KernSmooth package. Increment version number. * [r1487] - Depend on KernSmooth package and import 'bkdeD2' and 'dpik'. * [r1486] Improvements to ci2d(): - Add option to utilize KernDensity::bkde2D to estimate the 2-d density (now the default). - Add option to display points for original data on generated plots - Name elements of returned contour list according to the significance level to make it easier to select desired contours. - Improve handling of x and y labels * [r1485] Remove log tag and comments from top of the file. 2011-08-26 warnes * [r1478] Update NEWS for 2.10.0 release * [r1477] Add dependency on R>= 2.10 to handle compressed Rda data file. * [r1476] Compress rtPCR example data set to make distributed package smaller. * [r1475] Remove '1.0' confidence line from ci2d(..,show="contour"). 2011-08-25 warnes * [r1474] - Add 'ci2d()' to compute 2-dimensional emipirical confidence interval. - Fix parse error in help page for 'rich.colors()'. 2011-08-16 warnes * [r1473] Update DESCRIPTION file for 2.8.1. * [r1472] Add 'alpha' argument to rich.colors() to control transparency. * [r1471] Accellerate hist2d by replacing for() loop with tapply(), and allow user to specify summary function applied, per suggestion by Peter Hagedorn (PHA -at- santaris -dot- com). 2011-05-02 arnima * [r1470] Added argument 'alpha' and removed argument 'rgb' in rich.colors() 2010-12-13 warnes * [r1463] Correct error that arises when data includes NA values, identified by Melissa Key 2010-06-11 warnes * [r1446] Fix errors detected by R CMD check * [r1445] Fix errors detected by R CMD check * [r1444] Use 'TRUE' instead of 'T' for true in venn man page * [r1443] Update for gplots 2.8.0 * [r1442] Moved baseOf() into a separate file * [r1441] Update Greg's email address * [r1440] - venn() now returns an object of class venn() and a plot method for this class is provided. - Manual page for venn has been improved, based on contributions by Steffen Moeller 2010-02-17 warnes * [r1420] Improve performance of hist2d thanks to suggestion by Joerg van den Hoff. 2010-01-22 arnima * [r1372] Renamed files rich.color.* to rich.colors.* and renamed rich.colors args 2009-11-16 arnima * [r1367] Minor reformatting only. 2009-11-12 warnes * [r1365] Correct bug reported by Alan Yong: plotmeans() crashed when 'bars=FALSE'. 2009-10-22 warnes * [r1364] Fixed typo in bug fix. * [r1363] Update NEWS and DESCRIPTION for gplots 2.7.3 * [r1362] Fix transposed display of data (but not labels) in heatmap.2 when symm=TRUE 2009-10-12 warnes * [r1361] Update version number to 2.7.2, 2.7.1 was already up but apparently DESCRIPTION wasn't commited with change. 2009-10-10 warnes * [r1360] Various minor changes to remove new R CMD CHECK warnings. * [r1359] Update DESCRIPTION and NEWS file for 2.7.1 * [r1358] Fix bug reported by Ken Lo: col2hex had blue and green components swapped. 2009-05-08 warnes * [r1324] Add test of using a dendrogram created by heatmap() with heatmap.2() * [r1323] heatmap.2: handle NA for RowV or ColV the same way as NULL * [r1322] Fix typo * [r1321] Update NEWS for release 2.7.0 * [r1320] We don't want the Changelog in svn, since it is autogenerated from svn logs! * [r1319] Update Greg's email address to 'greg@random-technologies-llc.com' * [r1318] plotCI now properly handles 'NULL' and 'NA' values for ui, li, uiw, and liw. * [r1317] heatmap.2: Add option to create breakpoints symmetric around 0, provide additional information in the return value * [r1316] Fix Rd syntax error 2009-04-22 warnes * [r1315] VADeaths data set has move to dataset package 2008-08-14 warnes * [r1302] balloonpot() was incorrectly displaying warning about z values below 0 when scale.method="relative". Fixed. 2008-08-07 warnes * [r1301] Update DESCRIPTION NAMESPACE and NEWS for 2.7.0 release 2008-06-16 warnes * [r1296] Add TODO list to gplots 2008-05-20 warnes * [r1274] Update man page to match recent changes to plot.lm2() * [r1273] More work on documentation for venn() * [r1272] Fix code/doc mismatch due to recent changes to bandplot() * [r1271] Add Venn Diagram plot submitted by Steffen Moeller 2008-05-07 warnes * [r1264] Improve performance of bandplot by calculating running standard deviation using caTools::runsd() instead of (ver slow) window() call. In addtion, the standard deviations are now only calculated once, rather than once for each band. * [r1263] Improve performance of plot.lm for large lm objects by using fitted() instead of predict() to get y-hat 2008-05-05 warnes * [r1262] Use caTools's runsd in bandplot for a dramatic speedup for large data * [r1261] Add import of gtools::reorder.factor for ballonplot man page * [r1260] balloonplot: Add option to scale balloons so [min,max]->[0,1] (relative) or so [0,max] <- [0,1] (absolute) 2008-04-07 warnes * [r1254] Fix typo in barplot2() man page * [r1253] Updates for gplots 2.6.0 * [r1252] Add ability to control location of individual heatmap.2 components 2008-03-27 warnes * [r1251] Fix bug in handling rowsep, per suggestion by Steven Paugh 2008-01-04 warnes * [r1238] Fix examples for overplot() 2008-01-02 warnes * [r1237] Update Marc's email address 2007-12-20 warnes * [r1235] Two letter clarification of help text for heatmap.2() * [r1234] Restore plot layout at end of ooplot() example 2007-11-06 warnes * [r1222] Remove extraneous closing brace in the hist2d documentation file 2007-11-05 warnes * [r1221] Fix typo in NEWS: col2hex() is the new function, not col2rgb() which is part of grDevices 2007-11-02 warnes * [r1219] Updates for gplots 2.5.0 * [r1218] Update saved test output due to changes in how R reports warnings * [r1217] Create soft links of gmodels/ChangeLog -> gmodels/inst/ChangeLog, and gmodels/NEWS -> gmodels/inst/NEWS for my convenience * [r1216] Move actual ChangeLog and NEWS files to gmodels/inst so they will be copied into the installed R package area * [r1215] Fix code/doc mismatches * [r1214] Update plot.lm2 to match changes made to bandplot 2007-11-01 warnes * [r1213] in textplot(), convert tab characters to spaces before processing to avoid problems with computing height and width of text including tabs when using pdf() * [r1212] Minor reformatting of overplot code and docs 2007-10-22 warnes * [r1196] Clarify GPL version 2007-08-14 warnes * [r1141] Correct error in balloonplot when z contains NA values. * [r1140] Augment balloonplot() with control of character size and color for text and label items * [r1139] Correct balloonplot.default to properly show specified x and y axis labels when explicitly provided 2007-03-09 ggorjan * [r1073] use of \method in Rd markup - issues a warning with _R_CHECK_RD_STYLE_=TRUE env. variable with R 2.5.0 2007-02-08 warnes * [r1052] Bump version number * [r1051] Update documentation for textplot() * [r1050] Add col2rgb() function to convert color names to rgb hex codes * [r1049] Add paramaeters 'col.data', 'col.rows', and 'col.columns' to textplot.matrix to allow specification of the color of the matrix data, rows, and columns. * [r1048] Add parameters to control line width and line type. 2006-11-14 ggorjan * [r1012] Removed executable property 2006-11-14 warnes * [r1010] Update output file to match (trivial) changes in the test code. * [r1008] Update ChangeLog and NEWS files for release 2.3.2. * [r1007] Update version number * [r1006] Update version number and maintainer * [r1005] Correct problem with labeled correlation matrix example. Thanks to Jean Vidal for reporting the error.. 2006-08-02 warnes * [r977] Update my email address 2006-06-26 nj7w * [r967] Fixed a bug which displayed warnings when Rowv and Colv were specified as dendrograms 2006-03-10 warnes * [r937] Remove code that added a local path 2006-03-09 nj7w * [r935] Added the correct library path where gplots is installed locally and corresponding .save file * [r934] Updated the tests file * [r933] Removed the condition Colv != Rowv as it has already been taken care of * [r932] Deleted rtPCR.rda from the main directory * [r931] Added ChangeLog 2006-03-07 nj7w * [r919] Updated ChangeLog and NEWS * [r918] Added the tests and fixed corrupted files * [r917] Replaced the corrupted rtPCR.rda file in data directory * [r916] Removed the corrputed tests directory * [r915] Replaced the corrupted rtPCR.rda file in data directory 2006-03-03 nj7w * [r914] Updated the code and man page to make sure the Rowv and Colv values are properly handled 2006-03-02 warnes * [r908] Adjust row total placement to adjust for width of the totals * [r907] Row totals in ballonplot were in reverse order. Fixed. 2006-02-23 nj7w * [r899] Add ability to scale the color key using the new 'keysize' argument. * [r898] Add tests for heatmap.2 * [r897] Move heatmap and ballonplot paper source materials to their respective cvs modules * [r896] Moved balloonplot paper materials to BallonPlotPaper cvs module * [r891] Remove heatmap paper files and move them to the HeatmapPaper cvs module. * [r888] Added figures for heatmap2 paper * [r887] Added the .Rda files for the heatmap2 paper * [r886] Added the source - (tex file) of the heatmap paper * [r885] Added the code for the figures of heatmap paper 2006-02-21 nj7w * [r884] Minor updates to heatmap.2 - fixed Rowv, Colv and dendrogram behaviour. Now Rowv=NULL or FALSE both imply no dendrogram computation. 2006-01-12 warnes * [r844] more updates * [r843] Add Biometrica bibliography style file * [r842] A little more. * [r841] Updates to respond to referee. 2006-01-12 nj7w * [r840] Added references 2005-12-13 nj7w * [r811] Fixed Nitin's company name * [r809] Updated NEWS and removed ChangeLog 2005-12-12 nj7w * [r802] Fixed bug in plotmeans - based on Stefano Calza's suggestion 2005-12-07 nj7w * [r787] Updated version number * [r786] Added plot.lm * [r785] Changed the default grey colors to heat colors, if height is matrix * [r784] Changed the default greay colors to heat colors, if height is matrix 2005-12-06 nj7w * [r783] Fixed minor error in documentation of barplot2 2005-12-02 warnes * [r777] Remove .Alias calls, since .Alias is defunct. 2005-12-01 nj7w * [r776] Updated Greg's email address 2005-11-23 nj7w * [r764] Updated Figure 2 colors 2005-11-18 warnes * [r743] Latest version of the pdf files * [r742] Nitin works for the Cambrige Group, not Pfizer. * [r741] Minor text rewording. * [r740] More edits. * [r739] Recent changes to align row totals with the overall total broke how the marginal cumulative fractions were displayed. This patch fixes the problem. * [r737] - Update documentation for balloonplot to match the latest code. - Correct spelling of 'show.zeroes' to 'show.zeros' * [r736] More changes: colorpanel now allows only 2 colors to be specified if no 'middle' color is desired. 2005-11-17 warnes * [r735] Allow user to control removal of duplicate entries in balloonplot. * [r734] Extend colorpanel to handle just two-colors in addition to three. 2005-11-09 nj7w * [r733] Updated the pdf file * [r732] Updated the changes * [r731] Modified figure 4 * [r730] Updated code * [r729] Modified figure 3 * [r728] Modified figure 2 * [r727] Modified figure 1 2005-11-08 nj7w * [r726] Updated Greg's email 2005-11-07 nj7w * [r725] Minor modifications to fit the code properly on pdf 2005-11-07 warnes * [r724] Add R code that generates plots * [r723] Add figures to CVS * [r722] Text changes 2005-11-04 warnes * [r721] Fix some alignment issues. * [r720] Remove Table.pdf since it is no longer needed * [r719] Nitin's Changes * [r718] Add figure plots * [r717] Fix paths 2005-10-20 nj7w * [r705] added the eps version of figures * [r704] Updated BallonPlot.pdf * [r703] Removed Old Figure * [r702] Added the new figure - for total popluation - Balloonplot * [r701] Modified the BallonPlot article * [r700] Added references 2005-10-19 arnima * [r697] The last example now displays the correct heat.colors. Default 'palette' argument is now a single string, not a vector. * [r696] Default 'palette' argument is now a single string, not a vector. 2005-10-14 warnes * [r694] Formatting fixes: - Handle multiple row or column category variables - Separate rows/columns of category labels by lines - Fix handling of 'cumsum' plots on row/column labels - Improve display of row/column sums 2005-10-13 warnes * [r693] Add example using Titanic data that exercises the multi-factor display. 2005-10-11 warnes * [r692] Initial changes to allow multiple x and y factor variables. Yet to be done: 1) remove extra 'boxes'. 2) omit duplicated values 2005-10-04 warnes * [r691] more minor fixes * [r690] fix spacing * [r689] Inlcude Rnews.sty * [r688] Some textual edits. 2005-10-03 nj7w * [r687] Added figures for the R-News Article 2005-09-29 nj7w * [r680] Updated the documentation - added the name of the person who asked the question * [r679] Added R-news article 2005-09-12 nj7w * [r671] Updated Greg's email * [r670] Updated version of balloonplot - by Romain Francois 2005-09-09 nj7w * [r669] Updated the version and ChangeLog * [r668] Changes in ballon plot based on Romain Francois (francoisromain@free.fr) suggestions 2005-09-06 nj7w * [r666] Updated package dependencies * [r665] Added NEWS 2005-09-02 nj7w * [r655] Added ChangeLog 2005-08-31 nj7w * [r644] Added DESCRIPTION file * [r643] removed DESCRIPTION.in 2005-06-09 nj7w * [r625] Updating the version number, and various help files to synchronize splitting of gregmisc bundle in 4 individual components. * [r624] Changes based on Marc Schwartz's suggestions to handel 0's and NA's appropriately. 2005-05-13 nj7w * [r621] 1) Using dQuote.ascii function in read.xls as the new version of dQuote doesn't work proprly with UTF-8 locale. 2) Modified CrossTable.Rd usage in gmodels 3) Modified heatmap.2 usage in gplots. 2005-04-04 warnes * [r603] Explicitly reference package containing lowess.formula in panel.overplot(). This should fix the error reported by Troels Ring . 2005-02-26 nj7w * [r565] *** empty log message *** 2005-02-25 warnes * [r563] Integrate changes submitted by Arni Magnusson * [r559] Add dependency imports from 'stats' package. 2005-02-22 warnes * [r555] Fix problem in passing graphical parameters (xlim,etc).@ 2005-02-08 warnes * [r541] Improve package title. * [r540] Ignore missing values when computing symmetric range. 2005-02-02 warnes * [r530] Add more extensive example. 2005-01-14 warnes * [r516] Code can be simplified because R now supports selecting a fixed width font. 2005-01-12 warnes * [r515] Add dependency on R 1.9.0+ to prevent poeple from installing on old versions of R which don't support namespaces. 2004-11-30 warnes * [r495] 1. Add new parameters for controlling color key: - If `symkey==TRUE', the color key will be made symmetric about 0. - The `densadj' parameter can be used to modify the smoother width (see the `adjust' parameter under `help(density)') for the density plotted in the key. 2. Fix handling of rowsep/colsep. 3. Vector of length 2 giving the width (colsep) or height (rowsep) the separator box drawn by colsep and rowsep as a function of the width (colsep) or height (rowsep) of a cell. 4. Appropriate changes to the corresponding help page, plus some minor formatting changes. 2004-11-03 warnes * [r474] Fix bugs in layout of cell notes. They were being plotted top down rather than bottom up. Further reordering of the x matrix didn't also reorder the notes. Both issues should now be resolved. 2004-09-27 warneg * [r461] Updated to pass R CMD check. 2004-09-03 warneg * [r453] Provide explicit package for call to nobs. * [r452] Fix typos. * [r446] initial bundle checkin 2004-09-02 warneg * [r442] Initial revision 2004-07-29 warnes * [r426] Integrate changes from the version of plotCI maintained by Martin Maechler. 2004-06-30 warnes * [r393] Remove commented-out code. * [r392] Fixed text size calculations 2004-06-28 warnes * [r391] - Default 2-d color set to grey as in (v2.0.0) r-devel - The default (v1.9.1) barplot method now handles vectors and 1-d arrays (e.g., obtained by table()) the same, and uses grey instead of heat color palettes in these cases. (Also fixes PR#6776.) - Updated to reflect the addition of 'offset' argument in base - Fix bug in stacked barplots, which would not be plotted properly 2004-06-24 warnes * [r385] Add ability to specify color of NA cells. 2004-05-27 warnes * [r349] Fix spelling error. 2004-05-26 warnes * [r347] One more fix to get it right. * [r346] Use triple-colon operator ':::' to access plot.formula from the graphics package. * [r344] Replace 'F' by 'FALSE' to pass R CMD check. 2004-05-25 warnes * [r338] Work around bug in R 1.9.X due to plot.formula() not having the same arguments as plot(). * [r336] Add rich.colors() submitted by Arni Magnusson . * [r328] ?? 2004-05-24 warnes * [r324] Modified to use invalid() to check arguments instead of missing(). This fixes some build errors under R-1.9.0-Patched. 2004-04-22 warnes * [r319] Integrate changes from Lodewijk Bonebakker 2004-04-13 warnes * [r318] Add ability to space points along 'y' direction. 2004-04-02 warnes * [r313] Fixed smartlegend() positioning when x and/or y axis are log-scale. 2004-03-30 warnes * [r311] - Fix bug in textplot() reported by Wright, Kevin . 2004-03-26 warnes * [r305] Update to match changes in textplot() code. * [r304] Remove Windows EOL characters. * [r302] - Remove some commented-out code. - Remove cvs log tag. * [r300] Misc changes. 2004-02-17 warnes * [r290] Minor fix to ooplot documentation. * [r289] Integrate ooplot updates provided by Lodewijk Bonebakker 2004-02-02 warnes * [r287] - Add colorpanel function, which generates a smoothly varying band of colors over a three color range (lo, mid, high). 2004-01-21 warnes * [r283] - Correct arguments to halign to match code. * [r281] Track R 1.9.0's move of 'lowess' from the base package to the (new) stats package. * [r279] - Fix sinkplot() example by replacing 'T' with 'TRUE'. * [r278] - Add some more details to the ooplot() documentation. The documentation is *not* complete. * [r277] - Mark sprint() as depreciated. - Replace references to sprint with capture.output() - Use match.arg for halign and valign arguments to textplot.default. - Fix textplot.character so that a vector of characters is properly displayed. Previouslt, character vectors were plotted on top of each other. 2004-01-19 warnes * [r276] New function sinkplot(), as requested on R-devel by Kevin Wright in https://www.stat.math.ethz.ch/pipermail/r-devel/2004-January/028483.html. 2004-01-15 warnes * [r274] Add initial code and docs for ooplot() function submitted by Lodewijk Bonebakker . 2003-12-03 warnes * [r253] - match function argument defaults with 'usage' * [r252] - Fix buglets in heatmap function - Make a slight enhancement to the example code. 2003-12-02 warnes * [r251] Integrated some suggestions from Sean Davis . * [r250] - Make final example use 16 colors instead of 8. This looks nicer. * [r248] - Remove '%' character from example code to avoid errors. * [r247] - Add '...' parameter to call to text to allow user to control size/color/etc. 2003-12-01 warnes * [r246] - updated to match changes to barplot() in base. * [r245] - Renamed rtPCR.Rda to rtPCR.rda so that R will properly load the file when data(rtPCR) is executed. * [r243] - Follow patches applied to barplot() in base. 2003-11-24 warnes * [r242] Fix unbalanced braces. * [r240] Fix errors reported by R CMD check. 2003-11-21 warnes * [r239] Added missing closing brace. * [r238] Initial addition of these files. Used in examples of overplot(). * [r236] Applied my enhancements to the heatmap() code from R 1.8.0, and added documentation of these changes. * [r235] - Discovered that axis(N) does the right thing without needing to be given location for tick marks. This allowed simplification of the code. - Minor other changes for distribution - Addition of overplot.Rd documentation. * [r231] - Integrated my extensions into the R 1.8.0 version of heatmap. - Add Rd documentation. 2003-11-19 warnes * [r228] Remove extranious NULL that confused R CMD check. 2003-11-18 warnes * [r226] - Tiny fix to remove R CMD check error. * [r225] - Added missing closing brace. * [r224] - Convert from MS-Dos to Unix line endings. - Reformat to 80 columns. 2003-11-10 warnes * [r220] - Add files contributed by Arni Magnusson . As well as some of my own. 2003-08-19 warnes * [r219] - Copy of local changes. * [r218] - Checkin before re-integrating local changes. 2003-06-19 warnes * [r201] - Added enhanced heatmap function. 2003-06-09 warnes * [r200] - Add help text for smartlegend. * [r199] - New function smartlegend(). 2003-04-22 warnes * [r191] - Fixeed warning messing caused when 'connect' is a vector. * [r187] Update from Marc Schwartz, modified by Gregory Warnes: - Modified dim() checks for 'ci.l' and 'ci.u' against 'height' to remove R v1.7.0 if() based error msgs for vector conditions. 2003-04-04 warnes * [r182] - Change occurences of 'T' to 'TRUE' * [r179] - Updated to match changes in textplot function: - Added textplot.character - Renamed arguments "col.margin" and "row.margin" to "cmar", and "rmar" so that specifying "col='red'" is possible. - Fixed R CMD check errors - Improve comments in example - Add textplot.matrix example * [r178] - Added textplot.character to handle character strings. - Moved test for vector and matrix arguments to textplot.default. - Renamed arguments "col.margin" and "row.margin" to "cmar", and "rmar" so that specifying "col='red'" is possible. 2003-04-02 warnes * [r175] - Added textplot function and friends, as well as documentation. 2003-03-08 warnes * [r171] - Forgot to update arglist in \usage section. * [r169] - Added parameters for rotation of and amount of space allocated for the row and column labels. 2003-03-07 warnes * [r168] - Minor changes to code to allow the package to be provided as an S-Plus chapter. * [r167] - Add 'NULL' as the last element of if statement that defines lowess.default so that when the file is sourced, S-Plus doesn't display the function definition. * [r166] - Specify where the defualt lowess function should be found. - Use getFunction in S-Plus instead of 'get' 2003-01-30 warnes * [r159] - Added argument 'add' to allow for the addition of a barplot to an existing graphic. Default is FALSE 2003-01-20 warnes * [r156] - Updated balloonplot help page. * [r155] - Updated wapply.R to allow specification of evaluation points when method is 'width' or 'range' using the 'pts' argument. - Updated wapply.Rd to add 'pts' argument - Fixed typos, spelling errors, gramatical errors and lack of clarity in wapply.Rd help text. 2003-01-03 warnes * [r154] - Initial checkin of balloonplot functions and documentation. * [r153] - Added reference to and comparison example of sunflowerplot. - Added code to put example plots on same plot window using par(mfrow=...). 2003-01-02 warnes * [r150] - Changed assignment statements that used "=" to "<-" to avoid syntax errors in older versions of the S language. * [r149] - Added wrapper code so that R-specific fiddling won't be executed under S-Plus. * [r147] - Renamed first parameter to match qqnorm generic. * [r146] Added additional help text from Kjeitl. 2002-12-31 warnes * [r145] Initial checkin of qqnorm.aov function and documentation submitted by Kjetil Halvorsen . 2002-11-04 warnes * [r143] Updates from Marc Schwartz: - Updated underlying code to be based upon the new barplot() in R v1.6.1 - This now uses the 'axis.lty' and 'border' arguments - In R v1.6.0, R Core introduced a new function called axTicks(). This is an R equivalent of the C code for CreateAtVector in plot.c. This now enables me to get the axis tick mark positions consistently when the 'height' related axis is either linear or log. Thus, I can now have consistent tick marks and can plot grid lines in either situation. If 'plot.grid = TRUE' and 'grid.inc' is specified, then I still use pretty() to determine the tick marks and lines. - This code now depends on R 1.6.0 or later. 2002-10-30 warnes * [r139] - Commented out plot.lm() code since recent changes in R have broken it. 2002-10-11 warnes * [r131] - Fixed log scale errors in legend() call 2002-10-01 warnes * [r130] - Added examples of using 'contour' and 'filled.contour' for display. 2002-09-24 warnes * [r121] - Changed digits=options("digits") which produces a list of length 1 to digits=getOption("digits") which returns a vector of length one. The former was causing an error when passed to round(). 2002-09-23 warnes * [r119] - Fixed syntax errors in barplot2.Rd and CrossTable.Rd - Fixed incorrect translation of 'F' (distribution) to 'FALSE' in glh.test.Rd * [r117] - Modified all files to include CVS Id and Log tags. * [r116] - Added CrossTable() and barplot2() code and docs contributed by Marc Schwartz. - Permit combinations() to be used when r>n provided repeat.allowed=TRUE - Bumped up version number 2002-08-01 warnes * [r114] - Corrected documentation mismatch for ci, ci.default. - Replaced all occurences of '_' for assignment with '<-'. - Replaced all occurences of 'T' or 'F' for 'TRUE' and 'FALSE' with the spelled out version. - Updaded version number and date. 2002-04-09 warneg * [r109] Checkin for version 0.5.3 2002-03-27 warneg * [r107] Added "..." argument to lowess.default. * [r106] - Added code to append "..." to the argument list of lowess.default. - Fixed a wrong default for f in lowess.formula. Was 3, but should have been 2/3. 2002-03-26 warneg * [r104] - Changed methods to include '...' to match the generic. - Updated for version 0.5.1 * [r100] Initial checkin. 2002-03-20 warneg * [r94] - Changes to add compatibility with S-Plus 2000 * [r93] - Changes to add compatibility with S-Plus 2000. * [r92] - Updated to work in S-Plus 2000 as well as R. 2002-03-05 warneg * [r88] - Replace "T" with "TRUE". Problems arrive when there is a variable named "T". 2002-02-20 warneg * [r81] Minor changes, typo and formatting fixes. * [r80] - Generalized to allow specification of the multiples of the standard deviation levels to be plotted (0=mean, 1=1 sd, ..). - Now (invisibly) returnes computed smooths. 2002-02-16 warneg * [r78] Added bandplot documentation. * [r77] - Fixed Bug: When method=="range", the absolute range of x was being used to compute the relative width instead of the (correct) relative range. * [r76] - Corrected problem removing missing values: The missing values of $x and $y were being removed indepdendently, leaving an uneven number of points in the result. 2002-02-04 warneg * [r74] - Add na.rm parameter and make the default TRUE. * [r73] Initial checkin. * [r72] - When err="x", 'col' was being used to plot bars, rather than 'barcol'. * [r71] - fixed typo, when err="x", lty was 'slty' causing an error. 2001-12-12 warneg * [r54] - Quoted underscore character in my email address. - Added correct keyword. * [r52] Added documentation for xaxt parameter. * [r51] Updated to explicitly list control arguments to lowess.formula. * [r50] Initial checkin. Code copied from R source package and extended. 2001-12-07 warneg * [r46] Fixed an problem where \code was incorrectly delimited by parens rather than curly brackets. * [r42] Initial checkin. * [r41] - Added cvs tags. * [r40] - Leave first point at center, rather than shifting by s/2 to the left. This looks better when there are more than 2 'spaced' points. 2001-12-05 warneg * [r33] - Added ability to use the t-distribution to compute confidence intervals. This is controlled using the 'use.t' parameter. * [r31] - Added documentation of use.t parameter. * [r30] - Clarified how the width of the window is computed when method="nobs". * [r29] - Added a better default for "width" when method="nobs". For this case, width=max(5, length(x)/10). - Allow omission of x values which result in missing y values via 'drop.na' parameter. 2001-10-26 warneg * [r28] Added correct handling of 'xaxt="n"'. 2001-10-16 warneg * [r27] Fixed unbalanced brace. * [r26] Added minbar and maxbar parameters. * [r25] Forgot to add minbar and maxbar to usage section. * [r24] Added description of minbar and maxbar. * [r23] - Added minbar and maxbar parameters - Added cvs id and log tags to header * [r22] Added cvs id and log tag to file header * [r21] Added minbar and maxbar parameters. * [r20] Added description of minsd parameter. * [r19] Added minsd parameter. 2001-09-18 warneg * [r18] Release 0.3.2 2001-09-01 warneg * [r16] Release 0.3.0 2001-08-31 warneg * [r15] Used wrong character in header (% instead of #). Fixed. * [r14] Used wrong comment character (% instead of #) in header. Fixed. 2001-08-25 warneg * [r10] Initial checkin. * [r9] Added CVS header. * [r8] Initial Checkin 2001-05-30 warneg * [r2] Initial revision gplots/inst/doc/0000755000175100001440000000000012677006672013337 5ustar hornikusersgplots/inst/doc/venn.R0000644000175100001440000000123512677006672014431 0ustar hornikusers### R code from vignette source 'venn.Rnw' ################################################### ### code chunk number 1: venn.Rnw:33-35 ################################################### library(gplots) venn( list(A=1:5,B=4:6,C=c(4,8:10)) ) ################################################### ### code chunk number 2: venn.Rnw:43-45 ################################################### v.table<-venn( list(A=1:5,B=4:6,C=c(4,8:10),D=c(4:12)) ) print(v.table) ################################################### ### code chunk number 3: venn.Rnw:51-52 ################################################### venn( list(A=1:5,B=4:6,C=c(4,8:10),D=c(4:12),E=c(2,4,6:9)) ) gplots/inst/doc/BalloonPlot.pdf0000644000175100001440000037637112471456254016275 0ustar hornikusers%PDF-1.5 % 12 0 obj << /Length 3265 /Filter /FlateDecode >> stream xZY6~_ucE+o 6$f6XĶpt.p{ }0Td_N;ݗǻxyYĻNGf.I3/ݱ!?xWǻ_.^0,4ݏ?ھ0c{NK3 ݿW$@{I(ͩCODZbmajd{w 2#\1C vLesٜy+`df 텱Er(oLS0uwҽ=t5`vVgeC4Cc>p=R/v}kە9,d/@}}6\Ǻ6]-@s9R^E[e{QŽeea҅"mCqk9j`z&x^M3` A[iWe~dՕXrZXDB۫"߲l@bv H c}Wq?om(q7?~Հȭ%ȧ xXu-D0,aflEv]ZA|8HմZj`K`߃~Y~L̗$~b5dZC{i_$,ԑJT/V% 6˧`FRiU[ (j,?lg >xK,q48־q K@?ÙZ>+ѼbpGåpZ n*En+-MAv"Y i@-V :sy:Wԁ[duX$zf M|B bOltf2(LY\j̱}շ7%itov'Ut9eϔ{[F) W>z Q` v"W_*[:dA.C %Ka_Ukﲨ6\S ;δql؇e+%^ >lc0p._ O6Б8ghV;R,Ygţ55Y. @klkv3-0A$R]h@)7Z,GA;'0DV@8|D(u(G%⤖ X*=nJӠ0Dz$na *{˂鞁vZMqlM[2 +a۠*˾j&h8~(%њI9ۂ%A:X e ҅P`a VF#%.]ڣ -;p4NBܐl[X{d ExP$ ]xCd"pBæ[䍅1gc2j@axpd)!lJ4BzȐΐsJg^.E(Ur3d22$E^"1UU%gk L>-]%!0iX׷k5] 09VMz^? |/H02J&gPj:.1? cRS>pnk\ ̸)Ikwy`Ö?Nqx*ws.d5*]FPκ:sje3?` ?p8Y`*뿖O~>ON|Eㅋ=bXpt +0LEx)WրXeΕ\.;P2>| Q)J4&*nw6C>Aی e~2WS+_")>*#q17tֺQs  ,zE^! z"2v jOG~z-we7Zq}/ ~p3qoN0K9a6,8z||##/I=֣x^bFs.ĠsNF=`:!p ,4jI`m ,ϰeLS ,RdU62+1䛎:\G18' p]mj`˒MceLm!=|A@\Wl܁W!huXv8Uߟ'CCWr5"RWwciP(W#B '"Ez/<'7 n5EJBieiʼW6 DrRϱm9𪷞Zʊ`,$ CK:9M8Lף-~lsM= @tA2J)ŭ $v(-WVf3úųػ?hL-.B}v*D z( yϾ- OMﰘb G,%7>?B?~ PE;)ҥlhVd!YpY,oipYtiʚ싷mM%(qȰjBP-E2vޥ?7y`H0ʪqǬAq1 \م>7pHca5gX"<^DuU0 endstream endobj 9 0 obj << /Type /XObject /Subtype /Form /FormType 1 /PTEX.FileName (./Figure1.pdf) /PTEX.PageNumber 1 /PTEX.InfoDict 28 0 R /BBox [0 0 504 504] /Resources << /ProcSet [ /PDF /Text ] /Font << /F1 29 0 R/F2 30 0 R/F3 31 0 R>> /ExtGState << >>/ColorSpace << /sRGB 32 0 R >>>> /Length 1011 /Filter /FlateDecode >> stream xWKo9 ϯ>,+ztѬ P$n7l~R(O$H wmo` PkRS@NQ_G ouׇAN/OL/_ç fpw\r4/`^ JG84V[m氺~sμ2F"I1LFta1_ħ %׭ "?<@u"VŁS"#=:f{Uq @?)e+AwbS).kaۼ҂ v-vqqX-̏be]pEx}dȝ].%=z8cܿL79sK bZōR 7VNZ2TlD߲ra&i1_|iD~x7/-PG+}dIB 4eDPC Vحc k8xĝjb75S@t 0ѡK8hf 7㏑s[B*,m|xd+ƎzN,2[Jn:༺ yskұ"KfzΝ_ϰg.דA7MGtTQM y"ͺTl[XYyvc]\Fg=b{9) endstream endobj 34 0 obj << /Alternate /DeviceRGB /N 3 /Length 2596 /Filter /FlateDecode >> stream xwTSϽ7PkhRH H.*1 J"6DTpDQ2(C"QDqpId߼y͛~kg}ֺLX Xňg` lpBF|،l *?Y"1P\8=W%Oɘ4M0J"Y2Vs,[|e92<se'9`2&ctI@o|N6(.sSdl-c(2-yH_/XZ.$&\SM07#1ؙYrfYym";8980m-m(]v^DW~ emi]P`/u}q|^R,g+\Kk)/C_|Rax8t1C^7nfzDp 柇u$/ED˦L L[B@ٹЖX!@~(* {d+} G͋љς}WL$cGD2QZ4 E@@A(q`1D `'u46ptc48.`R0) @Rt CXCP%CBH@Rf[(t CQhz#0 Zl`O828.p|O×X ?:0FBx$ !i@ڐH[EE1PL ⢖V6QP>U(j MFkt,:.FW8c1L&ӎ9ƌaX: rbl1 {{{;}#tp8_\8"Ey.,X%%Gщ1-9ҀKl.oo/O$&'=JvMޞxǥ{=Vs\x ‰N柜>ucKz=s/ol|ϝ?y ^d]ps~:;/;]7|WpQoH!ɻVsnYs}ҽ~4] =>=:`;cܱ'?e~!ańD#G&}'/?^xI֓?+\wx20;5\ӯ_etWf^Qs-mw3+?~O~ endstream endobj 42 0 obj << /Length 2381 /Filter /FlateDecode >> stream xYKܸϯ4V{^ˆAt+GO4j'M HU_K%:o^ɽ< QqEyYeI\{ׯ߼*}7חE||'pbyBg\;1shf, _DI8q2-Q("<,Y}YpL_p#kYc:j,c0x4 3;1=O'f._֕ F`z, +e3rf3g!ڵ>MyI>ւzz5tnYxy¯so[-%3mVaԀ,H,Y #RHV>^xD4~jрY$o~hB/d.?C+a8rX=? p$H$W!Mmenu7Smn\􊣮{&GGUƱX}iܶlmؖ.Q"c"?.حLT;Jn袨 g >ğ0PWCO *uv]ϻ̶̚^ݾ;f[Hhc!]BzIQ τ3J3w{H?4җ%7][$]k!ޔKa:_Y(uq22w:z٬CBYpjyAZۖLnjY"9.W9Qyi݀PGZL)66]}lڥ5"TEB & B:NAL.=$xl VbF @ށ=l0XF6RP?tP`9-y֦;օ4LZ-iͶ sw;V069W(ESr!8J%|p|(;::d'D aGbA73x=E(r 1g:TǞmhR%ZdU![7-+ƍw.8oM'J ȰKaQ&E@t˾a: > /ExtGState << >>/ColorSpace << /sRGB 50 0 R >>>> /Length 1158 /Filter /FlateDecode >> stream xWKo7WQ> ߽F]@Cj+HvҟcW\ې>x!~C΃F{>`ZF-r( ~vp{I +73s H!\ >l_`@֔y@V i@!s;=///^8i 0&@ bI OF(1^LÍa<` #p7(]IbFA ߱?Gp%$8:FJkaـB+Dp7Zs,kd5e{閵5{3-R "o(Ee~019{PhhSh1LV d{ Aaв~8hXwN8Eʶv PXJR.{«`G///V Ŧ2rDrPqbG12L659HJ  zw:VGxI( e2VjTItט}Or>399\D޵$5*U} sq N)?/30yWpctw5xJx5"rC0OӲ[S%|g|70_m'QTI,.;bNY #r2TtAhٹa3$ 6薇C0*ÆPb(~]تbdeQ SU"W6\EiG60? WӬ8p*h5y9^|2Ͼ&\7>"仏_=*fkx{ w-Q_s-gl"BptG8x;{n>S^:0\FL.ˮvGn2XXov(\o[|g;\5?nj <.2nq[ޝ'6&x}S endstream endobj 52 0 obj << /Alternate /DeviceRGB /N 3 /Length 2596 /Filter /FlateDecode >> stream xwTSϽ7PkhRH H.*1 J"6DTpDQ2(C"QDqpId߼y͛~kg}ֺLX Xňg` lpBF|،l *?Y"1P\8=W%Oɘ4M0J"Y2Vs,[|e92<se'9`2&ctI@o|N6(.sSdl-c(2-yH_/XZ.$&\SM07#1ؙYrfYym";8980m-m(]v^DW~ emi]P`/u}q|^R,g+\Kk)/C_|Rax8t1C^7nfzDp 柇u$/ED˦L L[B@ٹЖX!@~(* {d+} G͋љς}WL$cGD2QZ4 E@@A(q`1D `'u46ptc48.`R0) @Rt CXCP%CBH@Rf[(t CQhz#0 Zl`O828.p|O×X ?:0FBx$ !i@ڐH[EE1PL ⢖V6QP>U(j MFkt,:.FW8c1L&ӎ9ƌaX: rbl1 {{{;}#tp8_\8"Ey.,X%%Gщ1-9ҀKl.oo/O$&'=JvMޞxǥ{=Vs\x ‰N柜>ucKz=s/ol|ϝ?y ^d]ps~:;/;]7|WpQoH!ɻVsnYs}ҽ~4] =>=:`;cܱ'?e~!ańD#G&}'/?^xI֓?+\wx20;5\ӯ_etWf^Qs-mw3+?~O~ endstream endobj 37 0 obj << /Type /XObject /Subtype /Form /FormType 1 /PTEX.FileName (./Figure3.pdf) /PTEX.PageNumber 1 /PTEX.InfoDict 53 0 R /BBox [0 0 504 504] /Resources << /ProcSet [ /PDF /Text ] /Font << /F1 54 0 R/F2 55 0 R/F3 56 0 R>> /ExtGState << >>/ColorSpace << /sRGB 57 0 R >>>> /Length 1535 /Filter /FlateDecode >> stream xYo7 _Q[, hM-cvnHIw%Fr:xER- |40 h*.#g'?8 d?w/Ϥ~̮>[w7CfwIP0߂Q V$.ea~Gcv9܈i.8*6yPD3Jdi5I1`yƁ Ahw@Qx-OTB{0G^h yَ&nN8߿W(챙*wD ; $v IipВYrE J`NzgVKHak5cRH]ԧ1u>?:Se+Z y G!$xZb$8!M_s4e]T n(G ϼcf1cQp |Q.P O piߝM:'|V֧G rg,!( Rȸ, 8#i N_ : cO@iY*9kGBeJ}Zx'*)e_PR4,ʲ./µJP71p/]3віۂv;$< xgOHZ*\(IԭLѿm@;|hM|zXdž)߇<^97 1wm\v"QP蚃cQCI^%5ܰ9BtšЬsd]%5G\8: ̠S Y3X'3dfil2Y1 鐒iCTew-4pigx7-LvHo[T1ܧl::.)'''tve6z OѤips?ExiB/__D$E:]>nW$Yo/od![{wբRi0(EA G1{о]<]w?SUGB]Z7B 򧝞!ϱn:8xrU/tߖ^vCl`ΕP{>mp©!ɐ"ܐW)^l /W'QOܝ 8Ríid;XSÝo?n-k)pG|5K0 ؏xX+>/<\_,]\|ngEҷkyaxpY/V5N?/QYmb?& endstream endobj 59 0 obj << /Alternate /DeviceRGB /N 3 /Length 2596 /Filter /FlateDecode >> stream xwTSϽ7PkhRH H.*1 J"6DTpDQ2(C"QDqpId߼y͛~kg}ֺLX Xňg` lpBF|،l *?Y"1P\8=W%Oɘ4M0J"Y2Vs,[|e92<se'9`2&ctI@o|N6(.sSdl-c(2-yH_/XZ.$&\SM07#1ؙYrfYym";8980m-m(]v^DW~ emi]P`/u}q|^R,g+\Kk)/C_|Rax8t1C^7nfzDp 柇u$/ED˦L L[B@ٹЖX!@~(* {d+} G͋љς}WL$cGD2QZ4 E@@A(q`1D `'u46ptc48.`R0) @Rt CXCP%CBH@Rf[(t CQhz#0 Zl`O828.p|O×X ?:0FBx$ !i@ڐH[EE1PL ⢖V6QP>U(j MFkt,:.FW8c1L&ӎ9ƌaX: rbl1 {{{;}#tp8_\8"Ey.,X%%Gщ1-9ҀKl.oo/O$&'=JvMޞxǥ{=Vs\x ‰N柜>ucKz=s/ol|ϝ?y ^d]ps~:;/;]7|WpQoH!ɻVsnYs}ҽ~4] =>=:`;cܱ'?e~!ańD#G&}'/?^xI֓?+\wx20;5\ӯ_etWf^Qs-mw3+?~O~ endstream endobj 72 0 obj << /Length 3439 /Filter /FlateDecode >> stream xڽZIsFWHU0nl>{&ɓJ%94&c, V~ @AgR5^/ht{k_իuȼ,vi/Ef^嫷7?޾׿ݿ[h?0%fǯ*aW=? yyobctqBf |B·.TY%xԋkXah% F+BB"?t_ݱҥ^Z׫(VW(N<u0B2Ǵvi3ﯣh:S4/VAelӹ_}?U#?cLqM"tUJ^iΨbp?YgUXouuۘKޒ/^zZ,_/mTHpO=Sp "$* A7׫xHxMٳI_QU!ѩXgq D c}]hoᲬ%J#"g o~0N_ah{E}4ek'Q^dOl_ÄCuBN;Ax!K}g h4XJBWMEhGbɞMBn͓匒.? G;xq(W)/])Su_{:VI-|6N[.%Ys] ꞁTobjϒJEG14*Q<6,w+\ E|>8{"F7 Ot" EspY_ fAy]!g|EY\ yKELa` AZC۸$@O\嵽mg'R!auEC{  TN>6-lulr(l* s>P]n̘#vf} p~֥7a> B0gW,q YW_OmzA(~OoY(;`uvFYI sX=; |@)Y]@]5kG)73ƃOkLA4$'%NE(Q61 Pѿs;S 7Ga~sp34-ݿu-`R64ZR AAܢI,7,E!>KA`"ҡ>wb <ӽN$RIw!Z {QV v . b!s$|B;8zMߌ! '$^x{ǖ@F', +n ^Dd D>q, MWz,Geլr^1.錫dKTacm= beG=e|lZͧ%U9B' k3]kM^'-_yJKz*Hggڏ-K;v/ yf8x2纠 = n-X?N>voJ-.<>q{ۯ 3k} ?Y͋P"y:U]3D^y/!,-bi;w a{$ڣ oTIFas.ԩ?\Q 91ٯ`/LsI P / }tňs֢?塉ϿXwt0pH5 8$P r:ˢ1ꈽq<فibï7j/'7lތ'h*n7&fx,0ZPG{w?)5>Bl؈ObFmFn^M㥿sž'zSH@elJQ![ChN%ͼI`4[Aɰ^<E~Թk|e#=*Ea>.͡J!/30ISȭE|¹Û, ?ǿJb^ܛU$=?@?DY< g8s^W2{ô [b-OcyX&8PfvbQ<x.wۖRQ/sL/aik_ndiAu6F[(,T뎥̬.fBakrw@RfgrQ,@dտ(/7;M$: 5:65"zWĽq$ թ2(}S`')9[bк1 3/J_fPن7R%@>˻+^A0=31n endstream endobj 39 0 obj << /Type /XObject /Subtype /Form /FormType 1 /PTEX.FileName (./Figure4.pdf) /PTEX.PageNumber 1 /PTEX.InfoDict 80 0 R /BBox [0 0 504 504] /Resources << /ProcSet [ /PDF /Text ] /Font << /F1 81 0 R/F2 82 0 R/F3 83 0 R>> /ExtGState << >>/ColorSpace << /sRGB 84 0 R >>>> /Length 1735 /Filter /FlateDecode >> stream xYKo7Wh-᛽FS @PA-6d)pw,9`\G{ ^ w,\ʊ`‚A @:-k.v. J)#˗oJ'-J\/@¿x8_.^rZ,dRVvby/N6bySy`> cfI|H -LvV:1O6d ڀG;i1Jl II#4NOau4Լw -xCAzcyV%:"]f.OzN3v2)Q蕸CUiΠuqeD\a3;eF#LTSGu>>:r(,j m3<HS)!cS4F]$EKgJ; `1_f@(ුxOGCB'QN|ԅ| $vRQ"0)a 9!0J؉`IYE`9dX1M*ɎATyh!7 ǔU U9cŪtYNZ[el*bA+T z~a]:F+6Z*$UeoiCT ;jY|K~57P&!'i^~_ں,Ӎ֋z2)Xe+k V@7P()ʼ`5<)b"(x^QtvGP5{wOӚ'iE021&ϗskYj ӌ^8G1O*a-puG xI~}n&N~W![ݷovә]ȰPɟp&;Pp/4(#orM- Uɛ,7}tzY7!ɹ(/4h{h5 '2gqBG?޿qB!T $|N>Ÿdp_ {sUUً^-qz tynQsOdN3d /WGI<ukζnC7Iv̱n*Z`^cj;vCuWpvkx5v*hae3>7x]}|6ͫ!:+x <4nu+5^y"/j5\+)o_=bgSf۾/-}ö]5pI -XmNe7!T襖_fӱ,aʟ>=5Q=jmxd:MgUv j^ۃTVvvd^>x؉-|z[fr endstream endobj 86 0 obj << /Alternate /DeviceRGB /N 3 /Length 2596 /Filter /FlateDecode >> stream xwTSϽ7PkhRH H.*1 J"6DTpDQ2(C"QDqpId߼y͛~kg}ֺLX Xňg` lpBF|،l *?Y"1P\8=W%Oɘ4M0J"Y2Vs,[|e92<se'9`2&ctI@o|N6(.sSdl-c(2-yH_/XZ.$&\SM07#1ؙYrfYym";8980m-m(]v^DW~ emi]P`/u}q|^R,g+\Kk)/C_|Rax8t1C^7nfzDp 柇u$/ED˦L L[B@ٹЖX!@~(* {d+} G͋љς}WL$cGD2QZ4 E@@A(q`1D `'u46ptc48.`R0) @Rt CXCP%CBH@Rf[(t CQhz#0 Zl`O828.p|O×X ?:0FBx$ !i@ڐH[EE1PL ⢖V6QP>U(j MFkt,:.FW8c1L&ӎ9ƌaX: rbl1 {{{;}#tp8_\8"Ey.,X%%Gщ1-9ҀKl.oo/O$&'=JvMޞxǥ{=Vs\x ‰N柜>ucKz=s/ol|ϝ?y ^d]ps~:;/;]7|WpQoH!ɻVsnYs}ҽ~4] =>=:`;cܱ'?e~!ańD#G&}'/?^xI֓?+\wx20;5\ӯ_etWf^Qs-mw3+?~O~ endstream endobj 96 0 obj << /Length1 1403 /Length2 6029 /Length3 0 /Length 6987 /Filter /FlateDecode >> stream xڍx4ֶ Zhчu{NDc0D{ !: G'JM=5k={_{p (!mHZ$(i PD&0пD&Pw ;ؔh P<@"H\ Re'-xD@QDJHWw#S[7Pp `@v`*Bp!}#*%$%vA "dy^0#{B(t.?8F0_C= ` p@aB<vPw:PC E Ht%!~!+C8ap(@WUKv`8 {ap-{`>a sEQ0/B`ڬSB@hѯ)ܡL}3{eCa*dy@5`0&h(PRLLG_|\~HW=4f|P@  B`gǘ1X1>(TL PSQ H H .. guoz`؟GF =  L&GƆ :HP\@!,{Gpo?_v} 0z@cfCCM 6^ 43# @P0o qKK!Q_L_>A1~g]ikE`wwF(U;oH4&G:X(@#1vxc0^u( !ABÜ^(0x l୬vF'E9g9jgM)ؽ37W11|Qwnrz>Ko]P`qI0&NqDfckb:s.#rPr(9%gMg@)ub?1ge_E?"naakhimn_Qfo؋J:*ytIPXJilt.86? ےD<to>~QY>b1.Dr99ڑ&]t(ZߋK \֞Bka/4?snLK ||(gv7]auZ/yҌ%qmPO! dpYG& &*bZYd5OB^TA~^[Cyɹq#Y#mLBsp)rRJ/L/= iI>^?@^~KMD[C!a+·6:\a'gZS=~o#IAB]CxtjdwL3_vpm{7\RI +D[-Z'=O,ΤmZ}j9pQᦨ M5.)B;S8$PmxC BѾh.@Sk9BqQ/ 8DU⇧ȇBfbo}]_n[1(hE[)=h(4O~Whru%n-rEK9R=͏D=IG5A߆$9?0aa2VI=*jI> gQyEmzɬgX_$DPRMi? Rpc.G}yahPeYAVY;8Ϫq+ԫwPFOJgu9!}r\?o"epc o*ItBYϋ5:$JCT&ȺEּdTZa륕*7eN4PJ+Wv$#%pMgkV8׳®Ϧ,Tu憜zHd 32Ө-Aч1n/N(h1ܬš[ rWËIlƥr'ur)3a➤2z TY|NաHZf}kG$2E' (>5ANF\tl_㇓~YYki;3P\J>k5/^[B%Rjn\t[74.91$}/!U,n9c%'pñX`;h4b5y|dI!OKhBpu %Ydm cV}[ 0d+NvaeM z%(CXX2Z'xP;>qVNi)7"5?(?1FzuE .O} ):p@}|j]) ج2Yg[|'?ES2Œu<{K >L4X껞v'2wK=Lտ9,LCOӠ*M<8HqKYV-)ɱqCX?զ }bjjx3rwSWUf@K#[a,!>.ع./jJ> 7!汫brԋ߷j~89n71Ii+ϹADi.F@x$wvmX6XDf'TkFKjYǴOu韝{W Ǭ8ȁ W{.amXd.ȩ{7[_k@ Oڏ:wA@B礱*w3"!,*d:G>GbMty/#xxH"OKa)5dEI"8tgX$s*8xĒjO&~1~i_<>>*[G,4qr%-B}S;f~seBЗB%*[tS.T3oԝZ̊ {D>7qFY-b U>$յZ[r灻(Bqb^2aL[@{Ȳ=Hud2'8Iɏ I3[ɻlكh;!حiTެEGaeW%RO?4 ~Z6J]$l~8fM/8r_:6GT_*[k)s|f /B S(`xηiꆌ9F@Be -tAjk ؑT/tc˃Hd|MZzdH>.Ef쇒*4N2DO,yݬ&9+V0Uwb֧=۫nXV^/Oka,Jzg=a1a_zMgEIKݞ6jўtz_3 zTFaSu$+RS"sE=+  A\.{YƟ%]Y;Kmp̔%+ydYq,b&Wn^y?HF;;sIQ._XtҎg"u;"rt a#n9hBix:ì{̚Q}zʷ(csR\S6~M}̀o׏<#rSI9HH ^͔m{*BUEK8'f-zB m)t\"(IXŢclsqayY5W/L%4d=K_,Jh!Q"䑲Yw迦O%Tku6b%,b]Z EJ6O]lGI;<'ҕskr;co$׎^t;(<"h["WH] iEt:Z=K&Ij}7śuР<ɚ{81%]Wv*wO{*j,rk,ו/NYL.i ~D"d>{mJ=s6O(oi<AG6V^8UDo|I!Ҋqǎ7M]3w^r#_= _w_Ub}#rȾc魖bw±\' LN }plHlプ:0B*\WtEo#̫zf9$^[ڕM=dV0Y ?4C!RL2 1Zt+%!.T ߳b, F<˃(v Z1SJ%^O!{ZN?㡏5+#;|ݺsj\b^GbfȻ5u#s,KL{,vƂTf"S"XflIL{iԼ|1 _{s"g,y ZtͰ3Pس Kc*u!{T#wbzAB/𾏢x9;|y4GX=#[lg\_YeE~h{۟[ML3%פR;s!LnPSO.K~xZU[^l:DxBFIC%2`Hjx^xYv56KߴYշ{?Z!NJs˕ssc {;2Sd՟=WE iƤ ]Z%u)r:Uzj턜7:83-nN|UNѓg\hԗ`;Hr0q/h,ӇZ=w^G9XpG+fvPh5b-hk ~jɗa˂ifAgќyK"'krTUGO(νʨPꥪ޷GKI:$g̬WxҒe` Y%WDS8pHG1R&v#SYSSĘG&5 _+,/w1r^+/_=}b+Ք6_:Q8U9dS'8vd`'=b7eTo F?liG:Vt?V^.}|>V6L+Vi> stream xڍPj.P,8www/šHqwJqݝV vsv3Nf9()(8v_& ) 5vA꡸lN*V3($.z!%ief'ΓQT^{/wwOĉB9.3F2=rRJQeJѩVc1.Ҽ{ LJ+ڻ#}ᣈWzYaS#/q"dtYj >돌Fˡts]_E}O vl W֯ȤY%-bPRga,VPcF5#e(qO¢a5_L7aڰmI 9 >U[)yfܥYUhÛ~ƙMsx)8+h̐XGKoVNnѲ,CvkI"uWkC vWF+4+ޤgҽoVOHS:҆8bB?i(ݫG0 |\fd d\J-}hu\k+̋=8}d5MSWZDYE*d&TԐ)sK?hMEYߖaK6ܼH.*h{@ OH9o {z*|Dj)ʤAul3[Dtj(T?>aϧZi#ud݅NxFQ0o٬ܯ;8Y ss8:D˶ yM؈?42o]DJyҶ ^rKrig:?oΆp3o#gTq;|^ady}1uc޽ Lֻ$fvݽIcWA+|>2EU>1޹Kz-]/>W n;6zԕC0h6)"Z{J:Cf`̈́jf CaOxda&F9n4o 3J%>K2z%v 2 ~D2@(__DM$'SJ Mg͂-ޣy~L"uQwTsȄ.b>ECakV83SjCU_i;BC]] gClO'y4ujܵ.Q{@bEJ-DZ"_[J|5ߍq䭦ɷRPGۜ{5*$;a ߃[L J^!DtlXwjjȕ9~}u,\իTUm1c::Ы2]ݫZS,*wp&4t }Ǡ1>&l-YNc.Ŗ^_E[v\f#fNɲW}޾M$eek^pNc5J0f-X`a'~o{&cmc wqoF~1OL:+m0QF| _`Ă*6^*_bpQy&fKE-a?Mn1t"t +M*R-f-D:hKAɫ?o3='Lqa"be. ӷc{Z(]䈭I߲:o VB'Sq}ahvta=I;IRkGZA D"`4g/}Yv=Piߔ x 6> ](ȳ]踆sksvx#(8M\ )ܨ nwi=ITnq- o X 6=c4B|2-E:uΙ]=,e̤ݵCHmm,|hڈ ЕM~@FEGX2(F0&eɴqB'w+%ʮ |K<2tSOhhݝ^[`nDrs'b/ F=1 QO@"3=aq$!ΐ4 ^a/Fi=JWP`;v, ;[G}/>ՂK[kW I'U~I |E-lq^"]|t^^[I 'yf. R#,Jbɰvee&%q+uʓNMz{a1ah/+skz^Q\qזAW - g."auXSqS6h 쀶x9kuF$Gy dҹG.w|Cl,Ʀqa `GG }AwT/?\ޏ$LCu,IiJM[ +l Df:~䮭ӲLbIG_x˅< ![І˼rlj@V!-gSx8X-d }2m$:]靋s>^@.ߺCHY2b,mC3g/ڎA Sm4aNGB.u!yR͟w мźxMؓ5Lm7w.Ӿlj.EuI 3˛&Dd E9cBx d O?s+lkQ~t|}SP |37\4.%&5kT\Hoq'[#"R6E_YѨZ:i{yLk_iJn„Pιhx1לF n!ϭQwīV'>ExKi4#z[a"C1k˓2FfIuG~}j&xa^#d6 7aYs[U3DoȬy5=7c^Dr3hAMT3IYrš hRyܵ39S-2fn tM֛2D;R+xۘB"+1))(GҰed5+tWPYӬAs/Ә#]~\z"NɆóMttp|G.fm=IYE!ݰq ONڑq? V*HR( “z,l)sE[ϭb0$D~W$5bRqz,$#5J+@†~OKxa#.)⹥7לMP#JtwMa,7*t;x%Ӊ }mk:nBDfd`WIM 6vSYEO ,ZbIhͫV:bi%G- WWAA?/}Z,T]u A$x Pqd2ڟn7sրUezP|i'W9V51őI>QmiV2T~G4 ƹ0'Jxk^ҕVŅSsؒ해Tgh4R<;-CR~ߺ%2dSzF<(}!K$$Fv2Qoź)y"FWf%c[_Wzo䯰6Kߵ{"9@qӔH#bC3IŠnN$"&]0 IC[]Acݑ|tQI O"gA(Po8|⼤7u9ioe=Pgw` 樻7HUp} Ck`pٗ=[M G\k:fW]}'oH@Nڛϊ:*{,iaL&fϿw@ZEAS]0&=*xfЛǯ]$?l*h=ļ $ks wCVh c,%id ٜ?MD 0* l43 o4E{Z ST徠j8ci6FͺZ7!ںQTYϾ"y@MA۲wjuin^{}AgsQ`ujH;*S3\RcxHyЭ~J;?T&^NS@҉35$*wa=Qggə ٨ה01嘄~@YPfbI LY}\bUwEZ"TwB]5L1-}\JɖK ^N\S4m 뇿~"-qN$"gew%w`wˆyMh}ucPOO\UŴʼJ RnQM3%7L =&tQ?٣^׌P9o{9 gpvG'G>XosVrhamJ9 -ّ9$$bT^Q 3!ƹSirE㫸U3r; |b*XC/C3]SU3܎WF ޡA'N~Z4Pd|IN<,{w 0N&螟 yL@XD`xM2̗\u{>[.i|FKapI _TUEVIo ]Bl -v _i*}F*,j)ymf^"A}W?>9Į9 (yI%5LÌNo.iSi;/#qv3P{ /D=L<~Nv^$F??c֡6USY =[&CZO~S7cF8X ڪNӶ˻jDsDdnZP( |ݬ8즹ف41G5sFqǚ5t0+OP_ccŃfrCWR ,  X:'0wޑDp) Dԙg e$GYxNZyG#FA}?]Y{fF Y8^Ρ+NuT+Yif9k AUv}j bIhty@{L/KqvK%tpʓYŪ06wvW꡾AҠI}~*y7 M$.HU%YnTv6 to\b\HUof-W.0-Ze.!ѲI.U6aiq(ofrMW߷O!&Ψva <)Ԟt7DFL鵶"]}M]8AFɴԻz^nͤ(r$ .PEN#YDRIKq#>rc&D+I<%.Oڶ5G"IVl,G-P s,t'YƬȎ֎-xE&J"cx]d[md 'ŤŖxR/kN o?GKL#>ͳp![ײ}:>ur8-ﻢl=itVAB]gB'F0 oK'x[u]0 :f;RIw&Xj X=]^V6:u{<^\„@{ amjM=#,b"#㕒I KSKĸKR7OtzeoA"W[Y-EaPP/L fѾh\f,b JϘ S/HXTCC--YK+js6s.j#Q1 ;Xو}L'f.-̖UkDN7nB$v  O_":uS_..R~a(Io"'#f\DO$k^}8^.wvli3~4@+ڢI$TJX=ZeYOzn3-[i3vw$NF7=A*ir}+s(atoOUmIc-Z3 5} @/=8l{:St&+=s Pf]TG)x?^#Q#nNR]B%ڛh0WaICeyUg8?/*SXK{ 7]e=yWXT?߄;\e#Ӝr7:JccV7 q{/F 0\-q c5R#|/}t'~s1SRg,04CI'?˜;e\f;'>8KYE.]j2,_S@=XVAz9:ɾ*k*ɬ>џ?p2o[S$ZVM!ӵ*.ڴP%yŀpICbaF/GgȮV_yS  y3Wμ-qa &j/vx)cId!`]~ȮOl6 |`Lx0;dwZ7JMZ1Q{{Q|ӡ:&HҌ PUyU7TEY9+e \}Jw36^{ZE~ԋVV(7mhvߊfWd$ҙ㏥c}Oog|L *6-Oh)Al{7vվM8GPcnjktY _CfO*B{[nZ$ºTqhiO.ñI1rwqJjVSO~ᵜybQC2KJn@^gjd',vZXUɍOP|fv&Vʶ *[EQm)O|<$F| Bx:Ws.&1 P2;E xe$kY`dK_^'Ao X `ÀiQJ6sadƕʹ7P2qW8&QD2}^4k2;\8f01ozYbK=+q0^Mxr\u5\NA6̔QqN4yqAwrZ{zޛa5Y{z? p4kStNIJEy̅>U)J'dZk>픫mnVBKÂ6t֓-Ev6EΟ3FP7E왃1L`xo?uO4kpkו7aQ9|_x5d֕HK1X{e(|7K+/'#EnGCgW0yr$$&SȂ[Z=}ތ]"U5&$7ۯSTXBȾ3)N2T2KDϰY, 71!w繰3.0[y"Ctm47n[j%yiFP~̼I~e +4QǡĪ0Dt}bN#)W?7;.q½!)qfg͘F֕Z36Ir:{<\uVBȿqӿb3W ˣP|* ,$mLpBwfcL-W>~9 {-mm w<#FpRY Xͅ)!='IhBQJS#:UFzŠ垏_.NX1x(1-4]هcy0pM'|M *=eBwTpQZ[clk UscJZ R& KjkMz+8@]):J-L-ldw3q>!sd_:nq]vKbf2,AN|vpFS";p9 1RXqɕAE3(<{l>{-:"]¼‘R -ؔ욋 6eŒ!幐ؔgF6ԭ W 3'@=-;+%)hn vqJa(kgX QoqTIqN5(Bza*12u)}᠝0Z/<pI(Z@PkAD%8SGjɍ~+å2Ċg93SjCTYJO:rC#C@ 55`%u-G~]^)n_#5k'7a'9ǚGަ/_+.JD2~Qxlh9Z,̄;V%Ýy-K@(CoV!\ˇ9lW'D=!j;1MjRlhW%av̈́oC؊(Ω6qbx:݌l2slbҎς ' o||&z^m~ 8e`}xW)% endstream endobj 100 0 obj << /Length1 1463 /Length2 2005 /Length3 0 /Length 2933 /Filter /FlateDecode >> stream xڍT 8T{O֝RWRVl 0vٗc '3gXRt,%"%J-[rRdvCԭ{{yΜ}ߑdN}`36S'ቺٙDDH$]`a@s`L a`; HK%Hԙ9 BQ7fp_?g(єIGG[m6PY0A(x~0 HMC`^w%x]A !+0t0CB,x'@`&BQ.G0`݁5 /`/50w8'}-7=SAg!  ;3k\6AC ?.x.œH))J7fX0f3A80 ;l6o1ΘAvH 4`.7/"ECf8AҌ 0`ƅ`p$#4}:_l9H0$bGę׷؆(3| &s LBZ:}z!dn6z( tPnF^(͉F|m3 -Ba-ٔ3U8ɜ+}Gb!̐9| 6G+E60~Z L!Tԗ  ovcDP؞Ef7@D$$GǾ)\fC0;46}Fzd8(GL0Q:<ڀG<,`\M@pqZ:ڀ}t")|3ID@@ajon>;BwaMZ@)V3'\t]kz[UO'W#_m Wޓkڊo2|z66k'[UVzxkt5CeBfj}OO )_ZX2_H-[4/**3*6?1l{udJOMe5Ioꧽ%m_1NT: }h)p)}÷䔽ʢJ.qP;J3hidim=wu}Fyr ܹYanÊTR'EJP;>mE% ?d~92պwlavڕHF>Uվ̚Tz#Fd mLp8KP)V<',eV=%@ GV%Nn|դe t9l.}2m3,q*=S|i!nrˮH.*Uƿ=:Om[=MJv ZZd* -_&Aρ1'B=H*2-k=:෺ƫ[M$ܟnex)Hmܤ_ GlE]FG1ңE8tl}Kld5#PSbJ2o?Z][kC.mGAu1E6,*5>.!賬vԸmWoq" g Viˬ> "Sm@퍉T!_fĔdIO絇x bmhT ^ ~-m]ܣٽAX'5鲼m{rlhi*rs^?7M!r"?FR`^fWG"ӝݼ$t$Խryq]KX/!%ݸb:t #2%rFjc!siBp0w`v}' T$]ҿ~vꢏJlѾ dsw1^om۱{5^n~nFZD_t?ӡ~>VJ΋0#!?imXZxH ˿!YeN7Jߒc]ևB)ڮ,1B/^KsՏ Qh%ki-|Ln8*ipۄ c6+(yw [KҁϩïUgׯKs"j%.SW*qX]0N(2yG|-=&wDq dw)NN3rfIƍulur$$͕+?X5;{`wWK{(tǶP"矟?D^mwj_Xj/`}dTH~61wI]QA'X.BW6:t] hEMc2Ze'Ś|TlQ6޺";AhQfsD.}]bX%EOk 'k~͐꒻"xsOⶈ2cOހF> stream xڍP-;wwwwwwwwww'Xp1r'sUUMki Re:A;#- ,`ddgddFPY#P,le 4D Aovv)gk C;Gn @ eg tBww03W15Ow  k2ڼe46([Af`puu7qs4DM pN@G 9C_(*NɕLA@hlkt%(K큶e@ 7&zG ? l m-l@ = D 05 b7s2v9;YXA0o]5ڂOhvw&kekj7051=3PRo7o`cddda@7cs?«T)~ciog0}#0Ct2t@@o+!01L,A#-ob_mnmƷc07ݷ2vm|De5ibNH Icfa2ع8TǓ5puaRP}0Ԁ g@adc4~`^?](߂ĜTS m,6x[dgQڽ:dYj%Ao!hkfO-,܀&  c??Cxnma Ts112ڌ^Qg53odz;O۟{ `yL(;A_ q#.? 8t 3A7b0(F-?߈`e024r6t2-ez:oO)跜_-?-\#aeCbc?`dy낉,ުf.oZ+j;x31|wXߚjnoś_oXLo mUw-Oٿ= vzi//&7Zo9~lktLK{po]{IL'kzkhbF3IFŚ-or[]ono<ߨ{fWucg7?㷇?ϟ[ huΘ'в.Fnob_=c l"uuF7;>]Q[UWؐg8vSA"xB:W/5+Vn)gN<q}Ńjviė9(H\E<2G 7ԅۻy_$Rq4gQ,Z[я*N=ZxDBGIR˞%EVl{.L Iėi|f8r֟9AܦlSر5_ȵJu?90i'˛JuT2-[RzḗN&}f̈}tJ(#YX"/YN\mz"3$'Q¸}b*Pœy7.$E?JWjC/qi.3YJ :E^ GL)-+¹Fo#5 Sz;\(!X)h)ɛA["S>uq6Z(v7 nκ(.8ZXƎALb9s;Tsvd*}W k4w`0: 0upmţӗ~5_8WW~2JHL0 }Z䲡 LL_Ut4ɵLfp l(It6]GC<%J9 .i7p\YƃhZGxg]R4+R.14 ޘe%uͽZJw\9m%5XA_U\|E4K1!$,f9%9z|ΜkE~8)tA,UU1\>& ͝g-գ$ryfhr L%ūiE2L:jzW O,k~YOvF2x2D=1lyngzY9CwFg\ml 6Lj.\k]eCiO70GH(V >"0"AIz“[?ALvvr?vLa>r{>af[K4tR_%rWh҆KFVH贰2A]] p)hWfUhcv=W(xp c 9JcL'FEcU‡umU d/ { ԣNp(aK_.#ILC0J#"W~{,1#K t}Z0֝;r1ͥ$}FJھ'}ڛS [~w5cF< t-AwT{ onێ\.B-E^I#u_r\X_9u04cmH3pov -S$]Tβna!}; )C`ZRVRWbZ`j>ӪxuON.* ^AƹgP ݹ`^J?jVњMX:qnEpnU3# f +$իM6;yC ~]1#2LBjR돥c2gϣ !ρ0֩q(A\uCƼz bA)cS]yBG80 [FtA;CPF3~k bdUd6.y(Ȉ7H Nb`ȞVil5ZWP6Mm\̹ .#UR;hC>2?/ V7Cү0C};JH.ħ޴}{ R\R@3D}$JPM!0gI elY4P&;j[Q٫U4~~,yϳWm 3fsq9&&ي4-6y"ⳀG0\LY6+ےl}԰kq 0\񳲸/'|El{ᦶk~nCJ WO2 $Zpͻ@9q >TǺ\{jr]^DjfWޫe9L<wV C<%BJԕvj'5?xRx "=C(F]mx<\n g|Vl`z864[VU]|M Pjh^ѵWr|,'b@=!zv13$cb6:Ҋ:(46É]trR,/-Қhy &Z}3ޭT4LC?o~ # "tnJnMqӯ%UTeaM.=E& ?_6K:եO"RT»P+,%ݒ+W'MŰ:׃r+}6|[YS`5*LQLaA\*lE@f wR^flZZ@d)1ֵD Y+;]'5M Ŵ5؄ZzA_c9TIQ>͞ >֖jB  LHʹ{|-?)9ˡoJzYd_w}A!u┼# ˉsx曍{O_jNc?5ٱvRTR~Sx@Ou|(dv:M)>ؒAQY84=A6w^PI_$l+IZi5##IE黳AO>x{pQ:_px!wx\r7=E*GQҰzD8hQ h8TSFC}Ā͒lU_I\3F檺mXA/s]~!H; -, K|VvOԏ Dt@N\%?~ue4Rfߤ[#3jM?#aO?]28e@DI|hNT_JCUqd4e!]`߮a_KDF-M o rmB8䴙?e\QmmᓬSCUmA˲dw :EMlbll% vm+ %E[NF g惚":\֗*8) 0yĵ XB:!SV pAS}w1~3s|<-VG|#EaJi'g4/4eMrP%1 3o.c#E2Jxk F5hg(cKbe X][ k ߒB#/N?x pG1%Q'aBAOz8!(;FhjOF*:w{S3砸o_:փ*0 `BŬe Me6>'E@ c[lۛL$m7)FfF؝JGx*qe q0U"Nփe$G7 Qm~rbC2'`,mB'Ԍ2- {m&ʏ}=xm3E"LnnuЄMus%x^l|ܑWqmTg&V#rۢ$@:LK}p:Uu%fo~3^iM@ɐx͐2܀Va[ǥu'|C.͗컧kȅ;ݣKW) 4w !ЛX:q:15D҃~|8#Ÿwo 4H뗴n,?̿uBkU7< -$XCw0? r W_$'P遽 1;H N"'Š^VL* N}X-b/y%߆!Vl?taO1㮖K,ጙtN7l85IDrzF_u SosFÓT/I+`ɸL]7b=ʞR,#x3?"aj\{mT` P"WN$N$tz>mJK(g@lMǍ'}_vu ÐX'dT"z, 3ښ>$tZOnAnyVc o1a ;&hM v\VdF0Di&`]PNIut{YN@fkeK~^.:iXn|U{)!aG 9g64ـ*Kd@ޔ(8Τegk:S?_B\<:"y% t~9#A|ڋO= {PaĻaCxC63q1rtyZcRA&6cBOs7;)ؚnvh^h uH`mqh?Ț#d dhSgCk7}43Eq9'+PGTT\y4KMRzha}[.ʈӻƬ;gETH Ԑv=D$tcΕ>HaQ-Au# 6#:_XZSA+=]TtLn9Vvwfې 9Ք 08ZN_9ޡV(% f F8op`XAjktj"}7u`U҇U6"LE6O=-%=*ں_;]@XHYumlOWҳS؄bu;Z  $jJRjX,~vnJOFmray$)_GH䶪;w;nѲ1?:edW e|uEeOTҤ:N͎Z!JG: ŜnI!C{>=am"?ڕ k uÔERO'K+G88lm 2[+.9LAQצSx)9{y tOZZ]ʮPz>&&OtDBICq9rוQ&1qQ^n ۖvuUdf{Sdu>7^E gKۤ׺rgx2e᱊nݑ_c̞g6|-ae#\s`]`MN^fTf"13ra@~g A=h%4phE!sbOqE6N4[!ݨ!(߮d w3L mϵz;I NꬉBc;\Eg@m"QVbfr٨Whle. uO]ZD}vuӝ/ 2Ze5f${$iM'xގM< S -ykAUw{Ͻ^ ScTSAZwZn'o/: Xd@(܉1j|Y; JDHN1e|2.r9s}dPy[պP9 %RߞW|q8 Di)Xw4ZmhCRg~іCvaQ'ǁ$cVy$8p=De&;slAM޷?!/E`(X`Pָ@ ]R>ٞ[ψx@T(ًz~;k' ֢R%q͙ ًDe.P.݄-ii"y^[mؽˇ!& /~𜟌OB$Ca!/^6E#at@V90';^Z?Ҙ<_o 7o&8U% x8N  gDsԛ"ǔN}ە'ȡ8{g=GNK[jo"0pd75W@')K0yi(/x͙Zx %ku(_oOq tWr-!^ۃϬ:'.íZV,{^0 Rvt1Fb+]dq]S^PuK;TMfф`$:cAr,> ɵ5,O{殫k$B= ,YTQ ժCQ8s~'StJ+Owy^p 4W*<UOCc!w;J[lH/}\4,-0 tjȺ-}2"XrRe&oB+*+I۽Woctdu_m"̮]tY~K{bs~ja,H_Cwׯ;.GZ ԋv Y=EU|J5Y*ctKt vLvi-䅝|/BI %?KԹiIJ90Ub;V.w-,hHн.`L k%顜x&}1MפDڣ9Nd^,Z:W=-wu1goOԫe#V/4=?q8m!a$xmhoduec)$"*F5HW(<\7=FMMZcsT7d IC%GG7 JMP+b,:l吏fzGk_Omiz"A?g х媸~^UOȨi,㱂@HTeL*RQvkﴍ8U x[$gŞ/ kªk*k'krO ~ՉvjC%gW6~IcZD]hfUB2 l...؏|pSнྦྷ7F\vE4%=]HbRF~j(B·/eܯkJMiTQT3V-4DyBpcvD@@K0K|*y0)5׹yL4} byhDִIJr3/^"|vY'I CGO.PŰКO.Mɋ)E1B\9uid%l4(Q*o_ C9E|gE>mqR\)Z&h .SL?G'r}wն\wS?=M)HB_ $=?1S.)E-6xO܅qf|"GՍGV/Tl-BE 61Y%o+:d )=Q^O6ɝ8mHlY%,N2\UEYN5c(hi/~={% 0 m eU0z{2"|l.ĄY$ )6-w^SQTk&-3OWsWWhjgi29_fnoqj^ݾx;J|Xr-M&~cG2s_HYanQ)k`2p^^|'5 m\5ޟhmt,D~XEzQQEb1WHs(4N8hҘI{]gc%N&^U"b6;)w/vKchS2;*)m:O+b Mp N~ީ0EA"٪ٸ3 QAʁu4}9]4~ޜM\vQŬOƽǺ`5rMiH5!]t 4*]Q]Pv#b mLz,)h8]A->ktTl=d"pdGZ&ph;6NNW\kwm>BpVtՍ4]P0Bv +*T]qr?_YvȞڱjO~@0&{#*|qoL$鈍O[I(ޗH 5SYbz$ֈ=3XOv8M}ed|)5m|k&v=xCX-#*[O&TE +ڈ9J+,s#Ś0d5g Υ5RA}+-FcJ`4Q!XF,uҤkT^]{7)l1iFH}/U0P1-(ǂlɴ<7\WP&\I՜ƬWخR0 gO-/$/ =rwcN9.\7 Mdבox_b?Y')Q9h  m4SWPptз` Nr'M)3rya:ӿ؍xL06nK\}(ʱ^v}eiIO]'N.IC;b4 O#{BχMFzŦ䥺]I/{Y0ӷ(jWڕ_RW[Wr9PDZ Y'pbs@j&߉ʕ?'a\G KӋ0Y n5Im'%/)0턦C=-N1ΒkU-˫*Z{KP4TbWȷ1w1!Ie<|siВ݉5*$/+1Ǭdq3"*]1U>}XUZ?IO/S.(ggo sj?|ovJvzo٤LJYS.wY LN3-9,L>m;`Zޑ=q 2"@N{x,Oy"-(vO3tZ\PRWKbL=;\?cr#,M$Sl*;LJYc;tq`%GUU㘚z`HavOFc# d>8p鄙,:2['2i A}HŰ93HO9QCZ*sTD5֮4q;vEq}9@|6u`tv^yϷ碣|E\~y&1Ԍ$eV2C|g5gm`2Bv\jGw]~̢>t7J!목'>zSK [I@ܗOB4ZDo5Kg4bT?M 监A5jV.<.j zf%HbpJ'5۸m['Lɐ9c㝎+H;e0UnZgrJG8WZ,jcs< 9ֲub{O`7vr16Otӡ}\9їGoT%_D GKT%FG_ZWM(DdRz͚ۊO*]zޠpVt~Wmʪ">o9CR_ӎ\e,I"ΆߨQ Pd .55Γhs0^}Au8 rk8H5chwwb'jҜB8%;sm6r sS#Jy&Ϻ,=9q3YqHvv=HЉyۇ73rΒ!gݪBe3z\f( ~ &aEb~ Z N9S][eV-fHj'jb78R/!y''?!ja%:[cnx$:zy!I6ֳw !KY~~$TWIh-2̗\dza6{\àFUgfoe'()puޡ ҮurֱLz?O;Hl^ZIj%o|\Xxã߉MLwͧO؊ORRk!JFAfFD?} 4הU C!?KSޕ\_Z|_6MBA}cC'ao%i(>gZb JfA\?o_ endstream endobj 104 0 obj << /Length1 1614 /Length2 13298 /Length3 0 /Length 14111 /Filter /FlateDecode >> stream xڭycݒuٶ;ʲmFmuK]Fw˶mumt_;w֝5ȵgǎqN>Ⳓ* HޕPWT256rcq5|((DAƮVbƮ & 2(^V ::Y x@upٻ~@7@WKUTҖVPK*$A gc[)@d;8l:؛YU  2498\\>V. gc{׏:Mm"a7wG݇LUIL<]-]b8D9U߾ W.#4\-ŀ 0v6||`՝ /;:z`5gD`fiQ7w0a7sswf^39GJNe;$?D?q]rCK*ہu`c;+[)#5A?H4BC #F+ +O%K@ζV5n$7_mg do?80QSPUT"`PDD<> ,V ǁ7ƮVݏ?vU|7q{SfEcCտOG\= 'ai7:%-յ7k`LLr ıN-?7ҡ?%|*~kuWvoǖ+ tC􅌦'}n/ɠ9D3bNnJ5bPC< wqO@E~g\ݎVQw|BxxGkxp g.3^FηuoO% D\ct*{rGYƙ+K{'v\m_ߙr#د#fwPDAj95''sxLkAxIn|ƗKJ>t҆[A @ߖ5LiVB c򘲡]bۦT(t8#^a`"@t%pCV+*,uLl-kAdWL' D/ַ*կDoJ|OvwOv[[s<Vd~& ]ʩr+UQ?X Uִlы|dD"r x Wzet{ $}w,4b9du^ZAG=wy5~7 &#V/'T渷;j,(dSɺu2z'0JJ<4&)YږfdN fr7.^Bͩ9Js | R1>d@[ʼn"ؐ:Vq*QxukЯȈ|Nٲ eEʓ4j9wqLB:]f3}u-#7 pBҺ' } e>ǚ+fE(6tPF l_ 2%y.tO\[Gb_<@: !rd]")f g=?#G9Уv{VV;_n}qIYkʜ|f xDyMf^1>&s-8|}x0 mDbB=y 3].d]?=6„̗`V) &b0&s̺\Ԥө`~SH ۲4DyF>@(;}nnԃ(^F WnlGtc3:bI%I=B62J /:#o_2XKRspFi*EsC,Frh+n[>43*xeJFhfFkOo纬ʂtLu@202hJ4p?M6Qd*cuq1윯Lr+佐zOsׁippCXH n +}2fNb7[T|dM ͏-1 ;%!A>-Wd1W10N(:YTߓRǗc<v4q&}q[t*ㅲBgrgxG)G r2vStJp D y+rC㡾F=I{U]yٯ^m0-"reFP++#A0 ecbc*7g/E)1&>e:@["pAb Eg<ϙd069n(HZŧl2GӲLyd­OPew6عShZÏ"ДK<1"$A $ eL~ǧIj\ixǫWSW:fgɣq*c#T:VW/r_<W'ǰVKq:OC 0܈QxVZɍ$UqPIXb,U]gA}\U3<"/F8E*U^0g,xUh]E}F dbPjb! bjI)%3R50mnrfkA(T L|" S $E@ G5f{JtcS1=r7!ѼmoZ:(&iYN8 cd^` M| /2d5X ios9ULl-WL[֍Q'^n pu(0\]oPiv?R\IB t3\LķRXq^#BE34*cOw#rKb1[ΨCsVfw&{Xf8];)ʁ%qCimEF̩cƭk` 1 W\,Rv. ԓI&9Te ZDwb9bl1[Ǵip0.i0oE0=€J&TG5F9ť"':޵9Dܝ 0uh#4X3ByEI~RD0l?wxBqUNպynA}^(Uaq6G!X zKEV\֔lBpwR_ pPGWǎhG4+mSǍKA;8i%pFpأY!MmeW]v1M~Ṗ$&,wyx_rϩ2_|ȬTauKLvFI)`4"AP`}WZri{AsTy궎GK4+W؜Nԫ玼-w{4y;rCk:HO7mHO9hC>|n̐ړrr?Y5F3>~W: _̣%7ŗr+(EMQ5C0bvo>,dX9o5 Sډ 'vHxYDc.W&e!pa™Õ-_̽zpeJ}/Ln9C!}5({0D3Y9/O _9=QI^˫*j8lHH7ioxm@zHz"mlpo88il-z@)EX|R .JČw Q-;ɬz"iT8ōay= 19Uo1u> CRºt]G(F>X֎LDYdeܗL$T_dp fMS%܉0#Ne19RaݪAjx$;װH LE=EP؜ Ck,GfɥtϞJѽKts\|m`EQ$RdX^UeA;rV/Y#NLQd9|2-RRQj׋\ҋfA|K,q830˩6drVߦǝ"?WQ-?=0\{Ŭ v`>0|=jLi m0.$R`y4S} N(+2-C4轡j 5#@RLXq;F ̪އ!͘'x猪 \$Q?E~-ݖ5 1WF9iNt}i50c2mBiT%a-)?3 xҾZAyncejlnd/7 ⸱Iw+&`N*L2kfD?l D3hHzk/ShP9?VnJRu|)}|J1#*|4t&獨LRV=3Kc!TGveVL\ mѨ~%c&Y/zu:}w B|5-g}n93 P0 _zyWͦ5B#;Xh8uvO_VV u{xy` 96jՕjfzUsk4}l *9p5KqjG}%ej.,N9o+DpRlb2cŧn@Ʋ-dxkR^ƪ7tcQSH''PQ`_95_%4z0WjIIe*ݬSgKc~|4SO=q%#8\ӷzbgƖ4^ &ۖpђRHR 0̎ ݄1lTpm0'YYLpl\5]Rhie2ia2tпvwI#@Fo_|!X'JbyØt@P^7HKOm &|;h]y;VEy7WR}Hj^P/obwK]Rĝhvl8u]f[PtV*aNzSj.SaB1oNz{zj}*.i X=V_B ]$S )CI%uX~񔃣xMg^?騮S}y UmBi͙X)e62XB%1׾ XLVCDW'g/ϛ|-ysJ,Z>y2޵].ͻL@+mZWcn~GWUGZmBBe߲>D1SJCZu~F䯖X [+̇*0*c2%žޗ̳tdg8t^cb]=>#wqRpN܇qtL3R\+y*hP{[ k7 Y҂yXD\Bg`'kMLDʼN7O F`}W.oRQ)o:ȺtW~Nz24[MV2;T}Ѕ6`Y-c_}zSk1,҄"cA^ 0UhE8E?^MkFwdsϨuΓU5#yr^N&S^F܅m_X6o?uv)Fۺ1Aj% >?;WNpjnh"N,f_!^7ZUI2}bMTȌg}-pG!yb")gݷQ쳡GD-3 $ SnĔz:8F¼6vr5X'*06{qi J.ZqN@]Em;x?5iW-lV~ʧP7UA7ۻn4ۻ9Gؗ24~Jqe4yrO? XE5$_3ᦡjdͻLǚ^UoːܴyZ"LLt.z\t8|`,dpȹ#~im SrY~eyC]!aR{Grec>0Hn$Mvkb!o4-%)u/*&Nݥtt+9*apI Щ ̃Nd NF輛XEZpȪ +qmصcn<꽔OP?oo fe_N GI;H0eCSg *웤2~_Ṅm=nY& s%xͿoQ=T1 54"#j$wSFC^nAmUha{@!g%\wFkx|{CH& ('"Ic&?\\~(T"xo5PdkK[BAgq,rtRE!lBrUY%D/%&5RS|)QF3!\0cd 'ڏѻuleUωD;Vqsc(o53pU+@5L!f6;'lqV1yB_x1~qʉORx%:ea1s֬|- :[ײK+d>֋ n,]}ݜIxcEqm3rWJSDhS;Shy9M:8z63rN3ٗCNUFmrXJ8WnJSՆ\%!׈vbT~?)fOmd uFkJXeIYF7s/^r`ʯ1-!o)Ra[sq\70~|~do11I׉WFtatjIpZ;qjAWP+!r@"2ӡvl «/ ^Vy1ńnvNѭ.|ƒ5ۻ-- *dgT9GGB2.ky,g_3+(؍yҝq p'Rb~My8 +cw lMq-6JG4) 'Nqq:κ(0t V7^b8?pb:'gg*⺡-YSgl܄ko\35HDRy6G#3D ȃKe&xn趥uawzv;=HxbWhإ'?l<@D'RydYtt]G5ܵ񜌾TS5fz>yiY5$[qh206"Gv(an'M¥iPo[msEVHɚۭoixNKeg?hB'G34nikWiHMW6a١VBgڌFG|[.QPѭXwP6 EgS6eէDA(1ث0J65Ko"m 滷.;ΧC:nV9^wVP34D[7qUY1Ecۂ~jOR ^q1d$͕V̸џ>¯]}ik&H~EpKCw00j@>LMz]C^$C-8Xm[M[z\^vt4'NgCXU_O`&vҰ7ģ) Gdfh񰡒Øŝ39'.ֲTP!HLK݂4H3%1ygoͣ$rV)ߖp!Q^ń&=QeԠz\Ϩ>TA42/;xNyHOK|镸~@mߙr^{W=M&k[|\**C a? t3wr2oϬ [}_>dԧ x/F2㲩tQI30U',Y}z7+ԤZ9k|AtDڀm{^rᜄ?e},)i[9ᇀW*&ylkAT7ab?~V4+J?f.9 X[(bj:;X('#X!߆^GpX jh 5ƌ N6ˉ <B0NW}oMf=Z"ߩPȶV?/Ю[rv 'Vֿˆئ<?%f ܨ/ɴA+N)(ҚF!w%`?|<)j2]j_7r6q"Y%;'pz'PܴI]H9G-  1*YK6`PWjр}zO(RĹjV0zwTWx]pv/r@1-x3\<D wN8)`Zå\IbQ\(&ia A+Q y 'hxW;nbq4aB.\B۩|Nя\JPn`"88T&L ؼܫґ>hۧNO.fY[/PH Ƀ㼡;MpL'RE#w lkķq1LY%Yڨ5T|%#'U0?\}YjyP%[Ҩ{s;0 R<9wL#^JvAL@v, a 6;~llTܲpF<.JԤiC_*}aK%SڌtlXfM̎o6јFNe89 ۿX>zKȲrqLBװn}cCDe_, ]ܠARCj8B*ڥS*;Üx?9wrzrF$S ߗ>tm߽&*ta/afj_NHPZ`z$Nj٤ yzf=dh/^} ,mpұۅ"T@(g9U.^V6X9fk*,s ۻ$m<'HsU8LZ$J{8:#0n`}M)4X˜!k &iL8AȊKYvQuN8)ˊVi iD6hxo+1sT {!p.aE7Hq]w>od ܛj)g#( qVoNܞ l,$aȔ8PqvÀ8a !7ף1N*C:_UNd]>)x'a5FKS.kq̼uwMzTZTz61^ֹyhm_8egJk#h,:k ~@G_)1E'uBcB 8b:NдiyщցT4l菵J+NsE H)Y6RP]d?k2vKŬIÔ#SZ!g5Vw|şUv#M--a3˟&;>bܡg$a/Ahv={DLYςGƮI^`PbZiL@/2$j_WtPqxzałgݘїA|j̠p`uTEeXa(3X;-=_4JIe,HzWPHպTlBM R嘬Lc(ҝ^lM8^gCBÒ)ݥ)<3L} jqlx OWxAsۚw|$Q1"8AOz!zvy L1o藰WpmeZȲA"O> stream xڬeT][%LprCpwww8spw 4];|u15kVZkoo*B@q{;=37@MYC^^ON.4Yۉ )@h`a0sqqD<,-@Դte'`񟞿;-_\6@;_*@ dY" ZR* y5ddPt14Z휁3{',&vK`pvXt7:8l-,NFv=,Ll\L!nf/!'}A&N ߬da'_7o?% 2sr6Fssp18͍LmabӝTo`n'K3ƌoNv=?.s: f/ #S{;) Q7%New"?O'9w7 w @%cEZx{?Ha@F[!dgW&0Z:[M-A&3#}׮fg tV虙OƳ hg߹_Ro_ARMaa{w=3cap2 _k9#;@oL?Z71;{Eddgw_]=MWMx2AsEuz!CJWwosUՄ0Orx,:K wcPv/ |H{ P7(ھ2"iDy]nAjs0+)뗼AN:^=Rc=8 bԃ*<=H<~|躆ǧ͉#1M>0tmdخ%2| b; ~ wSEHL;2]%tߞ3LFG-qG(u)$gV3^P#grpVe~u<=VREhFvR)Fk#!bRU-@֑l8crTn  J|D%Cn: n[I'ՖjFЫsU`nNٍk]'-7Eᬞ :Rh"U+; ~i9߸W URf&PKcGhy"H6A0!H8>dػeꂺvԴTwlfjz1P*I'j>'x=׾a2rxK2FnMT+ǽÕCt5ґj4ڕYaCA)M'YPOXJrЫ䍶e{it+?J=eLl vw hExeϼ\/Iճ5)|/n*e :Yg!=2 g֊D̐,y):S%ՙ׾_PvWEZnrllpr"w{^&j2Hn5d$zrjcՆQ.Ik'׷,!$ApYۗ^g(i1;x 2ܦia]cw0jw|[<+M]˦2qŶp4hmJCgYW)-y {/{5_Q_m ,wcČ[Ʀk(]/>`v1BX3zКzFכ{`zx㊙Ǔ 80dؙ)LNK+oEc8@(6n%`A%Acm,c^ j(H_S#i~/;ΐ^7l$uL0Q8:aBYmY~h?xTE~ѕ}KK /~EMw>OBOrHQJLȚ~ȜN g^'K݊U=bf5^xx*"&3v0: SKHz;ܗx\n˼ۋ;M DLɜMun 6PYH{ۖ`4%x0w>Nʽ.\N׫?!3#UYpSɯBͲB(a~S(w e<|n,Au=jqFlv _y%ECicBxn%lHN[XmG c8#~Ie/MJA7I(1l&G-]X`7X@+ Lp S~>E*d[uJ%30vfZ/㶔$S$Kׂc\Bn=}!բo yՅ _Tc YϗĽ@DS>7zh<~e[ZYQ^hC(5+:=]xl.'4HVĕ!ϒӁ __{vS3Tax"sIF=fԎ0ԍl(\bbrpەE^Yr#3e}J*LE@S/]PʂIӻ28&E,KYfw:$ L`'6+h#sNP?X.b)5e2 sdYݗ6$5H&r.S[~ڔX(I(C!8 5!ux l>h,}T71 .aS0+w;/\&+\dUĈ]߶~c pF=p[ ̮=Opz~d<M'p(dmӗJ~ډ öhBQxel+v)hβ$Eз^Fazjw\wbv ixD5COꏆD;TzJ~8k`\-p,^FIz.5|2G94Nr]ڬ.G=sRq5vְr_@ߙ'/Cb'nOe wǍE~~00^IJ,=Eգd`;߆ؤ %-od SY|bg>ʍ4MqXuE8͸3)KzXtH̲Z& JV y7^c7"x*%Jj$!UgK$DWzVM{\ȫs8Ha:^`9!Wo©hX8|HVDa r^8_=‡87VRS %9-͸DY9i 2IƁ1c% nÈDNƱ-fɇgYРzL>K\-4`)bc(p 78s\/뛪q3.$߿w~ϳ~9xC)sgIVB0 u2Бj"ut _]08xʵ)UޤG6*N=}]Oz֦e4(82!1icGE{|w]zE1!GO#25qH:'ɧaH]OL5xMR)ȔpP{BAQ_!>~lrQ( ~'I tM=\h9Vkdp,Q' 9s[ -EP?]axI3XZʵm!r찘iݭdžv!u$@j8G@ %b*PwB!G>gtiL7.gںeG[HY%=qя &mJaB sJ19FL}!xþ*l0lsH9.mR8w}_?N6w>9D{!:gVi9O6G3[κB=m}0bEnBkYM_ȷ4 l؛j&UPL<]zׄ9|_[C}4\E bLX/\6O%QҟڔtћܳnqcX.V#zNdf~~o'wρB /ߑ!ҍG='[LReU앵{]\An>,OmζЭHJVWTFs!,)M狹 >ı|nLj&aZUc9ihrVgzp }QS\)y.2u3@k U -wytWeen*`a4~Vg+^Rn!Ee*@&;zJc> nN׍'Z{(vnjv,nRm琟j~]78 ْ%gbI!BZ*^(bDXE ds5 >TI< U`>y"Xi͂Y0nM᮴VԦݠm±SW=. h븬5˝qFl/EVbv]AݒQ, 8ɥJ׺GHpQGNx$ _Q]^lZA LjxMh\v đ8S Bd S\glTmH3ki\z:ma#ѠGXq}% {Ѯf{ѝ ژeSWߗ={I_QylVx[N!#>)ة"mFbGK^9*c%,`?N׋L+b2Ql(\!8nee rCfajs8-pb^d!c*D<7cQ|KP#;_g=A4)αua!Hld'VCb]*z鉒>,z2Scv'gYd8{" o}%Dő_5 ػ{$P-Hul xq뀅ifuF) xf$Ce7"z4s:Zxȥ˶_voB?x=cKjk+estQcQ4#%}Qͻ^'H\狯X.ҠK؝eaN8 qQG28GD`Re8âEzi pW;u;2>pE˛yu4+`B2H1OZ!?E?@ -\ S2q7^\́iE u[=(ndY/+3t>jX9pkJWD58ؘ oQËo,vKnWx ?FKNrŚ*!l&(a7hdxý,U d8i̿_rOXwWS)1>NJx9YojaDܾsɎߥ:O3,"ϼ ?у6L],ڜgTZ ߌ$r,?\7_**KfE.^@$/_fdkkK-ֶ#Ж=2:x[;)̺*f/Yy~N[?OP˩m7 h(\{tP;;~IR8:ѹV[)>xQYz,9KI8):AbJCx_Q IQW(yo[fs (K^砆8^BdWvJk)oT>\'EO~f*OY;).V68GnCBֈgZ}'~yQ~#rYN9 c]ظ;5Ҿ<-6=%= hIMG8;0惧6lf-b;-l yAzi5<x69*^z[f4\rmmHP-ș$K&8s*>6@DOaVyYboEVe#{.߬ Fr߾w)bcTe{{ NEr*ǵnH0X&7bΖN@ys}\(jڊ0SOD)'WQ(>X~oאD9;]'L25[{lc7]vm+&\F #ByEl+|yh1J'7.&)"/^m|BzUOQm`(WUk;'T(pbTha?L 9h_#x?9^2{<01QYU[D 3r( (x޲$ X[WVݒ6ahŬ54N)_kG\jLeqM},[\'@YLУ/޸ u:,QhcQ%bzEI TS=!%PjMZCg$U0Eu N7 ݾ:3wx;.^;r)N{zi u&VׁOj[.A֗U6rs{oCIkTi& BLG&Os wp,IkLׯƁ?2x*2aQ9$MKcod)$׾DYsRq'XN7<dz#`r%Ura|Q;4("v]cey3:=H6*u&ļaa36Zb fy~r:xFUg Xڃ#N f@FRM*I&6wϤ¡<͹-A4W)[bOHpeiW(5'kÝN 6dA'' -1_ŝQZ_=l>U@/]_ E]' $Xa ‹Mp+L<ՈhCi|6IXYE"It<k;(>i5/tQun;49k~?~4{vcwtt}2obh) ]LՔQ "ץ<%}+X8`|^6)h*!c\־k,A]Wz"='.ɱn4bj)oڿ:֓`3s_{/I`+}I7$Ylv0%J'Ao-^YmӲo5ayE%a+dTrxP㒡*ֆ6F:/tB(p4O+LOpKt cYJR9x|$v_ D) 9^jd@ʑ43p#1r9l k 'X>g<^ё$d^s(Պ)LR9 rgU~V`ÿM# N{4y9E{JuG'򁷸*x@)l+wH)Oټ,Ky`o wD[:M3g`ia{CKAΟASD~G+4QűJ<эt2Co >8#j /$ͻKg0~*sc]~IꢫKHWjq߻{Y%MG% =rLޟX#4 h{>=eЦYH" 6EV hB)NζsDq5dtO!<V\y}uIxtTRwaPv(vL|C2zPgf?Jґaq΃v&1aF~wq44@wG61 „a@a*#й)-Eȸs|5Ó:~ *2m}C9AiRLE8i!*Қ]ؕx;XY/0Rя_2yɨ-<_`_G1NvMIQ?#ر9+7j>H\j!yS-"T_D/k<[1o~6( L[K1%7b\B^0REihA u<>q-CD+"|& sY9 ?E@wZy&C׆k]2 G&x\uY}g6&a3 `-&h! J؍ 0+^ꊩy}Z@2||tXZ%88߄EFU003@9f66;4PaVׯ.~YM 5ɤ2MSc8S~QVX0ZrcB3!^kBɞ2ZNk5 @[#Ys'uOfeb$6kf4qfb|t `=&_Awʡh@$ 5eK_k(A״wh'0!C#ܿ5^6&_?Nty]lV02yS/ 7캍cWr!Ȍ\Ķc֡iIg͊`S#zgIQ55]9gUJ_VhTpj?D)9#5|@boq#dxz<j.䀌AǠܴpdjvL ^B䄽5BjU(}})^`d4 !ħ|6ؕ Aq?"`ܨqɸq!DƩ;gg-"ZZkгS+J ue0X+shغ#.?́y5t*Z%V,NG陭<2J]US.ٌ8X"{5m@ѥbiE*ʾ~~*gwnTÑNӌF0l~3O[B_箖#9}`Lyj٫-u?Vs%{Ӆ4hI?I'Ecq{|SU_SI3X.R[I!4fم.<;d|'AYInHk-3o%OrC (o=Y!uiƊ ᵇ]6uNGLjr?j Z`+Ǝ5ƕYQ0;Q0c~p7"M365W{csR\a\^-ؾr Y>3`UjV; )Wή!?$}zNlclDRG?T/etK`aqIdZQՏu׿Ym:D_JYr3,)%ض(3;{kYf 4-r 8 L'm ~먄<$t'+b{ h:螡Sn<~8m?EJlvDy֏Jkr6MӟҙDxρH$stbv3T ݳ:}C}F6&4v1o;;+%H<']#f-~?Kx`h`M^r\WGz`lO`{IYHb<ke})$ݿɠ)}I_|.s QfBm·zf}}8 C(,`Bˡ<_쓲cl텅n/2=_/bfX7\8V^Tf0 t$EG<#Y-t ԋ:| ^3~Pq[i|^GM{b1)ٖbGə(sF$k j ik㓧򬠉pv-YNQQ2 Xry[^bjy4|.K)G"ϓ ?Qhv[ =R$Kq&+los#iMK_p*26H-$'77qL;tjy-/-ae+Մr\H/~~E|>`m\@t<ǢhCXnڰGbdVd Пt,<ӧij+|R>cQE|Z릺`"JӺYlv\}S-T 1aFqQk4b_uҪuAF~hL1QlM?_`ħnV-t ,{:헻Tgb=:_1`M+' 3 v$i njA:?Ě(\G(kr4ۂ.>ڠKPpAgnpHecM,5]FQroҒ=K |%3==l3Y ,L&\5Aاo?z9~b(*#2jeg!:Ԙ;ԃ$ad ](DcIEqxid6hG?WϐBC]$WV'M{}V4>syTfr*KE_1D_0z(ѧՌ!(&UT䡩̗1$+g<p@Ά n;YvF]ۉ:{JL.Qf? `bHKt45+ݜfGX@{4WٚO#hC>^g)xF6op:ʉ; Y>'Zo;Y NLup H$Lv.SO؇wؙ WZ㗳w)hPْ.Ԥ=x3NMF4%*YqWyW_K'4**zޚ.8"@ ^Kgj35=\>)2a~H9%K{؁u.n? ۗ5꜅sw`6AO=$!uN߇{Tq1L!Szu&]Isq!gwA"kI^28T:3xcb$ b,ԱC֮sb1/r^Քbm39 x02|~]UIrf~Ppc\O2Vk[ue҅.YŒ`h㹮&/p;LXU~֞Oo]KO4(X/_)XdIF[˜,=r]-tpދ9 mD}rȜ+c|迶LJCk^+~-|-OK?{M_M|0ɣ[Sl$ \*4>_pU݃u57E9aj Վfs :QQމ U`5G.軵֍h^ftstWYHw,[W}<\NP{MEUDv r.AS\޽9p ^MQKBk9]%v>fAGZ W^PF-UxL+)J>f:l@}pҴfQ k ,UצD8YGSVUJr Vzn~^X n;1T..me:oTFЅ'Owqi AH3r[HCmqq$"Wƈz$bdI"Ӑ$#]2+&R7jLn% ݎB1n?'Ǟ8z׎dҝ:DפwƜ)щrϵ]KuN wSDcN;iD0&ˆ,n?0\Wj ՙ6MEkJcgf]ݶIvI~J x|2)QwhG;-_Je~q,t edB( vs. r* V xH"\x>BK̅DRQ yf+vSo[Y-zt+SW@*x#*ԭ P?+B\~ئ"bEw"`-jAu+܂Hsfv298Lx<~LC[3a \f5Vk:aAx`~T( ,[.FiCάT9X%ng\< ܛhix=㾵˄8+BaGGRñKp,J舃׹RUd=gPL! H<%JeSw9{+2|T(A˕?J^'6Ƭ?f4AɃ_WG8VXL;+:LO: `P b&słX~dB4h6kV[5aJ}fxw*4PZirYu ڒ#GpR=R+ZyM j^֕ppVdl*0Q*8>0 `>z,nk!d*[t@IhwaS9CBx}eΩH-u9c9w ՒldSjխ$}7;"q#Lz%H]2sYSp57ߓUUu/@A ^Q G@]M;(x)(oA6?X. >4іK:WYs#l  F,ͷ : GEVuXc*ʰ?Ad>CYBo>NQl0$CT8u-6QX$ QWaz腡@9RbG7/f~{Q_${MV˘Ja? oR8դT|iG(#6::OYA.~-QL,k19☺A$ߐC;iZN?0Ҿ|?lL-gEkN]k|*CEϬ6hWoS3j'e](\A ŪB`}أqth4n2\*$ ޿ƷbX>a V>sćR؛R6L.%OxCKa?d.{&R*B~4z\J[L7]V£Fc>jHP / O//n5W80\d89=BYCԲ@0z&cit5KQODFc>kH*iKo!pRhиUANXp" ݟ3h$0錼ï.ZУt&{Sp1ܵ{cAjV*kQmqz~5·X?1ē bI8CHa&Ls2+P}6AyPdsUaY@K5j׿C^<"[Y˺Wmpi gp?M*RܿLmbL+.xzwi7K^@h*h*ċŶ'Z_x@9ɩCgHx.* *w=ϐO"؃MF/c8NDO_jRBcʋ8Y0P{d`҇SBp:FŎ9:%7ʻ_WGrH q2fZ#k:Rpս1q\R) w'Z E .jKM36YaK^'3Z=!Beaxl>R4$J?̑Kgma\kCe}RÈ|=y`!A[30X_$qbT$|p  LnD >Z̶L:\rS,e6/n[R"wJ{wk" Pt)_A<pVh `<ܝSrl EX0M|L 9wkeKo2^2o0만u1E#rZ_`c!D28C2aOMv𾾠i+6H^Cx{,Pm[TGz o5n Upi`cmL¾\yn8^b .\/vskR9ߠpÉLA=ѡA8\d (BQY̖\uFd}m` 3r\45}=F?uV`F WDta@ 0 u{ j[>E QDoėM#A׈W`F\kD4kΚR;]0s&vHEP AIAz'pCx7b2gI&}ozQ^"cxf4$exhWrXTX%%a٩P[T_"~|5h|5QFqD[LC|d=hu~MR?9=aYA꼨6VC]]1vVD67 }aVjl*!s)V5xp`qvu3->d4{Y5?IeKUqs%tlU P;^lPb"bV g wM[v`_ZQ ZNw@Xahd)_Ƌ\!tĉ@ QdPp8jD"z!Yrm2ӻD[q䧈ѭVe)D/lEC;iJl5|AIp櫜NXvFM_:=8, Iwhrڪg s$ˤ`RDYބw.-RzݾG@ "Y00ʿK~>nw endstream endobj 108 0 obj << /Length1 1630 /Length2 9101 /Length3 0 /Length 9941 /Filter /FlateDecode >> stream xڭue\6R""CwKw4H 00 3tKwHwtw4HII{|:g׺aQ䐶Nn)lj*sh@Lf~,Y8ș:E@  bBap_?.3 Cav@#:P8X 0 `VP(!@)hA@s(5#4` @09bp; !VpS hG%`p裇#HE8 1u:X:ɍ=壧OKa4)8]2,@1#  Gb p) D iL_}K0h_^-9xxs;<A" n5 ?;XvX-T);9s"$&k_.>;#jj+7 @?."GEQHC|%-7Bȃ\ sk)qVٵ!@8>j8x#z(x0kvdLH <Bt,7-jmF7v{T_d4!(`Z5ֳu\_dZ4F6%wQ67ll[]|mX;oW@U/("%Y;YR]J<頠S ÉX!_7#pz;Ά|WcL~U*oGiF!'1h닦")S/TAVk5@-T> 4ƍ:'$@9ڹ@26\\n&LcfbH=S|jw@ j9n)E9Ԧ.?Ϭ>3ʚ v^`|9["xPӬts5־\dś iE:LTaC(;O-2%10eJ(m/Q7r:Iڨ٫)vl-:A+,Ibv%@(}?XzV%N V;7J?Qq3'~OA?(3á |aҬKW_IQzyVsjSc$rD LL3”[m'RAU:kv %N ]ҨwGV`#ó6)L@ #&eCnuȥ=v 嫋JXP9U 9IVÖP^)&-P2gn1ò8-ՆB;gy0;7B@hqX0s GTrs@߮$#-F='cW +QS57EE ަ-RA+$csѵ&槾X%8C.HSB{ҐOjʔ1>GEƓ~[咀XN<5c']/. n.R0 *?;؈w`/&2J/RI(tPziPB$[Mt5}]Ei"P*]-h\PcB6j5ܰt P:yDIvIVY4c>ݹ| }V>Z2$b *~:'9!Wq=&D] 3@G֟{J!!eY|z/$PJ3ISg'X9K)[>t;.26B+93Xٙn&tJ]QVE&˛Qm@&6!1G ن8>uOȘIU48m2qMz=qU{s e4Ρ9A:1 Ѵk3~gi߈~#9ٔ:Эb+y& kG]AC=J.O`Fݝu4),(yħ͘קaHG$K?lirBmMժ_2(K kDևBľ^a_7i@pvSNk.3*0-+eP06VXOZ;^텈;F"k󦢽?w L}\j~X#gv@smM,gQ~`W-W\ѕ߅Y*uJBy%W}x:^Sm (K&>[P n&K8NCjgQeOw(;;|v_R߾pQ;fP/+ kNvr+#+ߏNm+JX%jrj̴iM supQ.e&xVnE:BBG@;*Tk_hxu?ԡ:_7ָ"Cnx1$+8[;M}KKݛ,l i 5ͩ«$޹ %~6)uftm Z,4^8#RKGXվW[0*.uAe\)/F3bl,I>..@O WdkO& yqc5mGȏvF>EbLm`7K(M}:!$R\k5C$'|;! 3tp>i?>:ؒ|8F܈46(сs<ZUVZtjŀ?KP+f>Ʀ ϻ<3 _Z108$+(78~X48".%-MɂM>"YדAСoR11'[%K^h{ߓhG)>zNhP8?%7Fh2QWOrC xz{̆0s@f?mK՜lE4 xX%R: *NcF ZtX=}V`i@Q SY!Shtb?TS]J)ցY#kR8F ThiO`g,%#--/>o;W(7 㲳̭O+S.^栻Ә-z}QeNiB' ix 3EƥHXeM_ :ʣ-byYV*vsa*:hz.P#DTο H ֤䙿!Z7pfm0"G٨bd9/w&Vd::_̿v6=vz!!30ze(HL`(Z//$9KUk-+xv,UHӎu]Mp6(xy\=-]z#vg=ƙoS;l1^uṠ:[: DH83r9OO񦴔UrQ(EtL>]|_Zam%R}!.r럫.Iv cv/ih`$^Ԩ%oz6qSBR fOtA_W8`H xXP.W$t6MLHOkJoON^U\7(/[4d+%Pٺ.  _8~"@r !,/0;) OgUB ?a>P/U9#;q0#髗~1ǒI>e}*ido,36If8lyMTw[){*="6y_鲼JIkF7/Q;}dHaqU򲒒D~ey!Q=qMM) ju)FO*R1bFn+`@elx%_ӿ|yE5 ;6qeLxoa_0}-.kv-;ao; v^~{"O/M}fF xf0݇&d50{%:o`Ϡ2)zӃyT+P_iQ*Wk&˒pGj624jR /E62荌t,uH iSחo+Bn(uX g+ߐA9\v.&.g"Y_nG0X {+zY4ފ$O*3*1ND2=U:16"psN<)4;>띞@] vWO_1dc `͐Pؐ~IFǺy&e!j! ,ZeF?|t^U[|B3tFa ZbgA;V ےZx^ 74#zCMuF^Nߘ0t 6 ENѷ`h=e }{?MZnq>"q6ZCPv&US(ar Th»jxMf#8-2Ў̓LO)W[J磝@hj|~,wymķ4I0D{v !'G~{ҝ@&Y`^4J佃}R)vЂpϡ/@ޱ&;w~ ĢA,(TG; 1~*lZ־_W3"Dm?iN)]KDBE΄#ǴH'*~ڿb¯RY أeQC+J-H.{3),s>7^i+~\ypt1Ur[]Lkx'QXfwT ,gsoNռodJH举Au&HXC%7xs7fapP/r)5ec`D$&Mae4~IPs_iqz^xhxJU>*Îc]Eβ2oub6s9Jl:bSKWzݷG7 tud\"sNko239'(Hq"])q92 ,A{b1l8V>oMh gWHťW%5!9i^;JQ z$/I9֓M얨!76|~RPWA*ѼWBސ!xM|azQE^尧rͳJ}`Rg_YcVLrԆIvqž%{@N0Y)X,"o]GG'ݫ '91Oe N yu82b>#P ̀(rJ/lY*PضH{q=1#[2WV/bZx Ÿ<cC~ YR㤼U/@r>$zVK Z"A1R{T@gF!'W~FE.ԄIcY+cQ?H2= 'ElZF/y__' 8Ͽl#I(jfL%IٔtnN6l*+k OsRa%yl*G8\tMS8:%+LiLbX)P̄D¦Ъ'KH'SŹ&C^ݯNwCY_RNOu3;we7b OR7ŀ7:! WIy,͔WR^V׬brmZȼ1 *+;ߪ[Ӱb'kێb%"ړ 8,ݻgsg{Cz9E\-~w{-rivuV;]y8U9) rf9UNd=/XZGc|%O@@/sW~>wSM;m Ϣ"SVH/f@6i웇Rbiy(_e2ֱMdQ"4@ Mv ?Yͥ3:,ķߧ1Pyz&,

x*3ֹ^#h' ~!UzB+;d/tm[Vy*~2 T3 )>zdNF[lǟ ipQ"_$+YZ4ݍF.il_Gl}_jV=W-8ECccO?K'piHI5M pQ=4wm6\ ]l'jIks9>tޏ"y|ll2DNS)6?)¹{¾TeQLPM3Qc+:_۝e5ڥ-ҀywZ~aYR5لOq%S fŎ~ɫМ[0D. endstream endobj 110 0 obj << /Length1 1620 /Length2 14116 /Length3 0 /Length 14957 /Filter /FlateDecode >> stream xڭweT\ۖ54 .[p (5H .݂ۗ{xݿG8{͵撹Pj0Y؛&6fV~^Ibj cBpB@`ISH6>>>d*A/_.3""AV`W C?k d H)he2@0O.f s"v,XZsf% 08;A€@ FrX9!f.niwAN<`T!N OVUI 6[7w?4P) !2,@r!sp]3l N@+S' [?M_}SG5 @[Kfd6?9!r[,m9=v b@DמS=`DfQI ''5O{ZVww @%2/v [.=uRhbk?Vac, rZ KS?ۮ:ق?=N+a ࿆w,*J ^OM 'Q_,/&6V+ןcq7&bZr2H-1SşM`s'?}4t#/ۛ |IHTfJv;iWwmq8!ScS:؎^Y:@%\!CV,)oYw+ܣ+NTr#OK f)> ”ms=eTPyO@kԀN;$@p{E<ɴotĻ`7!;<፯CAZ{7j(ؿ~ wFpq&*DGj*K %a=_/ 7}ϗ^)^a8jI&!F~-l߫33ML'a _W~<oTQNj+cPhKFC46Bյ1cy0᚞i4~rʍ6&B[2bF:&_Ҡ\lb^q+H= t`ً̥]kxwѩ[*0Z? kTL>nR9>*һkEj@ڻ@>!voy=Ϡp>CxK\%!J8}ʀ+=Xִ4J }+>8ո r+$CLGD ?E;=2uW{ +Am 7F́f++#tQ80]Fk}ݮ1ޚ^ϊl6| v 62odiyr-ckRЈZ"HW03Eee#U^*aZ ScE 5qkToR2W˨)sDc%S[P&ulh nH~zpKVʜw 6FX>54,Xdd2Tɳrx(ݘu,˥~4Z8_f,ND\0VBֲUr:=O"odeFvW2Q5ycDf]*5f'#Ϧ씣9y`$S#)˸;I5WR" LܚEيQr0UudPrqbF`n;(/g7k^ʹ wZShGre;)p P=E3ЕYiUXo\ӏ']3LQBvxX`9/ʓh@ L/#+X(V1t3Ak*9,uڠKK%{lr͛oI&fUo (j$G t6Saֆg:CgBaPŏB]{a hSr&3lmYZe<4:FGYɚqKjtd(){.q/%Xia(OZf&tx$)Bi!7k!Uʥj=s }+_ojV-)Ǽj1r46 IB!WC$aIzIt:ulv.bx y@iS.dF4!lO<<HKF\4ʔ}+=jNw9z-ؿKU-@\ll,*/'by\&mrRo t_Dd"j]g/"0#j;rgY]X}/81JΜ՚lxqz^|α;pVGV+c|ζ5MC33Xt6.rϧ;<ZLid >ëě[2fg/ehs+[,Ѭ2`6٦:zl:)f Q*I [QbT]5-~ D yz6WgZ3i!o$œNƚ4ИYk153x^% )C0%ab>8Λim]rPoD0-&M!5b m^ eabJj rdqa 0d3wmȥֻZR*6͔ƯfE/?ϫ 48 4^ a~yN ԉ')}Hg:iq4C&?DFrXoUs`q3( ˖q&1$;k?LëiZ)7FL5Tmu2]yR׾|3grb(ٹN&.ݭ-. EoD5sc p_rmHP3RS4yJ!y)hO)*yRܳhX'YhϷB°8^2q\;5ɣv<~H~0iV#6(<a?ş`SC}rM9<?-զI#޳,;݊ -< ?np{W1=M=Mfʙ Αa!asQHri5Q6fV< x22ݣzcfTVǧS'a@Hd]Բ7^&gr%"xo dw ycp7nx-}l_9zu&: @Ť S:1i0#sGA+޻}:K A8r+̡b|hi6q-?Ȭ6jbt_ks5e.Jw:(ly5I~u=n(n,,66CFߎ|A.Q]D'KF3NLI4&n@!JsSv$rq53P+f6FJo Le臤z h'^ak-LrဵFg\òpx>Gkp!eѤKtI=1cT%R c VO>O6f4ES^LD}#51!zGu%8mh q,s)v:5huƙb:uy'\mCc<(w`pqfv>> ?m=$Ͳq6VS15N賐OHpkEaT .UX϶s:dRH$Xi|D=dF8 ɶĦ O VQ705WÛJ眛È^~z>\7Sv­:Ef! pjs;j\PCwѨC HQ4eȺ_BYvE'DMJo!NaȢkp"=E*Y3rZЀe.(f6J?ȈB4FLݷYsR1Ÿq⾳qLh96g"aӄ,"j(5̝s!;'әdxaؕ>j9h;yj42 U]ل8̣. ~wKXX[8x}e=-:'s4HHx%(2]>5쎜se\JOs-Gr_1QHcj?R P:oQ('-FJ\q+SO$4cc}Za$ EG#iAwFt: /h9T9G Z.|D6|{6楱! ?d.Alx9_00AG=?ِm{|u>SeBKRm!Y1 yx 8'd.8ˡ⦻4@-mKer!}>,ywұY-'a%5Vtȭd ؅~8$ =SkpqD B>}A7>.K>r:f{l$<3#knr[wx~Y1d\}{  lwvXc7+i%}B0KYL\bƿsQ;i;ԽYyQRgFԣ O +j \K">8{t|)q?}0Ddke%uşL{*$&hL=ک%{wW"ϏЪ+!Ŭ:|jD0lYbz}! X OdQlxZO9?F؍%vᱠ0KТB$(0G+׺b6 }ʃB #7sn?I;%9z2;gn4`3($~^$Zۓ Iq9?8iۣ;i^}?a^J_v)f|} ?ѿg]e2Ș2su<)@4u@kiѐv>-%2\P7j (RK4yɍa:ttpvuVOq劒q`AOpPL=]dg~-2gVe$>zUBϙ\41*kj-50Uf )WA(|a@$r\h ڜٚ$Axxo_Lݲ~:U *CN]E:*m@W*xc;>r p7z%3j"cߘlVxsXYx?U%{QzZV'#Dl5-S(Օܻ&K/^*~}!5W 2.Uī,&\Y-ڈRzA%֔ی4wYwc =Ri0)F=;CMe QsA-s P]umqݶ"!+Y*7QBݪ{* Bu35%{֟(8V8@3/]mm}C,+Έ>>:u93u,+hl <\L9^ӄxCfO佌Fi;Ʃ-nC/ {I&㜵Lef2OʱT"ճaߥ@eKHtDgMOVƴOXCUDv(D:OMZVQCE9IHpBĝf~"?+jLtx=KcN;OnEi?"_a`g\@B1$Qn&sfS{/pkG)'.4̴4s܀$ZҴK#Zo͉08u3-D#fEnB3BfIV<^idC=z F_HKysw3ȏ )c$)Bj1zm#M?l$B:42< + X:ߑ7j Y"`TA5:Xm"璋[\A~`f.j^AqT0lκoIx D;4e7nL"2K[lE )e_gs~oZGG|q盭CoMdBP|~a@#F}fJ뫆pD?(|Sui2̱MSCtM`E@n6u$,e@7(as* 2#Jf5Mv7&*hԽi5}{ ^c,F$}1U]6^y/|n'Dl/3,;6"[g&lXEc &Je\ߢ*8#ZE|Np9G4傆h۷* 8EoqQdd L-4aFV RB\yɭ/Hg'D/5p"JcXGG bCqw6Z0 V $*"tt҆:3nG#k8%=H t'Uf"&92{r^U(:6Orf|j15_O˰9;dm#cEa2Nn{vR#*k x^eK VOmh첲2~02w^n9Ydїڔ]dǷ1]A[P>-(#I7 {~snd [jml>YE^m&izCn=r ^| td*MeZ 1\e֔wYX2j5kugpT( v zs >#>XZCSzVy$GR0!jFṊ9a>MJE­/đ/kn .$;FIzWlgOyޯl"6/gJ_w5'Zi,%ݽURCZQ~t`'*[m5+jX4C߂q'zf0L4x7~SjιŤD"n$V)*1l!P*pq^U hO[^Ck+;F*1r2y.Bp,%kHmD)a7o{rBRbܪ=_ pÏPDaUZkGH6*0L$B^\ b ->ѥ!ېtL|r~ꛕQ`6Be(J:ds*K9X6r747]c&ؐI<G֝5C6Z4% "7-kcV%.؍  з}a EUd."SvawUOUf2rpyizRv~6IB5BiP+{<İYC56("ʼnCk͞eD,Ԕ/zj`TE ߦ{ȴ0vݤy$y*P$b5-o%PpbK[ Tj &rkg L}) w$LD} AۓsJ1mwk)j6aM2I%nFJԝ`;iPŴ ,Z};Z{T'.mN`RRFw2#Tu9WD'n~}3nnce[- ::6MR:>px>'<'i4 grYF)ey]ߔ*ox,۵Σ$H5pg%Xc- TQLz5QkcӶbӊyΞ|&ً(`(;ցˏqFQeUUD~+QSI6';]u'Nvz/HdkBm#<ӣ}K~ oJ5cYq6ۢԵ.ByTON7# v9`5מgAbJyg LYoWIe?wWȴQ2e(6A[3D%|US=_bV3N 6uBNBI|vrߴ*,65bGKu-hV`޵meA@*".O+hHqt Զ +﨏 6\.VrNH Cm%EOBN馞pQ (X}6e[4mzsgg :nF$n1sEJ3-B%~X'zuMB~⳱PbSWȪd`޵d|_l!Y-űHŞwS۪9U:5&pI!n5-=ۼLu;(Ua=s39ۑ3p*j4;jjHWeQLMޮ +vr4 $yo>b4=GHa$E;(DSw:lF5)7Lz]$;qEJif5haUc*t8f큁ωO՚|UCe4Yx_{{;*ԲsnVy>\ѝCojߺ>2u*.=A{jމZþp) Gfd#ыFa4H@,>sZbڵDOO<,|\xnYwRIdQcaeNcBڃ݊1S eR gkZe kBW0sEnߩwU?D \q@]z1_sz,J@{xW1#DhRջK`yV}U>ȣ/F?D`9ըΣqht6m4\A nj ފp0զU 5qBY< xx,㍮Ld7.޵+ }ee((6Qޒ159`5|=T55ڢzrpZ4gԘJ7+h^W9qD^vKgqEŁ="j.)sZck X$R*  F␾0>.,q7I> Ƞ62>dWW‰֫3Qd2nW&+G+2h>n b MeLѓ{2ݡ6$^ڮP'=zE@@A]?N$]fу y@=&#sZ fTv"&?V+wK|u&=%@F2Fm;H3 p S`E+I 1;T$ "^iR%Q?wCoUuS@!h(啕p r'Or;%7! cm:2\$KdkcO%r<;fz+o`i3d8͜#l AiRz_5^쯄G"X2WA{UKZ3}rI!= 2b .p2h5[j{*ѡiDsa8,nQI~K v<賉jXf;"gWM$*Һwu) a|Ԛ̈́Ne$$ !s0TU/b䠅 ֈNa.dPU GXF MOq(PGw" F~ (w҈tZwl <;iبp0y1y|A]ݩh)),vfw*N9gzuȥZ@d\gN*i@ EdT(.0jpJ~}OP^PΓIһi`TEZ .vmZzMM_{=pO1wJz)7̩%jeڰ2iAA밁$zЗZfjKٚ̂]__V3}9db!.wE冶x(`T&*ui\OC%ay/ILb\ {TGG`eXz,M8$x>hN.2*|I."]&ӬǥtRd~xP@%2qG]F\{6\>l:-Kiؾ|9Ƙ,CEڴ9f2CsL,ݳQ56%7f At4d ݙvb., ݵ5ovSizuꮄh:$4+&>7cUCjlH3iz XS_-\k_pzF +OvHI~ dOFi7KmGO*3Gr^b8gdJ׻I[̠nm}' *u捵mPD`0sɛIoq KS.V [B,l@$ pЁnkA"ItQ_E mQi DVt F4Z8;4N|2<7m2U [d_#V|z2S>yBj h\!zav PGi?*)t̂e(aGmSop?\lw M#pR"sܺݝwT8 55H>\--4V;~IW8>8:bT$WoAu7eݾJ(us<@gFc[۾{U6'AT ]L)euTM_oE} ^v0HBh4`G~PNQsϼ~p "C&,:VjQlMG~xаJ)t"/Ճ{rurdr ;-iyԂa07kE;Ę i˳g,wí݉?CS^=_t<7 f37faeW﨧׈`l& 4ì L_&y> gdӎt;9 ~L:YYFhVzn!Er2-cTdi``[ g詛 endstream endobj 120 0 obj << /Author()/Title()/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfTeX-1.40.13)/Keywords() /CreationDate (D:20130628110454-04'00') /ModDate (D:20130628110454-04'00') /Trapped /False /PTEX.Fullbanner (This is pdfTeX, Version 3.1415926-2.4-1.40.13 (TeX Live 2012/Debian) kpathsea version 6.1.0) >> endobj 2 0 obj << /Type /ObjStm /N 99 /First 802 /Length 3456 /Filter /FlateDecode >> stream x[isF_1M 90Gʕ,Y|^IT[ I!@A PBl˦ z|=(X"3LfL:&Cg *dwEENs"dW(\9FL)nLX&d%}$)ӪLh-GpU8-"h">bk)GQoȉ 0D ,5 &j B{򆴌 7eJ Aڤ wR Ԗ!K#I h?z#Ɵ{4Wi#[짟FYV9{2;u~ZÇ#~:au|nWI^M!G0rE4-/I?*>w!U:;-OGS1W au:jeILU_H }vV'e|}լj,&qRSM+}=GF1W WiB4_Y\MCyI!bNyLs^B6uY/gE\ήxVȓ|u˲54"PHPZh#J-d (R(|e[(U*Y,Q&RQ(#@\SZRiQ]Sݡk࿽:{O W(~'Hp@GzH>Wl K)]H:WJW{2_#Mm/G)XmV-l\C>ʴu@:H2:eA`QU>-H"*4R!2mĺBc:٤arvTb!;}ꖽQi|`dՔ^ӘekMi wwtґI:Z#gt-iHV ,FLF+8i\VEϳ$͓Z P' |dZ!yxiju+RkL|}:^~=uRb-mI.G;6q6pi!Q ji $H5|""$ B-a8TPr-֘a-s9<σ8ͪ8q~ n[75j Q Z;vQ&?<yR},@hota`"ug*ijk!6ϝ0Vv.N@26jJ TVJt`Ff&{GCdqs֨d]$#M?@gɎ0+Wm-lHp:"=;*ɴ3:LvH|ӱSUUtCOVCIH m}MCJDNΦLMthHPxD41DO77k j *HP{:Wȃ]HYwvOataYwO}k:ѡh:[h}D'[QfJ|mt~AfKIo-k;(u>wB`>n VZ(;_WK4w ӥMd:.( Kdv_btC@ږm{CAYMiMl.$P7%ͳm̪Ft_d ZpT%WAഽ`r4y0Jh4Oϛջ( zSt| Ͷ%C,́)М3?c> )3~s^k~i1%.V}`櫓ZZՔ7V058w1/7&6ݻ{[dZv#}X|7vxaK~V2h.1.2ٰIeq @x,9?O?&%r}pci׭M gWgI9M/D$ϭW]4xZ>O3&e1K|yl7o_cOEaXlM^Ia6cքMHՋčW Vx5Cq(Sw<ס7x7 a VV=oh[þ7:>)3 A96$%Am!^@'sBj l^[k 5Aw75M>B`32I6?vv QտƁFy<;ՓW/&XkCV`YKgWA-Yk]ZrJz8? 재A棾E 7 Ċ E֣$zUVVVلZQvW=hbت z֣>Ukyȿ=s= <45AD2E2EA7D7F7AC38CC6C9E4BB82059>] /Length 296 /Filter /FlateDecode >> stream xҹ2PsBb b B,{oaFGPxCSx@cRR?79抈:Dy@YPJ!" ؆28lpBBx.f`ZT"6TVAPellhJj/ԪRvuP FXVz 0 hUC1A;t@'K%ykLL l,<,\D\jQieZQ ?XTp )8sϻ/*a* endstream endobj startxref 129745 %%EOF gplots/inst/doc/venn.Rnw0000644000175100001440000000465212677006672015004 0ustar hornikusers\documentclass[a4paper]{article} %\VignetteIndexEntry{Venn Diagrams with gplots} \title{Venn Diagrams with \texttt{gplots}} \author{Steffen M{\"{o}}ller} \begin{document} \maketitle Venn diagrams\footnote{http://en.wikipedia.org/wiki/Venn\_diagram} allow for a quick overview on the number of elements that multiple sets share. And when those elements are representing traits of real objects, like observations in biomedical sciences/marketing/..., then this may direct researchers to further investigations/decisions. The {\tt gplots} package provides Venn diagrams for up to five sets. The R code to produce the diagrams is not complicated. The plot function behaves alwas the same, depending only on the number of overlapping circles to draw. Its input is a table that is produced by another function. The function {\tt venn()} calls one after the other and is the only one to be seen by the user. The values shown are returned invisibly. The {\tt venn()} function accepts either a list of sets as an argument, or it takes a binary matrix, one column per set, indicating for every element, one per row, the membership with every set. The common form with overlapping circles only works with up to three sets, as seen here: \begin{center} <>= library(gplots) venn( list(A=1:5,B=4:6,C=c(4,8:10)) ) @ \end{center} The names of columns or the list elements are the set names. To squeeze extra circles in, those circles need to become ellipses. This works for four sets \begin{center} <>= v.table<-venn( list(A=1:5,B=4:6,C=c(4,8:10),D=c(4:12)) ) print(v.table) @ \end{center} and maybe even more impressively also for five. \begin{center} <>= venn( list(A=1:5,B=4:6,C=c(4,8:10),D=c(4:12),E=c(2,4,6:9)) ) @ \end{center} The man page of {\it venn()} lists options to change the appearance of the plots, e.g., the names of the sets may be omitted and sizes changed. However, there is ample of opportunity to extend the functionality of this package. To mind come \begin{itemize} \item more dimensions (next) \item colors \item variation of size of circles with the number of members the set has \item density plot rather than numbers, identification of individual entries \end{itemize} The prime personal interest is more in the increase of dimensions. Please send patches for features you are most interested in. \end{document} gplots/inst/doc/venn.pdf0000644000175100001440000041676112677006672015017 0ustar hornikusers%PDF-1.4 % 4 0 obj << /Length 1670 /Filter /FlateDecode >> stream xڝXKFWR=f"R6R+e&c^q*5i.0sw~-8Щ2:v)y$S&K&5O밡ka(en]e^y?~_ug r'&!5X8XDelXy/:ܠ-J)jAR!B+be𔁠e ;[gX: gަc_&Cixb"ۢ=aWsW=ߊ\^9 B/8 Y wFFb} 碰dw᪚/$ _7{ٱ"巽<DO8(Qԏ˚ȟpA p zev ]7RtAd< gƨ ڦg=g%{uY:)!x"Ӗ5L1Xv9ju; εsb: T命w ְ(EW]%d~C~r 9{ov%UJV6xU*|\y47Իr6@!BMnc7T${bA[^AZh#MnCWG9%JDqdr-ƻ$X$2.hz@ʹ3lP1O҉)H%i Z.)orAN$ qÔC8I AtKŠE`N)tZ?Aα'špT Ğpj(/4hw@crGAG^~mZ)H8|401/x좟|RϿ+8" ތO0@}seX﷉ ĕ^p~W+LYwϲ^,leBhR>u5<@>:LYt/هOQMR< .DZڦe? ؔm,fZ^}i)kW0K*TE9,R(Jr^ Mso6Uw|*e7M6Q*Sg}0Z%6+n endstream endobj 3 0 obj << /Type /Page /Contents 4 0 R /Resources 2 0 R /MediaBox [0 0 595.276 841.89] /Parent 14 0 R >> endobj 2 0 obj << /Font << /F35 5 0 R /F40 6 0 R /F20 7 0 R /F8 8 0 R /F7 9 0 R /F48 10 0 R /F50 11 0 R /F22 12 0 R /F21 13 0 R >> /ProcSet [ /PDF /Text ] >> endobj 17 0 obj << /Length 684 /Filter /FlateDecode >> stream xڵVMo0 W6P+$+ hXo|zHS mv~Hn #Q")HAI&`c@̂n4jIL|A0FWO5j܀" 2Ye|(% n!b#UX.wW}8+86L>"@0H.ӗp(8 "m> endobj 1 0 obj << /Type /XObject /Subtype /Form /FormType 1 /PTEX.FileName (./venn-001.pdf) /PTEX.PageNumber 1 /PTEX.InfoDict 18 0 R /BBox [0 0 432 432] /Resources << /ProcSet [ /PDF /Text ] /Font << /F2 19 0 R>> /ExtGState << >>/ColorSpace << /sRGB 20 0 R >>>> /Length 16161 /Filter /FlateDecode >> stream x-˒MYתLSݐ!Ȣ$HjCqu(lg3vκ5b|Qԟ32~k>گ?*_Ο)?_~j|VGW/?oZ?O^/=u Wη HeH7٥7EY˟x^鹠_~_՟w=ußoW z~_{@%_q[z i\ߊK~-LKOr~Q}z~/u}ߍк75| [u?ݯ}?+甎J:ϧuwC?S_{⴩gV,C"{uм_}Zq֯:~9>ԭA)qֽA&֛O~>t74u劉u^5ozt/=q#C/5^>, N땮?ⲧ4gi<B:ǧO?4W@ZDžY8>+ɐnnQB-uУIG0`|Y]zV>9t\X/_hOhЯ;uB|Aӵ@s:fcZӼ4wP !4w Y0=}:_g6>hOM7=z1?7/ç{:C|s:ǖ|>AtO>1LSG{z<^~>~"4OGyOWjB-\6u< 8˶O tO O~BkBBCsB=_31~~Y,^hXNh>o󟚯?ߟ\/ԧW< O}0=_>Ost?b}i7>M̡|J|}}}^{׿bz|/q̧ c>h|~}.gXO|-ұ~w/tܿ?>>1/B/g-O٧17흱 t?cW:^whj^ BHWjϣ8W4J ;z$t翎4T{-ݤ})'/iTz7>>.qo)tqw0J?>\/Ux=+Ѱt~xԓ1nҕzǣhy}\Gyw,,tc*Cv Kq|B;Xhs<!oz wG ?_ES1niM'1Gx׸ߎxL|44?QxHϺ_MU\|ߏǟo8^yAs4gk?Vh6;5kj/?ϷOb?0S=ϗgsont]>1чC8Ϸ<A8?7+>uSsäuO|BGӜ_6j.\zZ/1n++М6b>@#k xǢ}=CXu">ذ _i<"0pV~^~ϯ}~la?C URy~i|xy~7cOUL1-p|XHǴkbOk?i؏M/9~ӱM+`>iHwXO_֡@7S~iݏo?xqǴ/kis?tw>=qz0`Ŭ &Ƙv~c{<ױ eL{S:ƻ_Q9.7|SO/o nL]zPGa{&Sxн@#0ކ~AƇЃJ#~o#MХ?:áxAhqVO#1>G"#{$&B)߷냾9F|ys}Sb|m诡GzJGؙߏ.wK#p=Ј'Oou3֤w/BG{߄n: Y? ӣIЅ LUxh㋯sL[6t{.o|:ֳM{|gh'^Cxa*oZfȷ<oYt̿z%tWНh>OGe?糘ţ1MW&٧+|O~ 4Ww{ бͿ%ҋl瑎F][E׿`=]{?ט?,˺"L9-S+zvz,UkGi؟V=}aWkw?k-n/Ac}+t#^Rc=jׅo|7e:wVn:Loz GW\~~~zQil<1];tW_`ZSLSo0e[?1 |ٟZ|~O#~Bq~#wAg3 ߦ񢄮s_44 f.x$kaq0?34q׸==<[ikh|yq>jQ3~C]:|X-/Cwk?W5߆|^u}kxTB][߇Fn?>WB ]?Tz(xSu c%Byp=Z+z1ӫ֋Ch z#gkGha^c\u^2ۡ=롵z>475ºKzn~3~"4oԌ7p?Rdz_ x3?O~(K~>opZB3Zx ){ў#>P~rzxYt5'ǵ_ 9z\b\xBkZS|_%o~?t#/=O ol#By3^:Ώj!'1~ͮx3)u3z^ܯx/_b ?xPh/RƓB~2Z*+tT>,t~?iOC-\Ch]~%jYМ?ұ "_y:jW)o|~HG>v7̗Bzš|o/gZh~6Uf{=}ǫӡUq{>>ߟyϿd{B?o/ORוGEғo^~Gzue@sx_ug}i@PMDa(þ/_)470Oo痮R'Z7V?z8?W+4a~ߌp~~2̏>\~4̯UZmMp_.4׋OtX ?Bӯ|H| 7' ПJ%~J&1~Xy[34kw_闥34􃆦ߖ~>\Ͻ]G =_54E{>GEˆ~跍Bq>N]G7+j?x¡ǧ8GGomCOScs=5ߓ߹/~_c?YcC/';4{?9|n~<gccG^zg*%?|hqB@Ǐ~{_GؿYMHxwȟeo|#Dϧ|K O>_j1"DFiށ|yЯc> Ih?QBs<$6J8Bz_E08#" J#g-̷wDI/XDZȼd2ia2 yO]̏"U?|W=hN~4ƯX&PŃ4X@Io!idhqH~#ؓЯ??Ϭ7'gxb~7\66G3杋Хj'^T [k<^/8y`&/u7o_CDzjG`_HI7ƒHnH.H~"z""]V$eO"]@B HU>t IC_D:!҅J$8'.+|B7H"e}O"vtX/"]IBQHoH"euO"HG=D:.&tX!amf鲶'kE7>H"ҁ"=HD:鰲_D:CʞD:]D:@."]W@!ҁ]D:"V!SIMt6&a]tX!a]tt鈰CHw@."E#W.z^D:鰪_D:ŋHxBHo\*'t"ҁV^D:!#!eMO"ztX/"H=/"{tT"CHGw"=""tYѓH"#ドt鰢CGz_D:"t"~I=.H|"utYϓH"tX!CϋHG=DP$ҁr_D:25z^D(鲚'E#q鰚C!CrtECZ"=ttX!a-td."=\&&`C_DFh8 m_DzhTwb7+EJ~鰒Cn޴B4D::j;D::En1H=."=}@^Dz"="1]Dzc(<"CH0Ɍ{>H~_Dzy(Cc"u"=&w"=tH5=D:11H=Ew:ƓHD.ƊIGf_Dz|Dz1o"="H7^OgReHoDzj"q}DPzo"a"?Dzc$Qq魑vFqDz,n""y(B"DzEu'hIoa;HH\o$^E Htx5ߛHHkMWI&+>xn鵑tQDz|&++$.*o#EI$"o"DzyqH/Veh5^L"`I"`a} #Dziy܄ҾB"-R+ՎDOBP\$r}q;*}Ǜ s|qW9q>>NhSMx:t!eN"=eqt!ptX/"y"{GE"VHP^HG("#!,H]."H]."]$CqtX/"=ttj/"=t>F_Dz~t/"=BstX/"VH! H!a}~>DBI:'_DRIWQD:!Crt.!ae~+EGj么КoI~"+:I#u"j IDze"y=&y_HX"P$+]I7^Y(z&+ $áu/t#HM?"+ $++x% 3IWXC^_&ŇH`Dz*ʊIWӓHDzE o"rDz7DamHD*$^>_^/~%DwzIy"|އHg{8D:!ٞvtC""ؒHg8D:!ٟvtC"HxptHxrt7HxttWHxvtwHxxtHxztHx|tlHx~tHo"Ms8D:Cs9D:CqDzD:Cs>=DIs>>D:Cs>?D:Cs=pt!9"CsrtgΉ\"Cs=ut!E8&!ҹ;D:׃Hz\O"]$ҹ=D:׫Hz\"Cs|tnǬt;f߳n"CstnǬt'H~#tGH~%tgH~'t퇒H~)tH~+tǒH~-tH~/tH~1t'H~3tGH~5tgH~7t퇓H~9tH~;tǓH~=tH~?tHW tHW!t#HW"t3HW#tCHW$tSHW%tcHW&tsHW'tŃHW(tœHW)tţHW*tųHW+tÒHW,tӒHW-tHW.tHW/tHW0tHW1t#HW2t3HW3tCHW4tSHW5tcHW6tsHW7tŃHW8tœHW9tţHW:tųHW;tÓHWtHW?tHW tHW!t#HW"t3HW#tMI+_D)I+ߒD1I+_D9I+ߓDAI+_DII+ߔDQI+_DYI+ߕDaI+_DiI+ߖDqI+_DyI+ߗDI+_DI+ߘDI+_DI+ߙDI+_DI+ߚDI+_DIk#DI+_DI+ߜDIkc+&W; rл]?ǯ|u>+"ѨH_"~CӏptN?!E&N?!8D:Hc"~Cqt=N?!9D:$H"~CO"~CO"~CӏstuN?!9D:@H_U#Lot&W:DIttN!:D:VHk"~CutN!қh"~CӯvtN!;D:rH t"⑉tN?!;D:H_&.a#&.b3&.cC&.dS&.ec&.fs&DL&.h&.i&.j&.k&.l&.m&.n&.o1N"]~$7N"]~$WN"]~$wN"]~$N"]~$N"]~$N"]~$N"]~$O"]~$7O"]~$WO"]~$wO"]~$O"]~$ҕHO"L˯DIDx$eO"] ;Ќ{GϓKE Q3 KuBʋaK{GRH.q?]a!RԽ@F)2iw<~; $R\q-tЌH,tЪ uБQڰKU+D̡F,fh j e(}HGcVE;ۡ~+ +Nw\M;G ]a&vE(;= Jz{Dž㫼ѽzJ[U}G=+4h}h7Rݎ^QZ5X4u-+,ayU?pC7W$]:D;tk2^jF<0P@F; XCgŨ8W9Jqgpt\'hOg{~cLhg|2|0||Kxs: o;=y@WG "_KZOQK7/O#Ҭ`||Fg{[Θ.j8[ PightFKbw'G+gz?pzxg 43ƜoڣSxMEh389LZ9?L+*K]TÞhSW( ZZixg:4dE ttLA*Ǜ\2M8p>.{`{/Jtt>\PxC!gz;[9.[Ώxv~17oT]ߪ{U9b?MD?b=w=l?;ˑpwPhU~0Kzrw5+`ō nuŌߴ)Swr?Wg0~u wPn?^֐x^D>P0Jg ĉUp}w*Ng] JmQ?It^#~DJOAo>;D2,( H7jjsR\м/š+lx^^ !4choeB/~Ka;aTbݸ~\Oa wb #!Lij(S01M3:Vc=ScaC:R ? >ұ^-MS= gpga?;xb$+ -3SxDV,RۛZ_x{y8x0Tz{Gd<Mj$ÊCBz{|x1sg I=8c{@yBWWvWL;/G>hFcz ݲ"  wVxam)?*C,kFhק8~-Drq*0$T2Qay9`EiW/7,o*K%./ߏ5~>DRV=LDd W8abrE UTaeebD3WuVP[Մ*&"Ta#&7+Tš /.9o!Q2-rVq=ϟdofmBDφ+4H§+VEf"EeT!Ico5qŠ2 Z"P"0~+l]g+ & '+=KdŦG.8."Ga1?9T`cEV)`ŞǟWwUȼ"Ê/Os{Y ;|yUledz2?[LTVl51YÌ4+l\Cߪx[:7"t3+&z+z+8~L|*~N9:|gs󘮠D'y7+ر4[X^uU| ٟP9ZC5V`<*Qԟe/+1^~fŘ}7xUYqՐ3޹%/Xx]Q@m85ebuzWyOB}Ek>HbFE)OOwzuztzs 9͇]ϗea9`|W^%̈́̈́#̈́+-?3-Iw\fJ륖D$S9br1^9ZzM\q֋qZ/6?lhf31hkB"_&mI?5[9eQk!xx~Quv8rzGZfx@5#+D3qDw2Pyʸbc74Foo{7hǣ^sR7dE 77yD|C0 -/9xœ֨@ w4XWe<a&1Z$5ssB4:I2 OBǗTAlsū"lc=wV; x*K[oBs=x°M:O`<aYpnX qЭG"늾Atm/3OE;ိ(ߎ71^ ǬC_ݬ*+$.l9~b֪$”lǎSǰ3^ijW+p(7野fWoLJVmc|8xhǘm]?/ڄhuBO':?ߝo&<+ +h8ַ+3_ I<7Up;AʇlVhߊO/7 h&Ffڏ|gf{tӟ|Wh$J˪Kʧe-k4ס"T|^hU''a>4sQQO6GVp*) g.tsIx'`eBKןdž=~2 ?;N壡+??φ<>~2~4u Ḑ_>_8uW>ޑL 띘k>C?7~}~叀&u< P_[@'W.+1_IGu|w,%ṶKVܱ_W~MGA2Y/? #($W|'R+Ϗ<\o%9?n<]zGxxyw̋3gޯ w'7Gޑ.^3v~ywlÑkx8yoUHN\ŵ_/bW~O-(Xku#УOO?G_ǵ|-p6uqWm!\9ɷ˿b@l76!uPtYw\0 endstream endobj 18 0 obj << /CreationDate (D:20160330133241) /ModDate (D:20160330133241) /Title (R Graphics Output) /Producer (R 3.2.0) /Creator (R) >> endobj 19 0 obj << /Type /Font /Subtype /Type1 /Name /F2 /BaseFont /Helvetica /Encoding 21 0 R >> endobj 20 0 obj [/ICCBased 22 0 R] endobj 21 0 obj << /Type /Encoding /BaseEncoding /WinAnsiEncoding /Differences [ 45/minus 96/quoteleft 144/dotlessi/grave/acute/circumflex/tilde/macron/breve/dotaccent/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut/ogonek/caron/space] >> endobj 22 0 obj << /Alternate /DeviceRGB /N 3 /Length 2596 /Filter /FlateDecode >> stream xwTSϽ7PkhRH H.*1 J"6DTpDQ2(C"QDqpId߼y͛~kg}ֺLX Xňg` lpBF|،l *?Y"1P\8=W%Oɘ4M0J"Y2Vs,[|e92<se'9`2&ctI@o|N6(.sSdl-c(2-yH_/XZ.$&\SM07#1ؙYrfYym";8980m-m(]v^DW~ emi]P`/u}q|^R,g+\Kk)/C_|Rax8t1C^7nfzDp 柇u$/ED˦L L[B@ٹЖX!@~(* {d+} G͋љς}WL$cGD2QZ4 E@@A(q`1D `'u46ptc48.`R0) @Rt CXCP%CBH@Rf[(t CQhz#0 Zl`O828.p|O×X ?:0FBx$ !i@ڐH[EE1PL ⢖V6QP>U(j MFkt,:.FW8c1L&ӎ9ƌaX: rbl1 {{{;}#tp8_\8"Ey.,X%%Gщ1-9ҀKl.oo/O$&'=JvMޞxǥ{=Vs\x ‰N柜>ucKz=s/ol|ϝ?y ^d]ps~:;/;]7|WpQoH!ɻVsnYs}ҽ~4] =>=:`;cܱ'?e~!ańD#G&}'/?^xI֓?+\wx20;5\ӯ_etWf^Qs-mw3+?~O~ endstream endobj 15 0 obj << /Font << /F8 8 0 R /F50 11 0 R /F48 10 0 R >> /XObject << /Im1 1 0 R >> /ProcSet [ /PDF /Text ] >> endobj 27 0 obj << /Length 448 /Filter /FlateDecode >> stream xՕKK@xHLwf_YoMȭ ZA0"l!ٝLf~&:Jx𖬨oJpd i$vf=Mez'2q.QqY )JDƴ#.Ґ!.(kL. K[)%) rp BbWdRi; S2%/6bl ?S}2ɭİoԈO?zY-q#LfmD;N},yYJF^ܳ5 ?>'d©y@Q$+1iLU(Y}.2m NG윯UvY˕gZ1)N[A4*oR)7wruQF4EU> ʛ"a4薁]4_ڈqaB~SCFx*8m  endstream endobj 26 0 obj << /Type /Page /Contents 27 0 R /Resources 25 0 R /MediaBox [0 0 595.276 841.89] /Parent 14 0 R >> endobj 23 0 obj << /Type /XObject /Subtype /Form /FormType 1 /PTEX.FileName (./venn-002.pdf) /PTEX.PageNumber 1 /PTEX.InfoDict 29 0 R /BBox [0 0 432 432] /Resources << /ProcSet [ /PDF /Text ] /Font << /F2 30 0 R>> /ExtGState << >>/ColorSpace << /sRGB 31 0 R >>>> /Length 22602 /Filter /FlateDecode >> stream x%MҦ&f$ @d7)-5Yn֢ m9_ws_??ڏYseǏWGR?ҏG9QF9ۏ\Ͻ~Ӈ\>\pO 7YZGKxZ;wIN6g^$]8p³o\f~A믟3 6pLMa o߫?Ko7Uq߫kx!U4wnOn x3y ܷ0_# cN-\S1>3;e{1>fL5V>fF^45޾eۼ~b=2crj=&{oqk/>cOVB&>G1?Ӟ}X;ŋG ÝSϳS m^aw~cb]6=g߶S`CM1o>y~n/Ϸ}={zX%%_otlāu/aK|zJj m%|X`ǯ)i^T`x^Ɵ!+iJؓou|8z&j%9q?/'Kn1Lo^1޹ǴE5>?~70?Jگ_#/#O`w菗?_,*%nq>ܟ>Wױl` ||:wPr#c>~u>}g8>}?Lm1_^:~/*F?}Osx_x}Wٯ|eڇ#0O8&0D|Vۇ\>9Ns%;x 8 80}|/Wb,J9|y~jȥPZxm0%_^ )q}tq$Gpۤho\$pa=i=~8KO:?U7*?+h>p5sp\4 /Y x>-6MS}^{Cii) ˆ/NG* ƋX\O0c~ Ϸob2x"34~Gp!@7i~}30{$g?20LJsL0($aGapدo[րy?F_Z1/Fw6o"ƶE{0| 33}9_1,Z5/Ǎ6xc=6o9wlyO>d`Gy T``"p?awo|d`[ƿ/syQ*`p ~> ߲77p]|?-cn~nv!ܱkU}8FQ1 ?1K88&%`ڿ8z)3q8m`Qc83Yp0x`},ŏ=Zi_I12~< J 2V>d/c\/sL= c6{1^8h"b4?qPW۝~~{m=pdF&ڱm1Ώq0M q68V&B58('7_4_ /q>O*[V/W~?  8<#Pԁ~#6pN{+o~ſE ,~~E,ċ>Á~ +y1?܍' gZ~&21x#0\ ,`~~np<7f3p@~d~4?=>ho_0^){X|}px翋~NYD~^+_Sd<&ppDzƿz+܏+[_pf{OOί+]ᯟ[s>Z?>2~> +wj\>sp~}Wg#/c2r>?64?lҢ}}0޷矅?vyo4>oGyqW_ðE9_Ex^O}X.^>wn}~P6=|rKFݺc 绳njF#&L~~& ^E̊x[N 9> >tql#i?m3-xMg ˹"_Єyل]ǡBԤ5t05 c&,<ѹOdqk>Lw4NB)Qv3%Z4"؋'TAUEq!t qXUr!b:[w8: "Ty2߄R,XW®c&^e pW1&&B0ve(ax6M|3v䃈mۃPK'D$B' :ƨTq!.0A(,F Xŵ?jBƁOM0W1[v/6~مNݪJwrsHV筍^FXѵ?#Y ]:sd} UQMb_GLU܎]H;<}ͺH;'6kآ0sv^D"Zм+TںkBkp3TB SߢlVwI) YRٍȜkUO=6'60fHɚfYN@9*KXNfEeE#dc7󍂑>JL^s־@띓u>NAj7mE ~wHj7t ;~n:Dr9qwt)I?vbQU؀\2ׂRs!ky aq^#7H“0  -+{N3Er nny?@..ArHH[܀Lg=oJ닜f#x &LAqF:ǧh|;GOC;ޱ̔"Y( 'Y$a%6oL!˞c@`H`%dx2hiOy=N1?o2Y>C@&0 qv+؀'9:,b\S$2~}O!+w=^\iڣH)brx+Y j d5b -(;QLEȌfrB~1&Qdᘿbw'cuqfg Qx=sYL,-2c do7k39M>0+:0R`ڿMy93k 7a#<ɩ!TrI|Ri/73* \Lv)l{$kOS:w1E<|; Є# @x^@H>KXȁ!M`6ߗ2 SKn"kϟq“O2qF g1DՈ1Y;`^!2Ub?/^}qGqs7my*}p< Ew g< Ex(HUC=#͝;_ Xw>Fǚ8>3#Jw:6w=z G)?"Vrș7^y=$Kzs^{hR'#="ٸ.m^Z=u^{Wdr/0m;ᗻ_"Oɟ,y:?k?=~r8B6) _ɺ+ 3S8Sr 4drvgqoϾ蟙dDmGVVD[{.h(bןD.7Q0uU7l780+Y*n,v_?QKŌh x'W`- "x8a-%Q+:50iM'^g6_ǃ'UTS^>OW|E0/~|ʋ߯~oy~~vy 5@gv=xb{1h~s}m}n}]3uO{q|݊z>>m1rtd(}=3#3ItBr};sĬXT,ړ8V۟a;{Y85}|`9S8k>3#j1c,mA^57{r|$8XMq /,*7~rbH/o'K++,G;ٯ`܌ iqwpkc>1 ໕bo?`kl_ay/Tq'_ezǟt ,ZyB?xěVQ+#XF 0.Kl2t[Y.r`Mᄽ<mǩ?$X&{EL6 ȪwF} .@=o;t dڟOeF~C"c]DG33C [7+dLyV~BOFËayLy5/[p!O>'$ݿ@Nw:ah^2=v/ >#RX`ŗp$x*x"5$ >StX/#3?L6lɃk/~_WN(~{ nvn0ڛwo*b{zwzqb>b8ږ_CMfA 'f@u_zR@kjGʔxq}qS%7-yRk/{_{AH_J ؾU}lj_++NYc~>W?'xSX-˩*éI#S@Wy] ۴m旽_)>䧍!}=Teϖ}*߮r9~51m&cP>;G~?BCky]9xRn_egO f~)w}=gz߲*sE_a.ڿjހMIxO3& -|R(„|5Kt<'& ӞB)/Ky̏'7&;|()Y 3>~:U/_XK)'zȿGV@EFѲA?Gx^o?YA.Χ+/H.;YN,Gc)L9rx^< p|eN|Ӎs _/*/yI~Ll!Mm_/xA % t'}%7ܹ]1(u~ϰ]<laAS`8~S)90_ wv(/i%q>ƃDCO$ۭp&-G-*~g+fr<mbb >P|ߟ7$\+w6 )sN͞__vr8砂'+JC1d?پl#$#[.9}/ "|k;|UXзǍ ˬHVXؘ? teT_ +.>Ҵla(gGOW}B9&_8? LV[ M~>\*.42 R& P?0Fz v[rw* 6?xw;ZHm״xPJ͚*Ȝn*.VK[3u ##(<0?"Np x}ȩvpyP"Zf;æ.*@H*7EQ*B0ߟ׮ɯn(@?EѯPSѠob:U,TP>?Ke;*~oT8C*g*T߫ l)r+1JLpᦫ=]!pR#47p 1_u0ű|v/ޱ H*bTW<ݢf?$I \&8!Ӿe<)U"vEg= KQ~:4!8 = Ĥv!usQ= 7[Xߟ8՞g} >c*G~ƨn'O /"sUv}:Q(Fh&.›Mn:ݎjQ|gx~$‹GFO{r/V;ysw{x]칟huG yn\}XOrƓ};xS=}_+{>,^ ((М|]T@8y8] g=,;eQ꬧㮷EE^Y;{rĵ(^[kW#v~j{uզܱgDk6ٰX12kB/Cv'*ĩH N~Gj•WfyW?S~`_bAe`QoY? | sMv=}nG\Ÿq7UA)_z]ԇTǩzdYou}5U&^o/"^^! xh5"'=}|;~ Ѥ>oAk g2n SwAʙA8z=3,@5\934Sݙ: GŒ <>Z1. 5g$:=@ B3SMgCcY@Gc!q-Hcav-P[ v-B\w,`ڼdZ]}-JُY\G س[ٚvd@׳Cey;BQ|<}rwNtghh{4O<z;;<I "t\! q6U)6|<`""'<62.?TDI#m=iI7{pu=2涇XC ,xiT\Хy=جp!ě,!Cw\:"x؁WxD^hwz1Ὗmtl>Ϯ`T;|xs kO>O|{G>%zL%]>e'PGq}7^'zziDO>':#9stAǣ8'BѳF8r~i>3}"$Tx*s=̆'Br"8*.OdzQFJ~|VknGRUY~x]D*h:B/A+#lE݉s"tp#'W`-`:BX+# i@!;Y9O#o'獀V*)A 3zKmX=ږ9_6P1n/Ih=&4anpnTFO\'PpeY 5>;75XweGctj֝ A=>; n Es2]g82'Bv2&̐1Qţc;`'.eh5n'"tȐyPC P:7o)"ta?aBq3PhoJ'dd"B +'*O 'V=ȅ ]d@\7W!uF.A5s : dDR &f8y3kfH#B͠OUrOЪdp#BfA}2ERg#Bp4JQNTGAJN;02'bˀcܺ!n3ld o =:՛G'}3*5> t̗!P60й\:!@0q\!"tQ\1?6""t_YbhD. 38*+#p K2DC I,]8 }_JDPA`ފpi)P}2ёcXðAH  e2|"BeF{1"BWeFԴ@Bk A!J &pJTxfPTj^J Z2P0T:v^(EۗRC] \YDr X5C-Η/-ؗ9u)ptR0B  ;fU5d5/q dԚ ;```~ZaeEa VX)e8VT)ӌaceFa`VC30cEZ? \A8:0 '(0%+\G `+f0`rǺ ۪3p+5Ca2|C1+? `讫eqaWzȁaor6/90ڶe@X3ԁc=ax< qfhE>Tw0P\[AüsU( V8@1 ( >VP@0 q+0pTh?V[!R THT@@P`y~$O2+hB2s*x8 !+<0q8G1*[ (WHy~Vu+<] 0y+ļ\A 3OWyBlXV>r/Vx_Vپot*WL*V0ú?歐(WXzr/Whzs'r+4 I )/S +OU -2WAj^kWub_WAvfW0z Rk J waV(TT4jG1* WAj)!2k(!|±B*QWq?nW! GA*(,|u be7)8w>LǦ"l*G.8R5*:yGU+B?[ c|#0L{HG13sB'-gI77p yYa *iQ^_`JU8͍OGat3b,#jQ`يQJ_+MEY+M i&Q+ȦaY pG6u*:_g+&v88 R 8z~W]_U?\`U*_a$^UFb&_̃Q('cU8?,? R($_V2QQTQ`̃Qp^gUn\hUά8 ͫ@ ޣP ~_ ֑(5*`?8BGAzO,W|#*xGt= H~&OVr_HG oO頖?֠(nz;e>2O\6Ɗ;A1osPԛPE};eN;(/syPa v8y;A0/N̅u:P áOD)>۟@x~@Œ" \oI;Pz<ݡ2u:X}åߗ;`}C߷;hz>æ˜W! SmKVç;z>C;j=Z/Pv:j=Z鐚W;TeNU(DہUth9\5ƣXgQ;deOYӁVt=leO[<v~p:j8xoN_G*Nowx:tV!0OXp*Hq??A@/ہGvh1og#óZ N,w?uءt?v:\_;ϕ![-G_|'O>ֻw`t"|ES xOrӧC9y;t8_?!U}"}¸/['*4ե=0*8DX)V0 |ftϤ&.Q tظ]E%]gr/,F{>ĊT {JBPήJY9o%B!y8x?K Z։0U4TA1NA2& Cư0:"ˊj$:œ \T9#^5sq"+J{ϾW<2 F c=+QTLNTXdW0ej8*tr=bMx+ x2}>o_p0dK{^ |Py^C>zLbG:<6mTl9l"CrQ/m/'+Ls2pLfP㉣פ _{Σ+*s9?+^d.o&5~$ _s9C8Z=~IuC>p*&EfBMGx;3۾Drӟ2lrd#`gK Mռ8yB %y?SUfUYW@BO.03Qcܞao:z鯋! |*b7_*:`xFPhu<ſsw*tk vVx-6Hgx7 <^}3 h<TpUcPA``pMuP;2SxP!;7 eBDX~#ʈ+נ&c)pcWDxy=E8sb.2ɐ@ Eh,*fPtVU TfXRpŤ욟)#+n&MVtEĤ^oskNŀ,`Rqny?T`Z8_|!#&ϛ.#x)['.M"ߟIJ)SK*Vԅۀ>5/w X2?.el9P"*-C`hqzz ѳezmW-*.m1+@)GF(,7D$nR00S P|כ̐bM -+)Uaf>_`y.V&WD\63_=\ɐH0`12b L?=| \`;3\0_2F.etS!Kq/p%#ȆtZ,`d;8/ MMF"{%ٕkʞ\4dx,d]H=H͖rp0 YFH(oE ow#c'i3x'{=zesTpV0h:^`p~o쇁YBn)"t?f"zwoBŬx3:]<ƃ+O?oEzVt~z&#,׬m7留;?5W6+5?5i/O%cpST[Zی= A.FOcˊbXX볋Q[=/C3mG5e_'ٟS__?ܣ0#5'WDeG b ¾S!xðB! P}ZOH@񧺤h0< Th71L2\qj߱`&gkYdpHc?%b$?Lkӿ{?AKIo:p?>O.)FX%UUgŊU0xУ&8{˿bOX8?%{%39>s~T8 o/>LFbTjGsS/0L$>`B@p¼SA'c}Yk!Y g:2z?&ƨH?Kh1W!QQ$tyTX9 luג""Ώ1O>nVpJT%( ybʼn%E^'+V|`y=I24\o~;N }!Ղi̊Vw*n{һ#^ץ(Qu^y덧<7߰b`A^ك(($~ &/-F?OJW UD5aTtY!IC*nڃB?_q9Yb p|=Sg!}Tס43G s~m쉽YCgE磐4"UՓvGa*NP_R[fbNC g'~<ŘӊSh5l̏ybTq|T)P4>{V )˿N|oσog8|~C<)Oq|Xg3;̟H~3+,?3rV,)T(=gfb})$~zL&pҎwAԭiOW'b؟DO=܏J܏vC^cTױ_NW_]{qjVŋ(d=?Qʯ"Qx\QUUQ|mŊMWߐ_^?Kg*:MK'*ۿ_Rf鲂=Ӽ%q𙬘BXL䳰2%@KuW  lRg*BWxes~9_vMDr+pb.GߡOoć#^/N_B:=05QYWBw3BmZg*5 ©s)y_\05peTH`7m cx/I?\G+y+62T~` R9RH$@|׫p. fW@|[%%-Nħ?E+%aĿ0k'ܯBAD|θRTVX))-+B*=_KbEB-s?Vȴt@S~VɈZ!d2~J*iW1$+>g|?> "!{׊PnWQ$QA B G">`6|yrOϥpxs(KP&_ ~`|V !p}? +ks"JSؓb?5{/hCK}p ̏R*ŧB"S.d?+7u%oQ}*BHՏP;$_R'w7eB8+xD WVosy:j 3̈I8W>1*A)@+qc1+dw7OV/ƊcVT-Ƈq̧XYq\c|+u+"+`E++IT@|=0G~81_Bʾ?UPSTal}=׫=3`W7X; _d**Z% E> qW:OX&X L;c<+@++;-)$ c*-v $1;ݎh"~Id-C3 pA1 ?sYfު(Õ/*j"#?LP c<Y6x^hNU|. $_/As]u?X1Gqh#+0{Z|r?>:o_{;]/~߬ ! ~wö|a m՘|8u<75uտ)<ФJ=5;zr|/O{Xnެ(%h{wbM߬׌G_ ǞTړm;7+r9E[>IiG{d~.U%gc.LJ^-{ڬ0G7;I|ڦaS6ȟOӑYMWuy໬uDs>k?5\ma?&_yNء*>WeB_VA>?6;\e{(ǟLix>lOLDގ;n-~B$+}l*Z1/琿fwdu4+:6fKu=8Qb_?PL???ǟt!ޕ@DO?3.[I@xcHnoq?f62g-,&5.?.+EmpgX[ AZyaoVO?MG.ΈwP> ֨oe~8?K/nhS9 endstream endobj 29 0 obj << /CreationDate (D:20160330133241) /ModDate (D:20160330133241) /Title (R Graphics Output) /Producer (R 3.2.0) /Creator (R) >> endobj 30 0 obj << /Type /Font /Subtype /Type1 /Name /F2 /BaseFont /Helvetica /Encoding 32 0 R >> endobj 31 0 obj [/ICCBased 33 0 R] endobj 32 0 obj << /Type /Encoding /BaseEncoding /WinAnsiEncoding /Differences [ 45/minus 96/quoteleft 144/dotlessi/grave/acute/circumflex/tilde/macron/breve/dotaccent/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut/ogonek/caron/space] >> endobj 33 0 obj << /Alternate /DeviceRGB /N 3 /Length 2596 /Filter /FlateDecode >> stream xwTSϽ7PkhRH H.*1 J"6DTpDQ2(C"QDqpId߼y͛~kg}ֺLX Xňg` lpBF|،l *?Y"1P\8=W%Oɘ4M0J"Y2Vs,[|e92<se'9`2&ctI@o|N6(.sSdl-c(2-yH_/XZ.$&\SM07#1ؙYrfYym";8980m-m(]v^DW~ emi]P`/u}q|^R,g+\Kk)/C_|Rax8t1C^7nfzDp 柇u$/ED˦L L[B@ٹЖX!@~(* {d+} G͋љς}WL$cGD2QZ4 E@@A(q`1D `'u46ptc48.`R0) @Rt CXCP%CBH@Rf[(t CQhz#0 Zl`O828.p|O×X ?:0FBx$ !i@ڐH[EE1PL ⢖V6QP>U(j MFkt,:.FW8c1L&ӎ9ƌaX: rbl1 {{{;}#tp8_\8"Ey.,X%%Gщ1-9ҀKl.oo/O$&'=JvMޞxǥ{=Vs\x ‰N柜>ucKz=s/ol|ϝ?y ^d]ps~:;/;]7|WpQoH!ɻVsnYs}ҽ~4] =>=:`;cܱ'?e~!ańD#G&}'/?^xI֓?+\wx20;5\ӯ_etWf^Qs-mw3+?~O~ endstream endobj 25 0 obj << /Font << /F48 10 0 R /F55 28 0 R /F8 8 0 R >> /XObject << /Im2 23 0 R >> /ProcSet [ /PDF /Text ] >> endobj 36 0 obj << /Length 826 /Filter /FlateDecode >> stream xڭUKo0h@llrڨ@` ɯ<ŤQCZ03< ?UcTdFV$^Ӧ'C3Vf766261`&uMpi}3K}uuU67ʂqR@:kYJXKVe8t>-߇qX(y٦E%r3~9iVXᚉ`hO)Ad2fx^ igQ*K|]Pa[ ۗ8ϰ7|c^AB.&g+n rӬ,x?G|ĸG&b!}?# p;覑s8yO m>1ЧϺ9 x`qEeTݢ Rq&  ,).K:h3WBЎ}BkmU- %oZ֢P `۷J![zl&c#wQ3v.VP#wq!n7ry  "Tl3KCK2:n.0X-=V7FGzV6)gʟ_ەkx? ?=<:ФGA+B+UbBB2Z2A}*g= MHȕ#]־=cd-R,XtT3Μ{^(Y+5* ̋'H-HDf?8*#>{#{'Y_qZC&U#z?3q>E pɺ.DY:tUP9ۼm~|  endstream endobj 35 0 obj << /Type /Page /Contents 36 0 R /Resources 34 0 R /MediaBox [0 0 595.276 841.89] /Parent 14 0 R >> endobj 24 0 obj << /Type /XObject /Subtype /Form /FormType 1 /PTEX.FileName (./venn-003.pdf) /PTEX.PageNumber 1 /PTEX.InfoDict 39 0 R /BBox [0 0 432 432] /Resources << /ProcSet [ /PDF /Text ] /Font << /F2 40 0 R>> /ExtGState << >>/ColorSpace << /sRGB 41 0 R >>>> /Length 28248 /Filter /FlateDecode >> stream x|5I$S'{$@@F* )O-y]%OnMx OGx?^{7 #܉^ă g7#<>ě[>Cx$A?Wg"$nSx?%GxwCK\'( }=?׃k$nx.a}Lÿb?хGn!pZs5?ӃGDH^Kxw`>}3}O7ƿOgpY4;&1o_9>` |ƉZ{6?,1g?9bVC*p¹^o|q1۟ڄs|B`\9~ǟS˃W~~xxbzN0Z,}h΅׫_.4&~cĹ9Y.̉}ol[|xQ\x&^\dr>bF| Sg.8 _~`߃<ƛ4ߓ'w{~p?}0|?C y?gc||= ; pϿ߹-? 1w~mOk)~6g|->N{]?I5FOc,7da~i=83I^k^[_kL7q4y?umysqt^,Zobޑc!{9j=Y9sN &_GbܟZxlįuk=-/i_>{Xp.<8ƌ"G馄??矍%ݐ?nFxy4 sbS3)ʃnC_9 /IL3:c/Ӄ9h yg!Y]|=[|U|ߐ}ppL\/}K_?3\_G':|9is?xs~wXaFz|r=f?Fx/1ǻ~k^C=oy=`owy1~~xK(ZCxy=޵X/ {г|90絷C6:g}2>/Ǿ[ `5aX,rk'|gm=0q>$Nw8ii6|oo9޵x|{=kx3~ZuGO(mɿњo6+~l+i~߃Wy2LmY؉u?Ȗaig#K|Uu#x0_Ŀr<|?ػ/{S|a`E;>o}# @}|?fbS! }Kc&2*pN\ǀ1 iin{l 0^ƹ[_ |xp O~8>8H<sWp ;~w8ޙڀݹ~Ei_?<67>_6Qbb93lx<Ĵ:{|ɉ7p?G;Ssp'qKo~ˉ՟->1w7_ X,5y(7ߔ-M#2 |\ϝUn3MfMxʳ1a&ck/f~n៘Wn<ɴ00\r[58; W\|&npss5yim7L\O ĴwG#<9_\9~+)痧N{2?_K w.¼Sx/ŕ|E`߃χISq¿~ǣ"W|dzr]@>k8PzKr3o;+;_+|"@ͻ^* w=Uw=zzz~pi^hAEb/17QOޯg^.e,Oq6x:tx?0_1oy*,t />=/q<}y`ԼqT?yH}p\{^HGs}7Hp?=S^{x^rG=U}ю蘿^ڃϏ' Y&oۣ.cAl&cΧkAtמD`{ q^_{>!_{FB|~mT~#~RO*tRu_?X~e-o?8c{HDL9'3{&)51](N瑿~ĹVb1>Ww`}:D~sw;ޖx}qw.1=WDO<0 /Lx"7&Ni_;^ ~㙉s:ޙĊ88Kq<5q[p<čks1xpb{/N<>9_oĹNIǎg'| |3xyߞ;WD~zI'"'_x~ G { |'8H|H}2| ?ͧ-W)_L|N;#7_8!~3o@lZo> JˀOKzۀ?㓯@?/7YH7\|d8o7 b~|)p}I,7_ \|.'ߛ+77 \|5plOb?/V>b翰~oz`<#3C/<_>χo^>z>p`/_> K}&"2^> [}*`|^> /!^> z6Oσ|o~al/k|$τz|'Cao/_ C}T8?[|p|Z8>|.po5^>p>ϖM/8/C|;~8oaﬗ/(b&|CS#_)>#a՗ |S ˷}c&&31- M|ѴK}7M>|TUA]/5qw]a /Obϗ'MMϛ|3_>pbN >ĉχo "r{Yark wNˇ/JOb^>7~zމzqi}o>yd_o|WOoO.{//r|ߋO{sbM8>bDD}ySO80W(7zz[P! knij귞YOp-\QW())߷xM o=Ja=íW)A{׻οw=L2 rM{>:z2Yz2Yzz@[OTH yo=R?W*z[TTeeA[/Sο[oUX_sOփsE5)Pփۭ{p_z@7 soo|>ӛ o[ST .Xx/:͗NC}[v>S/'zGf`}^1|28nc(oQz̀#k>8s2P{V'zz[/Z o]OZ ow[*zojE`g"Vymkv=nBۧ^1}y+޷"WJop?xOO#[+W.z w_n=uyw+o=^z"<[/@/;0 C(cȂEڅ;-TZ,ӂA" 'cTy\ `y?0Đ a[K-|zEĨ EPfŕ=1X|T!sQUdÊ.'+~a3-2`LF\YXel Z[őd#\3h.yr$vӂ:~dqs6ZCDc=XȤAC^@ x<\HtADoyǜ. qt߉ÞBaNɣrc47+,"!?Gx’@l$yу I-+ YɈߒfpx;&q'4"vpx$}s1?1YQ=Mޏd& GXᚉ"~~~-d(8.zb$h,y$b$F3dږVS$Fqñ>#\3PЄ=A}##r>wGE tGxP8k/e LPUUpMoP#Kю(GL f/{T,K +*ȧ<}3Yѧ=j7Faē!XptU59/͠n>'fj(&5+Y^=ͿcxityAW }=.E"S~e"bߏi|b|qEw///Tݯ @Hpqb[='fAE=Ͱ]U ;^kn}ӴlQo٢=ڶ"0VP4ר8ƿ^Z9j<y [_dĢ"' pŀF / BU )>Ay~p>{431ۊ>*P*FQ)xKQ<ψ!yw71Ƿo>QEV<_UX`}T>F 4?\{BT)Dtb+ 0Dl!(V`鴟6A{*(]3a" Ɉ 1*33h]R!{o wZAES?b?𒂇+R1󿮈={2hs/\aϮh=~#d ID+"; abW[O*HgE䦽ijgć >.T8*wyc;nEjf\O U,}X݌'[o)"ၿ[mF4V'fwY*a<9zߧr="@Q0 "dČVWDV832sy`X*ОF9~0h.ʘ&թ3~*Tc>4``؁xZPRfę-x&5l02} 9f o03`4 (!T8Od&FG:~1w11B Ϥ1{o^?I fq$sjeY f*֔#עvޅpsT`J{9R^@B *p|7 902b'uvPcMb~_[V8;s~ c|/%>Tx68:yę7ҹd} 'c(d$:r!{%1_n28TTD8{U~B\US\%F ]p/A'QBf7*&qڸ?J F2N(%8:U,M~Y*"© SYJ Db,ը|?*\!4[YMxRbxb1|_baG83~֔1Z޼>y0s~z%lP:5/Wi[8IK F$î5m62ON6ppM6765s}6U\ C%1}LfV!}=z ~R`b$heg0ϓj epl#UBEX>׽ޥ@ŀlR,b$N(c&qB)AI!Sm«GSAJ;0dT٤ӗ!DRO! DȾXߏ+ ϻp'j6WWl%S?2oPQh|FTtc7.q_nio 1(^aC88;};HPq*}GFP:ưq|#v,s $Q7031\#exT `hb>kɐ~/g#5 §~)~~`?j5##1ŀMFa8ϫ,Lo{|2ߵG7>y VIw׃w<͚̼lPr%!;1M x<B'#ǐni/bE8W}WpyuX2|^M~~}MZG7)Rq*Bq |Rws>._K8'0o"E{_$~!z]Ya37w(?X1%ŁĨ#>/$3 rnUHcS8yυ\ܬ='+3ȸUa6y^L*"XyL7Vl9~}LYQaU5U?n1bL_|>~K AM* 8yY>_(ݐarΊ!xǠCy?q[?+0%RBHP`pި؄0b#|_]8KR?=?8C|stVD8?21֧Ւοg<E|!7yp9йGS|m6_x﯃RCF]XϫxM|?!ޏՐOf|jSC3O,G ek~?/ccxW'ccC9*~a*oU%.PUpWOxd~u^LJ1?_Y{_~ o+|? 8[2{+(VUQXRW'vGs~~xȟ ke51wGWUVK¾q7#U_حg V :߯3Ȫ?x\?+P3~+ՁD'VG_PˊuER?_]1Pqaga*oCmrY ̷۱ŏ(?'"ď` 듏q(P@;~nC ҭsGB}oBg|p#G?7F(a~̢*βY%㳫CUVTXVofEJV/+wvX| ;sȈF"71޾8 ^{ڤZmvDŽan_*RA 7CSC`4^*"b[_N*+KRCi41խχyw\T\<u{s5[[;O2}&!@ M[/EqES_SfX sp1+Ɛpr+)E6,; 0*XHi젿:rꊵ< 5 4rƷxU>[8+ ?O]7ۮP߭@e~f "ʹ EL S(?` v(]S/_oPrX34RT(p>̇L߰š08Ѹݛ~+ p|C*?y~WW@V8U}ٷ_ӷKG[_VDaLJ>ͿgQH܊}Sd["Bb~BUX /D)VPiV< ;(bG.~bW(8z/JA +]q}?ߥ@bաՃ-,j?nW1EնU/@T|TVSP^ED櫰ŽhtZ~+:Xea1^$Fǥ3[w=f' *>Ik/Ѵ~6R+viVt䇵x] 0TO&&0DŽaB8k8q?zkQjGcTO ?|$^@}sO*&USaVTF~ Rf[Rv=$ 1U( vhWśQH\8TRhQ|/ۏ +V/=~cS=;1wUN1zaGNE>U9-㥎qƓ:m97؁Žgz%J;,-p&7 χ.B /;hF~> +\P</.?⋣T׫?bJC_ƣC *pB7{m _Hݯ^PW>TZ-{el;s<ظgvgޡiQ #G ?*"^hq#l 1|IWKaLW285`3:zGg/MѼ?z>N٬\bei~;^ƹ~.o{|~ǚ~+9~:=Y>_q~#- Ix/zϳ!N?<{2X}_|G7x(.^ _۬!ݖУnӚy?ڐ]Mm?͚ڟg?? cMc~?G+ܹ^c9d轚&χjs<XwvZ񽎊Ͽ:b^ﬨ>o*.oǙtOjŀNNɞWA-q<ǵ{d_Mwibnk>Ҿб}*>=`> .G_I@+a)]QWXT_MIOiqG'DXsY* -t^cGDgD|042]Y|{jV`+YnH 9›_{n@ aT] @F ?V(NG} pcOX&ʉs}!B"iMԛT j~Bl*,?B3왂Z^?VaF „^_OEӭVXj,q({dFRkHRl-!E E3ѨX.{ Sp@u)&p*Z=ਸCჿ6jL2:h2# &duF95*5E5Yz@r>i:[Fc8Ý;qmǚaŎ]?YJvhTp * )~%E |퍚AQ|/q*tEPU85DSSqGh(rOnG/iIEn 1T:z&3NHnxnj^18_)ЈnE 73>`Bj aRWKq =̹0#{0]'Vvjz"TfqWm.ο<PaO{PV}~Q<;AQ)Ib*-*°""׹ʘJG< ?gLPJA۠D.baFTĜ1.4#2ϗpt@ +(Zצ}RLfa{="RJ磆tƓ*fH0:Ӿ;l' 8>q8pO<*$AC;$.)q!S 1Ȱ'z>(K=g(RLDY࢔j !N{^8 TbVPz&1+" ;Qi"EF)Wd4=@8ϟ ]OC󯼮7|iet]xUey]_@P2*b(&BP)PN8NJ#J"p %LEBEO̊]c qqnQe?%T(+UBqUgT&E9qE)M*xN}RP6P!bژZN!ăh8Ĭ(ϧXfE'Y1W)_bg :6hU?\!BE`+>%N"" px+hϽ~g{ǹGV<Cl}7*%šo݊@{܊oRL( ?2tܨPw{_ֹ{4D G2ʞQЦ/{C4*Vxi=Wxy}\69߽5~W"1r wk++^Kw"zy$rH<<`Ez.9nQpr+~b/xqw41 y+S սf-W=PQqT(/cx~>q}poi ?x]HT/jx}1>PHq?6?{PT1<5·'lݎE77Kw+}@a`9{xՔOx*6C}4)X7SL|hUxҬ;rߜmx9WYJW6zڮ(ߌo5\Omy~p rWKg\M\n6xpϴtU(yU<݃]Tw'PȊsϷ>C~+x;` sk<"+OgCuvy^^t4߿={+Ǐ{ VhyE @cy?ND};{BͫYo@Sbj{h(1s8K?L"71;_{aOjV6b݊=Ն_. d{ Io{M=߶&M=l?ge#,_T Wžo̷~VzoʿY k=M_ZHeE֙/"U niI+4h[Yx<|~Vk`Cbe> 7ÑwyK,-moU)ڻ"Ͼz;xfGOݶ"pVs;W>׫::{McE%hXT@Vz668^Q7؎@2t8۱*W><+© Mt0 '?I>Gɇ)ꠃx$${_bw~R4g_!% R^L*/xDzAb{= ױB[~ $G+"0oOԄ GՊPDv|7_͞Ȏ')g# >T7DeKT`LN~UFul :s> +lC&fŊЛ+`?f`X1x8+n97^^_O>U@.w*w:*;??IP`/+WWh=r&_=H:@˰*n>D7|dqc?(KBP|b{:1_zxۜ:kQI+Qw)mP1hWTjS>D nE#mUE>n/{EXQ9o>R,i*_XYqioz󑟊RIo|{@"^*,,֗tuuu5y}X#*"[ԈE`b濭|v|sN,|q~Xw|?sW7t]ηWVh3<_'Fo@aJ+Px%XO8FsPGWS燥2~u7\ E;bE*H!oxT,*6?+Z {.*ܞaŘAYď+b> ߼r8QoOC+cf(~=hQaXEM; 8`=##'@u*Lϫ 9q^Q]->!>RY1x)bU$;빪ps=mթ:Ǐ"FE)Ee+Lg Ůz-P=UQ<|<5"E\x,Ͽi ppeR);h:N|z*\Toϳ{y?" ON/8K$~z~VL&>:z #\KBдBMB/C]T|Rs(H{Tx\_xqSV8݊O PKǡk(Xfǃu{L LljXѷY'ǺƯP.|V q _3C*H](J1!/)+*Z]65hUAEqoGC_v4~> ѰYV=YV˷}G+TоP;~R+o^N[T|tؑΏz`ϟr' EWX1}gܯ +/=Sx|GR"DHVҩխ(DE]B$`xfUoRY?SBys}Hpy+QOyu}ؚIqazz_´=ڠDQ2i W cbf<z=U75+RܐNݟTP&ԺI~xtd[$U$Hh=`4z!M uCjXGF$o{LA :{QSZ ö KSK ۚ)[C3=#(k؂7|=3Cs!S=Tb3﫷BaZq!ClFqaO 3̈ki)eswk|߼Ohw푩߯ԼgRVƊ2 49YQ{= G Tח4t~05ؤN뗘8w}j?cnXPX!n7XA8nE{ {8cb=- F$pO75* 1K`oj~Ɲz"㊈{U')3]Rˌ7" !ܩq7뜏 O)hFx}8"BygQI9?nMmRyZ㶳gWPynga Cp9XuO&={ &svFͤn ϦUl2yh>+5Q)\0AĂYy̍<]ݚ(qX <߫Tsd쁨GhBBί9J<Rxıb =ҰYԴ}ۊ2t[VȡFY,+|ÌiAiEΞ 1 7{_SW#Sn[a Uh̨n+H#Ua*@SNǏ-qeFŚ `s #}}u)*Xh+#>}JjšB6FG^<- Y4´*XeO=K2HUW $Qf*#XcE)RY3ı.{hG9w8zSr|tAgαb=ʕ 6ф=>Vcs17*FP,CGSA0 C>E'xWuѢߋTKNCjNV컧Ji( O1t5HYѺ= -{L$.TɌZ#o:iYA P,_HHxe:~FF5'B9xI,kNV,O-blq{z& s5LAEv8UHFݪ֐D[M[SXHPb&C CA2q5;RPBFI*CxPAMEfN&XЬTAy^^oץp|j('P7Gnxx'}ۨ(Tzo@?&ejm%jpoH*s`UaT *,TJv)^R#5ոnUkeƃ+ m" mp|ǏwV_GE )H\ ybMꁆŊ<Sǟa\8UpᐘPR+1+x>Ί+k'fFEgE+4XD4q/V̕wSOV ߯X#^WXq[Cֿ+hЩ(=|Ƴ((}e7;ߧ+Kz _Vz>+j1<?|Wt:+++*B{UpóyYnOc9J.֣jOtmʻԏ--b(>rT(mXwй/Ly}wPLX"-^/{G>as?q޽N҆8i޹9`ջO\-+zs7-%+gQQQy'2G38/]ҳ C;aր)ѝeH>6q~}dwZU[h&y%KѯmatT=;n) ն`EXN]6V[ElhV(# iO#Z)V`srwn{dh^=k.wh5v `<)Ӓn%*,bf V^E!R#]nZ $ P1۷$ f ?CwKNno[iմK00rD;_1?pߢ"HoǘCN!J08AS?wp&\;tw`''OPWK l{;t e'rw2L[$9~S4VӅETuq&|6X5ՙ-vw%kQG8sx]2ĺxC)j  >n?Ԗi֚Қ1WPQZ˕3e:4FR.x]Dc$ iEox^>(Am19"^j_-Wb9AU(UFZ+"E #յ7- 4TV5j/Tkg6U; :n("yCxQU݄MQ?̝n\UwcmCuIUM+fJVQ\KHQ`DJɤB-&"S8k[S @$ֵ96"Q[2C:cJ\$,%k3RlHNYm8E&YhwFNj+ OC渶 Fme16T}3S(^A[5﷖+wWU&` 2Mu 匿WTh 2S8#Kݵib!3";5)qdڒݵqj S7vC3k&KmO8eP{ e02W^Cݵ~2LXj!3٘wGfm035?LWeҦ02]f~J-tמNigQ Z]>3s2N-i{`2?ϋf&R׃͵ZI-[;8[+8ѽ1ܫZ$6Y{r5|#SvL$+,&;(qk*ffƭM W=6n۪7݄V/Nؗ>)?Z+ǵȜbujLfbBߵ`&eC4 LZK{e@̄vy+#<~ԶVhm3>%<+r^_ԊߜZ/ Lמ1=XQȤ6"*9"W{:\I=F!ŕ"k3W2[ks>ų1Q.*]4v_LW 2s+eN?ǵda6{kqj$>=V|ڴzU6Yc?^-R tjiߜ00znEȠ &:{o̷j-8^|ߛZ(J=M6CxP{/iT#>!ֆvct ]I{=W{wCSrM^=LgeXnO gԛ0\V/a8+' wmژv ﷩Ͳ|Yq`"~8^_SI5~q4>yLR]-wB̷;rbhJy{U_uzWwgPAhn6fo5_}:1][k P%#&0ft.n|S$d"/cj|9Ҩr`ߡ$/ULhkàۺ*>Lٽ|\n;>_>_M?{^,ǧ)L4͕J^~+~GօO;/ί^^Qm/$={oMPKww:j`6؛O\@vb/jG{u^ʓn\Y}^*] L{Bcw.ݕh_]{{{*/W{2$ D +c[j;p/VjZ}^ Ćk1PKbpr-Cj0L$ƍj:A=j'j鶘#{+l֖&ƨuUW'] rEem櫻$孵l+ Q.ުTtmc5=tJdcp3~nj;Q{r+"-Ceڂ8Ji 9xrȹn[L\j'>"Fe<Pt zM[0"d`-"|"JmaVzH:TgmxQ}f9a>QaEpXdD H@W52bO8Q#Njf7ZY+[uW~E⩎nZl;Dz`,A-e~Wۄ)uZwR-j`Qm[b-cu7jm!uY8nv^ NY$puim8"nꑋZ/͵ˋ뭅i7gh0yG\ z@Z"mlU㻨ЬpO-0)6ſXpeΘ6/־}~jkmݝjUSV~?ajܨ*.g$@n^9x^݌Հp̡xQkj3twZuP(Z i4k_E!2SrRA'ÆD,e0 An.糺nV'Og=g-hmo bIW޿V2q%nWmn~\ ^lem4X; kөR^EE"o#3 A5ZMz$vN3RZRuˤ S+.ķ}ײi\k|sUD=[\/C4AuU]N5dv/BuVW|\e Z[hCP-S*B`滜Rba Y+U`B{jPֽ.kNQsk{ZQD/k}vRo^8VwW]ylO:%Eʫ1^ҏ_\RUT[ޟQa i߅EѨ&풞`a)Q٥pX#Z]h/]Ip[\ )=r] T]̱o2 ~6l; |X, yUFb*wE_G.&dT 2C(K w˃Xj󅖢}!ߒlüFUk=4].D⫒>WLXnf?LuJ:S:doP7 =rIxJH_m-~ jUz", `a/z&CYsBsHA P^U3^qu [!hJ8RClvv /[qd%,/'1_p8Pk߄qP8 7yCXt(XOJ~0ÅٹRQ4"l]b` WmMT~ -@p`[ 4-^r^$s%_JMOܹl0U͝#[]t+zvۉ&R j#VMұhlhݟ䩴bwjcU>hp45KMw"O&,BFqFq5p$zǗ,,a#-@΄4+jiOĉ. @bܗb=e;ܨaXt у'駙!TY~-A4{N|&_ŧ7-F~p(N=Є%ezn]J7 p_ʜє(PpG ;Q߷#$]]^|f0tb!5G"p_CN3WjX,3l6jWiaOC(pQ9xi]e0х :A^ݨpS PpS+gMjF'Kz6z d#7 h a{awh'Ceoʏ]Ӱ;v CӸF'95U'3Juhl 7y7F@(&tsvR}vV+Uvrq%Z6 jĭ7SAS:~%tٸgmD?rUq>PsxSQS/ Kg3N@3_޼l z}8\>'si%H5Z;As1`d\.w@s \B EGO)0oHQ`pvaN߂A(4.MS&uZ8HvػtH`hmZh6창]S&e;GٹNv%7=^y/vuJtJtA]کs¨&[uxka@ dx $)$DHrBqh+y X9,;), 钗w{6g{OO^}gǾ8T1G#FY&tTHÂu41K?z)R6h|#k>..֋ǯx@aI 5ڣ?HuxX `؊;=7@xpR#ۢteH||D G>眾!tEk*@Dg E=2}_Uͷ3t~rk~b,()p,S nS"ǯ+=2tZbOEzg, ;}lt2z겜 2ݖzm(=?P.Ӽ>RMד,%i-D'ձEvXX_^-(m eEF{  Phd TZⲀ[ N@D>kԜȗrr?|x{O?|xʩ)?W}AoVo$@1~|}7fjN|i*βs1W jg۶OʮD-ֺӸ=K|Kw7>,SDZX _I_q"w4v%65H5ͳY䥬>+BZ2֛L|E]fJo]q^"[YO7˿uVyך {sE|!Wn ~PFս79K_7{8%ѵ,0Mq>\sS!5oJjawpN:]ӻǡMƉO_I'k endstream endobj 39 0 obj << /CreationDate (D:20160330133241) /ModDate (D:20160330133241) /Title (R Graphics Output) /Producer (R 3.2.0) /Creator (R) >> endobj 40 0 obj << /Type /Font /Subtype /Type1 /Name /F2 /BaseFont /Helvetica /Encoding 42 0 R >> endobj 41 0 obj [/ICCBased 43 0 R] endobj 42 0 obj << /Type /Encoding /BaseEncoding /WinAnsiEncoding /Differences [ 45/minus 96/quoteleft 144/dotlessi/grave/acute/circumflex/tilde/macron/breve/dotaccent/dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut/ogonek/caron/space] >> endobj 43 0 obj << /Alternate /DeviceRGB /N 3 /Length 2596 /Filter /FlateDecode >> stream xwTSϽ7PkhRH H.*1 J"6DTpDQ2(C"QDqpId߼y͛~kg}ֺLX Xňg` lpBF|،l *?Y"1P\8=W%Oɘ4M0J"Y2Vs,[|e92<se'9`2&ctI@o|N6(.sSdl-c(2-yH_/XZ.$&\SM07#1ؙYrfYym";8980m-m(]v^DW~ emi]P`/u}q|^R,g+\Kk)/C_|Rax8t1C^7nfzDp 柇u$/ED˦L L[B@ٹЖX!@~(* {d+} G͋љς}WL$cGD2QZ4 E@@A(q`1D `'u46ptc48.`R0) @Rt CXCP%CBH@Rf[(t CQhz#0 Zl`O828.p|O×X ?:0FBx$ !i@ڐH[EE1PL ⢖V6QP>U(j MFkt,:.FW8c1L&ӎ9ƌaX: rbl1 {{{;}#tp8_\8"Ey.,X%%Gщ1-9ҀKl.oo/O$&'=JvMޞxǥ{=Vs\x ‰N柜>ucKz=s/ol|ϝ?y ^d]ps~:;/;]7|WpQoH!ɻVsnYs}ҽ~4] =>=:`;cܱ'?e~!ańD#G&}'/?^xI֓?+\wx20;5\ӯ_etWf^Qs-mw3+?~O~ endstream endobj 34 0 obj << /Font << /F8 8 0 R /F58 37 0 R /F57 38 0 R >> /XObject << /Im3 24 0 R >> /ProcSet [ /PDF /Text ] >> endobj 44 0 obj << /Length 149 /Filter /FlateDecode >> stream x3135R0P0Bc3csCB.c46K$r9yr+p{E=}JJS ]  b<]00 @0?`d=0s@f d'n.WO@.sud endstream endobj 38 0 obj << /Type /Font /Subtype /Type3 /Name /F57 /FontMatrix [0.01204 0 0 0.01204 0 0] /FontBBox [ 5 5 36 37 ] /Resources << /ProcSet [ /PDF /ImageB ] >> /FirstChar 136 /LastChar 136 /Widths 45 0 R /Encoding 46 0 R /CharProcs 47 0 R >> endobj 45 0 obj [41.52 ] endobj 46 0 obj << /Type /Encoding /Differences [136/a136] >> endobj 47 0 obj << /a136 44 0 R >> endobj 48 0 obj [408.9 408.9 511.1 766.7 306.7 357.8 306.7 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 306.7 306.7 306.7 766.7 511.1 511.1 766.7 743.3 703.9 715.6 755 678.3 652.8 773.6 743.3 385.6 525 768.9 627.2 896.7 743.3 766.7 678.3 766.7 729.4 562.2 715.6 743.3 743.3 998.9 743.3 743.3 613.3 306.7 514.4 306.7 511.1 306.7 306.7 511.1 460 460 511.1 460 306.7 460 511.1 306.7 306.7 460 255.6 817.8 562.2 511.1 511.1 460 421.7 408.9 332.2 536.7 460] endobj 49 0 obj << /Length 122 /Filter /FlateDecode >> stream x-ɱA($ \vTSHB $:@\#Q_TQUE&MG-nu8M [Yð,ΐV]'v=WN;S3uz3x:cE_ endstream endobj 28 0 obj << /Type /Font /Subtype /Type3 /Name /F55 /FontMatrix [0.01204 0 0 0.01204 0 0] /FontBBox [ 10 40 28 51 ] /Resources << /ProcSet [ /PDF /ImageB ] >> /FirstChar 96 /LastChar 96 /Widths 50 0 R /Encoding 51 0 R /CharProcs 52 0 R >> endobj 50 0 obj [43.59 ] endobj 51 0 obj << /Type /Encoding /Differences [96/a96] >> endobj 52 0 obj << /a96 49 0 R >> endobj 53 0 obj [295.1 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 531.3 295.1 295.1 295.1 826.4 501.7 501.7 826.4 795.8 752.1 767.4 811.1 722.6 693.1 833.5 795.8 382.6 545.5 825.4 663.6 972.9 795.8 826.4 722.6 826.4 781.6 590.3 767.4 795.8 795.8 1091 795.8 795.8 649.3 295.1 531.3 295.1 531.3 295.1 295.1 531.3 590.3 472.2 590.3 472.2 324.7 531.3 590.3 295.1 324.7 560.8 295.1 885.4 590.3 531.3 590.3 560.8 414.1 419.1 413.2 590.3 560.8 767.4] endobj 54 0 obj [611.1] endobj 55 0 obj [525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525] endobj 56 0 obj [525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525] endobj 57 0 obj [569.5] endobj 58 0 obj [555.6 555.6 833.3 833.3 277.8 305.6 500 500 500 500 500 750 444.4 500 722.2 777.8 500 902.8 1013.9 777.8 277.8 277.8 500 833.3 500 833.3 777.8 277.8 388.9 388.9 500 777.8 277.8 333.3 277.8 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 277.8 777.8 472.2 472.2 777.8 750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 500 277.8 500 277.8 277.8 500 555.6 444.4 555.6 444.4 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 500 555.6 527.8 391.7 394.4 388.9 555.6 527.8 722.2 527.8 527.8 444.4] endobj 59 0 obj [571.2 544 544 816 816 272 299.2 489.6 489.6 489.6 489.6 489.6 734 435.2 489.6 707.2 761.6 489.6 883.8 992.6 761.6 272 272 489.6 816 489.6 816 761.6 272 380.8 380.8 489.6 761.6 272 326.4 272 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 489.6 272 272 272 761.6 462.4 462.4 761.6 734 693.4 707.2 747.8 666.2 639 768.3 734 353.2 503 761.2 611.8 897.2 734 761.6 666.2 761.6 720.6 544 707.2 734 734 1006 734 734 598.4 272 489.6 272 489.6 272 272 489.6 544 435.2 544 435.2 299.2 489.6 544 272 299.2 516.8 272 816 544 489.6 544 516.8 380.8 386.2 380.8 544 516.8 707.2 516.8 516.8 435.2 489.6 979.2 489.6 489.6 489.6] endobj 60 0 obj [514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6 514.6] endobj 61 0 obj [706.6 628.2 602.1 726.3 693.3 327.6 471.5 719.4 576 850 693.3 719.8 628.2 719.8 680.5 510.9 667.6 693.3 693.3 954.5 693.3 693.3 563.1 249.6 458.6 249.6 458.6 249.6 249.6 458.6 510.9 406.4 510.9 406.4 275.8 458.6 510.9 249.6 275.8 484.7 249.6 772.1 510.9 458.6 510.9 484.7 354.1 359.4 354.1 510.9 484.7 667.6] endobj 62 0 obj << /Length1 1412 /Length2 8826 /Length3 0 /Length 9651 /Filter /FlateDecode >> stream xڭu\oiPt% Jw7cQENFR I nA;?w=9+1ҩkqJY,!0'wNH e\!P;DC,??6#@ uȰvH9B\` '-lЂwo.@w@qXqa@+(` :aKRpe;{`G&+! XcUa -?dwry-stC\*0+AMb;,dpuzAԡ`[;E : 1u vAW^%YAl< WW olA?:YA/` @{A@ߦH|x@7C@?$Z!aGa}o ox7B_!!BM?# ;B1_ /De" BDe@J/*~v3up89@XAk !q`/DTW@*#rsp D?#uuˏ +":"k^!"_?O4˗!{g_?`+G\`o"5c/AvM!erؐmT뻧;p\V+2|GNyK1& V* -g{xfզVFʒ ?e婳joc|C1h ԗp cOs) ]OJ@] la_: 0s/Ib lĚx}Ւ-WwELalJ9cq0#v};FM3^v3B"h_>+v kouY ѓ~LzrC)Y".a" m'zf/CHԧI <&Ufl>Ir;HLCHjTj5Il$y[S)H`Z脸p?^^DU  l k}}DKGorLIS0*tf12mTHeqv_FP 2E8搣]J3n zkps*[4tbU#8*O>]A#Pq;=2<ۥe$d#P.S6tg /lm ̺զ#BnLE 0JI]e}Y.r;Kc7S;uTWӖE Fj'0O$ՎO~yqjr0O%~Q`d=[lI1 1 [xˁJl1伒DSFP*9JۃZhwᆍB fu$dCzvX8sHZvz0΃q [Zp2U{g*ӃgocAp`]{QF'I 9?WbO6yiw(2AEp|_(Sq@z*Xst݈I8?WzTF1̟iD ߹L!$\;"Kgk-P &.6S4n~33;n}E: ځiϔU>x]h{Rn#7lTCJԍm8^n~x#{NTj8]b6gUGWzJl)1S -?˦$9-9^b.0;;\>D˪̮&5>a/Ω_MdZcGbV7_TAga"^k\?-9b8KّUձQR`o~Q(mHje6Ly9 Md 5Sش#N~نFq!G&L53q!ά'A6k{ǸiqRGm" Zˇ\vR' /N/i'Q= &4u@Ӊ.uJ;iodޝTGxUD_^s]+t6:[7ȿ|FS|^;(|CҲL.\)cg78ϖ7-1+5_ ;*OwV-!!:ɋg0'WTfU$sDClA=.Q`M5*YaSBq3jwľ :|{/E+*άav+@keyF0ڔwqs֞=+ uwbe jcziH-y`iщp c"m**"o-I}<>Cx2w/7dd1= 6Ps+zjddΡݪՍPF]WS -pU)Gu͟ƽY4}etEsСDVS1O`8~0]A[IK$r@Ylhd*SyF,) 82fP` h9}˃Q;ݟboO=6D}RW&`{^|9 䑒n}ctG ߯~[[ɋT ISɑR.>,B2_rCX]6bROaHޅcu/#6MN\hxif8W_?4H"KTPvlSX0ұeJv ''ieg2Y( *CHȣihYTYj)>j&ݍϕx)@9vĎ5ׁ*2?W=iR<27@ʈ#Ur˗ ?LE㾝9VQn-o0JwyV-JpMe #8$nl%LJ>jWӢzjY༠ \OtT4YVM9Ġ哖Օ)q<ǾzvYvnjuܢf1G 弱GHt-Lgoğ4r1{EO T6T2eEem>k7U-̕XQ6)3.MQwag ?mcMPк:oDhF\LՐ"k-q"VL}htCxItT9^1Iwk{$^X(Xˡ*IbڳHm@uB~5YUIL{jOϿ'$wM8KxA3XII2>!bG0, Jviy鼙o-'EZoz4ۮ@̾=6ʔOIAЛeN,{s^:jR ]$uRCZ3E"j0@ z [ , ۭ0 gw%-WH]t.(ʻU|*.5Ae.k+{J8GH<˻X+cire% nf hVU9p66Xr !c\虲Qalș,]7yC#Jd(TÃ0GcB7> w=5+֒!zq1iv[+!έ}-oGMü~A:E^i~ArۙnA!(;yƄ_*$nw5i~ZE.3(p~S^+uXA)sb?Z7%YpQ*lGR3NQR XCעpfbv]+Mtvl#Kkv)3v3dxj_2ԹR)ML6@!ƢAv C[h_K'TM C&PL?}"j{6XDQa,{xa΢iINH;9S i[ca7Pk X")'$/B:\eƞ!2*.0ie(B_[?5>dΏ /t$e7u%ЄSk= '_@{2u S;%F:EU/_/-r}88癱#;Wx֢8c.IcDʋ7ڲ%Vmau&[u[:<ۇm>J45*hy7g5g"3j3nãիLJlⅧZc2_4!gNyj%Ai]W6Evz.n,ÕFRed9oEt/Ѷ,^xXN ȸSof+IM.ȅwdOw&e1Srtx1^XMǀ1 x+Nk^7H;{SQٶOLdaIEq?OEr#fmA劫XSJ6$UC2Q++VW+E}n~Q$-P}Ƅt^"ɰ@|?h|G^G["jg P{z NPbFjI4 &4GZbLKcw:jO ,ՆR1l5=k]8Gu!5Obpᷝn @3nJJGAH;دu8SބMb,VVZ,rg-ncׂYVOiIQh𤘻c*_5mr"h t5@r%l;$I Uf*)Wġ$ѢRo`4$FX .@im`YJ[#Cm۶'121)ZªD?H PgK-R9d{}:e.5p; ֫"g{K9<*tC&4HAmkܡy8r("op{-št(<짚!<$ףP)Ɋ-yH}Lw:۱5Bo`;F|k#?6BF| Lyu$)^}S/(eT(ʕ,-9xKs6h2Q%w q8͛o9Y +"ap1qC !NزZ)^2ؿX>\=O$c$k.Uv2 ]Muĝ}q)P:î][m⅐ &yUt8 ̆B߬6y9Wp$cWZзQ}USjv0nsqcG"TUhk!a3@]tyK|P6?=m33\ѤTG[DUELhPi䜨TɛfBM~y&~I/j~UJq  jX" Ezŝ >LgzCAYw?YA/ sv||M##x{:j՟Y8U}.K!z6DиQ^""v+7s=zE0c^ sF,ȡ _;L{;Se<>{I^#?txՆv%XFqqYS,"/bѫ[?-ba J;@%:e“Hޔ-1sN KB\#Q?doc%r>qH3VJl{.<8N2Q@?g `{}}Қ5>9j?NpxEVbǵX"QЇDH]'o||.ڟa7fx}1 )Y,H})97esqF4XZU.ͅ{sWGsrs*h.JxoqyRmYK@+P}"PE >:N`˺{ CmWlveU!UO +Œu7$1iUl9h+jqeDK6arRb)ڇL![zǏ"6r2"I/L7+7!@NTQa\&\—R{2Mk7o㼞K{GEƵ~;Dň ѕֻ8f=kpL[0O6VcI M#HeG]P\W >sD]8.BI]vlZ˝vm0Wo,|j'F׷@>o4@;o`4mWM eHWTYx^OmϕJNi'u'j턶!h[ML8R o(!jbP?%J۸ )1S"S۽UI7LAw~D&;4-h*\M|R+ɻl15H*cMD7tDž)9wjCB;auU48t_\~e}`tM 6Cf- (#s@Gt%`*cz)8DžmVM_# )MM14`5r5免3g_wݳ>6, " CEܗ] Sx [165,C`<4RQ\hHGW_w}Oצ_6a3v)$Z˾fdc06k@Im"^P6XE50|jiwf08Әf^$q1"0%D>3ʓUnL endstream endobj 63 0 obj << /Type /FontDescriptor /FontName /CSKWOM+CMR10 /Flags 4 /FontBBox [-251 -250 1009 969] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle 0 /StemV 69 /XHeight 431 /CharSet (/A/H/I/P/R/T/V/a/b/c/colon/comma/d/e/f/fi/four/g/h/i/j/k/l/m/n/o/one/p/parenleft/parenright/period/q/r/s/slash/t/three/two/u/v/w/x/y/z) /FontFile 62 0 R >> endobj 64 0 obj << /Length1 1020 /Length2 3861 /Length3 0 /Length 4523 /Filter /FlateDecode >> stream xڭWgXSiJS@:"pE:H %^IH@UAFґ^#(Qi" "Mz.U0HʍF|s]~q. ZHjX ^$R Y$%Cţm( @@`Ee9ˀ3FaP Q X`ah>@ pwtxo8n!h @W,w&DH!ERD8XYRP6qw7z1h`=<}8̿6ApǿY}< %.7Ea(YG`AҚVF&O-aa*anO#Ju?Qk"k :O^m%6]m{,qz;]^ݭ?RO|o.6C=BטCu9r$oLE-i&Z|k[2luݭ"ë̩^QW#B"i'/}XisO_820GP:ȔVK f&Bu?_[,ur('OVz8{خx:Nؓر7Al \ww%?و7Ǯʤ+a?.r&E =;Fς٫Jv|x>yf{tg# ׍tbe41oeKM( |107R,w tAviwA ="4Rc9l=M:y ;V>X"]q;m2:7RmR2Rz?\չv8]NwA"G5FQΘO4OGumz-_M杔Cu y?|ᪧq^r]=8LfԒ3Z9X>b<>==/Pf#I|׻/;o8TJbt#(@25E4 ^NY-qm{L1c1/Lnb{SM<ׄu$s20()$^Qg/Vi ܳˮn"nFV8˨ߣSgS_^Bu^b)s>,<M&pI WFX_O. u2Ν vU%Ӛv߅#+|c'mqݳtAYZƄ5ĥG|e*Ug9SpE$3,BZvshӮd=J̔=֋2.cٜ$du/qM˷݅m.3Wg.&QaT vޏWI4#QUبYPu@#ψA Z [:AX޺yF|$5g?Z>9: [@-ׅ#;fΫdUd2#imms0q '#3AM.g@\n|dŬ~^MWҡ :RT=De -6}:K:mXRpj6K=a)!j}Nl(ӹi N#q NaRARC|=v`wv;>PAFdƝ_MW;VUЦN#z{LD7oi}dl1C£5}CS6:%jėzE$㎸.~F!V"4仮 J;11rZb¹y/zY{ȒNcK>y_wP0&y%JQ[%fzs*p#+=Y19@Yl*7zi:gb48,3_i5N[8 Ѕ\Ggv˴5BDfa(3KIk0ߓ/ ^Y?J c}SiW>/+5RUzXWݼAKbry:qQ[Z>f/[|} PkrN,-Y/4#7}zK/crmYq,?GmPez N;(_#>s*9Ϣ[ryX]'kn䭂61ۼS}~Y ϽFxn{8t((U/Ґ1Mu8*5{xˆ}IA`%CqаYA_z )ѩvF Eޢդs7 {? ݖgS*=iBtTҁ*˟^QM }.8t U<4[q 5+>$" yTzQqQU5̱w^|҉LQ^{'YhRwlL\nl ~[] .||uם!jЍR^Y͐P(R)9Tozne9B%găoU'.%kE+E;"G\ 3bϥn^ [_Q3ey{o6dP;n.>|EE2 H\f&ِOA6O&N;.w7prP8H\Xz=&w&荿S5|4߉5SOqcΫ}s!EkFd+ٮ8k(8"8_ Өx# Xd):#-둞3U brQL*{s8ƅ*4Iz=3cKC ޣђ˷>r 1BXVm4&z8w`BY]R=lvlGDɒ DS[}ݞڨZDdvK b)`wf7376‡?pv^=_d{^z 2O+8bY{º8E?rMQߤ+&-`8QR7o^J{> endobj 66 0 obj << /Length1 913 /Length2 3130 /Length3 0 /Length 3731 /Filter /FlateDecode >> stream xڭy<ǭe EU.k 1dg,YEXf{1)U5d)=k(YCvlL}z9suWLBFwqD,hC,ELLAxee ȁ"\S`dՍHh)R40, D7 XQX , hzz?+|s/A˲@ "W,Ӑ(Fy| "$h O:0gs=?OO?_i֓Ch 2oo4ϬEi\=1WK ͰDcp?MP\B{ʙ!8%߮?ſn%v`Y0BRCXA@$$P_@!Q dqx"$pX~St~~LYK{: o~C(? oH%ZߐjR[^$#/APRP?:ga, b|GD'( *brkR65bgA\ͷ4.KzMﴒ `fL^ލXh5}906+czۣ3B4v5鑊J6ziVQ*qy!)>7f'1FG1KMo82ez1;bq>3O@;,wڮ:xڝ'9*H~҃/ Gd6Gk 9قAYR诌%sD9^\l|t&u G%n|WH؃eKԆOaR5D$31h #~Qz)X[VbmE{ʽWx!-6B]6A_ :\۾kBw :wiF|v%_r/>jZ4B$~%ЎrZu)0H<tt(rp:CEzS7dJ&Bĥ-9:'zxc'w})"eiJ/B!|qTFZm;$܋z҉"wG' =Ô4ہǗ*ȯvA63jJ+qn%lƕ;}+V56N,{%\!DxbT]Z|~gCS-;f5FJ1|Δex>yط]S_[b y Vqˮ HƚJZ$rrߣe`3Aa5]e=z DB ju݆4R"`"I aZQ[Go)ݛ ^d^8\sjIiJl6ܛ{1%w.G9>j2ԴV{c XQ 8bXlw.MѣOKr1m12\fJ;rT)Xܾ-=- 6 Rb׼&%Fb]՚穠|uj!i^T3CܟN1B%CN}%g91mDvN?IXsܝZMZOq^w9&=8#L\6Zb[ѡt$g^ ߏ{i&`M&(Ʀͯg8Kf\j)C8^t=7}}~pؚQZ1#kzך`\V+S@LGEqԬcK6mdJA4EOA\,6MQ޿(Κ0cz]K#@_ZӃ6-ɘhU_a8DP/VF[~'0'qL+vSLquddxnv ibm'e q2=A} yC%Wqū=Wb2 a_?z]tU\@.{/;M E 9ݩ$ndߨoU=7ڑb8$y0SV'S/ѨUy6oLitK )|SB\4HiR\]0*lPx Oqz•)_t'ҭH=IYm<.XPV)2$ز@d@† O$ڗV,>D }jri 3ZװV因 1|)R(thd\2?%zOsS?۲[ZyA/v<ߢ'ĕCxF69rVd;pqEy+N;&MPgxj&1S)zxI|PPR$o7;ٸ3qlGRg89{9A Sr"1ޑ[!ʔy!dԤz6)2L {LOZDf796XEѭGcFGVݍV^OɍVľj7)Fr@-ff'D G*F~!(T-AM`LØЕ'K)rdm3/KF8헟H JK$zH}VjJJ+)=s\,]&[GjB7Hs<_J#H#R 5#L~%gWsw]ul;Z{grrIkeę>L6<5$cȢv%޿ħwjkRLukk"QX%e`snO(j6,~{U.*A4_!|a崣E';c,rwڼUոMnp;HWa F>oXDlfc7[%t dx?dҩ|o}z?ºJJs U*4kjP=A^zޠ+ᐰG()1MGN9ሂȠm\$PI*c1j+ \^9(gQ)pª[&ϡ-YaCuA[l-W/Hp; [tlELGy/!~u 3'7 g8/ڦ53-vB OOmt)vcb ;c7SuΘ!Xv=CWLJ(t+Cj쥅U΢W= Bصc+U!1۬~:J3 endstream endobj 67 0 obj << /Type /FontDescriptor /FontName /STKRFS+CMR17 /Flags 4 /FontBBox [-33 -250 945 749] /Ascent 694 /CapHeight 683 /Descent -195 /ItalicAngle 0 /StemV 53 /XHeight 430 /CharSet (/D/V/a/e/g/h/i/m/n/r/s/t/w) /FontFile 66 0 R >> endobj 68 0 obj << /Length1 735 /Length2 1052 /Length3 0 /Length 1570 /Filter /FlateDecode >> stream xڭRiTSGŠU DA!@X{A(.X."("b*nE (jTqAO@A4"=ſ=g޹sgd6@d xD,,(_\IW( S0i\ HlqL8?LLpD-DҿqL)aøK]sp,ꃳ 򥅈XBp1<ڇQXDllzzZ(b#(,Gt;ZCD6"$) nØPEPbhtR1DE!\8_[2@Dx4 `Hݱ6ĠUA4JHxI|y R{q.Y(m*[Vy 2jbw]z]cMĿ{kFKoRU}>4Hv5Mǿຼ̞,K,wi}tťt ];QNO*Lߥ~1IK^VbJ {YVM(S,'AmvYrѾtUƦ{5?zcn|EAUv᏿/l5t\~-,ԞۜTA!vޭ:+d7G{;uyQ/$ݔ&]@8oEq ;G;I9?kFwy .qRg$N~3Wi]85^_ק5o_ѬЧw|6t^?~h+lMu"T*H{T1I #Q_]>ɭCt}Z5NiʗOة9XJ 0I޼O#Wه+Wn|rI,,J^۴[C֋5%CjYcR^NO9H6u%kd (+gir ɕ|ޚlVw 9y/fNc]W"̮`[k$$蚎4*yCpFyjVqZXsic}v~ L24?j$?5D}_~G=/U$&Ȥu/Κ:ֵmsSj>ڝ)+28,/{U7{㝂bJͲ֥Ϲ|XMP=NNhr˫o#0Ww~e&63oSKrϺlOW)Ϲ.?StWu2ˎ+#|vͷ8V0ɠ4&SVo/V{o5])\hfmʋ?`+jN|].>Zv ]S,~Dxže;vV=o50JY2&PG^@L:]HNz}j;$Czq'Z(o endstream endobj 69 0 obj << /Type /FontDescriptor /FontName /WIRDCL+CMR6 /Flags 4 /FontBBox [-20 -250 1193 750] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle 0 /StemV 83 /XHeight 431 /CharSet (/one) /FontFile 68 0 R >> endobj 70 0 obj << /Length1 735 /Length2 1053 /Length3 0 /Length 1567 /Filter /FlateDecode >> stream xڭR{8Yf *[13Qi0&jIT>3i|0C)K[YTl%mB$MJmYJѶs~=y{~krDX쎡B \QH2 up TPlG6JT)CBBq`j=FbN,C  BH`Bƕv#؉ #`Y$,#Q@q (~֧̏H. E²"LZ¢C%J I0.p(.HVAacDF_P"QcaR92t"dyD$H`@B",Fpa($xFEM[zrqBPG)Gt;^SldlQ(THϻBL80 % b*@Pkob8ql4tG`X\\0EB ,1U*X ʶr F \#Dn00J|\R^,6.!VT.вWSrnEM[pAkrIԈQe[W7 O˼;ؕ}o 씚MֽtWs[}^ε#}Ǽ|^h=6ըysϒMN,`* K'Fژ+N־`+O>}th uG$U/hmg uR|}L>)Hͮqx o%H:(oiիKmM_om"xxeNusEqҀ@%/ W{W0UYjlU.[B2fokzCLKloRG~nL=Fu]5Ƿ[+#q Z̛:㴊Kܻߖk"_3`+=7vxjv&v(c\;{uGT~cvݕ,q;ɹM%gm[|Y.(gA3Ag02 ;Ć6,=zrsޘk{Zs^jd(M>gZ]'naSB/*)q ~P$=ޟ8g;ekźt: =e|QWY.fގ} 5VkIx~Ԃf Ik]=ZgqUPüMD}-<^Q?^kT$$< r׻Y<{ٳgthtM}tClN)/'6- T|w endstream endobj 71 0 obj << /Type /FontDescriptor /FontName /EJASTL+CMR7 /Flags 4 /FontBBox [-27 -250 1122 750] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle 0 /StemV 79 /XHeight 431 /CharSet (/one) /FontFile 70 0 R >> endobj 72 0 obj << /Length1 997 /Length2 3674 /Length3 0 /Length 4321 /Filter /FlateDecode >> stream xڭgXSiR)nTBBozG*$^*AC6t"ދ")xsf>|ϵ{Z[ kRb"DQ@C h,',PqDJN\VN\@8 (T\P84  "(7Pqv(< B!F[=(Ï HF@dS٤0@b$ʎQTKBwsuwgg}ˏ;,y;HRS_PH˿Z3wFBh: 4DGa6ADf~NgL]i'CK0 o%A`h y$8f$$_ Q^ʋWGvXaH~y>HRE`3;Q/DQ8 j J$ ZN, ~%(D]A 7 3Y  | =ORU+".IҒ`SpPϟ=( 85Eȇ:&<*P#ޤT_2t6d29[\مi?_cdw,Oi 8ޚmtg#L8]V6&?60~yKcbLj]1$MTiPF063z'-.V{=~#_Uz(xv4'µ\H%J3oSx5#1ӎʼnBłDΡW.HpFG$fA}.\an&B@ԟ1}h;CY+kmxb&Cr ӣcg0çQ+ęWxL N>bJά4\Q|(3/FECśZͺF zB.%PUoo37; ~_7B7Ѭ2+lA1x;>Q&jlĈcb2F@ &llhHTPO+wTZO!HmhAmD04Ōߞs˕Q*wzo r1 ܦ4.rؾmwe05E`]YE-pEe~`HO Hp])ǹHuD=>[+]mmdW 7ڱ% PĮYU0K o0hd_٩ Khma J*$f، ?!\k5[oWx|TcQ/rzS܏@`)smQթt=$&ny,_M,*Bv'37(4=è̉kqȤ;GS]:@SK_iyJL-Op[R#,-S4Z[{>>._i(2g%u+:pX"K#`{Ty2u] k F;i?;)}ϵҾPHGi|}#=A z:#]eGmY=0>ˑZ%ѐFtb/}"ds1-jQ g'|vyk0.e^Kk TuSOl Y';y Zyn 3bmQ{ h|+չ;!]ז1k Kqf.J&ˋŐ_r[]"IgBO#5b8|j9]QxJGՔbc] 1FK]?m 9=߸_ҳ:бBOXR$莽[9n`GPMZnelt_yarE\D=RLוWM0.b\LgKS3)ޜc~]0g|4WUkTH>$Rh-6:cŗRgj (,_%)zfq޾v­r3ˇ4Up2.]b|16p~z&oO=odb]~${7d)އ ^Vk ? Df۱GfXY*풎O&_Ā/v~bߺW6+G}r`TkOL@1>Ofjsu$ټiZ}UG5-\iZ#L2(sT12$sӍ0Qv}Fy5fJ=sL-g˼ehi?;0T̷: t5s#&oq]$Dۚ|ˢ|NbkREgOT+}kj::.<:󔚺iG;QmUXT6Z >?z\{+COՊ0IUy@y5[)6ATv^7܀ByFh긣{_ksy y.2s.c*#jVgJq1R&zAG+~?\,׏ fWn XYt_׾vSH)1Um3EvϨ}77qV$:kMNW!CH uC7ö OSTw䗮|:0=Pޣ::3,i >ms *V.ɹ]79Y:>Lc_uNă(zW0Nf`:49"4ӃEĩzڗ_ 7b}XrFǦ^4)Euδo]ҧG=u#EV*n-WK4NQG y2fPbn]G1ݯzB!O]IYAsinEЦ/O\n_ϙiSXcҸZCmStO`/3.{4ogj@Y>avir(xV:n!`]Bd{?Jq~_r;,vd 6n (НvtGPgOJ*DH.c7/tGe- j endstream endobj 73 0 obj << /Type /FontDescriptor /FontName /CLOFXO+CMR8 /Flags 4 /FontBBox [-36 -250 1070 750] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle 0 /StemV 76 /XHeight 431 /CharSet (/V/a/colon/d/e/g/h/i/k/m/n/o/p/period/r/slash/t/w) /FontFile 72 0 R >> endobj 74 0 obj << /Length1 1302 /Length2 5527 /Length3 0 /Length 6316 /Filter /FlateDecode >> stream xڭTe\kcAahF{aiAiA)%A!%${/ڱv<fz=.9{-XEpq44xA|ܼff8 * >11># A 0w_ĦI$;@A6'* s#|ArHw'H {|| {g; ֤ uD6{=Q@l( D{ ;x`Z`QNhٸN97g|`n^0 áv5-OloVaq:B .1nAΞ>`{geC5Ti?200g:6P;{Ũ1}@fܼ|(G,UN jw.CHdP'BB >3$pCaT5@ Wa!ߦ0Gxn(GZ*-BqH cBqv0hkmqsC A{E{xA( GRm Qo]Q;;Dl@۪¼(Q{#x`QA(4*B _#@!;H JB+Qn #QzB~ ( <ǟ q@mK$,&ਞ}QP``f f'ZY,f+^$ۓ꜍;c9DDabG>(0# a?1F3g/eDY}~*|[w#fdflm ljxk8e>I"$OgfݫO+qPuB8qH[Ns*D`k{JṰr?jmxj${;~ VJ:_r4s}ɀ؆v\*޶emMǹfmO!zᆰ72x.uĜ4 熋9u go Tx}$qq!ZkZ%㙙{Ã$I&TXs={u0xZ֡,$#TK$\wsO󯲶e۸#RYPX.K&Z8MllHxMD$dzjg@|BųǶ~A^mkKphCN޾9>R,v[v)S|9!pw󬒌e}(1P0?O! Us+sX !]:vZSE5CmJ&c<ڬh q8vryT.es{1~ eMqlC@ǂ  - c7zٗ䬓;\Izwh"7'=&E$~NY.4KA ~,Y}>Z& w>*iތƾfKd u  # Hjl^ E{ /7Y ~Idգ4Hùyyc6)+ [={o/n񯙇儩V=*B党IHL1OkpϜ҈=vfVMFO 1qB[mFaRwl;R74}1ۂ<*0hI{Zz3(Ł!|"8hED @sY ROy43t@lCHLM}'k~{m[4r x5*LZqUJINw$-$iA}1Q= (ޗ١ku!&΢ӃgZ'?֮sc4-h{`=ŨШ+%<fQ ~qsʇC-ͦnLm4c#T3I)5=gp;JD.B/eSrV4 0-zcMWx'^i1 Z<{*ᙼs'doi0괏R7jfvrRlk|K:p"UD,4]lZ-.jd3bzhTW.VOPP@Oj,}yXYt)H^@|3 (1:΍/pFMHf@EeywyQҐXp|]ga<|g/M'}ǖs6+Bߓv)Mu_UVlY>wI^@Jறۇm'>|9S 1hm,㜣R$ 4R9 ;,zF SY$ǃK +9Z{O&v"U~CI:м%glK4 $IdU,zǜ4K@y͠~G}}c!珘oyא`ݥcs)`ԐԭBCbW#KiFVs@IA޽=/}e6۟tV?N/08Bۂ~sMQ1Yߠ|x O2Nb7QNGcjVóDmM}E 27X? X_w;:O4*nƤsd ?6QŜ\ZEuǥGk2N1T>:w920QXOe#CP+.nl,Ks m|fge ȢA!?.H\1u[?Щoxbj tl 񗏓U!_7YcvK48}VU`m1fT#sS565տ(kl16tw '2;U*7(?H@8<092_WxNEu78 1E9Te,8iZu Glta~JC -iL[o(rMHvIq2i 4ǫqnQٛi_m2[,nc-d[BS* O?oe.dvfC'!Z^^" M#~,ui&iڰnѼΫrNrqnܴ|r#1cgIymN=KёYoa:-dtsqnkS0o}0,ܡEc 8U i6-yAsSW"+<+Xݾos{8YI4a"N-yP18,S4Ǹ(i~4cU'P?"L }̍5T=Sr4߂mzƻZ_n(ovvMTպa H51wYM~0Rψ:kiq[jFVy wBf.b$&P[2pOKK*Snu*a;ՇvJY:<zh X‡GT,nTOĤ\9 EFG1D_b2(wY$ˑg޽>aYeo(Pa׿Vkw:8Na4#^pJ4F"ZLIiUjL8UH\pUHd=cjXd &iNgӛD,b-AO2KN=uQݗo8zj:qbykBWG]^6,_!MxF2㪓.UbB)#aPNiNF'!ՙzQ~9<Òٝ޵+aZV.nxZKPl*SQ5ggZEsSI,r6=yʎ(L^*ajz(uh.$=t nIHwFx$|/Ni_XwUw[~$p]hfyWOj!E3OKާO r 3{=f^>#X։}O#ΊG@Xr)ΘGٽڽ̂KoHtJ~"W( U?.,owl4: TMĿj)p 7M6stj]*?5w4u%zϴÞ|0rPaz]޼HlxJ]cffvGf N}u3B[2[P1}}X)\a2$%_nV[D %< 9(cd-GWVv!_1xk?ڄ.Š"bm~MZs#eTZn:3nEZAl~y0\X[ܰo}@`D5E4K #{ԯx%ѼR"G]I>%kn'‘z7S<8SwO ȥZIZTN=%~7̈́"cmنBb{hf[hnЁJl7uȁ o]e\JfjI;3;AiP \w<_zt|k>;+{)^bq endstream endobj 75 0 obj << /Type /FontDescriptor /FontName /AOHUUY+CMSLTT10 /Flags 4 /FontBBox [-20 -233 617 696] /Ascent 611 /CapHeight 611 /Descent -222 /ItalicAngle -9 /StemV 69 /XHeight 431 /CharSet (/A/B/C/D/a/b/c/colon/comma/e/eight/equal/five/four/g/greater/hyphen/i/l/less/n/o/one/p/parenleft/parenright/period/r/s/six/t/two/v/y/zero) /FontFile 74 0 R >> endobj 76 0 obj << /Length1 825 /Length2 1706 /Length3 0 /Length 2266 /Filter /FlateDecode >> stream xڭRy<Mjl%E&KTb=ƌci; cFc[YMBRIE6MLC"Ie! w=㹮]鍲wClA+NtbzzxD2,{ @KKc->+3s+qFp,pm8aP), 3&ͦ2 ne2RG$@"!N4DCA1\`7`1KYt6NӢ"~!NlY86HaQL%|irRS̸ vxDla.'ݜ;DcD^uR -+ (53"͓t 3Z!w'}`|\|]~vIaĸR/caXqʠX(~ȿ]i V0`lfP8J\ HP1bs-8$ b%;İ M(XLł?;k`c&@sel&6IFqSˏNOLg7A.aSCO\1١ f^T֘QWdV4!) PO`ܵC ^M|xHvAYخ@ǧɅ:^5`WwUt#mĝU?ⳞQH}[' i`7*Q*TRiw k8x2LK[j69dz蹇,r}yP/]*hbԎK>aW,ֳJz?Hn,Yl_M.ᖵ{h]#]e6[UR< ToSJL"anGOtt/Љz~?BMzK-wfIXY&gpʅ2Ҕ7v?9w}'ڑΉ#J\U׹͠${g:S-/t ]!<"ߢƴM]>FsL^Z 3} +%X%BsSCBڐo%2~FZnP.yCVG giJ0kMI5NSzđu7;½ Ke;$F\ίEzMf{A Bg$x m,U>~ pqEM{=PFxWZm @i:TJ a O4mx}a |*5p$2|k2@ҳj]zp&)(Ǖ_vaNHoNݲ&i{hʯL5cپ"1ÄQ(qBa n!HL!2e'CLF0va;\H<%Orh'Wu|Ƽ Cho^!o§==Ϋ_2D@1 rCZ*iE:*|4w@*\32E¾ҔYrȩ.kJ? ]>_ned{ ۑ2_{pމC2Zvx"Xteh؂@Bf"::Xj46_=jo$3ս&+騤%{;.A%FG6NFoVM/\RU47 W'mO5>eHԜs*/ kb_y=c4%XjӅsyͫ-ƏNEQԜ[х_H"$uS2xvΰ3*ct_ܩ}GN&6߆Ew#R^36+'7?-q*s?״>Ͼ4Y,]y)pbﰷnHSk5Iz?-*&7Pr%n(B[K]t-ӻ|du؛a gԶNđIǢwޤJZ &d].~cy23lVUT-j^4ٗXd\6.=0tQr0n#X.B?%eܘVם:AN endstream endobj 77 0 obj << /Type /FontDescriptor /FontName /XYJYXJ+CMTI10 /Flags 4 /FontBBox [-163 -250 1146 969] /Ascent 694 /CapHeight 683 /Descent -194 /ItalicAngle -14 /StemV 68 /XHeight 431 /CharSet (/e/n/parenleft/parenright/v) /FontFile 76 0 R >> endobj 78 0 obj << /Length1 1345 /Length2 6925 /Length3 0 /Length 7729 /Filter /FlateDecode >> stream xڭte\5)]҈8H ! C J7Ht#!]];{f>Zϳ{"8\@Q6eb`TEDx2p #ϋ2`p-"H -͡5s-ЂYA. k3@ p@ـyRZBV..HSm&`P d˭CN!] us;!R] 8@ fCWǜ Ue9l)?KUrd? \7y~(r|y8 ; [E^{kȵCb*D'8&qSqq|,Ҩ;`SXÛ\쬸{Sk~vKm"i(_,>O6A>_[jl@[DZ`Ueq;*Q$8U/U#wF/W -T8o\TC#tuc`zkjGBܙ|!JcZfYο`"M"S>tjΒ})tKGeH [};%Kf|{k}™_w)Ose|Wᙃ?ފFg^MPf6a)Bsr1[/=I2Zi։ŭtcwCx:O +0 HD1Cؼ1Uæ?9D]zkۙ|'8R1<lxqX6An/3'2?̢dReJ2HokO ˰njejsZ:NTj橂OGcjē{X3&!f_^D[5^x$7 :ɸt <@{g\M/=Sqd/pz@32#X\η3"?arj[]Cξ&oKk_l%4>M*1í07FFxJ.%c[VP84#̄2ϵgVNi)_h< {F<{KxWt򃈃_4zZ1l=^B钅O%|w@`"8k>*{/kJT+98Orho F^b_,]/й-VU `<Q[h*zy#!oF[UG0sXۀBGanꚒ!Ѱ1 |d "h$Jon5(AOl;̞w=A`lY-/dR .z+; Kemx^ѫ﹑+3_L"#/nmncqkNr.E +<Ҿd\TFkB4kOT]*[T#~p^kZ7q*PYfJb;Mz%U ;i>DdYM3}ߛZ}I֣J{}k,|/ [qg LM]_+yqG5d*; `ӵI"SYoJ JO]@*}I3#E 6(5^Zvu[."/*c>D+axHjj>~)u:Kw 13 t?z<*R[ݾR>mȒhl;?_#I"%bZwE @QS AB 7M;¦SJKIy}˨3މpES;r9=vm/[a5_yrlBu]"^ZpITc,fO/sd~݌ŏ]['s|M?4uC/ޕi<6:lU a훨Yp[o;,@l9zdSܩi0Mf u%_뭪5?W9`|3ߍy{}0tHn:N[N'WY4Ķ}-9*J㐍6Vu Az6Fx񨤴,ŵ{7!acJb9Ɇe^ %>ղK^')J'6~U0FvYfRoFK*79W7Ee<1?J"\C7 vK+ôxїT,q~!Q"q n:?7 4^blP7DXwϛWvljS: ^Žgkܶ 6{ : q*^HI4s5;/(<HU[)mJ>4nZI%jdN&%#Y iYxiK`ԠH*.=YSM.E\0*[]iΦwz -XL)J ߼Va(ȕ_9਱jVqɆ[(gw5\9G&zu[x+NFCt܄Әpzҧڈ%:xհ4d\}Rڮ;}wO._\zdD,YuBvo7Pe]T_tNX|уYKFutXrqhY bҪ$瑉>y W #xo 0&L~p,{q.u{6_&^~47sZuesw<7Z 1K3R,nB(QMZ64͈5q-W/AilJV&L,T>89%Af|^e9#)|f/ɋLi`]<\GcR|F[|DSYgz X6&0Rcvźb\z#&K@"~}ë u ]5>]9(w<>tkEk, E=gNyOOË?d dIM蘕J=jy9'\C@UswF-TYr]X/^7~Yqpei+lGRI`/Z4;m,,63w'x<2)ZH W !.A\ײ7A]la$]p(O5zm ,N}nq:fa27TtsimR`%\@ukWNI&&[>//xY-F0E}c"KPh|[5̱hFCBttIL7]ZߞVma2gcT-S'E"-Z[_e%VGM#*l@i~oNѢ˼.ldF0̽ޣ MlDP^KdŧDF+ b4Ӡ&1Wq-}.C:Q\Ɨ S+^ Gw@S%.D 8Sl'Z H w\5cN-Jȇv !QGVRJmc+#!73.[ƴY`JUkI)g+k٢#7YʇG9rf 7T._g,UtsJ1ޭ܍KAtV<&c `xr_'/H|45gm3`$ޒj۔(d%E }{@j4?yS$IWٺ1x "`"O/R+wT f6YJu )/#J9Pud=~,kJl}uŹu @ e_7AC0}IG;n tޞ&[BvEeAz5 /^=LJ4.\l'/':(10k9J$?O9q.(1JTp1Yf0ÕFYeo&X#s!N`AȲH>3*RyL듞 DDՋof?N m]I ʭNU ;/P{͓5Ah8EHҷ5hpae5M@rSkڗ5b>M_=8qx,.B/7'3w|BU]i4 g[dGݠ!YFʐ\y-~,<5cKӥޢ&mVP.kra}eVS?sś)g(q<6ȖJ*O6g6T2˺@)>JqwkUe5 gI%Y]seroJt{.SnW@wV$kC@t[+ײ;g׵gDi 4*6E3FHg?RTh&BV/=9וi=8֙>%BSVv!U|UH9B6[sL(؞ D$ZVC~Ux58( *$ Wsٽ[Mh{_a^McO Ff'ŔjY#';Hؑc)c[>h z5/ G̦ |R:I~nU7þb~v ܈7byV)ٞ-Ep<3LKUZOtaP)"&tU?= w, F㵂<1?Ɣ'IH̀_$׶P<ՠD}$9!_*ثy7`Dvu[GY;t<}?oeah$1K F4ωG[Jx 8Z-hsRsw^эGd,43.G-η%zE^ΰvF 1LIg[u"6TưVw>(#{" 7y{GB.iB^dO݊ue8GE6D35ZkddZqk.*Ft44{bt!1K[eK&D6u->D kQU=P}P#2moԉ\=:?!zn fy@S xbM{"華z|&jMę\ytړ{g!q!2)?V+w$LvTX5q'\2I[M[A6쵩g `63 <3T-zƕP;]nm3\Uis5ٿ~KXgnB6E/k-hS)_Ϻ cpǼA nM A^SQ;v>+0P댎_VXV endstream endobj 79 0 obj << /Type /FontDescriptor /FontName /TOUIWX+CMTT10 /Flags 4 /FontBBox [-4 -235 731 800] /Ascent 611 /CapHeight 611 /Descent -222 /ItalicAngle 0 /StemV 69 /XHeight 431 /CharSet (/A/B/C/D/a/bracketleft/bracketright/c/colon/comma/dollar/e/eight/five/four/g/i/l/m/n/nine/o/one/p/parenleft/parenright/quotedbl/r/s/seven/six/t/three/two/u/v/zero) /FontFile 78 0 R >> endobj 80 0 obj << /Length1 812 /Length2 1838 /Length3 0 /Length 2395 /Filter /FlateDecode >> stream xڭ{.p@/e g+d M:B"8BwB'S_chI7SGHqP@ 6 ddҿ_9*;D~4@~)Q Oe nA:k6 ZM0m"'xT(m͛m*ظNr+XS3]7JHEjPy1w|vϻ|FjOOFvH*L]#}|risp1HuKo.!$ }a<}kmǼpoG kn' ߚ~aGwT9,hn1@ ݅GZLXj \TYgm Jqo狝J1etOFq8\Fq\Y5F%r#a{sp6]ĪR2/~g!311NdUXAqmJ;ݑ01`p X|Q `ãtk谩;,0L>_7=y8)uiq.D]2R7@|"s԰z][}2 ;)̪=7DI7h¶p5ߊ+AfOǝHTٻi?FњW(yH~n*5!Ų̛>UۓM2`e\Bzsݾm'K:f;;b7Z}׼<ﳾKm7wAdEi:iAud2FrLVگ>mwyvX=A&);r@ d_a.>ny7~OI+ukj{mb/YS73d%Hli8jod~D>j6}wqB!9|GOF'o\ݵʯe_3рÚv_ĭPdSk f،>C]n dd> endobj 8 0 obj << /Type /Font /Subtype /Type1 /BaseFont /CSKWOM+CMR10 /FontDescriptor 63 0 R /FirstChar 12 /LastChar 122 /Widths 58 0 R >> endobj 7 0 obj << /Type /Font /Subtype /Type1 /BaseFont /BUJLOK+CMR12 /FontDescriptor 65 0 R /FirstChar 11 /LastChar 127 /Widths 59 0 R >> endobj 5 0 obj << /Type /Font /Subtype /Type1 /BaseFont /STKRFS+CMR17 /FontDescriptor 67 0 R /FirstChar 68 /LastChar 119 /Widths 61 0 R >> endobj 12 0 obj << /Type /Font /Subtype /Type1 /BaseFont /WIRDCL+CMR6 /FontDescriptor 69 0 R /FirstChar 49 /LastChar 49 /Widths 54 0 R >> endobj 9 0 obj << /Type /Font /Subtype /Type1 /BaseFont /EJASTL+CMR7 /FontDescriptor 71 0 R /FirstChar 49 /LastChar 49 /Widths 57 0 R >> endobj 13 0 obj << /Type /Font /Subtype /Type1 /BaseFont /CLOFXO+CMR8 /FontDescriptor 73 0 R /FirstChar 46 /LastChar 119 /Widths 53 0 R >> endobj 11 0 obj << /Type /Font /Subtype /Type1 /BaseFont /AOHUUY+CMSLTT10 /FontDescriptor 75 0 R /FirstChar 40 /LastChar 121 /Widths 55 0 R >> endobj 37 0 obj << /Type /Font /Subtype /Type1 /BaseFont /XYJYXJ+CMTI10 /FontDescriptor 77 0 R /FirstChar 40 /LastChar 118 /Widths 48 0 R >> endobj 10 0 obj << /Type /Font /Subtype /Type1 /BaseFont /TOUIWX+CMTT10 /FontDescriptor 79 0 R /FirstChar 34 /LastChar 118 /Widths 56 0 R >> endobj 6 0 obj << /Type /Font /Subtype /Type1 /BaseFont /ILDXKA+CMTT12 /FontDescriptor 81 0 R /FirstChar 103 /LastChar 116 /Widths 60 0 R >> endobj 14 0 obj << /Type /Pages /Count 4 /Kids [3 0 R 16 0 R 26 0 R 35 0 R] >> endobj 82 0 obj << /Type /Catalog /Pages 14 0 R >> endobj 83 0 obj << /Producer (pdfTeX-1.40.3) /Creator (TeX) /CreationDate (D:20160330133242-04'00') /ModDate (D:20160330133242-04'00') /Trapped /False /PTEX.Fullbanner (This is pdfTeX using libpoppler, Version 3.141592-1.40.3-2.2 (Web2C 7.5.6) kpathsea version 3.5.6) >> endobj xref 0 84 0000000000 65535 f 0000002913 00000 n 0000001876 00000 n 0000001764 00000 n 0000000015 00000 n 0000135379 00000 n 0000136357 00000 n 0000135240 00000 n 0000135101 00000 n 0000135656 00000 n 0000136216 00000 n 0000135932 00000 n 0000135518 00000 n 0000135793 00000 n 0000136498 00000 n 0000022607 00000 n 0000002798 00000 n 0000002034 00000 n 0000019392 00000 n 0000019535 00000 n 0000019633 00000 n 0000019668 00000 n 0000019910 00000 n 0000023368 00000 n 0000050644 00000 n 0000049504 00000 n 0000023253 00000 n 0000022725 00000 n 0000083817 00000 n 0000046289 00000 n 0000046432 00000 n 0000046530 00000 n 0000046565 00000 n 0000046807 00000 n 0000082426 00000 n 0000050529 00000 n 0000049623 00000 n 0000136075 00000 n 0000082774 00000 n 0000079211 00000 n 0000079354 00000 n 0000079452 00000 n 0000079487 00000 n 0000079729 00000 n 0000082545 00000 n 0000083019 00000 n 0000083044 00000 n 0000083106 00000 n 0000083141 00000 n 0000083615 00000 n 0000084062 00000 n 0000084087 00000 n 0000084147 00000 n 0000084181 00000 n 0000084642 00000 n 0000084666 00000 n 0000085012 00000 n 0000085370 00000 n 0000085394 00000 n 0000086010 00000 n 0000086651 00000 n 0000086753 00000 n 0000087079 00000 n 0000096849 00000 n 0000097199 00000 n 0000101841 00000 n 0000102118 00000 n 0000105967 00000 n 0000106207 00000 n 0000107895 00000 n 0000108113 00000 n 0000109798 00000 n 0000110016 00000 n 0000114455 00000 n 0000114718 00000 n 0000121153 00000 n 0000121508 00000 n 0000123892 00000 n 0000124138 00000 n 0000131986 00000 n 0000132362 00000 n 0000134875 00000 n 0000136577 00000 n 0000136628 00000 n trailer << /Size 84 /Root 82 0 R /Info 83 0 R /ID [<9F642B7B071C6D6D90DBA800374418EB> <9F642B7B071C6D6D90DBA800374418EB>] >> startxref 136899 %%EOF gplots/tests/0000755000175100001440000000000012624654363012755 5ustar hornikusersgplots/tests/heatmap_to_heatmap.2_test.R0000644000175100001440000000076012471456251020116 0ustar hornikuserslibrary(gplots) data(mtcars) x <- as.matrix(mtcars) ## draws expected image testHeatmap <- heatmap(x, Colv=NA, col=bluered(256), scale="column", keep.dendro=TRUE) # to prove this dendro is OK, redraw with same function: heatmap(x, Colv=NA, col=bluered(256), scale="column", keep.dendro=TRUE, Rowv=testHeatmap$Rowv) # but it doesn't work with heatmap.2() heatmap.2(x, Colv=NA, col=bluered(256), scale="column", Rowv=testHeatmap$Rowv, dendrogram="row") gplots/tests/dat.csv0000644000175100001440000140062612471456251014247 0ustar hornikusers"","V1","V2","V3","V4","V5","V6","V7","V8","V9","V10","V11" "1",3.54830022377166,4.98762515666861,4.3153118826282,10.2225793446639,9.34254395417913,8.82492748996296,3.54830022377166,4.384503533957,5.64795953546789,4.1133546816754,4.77260190574687 "2",6.39596545741415,7.90764242244625,4.62096009533438,11.9510144772509,9.82101063092539,11.2292732533917,4.90840757914297,5.01322721136904,6.97115740445838,4.23818768541642,5.30807251233407 "3",3.54830022377166,3.54830022377166,3.54830022377166,10.3692011271157,6.69336803878309,5.07384942667343,3.95429096793669,3.97076798325069,3.54830022377166,3.54830022377166,3.54830022377166 "4",4.14270956135568,3.54830022377166,3.54830022377166,10.9671738764112,5.01670287124879,5.16956541079112,4.24697193895882,3.54830022377166,3.97945053140578,3.54830022377166,3.94592105499445 "5",4.95788009688626,4.80684586133476,4.62096009533438,10.28959071822,8.18129801634355,7.05573632290516,4.24697193895882,4.64355114355199,5.14207053784841,4.83852784420667,4.77260190574687 "6",4.27379169695302,5.51373206269933,4.77805840635708,8.53964242110826,8.90268312222043,8.991123312071,4.35251077174588,4.96000670487273,6.61159776233956,4.34246051744749,5.19596301279726 "7",3.54830022377166,4.28998746829493,3.54830022377166,6.6629612881525,6.23832076740441,6.95118912698659,3.54830022377166,4.14366324222193,4.80633145078724,3.54830022377166,3.54830022377166 "8",3.97008655127665,3.54830022377166,4.53109727184687,8.59372244713554,6.14932815941719,4.39026667116431,3.54830022377166,3.54830022377166,4.15581191957622,3.54830022377166,4.33623189839069 "9",5.06174854283329,5.10587436566836,4.17697833106617,8.0716255065244,6.02925276001858,6.91455388808087,4.12059456186923,4.56562326784538,3.54830022377166,4.1133546816754,4.88205559019666 "10",4.38318186180789,4.58626187939733,5.24167748837746,8.95212053701228,6.40071463600213,8.21210233615098,4.95996179375818,5.01322721136904,4.73829774126364,4.94316935660089,4.42659789693357 "11",6.01310160570544,5.37256333406501,4.70273040173548,10.8096309517258,7.45572573054755,6.91455388808087,4.95996179375818,5.40592556224865,5.14207053784841,5.03853376538012,5.37741497761244 "12",3.54830022377166,4.80684586133476,5.45889453101379,8.27300922839699,7.82230606359757,7.38429208622585,4.52717022062621,4.90404046812327,5.2787215413229,5.12639274786288,4.50758419823284 "13",4.27379169695302,4.3753233849767,4.43062166511718,9.07755814120734,7.26145312498405,4.79051865717914,4.52717022062621,4.48006681116437,4.73829774126364,4.1133546816754,4.42659789693357 "14",3.54830022377166,4.07560683285484,4.3153118826282,7.93848457611293,6.05413185693349,4.48644669672571,3.54830022377166,4.14366324222193,4.15581191957622,4.1133546816754,3.54830022377166 "15",5.43989201389799,5.82106309200949,6.38939714611082,9.85512200926738,8.41345634845132,7.02173592168141,5.6591344389259,5.36813953141026,5.908506347799,5.28435507346132,5.30807251233407 "16",4.47860358440826,4.52173032050244,4.53109727184687,7.4237930007383,6.23832076740441,7.1531134753391,4.12059456186923,4.64355114355199,5.51298978105205,4.34246051744749,4.10886942232174 "17",8.72758053834499,9.11000116518177,12.5652463326732,15.3526024338127,12.579241591888,11.6558517155077,8.2194276919275,8.37134068175844,9.86206851076312,8.38682659409914,8.82985605347945 "18",5.2447303988107,5.37256333406501,4.84809592326134,3.54830022377166,4.3058722489524,3.54830022377166,5.6591344389259,5.47821319946465,6.25441840396481,5.88898252005338,5.19596301279726 "19",5.63977041271158,5.77824442532879,6.42845492233721,8.84103029011941,5.51439142996744,7.90115103777339,5.14502080212905,4.384503533957,5.61552538792453,4.78196079501175,4.93274810645829 "20",6.10308606649056,7.16329009363354,6.55712549554688,3.54830022377166,4.68891224809943,4.39026667116431,6.38034884627584,6.39951332746705,6.42656981487671,6.26793748710628,5.89613582798994 "21",8.91695021626861,8.58255292698616,8.68388339535045,16.0689994434005,14.9769572072369,14.1336982846518,9.60823258806614,9.75298881703293,9.56799060808511,10.6675735771075,10.9526227861086 "22",4.56403575450106,5.02844590494928,5.03393706940664,8.89585370355305,5.55101777956327,5.74518636420907,4.35251077174588,4.48006681116437,4.66516704800045,4.43350024566452,4.71305020543012 "23",6.26699265805594,6.12169436992618,6.67494907374409,8.79945776033231,9.40944781013521,7.61383736342438,5.22742614345585,5.78854419980623,6.35268776105888,6.08168542829163,5.62162634442846 "24",4.56403575450106,4.58626187939733,5.08949593862507,8.19347145355705,6.4570197312126,5.07384942667343,3.95429096793669,4.78227634053133,4.73829774126364,4.65808106126267,4.10886942232174 "25",4.90198673375679,4.98762515666861,4.43062166511718,8.26747153196927,5.43778714177974,4.72324945023249,4.24697193895882,4.27494782787477,3.97945053140578,4.1133546816754,4.23274464232371 "26",5.54375559944074,6.23481148737354,6.75344123428011,9.66839227629136,9.97406546890233,10.1667617003527,6.31282720400235,6.71348502662476,8.39071216893195,5.95632863375223,6.58799030207827 "27",4.64185256734797,4.28998746829493,4.43062166511718,7.29859270438049,7.84324791613154,6.30473681676143,5.41158127901156,4.384503533957,5.96006019369919,3.94912244603611,4.82879049046518 "28",9.96744776441568,10.1881675736414,8.78337570349508,5.53878302118535,8.45932583540746,7.94390401379986,10.5204456310971,11.0254885438205,11.0093088262179,10.2148354564346,10.1551390476869 "29",9.23663524358812,9.86777225596715,9.80297329462446,5.45783152550403,6.59691611192018,6.18495468671691,9.30202567198749,8.55326654263295,9.17469169792013,8.62153952661202,8.22101819580532 "30",10.7534858957759,10.5712538165739,11.1776424886436,16.572590826692,14.5513688082633,12.5988972427868,9.35231115025617,10.3714084798428,10.7386045026294,10.0808011723378,10.0664653118512 "31",4.64185256734797,5.02844590494928,4.77805840635708,8.39482590249134,7.52659786136667,5.59180320170385,4.79704755731515,4.84495354750819,5.36185741525923,5.16791879000176,5.23451608884748 "32",3.54830022377166,3.54830022377166,3.54830022377166,4.72904957070584,5.01670287124879,5.25801624538125,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166 "33",7.96841095917285,7.86416209594378,8.77224035423123,4.64558758720875,6.14932815941719,6.05368293120384,7.19474134121686,7.81291420734027,8.19183661884524,8.43693055695777,7.91847349982371 "34",3.54830022377166,3.54830022377166,4.3153118826282,5.61488371433785,6.41973750499147,5.93366313679853,4.12059456186923,4.56562326784538,4.28967224937531,4.23818768541642,4.10886942232174 "35",5.78549346301469,6.10474257283092,5.57306370014904,3.54830022377166,4.60803438435701,5.12270292620239,6.42891596161512,6.32724232099688,5.908506347799,6.28524461564841,6.12364384882668 "36",9.9142251840964,10.456673858868,9.30760066705108,6.0509730364866,7.75758167592432,7.35736175394867,9.89922835777744,10.0483594239014,10.9590800133788,9.70848525745093,8.83834264114361 "37",4.56403575450106,4.52173032050244,4.62096009533438,7.63686065552915,5.39764908336153,4.96927465433063,4.24697193895882,4.48006681116437,4.40133275723348,4.34246051744749,3.94592105499445 "38",6.3603261369929,6.32486807052967,5.80562626524342,8.46905443827572,9.87103160056325,7.17387660588074,6.31282720400235,6.08445307616774,6.170418516415,5.84212104415619,6.17960026676426 "39",4.14270956135568,3.92219398459048,4.62096009533438,5.94024907367982,3.54830022377166,6.82519262173196,4.52717022062621,3.54830022377166,4.40133275723348,3.54830022377166,3.54830022377166 "40",4.27379169695302,3.92219398459048,3.99458687560867,6.82412564138579,6.96138984243564,5.68598866291392,5.05629560314322,4.14366324222193,5.7104892060778,4.23818768541642,4.23274464232371 "41",5.63977041271158,5.66465997975799,6.50342732201785,9.37886527064805,8.21379020954388,7.36639506661982,5.81788128542292,5.99287240418047,6.10385346314284,5.88898252005338,6.21567278468669 "42",3.97008655127665,3.54830022377166,4.3153118826282,6.6629612881525,5.4766730864177,4.48644669672571,3.95429096793669,4.14366324222193,3.54830022377166,4.1133546816754,4.33623189839069 "43",5.7291387983615,5.56604371111536,6.42845492233721,8.30038240733836,7.76491918019003,7.2442527606336,5.30447425058107,5.36813953141026,5.43971219929874,5.97804653447498,6.10447007721142 "44",3.54830022377166,3.92219398459048,3.54830022377166,6.40082385541707,4.95881094319955,3.9737401164974,3.54830022377166,3.97076798325069,3.54830022377166,3.94912244603611,3.54830022377166 "45",5.15683916790939,4.80684586133476,5.94971686400677,8.19347145355705,6.00390758948263,7.23440933245103,4.736433099266,5.32915405009094,5.47688516711479,5.24679677984632,5.23451608884748 "46",8.32221761263854,8.57658773912705,7.50586588003968,4.64558758720875,5.43778714177974,6.14258578248584,7.50874309491128,7.04980577540244,6.67324497101316,8.05281087128144,7.7180186839132 "47",7.44862159904616,7.42579753342585,7.6015342628995,12.2564874579549,10.8911744563996,9.04251928430416,7.96271832050898,7.74639555998162,7.69313693424559,7.82257122540105,7.98633400049947 "48",3.54830022377166,3.54830022377166,3.99458687560867,6.61077692935938,3.9890115841535,4.27998953468607,3.95429096793669,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166 "49",9.86520892758349,10.5424955431946,9.87236674920621,6.12845239811469,6.90903343211634,6.65746273872887,9.19356881637435,9.08073538378508,9.58193198103218,8.68030059676385,8.25101756019936 "50",6.68133857209962,7.27859059456544,7.15025968470569,4.80590313991191,5.07172184844156,4.65095609464182,6.8156305051907,6.38179577561934,6.95889432739089,6.60625503946114,6.25082171740127 "51",6.22781582447258,5.99833314874529,7.2288254796775,4.64558758720875,5.55101777956327,4.85356377363824,6.10801834567294,7.35769553409876,8.31633771077612,5.84212104415619,6.45977249775491 "52",5.1102803075969,5.48674339719394,4.70273040173548,7.86698047363564,7.43744503701482,6.14258578248584,5.10151945545351,5.57941184941936,5.04112969494906,5.24679677984632,5.34323580728863 "53",4.84297810234872,4.70290661503082,5.08949593862507,8.07796942539909,6.56323269003586,5.52494213250567,5.18694714265321,4.84495354750819,4.80633145078724,5.08331287740239,4.82879049046518 "54",7.63627728800101,7.31504121459539,7.64299312979523,11.3155231056251,10.1037953584002,8.42949759993972,7.29295130035411,7.21698980922899,6.31421497718848,7.69511285465249,8.11779620963715 "55",5.51007576263887,5.48674339719394,5.49810773191112,8.97266680756033,6.78362663914756,6.64253913084015,5.41158127901156,5.15921474215736,5.88196510402005,5.51920250319321,5.53547894831993 "56",9.85426088753482,10.3645568894423,9.01512583585322,5.68673393056132,7.3024800928342,8.03709544896096,9.62537273422518,9.21193802878431,9.57994858946864,9.43106642948714,9.64291026526287 "57",7.48165658586729,7.43244281835256,7.91061683351649,5.49895646334672,5.71993474216382,6.00694829385502,7.15728100924063,8.02409220226986,9.50666641752432,7.06787458033587,7.14334294337987 "58",4.64185256734797,5.34229206882021,5.37656757260563,6.61077692935938,7.82932069098373,7.48720844411563,4.85422248960333,5.40592556224865,6.95889432739089,4.51507976905241,5.27185771113154 "59",3.54830022377166,3.92219398459048,3.54830022377166,5.85076855868641,4.95881094319955,4.39026667116431,3.54830022377166,3.54830022377166,4.15581191957622,3.54830022377166,3.94592105499445 "60",8.74463002246685,8.82320533215313,8.22053217616702,5.57739919796435,6.36186838199559,6.51705963771854,8.80849751967805,8.22290605381997,8.17087687987988,8.13454690736269,8.18594905456206 "61",5.28634990203998,5.21302385056593,5.24167748837746,9.02933918090383,6.47529295316335,5.62396795076569,5.60160582989158,5.06400718580499,4.87007984850553,5.28435507346132,5.37741497761244 "62",4.56403575450106,4.3753233849767,4.62096009533438,7.98650004883687,5.97807741409379,5.07384942667343,4.736433099266,4.14366324222193,5.04112969494906,4.78196079501175,4.98115357179952 "63",5.83953755398429,6.05258163906458,5.19311942679736,4.00522961816383,3.54830022377166,4.48644669672571,5.68696720047667,5.73213596531648,5.09271807264536,5.20801686055131,5.15610281821546 "64",3.97008655127665,4.45187351580727,3.54830022377166,6.91267003685449,4.95881094319955,4.96927465433063,4.24697193895882,4.71540688131158,3.97945053140578,3.94912244603611,4.10886942232174 "65",3.54830022377166,3.54830022377166,3.54830022377166,6.27135914474364,5.75123300751287,4.39026667116431,4.35251077174588,4.384503533957,4.28967224937531,3.54830022377166,3.94592105499445 "66",7.22280413999188,7.57733667784068,8.76101826342341,11.8510386468952,10.2775537127104,12.1801836468234,7.66329537746326,7.14625069543942,12.7906725698554,7.62353403261997,7.67433272987327 "67",4.56403575450106,3.54830022377166,3.54830022377166,7.34155739329718,6.05413185693349,4.85356377363824,4.736433099266,4.84495354750819,4.80633145078724,4.34246051744749,4.10886942232174 "68",6.01310160570544,5.8828036586062,6.28664740687677,6.82412564138579,8.28686710537504,7.37537160534035,5.37690725505175,5.86887992335646,6.47951288681902,5.45650952534963,5.02750813069502 "69",3.54830022377166,3.54830022377166,3.54830022377166,6.12845239811469,4.3058722489524,4.14782244847307,3.54830022377166,3.54830022377166,3.54830022377166,4.1133546816754,3.54830022377166 "70",5.75761827849279,4.90109318218552,6.99173323708118,4.33331678257734,3.9890115841535,4.65095609464182,4.90840757914297,5.64267984583869,6.170418516415,6.06158243388933,5.89613582798994 "71",3.97008655127665,3.54830022377166,3.54830022377166,5.61488371433785,4.68891224809943,4.14782244847307,3.54830022377166,3.54830022377166,3.97945053140578,3.54830022377166,3.54830022377166 "72",4.14270956135568,4.07560683285484,4.77805840635708,6.59294157316564,5.22247567483854,4.65095609464182,4.12059456186923,3.97076798325069,4.28967224937531,4.1133546816754,4.23274464232371 "73",11.6866871178468,12.2420452702483,11.7383540637143,6.83927355652247,7.81525697866385,9.85335343669308,11.5066676796878,10.7648318891184,10.2639976095484,10.7754923466213,10.7681388846469 "74",6.34215677001306,6.65907835489105,5.71099058057816,9.03586234707771,6.79812335767876,7.1841457180674,5.74090997444246,5.84263840078618,5.74066404330379,5.86575800256349,5.82675902967033 "75",7.14227631031255,7.1308989742045,7.98977766513664,10.1775856067455,8.2403173149625,7.94990899221953,6.34699967672477,6.61141446129441,6.98331532425672,6.73656644191199,6.57431102493756 "76",8.16886822106531,8.56458271440011,7.33404463366619,10.9908576274865,10.3079255461611,10.174458822354,7.44813034354882,7.58819087613211,8.43091825674161,7.92347700974267,8.36512505795768 "77",5.32657933118044,4.64642175332692,5.03393706940664,6.55657468638091,5.9248799958122,5.88248359145759,4.52717022062621,4.384503533957,5.09271807264536,4.34246051744749,4.88205559019666 "78",10.7339962972902,9.94151353297849,10.4958820344868,7.0358991602313,8.79595341846954,8.87934451321461,10.168401140003,10.6979569679753,11.4797927180091,11.111031932343,10.7688785432116 "79",8.19393334524338,8.55247675986609,8.03401726116649,4.80590313991191,5.43778714177974,5.85613856012376,7.18546823726635,7.14625069543942,6.78897959785779,7.11627980185974,7.0871105816258 "80",8.39316870640549,8.35051716766043,9.99391314327221,6.42127233239575,6.82667759155909,6.51705963771854,8.6091379046593,8.48159830870355,8.98382794808631,9.02816294905766,8.24250996755826 "81",4.64185256734797,3.92219398459048,4.43062166511718,7.4825061660954,4.68891224809943,4.48644669672571,3.95429096793669,4.84495354750819,3.97945053140578,3.54830022377166,4.77260190574687 "82",8.18895514970792,8.13188742664223,7.59309652537082,12.0941629439202,10.053892301895,9.63455860285938,7.97348809552184,7.96100560637981,7.81312427424552,8.29784698674059,8.25101756019936 "83",9.6305371728803,9.41405214944074,10.20312642673,7.04895326229142,7.79389953239992,7.02173592168141,9.02294138520114,9.73428188217982,11.2920867030076,8.79994485661215,9.05284051470773 "84",5.43989201389799,5.56604371111536,6.22111368694742,9.73402779194592,8.76342638056203,10.4023935374619,6.46037622252273,6.08445307616774,10.7676428137667,6.46257214152392,6.93594480505962 "85",7.72851224971026,7.46521367211002,6.93916689557714,5.12329148338679,6.02925276001858,6.32372596223563,8.35728086541336,7.59577391721903,7.47915422709469,7.32814443229589,7.45567871962375 "86",3.54830022377166,3.54830022377166,4.17697833106617,5.68673393056132,6.25969592333039,4.96927465433063,4.35251077174588,4.27494782787477,4.40133275723348,4.51507976905241,3.94592105499445 "87",7.56105335493157,7.27859059456544,7.68328605018914,5.2287614540209,6.30147623701314,5.88248359145759,6.70254524427502,7.81291420734027,9.39602862205146,6.98682275830224,7.17064709329826 "88",7.49789229134066,7.39890304907699,7.94413231320583,12.3992239585314,10.477839258701,9.59303888585416,8.03646440075341,8.52977129672558,8.63205997312033,7.71402953388634,8.37293953125497 "89",3.54830022377166,3.54830022377166,4.17697833106617,5.53878302118535,5.01670287124879,4.27998953468607,3.54830022377166,3.97076798325069,4.28967224937531,3.54830022377166,3.54830022377166 "90",5.20160456221532,4.64642175332692,6.19855602264465,9.49228149289181,8.54690008144452,7.3299137996592,6.18607814866558,6.0621316163943,6.49672271584863,6.61984398459466,6.99835644145586 "91",7.08952995702998,7.04653885218916,7.292883496079,10.1805311679616,8.3368817415583,7.29247571679326,6.34699967672477,6.65607019101962,7.00732291632297,6.28524461564841,6.64141001370651 "92",3.54830022377166,3.54830022377166,3.54830022377166,5.75482250638952,4.16918380110659,3.9737401164974,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166 "93",3.54830022377166,3.92219398459048,4.17697833106617,6.12845239811469,4.68891224809943,4.48644669672571,3.54830022377166,3.97076798325069,3.97945053140578,3.94912244603611,4.10886942232174 "94",7.67958587649345,7.69241450619318,7.59309652537082,9.93927016145086,9.98820163855651,9.16352095877154,7.3603555956831,7.41031118391363,7.82660267366782,7.40012787657292,7.17963333217221 "95",8.22344598109642,7.99532610620531,9.45410127595259,5.8812668252616,7.0961370359168,6.03051736948815,7.6962113969891,8.38450232548709,9.76065910605987,7.58292930028579,7.88056001282118 "96",8.76816529871051,8.96690374962634,10.0379443085744,6.44142432501257,7.06063744350186,7.07795937095772,8.92386860471468,8.50186663160025,9.07398401368605,9.47780110718558,8.74212180016923 "97",4.95788009688626,4.75624419227938,4.84809592326134,6.80881348613757,6.49332967836598,5.65534952806707,5.0091772610784,4.84495354750819,5.40139710278378,4.34246051744749,4.64957162869111 "98",5.63977041271158,5.61629598738969,6.81323095846476,4.33331678257734,4.51917288855208,4.57254454079382,5.18694714265321,5.81586767921463,7.55409161145907,5.390508541124,5.19596301279726 "99",4.56403575450106,4.45187351580727,4.53109727184687,6.29379629231463,5.58662010220739,5.95853781919032,4.90840757914297,4.48006681116437,4.49869474411581,4.51507976905241,4.42659789693357 "100",9.57636320736096,9.60478743686095,9.93691385631424,6.07729316885177,6.75417835232469,7.3299137996592,8.91273841003805,8.47751017522932,8.63588601185669,9.00536960336184,8.71779464807795 "101",8.88655510159278,8.80035892971412,7.91738279967502,6.0509730364866,6.40071463600213,7.50366343129384,8.78427179649975,8.6066423344331,8.69575946364143,8.65448007324365,8.48893343932083 "102",4.71360779724634,4.80684586133476,4.62096009533438,8.65435140440962,6.75417835232469,6.78509433379566,5.41158127901156,4.56562326784538,8.14960710381963,4.89214603725089,5.44305738224905 "103",6.49770703607465,6.55220842588416,6.30781724882702,8.81091520633996,7.91092643271975,6.53337388382174,6.06724579431514,6.12802624841955,6.03386567505439,5.60778853118367,6.02495041947975 "104",4.27379169695302,3.92219398459048,4.43062166511718,7.56629088144444,5.35616394241025,4.72324945023249,4.60239513168466,4.27494782787477,4.93015836537268,4.51507976905241,4.33623189839069 "105",7.24224442514873,7.41912121017553,7.70692907350163,5.00715176399614,6.986860119961,5.77381127177675,7.1761343582657,7.94923159757619,8.8812223607632,7.19946355001097,7.21502181493005 "106",5.43989201389799,5.99833314874529,6.706873220412,3.54830022377166,3.54830022377166,4.72324945023249,4.60239513168466,5.06400718580499,5.61552538792453,5.390508541124,4.88205559019666 "107",7.10023689289805,7.24874425335053,7.60992258308702,5.41530931619833,6.25969592333039,6.70130537857918,7.95730299948966,7.69792596610665,7.57822351135499,8.1204564843621,8.30103282855084 "108",7.07874176605886,6.58874484760681,6.65871092362578,9.46837342804354,8.97073843022801,8.12460946818293,6.82765362378199,7.06085076242672,6.62726529325089,6.83277277346818,6.84820604888636 "109",3.54830022377166,3.54830022377166,3.54830022377166,4.55382476248647,4.41984085544861,4.79051865717914,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166 "110",3.54830022377166,3.54830022377166,3.54830022377166,5.27816114646231,3.9890115841535,4.48644669672571,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166 "111",6.65235551364311,6.60071482461707,7.01730337161271,9.93927016145086,8.01298567750114,7.31131752008256,6.77893420749542,6.41700761662776,6.70308285135445,6.23265672738425,6.45977249775491 "112",5.40326495224052,5.06782347272974,5.418413249836,7.30945573857209,6.19454648924689,5.82926094386062,5.14502080212905,5.06400718580499,4.73829774126364,5.08331287740239,4.93274810645829 "113",5.83953755398429,6.0166588706562,6.22111368694742,8.6961465914416,6.23832076740441,6.65746273872887,5.41158127901156,5.36813953141026,5.61552538792453,5.76856946880134,5.72820962527079 "114",8.94376822534918,9.05959422579634,9.32293901495519,6.27135914474364,7.56075963191614,7.33912187219212,8.68307708806915,8.65811030377855,10.2921303162435,8.98480171660266,8.89367732498072 "115",6.77832045411394,6.61258342379141,5.89393465653991,8.70026017388439,7.81525697866385,7.89493821596202,6.52124265530991,6.34566665396276,6.31421497718848,6.08168542829163,6.28509519859856 "116",5.94145031362918,6.21921231712512,6.75344123428011,8.26747153196927,6.49332967836598,7.84424329146071,5.98182671402093,5.70299476097377,5.67960036331149,5.76856946880134,6.12364384882668 "117",3.54830022377166,3.54830022377166,3.99458687560867,6.24855060583191,4.83273793005469,3.54830022377166,3.54830022377166,3.97076798325069,3.54830022377166,3.94912244603611,3.94592105499445 "118",7.23255742572302,7.0202222031051,8.08296329851879,10.0038887618932,9.97406546890233,9.24864854911992,7.00730249805654,7.75318796156962,8.12256962149903,7.75113025875458,7.25805623997653 "119",7.39759226141577,7.93124106992928,9.09175618158335,5.53878302118535,5.65499240986345,5.98296049015383,7.63640716658413,6.96998692311962,7.33538873657639,7.56913446046745,7.27491277202479 "120",10.5801971333034,10.5577029179107,9.77907978282873,6.72965577471788,7.86388858832763,9.33132601322624,10.622123536267,10.3458724268784,10.0078626350706,10.2774539923396,9.9796693691634 "121",3.54830022377166,3.54830022377166,3.99458687560867,5.06671461268446,7.19761054304302,6.98690109334928,3.54830022377166,3.54830022377166,3.97945053140578,6.93370830289886,6.96749404277538 "122",3.54830022377166,3.54830022377166,3.54830022377166,5.00715176399614,4.16918380110659,4.48644669672571,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166 "123",8.58717845543906,8.89923608373775,8.52043656504386,5.65130733031753,7.82230606359757,7.44522321742214,8.54928418681421,9.06992164703882,9.59966080439663,8.69303932862712,8.82985605347945 "124",8.10157721953491,7.82437528016681,9.55713064863933,12.2071533622678,10.2373524556362,10.6896832080787,8.30712100765054,7.97848761281659,9.06550160007034,8.79108608806571,8.90449375768947 "125",6.9184097826443,7.1308989742045,6.22111368694742,4.72904957070584,6.00390758948263,5.77381127177675,7.19474134121686,6.84754823848757,6.8829993213614,7.22614562648883,7.12484473646843 "126",6.70973609194007,6.73691655930512,6.95249236326906,9.2861684887304,8.20842556768602,7.62890668931544,6.46037622252273,6.58083381215475,6.53051842174467,6.56467909886764,6.54654471787116 "127",5.54375559944074,5.24667094069968,5.33324863235043,8.88143687241979,6.56323269003586,6.72979247179919,5.18694714265321,5.64267984583869,7.52126959426053,5.12639274786288,5.37741497761244 "128",4.27379169695302,3.92219398459048,3.54830022377166,5.27816114646231,4.60803438435701,4.65095609464182,4.12059456186923,3.54830022377166,4.15581191957622,3.54830022377166,3.54830022377166 "129",6.51396439906776,6.38180153379745,6.72256765234604,10.2854924878837,7.40957806504676,6.86418378240018,6.63555812986883,6.36384896693785,6.70308285135445,6.06158243388933,6.21567278468669 "130",7.14227631031255,7.21825971644639,7.18446275990153,9.62147006138431,8.36125188354092,8.57629934381883,7.02823820460525,6.76864888687765,6.90875232671333,6.93370830289886,6.95705547300987 "131",4.27379169695302,4.85503985708184,4.3153118826282,6.64578118848052,5.55101777956327,6.2854828908731,5.0091772610784,4.56562326784538,4.73829774126364,4.78196079501175,4.98115357179952 "132",5.57656653888652,6.0166588706562,6.79851940891416,5.06671461268446,5.01670287124879,5.34037022736344,5.44531198202201,6.96998692311962,8.16028132058192,5.95632863375223,6.33495998760446 "133",8.13302640037837,8.49670392464652,7.85530964459838,4.55382476248647,6.02925276001858,5.80182700427773,7.62960552780545,6.84754823848757,6.93404518186094,6.88973460730697,6.54654471787116 "134",8.3974891178613,8.50928593609447,8.50706045886544,5.45783152550403,6.81247266514148,7.12138953885052,8.25514904775311,8.38886292662863,9.06550160007034,7.71402953388634,7.7840870982867 "135",7.4062246804254,7.09775319135822,7.59309652537082,10.8143793391349,9.77101041442592,8.69172890321855,7.7156042158484,7.69792596610665,7.87280451798811,7.37653420130328,7.64875820281652 "136",6.59252977461817,6.75838767091851,7.40333918797982,5.00715176399614,5.51439142996744,5.49014363497923,6.20491650857206,6.88540467353742,8.77768849104139,6.04117709694692,6.04527163698523 "137",8.87111368185725,9.17062778027327,9.28166845148273,6.42127233239575,6.69336803878309,7.05573632290516,8.53483187909828,8.41902271321194,8.76377055339133,8.45948004832555,8.54533338091267 "138",8.69987454294599,8.43868306429472,8.63962983906694,6.82412564138579,6.49332967836598,7.4621655067507,8.96485755259403,8.525817875628,9.17469169792013,8.7367580939207,8.5693302404221 "139",4.38318186180789,4.45187351580727,4.70273040173548,5.17721527231849,6.54608201225882,5.16956541079112,4.24697193895882,4.384503533957,5.09271807264536,3.94912244603611,4.50758419823284 "140",6.93048309437804,7.30057251565307,7.76813503017998,10.0105253070144,10.2839341308275,9.53641552576228,7.16673889189749,7.82585569866269,8.22271435187535,8.11098555512941,7.91847349982371 "141",4.47860358440826,3.92219398459048,3.54830022377166,5.81955380472203,5.9248799958122,5.02279148452906,4.35251077174588,4.384503533957,4.40133275723348,4.58944936008883,4.33623189839069 "142",5.1102803075969,5.02844590494928,5.45889453101379,7.98650004883687,5.95174206023759,6.75771463598581,5.47815535844696,5.28887854364493,5.36185741525923,5.51920250319321,5.59354957822205 "143",7.67245805714751,8.08639315734457,8.1186091113731,5.72122142567301,6.82667759155909,5.68598866291392,7.67655263199372,7.10419174654258,8.60498925706414,7.72650340227609,7.2832669135735 "144",7.28034739162555,7.66449985887226,6.3694482360058,5.06671461268446,5.4766730864177,4.9129913680454,6.25992873135254,6.53367259212264,8.62822374295735,5.57893710519621,5.50541836722824 "145",6.22781582447258,5.61629598738969,5.64386590959061,8.19930091953913,7.40957806504676,8.0143581580013,5.86681368403009,6.19088373634334,6.33358512450331,6.44735550801757,6.36723145639011 "146",4.47860358440826,4.75624419227938,4.3153118826282,7.4825061660954,5.75123300751287,4.85356377363824,4.90840757914297,4.71540688131158,4.93015836537268,4.83852784420667,4.50758419823284 "147",7.46523447778001,7.69793278885674,7.81962824379556,10.3769257465971,9.38590836437453,8.44231930831656,7.74735385935746,7.03867422770865,7.37270881899656,7.40790664530083,7.70567223139389 "148",7.66529461226046,7.53477084058202,7.86234069862714,9.32396535040109,8.3070820659982,8.17159147679936,7.08925483758914,6.38179577561934,6.85676877684425,6.78548965119309,7.02856174187383 "149",11.4249869346575,10.9436296712745,11.2995588950888,7.98650004883687,9.26466000878117,9.95368240397978,11.6471110768436,11.1936226247814,11.5170610146132,11.42801674627,11.3100440596757 "150",9.77022146767524,10.3277725609993,9.67735134467817,6.82412564138579,7.64275991509742,8.11929319848446,9.81059997997685,9.15424173008054,9.78668775591481,9.35899429697753,9.24377644053609 "151",4.95788009688626,4.98762515666861,5.9767616444246,4.00522961816383,4.60803438435701,4.39026667116431,4.85422248960333,5.47821319946465,6.74668576793685,4.72200141940468,5.30807251233407 "152",5.36552087758783,5.27939455545772,5.45889453101379,6.74584694884066,6.10256195383644,6.3971794717333,5.14502080212905,5.20403385694408,4.98704716969574,5.24679677984632,5.07200980811868 "153",8.91695021626861,8.89445010257218,10.2155039007044,6.57487622139197,8.0554535450824,6.59679162433492,7.88498001914227,9.06448420152243,10.8815052208511,8.13454690736269,8.26368534183221 "154",8.58717845543906,8.53719976752436,8.43354318234649,6.29379629231463,6.58017568593367,7.76467640696839,7.95186718386867,8.38012847175178,9.01353124291589,8.80874948622336,8.75113959857946 "155",3.54830022377166,3.54830022377166,3.54830022377166,5.06671461268446,5.12418767680969,4.14782244847307,3.54830022377166,3.97076798325069,3.97945053140578,4.1133546816754,3.54830022377166 "156",6.5459221304447,6.81067701192704,6.79851940891416,8.84475079942027,8.24556452902951,8.0200763006083,6.94257508980405,6.39951332746705,7.40907859597,6.31922086088212,6.48930028701799 "157",8.34476791537849,8.96918138062587,8.45227747610215,5.81955380472203,6.12614548408454,5.85613856012376,7.82675707818696,7.35769553409876,7.65584716466506,7.19946355001097,6.93594480505962 "158",5.67024772270509,5.75630205634913,6.32866748787329,4.87732981549012,4.89765324881629,4.79051865717914,5.60160582989158,5.73213596531648,7.52954593192813,5.63600666800275,5.75354754840492 "159",4.38318186180789,4.52173032050244,5.03393706940664,3.54830022377166,3.54830022377166,3.54830022377166,4.12059456186923,4.56562326784538,4.93015836537268,4.23818768541642,4.23274464232371 "160",5.20160456221532,4.90109318218552,5.03393706940664,3.54830022377166,3.54830022377166,4.57254454079382,4.35251077174588,5.32915405009094,4.87007984850553,4.94316935660089,4.71305020543012 "161",7.92113035696155,8.11962199806121,7.73785856428288,5.17721527231849,5.8974681997572,6.44982545987761,7.68313555637,7.53395441940694,7.08828955603528,6.98682275830224,7.0483473674609 "162",4.71360779724634,4.85503985708184,6.32866748787329,4.33331678257734,4.41984085544861,3.9737401164974,4.95996179375818,5.06400718580499,5.67960036331149,5.08331287740239,5.59354957822205 "163",6.88155947257217,7.50986682441842,6.5918119313734,4.80590313991191,5.26870826387192,4.79051865717914,6.12795561899001,6.38179577561934,6.46208792210859,6.14027133670331,5.67601085725439 "164",5.1102803075969,4.80684586133476,5.14246728046542,10.4372772236378,10.2027492580945,9.00845975317351,7.3270512649585,7.90724538230873,9.89594177463648,7.03801974014554,7.64229261323216 "165",6.93048309437804,6.82090632110934,6.42845492233721,4.55382476248647,5.75123300751287,5.55881082326398,6.57956677089401,6.50132385628596,7.2274218739566,6.19644645152128,6.30191763602776 "166",5.54375559944074,5.66465997975799,5.74329962514772,8.26191243566259,7.27182102480764,6.07645934003377,5.86681368403009,5.54656694097749,6.1264044911443,5.5494201062907,5.94046067728516 "167",8.19889436741583,8.22259985460968,8.8519686499773,6.12845239811469,7.29233343640058,6.14258578248584,7.5308267704392,8.26622421970556,9.69070049312223,7.36858224895282,7.56233988963134 "168",9.19508261043595,9.20774635522242,8.14189122681626,6.59294157316564,6.51113614459311,6.54949985976367,8.00006449060255,8.41475267311222,8.51643740469187,7.99218152092415,7.67433272987327 "169",7.39759226141577,7.41912121017553,7.57607042757072,9.69953119567674,8.58463511053843,8.28036153357884,7.27559076168853,7.17699871670462,7.24766993451312,7.05799252038243,7.00849647408597 "170",6.68133857209962,7.27118736405129,5.92211619827359,4.87732981549012,4.89765324881629,5.45435632888149,6.25992873135254,6.01635514548556,6.67324497101316,6.36866909887184,6.08502244599298 "171",9.63236942232585,9.98491423845628,9.97138301222295,6.8690907757931,8.19763587511132,7.91962981770912,9.42459643967593,9.45776633691265,9.835715546093,9.47963935157952,9.19836074801692 "172",7.96258530413221,8.19169250510753,7.84824397936422,5.68673393056132,7.40957806504676,6.612207216185,7.79673519062234,8.10057507992873,9.50038808177752,7.36858224895282,7.81888169009264 "173",9.93664041614915,9.60332227471692,10.0410385489833,7.6282272411301,8.30205489161311,8.73751058569768,10.2223361460872,10.0456032989481,10.2008781506145,10.1036258981269,10.2247251786142 "174",7.34467278053384,7.41912121017553,8.25829674835298,5.49895646334672,6.94848101549024,6.37917785202581,7.15728100924063,7.80639942758163,9.32200803589805,7.05799252038243,7.34041517352733 "175",4.47860358440826,4.52173032050244,4.17697833106617,3.54830022377166,3.54830022377166,3.54830022377166,4.736433099266,4.78227634053133,4.15581191957622,3.94912244603611,4.23274464232371 "176",8.34923587617628,8.4808201834151,8.61074361341653,6.40082385541707,7.21921073366603,7.16353289372454,8.95404065608808,8.30827599759587,8.38617469708542,8.47800516301288,8.53143916573651 "177",8.95845425295504,8.89923608373775,8.94744998685894,6.500187110462,7.29233343640058,7.67318643142273,8.91552902862708,8.61038024326103,9.05981879654877,8.84629310173371,8.61286188047902 "178",4.47860358440826,5.06782347272974,4.84809592326134,8.0524239857719,6.41973750499147,5.37954658604057,5.22742614345585,5.28887854364493,5.51298978105205,5.20801686055131,5.64910430920177 "179",11.5111393851455,11.4750413354948,11.3927231532787,8.41999648399492,9.64778520643948,10.0682906958432,11.3520924736003,11.4338596693551,11.909754760413,11.6055546500839,11.3446879465271 "180",10.5896571157124,10.2954788660749,10.3083105791255,8.02641622832246,9.30287141447707,8.86037230025685,10.4510125497884,10.7597963035378,10.7918311257866,10.8319729859424,10.8218742927296 "181",6.26699265805594,5.75630205634913,5.67786163365234,4.80590313991191,4.60803438435701,4.14782244847307,5.81788128542292,5.51285175027105,5.61552538792453,5.48824617712437,5.34323580728863 "182",9.11345982061563,9.17655252407485,8.71910607848127,6.51923699993902,6.94848101549024,7.22449745441825,8.47552671694057,8.69729742885466,8.74263823210139,8.38289921774678,8.07529774133243 "183",7.90299095098025,8.14404909879108,7.38388137229294,5.72122142567301,6.76897938111069,7.11065571890034,8.27703265362688,8.01847016657006,7.81312427424552,8.03288399019337,7.98122628200915 "184",7.90906291659445,7.79893645999441,7.15025968470569,5.32561057076274,6.12614548408454,6.24614906756788,7.63640716658413,7.34873469645984,7.2274218739566,7.06787458033587,6.94653945327788 "185",10.1292905245739,10.1475342400379,11.2233005207585,8.12773734675432,8.7301479243018,8.39033259099638,9.65070691891703,10.1129741003053,11.4924984667212,10.1585822952811,10.2672257278555 "186",3.54830022377166,3.54830022377166,3.99458687560867,5.2287614540209,4.89765324881629,3.9737401164974,3.95429096793669,3.97076798325069,3.54830022377166,4.1133546816754,3.54830022377166 "187",5.67024772270509,6.05258163906458,5.67786163365234,4.19185126479166,4.3058722489524,5.07384942667343,5.84257292711029,5.7606426863395,5.54809236335654,5.20801686055131,5.41067060124599 "188",6.28617087473548,6.03473941582247,6.50342732201785,7.12485544624734,7.37155609004784,6.92687122010297,5.63069073389597,5.7606426863395,5.93453103270874,5.86575800256349,5.89613582798994 "189",7.74218994995742,7.94521633128402,7.84824397936422,12.0006035758781,11.1421586932385,10.4411942834266,9.14208687930023,9.37014280166038,9.324379635642,8.7275008426473,9.04553060112572 "190",3.54830022377166,3.54830022377166,3.54830022377166,5.27816114646231,4.51917288855208,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166,3.94912244603611,3.54830022377166 "191",6.3603261369929,6.38180153379745,6.28664740687677,4.64558758720875,4.89765324881629,5.12270292620239,6.00369290325292,6.27044767527808,5.96006019369919,5.97804653447498,5.75354754840492 "192",11.3333609908044,10.9835891591669,11.8737912629646,7.57530462869955,9.02965990602696,8.77176305537253,9.95858487031001,10.3725085536542,11.1800433671402,10.4391954156623,9.88867569701722 "193",8.50549588322863,8.38847925203875,8.35606792036895,11.1525877050588,10.3619988170923,8.93178101147768,8.33241949645516,8.24231980078866,7.99716388364244,8.39464934008847,8.46354623886851 "194",7.05691654390939,6.32486807052967,7.02991772613112,8.66280803012047,7.7794825372703,8.48011311697305,5.91401088991375,6.51759189519488,7.51294511231341,7.12576620834847,6.85947565463405 "195",6.95432532809127,6.32486807052967,8.31058231591351,5.911083037832,6.38142750577997,5.93366313679853,6.83957525877219,7.74639555998162,9.27373787982762,6.73656644191199,6.58799030207827 "196",6.72372275293425,6.60071482461707,6.75344123428011,8.51649551299268,7.42821628028939,7.70906906148302,6.42891596161512,6.59620756668132,6.40846469499631,6.43197066329358,6.36723145639011 "197",8.45665143517115,8.14000662783682,8.74970806707209,11.7250752399116,9.86763702443067,9.75581835863199,8.63307829323579,8.44018494090811,8.56139393720079,8.6512197159427,8.45620975321545 "198",12.6595085164313,12.5060385004576,12.4657239542973,8.0716255065244,11.0297305802191,10.8416255126892,12.7399140812295,12.6767043218085,11.3011427281434,11.9411637458979,12.277390966071 "199",5.28634990203998,5.61629598738969,5.80562626524342,7.82984692987508,6.4570197312126,6.1208982606487,5.7142170410774,5.64267984583869,5.88196510402005,5.08331287740239,5.53547894831993 "200",11.9365742214934,11.1387726659941,12.5740837870325,9.41933413531431,10.1037953584002,10.9539576761266,12.1838711108216,12.3000467120412,12.6672287096481,12.6223563346198,12.1900759280714 "201",9.90516062987117,9.92166641344763,9.68923458440224,7.4632017364414,7.87748596753984,8.27559185040856,9.59611210364315,9.43055547323926,9.75715285337077,9.8142358992996,9.38944660327715 "202",5.94145031362918,5.77824442532879,6.1044136676551,7.34155739329718,7.15340186629746,6.96319334894459,5.60160582989158,5.47821319946465,6.56351593648969,5.71714885454669,5.98336777510678 "203",7.07874176605886,6.64759822251434,7.19568362250554,8.51182113882388,8.23505088897801,7.75097540326962,6.68940081877738,6.41700761662776,6.54711451758993,6.91189218289673,6.94653945327788 "204",5.57656653888652,5.94181150757653,6.24330683421088,4.55382476248647,4.83273793005469,5.02279148452906,6.04639115237076,5.73213596531648,5.64795953546789,5.91180974276632,5.91848170686069 "205",7.91510931344368,7.57733667784068,7.55014554719028,5.57739919796435,6.05413185693349,6.65746273872887,7.573997487832,7.19713459908424,7.29706680728901,7.61684601028103,7.44827704992753 "206",8.28538547120202,8.55551280370598,8.00255715830206,6.0509730364866,7.21921073366603,7.03316008565936,8.38172000092873,8.44438030541939,7.97313855605667,8.23821723466124,8.16808848214259 "207",5.20160456221532,5.64070422642102,4.91368556592511,4.19185126479166,3.9890115841535,4.39026667116431,4.85422248960333,4.84495354750819,5.61552538792453,5.03853376538012,5.15610281821546 "208",6.94245436265354,6.69296641160022,7.12699231844794,9.04882077054196,7.59412520476386,7.37537160534035,6.56521215361864,6.41700761662776,6.77502214750378,6.53625939289495,6.58799030207827 "209",6.57716568849045,6.99340840750961,8.1186091113731,5.68673393056132,5.68786865869757,6.24614906756788,6.41291488277294,7.35769553409876,9.11292164986098,6.46257214152392,6.39876851545925 "210",6.9777730900629,6.98435666679814,7.7530766872274,5.78758527908358,6.21660807334217,5.82926094386062,6.8156305051907,7.11482364221799,8.28742535969934,6.87852433571936,7.07751845829569 "211",5.75761827849279,6.0166588706562,5.71099058057816,4.64558758720875,4.76343465978073,4.65095609464182,6.06724579431514,5.84263840078618,5.77015986861159,5.71714885454669,5.11482666269438 "212",5.75761827849279,5.66465997975799,5.64386590959061,4.45117694514122,4.68891224809943,4.9129913680454,5.60160582989158,5.28887854364493,5.61552538792453,6.14027133670331,5.85028907707368 "213",9.52993739431458,9.78230850566438,9.24456138472936,6.35900025183662,7.85016117313733,7.75097540326962,9.21184285422153,8.75245870326797,8.4440745219959,9.16242088799211,8.93382699486344 "214",6.48125799080228,6.39567681457472,5.92211619827359,7.91030878238794,7.66647186177329,7.20446444646132,6.33001898832003,6.48486391434508,6.10385346314284,6.23265672738425,6.08502244599298 "215",9.75348312115578,9.88836967709125,9.7491183462126,7.60201035882759,8.61736685659035,7.88869839278644,9.73207730559825,9.6442308475677,9.76764614105861,9.92360220760973,9.71223929604806 "216",6.41344763352842,5.92242988896713,6.1044136676551,4.55382476248647,4.60803438435701,5.02279148452906,5.7142170410774,5.73213596531648,5.32100047365207,6.08168542829163,5.85028907707368 "217",6.9777730900629,6.61258342379141,6.92571489804902,9.76771846146659,7.40957806504676,8.59555417354319,6.88628096459316,6.91009091397774,7.08828955603528,7.25233733061746,7.29157241507968 "218",8.90486899759346,8.82572160192677,9.4235984354313,7.20857473893558,7.08440208246633,7.2442527606336,8.9675491380424,8.23749087428768,8.7914732544496,8.9717961107169,8.55223053166907 "219",6.83088295905748,7.32936470367063,7.44147763113522,5.32561057076274,5.4766730864177,5.68598866291392,6.74125749547841,6.39951332746705,6.74668576793685,6.7489573804274,6.68018127508015 "220",6.98935314955684,6.60071482461707,6.60883822823196,9.90049201893844,9.15751570756603,8.69172890321855,7.3270512649585,7.53395441940694,7.79266627085719,7.6823616197191,7.81314087141324 "221",5.32657933118044,5.73398691359929,5.57306370014904,4.00522961816383,4.51917288855208,4.14782244847307,5.44531198202201,4.90404046812327,5.14207053784841,5.03853376538012,5.07200980811868 "222",6.03616389920384,5.8625403799736,5.45889453101379,8.0716255065244,7.0486043849577,6.14258578248584,5.76707020137047,5.64267984583869,5.93453103270874,5.76856946880134,6.12364384882668 "223",11.6924057331777,12.1290082471382,10.773019437843,8.46905443827572,9.28516538276155,9.47124065861144,11.4515258754407,10.9285989817443,11.2521734136811,10.8583460462227,10.4890298121467 "224",6.76486804778371,7.06381620838836,5.77483170440128,4.45117694514122,5.31322437542958,5.45435632888149,6.3967273647607,5.99287240418047,6.3901204572901,5.91180974276632,6.02495041947975 "225",5.54375559944074,5.64070422642102,6.12856456325381,4.45117694514122,4.76343465978073,4.79051865717914,5.41158127901156,5.64267984583869,5.908506347799,5.8180555597147,5.47462492252508 "226",8.89574114457288,8.92057843844756,8.97360736585661,6.8690907757931,7.87070337750673,7.1841457180674,8.7345628609467,8.74227557932138,9.84400269227627,8.76417817715549,8.13168767471038 "227",11.0361527760643,10.9249871860904,11.5665014363276,7.91740472875786,9.34009614771103,9.17891342606214,10.5690836725151,10.0783342144828,10.800372450853,11.2483406493483,10.6169558194852 "228",5.89146640696981,5.8625403799736,5.14246728046542,4.00522961816383,4.3058722489524,4.48644669672571,5.41158127901156,5.06400718580499,5.61552538792453,4.72200141940468,4.98115357179952 "229",3.54830022377166,3.92219398459048,3.54830022377166,5.17721527231849,4.16918380110659,4.57254454079382,3.54830022377166,4.14366324222193,4.40133275723348,3.54830022377166,3.54830022377166 "230",5.67024772270509,5.61629598738969,5.45889453101379,4.19185126479166,4.68891224809943,4.14782244847307,5.57184698087463,5.51285175027105,5.43971219929874,4.89214603725089,4.82879049046518 "231",12.4401889905574,12.1797700374616,12.8908928378909,9.49465064054292,11.5792948966395,10.1538411773816,11.867284149449,12.6178580828305,14.1121888532001,11.9521255976379,12.3067186938859 "232",7.04587689925286,6.61258342379141,6.57457614518915,9.70976319199083,8.26119229282476,7.55980996663979,6.8747483721195,6.76864888687765,7.51294511231341,6.95519351510259,7.12484473646843 "233",5.20160456221532,5.56604371111536,5.37656757260563,7.75256639760947,6.59691611192018,5.52494213250567,5.05629560314322,5.96897347115688,6.62726529325089,4.51507976905241,5.27185771113154 "234",6.39596545741415,6.61258342379141,6.17562106732623,4.87732981549012,5.22247567483854,5.52494213250567,6.60784199424928,5.84263840078618,6.9465242259136,6.33590070251447,5.70237141167859 "235",7.66529461226046,7.88364943662713,8.48903011050334,5.99674685124919,6.75417835232469,6.3971794717333,8.06191113975279,7.57290325679707,7.8985529026422,7.52693401117993,7.43335775691035 "236",4.90198673375679,4.58626187939733,5.14246728046542,6.02413172001014,5.58662010220739,5.82926094386062,4.52717022062621,4.84495354750819,4.87007984850553,5.03853376538012,4.82879049046518 "237",6.88155947257217,6.83106206268892,6.4664454336334,5.57739919796435,5.58662010220739,5.07384942667343,6.82765362378199,6.39951332746705,7.04258956503276,6.17797642034548,6.17960026676426 "238",9.31631134390828,8.52486038361737,9.73962629225453,7.22014278192286,7.47377566559152,7.73017531178659,8.98093217188697,8.69729742885466,9.22379537423171,9.27256371819514,8.84958088897634 "239",13.728761486741,13.8607233425091,12.2159075808996,10.1687126589722,10.5850646452263,10.9636143128865,13.548022790936,13.5230800132276,13.3831031681896,11.5554641580923,11.6401753816615 "240",3.54830022377166,3.54830022377166,3.99458687560867,4.80590313991191,4.41984085544861,4.48644669672571,3.54830022377166,3.97076798325069,3.97945053140578,3.94912244603611,3.54830022377166 "241",8.07483354014599,7.68687489860634,7.65924649376092,6.07729316885177,6.30147623701314,7.11065571890034,7.70916904553208,7.46934371045286,7.73664082598846,8.1714599136636,7.97095603628191 "242",11.1473066661789,11.591919704722,11.0367348451587,8.76845148200469,9.70406709613544,9.891215506063,11.5958705265068,11.1792364690542,11.5729639576451,11.2845347042731,11.1964305071262 "243",11.1536984472174,11.0608671440132,11.0077722301833,8.13991470128491,9.32532138773482,9.48987079253926,10.7827308573901,10.9211006204005,11.0056202014738,10.6578669124684,10.6161339903475 "244",9.06271502611384,9.31727019248039,9.50877304707617,7.22014278192286,8.0554535450824,7.94390401379986,9.24992269172974,8.98324517579057,9.8020824016001,9.27468296710082,9.165022001599 "245",4.71360779724634,4.19235554008301,4.43062166511718,3.54830022377166,3.54830022377166,3.54830022377166,4.24697193895882,4.14366324222193,4.28967224937531,4.1133546816754,4.50758419823284 "246",4.56403575450106,4.3753233849767,4.17697833106617,5.94024907367982,5.43778714177974,5.07384942667343,4.79704755731515,4.64355114355199,3.97945053140578,4.83852784420667,4.58142223425457 "247",5.20160456221532,4.45187351580727,5.24167748837746,6.55657468638091,6.72410151536218,5.07384942667343,4.60239513168466,5.15921474215736,5.47688516711479,5.12639274786288,5.15610281821546 "248",9.30256702182736,9.1745803139299,9.23378153874019,6.80881348613757,7.40957806504676,7.9677747435797,8.84408903562239,8.32657827473498,9.23392324872176,9.04812544036838,8.84397272213366 "249",9.78347366218095,9.52655333859387,9.50877304707617,12.6953391122702,11.1734223052915,10.5046473477716,9.59437225957796,9.68553954315012,9.56799060808511,9.32258518506948,9.65256278357491 "250",5.43989201389799,5.48674339719394,4.91368556592511,6.7618541533593,6.56323269003586,6.2854828908731,5.34122790279734,5.54656694097749,5.43971219929874,5.45650952534963,5.50541836722824 "251",5.94145031362918,5.90276363876433,5.92211619827359,7.66245310060682,7.21921073366603,6.432497361932,5.8906209020639,5.84263840078618,5.93453103270874,6.02045962596488,5.98336777510678 "252",12.6766977693984,12.415664295377,12.6479816353317,16.4790630307325,15.3818287989351,14.2292431593229,12.4228967578176,12.6544934425351,13.3417185823779,12.7887256492754,12.9707046970051 "253",16.1554051656666,16.5782353294731,16.4333139579434,11.0403359076448,13.3419412082305,13.3344515032088,15.2944548478621,15.3282803181991,14.7316326057082,14.9090526667442,14.9078193443991 "254",10.3940514521804,10.5794726886636,9.99550905100643,6.7132762502854,8.54690008144452,8.38591439894745,9.47463695789972,9.54427952852975,9.09636272267919,9.38472946990564,9.5969906800506 "255",4.47860358440826,4.45187351580727,3.99458687560867,6.07729316885177,5.01670287124879,5.37954658604057,4.52717022062621,4.56562326784538,4.73829774126364,4.43350024566452,4.71305020543012 "256",9.99334023213815,9.85305373329887,9.26323430361466,7.37295311711776,8.56379340454814,9.31980128949302,10.1292894475254,10.0552267826601,9.83737678920086,10.1562858886609,10.1161415442834 "257",7.08952995702998,7.1871087455957,7.32386510124667,5.72122142567301,6.49332967836598,5.71592278023559,7.31860235401449,6.8602800038935,7.13256598721052,7.14455133827227,7.20625676960173 "258",6.4646125355193,6.78999327904592,6.38939714611082,4.55382476248647,5.35616394241025,6.07645934003377,6.34699967672477,6.34566665396276,6.84346871555432,5.88898252005338,6.36723145639011 "259",7.19313722009989,7.01134044782061,7.26121415402009,5.32561057076274,6.49332967836598,6.24614906756788,6.64921354738883,7.17699871670462,8.54113298867976,6.68588238296423,6.87065613243116 "260",9.40687946770383,9.34909275590581,10.3172710995969,6.69670383284886,7.011881067289,7.40196767134749,8.72504841042737,8.00147085187088,8.1813949362326,8.711938647811,8.33743530348905 "261",7.97999186436353,8.9182226156652,7.63479678432445,5.78758527908358,6.23832076740441,6.44982545987761,7.47116218311666,7.81291420734027,9.38698121885692,6.08168542829163,5.9620853787682 "262",10.6968374650283,10.2027520073997,11.3571695258769,6.99600080825042,9.09500501023367,9.79795475051923,9.8621161976401,10.1221598148832,11.0195870802336,10.5226786155599,9.9196491879125 "263",6.3603261369929,5.84196372967787,5.80562626524342,8.24510507245238,7.21921073366603,7.36639506661982,6.14760569582541,6.39951332746705,6.21306092059042,6.59253306201405,6.58799030207827 "264",10.7159685156674,11.0169806759872,11.5229064568078,13.1613493728569,12.24377704512,12.3789568075984,10.1352840632529,10.217073050604,10.1199333576403,11.0719745610094,11.3262142949183 "265",6.34215677001306,6.48910884337768,5.64386590959061,4.87732981549012,5.12418767680969,5.34037022736344,6.00369290325292,5.73213596531648,6.40846469499631,6.23265672738425,6.04527163698523 "266",5.47547404614733,5.56604371111536,6.44757980086205,7.4632017364414,6.59691611192018,7.01021906895851,5.51016217934202,5.94464232625034,6.62726529325089,5.8180555597147,5.62162634442846 "267",9.90364431655987,9.89437218018595,10.0113717522371,7.08741090627332,7.95647212895258,8.69886764484335,9.38287162416211,9.71706240677277,9.64019961778538,9.16470826913282,9.13319442626918 "268",8.37136993266211,8.11962199806121,8.07088217728514,6.98244809672181,7.20845157211192,7.06689129314715,8.6091379046593,8.35805755288573,8.40872034047714,8.47800516301288,8.25947513096976 "269",3.54830022377166,4.19235554008301,3.54830022377166,7.11248315845808,4.16918380110659,3.9737401164974,3.95429096793669,4.48006681116437,4.73829774126364,4.1133546816754,4.10886942232174 "270",8.25236519168516,7.9265522634572,8.3807299458979,6.57487622139197,7.56075963191614,7.49545959576282,8.66328536134882,8.23264568134189,8.63205997312033,8.79404506750685,8.52092980137975 "271",8.75139371361436,8.20336073773898,7.74548781114225,6.51923699993902,6.73922021409517,6.1208982606487,7.3848338456172,7.5260358409018,7.83995565728055,7.85131946790423,7.77229881588328 "272",9.59527466491212,10.0016929281087,9.92356297950041,6.80881348613757,7.47377566559152,7.31131752008256,8.8673374699208,8.30827599759587,9.02815643109272,8.39074328216023,8.15000326967407 "273",5.7000257986004,6.1384379945953,4.97546638098356,7.4632017364414,7.07256943990856,6.1208982606487,5.47815535844696,6.17025054654574,6.49672271584863,5.35613896259166,5.50541836722824 "274",4.14270956135568,4.75624419227938,4.77805840635708,3.54830022377166,3.9890115841535,3.54830022377166,4.12059456186923,4.14366324222193,4.49869474411581,4.65808106126267,4.50758419823284 "275",8.49343925578488,8.7693223302685,8.95731472595322,6.69670383284886,7.91752207058714,7.30192771781724,8.29430297314551,8.7388651452451,10.0166867034404,7.93962609998984,8.30920223246031 "276",9.56489612883542,8.92762288631626,9.98108190905854,12.4348114073983,11.1843769743819,12.0686240070981,9.47463695789972,9.62589475463826,11.6576635702851,9.80839743905335,9.61849246305758 "277",5.47547404614733,4.80684586133476,5.60895207119721,6.46128859958821,5.62125976688193,6.3424578003934,4.95996179375818,5.32915405009094,5.47688516711479,5.16791879000176,4.98115357179952 "278",5.63977041271158,5.97975507916984,5.53613856267374,8.62435595262307,6.19454648924689,6.54949985976367,6.42891596161512,5.86887992335646,5.58225280059011,6.12102121355555,6.06529256597428 "279",8.59095487856935,8.34701589034485,7.79778562854777,10.5451937769954,10.5032162891312,9.55225913980104,8.65328656795213,8.65811030377855,8.24293726666571,8.7367580939207,8.77785916336672 "280",7.02353677048525,7.01134044782061,7.65924649376092,10.7710704569946,7.72032026125474,7.38429208622585,7.07926563097037,6.71348502662476,8.14424013099273,7.29494863419076,7.22373327348314 "281",4.90198673375679,4.58626187939733,4.70273040173548,4.00522961816383,3.54830022377166,3.54830022377166,4.12059456186923,4.27494782787477,5.04112969494906,4.34246051744749,4.10886942232174 "282",5.6085567987359,5.43096210363813,6.44757980086205,5.00715176399614,4.83273793005469,4.9129913680454,5.7142170410774,5.81586767921463,6.6882430597986,5.20801686055131,5.64910430920177 "283",5.6085567987359,5.02844590494928,5.33324863235043,7.0358991602313,7.0486043849577,8.07054073647068,5.05629560314322,7.41031118391363,8.79489893465553,5.03853376538012,4.93274810645829 "284",7.89689319839686,7.99532610620531,7.9308198377368,10.7334578837025,8.84858460251429,8.72357825550961,7.86775976109045,7.91936722856588,7.94253054199731,8.05774971496173,8.11779620963715 "285",8.15871854385556,7.65885108897803,7.98977766513664,9.13032454054366,10.4024370736672,9.26075389020657,8.06694686151617,7.97268388566016,8.52883814354876,8.11098555512941,7.95019258869922 "286",4.78038542738455,4.52173032050244,4.17697833106617,3.54830022377166,3.54830022377166,3.54830022377166,4.6718025391129,4.384503533957,3.54830022377166,4.23818768541642,4.10886942232174 "287",6.37826028686932,6.87097044509682,7.37405217620522,4.80590313991191,5.07172184844156,5.07384942667343,6.47584372686925,5.84263840078618,6.62726529325089,5.24679677984632,5.23451608884748 "288",7.43181342491155,7.3645570520418,7.48776309257842,6.33760537438245,6.28074432712116,7.14261721935289,7.77841582295702,7.80639942758163,7.40907859597,7.89062355127854,8.00658518887559 "289",7.00083943504019,7.06381620838836,7.38388137229294,5.911083037832,6.05413185693349,6.32372596223563,6.8747483721195,7.11482364221799,8.51227997584947,6.61984398459466,6.83684585355949 "290",6.20780059832859,6.2502356334542,7.20681678408743,9.73402779194592,9.06862998817701,7.68043517636272,6.72847132947242,6.41700761662776,9.63065037796132,7.37653420130328,7.26650941086191 "291",9.68098015597377,9.42238562480594,9.41884788384917,8.39482590249134,8.0554535450824,9.25834094015097,10.1823646704725,9.88836222586627,9.82905137201308,10.3191079742495,10.3196587672792 "292",7.94496521202076,8.00869440443831,8.34106524726259,9.56847846889061,9.0417633150653,9.36759800372903,8.16412493691205,7.5260358409018,7.39100943196294,7.97661580669704,8.48172552210957 "293",16.3063902447123,16.0952349530378,15.6917016367486,20.4055048550162,19.9540394460662,18.5072930282205,16.2738341590513,16.6137792751768,16.8195817213308,16.7066535688476,16.788573325051 "294",8.16886822106531,7.84440655206632,8.27418290922984,10.0351438794622,8.629451972118,8.23685412620628,7.75362030032821,7.56519780081262,7.81987929878557,7.51977803239013,7.36422385202595 "295",8.12783241497292,7.73060374593055,8.08296329851879,9.26689184815322,8.89269315381452,8.82492748996296,7.16673889189749,7.62571087362944,7.640655268231,7.94496902618954,7.76636814679326 "296",8.71379415237108,8.06095749757165,8.61490585983729,10.4963871929741,9.19050335100519,9.77788285883847,8.14520773187748,8.11117639548181,8.11710056757884,8.68668404541811,8.5996071414767 "297",7.6141220077179,7.17127399719128,7.97039270667412,9.85327718286724,8.39940552920771,7.90733709200254,7.18546823726635,7.33064252719431,7.29706680728901,7.60337555236943,7.58275039653866 "298",7.84081557285448,8.49037144228086,7.46017196541071,5.81955380472203,7.26145312498405,7.01021906895851,8.06191113975279,8.12693320707114,7.80633729904285,7.73886969371636,7.72415226914976 "299",9.28869040769012,9.56017176515734,10.1074845813491,6.7618541533593,6.79812335767876,7.33912187219212,8.228441543965,8.15281676709867,8.50392892837412,8.1714599136636,7.97610033763664 "300",9.83688713383929,9.93220772378365,9.68923458440224,7.52035064472625,8.21913491534781,8.80522001376409,9.76028194053222,9.44944832477595,9.8718280374861,9.45742421826851,9.6412952120572 "301",8.25712903402587,8.12372211241184,8.56844578937346,9.63870985039684,9.017453992882,8.72357825550961,7.75362030032821,7.78667569975054,7.8985529026422,7.47607388815303,7.83029488336248 "302",9.13946690657847,9.49054809276673,9.22292047699177,7.91030878238794,7.25100929258247,7.70906906148302,9.16805766448614,8.68671532790733,9.03106374334181,8.99769100338889,9.00841434471593 "303",7.99148015255892,8.34701589034485,7.79778562854777,6.79333341252553,6.88211086947595,6.41495063025135,7.95730299948966,7.76667701711235,8.36327023133019,7.71402953388634,7.62271891815793 "304",6.53003463405643,7.10611233977898,6.8564678268525,4.80590313991191,5.31322437542958,5.95853781919032,6.08778488450736,6.25098415102327,6.44444218690037,6.41641371191531,6.33495998760446 "305",4.56403575450106,5.34229206882021,4.77805840635708,3.54830022377166,4.16918380110659,4.27998953468607,4.52717022062621,4.48006681116437,4.73829774126364,4.94316935660089,4.82879049046518 "306",3.54830022377166,3.54830022377166,3.54830022377166,4.55382476248647,4.68891224809943,4.27998953468607,4.12059456186923,3.97076798325069,3.97945053140578,3.54830022377166,3.54830022377166 "307",7.62893019883488,7.0202222031051,8.26361165206592,5.53878302118535,6.17212405558635,6.30473681676143,7.19474134121686,6.83470072861068,7.35417069068958,7.08743489363959,6.82539357006609 "308",6.65235551364311,6.90978341613101,6.2651475757924,8.39482590249134,7.56917419730132,7.68043517636272,7.07926563097037,6.65607019101962,6.51372282483715,6.59253306201405,6.69287089323447 "309",3.97008655127665,3.92219398459048,3.99458687560867,5.57739919796435,5.39764908336153,4.27998953468607,4.44463567927867,3.97076798325069,4.66516704800045,4.23818768541642,4.33623189839069 "310",7.72851224971026,8.16010627518426,7.09136174566226,5.00715176399614,6.40071463600213,5.88248359145759,7.30155298665502,6.75505909917696,7.29706680728901,6.28524461564841,6.17960026676426 "311",6.66692177917667,6.73691655930512,6.42845492233721,5.37127805426564,5.12418767680969,4.96927465433063,6.38034884627584,5.81586767921463,6.40846469499631,5.91180974276632,5.72820962527079 "312",6.94245436265354,7.49725036994418,6.32866748787329,5.911083037832,6.34202917570302,5.65534952806707,7.069205718794,7.00474615848269,7.23758185587131,6.88973460730697,6.81384766158053 "313",4.56403575450106,4.45187351580727,4.84809592326134,7.19691200194374,6.12614548408454,5.21461805136393,4.95996179375818,5.47821319946465,6.29456940017177,4.89214603725089,4.71305020543012 "314",5.47547404614733,5.17839038325611,5.53613856267374,4.87732981549012,4.51917288855208,4.57254454079382,5.14502080212905,5.6114347801117,6.44444218690037,5.12639274786288,4.98115357179952 "315",10.508195828823,10.3697360477073,11.7041192406307,8.83730014876957,9.44860346856984,9.8517540740046,10.6847718584052,10.6148746815438,10.848938978487,11.6193738812742,11.2279716161641 "316",8.764826565826,8.9229304161299,8.62319443664458,10.2139797167877,10.1672954885457,9.76774117368506,8.59179063704516,8.65811030377855,8.58928869389866,8.35108828862567,8.66469359503384 "317",4.27379169695302,4.80684586133476,4.97546638098356,3.54830022377166,3.54830022377166,4.14782244847307,4.24697193895882,4.48006681116437,4.66516704800045,4.34246051744749,4.23274464232371 "318",6.20780059832859,6.23481148737354,5.94971686400677,9.79296110579021,8.11402443253493,7.94990899221953,7.07926563097037,7.18710224326981,7.17550601717443,7.51977803239013,7.80737699242763 "319",7.25186604368027,7.0202222031051,7.73785856428288,9.01290091543137,8.57216632023939,8.03709544896096,6.90906792189885,7.44434191837213,7.6097795074534,7.22614562648883,7.2832669135735 "320",6.12468103354359,6.10474257283092,5.14246728046542,7.20857473893558,7.85016117313733,7.25402868886334,6.42891596161512,6.95820855958201,6.67324497101316,5.66362134495617,6.04527163698523 "321",6.16687195712651,5.56604371111536,6.6422828401053,7.55722002710987,7.14213181082235,7.1841457180674,5.63069073389597,6.80864974103996,6.33358512450331,6.31922086088212,6.08502244599298 "322",9.17006842032201,9.29020407679835,9.67933869708977,7.17329607382823,7.34236034522012,8.37703711426079,9.23436438503246,8.99186476046437,8.12801794863761,9.02312882261529,9.23523542463738 "323",3.97008655127665,3.54830022377166,3.99458687560867,5.06671461268446,5.43778714177974,4.48644669672571,4.12059456186923,4.56562326784538,4.49869474411581,4.23818768541642,3.94592105499445 "324",5.28634990203998,5.75630205634913,5.19311942679736,7.33093685359887,6.41973750499147,6.41495063025135,6.08778488450736,5.70299476097377,5.51298978105205,5.74311119877536,5.70237141167859 "325",4.56403575450106,4.45187351580727,5.67786163365234,4.19185126479166,4.16918380110659,4.14782244847307,4.6718025391129,4.64355114355199,4.73829774126364,5.03853376538012,5.27185771113154 "326",6.14593937760047,6.85115710804526,5.74329962514772,4.55382476248647,5.55101777956327,5.21461805136393,5.84257292711029,6.12802624841955,5.93453103270874,5.97804653447498,5.91848170686069 "327",8.96137358383928,8.32582741006554,8.76850936194554,10.5069856586739,9.72860104721336,9.64752260411124,8.30712100765054,8.39321035543747,8.53704636108079,8.82908675882873,8.61944378040167 "328",8.26660964919445,8.11962199806121,8.19849871195746,10.0088690313512,9.67523012146496,9.97293708537586,8.49805340169281,8.42328012288839,9.27373787982762,8.06757677451835,8.10376919978374 "329",11.5910233424533,11.7548311960134,11.5814536880742,8.70436204206947,10.4610452024605,10.2395007905827,11.1973972833937,11.3272709380221,11.901045101865,11.3712358654071,11.3799724435727 "330",7.78245739995991,7.35058402269405,7.76813503017998,8.81850319510449,8.50814944726084,8.47596247210777,7.22220388613709,7.33064252719431,7.35417069068958,7.61684601028103,7.34041517352733 "331",8.51745238210845,8.75354963430661,8.71135291149387,7.41376869620371,7.011881067289,7.82476137101342,8.64321787388703,8.16304111541793,8.06123417124591,9.41194000555019,8.95739059087688 "332",4.71360779724634,4.98762515666861,4.53109727184687,3.54830022377166,4.16918380110659,4.14782244847307,4.52717022062621,4.27494782787477,5.04112969494906,4.43350024566452,4.77260190574687 "333",9.95725158988506,9.65656569191356,10.341315607113,7.7683591412928,8.86230083982425,9.00270408000039,9.88648962370116,9.86666411157864,10.2848440826217,9.86152209900839,9.87362380879198 "334",10.7793446740533,10.7586069175608,10.7218813212537,9.01620360197303,9.77645125249346,9.48987079253926,11.081727096202,10.9345697344094,11.0614050803098,10.936698453788,10.9016015309339 "335",6.70973609194007,6.9193225937545,7.04242098979395,5.27816114646231,5.17436496058539,5.80182700427773,6.53605336162418,6.28964009345038,6.62726529325089,6.17797642034548,5.91848170686069 "336",9.96163020814136,9.51880222944563,10.0896643788581,13.0903052977146,11.0335218651468,11.0195227952331,9.57509413491934,10.17985381269,9.90547550347865,10.3221840646791,10.3466645904887 "337",9.60277034629735,9.492132375797,10.27058378804,11.2027049439687,11.0289711261082,10.7380952066322,9.23659730688724,9.2531463504753,9.50038808177752,9.75019841029957,9.47897708223457 "338",5.2447303988107,4.85503985708184,5.28833257709998,4.45117694514122,3.9890115841535,4.57254454079382,4.85422248960333,5.15921474215736,5.18940370702617,4.83852784420667,5.19596301279726 "339",7.96841095917285,8.1877819607643,6.76862797768596,5.57739919796435,5.07172184844156,5.49014363497923,6.12795561899001,6.79544173688354,7.25768713221877,5.99941972064136,5.11482666269438 "340",4.95788009688626,5.10587436566836,5.19311942679736,3.54830022377166,4.16918380110659,4.39026667116431,4.90840757914297,4.48006681116437,4.73829774126364,4.83852784420667,4.50758419823284 "341",10.6721160600122,10.7975586933532,10.9513346299754,13.2700770774054,12.1004103672168,11.5689828796385,10.221209342624,10.2664343698768,11.6538981498972,10.3425253816899,10.4609265047086 "342",9.84796734791309,9.84439804636833,10.4360279125743,7.94544298806526,8.49058638996859,8.45080410064663,9.64567556231803,9.417821292182,9.67962991713684,9.84307884250566,9.63156672304667 "343",8.00854214661264,8.45828434164662,8.22598820116811,5.17721527231849,5.71993474216382,5.98296049015383,7.10902511762892,6.25098415102327,6.65808508296573,6.30233725042679,6.36723145639011 "344",10.2222379273749,10.0615969336993,10.5003849488333,8.66701779572049,8.14805465040806,9.62522672492632,10.1412538681354,10.3570306475501,10.086797954744,10.2464844965395,10.3683015362727 "345",10.415488107278,10.5455498707622,10.2196062346697,8.15198978181678,9.2953097265866,9.44389825650047,10.3192524483257,10.0944252890648,10.7323689897459,10.4838319027988,10.3944199118685 "346",3.97008655127665,3.54830022377166,3.99458687560867,5.72122142567301,4.3058722489524,4.39026667116431,4.24697193895882,4.27494782787477,4.28967224937531,3.94912244603611,3.94592105499445 "347",7.35362998324763,7.29328277641992,7.89698849758373,5.68673393056132,6.62980875551585,6.16393427299536,6.82765362378199,7.22681461576123,8.51227997584947,6.50724974565549,6.66737605381507 "348",9.35455676581492,9.51880222944563,8.82348440418134,7.49206154969264,7.49160064414333,8.72707399134059,9.44017930901502,8.91236709251847,8.72478802427873,9.43864652014548,9.32047059299328 "349",4.38318186180789,4.45187351580727,4.53109727184687,5.65130733031753,5.58662010220739,5.12270292620239,5.0091772610784,4.48006681116437,4.87007984850553,4.51507976905241,4.64957162869111 "350",11.7949191894203,11.3504743167904,11.9868079683574,9.47318685926124,10.4036094410837,10.5780548438489,11.4331534036226,11.7197147065337,11.7645401631804,12.0763412639404,11.8143576004982 "351",6.26699265805594,6.33932243687762,5.64386590959061,4.45117694514122,4.76343465978073,5.59180320170385,6.04639115237076,5.84263840078618,5.43971219929874,5.63600666800275,5.62162634442846 "352",5.91669169048245,5.75630205634913,5.418413249836,4.55382476248647,4.95881094319955,4.48644669672571,5.54137865292697,5.24721063577333,5.32100047365207,5.32077713645568,5.59354957822205 "353",4.64185256734797,4.58626187939733,3.99458687560867,5.65130733031753,5.68786865869757,5.07384942667343,4.736433099266,4.78227634053133,4.49869474411581,4.89214603725089,4.71305020543012 "354",5.32657933118044,5.51373206269933,5.24167748837746,4.55382476248647,4.51917288855208,4.57254454079382,5.63069073389597,5.11259910555834,5.234901464903,5.08331287740239,5.27185771113154 "355",7.85975257570908,8.10725102107038,7.68328605018914,6.57487622139197,6.25969592333039,7.16353289372454,7.87352282948221,7.69792596610665,7.73664082598846,7.70775166660295,7.56917577077781 "356",6.49770703607465,6.18747190753494,6.24330683421088,9.64512200417151,8.7301479243018,8.27559185040856,7.22220388613709,7.67664092718363,7.41802821671758,8.06757677451835,7.99649527722762 "357",10.1396325516419,10.5240325093349,10.0941401124916,7.83735089606586,7.99439375813141,8.34097001189902,9.44597973882589,9.16444319920043,9.76590255325414,9.20304849245652,9.04308570121891 "358",9.65597920960023,9.55866053871713,9.13004998421493,7.11248315845808,7.67428945178072,8.27559185040856,9.27186155701844,8.97167161003004,8.56541213920138,8.79699798207396,8.87179778841891 "359",8.21367557215761,8.52795515785693,8.4288212608901,6.72965577471788,7.56075963191614,7.20446444646132,8.05685771125266,8.11117639548181,8.45711162944983,8.66744819506361,8.15000326967407 "360",6.5459221304447,6.69296641160022,6.5918119313734,5.65130733031753,5.78180236170589,5.21461805136393,6.49114145155366,6.10641392711339,7.37270881899656,6.31922086088212,5.80280358265392 "361",8.67518678147112,8.40877139428027,8.97684390628987,7.16133959393199,7.86388858832763,7.9677747435797,8.56714794030863,8.9153910044229,9.70714862404194,8.56721542241081,8.56251470535001 "362",8.78474387501147,9.01399402159102,9.48397218245398,7.4632017364414,7.96922423053262,8.18182668139664,8.66328536134882,9.10477367945066,10.3409582070826,8.56721542241081,8.82131918147808 "363",7.35362998324763,7.45219532147425,7.58460878049789,5.78758527908358,6.19454648924689,5.90831820478849,6.72847132947242,6.56528938654728,7.38188843017873,6.92284225377397,6.87065613243116 "364",10.2136976694624,9.57967493115194,10.2453202026289,8.22238532670557,8.68067973575669,8.70950985523553,9.86066955809963,9.55401046497915,10.1576531331904,10.0514438620966,9.71837974459475 "365",8.50148821562481,8.73224708947672,8.34106524726259,10.5801871793756,9.83498369585237,8.58017096176749,8.15469744512141,8.16812615488883,9.08521679961439,8.01267688248038,8.39613153670544 "366",7.72851224971026,7.71979593342229,8.18735408500122,5.911083037832,6.40071463600213,6.03051736948815,7.2131083928765,6.93435403872264,7.06562328853505,7.21730700032062,6.89275537319638 "367",7.67958587649345,7.73060374593055,7.58460878049789,5.68673393056132,6.84074107269785,6.975096768693,7.47116218311666,7.47758144184037,7.77886371790434,7.52693401117993,7.29982984583008 "368",4.38318186180789,4.52173032050244,5.37656757260563,4.00522961816383,3.9890115841535,3.9737401164974,4.24697193895882,4.56562326784538,5.54809236335654,4.34246051744749,4.33623189839069 "369",5.57656653888652,5.82106309200949,5.418413249836,4.94419410387592,4.76343465978073,4.85356377363824,5.44531198202201,5.67318746075466,6.00970957204651,5.66362134495617,5.23451608884748 "370",11.9803822928104,12.1587320380616,10.7636851698255,9.33986551212972,9.6926014088843,9.6120598039195,11.4268139829184,10.7522098125656,11.2333727173581,11.1502140136917,10.5462363178213 "371",8.32221761263854,8.4020390861891,8.02778010508308,6.07729316885177,6.59691611192018,6.44982545987761,7.53811291149076,7.32150972781744,7.21718894389233,7.40012787657292,7.30803976507099 "372",11.5318969467708,11.4479570745599,10.7083219670951,9.16941092317805,10.2040956140826,10.4934093443231,11.4001786865879,11.4661633428202,11.3807557834933,11.6681355181509,11.5227452373352 "373",7.58403828566429,7.96364096065335,6.75344123428011,5.61488371433785,6.36186838199559,6.86418378240018,7.66329537746326,7.27494789866261,7.03093108737801,7.04804123758127,7.21502181493005 "374",9.86520892758349,10.0259538949703,9.98590700877998,12.0274339276905,10.4922376107589,10.3748210648138,9.11077840627714,9.22418087913334,9.87668314639141,9.76685270350634,9.54092432595051 "375",6.6077271848552,6.46304776588134,6.52155702075574,4.64558758720875,5.43778714177974,5.52494213250567,6.34699967672477,6.41700761662776,5.7104892060778,5.88898252005338,5.64910430920177 "376",5.98963878082147,6.28057493588452,6.53945439298437,5.12329148338679,5.12418767680969,5.45435632888149,5.41158127901156,6.03943679752718,6.25441840396481,6.41641371191531,6.06529256597428 "377",7.90906291659445,8.39188120658775,8.7229670689562,7.07470698739357,7.17567776690464,6.82519262173196,8.34075443718631,7.97268388566016,8.45711162944983,7.98182314092186,7.74842757298843 "378",6.84372344371014,7.08088598802114,6.81323095846476,4.94419410387592,6.00390758948263,6.03051736948815,6.49114145155366,6.51759189519488,7.21718894389233,6.33590070251447,6.06529256597428 "379",7.78906009917272,8.26775016926807,7.82683584831923,5.8812668252616,6.05413185693349,6.20565743408888,7.50130547645627,6.91009091397774,6.86994486737309,6.88973460730697,6.68018127508015 "380",6.6077271848552,6.84114530884511,7.46942827527499,5.06671461268446,6.25969592333039,5.74518636420907,5.9369990034741,6.76864888687765,8.06123417124591,5.74311119877536,6.28509519859856 "381",7.4062246804254,7.11442263771868,7.16175225433513,8.67957376620759,8.37088554291666,8.03709544896096,7.15728100924063,7.10419174654258,7.39100943196294,7.34445723975138,7.2832669135735 "382",8.05307442972041,7.42579753342585,8.16480232551346,6.72965577471788,6.97418217090216,7.13204296850724,7.88498001914227,7.70495132134486,7.94870454884627,8.37896109446497,8.09906294768929 "383",8.41037307716109,7.7519780301127,8.17612241448612,10.0220662855249,9.05077463319001,9.26556770802073,8.29858835270601,8.1579380291492,7.95485212886411,8.34302445336662,8.24250996755826 "384",8.82697602689121,8.77454175227186,8.95074574199001,7.10000229525131,7.25100929258247,8.39033259099638,8.97023570577672,8.60289469826364,8.8353840722212,8.80874948622336,8.4339732437543 "385",5.96576034774202,5.8625403799736,6.73808903630757,4.64558758720875,4.60803438435701,5.21461805136393,5.54137865292697,5.57941184941936,5.61552538792453,5.45650952534963,5.5648444453204 "386",4.47860358440826,4.28998746829493,4.43062166511718,3.54830022377166,3.54830022377166,3.54830022377166,4.24697193895882,3.54830022377166,4.15581191957622,4.23818768541642,4.23274464232371 "387",7.41480526624665,7.96821042478736,7.26121415402009,10.67095089928,8.84858460251429,8.50883731367514,8.00532127777094,8.21310002224855,8.02664134280364,7.97138952689756,8.36903759883086 "388",4.27379169695302,4.52173032050244,4.53109727184687,6.10311306989949,4.51917288855208,5.21461805136393,4.736433099266,4.27494782787477,4.49869474411581,4.78196079501175,4.64957162869111 "389",7.94496521202076,8.48719472503624,9.83541640939436,6.82412564138579,6.86845499432929,6.7714709429183,8.31982585315841,7.53395441940694,7.46195465447155,8.139213192925,7.77820506591805 "390",6.65235551364311,6.90017952300248,7.65114285598963,6.0509730364866,6.54608201225882,6.05368293120384,7.1761343582657,6.8602800038935,7.93632987909997,6.85583364825118,6.92527032226438 "391",6.62276159563949,6.86109848575082,6.48505898608019,4.80590313991191,5.62125976688193,5.82926094386062,6.22349968702288,6.48486391434508,6.86994486737309,5.88898252005338,5.67601085725439 "392",9.48602603937168,9.54803737408511,9.71271127952081,7.72044941560373,7.70514028907391,7.60624283324414,8.75963172430597,8.78258318084724,9.11292164986098,8.96130645296956,8.49610544797355 "393",9.42813235372169,9.7640663415972,8.91069030306356,12.4467872841351,11.48442703276,10.611514907936,10.1196459378161,10.2509653385894,10.3526208618046,9.62125490377984,9.7651019674301 "394",5.91669169048245,5.8828036586062,5.67786163365234,8.18174114734305,7.95647212895258,7.83128477406938,6.46037622252273,7.03867422770865,7.28732333848181,6.92284225377397,7.06786115492915 "395",8.68934584434608,8.64658918543041,8.28467705094599,6.55657468638091,7.25100929258247,7.61383736342438,8.2194276919275,8.33111769783576,7.90491848766563,8.14850057426827,8.39996079454467 "396",7.56105335493157,7.55924892396812,7.28240498006857,6.10311306989949,6.88211086947595,6.65746273872887,7.47875776629049,7.37545028018652,7.5377746833745,7.60337555236943,7.60287407050954 "397",8.40609122623257,8.14404909879108,8.48903011050334,6.72965577471788,6.67774574857742,6.612207216185,7.82675707818696,7.42742782100758,7.56218085650794,8.05281087128144,7.42583931389514 "398",7.92113035696155,8.45178019430986,8.43354318234649,6.62838823156807,6.90903343211634,6.26595636830419,7.94641071723562,7.46934371045286,7.59408842046682,7.54818974211694,7.2832669135735 "399",9.84796734791309,9.88716617283321,9.76978352477433,8.16396429768604,8.70752735826761,8.41656065075709,9.63725076094278,9.73940788589147,9.68886128878048,9.6078711200763,9.63805966915697 "400",6.37826028686932,5.68818125959145,5.83571964842533,9.39417451251257,6.93545351054901,6.87694543622342,6.49114145155366,6.65607019101962,6.83004228012593,6.71145259511112,7.0581377661878 "401",5.7291387983615,5.75630205634913,5.49810773191112,4.94419410387592,4.95881094319955,4.39026667116431,5.76707020137047,5.44259274699673,5.09271807264536,5.32077713645568,5.67601085725439 "402",8.18895514970792,8.41547235820129,7.71472421930261,6.89829222892027,7.50043052798914,6.74382273337415,7.96811330155918,8.00715966731889,8.62822374295735,7.9555956167038,7.81888169009264 "403",7.82805065086991,7.89329479833376,7.722477213493,6.7618541533593,6.58017568593367,6.59679162433492,7.87926285401679,7.76667701711235,7.74376486076374,7.46120398896203,7.22373327348314 "404",10.5915416903768,10.4887641797295,11.284626299698,8.77236395818563,10.0568760594846,9.21420261944959,10.128087528896,10.6979569679753,12.3267478112359,10.1342857201991,10.2450691519855 "405",7.79563254979044,7.57133277992978,7.45085535003193,9.22469581658734,8.6133158429029,8.64444417657472,7.59510432110382,7.69086601263943,7.6482713495797,7.88507413802691,7.7180186839132 "406",10.5339051039234,10.4760135897944,10.6648576779728,12.3637085201729,11.676574466319,11.5240068831415,10.042638750676,10.2509653385894,10.6591232962038,10.4125050075795,10.3934609510241 "407",3.54830022377166,3.54830022377166,3.54830022377166,4.64558758720875,4.16918380110659,4.57254454079382,3.54830022377166,3.97076798325069,4.87007984850553,3.54830022377166,3.54830022377166 "408",8.08022223206692,7.55924892396812,7.71472421930261,6.17776213550542,6.97418217090216,7.29247571679326,7.98949285798826,7.72582316827508,7.31635638870427,7.83988918114374,8.1362884941569 "409",4.78038542738455,5.54015697544427,5.49810773191112,4.19185126479166,4.3058722489524,4.39026667116431,5.05629560314322,5.15921474215736,4.49869474411581,4.89214603725089,4.98115357179952 "410",7.90299095098025,7.71979593342229,8.34106524726259,6.20176630746007,6.36186838199559,6.36093948153758,7.51614225181042,7.14625069543942,7.15419792357444,7.40012787657292,6.87065613243116 "411",4.78038542738455,5.24667094069968,4.70273040173548,4.19185126479166,3.9890115841535,4.14782244847307,4.736433099266,5.06400718580499,4.58582955381605,4.78196079501175,4.33623189839069 "412",9.68274946154471,9.81558653871006,9.87756893005561,7.68759652119424,7.5522953174416,7.51182049470467,8.72822688154078,8.50186663160025,9.15883121377636,8.45574624502108,8.52794456069842 "413",8.68581910599042,8.8555789760931,8.35108438866855,10.2564741419397,9.18778303062011,9.38539744524798,8.59875464011165,8.66171715458483,8.45711162944983,8.00246574862315,8.30920223246031 "414",12.3333176699706,12.5517530644236,12.5873715596976,10.5429067198211,10.39891424354,10.2346003745705,11.9485050686763,11.7106099742933,12.018440451194,11.9786840309115,11.7450081853549 "415",9.82572113394118,9.9074904049135,9.97624061324769,12.4323424814164,11.3982508539661,10.7731557636853,10.3012365125204,9.93973725693104,9.94607524710582,9.97922774622234,10.2869830470792 "416",9.16754296113089,9.22118423120942,8.38561203769211,11.0000566061143,10.6566291506593,10.1263253981373,9.01515736547387,9.64968651847243,9.21359584278956,9.21854396875581,9.26281069887234 "417",9.44491195402594,9.16666437917543,10.0941401124916,11.9905694769538,11.2996881922538,10.6451399384035,9.85486844557369,9.66413486736803,10.1879159093476,9.85445642268541,9.94474361331861 "418",9.50814886308212,9.84315726807925,9.42122511612406,7.88156902156748,8.81723715692029,8.74787211075106,9.96667632198009,9.75129817831758,9.49828921371844,9.51592051811866,9.71070008998753 "419",4.64185256734797,4.52173032050244,4.97546638098356,3.54830022377166,4.16918380110659,3.54830022377166,4.24697193895882,4.27494782787477,4.73829774126364,4.23818768541642,3.94592105499445 "420",10.9005920016077,10.7360582293955,11.6514468739112,9.2861684887304,9.88788565987143,9.66402116960109,10.4596378104442,10.7283489713372,12.0610012774492,10.7018290690784,10.9210297652249 "421",9.932185152512,9.55714772683988,9.78647388407245,7.82984692987508,8.49939470047741,9.01419253161676,9.65070691891703,9.51069436076022,9.64019961778538,9.7653465991814,9.65416527386219 "422",10.7046944943069,10.9238139927067,10.1906418204192,9.23889883366252,8.83125362214199,8.56462163845462,10.3380860253778,9.99792495516026,10.2503463768146,10.0514438620966,9.99618854242047 "423",9.08429939732663,9.38875877384605,8.99929842498841,6.85426078798228,7.49160064414333,7.53601635244709,8.58829596557315,8.08452505120833,8.92251910725505,8.13454690736269,7.85285252883628 "424",6.65235551364311,6.69296641160022,6.75344123428011,8.31118749724248,9.78187164133955,7.91962981770912,6.66273743128214,7.54966134743154,10.7754619471525,6.53625939289495,6.51821581272864 "425",9.621340841989,10.1046878829606,10.1710039556254,7.92446578197629,8.41810963731537,8.11395719608876,9.76492954746518,8.93041610646535,9.44043316502887,9.05307315857862,9.24377644053609 "426",8.19393334524338,8.20722920541208,7.40333918797982,9.2861684887304,8.73760985817425,8.80522001376409,8.07696568000571,8.27095780233231,7.60195545162216,7.61012661613666,7.69321852897065 "427",3.54830022377166,4.07560683285484,3.54830022377166,5.06671461268446,4.76343465978073,3.9737401164974,4.35251077174588,3.97076798325069,3.97945053140578,3.94912244603611,3.94592105499445 "428",10.4830356140436,10.1026154858274,10.402739615654,8.53964242110826,9.54314343007566,9.77282093103226,10.5901851157763,10.5404816705139,10.5630091024062,10.6675735771075,10.5192360038997 "429",11.6464625325246,11.4710310496772,11.394538515654,9.2074653969409,10.666429354133,11.2633534422217,11.8319213971118,11.7166861758165,11.8754047693823,12.0136685676256,11.6590498003167 "430",5.7000257986004,5.79982726714239,6.69100174166885,5.57739919796435,5.01670287124879,5.25801624538125,5.30447425058107,6.34566665396276,6.25441840396481,5.93425395248081,6.23335959665524 "431",9.11083311656128,9.12641921347621,9.00565026266177,10.5678671027843,9.79979386947491,9.7141752028198,8.42547487931103,8.85051672831878,8.82536894002529,8.95073988195076,9.01091872192534 "432",10.5358638909142,10.9505589570171,11.6046413902127,8.94173649599666,10.0313151746374,10.4748289129802,11.2116506618598,11.2078667339399,11.3244257447644,11.111031932343,10.9707375004465 "433",10.7305797590264,10.6045843949581,12.1760054122539,8.88143687241979,10.2439127906806,10.3980172056197,10.6542052949729,10.7897494771533,12.1344478678183,11.1409533648433,11.2445512023486 "434",7.4233346433558,7.43244281835256,7.12699231844794,6.17776213550542,5.8408949819472,6.09886016877318,6.86312096617218,6.56528938654728,6.97115740445838,6.95519351510259,6.95705547300987 "435",7.90906291659445,8.05237791583463,7.9308198377368,6.33760537438245,6.10256195383644,6.20565743408888,7.16673889189749,7.33064252719431,6.92145522413605,7.08743489363959,6.80220655170267 "436",6.4646125355193,6.61258342379141,6.12856456325381,4.94419410387592,5.39764908336153,5.59180320170385,6.04639115237076,5.84263840078618,6.56351593648969,5.8180555597147,5.89613582798994 "437",8.55273743281747,8.89445010257218,8.24223318532682,6.64578118848052,6.47529295316335,6.90212845614626,7.61590460120247,7.44434191837213,7.67833724212741,7.74501307825584,7.40304374052886 "438",3.97008655127665,4.07560683285484,4.43062166511718,5.27816114646231,4.95881094319955,4.72324945023249,4.24697193895882,4.64355114355199,4.49869474411581,4.34246051744749,4.23274464232371 "439",6.22781582447258,6.08757707107347,6.60883822823196,5.68673393056132,5.51439142996744,5.55881082326398,6.10801834567294,6.59620756668132,6.98331532425672,6.14027133670331,5.87340967120574 "440",8.95845425295504,9.08501803743042,9.04934614773378,7.89601081208399,8.11402443253493,8.36361766000043,9.26312603357272,9.09146859410942,9.18777675371574,9.29570585889079,9.25438203951301 "441",8.10686676058028,8.00869440443831,9.44711921516415,6.42127233239575,7.68206463267475,7.1531134753391,7.40889973684891,7.86399435840566,9.43824511810685,7.6823616197191,7.79577930314979 "442",8.91695021626861,8.87999603593161,8.86250671939524,10.3871613098058,9.99599560909594,10.0078226497053,8.88167953131368,8.8536731198127,8.69208941239287,9.07513008165715,9.15599989088867 "443",6.88155947257217,6.90017952300248,5.86514541966066,5.41530931619833,5.68786865869757,5.59180320170385,6.44473499605013,6.08445307616774,6.35268776105888,6.47762432452458,6.19775514290742 "444",7.23255742572302,7.39209958961505,7.69121046438222,6.10311306989949,6.38142750577997,6.54949985976367,6.99671767479317,6.99325413025103,7.50457191807483,7.34445723975138,7.13412390184023 "445",8.34476791537849,8.43539007666392,8.33097585472411,9.85327718286724,8.94519012149416,9.22906605581933,8.53845857842735,8.30827599759587,8.1813949362326,8.06757677451835,8.1084600941279 "446",8.4731177460049,8.26032284797954,8.4844870178595,9.89870435888457,9.23334449286464,9.14011961895633,8.33659300182343,8.18327426188161,8.33529480285373,8.49265550722103,8.22534231784948 "447",11.1549734120465,10.8045871527178,11.3314974616863,13.1930511545735,11.4965636649388,12.8534149604344,10.7834944214722,10.9611364607764,11.1609355455371,11.084105229677,11.2290470361126 "448",8.63551598983729,8.67478121154594,9.5132368216169,11.2850593828563,10.2426031084798,9.68572968203863,9.23659730688724,9.22661702159954,9.17731822844084,9.12061492682775,9.15373551231987 "449",11.5338583690058,11.3469773792708,11.8292977541535,9.32129819118136,10.1492363651661,9.76434470127426,10.8965074834543,10.9112941165841,11.3053494967477,11.30954751847,10.7828604749665 "450",7.28034739162555,7.23358348078163,7.07928366845503,9.01620360197303,7.87748596753984,8.45080410064663,7.63640716658413,7.54966134743154,7.33538873657639,7.31991758798775,7.45567871962375 "451",6.70973609194007,6.03473941582247,7.63479678432445,5.41530931619833,6.12614548408454,5.4175148732471,6.04639115237076,6.36384896693785,7.24766993451312,6.08168542829163,6.26806503453322 "452",9.49813509069848,9.5525997452163,9.4259678546388,7.91030878238794,8.90599777992245,8.28985371957146,9.57509413491934,9.50468550360385,9.31963252852319,9.36497408501064,9.60529858120061 "453",7.54552247013425,7.69793278885674,8.32081521630306,6.27135914474364,6.41973750499147,6.78509433379566,7.05907407779846,7.31231811600864,8.70307163158556,6.73656644191199,6.93594480505962 "454",8.3536900071723,7.95445818948913,8.4240837979859,9.28890137381995,9.32036262848267,9.16352095877154,8.04158992416231,8.06829377497693,8.24794887955917,8.25120476592275,8.30512332884886 "455",8.61340778184865,8.67198671173832,8.36598350501852,8.00659675579259,7.42821628028939,7.9854210112763,8.60222405328637,8.59913728390068,8.84202235933679,9.00281461302748,9.10064818835019 "456",7.99148015255892,7.81425380691504,8.73830836870151,6.99600080825042,7.60234652881296,7.42807775485705,7.98949285798826,8.25671006792423,8.68102281568301,8.48534897120953,8.09906294768929 "457",6.03616389920384,5.96091715432509,6.15229533335878,4.87732981549012,4.51917288855208,5.12270292620239,5.6591344389259,5.73213596531648,5.77015986861159,5.16791879000176,5.02750813069502 "458",7.79563254979044,8.06095749757165,8.29509519727085,9.59742371310087,8.46832690500909,8.86355173432228,8.03646440075341,7.87025342817232,7.70778539222738,8.08703158629843,8.01660473495846 "459",4.71360779724634,4.94522659172497,4.77805840635708,4.00522961816383,3.54830022377166,3.9737401164974,4.79704755731515,4.14366324222193,4.58582955381605,3.94912244603611,4.23274464232371 "460",7.03475077054921,7.0202222031051,6.42845492233721,7.88880807582996,8.11402443253493,7.55980996663979,6.79127264998927,7.17699871670462,7.24766993451312,6.7489573804274,6.79046862306178 "461",7.99719002784986,8.29708182497682,7.81962824379556,5.8812668252616,6.28074432712116,6.16393427299536,7.27559076168853,6.83470072861068,6.9465242259136,6.85583364825118,6.58799030207827 "462",9.04905878567715,8.91349938430806,9.04318440287859,7.4237930007383,7.3024800928342,8.06502029426276,8.7345628609467,8.4897399118694,8.19183661884524,8.83771561518564,8.6519094917713 "463",10.7029521823356,10.6075101782985,10.6768420424773,12.558832321559,11.4626579178894,11.3788894962288,10.4936321843905,10.3647903605462,10.356101349592,10.5155300843695,10.5262523544784 "464",8.61340778184865,8.85803938608857,8.69572024895472,10.2800100050611,9.39064709862759,9.71944683417108,8.14996041764452,8.61782708032254,8.88765325165449,8.69620648577035,9.03818342393511 "465",7.86600979372371,7.90764242244625,8.04022746166304,6.85426078798228,6.66194786109538,7.12138953885052,8.10660981787604,7.35769553409876,8.16028132058192,7.72028003276501,7.48490815233371 "466",8.78144338716766,9.12233219979661,8.59397327500127,6.7132762502854,7.13077178661059,8.28511545526134,8.63984593924508,8.4897399118694,8.02079403326893,8.39854482556773,8.07529774133243 "467",9.90212640740691,9.95650857306294,10.1639251296023,12.8383374029778,11.9208838844764,10.6986070967486,10.3961534170129,10.2072414471708,10.6026172899241,10.3921580282051,10.7718333907813 "468",9.16501306965848,9.04239240572551,9.06159116894216,7.27661531753778,8.17030206884004,8.26600477790436,8.76583136463512,8.73201995862772,8.90677549196692,9.12532036149569,9.06735005114585 "469",5.7291387983615,6.20343391361201,5.94971686400677,7.50155353167975,7.38115686904418,6.58120453943995,6.79127264998927,6.08445307616774,6.03386567505439,6.08168542829163,6.71791173993668 "470",10.5782976694326,11.1377611205516,9.75666726238488,9.305190779717,9.13226992605728,9.54435909258784,10.685589059233,10.6278304574577,10.2602873404932,10.5973678307078,10.4350635179061 "471",8.0365361305301,8.24158501242507,8.37091579395097,6.89829222892027,7.0486043849577,6.95118912698659,7.96811330155918,7.78667569975054,7.86629461016776,7.82257122540105,7.84161802387833 "472",10.341265129104,10.2698519674087,10.3918745742166,8.35883073089523,8.3070820659982,9.00845975317351,9.43629935169704,9.71185621439532,9.99154361590547,9.75172040936307,9.36616753873087 "473",8.00854214661264,7.83442586481981,7.73785856428288,9.05846369834881,8.8101774556847,8.49249372898822,7.7156042158484,7.88269028662783,7.84658584706185,7.65651370055754,7.87506113511328 "474",5.20160456221532,5.06782347272974,5.37656757260563,6.62838823156807,5.62125976688193,6.00694829385502,4.95996179375818,5.70299476097377,5.64795953546789,5.48824617712437,5.19596301279726 "475",6.83088295905748,6.90017952300248,7.61826206548417,6.27135914474364,6.23832076740441,6.00694829385502,7.02823820460525,6.96998692311962,6.95889432739089,6.95519351510259,6.87065613243116 "476",4.64185256734797,4.58626187939733,5.08949593862507,3.54830022377166,4.16918380110659,3.9737401164974,4.35251077174588,4.27494782787477,4.98704716969574,4.1133546816754,4.23274464232371 "477",7.80217502921643,8.03070215418876,7.38388137229294,6.42127233239575,6.96138984243564,6.48384779798115,7.6962113969891,7.51807320385568,7.20688199758678,7.43099209888362,7.45567871962375 "478",11.1600620332054,11.2839104333273,11.1755323899181,8.76845148200469,10.1728069580658,10.0996226853339,10.7842575816068,10.8271395888766,11.6693675614274,10.6764143380913,10.5608311486164 "479",11.6423776938818,11.2213061233021,11.7856956769986,13.40368286715,11.9707728591095,12.7737444696598,11.1567219387587,11.283498072286,11.2829734699861,11.397720390158,11.3377257080465 "480",7.07874176605886,7.28595559966957,6.95249236326906,6.12845239811469,5.62125976688193,5.4175148732471,7.02823820460525,6.38179577561934,6.25441840396481,6.33590070251447,6.19775514290742 "481",8.46078570459549,8.17598611502826,8.55983506215595,6.62838823156807,6.67774574857742,7.09984026877219,7.39290093139501,7.54182942806729,8.22271435187535,7.80504171762109,7.30803976507099 "482",7.56875606870341,7.29328277641992,7.91738279967502,6.42127233239575,6.25969592333039,6.75771463598581,7.05907407779846,7.01614586013828,6.97115740445838,7.66301951594249,7.7180186839132 "483",9.91271837578969,10.045504659129,9.73772036134037,8.22809899650974,8.16477240153267,8.6845546047868,9.42850797393727,9.22904905418835,9.62873291838365,9.50332568693621,9.18733328198418 "484",10.5329247120878,10.8147496221803,10.4488981298133,12.6017617716246,11.4023616437032,11.4498408775893,10.4461983590863,10.6452292258748,10.2981741882662,10.4856621138662,10.7022918733724 "485",11.4850187154504,11.3403976864293,11.162096276883,8.82605142978317,10.262124565693,10.5228500288638,11.2358417935858,11.0008026930856,10.9204222484576,11.2380631516879,11.0640873476908 "486",6.85644829729563,7.0202222031051,7.21786362165879,5.53878302118535,5.75123300751287,5.65534952806707,6.3637745907004,6.38179577561934,6.57972732505406,6.26793748710628,6.14255176514714 "487",9.02135188313687,9.33326927180689,8.31570786320985,7.2542939960416,7.24048839399441,7.11065571890034,8.44879216660265,8.12170010225803,8.33999530694375,7.83988918114374,7.69321852897065 "488",4.56403575450106,4.58626187939733,4.17697833106617,5.81955380472203,5.31322437542958,4.9129913680454,4.95996179375818,4.14366324222193,4.98704716969574,4.89214603725089,4.82879049046518 "489",12.3680885794261,12.7348124708564,12.0469097098629,9.69953119567674,10.8752063039882,10.820524633291,12.2719287149357,11.3614682168514,11.8113508034668,11.8711355905754,11.4475915486806 "490",9.14461248651164,8.77193440502366,9.35562266985496,8.10306875627533,8.37088554291666,8.08151841378303,9.06124309529953,9.12057934246753,8.84863020211787,9.497894042283,9.42555326987163 "491",9.79169486851006,9.43726557043811,10.2466609542363,11.2685451426565,10.4337612753273,10.3215132261354,9.47084874315955,9.47015406967059,9.45132386977925,9.66229614437968,9.47897708223457 "492",11.4547975266178,11.4149371581168,11.5723940307558,13.3668247110214,11.9806254746361,11.9254569273859,11.1922313965689,10.8012320124396,11.0846679594715,11.1216634458201,11.1386595851301 "493",10.6915755697644,10.36801172698,10.6013007522221,12.595706650859,11.2876744498893,11.1065788828143,10.426779299819,10.217073050604,10.464337235985,10.4297197189772,10.4125200763007 "494",9.87452726689052,9.54346052205762,10.4418922503528,11.6345423183152,11.105887704776,10.8922879882398,9.93815538550881,9.87910297731437,9.99452447687586,10.097654322178,10.0261971457725 "495",9.30945556143007,8.82823348478184,8.96058802310873,10.8322819982431,9.56845689026225,9.90361849213205,8.97023570577672,8.69729742885466,9.04838552577783,9.07025763088848,9.21148331236238 "496",7.74898018933612,7.80916617149663,7.27184892251145,8.41499745971143,8.29194753636045,8.48425182913367,7.39290093139501,7.25588912772885,8.03246495373817,7.40790664530083,7.3162027222452 "497",8.09093938366201,7.89809328778013,8.74970806707209,6.62838823156807,7.32255949543924,7.50366343129384,8.20122871952723,7.73957083529562,7.91125597625291,8.25550801443166,8.0215884275208 "498",7.5139458127215,7.76254689021259,7.12699231844794,5.68673393056132,6.17212405558635,6.432497361932,6.74125749547841,6.45134919921931,7.08828955603528,7.05799252038243,6.87065613243116 "499",5.54375559944074,5.94181150757653,5.67786163365234,4.55382476248647,4.83273793005469,4.79051865717914,5.14502080212905,5.54656694097749,5.67960036331149,4.94316935660089,5.19596301279726 "500",9.20250300256374,9.83818345260913,9.63906176806089,7.95236784913055,8.58463511053843,8.06502029426276,9.42263668607332,9.46603663920348,9.45781902601409,8.78514983441053,8.86627559627345 "501",11.0656020787406,10.8700077328999,11.6310598284776,12.7216112929918,12.5954902868031,12.6526935760291,11.4945947994428,11.153230283247,11.251550655315,11.2304431300216,11.2875098285037 "502",6.73757181762199,7.47167867409579,7.73018851223512,6.15332962573924,6.56323269003586,5.80182700427773,7.13817459357482,6.79544173688354,7.20688199758678,6.83277277346818,6.64141001370651 "503",7.92113035696155,7.99084222026797,8.62319443664458,6.82412564138579,7.28211410056228,7.52799643435851,8.06191113975279,8.00715966731889,8.01492283068152,8.26407608314835,8.08485102726256 "504",6.6077271848552,6.20343391361201,5.80562626524342,8.34312427842712,7.96286233140267,7.1841457180674,6.71556798592224,6.76864888687765,7.40907859597,7.00752371135829,7.01856456429921 "505",8.45250525783628,8.42214226914085,9.00881571426146,5.96879451060309,7.47377566559152,7.3299137996592,7.67655263199372,8.22290605381997,9.51083683911358,6.80932917396642,6.58799030207827 "506",6.22781582447258,6.38180153379745,6.1044136676551,5.37127805426564,5.43778714177974,5.16956541079112,5.95959972155521,5.94464232625034,6.8829993213614,5.66362134495617,5.37741497761244 "507",5.40326495224052,5.77824442532879,5.33324863235043,4.64558758720875,4.16918380110659,4.9129913680454,5.41158127901156,5.36813953141026,4.73829774126364,5.12639274786288,4.98115357179952 "508",9.94403540810372,10.0292308145702,9.73198740870318,12.556000026876,11.3431056151795,10.5238545853961,10.3719882749151,10.2231839458102,10.1240222680986,10.2334724577099,10.2818099330511 "509",7.60666010902973,6.97524678447138,7.09136174566226,8.28402107809258,8.37088554291666,7.85708585459775,7.2131083928765,7.08268644591105,7.49614943333921,7.23492977547342,7.46304227382973 "510",8.34028603840679,8.60030164643934,8.54682164678412,6.61077692935938,7.66647186177329,7.51182049470467,7.95186718386867,8.21801139525808,9.14815977020412,7.67594321107183,7.65519474955602 "511",7.33565903147877,7.82940937112543,7.01730337161271,5.72122142567301,5.58662010220739,5.71592278023559,6.53605336162418,6.46820733456883,6.70308285135445,5.86575800256349,6.17960026676426 "512",11.1149159320925,10.9488297534387,11.8044788501286,10.0022248432524,9.86082380848875,9.45447601338872,11.0331161141397,10.6606206377189,11.2059904601107,11.0719745610094,10.7038398463932 "513",7.16283922464112,7.33647290912513,7.04242098979395,8.53964242110826,7.99439375813141,8.10322540131312,7.03859140210642,7.51006601123826,7.27751286534764,7.37653420130328,7.51355225377503 "514",8.25236519168516,8.24535215755827,7.97688346858888,9.58191004459849,9.05675102942571,8.94984168180569,8.34490387233704,8.33111769783576,8.36788038073976,8.00758038701829,8.06568053151991 "515",8.97299212607406,8.9229304161299,8.74211830039699,7.84481583067844,8.21379020954388,8.26118717505858,9.42263668607332,9.12580961555402,8.65863122399849,8.95867206484036,9.15146757110382 "516",8.62818423221203,8.38506923685766,9.21745910567667,7.08741090627332,7.71275036501565,7.83777865844481,8.26394247874175,8.21310002224855,8.87152188693131,8.37896109446497,8.44142364658327 "517",4.47860358440826,4.52173032050244,4.70273040173548,6.55657468638091,5.9248799958122,5.02279148452906,4.90840757914297,5.54656694097749,5.2787215413229,5.48824617712437,4.88205559019666 "518",9.53190194105546,9.42072277847819,9.68923458440224,11.3975503825158,10.6973499512407,9.95517269379991,9.56269067564775,9.44944832477595,9.20846888718832,9.72097098535237,9.88731381630164 "519",8.81411287320246,8.82068466009041,9.21745910567667,10.4677379120527,9.5303180887227,10.1196959219102,8.72822688154078,8.9511914865903,8.97479625390221,9.17154871505966,9.12165494744947 "520",7.31745897614819,7.48452166404071,7.58460878049789,6.38006970713804,6.62980875551585,6.6274551501056,7.22220388613709,7.17699871670462,7.23758185587131,7.55520541728489,7.34041517352733 "521",8.97876645867277,9.42238562480594,8.79809020327124,7.85963022288562,8.06736022331051,8.74787211075106,9.47463695789972,9.02863181280462,9.20589855535578,9.29987389895535,8.89367732498072 "522",10.0924980595298,9.69421472479868,9.61018326765666,11.6484365898119,11.2857683641788,11.3159126650663,10.1835222191465,10.1116570668768,9.84234906815211,10.3764606134688,10.6357298069217 "523",6.28617087473548,6.51469182046056,6.87059106542218,9.00959064307579,8.13114022707624,6.99860798635178,7.37672094825418,6.65607019101962,7.46195465447155,7.16309172878793,7.39536368925421 "524",11.619009227286,11.955596348973,11.1312180678114,8.81471419617238,8.58049083175767,8.98529784302089,10.1172249523826,9.80443914074973,9.76590255325414,9.79812291228266,9.57685423037748 "525",13.2008348095474,13.2229094187235,12.4254494205654,10.7632331081676,10.7600198094724,11.2723469906854,12.6274666374653,12.4954673837007,13.2325082677263,11.3761772311948,11.2360177924907 "526",9.7450405277776,9.9576556060851,9.53095500793312,7.97294433783829,8.93224408410154,8.76497740459551,9.69196594392322,9.61478013476802,9.51291753547009,9.42726138801707,9.47354137827644 "527",7.11086380579525,6.56449352089582,7.33404463366619,6.02413172001014,6.0785626727083,5.98296049015383,6.68940081877738,6.76864888687765,6.59575316118728,6.83277277346818,6.73026703288782 "528",8.91393939410353,9.28289979667133,9.5636009845266,7.74460433271526,8.47280642196008,8.0200763006083,9.1563107349151,9.05902616526276,9.01646817763471,8.72440182469326,9.09121266995768 "529",4.38318186180789,4.58626187939733,4.3153118826282,6.15332962573924,5.68786865869757,4.9129913680454,5.26656920680189,5.06400718580499,4.49869474411581,4.94316935660089,5.27185771113154 "530",7.6141220077179,7.83442586481981,8.59818420429568,6.61077692935938,6.86845499432929,7.19434131217863,7.99478839831307,7.6330983687342,7.6482713495797,7.392306529803,7.73634128687924 "531",8.34028603840679,7.96364096065335,7.91738279967502,9.92353218624617,9.31538675493154,9.41602732141334,8.50177381684698,8.33564284497309,8.32584747663876,8.84914095394038,8.83551932912319 "532",10.4250316378231,10.2456408576791,11.1860521542528,8.59813876051358,9.39772612519906,9.05090987272044,9.99727972493032,9.75298881703293,10.1294561798736,10.4067208120479,9.95647975434138 "533",5.06174854283329,5.43096210363813,4.91368556592511,6.46128859958821,6.17212405558635,6.32372596223563,5.54137865292697,5.54656694097749,5.7104892060778,5.57893710519621,5.98336777510678 "534",9.99618868871329,9.87264523900797,10.3500740427422,8.21088943820607,9.04477335227232,8.75473862017161,9.50087940174002,9.62589475463826,10.300584664156,9.61958870811479,9.24377644053609 "535",8.29004138613078,8.10310359040927,8.0464109394713,9.94100827166099,9.33026315009008,9.28939860356225,8.32403599346097,8.34913352383126,8.56541213920138,8.7336789488075,8.76307618452681 "536",7.38890737314115,7.96821042478736,7.83400743326457,6.02413172001014,6.25969592333039,5.65534952806707,6.80350412324311,6.51759189519488,7.11060007305094,6.61984398459466,6.25082171740127 "537",7.76916012660847,7.87393883350761,7.53259773401686,6.91267003685449,7.17567776690464,6.3424578003934,7.66329537746326,7.41889512543373,7.85318554944182,7.44617784201444,7.54163419063044 "538",8.36255712123935,8.60616960519582,8.35606792036895,10.70305510605,9.39772612519906,9.36086615048102,9.01255332160039,8.83782155846211,8.84533006878369,8.57067138358356,8.83269047384802 "539",14.3864133620234,14.5189773861497,15.0455665586091,12.3269644125823,12.8523034928073,13.266013155977,14.3115639991194,14.205812309425,14.1571046577427,14.3184478567655,14.3416660423029 "540",10.3951308847972,10.9031271386588,10.4891011972721,9.3711492569437,9.4711490953103,8.98821352100457,10.3689389677166,10.1748178865505,10.3161553304096,10.3605904935311,10.4172457685466 "541",13.7822329954551,13.8616426182521,13.7504456432676,11.6264650979516,12.478542424273,12.4551791540954,13.5859379320449,13.598230867161,13.7422669541302,13.5013075913426,13.3916316038864 "542",11.1530605420058,11.3875405868081,11.4676423980379,13.6134224930175,13.0827308869943,12.2893548406112,11.6336238966416,11.6979415537226,11.4888041685787,11.6486648397987,11.9210148068808 "543",10.392971211199,10.410513188041,11.3738294172668,9.12115207939505,9.01131205125623,8.85079168528135,10.1507544590629,9.59417813428526,10.6619381893228,9.97922774622234,9.62830925399279 "544",6.96609768642662,6.9193225937545,6.96569370017792,8.25633177295684,7.71275036501565,7.45371945467911,7.01780895122303,6.99325413025103,7.06562328853505,7.04804123758127,6.97785631436976 "545",7.591618665772,7.9265522634572,8.03401726116649,6.61077692935938,7.02422802117677,6.44982545987761,7.53811291149076,7.59577391721903,8.01492283068152,7.02792701449734,7.03848901430683 "546",11.3146584841489,11.2825381683118,11.1804511610999,9.84401748691189,10.4303142109512,10.0263725052202,11.0579419399003,11.1634348896954,11.2459336993013,11.3218931533536,11.3436953958177 "547",5.83953755398429,6.0166588706562,6.19855602264465,4.55382476248647,4.41984085544861,4.48644669672571,5.10151945545351,5.01322721136904,5.32100047365207,4.83852784420667,4.64957162869111 "548",7.22280413999188,6.86109848575082,7.58460878049789,6.55657468638091,6.32190141837547,5.98296049015383,7.05907407779846,6.87289813241104,7.09948857397956,7.16309172878793,6.73026703288782 "549",8.54107156449348,9.22690519518961,9.7204526766636,7.06188847868238,6.17212405558635,6.612207216185,7.49382899115928,7.30306692115969,8.07822326015754,7.12576620834847,6.74251485586564 "550",10.630559449633,10.8329885823007,11.0536841798429,8.85216312021143,9.85911546353578,9.17123773748359,10.5530525204015,9.87134126721195,10.1918168273526,10.6116849857639,10.3848014937035 "551",13.1364603812786,12.8399279963713,13.6813652951292,15.279711220615,14.4513289992183,13.855430655823,12.5746293670682,13.1708433581269,13.0728267389678,13.2160467432152,13.3836862565596 "552",12.1647707772501,11.8331546295284,12.4030801736611,13.9575531901799,13.1636651339951,13.1755907386072,12.0134045989482,12.131930788137,12.2462002902276,12.1288121975481,11.9812907964469 "553",10.4176143551016,10.3834569076551,10.2466609542363,12.1338314506619,11.5302275884908,11.2237201982925,10.5431672721845,10.4391249368636,10.6181609884939,10.3833492611789,10.3982493927484 "554",9.52797016741893,9.42404655563583,10.3748090348983,8.19930091953913,8.55537151739611,8.54097821295531,9.53574703682995,9.01460142093489,9.53150991828696,9.42726138801707,9.28780498055758 "555",5.1102803075969,4.75624419227938,5.19311942679736,8.94173649599666,8.000617835345,6.53337388382174,7.04886966201994,6.83470072861068,7.49614943333921,6.64663319616527,7.22373327348314 "556",6.9184097826443,7.54706220423201,7.57607042757072,6.12845239811469,6.59691611192018,6.30473681676143,7.13817459357482,6.75505909917696,7.09948857397956,6.87852433571936,7.3243192572221 "557",7.39759226141577,8.07373159444057,6.30781724882702,4.87732981549012,5.95174206023759,6.00694829385502,6.57956677089401,6.58083381215475,5.64795953546789,6.04117709694692,6.28509519859856 "558",12.8557368626652,12.9373208666282,13.153544762093,11.1808087189828,11.8217633688673,12.1437294407753,12.8094129273124,12.7574447755341,13.4087449839266,12.9971343242731,13.0064221943698 "559",6.65235551364311,7.34354589854347,6.55712549554688,5.06671461268446,5.43778714177974,4.85356377363824,5.8906209020639,5.67318746075466,6.19190554505257,5.390508541124,5.23451608884748 "560",9.42602110683722,9.43890945844959,9.91684090835554,11.4038650225971,10.5032162891312,10.0696672029651,9.27403719229547,9.79790262233915,9.49408229005173,9.67839108555383,9.83458568262427 "561",9.95871260679007,9.84067250449827,9.4633584075953,11.3538618168919,10.9692588320941,10.2840574097827,9.85777191856407,9.88065031937561,9.81225495616702,9.75627679270274,9.73513239781039 "562",8.59472142415232,8.65227191007754,8.50706045886544,9.81776951865282,9.12090606831519,9.39641153378936,8.38977501380715,8.48159830870355,8.8353840722212,8.37896109446497,8.53492530946945 "563",8.4812808049828,8.14808023567777,8.53808023308155,9.91824779932998,9.3128923632722,9.14011961895633,8.08194902107331,8.4061743996013,8.67359756310586,8.75205586163121,8.76604494088241 "564",9.17510610384297,9.20967373801803,9.68726083199219,8.92426173049649,8.37567829613135,8.07604005576735,9.53574703682995,9.33444964278885,9.35253864980812,9.36497408501064,9.25860252902264 "565",6.53003463405643,7.01134044782061,7.17315278563807,5.911083037832,5.86948201497142,5.93366313679853,6.97530809965684,6.54957034296888,6.42656981487671,6.44735550801757,6.30191763602776 "566",5.98963878082147,6.51469182046056,6.6422828401053,4.80590313991191,4.51917288855208,5.45435632888149,5.84257292711029,5.28887854364493,5.14207053784841,5.66362134495617,5.34323580728863 "567",8.05307442972041,7.75727219503807,8.1127291879404,9.32129819118136,8.58463511053843,8.5449458429654,8.12603830580389,7.81291420734027,7.95485212886411,8.05281087128144,7.86954111288269 "568",8.55660514613917,8.39527513861423,8.35606792036895,9.57968011869381,9.12375544281463,9.04251928430416,8.29858835270601,8.34015380589149,8.27274833599991,8.46691872584193,8.39229206337088 "569",9.56489612883542,9.74691805503173,9.3996875934051,10.9534636565864,10.4644196919081,10.4100203142747,9.53755902694178,9.61849453460027,9.4027771114501,9.67999074387503,9.6795658597232 "570",8.81411287320246,8.34701589034485,8.47077107904865,6.7618541533593,7.84324791613154,7.73017531178659,8.25073209190262,8.29439486483488,8.30195416064893,8.21188497465407,8.14544619843603 "571",10.4830356140436,10.1988772212299,10.4003322245303,8.94173649599666,9.79265168242774,9.61016896255425,10.6491869482161,10.4846015946639,10.1456361567552,10.4783272954527,10.5183565556235 "572",13.1999086398908,13.4235126610644,12.634987041136,11.1420497309778,11.828325662752,12.4861736403297,13.3079245486898,13.098731080862,12.9553681548661,13.0500386549669,12.9787186880204 "573",11.0103223861425,11.0894001913842,10.8376109114146,12.7560773488461,11.9476522770784,11.6907071204152,10.7034513389718,11.1077163745979,11.013722762248,10.87450037426,11.1208093998223 "574",8.53716184281204,8.00425211179307,7.04242098979395,6.88376684868542,6.94848101549024,6.90212845614626,7.79065468949202,7.46934371045286,7.32590428280078,8.03789167558608,7.60287407050954 "575",8.89879019129003,9.23827945965716,8.40015972467653,7.89601081208399,8.38045514083166,8.25635338367242,9.26093385697583,8.63993930290509,9.19815994719563,8.94808608874814,9.17845016583027 "576",9.0572680471116,8.70789903186464,10.3018759557396,8.21664886829603,8.04946300802492,8.31331375315718,8.45264192153166,8.72858512868616,9.35486059647082,9.63451561359997,9.1377844751529 "577",8.97876645867277,8.68313232668749,9.1066052071882,7.79172695409009,7.91092643271975,7.97368095160281,8.83821783785095,8.50186663160025,8.77074632985548,8.81167244606435,8.72085810481249 "578",7.65085939919941,7.35758762707936,7.55883943959597,9.02278635626887,8.40878796661352,8.27559185040856,7.27559076168853,7.80639942758163,7.94870454884627,7.88507413802691,7.82459963322904 "579",14.1820246797124,14.0348433984076,14.1425403204383,16.0413189563274,15.5204226484536,14.9720373366308,13.5601039877284,13.9666493809405,14.0109567353152,14.3257456141227,14.2637227302868 "580",3.97008655127665,3.54830022377166,3.99458687560867,5.00715176399614,4.95881094319955,4.27998953468607,4.24697193895882,4.14366324222193,4.40133275723348,4.34246051744749,4.33623189839069 "581",8.96428701282416,8.66638139372492,9.37537352520424,8.01323366988297,7.74279308444626,8.0143581580013,8.9210941051909,8.50186663160025,8.74971683939472,8.9347433177825,8.70237886857615 "582",8.96137358383928,9.05959422579634,9.34814578196487,10.5497570418822,9.58921720812363,9.75923494716081,8.87309143627635,8.84735340707263,9.05696897032904,9.1463067756953,9.15373551231987 "583",7.34467278053384,7.31504121459539,6.81323095846476,5.96879451060309,6.05413185693349,6.54949985976367,6.8747483721195,6.96998692311962,6.49672271584863,6.79745975501333,7.06786115492915 "584",9.39828981515611,9.331500338693,9.59552421170807,10.9439617230127,10.1851313007098,10.0765301022636,9.36665335211099,9.31397698309673,9.46213293243997,9.45742421826851,9.46443608566694 "585",8.01418474594075,7.85431831235001,8.14189122681626,9.51579960554126,9.03572431573719,8.65915935363263,8.2194276919275,8.06284235810606,8.2379081314356,8.19405842176762,8.32540318660187 "586",11.0601684633886,11.1276064630022,10.8614342752128,9.56622765913253,9.24647539156935,9.50215848564467,10.3597521777827,10.3932521184581,10.5859165079026,10.4532932624816,10.3436887907208 "587",6.6077271848552,6.3677860433118,6.32866748787329,7.80709668383475,7.08440208246633,6.92687122010297,6.85139714343043,6.48486391434508,6.76092516512381,6.55054143952896,6.26806503453322 "588",11.4344675226633,11.161346913841,10.7905898529454,9.88251491858858,10.4291633565408,10.3825946313385,11.4174982756256,11.3204471226731,11.3035480978001,11.2787410016814,11.1703556426013 "589",9.1776183589612,8.8307409960084,8.79075173922686,7.47288652092197,8.01298567750114,8.19704417881253,9.08869793487312,8.73544661786784,8.65108932809141,8.53219178875999,8.5693302404221 "590",9.56489612883542,9.27739719758963,9.65126340094331,7.85224213972544,8.42274793070935,9.10025281136537,9.50829034933697,9.41355144952952,9.13200299648332,9.3429258727378,9.28780498055758 "591",5.89146640696981,6.17132176086361,5.45889453101379,4.33331678257734,5.17436496058539,4.85356377363824,5.79272028164116,5.11259910555834,5.32100047365207,5.03853376538012,5.15610281821546 "592",11.5431388792934,11.634852641196,11.6982519582448,13.2773175049196,12.2457393550776,11.8904482670121,11.0990054250745,11.3158799143395,11.3065491809334,11.3618003840936,11.411101827067 "593",8.94671742848271,8.75619043860649,9.07070714442444,11.1689934046915,9.42107496965634,9.0340795627192,9.00994456412125,8.63627742885038,8.92876870555466,9.07998611656099,9.10064818835019 "594",7.64358689375606,7.3645570520418,7.48776309257842,8.77626583760822,8.41345634845132,8.00861716750595,7.60900468236282,7.47758144184037,7.70047987286092,7.63019097676112,7.65519474955602 "595",8.54107156449348,8.54333002884344,8.45227747610215,7.44363314681225,7.29233343640058,7.48720844411563,8.18742674577586,8.00147085187088,8.59322991184676,8.03789167558608,8.01660473495846 "596",7.99148015255892,7.53477084058202,7.65924649376092,8.57592049462451,8.46832690500909,8.30865224959344,7.42472141449871,7.72582316827508,7.72228569452455,7.66949593069283,7.7840870982867 "597",13.7904598226349,13.5700938205544,13.7610384101576,11.9719903854743,12.2349134696067,12.6126535862035,13.464668722991,13.34485246522,13.647340472463,13.7527292879964,13.4431634404722 "598",8.41889875238366,8.25659475684565,8.13029729827299,9.40932290758582,8.92898932025291,8.95878783868997,8.25514904775311,8.25671006792423,8.33999530694375,8.3144397460474,8.1084600941279 "599",8.86800544083325,8.54943430095146,8.70746062249964,7.22014278192286,7.62673110761834,7.3482709372649,8.38172000092873,7.87648532555971,8.21761388082079,8.2425594543444,8.05599853329732 "600",8.85236285719047,8.69143530156097,9.40929956547201,7.97973818317769,7.94360579430254,8.04833058543425,8.61601872166596,8.79248629950711,9.45565722320617,8.45574624502108,8.71779464807795 "601",9.53582302322955,8.99623582398591,9.86365453088015,11.1660243937268,10.0479062052631,10.5457796663362,9.39291617741073,9.54623097626643,9.55593263440695,9.89771579249255,9.63481685042367 "602",3.97008655127665,3.54830022377166,3.54830022377166,5.2287614540209,4.3058722489524,4.14782244847307,4.12059456186923,3.97076798325069,3.97945053140578,4.1133546816754,4.50758419823284 "603",11.3401022332427,10.8485288386906,11.5078907117088,13.3081111424348,11.6977542045833,12.0224624386574,11.0169744314651,11.1221760767577,11.2143237664968,11.3563093972778,11.2890574852634 "604",11.2558628097587,10.9835891591669,11.5289794553245,9.66839227629136,10.1534239687427,10.4401304592274,11.2787141066205,11.1823761209012,11.0254276557003,11.1877979831636,10.8934850927677 "605",10.9418019744232,11.0447681525681,10.5093488269158,12.2067922572748,12.3341589735363,11.336640334056,10.6212695687044,10.7814913449302,10.8282053061651,11.059741021913,10.9860853855498 "606",8.55273743281747,8.92762288631626,8.36103425295079,7.4825061660954,6.78362663914756,7.58321459177539,6.74125749547841,7.18710224326981,5.98511354074592,6.12102121355555,7.02856174187383 "607",9.65957741958844,9.38535254891327,9.7281527398313,10.8096309517258,10.3265882396982,9.99193810052117,9.42263668607332,9.38766339818314,9.40725862009181,9.36894687628019,9.51822485167951 "608",8.15871854385556,8.39527513861423,7.73785856428288,7.50155353167975,6.88211086947595,6.26595636830419,8.02097721419156,7.50201375749303,7.42692214584957,7.46120398896203,7.49212312327991 "609",4.14270956135568,4.52173032050244,3.54830022377166,6.27135914474364,5.8408949819472,5.21461805136393,5.05629560314322,5.06400718580499,5.74066404330379,5.16791879000176,5.19596301279726 "610",7.78245739995991,7.58331550688759,7.73018851223512,8.60693096286727,8.26119229282476,8.09241288324656,7.54536214988635,7.36660049554979,7.65584716466506,7.63681713218184,7.57597916990979 "611",6.08114303943217,6.52730961170283,6.02927536298391,5.37127805426564,4.95881094319955,4.79051865717914,6.08778488450736,5.36813953141026,5.47688516711479,5.57893710519621,5.23451608884748 "612",9.67031849314298,9.91223123965749,10.3488260888687,8.16991436634235,8.61736685659035,8.50883731367514,9.28702250294436,9.1720472001699,9.52533905528631,9.2576411005459,9.176220807149 "613",6.86905962463961,7.00240275619582,6.88457464649699,5.61488371433785,5.95174206023759,6.26595636830419,6.49114145155366,6.53367259212264,6.65808508296573,6.59253306201405,6.4447705104112 "614",8.00854214661264,7.45219532147425,8.04022746166304,6.8690907757931,6.59691611192018,6.92687122010297,7.5308267704392,7.46105825513585,7.62530056654001,7.53405438641961,7.25805623997653 "615",6.62276159563949,6.0166588706562,6.6256602057308,5.12329148338679,5.12418767680969,5.25801624538125,5.81788128542292,5.89461424683779,5.40139710278378,5.79354444200787,5.53547894831993 "616",8.0365361305301,8.05237791583463,8.69964434885985,7.17329607382823,7.20845157211192,7.73017531178659,8.16412493691205,7.91936722856588,8.03826505815161,8.32266491485865,8.1084600941279 "617",10.575443775735,10.2698519674087,10.4765862656926,12.3588413731646,11.7322215954845,11.7325815639124,10.7131019742034,10.7979606038241,10.7071538588603,10.9638687519014,11.0784783137622 "618",13.8406430766546,13.4635216479963,13.7204859361528,11.7648665769734,11.9770862796402,12.9837854860801,13.6627474827175,13.3979445653683,13.4951954230303,13.4348970788056,13.3519536139402 "619",10.482020019862,10.5712538165739,10.8438252169044,11.840369867366,11.3905853132816,11.2081819390662,10.666675310806,10.4211631415911,10.3630372320964,10.2732216650735,10.4489763316817 "620",8.07483354014599,8.46152542794402,8.77967347546497,6.62838823156807,6.36186838199559,6.78509433379566,6.85139714343043,7.28438262245523,7.32590428280078,7.25233733061746,7.54163419063044 "621",9.28403502880497,9.64664223652351,8.99291846848737,7.68759652119424,7.85016117313733,8.81510744800008,8.89588024617448,8.89102014276543,8.72478802427873,9.03817875613548,9.08884410760406 "622",8.65728994392668,8.56458271440011,8.67991606182067,9.88612830949794,9.15751570756603,9.33819688549636,8.73139835478309,8.38886292662863,8.52883814354876,8.6609787294778,8.70547525126569 "623",8.74463002246685,8.90400622147225,8.95731472595322,7.79172695409009,8.03134008902296,7.82476137101342,8.83232261746188,8.68671532790733,8.48708009028369,8.68349585739117,8.64547463381815 "624",10.3612870497169,10.4816058459837,10.0941401124916,8.364028348835,8.32205904945651,8.61832519719775,9.35847528620145,9.44736130237212,9.49828921371844,9.12296956423228,8.93909674786722 "625",7.56875606870341,7.39890304907699,7.73018851223512,8.66701779572049,8.33195779092463,8.10322540131312,7.62277144374926,7.55745065008234,7.54595639693718,7.56218687853446,7.76636814679326 "626",5.89146640696981,6.12169436992618,5.19311942679736,4.33331678257734,3.9890115841535,4.9129913680454,5.0091772610784,4.78227634053133,4.73829774126364,4.83852784420667,4.88205559019666 "627",7.90299095098025,7.79893645999441,7.78303693228976,8.74076252402032,8.49939470047741,8.37703711426079,7.808819426911,7.64044796691853,7.5377746833745,7.93962609998984,7.91311819589957 "628",8.3536900071723,8.54943430095146,8.31058231591351,7.40367358381682,7.50920625035094,7.05573632290516,8.51656007542645,8.11644787863143,7.78578159383681,7.88507413802691,7.94495448529507 "629",9.19011437669316,9.39723929586054,9.02453951682281,8.42497820597223,8.55958861825006,8.17671818551297,9.38689784651663,9.30247639756984,9.16678326938302,9.02312882261529,9.21365883959209 "630",7.15259490164766,7.53477084058202,7.04242098979395,5.32561057076274,6.38142750577997,6.44982545987761,7.10902511762892,6.88540467353742,6.64275977322472,6.46257214152392,6.16120146958576 "631",11.9152899871936,11.8789727933314,11.8035682493601,10.8864992098863,9.80690086054919,10.442257323643,11.4729844102742,11.0770058455523,11.8534105372935,11.4534880848688,11.1737107089354 "632",10.0451470824942,9.86655143325991,9.93691385631424,11.5206168639934,10.9110953505303,10.5127657987546,9.82698994883534,10.0524837615706,9.82067761593469,10.1620200646063,10.1009475877283 "633",11.5333682633976,11.9991332951387,11.6884198136419,10.0593492910508,9.64778520643948,9.61771749756082,10.9967046058843,10.7101907124911,10.8839183066358,10.6233698134266,10.4961942663694 "634",5.8127914775599,5.68818125959145,5.71099058057816,6.22535759709578,7.0961370359168,6.72979247179919,6.02521051972577,6.25098415102327,6.05759821691539,6.25041016925578,5.82675902967033 "635",9.70903181390871,9.31727019248039,9.86190575396672,11.3067883543605,10.274993622038,10.4985283836602,9.75406174062268,9.73085439611595,9.55996317249662,9.84877885210766,9.76954416659041 "636",11.4470121619659,11.6211657602969,11.9102014108228,13.741972591299,13.0832796671454,11.8128515655766,11.3344856311798,11.457377617561,12.6580942697963,11.5071799861282,11.6678004990956 "637",8.87421523233811,8.89923608373775,9.05548166222452,7.06188847868238,7.57753959933627,7.6659008390104,8.38575314283625,8.0296923264924,7.99119511545276,8.23821723466124,8.18594905456206 "638",11.0642455923687,11.0020500645361,10.9990483818875,9.88793161577168,9.2568946714634,9.6946793276866,10.5954125965695,10.0620615991454,10.637358003224,10.9886020728718,10.5042119714895 "639",11.3146584841489,11.2774953324937,11.4520370965989,9.51346498043639,9.45314088417462,9.68572968203863,10.5962820046015,10.4285862814162,10.7314759978447,10.4874900057506,10.1920072447227 "640",10.6396958856671,10.7520114591786,10.8447107935654,9.49465064054292,9.40007809809596,9.34047991899248,10.8411073650371,9.95009104917995,10.4459455078123,10.2942602012668,10.1392087373892 "641",8.67873961737953,8.48401098248376,8.5115329832205,9.57968011869381,9.2953097265866,8.99692532830511,8.51287772303134,8.39754469144601,8.36788038073976,8.46691872584193,8.5693302404221 "642",9.15229657924635,8.92996340372811,9.33054742635067,8.23945869170488,7.96286233140267,7.81820817825538,9.05619462917821,8.6066423344331,8.83205342400301,8.75812977025427,8.69304958228157 "643",7.86600979372371,7.89329479833376,7.86933748057339,8.64157262955777,9.08918546163785,8.58788310907267,7.61590460120247,8.15281676709867,7.96097350831138,8.1623201230058,8.07049718053463 "644",8.12783241497292,8.20336073773898,8.32081521630306,9.49701590199292,8.70372248531889,8.82166157388764,8.33241949645516,8.22778411165954,7.94870454884627,8.18956704135662,8.3334357666772 "645",9.14717840477006,8.72147650673983,8.87990068659424,7.4632017364414,7.87070337750673,7.79836709458433,8.79036652453112,8.37134068175844,8.43970244756147,8.48534897120953,8.22965347869333 "646",5.63977041271158,5.79982726714239,5.53613856267374,4.80590313991191,4.76343465978073,4.65095609464182,5.22742614345585,5.44259274699673,5.18940370702617,5.32077713645568,4.82879049046518 "647",7.19313722009989,7.37839469988386,7.46942827527499,5.911083037832,6.43850350967657,6.2854828908731,7.44036987875026,6.8602800038935,6.44444218690037,6.53625939289495,6.80220655170267 "648",8.40609122623257,8.5855262799495,8.55983506215595,9.39924168195611,9.72297629826858,9.24864854911992,8.7345628609467,8.50588627819347,8.52471641996491,8.57067138358356,8.75413303028076 "649",8.86176877111159,8.62652119197488,8.92416620596901,9.9058417427882,9.22009289075935,9.35410271789337,8.63307829323579,8.65086939081869,8.46143122462842,8.70251998450527,8.81846227974399 "650",10.5250574973026,10.0901181808046,10.5598373547082,12.0047639400436,11.2755598204656,11.0209464812571,10.2667013558278,10.3614698793565,10.4306213004473,10.5297918960275,10.5245014636808 "651",6.44776575987266,6.85115710804526,6.44757980086205,5.61488371433785,5.43778714177974,4.96927465433063,5.84257292711029,6.0621316163943,6.29456940017177,5.390508541124,5.70237141167859 "652",9.67920867699717,10.0669213728971,10.3661999513247,8.8668743376299,9.2568946714634,8.99981760054151,10.0666776247959,10.0064541233079,9.62681290583727,10.0539132565253,9.83317173024776 "653",9.08964536100855,8.66918677953027,9.05241716979599,10.0171314553035,9.55796356436469,9.5795733692508,8.83527324277978,8.76257034971798,8.63205997312033,9.03817875613548,9.03079860089268 "654",10.0601969982939,10.2324338022478,10.5138099637476,9.11500451690018,9.25948776751697,9.01419253161676,10.2110283031717,9.97348142215322,9.82738050584064,10.0808011723378,9.97711108089912 "655",8.57959576796726,8.74559805039708,8.50257399714653,10.3312709676201,9.70216246753855,9.38760700419698,9.09855326022812,9.06448420152243,8.78114706698616,8.89946262532927,8.86350654344462 "656",9.07893353171304,8.55247675986609,8.4569231985075,10.4531970324703,9.45540424872114,9.94470818195294,8.44106163048337,8.86310101812468,9.41395487322856,9.78925753730181,8.85795242187704 "657",14.0917069289083,14.0163190898678,14.2485504207773,11.4044949690598,12.2860252698367,12.5415298223226,13.3258561856953,13.2008773596604,13.8757530631051,12.9860257264734,12.8409613796994 "658",9.9232331239746,9.75089348855704,9.97462323001715,8.97266680756033,8.65332216289537,9.32211361599394,9.80158086204688,9.90973873377393,9.8003799780172,9.95960684192096,9.78132356886948 "659",9.73313724376647,9.61063324416061,9.27904938924421,10.6477258879642,10.0191279614784,10.2023353134879,9.44983376909051,9.40926892471926,9.28838937679224,9.35699551019981,9.4142485447469 "660",9.42178931617855,8.94160930669287,9.1981797051584,10.7991291542273,10.5600480491721,10.5228500288638,9.45559556782755,9.63142010423188,9.88794857527391,9.71005189791425,9.77397272487535 "661",10.085828064966,10.2295879173604,9.74343061413704,8.63299001789452,9.14354489513694,9.24377780706036,10.2557373233781,9.88528240988294,9.76065910605987,9.67999074387503,9.79446140192259 "662",10.7643863875614,10.5584590944732,11.3787289588544,9.62579936902947,9.77282630877862,9.29647172850295,10.4954974746529,10.196100195515,10.4404912459294,10.77399544299,10.5280011226598 "663",9.14717840477006,9.45036449421808,8.90390479610711,7.91030878238794,8.09088168598226,8.03709544896096,8.88453089243721,8.70080758983713,8.98082366806132,8.64795196129915,8.70856499217527 "664",7.6141220077179,7.3645570520418,7.722477213493,8.5350427132569,7.89764356456307,8.08697597029313,7.50130547645627,7.4939159283396,7.58617793580115,7.30332025620943,7.40304374052886 "665",11.0608487855867,11.3635128528498,10.1221683938887,9.09951991373297,9.93891563959856,9.98611825045608,10.5494657176294,10.6232167407166,10.6277914294052,10.6390779048565,10.5718931087158 "666",5.91669169048245,6.1384379945953,6.6422828401053,5.00715176399614,5.26870826387192,5.65534952806707,5.05629560314322,5.81586767921463,6.8829993213614,5.63600666800275,5.70237141167859 "667",10.8581700891584,10.6871118521125,10.6658601865764,9.42927633104782,9.95819438632634,10.1616073714023,10.7903483716982,10.858098025655,10.8231845661272,10.7724969844574,10.7176973584207 "668",14.6861192270249,14.4621794079032,14.4347331582564,12.8167297135477,13.2950188577083,13.879173046135,14.6326041464272,14.5548513291789,14.3737472960984,14.7906166216954,14.6620503277743 "669",8.93785165006461,9.22880714902793,9.12714015643266,7.14928183960015,7.02422802117677,6.95118912698659,7.9188130165643,7.83868152353417,8.21249525749621,7.56218687853446,7.02856174187383 "670",3.54830022377166,3.54830022377166,3.54830022377166,4.33331678257734,4.3058722489524,4.48644669672571,3.95429096793669,3.54830022377166,4.28967224937531,3.94912244603611,4.23274464232371 "671",9.01855167070949,9.12845838291325,9.74152970764211,8.01984006723454,7.69748960192527,7.41072414123149,8.26831911865671,8.15281676709867,8.44843335716512,8.84629310173371,8.49967809828298 "672",6.94245436265354,7.02904872889847,7.55883943959597,5.12329148338679,5.71993474216382,5.25801624538125,5.7142170410774,5.81586767921463,6.31421497718848,6.1014953970159,5.44305738224905 "673",7.72851224971026,7.85924864261361,7.95732252448553,9.40429110566902,8.52980620208973,8.21210233615098,7.62960552780545,7.85770787706749,8.69208941239287,7.75113025875458,7.86399978207374 "674",3.97008655127665,3.92219398459048,3.99458687560867,5.57739919796435,5.01670287124879,4.9129913680454,4.90840757914297,4.78227634053133,4.49869474411581,4.58944936008883,4.82879049046518 "675",6.80484637364657,6.52730961170283,7.36415487461851,5.81955380472203,5.95174206023759,5.62396795076569,6.04639115237076,6.45134919921931,6.49672271584863,6.19644645152128,6.54654471787116 "676",7.34467278053384,7.79379412248784,7.81962824379556,6.24855060583191,6.43850350967657,5.85613856012376,6.57956677089401,6.79544173688354,7.43576107846532,6.60625503946114,6.4142723185568 "677",9.61022726679586,9.61063324416061,10.3108764127512,8.25072937537503,8.92898932025291,8.65182055824669,9.70169490839364,9.14654296804315,9.45349217438391,9.43106642948714,9.39136966548564 "678",9.87916395621881,9.85058597615099,10.0286215584728,11.0083687146693,10.6992606581347,10.4154434285617,9.67724831427285,9.82708643631372,9.54377298123616,9.83448636469111,10.0348333254102 "679",10.3940514521804,10.7233022635247,9.06463623817234,8.59813876051358,9.38353314396616,9.36535754324697,10.0515418580555,10.3503460782363,9.72520696241134,9.80253524691868,9.94735991006994 "680",5.83953755398429,5.59141601637692,6.55712549554688,4.45117694514122,4.89765324881629,5.25801624538125,5.14502080212905,4.90404046812327,5.47688516711479,5.84212104415619,5.27185771113154 "681",9.53190194105546,9.70654910381713,9.79199468766357,8.89226299594517,8.69608245430802,8.80852337038189,9.69359200278242,9.48447318546469,9.595739859372,9.54781093949459,9.81609528328932 "682",11.5215554994107,11.9207365813631,11.3111384028575,8.60693096286727,10.297872490504,10.1009696272118,11.1916562655922,10.8423049111858,9.99749918994824,10.305701920901,10.554839384942 "683",8.22344598109642,7.91239327986058,7.292883496079,8.98283112781734,8.64143651995688,8.46343824668872,8.04669723092504,7.94330819942467,7.80633729904285,7.96614416256154,7.98633400049947 "684",9.84954330938765,9.79519878158299,9.31273160254736,11.1510869848959,10.4360547504397,10.2565223164036,9.38488614072924,9.6442308475677,9.77112700539893,9.76986020175135,9.95257830868576 "685",8.40609122623257,8.23402099371464,8.26361165206592,9.66839227629136,9.08626685234726,9.11366463657668,8.35728086541336,8.33564284497309,8.31155915328567,8.71818371538311,8.74813993372178 "686",12.3208761301701,12.2190358178018,12.0747266831193,10.6886448409343,11.3528487733975,11.7896536672581,12.2806081888988,12.2575131031695,12.1914058772296,12.4739922616121,12.4599918459802 "687",7.67245805714751,7.82437528016681,7.55883943959597,9.04235612231719,8.34178890002384,8.33181019584414,7.33545046218468,7.87648532555971,8.03246495373817,7.92347700974267,8.03150425371029 "688",8.51745238210845,7.78345381968473,8.5897499961985,9.41683783751866,9.02356987097559,8.90734252143497,8.26831911865671,8.4692989141019,8.16028132058192,8.45948004832555,8.32942508187637 "689",11.9886290205397,11.4810359391765,11.3756686959127,12.1300275957765,12.1754188883374,12.5192890452913,13.312296130364,13.3830126970146,13.4212585554445,13.639132627504,13.3471329385493 "690",10.3277611003814,10.5972438688851,10.8133875021495,9.40176860425243,10.1755548155497,9.32672717275534,10.3297458901327,10.4713138864824,10.6694178273601,10.5854695926617,10.6070628325988 "691",9.77022146767524,9.87628920174086,9.32293901495519,8.53042826396482,9.15194362071147,8.89807016610478,9.62196096435403,9.85726404914586,9.61330075936856,9.74409430044561,9.59198286730107 "692",9.1776183589612,8.84569510541338,9.17018258294668,10.1582914256575,9.88453056763369,9.7088842306454,8.78427179649975,9.13621356925419,8.95656126357959,9.33482400189473,9.15146757110382 "693",9.04355985238426,8.33646065059874,8.90390479610711,11.430707360109,10.7736850427748,11.0705980627496,9.67230886902711,10.1646929787307,10.3607289748513,10.2323828040504,10.3166266703497 "694",7.41480526624665,7.56530360045263,7.53259773401686,8.19930091953913,8.20304084002467,8.15089987707381,7.34380053331067,7.41889512543373,7.62530056654001,7.46865826441027,7.58948975574126 "695",8.86176877111159,8.28980478532454,8.96058802310873,9.86431090946723,9.52601749968271,9.14535284669568,8.48307484510939,8.62523560841052,8.92876870555466,8.75812977025427,8.73000957788283 "696",11.2343128586998,11.0608671440132,11.2034164001879,12.3581911778227,11.6126246087929,11.6355495990901,10.7114980118355,10.8518015126759,10.8522288857406,10.9988905609559,10.9022758439891 "697",7.39759226141577,7.1308989742045,7.2288254796775,5.8812668252616,6.47529295316335,6.07645934003377,6.71556798592224,6.80864974103996,6.6882430597986,6.68588238296423,6.65445304833965 "698",8.16886822106531,7.86905878806446,7.60992258308702,9.13032454054366,9.08334232116854,8.65549463022981,8.18742674577586,8.15281676709867,8.16028132058192,8.35108828862567,8.16808848214259 "699",8.73783442447598,8.90400622147225,8.34106524726259,9.92528935471719,9.43260911698226,10.1276476447523,9.06878279256704,8.79248629950711,8.79831648860563,9.14166946209558,9.21365883959209 "700",8.07483354014599,7.84937098822034,8.12446508314429,9.35819675498724,8.78878838826986,8.42088589985503,8.26831911865671,7.87025342817232,7.92384765319444,8.25120476592275,8.25101756019936 "701",11.2234159511572,11.4577174510978,11.7359695720021,9.8697962786595,10.5526690648993,10.4612592907329,11.2053965181573,11.4896716573204,11.1219434570669,11.1708356448366,11.1958806016694 "702",9.49612396405081,8.86783922639323,9.3948574707518,8.33255725106166,7.91092643271975,8.20208110331023,8.89021674320262,8.63993930290509,8.73908584192786,9.1669920263841,9.03326441528336 "703",10.94549061119,11.030123833561,10.3475770543868,9.20167585180879,9.70596921259255,10.558580469595,10.9042509251785,10.6074188007316,10.4372087620691,10.8058414586554,10.8423986759028 "704",8.81733944412507,8.60323861460695,8.32081521630306,10.2067739863859,9.5043200296704,9.50623122384085,8.8702173252855,8.85682261188807,8.9778131121013,8.88288323847322,9.03326441528336 "705",10.7568486746334,10.8553138721432,11.3927231532787,9.83095321513546,10.253047420186,9.83242208775164,11.0541502795271,10.7462815007516,11.0041421066878,10.8218668972118,10.7799281512426 "706",8.32221761263854,7.85924864261361,8.19293719425165,9.15150265613441,8.83821105031725,8.69172890321855,7.99478839831307,8.11117639548181,8.37247580851378,8.09185442079411,8.18594905456206 "707",10.0574723044766,9.67202302458327,10.1467928457974,11.1184380331224,10.540996712817,10.5915321460381,9.70331004044122,9.86510168297408,9.76764614105861,9.98700197544162,9.94343368306235 "708",8.32675603445815,8.54943430095146,8.74211830039699,7.32023670711153,7.58585641340158,7.97368095160281,8.27268248344622,8.04636292844579,8.37705660860678,8.32675993392411,8.57949343689206 "709",11.7369308616944,11.5893322408741,11.7210971011573,12.6335438591836,12.9815638006018,12.4984895595292,11.4987853165833,11.6120703740495,11.8260652067902,11.6608647739495,11.6369379771392 "710",7.10023689289805,7.02904872889847,7.31361245108569,5.911083037832,6.56323269003586,6.30473681676143,6.99671767479317,6.76864888687765,6.92145522413605,6.69872559445653,6.75465710517924 "711",9.65597920960023,10.0292308145702,10.3711257174728,8.58929254824669,9.38353314396616,8.92874876990639,9.60305056404701,9.61478013476802,10.1761494538775,9.81277849859362,9.6858467111872 "712",5.91669169048245,5.97975507916984,6.81323095846476,5.68673393056132,5.07172184844156,5.25801624538125,5.9369990034741,5.6114347801117,5.98511354074592,5.8180555597147,5.75354754840492 "713",10.0777831421926,10.2670790286319,10.0223727452842,11.3726557448454,11.2652785225023,11.18423853252,10.0791705543477,10.5695501550541,10.6478084719097,10.1213937057061,10.2982990112506 "714",11.336735549634,11.4002498384397,11.3596498308115,12.9722604459677,12.4645687310975,12.4690657259354,11.4307184605046,11.6078731969144,11.597675497106,11.6330619926956,11.6921797612513 "715",7.90299095098025,8.32938056167932,8.52486779311338,7.35209951399502,7.28211410056228,7.01021906895851,8.01577750054488,7.79985493290829,7.97313855605667,7.76932680060945,7.760412854722 "716",5.51007576263887,6.0166588706562,4.97546638098356,4.33331678257734,4.68891224809943,4.27998953468607,4.90840757914297,4.78227634053133,4.93015836537268,4.51507976905241,5.02750813069502 "717",10.0574723044766,9.49054809276673,10.1323588369847,11.1689934046915,10.3339862288609,10.7907889308563,9.84758408688385,9.76309123923359,9.70714862404194,10.0315350135395,10.0360628549155 "718",10.3623912717203,10.5006163578792,10.7228449869862,9.44160843885529,9.82801408575274,9.36983498806351,10.2754129707451,10.3357556920826,11.1137428504549,10.2837792896873,9.99492453222422 "719",7.45695216378043,7.10611233977898,7.13867355834176,6.20176630746007,6.14932815941719,6.18495468671691,6.9644808674606,6.56528938654728,6.97115740445838,6.72406551931629,6.42960502818059 "720",9.27233038487327,9.49054809276673,9.40450158918026,10.8313452715823,10.1714310637641,9.68393306866307,9.37478529219148,9.4071228829046,9.46857968866219,9.25549663245181,9.45159130005792 "721",9.78347366218095,9.31369060113146,9.64517548942749,11.4757630960054,10.8024119583237,10.3958240506033,9.67395723131507,9.82708643631372,10.0385135409522,10.2410770715395,10.2193234672361 "722",7.83444730414691,7.24118402147075,9.13295394976483,12.9933505616971,13.6179811812473,12.9997575147476,10.4964292160672,12.0380004372844,12.4097489178096,13.039019986181,12.6409651213416 "723",9.02693603884394,8.7797423325774,8.5292854250413,10.1034738391806,9.73047109895622,9.97146504777469,8.98093217188697,9.11269817535774,9.08801137112128,9.27256371819514,9.16277176229631 "724",7.74898018933612,7.76780225913548,7.15025968470569,8.72065369639887,8.56798594813806,8.03144476745955,7.76607163952493,7.88886854435911,7.7150538741348,7.66301951594249,7.72415226914976 "725",9.80799800842089,9.8955696888141,9.99391314327221,11.1983522056675,10.6615375748259,10.7215541056806,9.96398421204372,9.91729706261419,9.94453466948589,10.0302815386719,10.0336027468897 "726",9.15739664516042,8.79008750957555,9.33307466702842,11.3013867171076,10.613712693615,10.4612592907329,9.6151131129534,9.63875445836353,10.2098829051758,10.0832208550272,10.0311384356303 "727",8.34923587617628,8.62073574071179,8.84135293897958,7.58426198873625,7.78670914495106,7.86981453055968,8.66328536134882,8.36692658125373,8.02079403326893,8.3185582079294,8.7866566812351 "728",9.6083666485789,10.0016929281087,10.8179041148125,8.87052879240715,9.37638391461942,8.991123312071,9.57156116258597,9.58471539479662,9.96595443435705,10.1654496599088,10.1173037075177 "729",5.78549346301469,6.44983209581372,6.57457614518915,7.82230351962445,8.48172385486396,8.16128289642863,6.98605328387957,7.78004040210351,7.23758185587131,7.70775166660295,7.760412854722 "730",8.17391631967326,8.09477265669579,8.40015972467653,7.36256437683614,6.58017568593367,6.46694048896454,7.46352604560399,7.17699871670462,7.6097795074534,7.51258608930794,7.24955265846385 "731",9.57636320736096,9.54498775406571,9.46566343403093,10.9141900675119,10.3116774517588,10.3295786310692,9.83437880219505,9.48039649884648,9.69437187984057,9.72407559970659,9.60198116215622 "732",8.48534504201373,8.39527513861423,8.05869864358451,9.28343041328234,8.8826334420095,8.79859049100989,8.53119602160728,8.23749087428768,8.27274833599991,8.07733709707279,8.18594905456206 "733",5.94145031362918,6.10474257283092,6.706873220412,5.41530931619833,5.17436496058539,5.4175148732471,5.8906209020639,5.73213596531648,5.85488481424146,5.79354444200787,5.75354754840492 "734",8.19889436741583,8.04374680571814,8.77224035423123,6.51923699993902,6.58017568593367,6.53337388382174,7.14775986430916,7.11482364221799,7.32590428280078,7.09711502715142,6.90367688540501 "735",5.89146640696981,6.21921231712512,5.83571964842533,5.00715176399614,5.39764908336153,5.45435632888149,6.00369290325292,5.7606426863395,5.79900900802131,5.57893710519621,5.59354957822205 "736",9.42390676402229,9.21544047298836,8.78706844188518,8.45451180306813,8.3070820659982,8.19704417881253,8.94040434927026,8.82501353464932,9.47286156863064,8.92127584951854,9.06252975036268 "737",11.3350492569239,10.8779048543582,11.7031430158318,13.1626532520114,12.0155479359539,12.1602963661994,11.2352837919058,11.4542639543718,11.5432492369849,11.6084970841138,11.4082563213589 "738",11.9921999029053,11.7884139979789,12.7956484222057,9.93752995410204,9.48893517104634,11.1416840853848,10.6977918416714,10.9986669752381,11.2377815125296,11.1128093011529,11.3322317083512 "739",8.74463002246685,8.76670551080719,8.886799904103,7.26549832774664,7.72785040241364,8.45080410064663,8.60222405328637,8.52185356921256,8.65486521264324,8.57067138358356,8.12244162839571 "740",9.34117392477523,9.30289819023961,9.11837526159905,7.99323023573628,8.21379020954388,7.50366343129384,8.81449083177691,8.28037849508139,8.74618188360663,8.51435522586691,8.59293373992718 "741",10.1175664131464,9.98153494997219,10.1836589495416,11.3880262928573,10.81303876113,10.65434278848,10.0977093742215,10.0247627581465,10.1130926422008,10.0856364852871,10.0700709147796 "742",5.2447303988107,5.37256333406501,5.57306370014904,4.00522961816383,4.41984085544861,4.27998953468607,4.52717022062621,4.384503533957,4.87007984850553,4.51507976905241,4.71305020543012 "743",10.5141695376192,10.341896467768,10.6262366967912,8.98283112781734,9.20940319848552,9.9097802150482,10.042638750676,10.1697643165953,10.0166867034404,10.3221840646791,10.3347243786537 "744",8.19393334524338,8.29708182497682,7.68328605018914,9.23039382617681,9.17685012125698,8.41656065075709,8.2813697089829,8.37574128442402,8.1813949362326,8.1623201230058,8.15000326967407 "745",10.3711947486098,10.5424955431946,9.97624061324769,8.58484897985037,9.2723837427437,9.40516262455498,9.95993660187684,10.129986990862,9.8020824016001,9.70848525745093,9.74719506373333 "746",8.54107156449348,7.62448269491476,8.23683855091016,9.17237412305056,8.96439368943329,9.24621523515451,8.35728086541336,8.56487194368827,8.36327023133019,8.58782785893473,8.15000326967407 "747",9.86208938720598,10.0303214687397,9.92020586015557,8.70845226262906,9.43948557548496,9.02559012857226,10.161368353739,9.9067042764432,9.51706994265289,9.76232966369471,9.82608109972104 "748",8.88655510159278,8.96690374962634,8.80902828503197,9.86431090946723,9.54739331924982,9.4691557066009,8.8673374699208,8.93638255480629,8.82871505856858,8.82619895105508,8.87729889770692 "749",14.7620222256611,15.0899919800413,14.3200994098857,11.3861139064234,12.6082570711264,12.1982283511623,13.530391604585,13.0628958151044,13.1196479632361,13.0680145595093,12.6997447464339 "750",11.678731424929,11.7751395934814,11.4089797587161,10.3152792326315,10.0418951612013,10.4347995378911,11.2425210328785,11.1621632544744,11.1442576784453,11.1234277722351,11.0336370077402 "751",4.78038542738455,5.45916336990591,4.97546638098356,4.33331678257734,3.54830022377166,4.14782244847307,4.736433099266,4.56562326784538,5.36185741525923,3.54830022377166,3.54830022377166 "752",7.7216241629332,7.27859059456544,7.7756053317637,6.80881348613757,6.76897938111069,6.90212845614626,6.53605336162418,6.17025054654574,6.67324497101316,6.19644645152128,5.87340967120574 "753",12.2828944898681,12.3703084299577,12.3952438258897,13.6341153657513,13.1358957552014,13.2239846411043,12.1106164692844,12.2619717386165,12.4717519413201,12.264513233205,12.3072279310347 "754",8.23315046609531,8.79779793181575,8.94744998685894,7.72044941560373,7.85016117313733,7.59093188805758,8.67321521953444,8.28037849508139,8.16558885965438,8.37105237012958,8.39996079454467 "755",12.4156674940426,12.1394055752713,12.3473102532141,13.5111183981912,12.9780269318864,13.032063466364,11.9927545980459,12.0759719440477,12.2059438510701,12.1912653844482,12.2343939160422 "756",10.5953034695117,10.5817060959359,10.6466923559626,9.71383574963396,10.0388802187171,9.90670264414016,10.8498823336246,10.9097794892623,10.3327378775596,10.8362825872222,10.7077025272065 "757",6.84372344371014,7.3645570520418,7.51483209832686,6.07729316885177,6.14932815941719,6.03051736948815,6.75392864179652,6.43428439781308,6.65808508296573,6.57867534584929,6.58799030207827 "758",10.1447758899605,10.4485384787561,10.1163127949183,8.62001943102553,9.35229383194192,8.72007401567654,9.65238014440666,9.8238728006323,9.8020824016001,9.40034117048288,9.58695760306276 "759",10.4460161043646,10.126270151358,10.229133216667,11.7179975003666,11.2020027795012,11.2621500550776,10.23355603024,10.3198761468089,10.4835585796754,10.7112453308319,10.7629506283518 "760",9.65417673223553,9.45849130164238,10.0806710294672,8.54879798787567,9.20940319848552,8.78858865410809,9.67065862045937,9.56752439028131,9.79355011619108,9.50151741114645,9.45527292963567 "761",8.72758053834499,8.61492695401276,9.01827056638992,10.259263082391,9.33272769378965,9.63641775367957,9.04604433512848,8.88177374459416,8.76726266389654,9.13468539854762,9.08409527418342 "762",10.5962423835045,10.3009116066401,10.135257217225,11.9922466807535,11.0320065466231,11.1721161392901,10.3921539018335,10.3834633943362,10.4251086751813,10.761963964562,10.5853923986348 "763",10.2535234133943,10.1293271385702,10.5695121580464,9.39417451251257,8.58049083175767,8.91042009479437,10.1590164508973,9.58471539479662,9.80717764785715,9.73488941731151,9.31034186832293 "764",9.76688930398026,9.16467858461348,10.0176683045914,8.0394789443579,8.39469127380017,8.48425182913367,9.04604433512848,9.05354738156802,9.26635591235049,9.11825643670436,8.55223053166907 "765",9.26052993431066,9.37336698873207,9.03389210966213,8.16396429768604,8.09670239672982,7.77147814172358,8.80549148828346,8.61038024326103,8.65486521264324,8.82330534351434,8.53492530946945 "766",7.52982122581727,7.75727219503807,7.6015342628995,6.27135914474364,6.70881868749609,6.36093948153758,7.2668306093309,7.20709679221965,7.1434230580559,6.77341710147014,6.56049675421581 "767",8.42314272660274,8.07373159444057,8.15339241024055,9.24172272222708,9.22540815807337,9.04811843380836,8.13565496756407,8.4897399118694,8.60888779655961,8.59123476117801,8.47084552401924 "768",11.1473066661789,10.9013400987043,11.0959502266607,12.3428266169486,11.149863706947,11.9559195380549,10.685589059233,10.8391254337298,10.8497621589621,10.9808372654305,11.1375146015201 "769",8.15871854385556,8.30070658830108,8.56414686218353,6.98244809672181,7.28211410056228,6.98690109334928,7.95730299948966,7.64776005763949,7.6097795074534,7.54818974211694,7.62927324152604 "770",11.5848875084264,11.9359460087184,12.0372587053804,10.2854924878837,10.7219938913869,10.2733453187405,11.4927284330422,11.0991033800263,11.4011145533788,11.2134256069612,11.2906034834748 "771",8.97009626031626,9.42238562480594,9.38026925122377,7.79943239971828,7.72785040241364,7.70196403035471,8.69287189315978,8.11117639548181,8.32584747663876,8.56721542241081,8.25101756019936 "772",9.77686278665839,9.39723929586054,9.64517548942749,11.4448624711926,10.6487407665251,10.8512612470374,9.81508847566448,10.1621506076942,10.0049092413147,10.3882496601783,10.3246981414821 "773",10.2606477847069,9.92753220600502,9.91684090835554,11.2370619854778,11.2996881922538,10.6959357218682,9.9188231979333,10.2581255111216,10.3491319557132,10.3989722939762,10.2279565221795 "774",10.1651677784279,10.3383784350557,10.0018750818009,12.5687017927506,10.3583757047893,10.4411942834266,10.1730706860164,10.1221598148832,10.3432982938591,10.4439100236192,10.2797354814928 "775",6.63763656010304,6.40941476523436,6.30781724882702,5.37127805426564,5.01670287124879,5.34037022736344,6.12795561899001,5.6114347801117,5.82724139574683,5.16791879000176,5.64910430920177 "776",10.4728473516849,10.6400227239945,10.3748090348983,9.54352419399801,9.58715457438194,10.1628976814255,10.4228639189357,10.4661704595233,10.3983507982954,10.8689019720646,10.7022918733724 "777",8.81087906011241,9.22118423120942,8.4288212608901,7.12485544624734,7.47377566559152,7.05573632290516,7.99478839831307,7.94923159757619,8.24293726666571,7.4156433013633,7.46304227382973 "778",10.3446214748764,10.0357624029366,10.6169361577198,11.7215407105877,10.7341597616411,11.0842813711787,10.006466366113,10.3899965856058,10.3209126853714,10.528016861657,10.4011148463817 "779",9.45736973881928,9.48100566510583,9.12714015643266,10.6845010434063,9.78727173415818,9.54435909258784,9.12531301732479,9.37673800063724,9.13740873448127,9.35899429697753,9.22232826490148 "780",6.22781582447258,6.3677860433118,6.42845492233721,8.46905443827572,7.41892755356834,7.6659008390104,7.24914719576377,7.30306692115969,6.99536990472171,7.31164305003266,7.41068273578848 "781",11.3634515609301,11.2298752952171,11.1951076417569,13.3215149041384,12.7060422501711,12.3489479679285,11.5048168768891,11.8158441462783,11.970428850291,11.9070867382755,11.8992243726141 "782",8.27132662852217,7.96364096065335,8.10089669387495,8.84846172635221,9.03269530055105,8.78523921828408,8.01055890115653,8.24231980078866,8.02079403326893,8.49265550722103,8.30103282855084 "783",7.9508626266445,7.61867361278385,8.33602939406381,6.72965577471788,6.89563617554318,6.67222943533371,7.13817459357482,7.40167537133735,7.56218085650794,7.43099209888362,7.07751845829569 "784",8.58717845543906,8.54943430095146,8.62732090455337,7.81472024622439,7.50043052798914,7.55192262367988,8.17815128410126,7.85770787706749,9.0768004277074,8.10145181452369,8.02655489405578 "785",11.1752210790052,11.1865111724935,11.1166277704029,11.7643758986926,12.5675223051176,11.8473649277239,11.0111189260041,11.11562144628,11.3273837534783,11.0719745610094,11.2002739872567 "786",4.47860358440826,4.52173032050244,4.97546638098356,3.54830022377166,3.9890115841535,3.54830022377166,4.12059456186923,3.97076798325069,4.40133275723348,3.94912244603611,3.54830022377166 "787",10.6278071966375,10.2171904506345,10.5759261653211,12.0461244903508,11.187102693139,11.6911542941279,10.5286667120147,10.7084493739106,10.9329058026271,10.8369996040605,10.7938039064307 "788",9.16754296113089,8.89684508016677,9.52212312869928,10.3259600640607,9.79086059534043,9.66402116960109,9.08622353842142,9.18713591618254,9.07398401368605,9.24039536708563,9.29192888767131 "789",9.74334606197436,10.2017842862589,9.87062851071493,11.1830133575538,10.7332275594665,10.0613883859812,9.91185556175033,9.94122092852876,9.84895221895998,9.68477909979723,9.87774447273901 "790",10.905145270141,10.6857282378386,10.5886692515474,12.0569833101609,11.4665894615518,11.7938236014089,10.6977918416714,10.7326388845812,10.8464666149087,11.0719745610094,11.0616748340647 "791",7.33565903147877,7.64176993636721,7.09136174566226,6.53803052029323,6.56323269003586,6.59679162433492,6.9644808674606,7.08268644591105,7.34481059615764,7.00752371135829,7.11550464688 "792",7.91510931344368,7.90764242244625,8.06480332080901,6.55657468638091,6.28074432712116,6.64253913084015,7.28429744000962,6.69934960596145,6.97115740445838,7.19045730909892,6.96749404277538 "793",9.70032414263305,9.49687480748366,9.81386895901612,10.847187488096,10.4094570280958,10.2864271096088,9.60995579949121,9.65873368620146,9.58391264833967,9.94105000039865,9.81609528328932 "794",11.9535249128107,12.3033228405444,12.3538563676638,10.7592984082981,11.8112012122361,11.4080165954786,12.3531202722922,12.3365790599627,12.1562378649428,12.0527711632559,12.3476428760289 "795",12.9542241725661,13.01153531013,12.8605679953457,11.4207777647047,11.9935287422456,12.4170307521603,12.8935084980439,12.765422308487,12.6702607157203,13.2028962748526,13.0495180014791 "796",9.96308679855879,10.0974214283327,9.94188874422735,8.88866331826625,9.37638391461942,8.95878783868997,9.74468084649145,9.71532909676968,9.91337241810707,9.8713562503176,9.82038338796806 "797",12.271478568823,11.9904743494887,12.5323711387449,10.8646900190133,11.2876744498893,11.4991954355774,12.0484487955473,12.003979587608,12.006309677862,12.3909835029505,12.1999817556482 "798",8.93488422798929,8.60909464253234,9.01512583585322,9.74401877470986,9.59127689575246,9.39421543674223,8.9015215765478,8.77261151654643,8.84533006878369,8.92127584951854,8.84116043161952 "799",8.79787073018477,8.69694414688564,9.44945032736336,7.79943239971828,8.34178890002384,8.00285314504708,8.21489949277023,8.47751017522932,9.24898288673534,9.02816294905766,8.54187237654607 "800",4.95788009688626,5.56604371111536,5.24167748837746,4.64558758720875,4.3058722489524,4.39026667116431,4.736433099266,4.64355114355199,4.73829774126364,4.94316935660089,4.98115357179952 "801",12.9738623834506,12.8319762912595,12.6776063045669,11.5089477820798,12.1706067067481,12.1824118582246,12.7926340310809,13.0101578654492,13.0302557061969,12.9818175898942,12.8076968590503 "802",10.3524227104951,10.5209322308574,10.4742991120414,8.95212053701228,9.54101377918957,9.36535754324697,10.3921539018335,10.1403575888142,9.48986305654025,10.0808011723378,10.0938806427635 "803",8.71379415237108,8.84321350730283,9.32039392901572,8.22809899650974,7.72785040241364,7.48720844411563,8.34904137646371,8.09524495818905,8.52058286310583,8.7336789488075,8.53492530946945 "804",8.08559079645539,7.74133070892069,7.57607042757072,9.28343041328234,8.59288805804577,8.51289438397283,8.04158992416231,8.09524495818905,8.03826505815161,8.19853581863184,8.3173255120462 "805",6.98935314955684,7.24118402147075,7.30328561378923,6.07729316885177,6.36186838199559,6.79858740798684,7.02823820460525,7.20709679221965,6.62726529325089,6.88973460730697,6.90367688540501 "806",8.66088714623735,8.53719976752436,9.00565026266177,6.95494779097975,7.44661460003819,7.30192771781724,8.05685771125266,7.57290325679707,7.49614943333921,8.06757677451835,7.90234729377505 "807",9.67743501926657,9.40902884652768,9.35064238868107,10.6208718166554,9.97721883509452,9.88340912376586,9.50644118020933,9.21193802878431,9.33382721422762,9.53549277682988,9.41991198649254 "808",10.625969439698,10.4113505735281,10.5500972253581,11.3571196666204,11.2813110124597,11.1285369960044,10.3871388628398,10.3503460782363,10.3101864870405,10.5226786155599,10.5192360038997 "809",8.91695021626861,9.11823356484051,9.17018258294668,8.26191243566259,8.14805465040806,7.75784226485202,8.60222405328637,8.66890387143113,8.79831648860563,8.68668404541811,8.76010129760704 "810",10.658696089481,10.9643184694897,10.8411652203895,9.97364051836223,10.3241137875744,9.79462877482363,10.8723069967527,10.8968405427393,11.042088780448,10.6521743814042,10.7169309790242 "811",9.33443563031389,9.07024203295857,9.22564342341327,10.7424551585485,9.78006710770127,9.90052773080896,9.28270704857763,9.37234455506053,9.33852788867461,9.52484994571404,9.42179486775045 "812",7.57641756494067,7.58331550688759,7.90381883488738,6.02413172001014,6.19454648924689,6.48384779798115,6.98605328387957,6.53367259212264,6.76092516512381,6.63330252167169,6.75465710517924 "813",7.17301035461378,7.55924892396812,7.50586588003968,6.02413172001014,6.47529295316335,6.09886016877318,6.8747483721195,6.87289813241104,6.40846469499631,6.72406551931629,6.57431102493756 "814",9.04355985238426,8.85803938608857,8.34106524726259,7.41376869620371,8.00681506461081,7.65121758975865,8.85576014189131,8.3624988996433,7.98520144493695,8.21188497465407,8.08008232142916 "815",10.9410631139192,10.7513502517929,10.7495695343884,12.2913050022157,11.5834388105948,11.4545896485423,10.921002802563,10.8674915629543,10.7849614657104,10.9684568677354,11.0231357243181 "816",10.4015905723604,10.6648131769969,10.4442313262199,13.1344517545313,11.7484594835538,10.8734974446576,11.0560473554337,10.7119299515983,11.7801691534642,10.6505438094181,11.0262322802644 "817",9.73654821913041,9.77191268332307,10.0548810677783,8.71659802456816,9.19592863955076,8.93480688599106,9.91743236095489,9.68730900779782,9.78151947176407,9.38669020191391,9.50762642070551 "818",6.28617087473548,7.11442263771868,5.37656757260563,4.55382476248647,5.17436496058539,5.49014363497923,5.6591344389259,5.54656694097749,5.67960036331149,5.20801686055131,5.27185771113154 "819",7.95673592491526,8.33646065059874,7.7530766872274,7.11248315845808,6.94848101549024,6.85130589276361,7.86775976109045,7.29375535725525,7.75790763707303,7.43099209888362,7.24955265846385 "820",11.3014785197539,11.2322466151836,11.1384582509221,12.227588358244,12.9095371446656,12.1414406281998,11.2825000413813,11.4312227399119,11.7632300722894,11.5405757304999,11.5862260359973 "821",9.80799800842089,9.73626300965745,9.44711921516415,10.7404606080834,10.5850646452263,10.6414422962412,9.7848978803735,10.0428418973179,9.96291387519631,9.77136160221335,9.83881924131123 "822",9.8400616051542,9.78101311861918,10.1089597077546,9.10883062294764,9.00204978037968,9.38539744524798,9.8373237766389,9.79790262233915,9.69070049312223,10.1354520277418,9.96166531939014 "823",6.53003463405643,6.42301817472768,7.20681678408743,6.0509730364866,5.78180236170589,5.45435632888149,6.02521051972577,6.12802624841955,6.6882430597986,6.47762432452458,5.75354754840492 "824",10.6296426152986,10.3045220993624,10.2045069583461,12.032740635683,10.9477214017815,10.9207855516354,10.4852084005412,10.3026660933942,10.3220995765496,10.6675735771075,10.6136656899594 "825",9.38530861865421,8.75882641077792,11.1427849830187,6.92690329526043,8.33195779092463,8.24663679622921,8.87595982579245,8.21801139525808,7.81312427424552,8.59463362227482,8.7360784192397 "826",6.96609768642662,7.24118402147075,7.44147763113522,6.24855060583191,5.95174206023759,6.03051736948815,6.90906792189885,6.50132385628596,6.35268776105888,6.47762432452458,6.51821581272864 "827",11.6286774227471,11.5692142708256,11.5723940307558,10.5644887396585,11.05307751652,11.1429922284912,11.7654574350601,11.7058177974765,11.6740227000728,11.8739330950668,11.8472958241404 "828",10.0683403324409,10.3860151021741,9.92356297950041,11.2070445885242,10.7952836818187,10.7450035344704,10.2346732334832,10.1050538003106,10.3137707561217,9.87275567110129,10.1079800766296 "829",6.37826028686932,6.84114530884511,6.6422828401053,5.37127805426564,5.51439142996744,5.07384942667343,6.25992873135254,5.67318746075466,5.79900900802131,5.74311119877536,5.19596301279726 "830",5.2447303988107,4.58626187939733,4.53109727184687,8.75664989255739,7.86388858832763,8.48425182913367,6.82765362378199,7.91936722856588,7.91125597625291,8.11098555512941,8.05113296353385 "831",7.13188235112925,6.57667169534873,6.6422828401053,7.67088334577139,7.57753959933627,7.55980996663979,6.8747483721195,7.23657215715425,6.78897959785779,7.28652760129712,7.0871105816258 "832",7.76916012660847,7.67573104061097,7.0045759021827,8.47386951804509,8.21379020954388,8.34552814661872,7.58106772226757,7.69086601263943,7.84658584706185,7.66301951594249,7.93442061415904 "833",9.21723017192855,9.11206367724561,9.20371446586163,7.99323023573628,8.48172385486396,8.05947856562951,8.82343431143956,8.90630016490089,8.77074632985548,8.85481982727054,8.70237886857615 "834",10.7966022025752,10.7178974012298,10.7933446700643,9.43668824543438,9.8659367355028,9.95368240397978,10.4982908953497,10.1442274199147,10.6638117377983,10.6158690122354,10.6120178068655 "835",6.32374568039042,6.17132176086361,4.97546638098356,4.72904957070584,4.3058722489524,4.79051865717914,5.26656920680189,5.11259910555834,4.80633145078724,4.65808106126267,4.98115357179952 "836",12.1040190925946,12.603409573897,11.6775264921005,10.6751337470644,11.3015759867327,11.4014730922913,12.2366790233757,11.8651299492033,11.9888545016413,12.0139856315003,11.8250652223241 "837",7.84715570908164,7.90764242244625,8.4288212608901,7.12485544624734,6.59691611192018,6.96319334894459,7.62960552780545,7.15657400758947,7.48767706945998,7.4907907828689,7.37207268229142 "838",9.96017214521214,10.5742479181925,9.86365453088015,7.17329607382823,8.21379020954388,8.14568011415638,8.47173775949188,8.32657827473498,8.71758554292853,8.19853581863184,8.53492530946945 "839",13.6109565292038,13.7230097322389,13.1830780229399,12.2620594304193,12.8933554353255,12.9385515776475,13.5589895987987,13.6816908778909,13.7406036759244,13.7343747771645,13.6745938758378 "840",11.4042293953775,11.6845327162024,11.3963515965192,10.409929179655,10.3241137875744,10.3837017289537,11.485707975432,10.9582086477665,10.962889418964,11.1793417442435,11.2766294911238 "841",9.09762731201092,8.85803938608857,8.77596170882661,9.86247780706254,9.73978515594151,9.27275842991469,9.05619462917821,8.9947265369684,8.8387070388668,8.91041051218163,8.88004159652851 "842",9.12652201704222,8.99400058454918,8.87990068659424,10.4261519834221,9.61171356792838,9.58920440884065,9.41477092578433,9.20701162662937,9.00172328607096,9.00281461302748,9.2201657914598 "843",11.1415297491163,10.8608416240792,10.9463927932975,9.74600869215952,9.96932245494601,10.4549530733973,10.6765742868675,10.8036807095102,10.8181462908481,11.0634219888757,10.7945305252289 "844",9.86365000083353,9.96109124199472,9.47713361605134,8.54879798787567,9.10369051317306,8.78523921828408,9.82995003432343,9.50468550360385,9.47286156863064,9.37290875078087,9.2753620049908 "845",6.79164575242426,6.90978341613101,6.57457614518915,7.88156902156748,7.6897978650333,7.55192262367988,7.10902511762892,6.99325413025103,7.03093108737801,7.28652760129712,7.36422385202595 "846",6.1874890917147,6.21921231712512,6.24330683421088,5.41530931619833,5.26870826387192,5.74518636420907,5.7142170410774,5.78854419980623,6.10385346314284,5.79354444200787,6.08502244599298 "847",8.36255712123935,8.24535215755827,8.55117253298884,7.11248315845808,7.11932032558298,7.30192771781724,7.65662047639296,7.50201375749303,8.03246495373817,7.81090871342222,7.64229261323216 "848",10.1639016966952,9.95994693910483,10.587611616733,9.36856804867503,9.65173803212642,9.9744076221246,10.3810977097915,10.2875827931467,10.2264583258393,10.5657068921529,10.558266296784 "849",11.5156126461255,11.26179599643,11.4802341913651,12.7580503535702,12.1173001147939,12.0938706226172,11.4174982756256,11.3598052024062,11.3971783402345,11.4940568365961,11.5744284488743 "850",6.59252977461817,6.51469182046056,6.93916689557714,6.0509730364866,5.62125976688193,5.55881082326398,5.91401088991375,6.23124139577787,6.3901204572901,6.02045962596488,6.35118973846552 "851",5.94145031362918,5.4021071818575,5.418413249836,4.55382476248647,4.68891224809943,4.65095609464182,5.14502080212905,4.56562326784538,5.18940370702617,5.03853376538012,4.98115357179952 "852",7.34467278053384,7.40567426841054,7.69121046438222,6.46128859958821,6.51113614459311,6.53337388382174,7.44036987875026,6.56528938654728,7.08828955603528,7.07768838806583,6.81384766158053 "853",9.07893353171304,8.86049560185941,9.14451165938165,7.24300092293367,7.48271592044446,7.70906906148302,8.29858835270601,8.14767719888998,8.24794887955917,7.78133083731575,7.760412854722 "854",11.7137590380514,11.2659683579441,11.7875389849365,13.2102667547478,12.2256637298675,12.4427518181246,11.7377537462712,11.6470345559587,11.5804219661241,11.8378520172271,11.8722897164641 "855",9.58016539209422,9.83942851551744,9.4702624618449,8.31118749724248,8.53409873520516,9.01132899283527,9.36665335211099,9.24595936073872,9.29807496776327,9.19635624404988,9.25860252902264 "856",11.3003267249037,10.7300299879787,10.0113717522371,12.7306821223973,12.7417053857062,12.9630131702616,11.6378522010419,11.7983521922096,11.5809177985076,12.1689443554771,12.3560348161865 "857",11.4053011814366,11.4658009562896,11.4113726403053,9.84029689786886,10.4632957389836,11.1311760164884,11.1608414715141,11.0749800926367,11.2577661744093,11.5809408173215,11.2828568712516 "858",9.69857628124134,9.56469596501563,9.53535074476964,10.7284350430172,9.95659763011375,10.2733453187405,9.54478430345243,9.56944465385482,9.62489033351192,9.59775112970703,9.63319270237497 "859",8.22344598109642,8.77193440502366,8.22598820116811,7.4632017364414,7.68206463267475,7.81820817825538,8.54207616570528,8.04636292844579,8.13344570604696,8.16689728017213,8.26788326634701 "860",9.56681365227544,9.6817739397006,9.05241716979599,8.88505462553233,8.91918068684976,8.62208560702736,9.55197355714006,9.26267360632071,9.45997759253185,9.72252412797334,9.36421054365612 "861",9.05999410975567,8.9323001258564,9.28689234506057,10.5813019862622,9.70216246753855,9.55225913980104,9.00733107592358,9.27449481328904,9.20332363239004,9.36298357674282,9.3952081121762 "862",9.65417673223553,9.66501749659039,9.87236674920621,10.6699032894731,10.1195777022067,10.2480366613889,9.6673524471745,9.58661291685083,9.61910718934904,9.69904950558679,9.53571761209627 "863",10.6213647781726,10.5217079253741,10.6262366967912,12.0745058882589,11.5194538493501,11.4150720572,10.7948996470182,10.8367362184048,10.7815143288352,10.8807727156014,10.970094448021 "864",6.77832045411394,7.10611233977898,7.37405217620522,6.07729316885177,6.19454648924689,6.37917785202581,7.16673889189749,6.78210893022942,6.33358512450331,6.55054143952896,6.58799030207827 "865",9.40473684721579,9.17062778027327,9.67735134467817,10.224007644512,10.7979609149535,10.1473372532521,9.54117619060914,9.38983857817926,9.87344822380019,9.80400303037394,9.71684708184083 "866",10.7374047629833,10.9343385428672,10.6827970940472,9.17237412305056,9.12943734959456,8.71656123030154,10.1001633106513,9.63509194409759,9.65346320363239,9.47227227099732,9.54438505309453 "867",11.8990230651755,11.9607534167712,12.0368713190704,10.6824246723501,10.0994609420327,10.6284253943775,11.4672932710658,10.8806952312753,11.3807557834933,11.4789769296243,11.0658940889465 "868",10.5782976694326,10.4411771999021,10.1410365636559,8.99961396027658,9.84882267978208,9.35410271789337,10.128087528896,10.2934027427963,9.66847369820001,10.119037272593,10.3156145533622 "869",8.99879634851066,8.37134779801586,8.82707588341202,9.68092864323664,9.30035525603987,9.19666600526307,8.74715182359151,8.88486247465067,8.47858114330095,8.73983067135623,8.84116043161952 "870",12.5011081263433,12.4620641429028,12.7136804813349,11.2588238064,11.2425294223385,11.6471199190015,12.2488934959767,12.0082320964638,12.2187446427166,12.4337959497611,12.2603982071971 "871",9.94698282093711,10.3783268675515,10.0866728219571,9.01620360197303,9.48229107595616,9.52240810930341,10.1507544590629,10.1442274199147,9.97050328821669,10.0539132565253,9.87224763371553 "872",9.39613438242484,9.33680064020938,9.35313467967631,10.5058118894681,9.83672084840397,9.99193810052117,9.44211537945549,9.37234455506053,9.20332363239004,9.50332568693621,9.52699775765348 "873",11.3656557225839,11.1825927492529,11.473379568541,10.190793518973,10.8200800534583,10.6414422962412,11.4563220984652,11.275287752266,10.9606049829468,11.4669837638351,11.5288712294869 "874",7.76916012660847,7.96821042478736,8.1127291879404,8.87781001326193,8.9580208912884,8.28036153357884,7.92437514859412,8.12693320707114,8.14960710381963,8.17600811565887,8.13168767471038 "875",10.1676966128034,10.4271692268957,9.81567692699979,9.37629785150655,9.59538746626714,9.55422740743955,10.2612297568744,10.3856444141717,9.95681345931692,10.1970720093041,10.2828460411337 "876",9.9232331239746,10.1119179136303,10.497009081533,8.56242310002069,9.23598025823581,8.88873775799829,9.89781848645246,9.22418087913334,9.5659879347563,9.56868601985169,9.52524744120458 "877",7.88461944536395,7.64176993636721,7.74548781114225,6.57487622139197,6.73922021409517,6.71562100072587,7.40092272496691,7.0934797589686,7.13256598721052,7.12576620834847,7.10610281638263 "878",9.33443563031389,9.21352079004626,9.47713361605134,7.57530462869955,7.93712914351463,7.59860782047329,8.19204213747173,8.00715966731889,8.27274833599991,8.61820365114571,8.2845535256563 "879",10.3875578383124,9.93803088694602,10.7589952882866,11.417660697707,10.666429354133,11.1682667548968,10.102613079226,10.2687995650707,10.2289915687945,10.5526707545995,10.4434272984381 "880",9.76020179022974,9.58116430551374,9.78462890974964,10.7304462784597,10.3450125535782,10.3580210027604,9.48781787903948,9.83508933587443,9.84895221895998,9.86855332854532,9.73513239781039 "881",9.98045210053659,9.91104749111897,10.0348434158324,8.75269444659348,8.78878838826986,8.90734252143497,9.64399453494611,9.39850663041939,9.24898288673534,9.56695792576193,9.4843923717794 "882",7.29902383642301,7.02904872889847,7.4225356099074,9.29435165142967,8.14243859038401,7.91349660939433,7.66329537746326,7.98426798615941,8.07822326015754,7.78729539643327,7.83029488336248 "883",9.00729609524612,9.28289979667133,9.55496740216531,8.13991470128491,8.39940552920771,8.97944873058034,9.20501720795271,9.07803954608352,8.94118717406452,9.28733345332428,9.15599989088867 "884",9.5896272234978,9.69145936595319,9.37291941414527,10.7163083861625,10.2399801712064,10.1130358344079,9.79098677141248,9.71185621439532,9.55996317249662,9.52484994571404,9.65736492210605 "885",8.48534504201373,8.18386075338297,8.28989555448605,9.60840360376612,8.68840168362584,9.21171041223855,8.54568468669484,8.50186663160025,8.62052048977526,8.53926500073151,8.5103431613003 "886",9.46972081138185,9.40567022875635,9.83184744975314,8.53042826396482,8.97390035619535,8.81181917028021,9.56801951310826,9.23632063088325,9.18255697586384,9.57041204548545,9.51646384732681 "887",8.81733944412507,8.78750817137408,8.74211830039699,9.53664286052651,9.19321854755509,9.44389825650047,8.91831425339976,8.57255723718748,8.62052048977526,8.83196879006879,8.8127314248955 "888",8.57959576796726,8.9346330650038,8.4844870178595,7.56629088144444,8.08503730843251,7.94390401379986,8.95675250144515,8.52185356921256,7.82660267366782,8.32675993392411,8.5693302404221 "889",9.01855167070949,8.80546730861257,8.90730154365236,9.94274428978234,9.62584884037771,9.60448151693673,8.89588024617448,9.05628937670789,9.08801137112128,9.08240801259003,9.18733328198418 "890",10.735701536823,10.6767022517839,10.4800102110266,9.61712771726711,10.1769267837193,10.1641868382193,10.6699825228265,10.6036763591699,10.6383111804627,10.9185222294883,10.7412553983697 "891",8.65006847359859,8.65510488621471,8.97684390628987,8.09683489198394,7.95647212895258,8.34097001189902,8.84115642730541,8.52977129672558,8.58928869389866,8.82330534351434,8.83834264114361 "892",9.17510610384297,9.44873362170782,8.97684390628987,8.66280803012047,8.70752735826761,8.10322540131312,9.1563107349151,9.33670654091702,9.05125235744822,8.9717961107169,9.03572601817223 "893",7.50594156703678,7.41912121017553,7.4225356099074,6.40082385541707,5.8974681997572,5.74518636420907,6.3637745907004,6.56528938654728,6.77502214750378,6.41641371191531,6.14255176514714 "894",9.22938891751842,9.1863733026363,9.07976582629326,10.2675976945215,9.91280311568488,9.67672414853739,9.13252572985366,9.34120976599466,9.62296519457003,9.05800395022448,9.23951225785954 "895",11.5792004050269,11.4082415032156,12.2827777754935,10.9141900675119,10.8582045543139,10.5248584428486,11.4389805537193,11.1842566374025,11.9363478126885,11.6172885483859,11.5565491770469 "896",8.01418474594075,7.69241450619318,7.76813503017998,8.79561827366295,8.76707697554502,8.45502781542909,7.82080274053401,8.21310002224855,8.16028132058192,8.09666112757126,8.15454594309857 "897",8.0198052722941,7.87393883350761,7.61826206548417,8.88505462553233,8.96121081304728,8.81181917028021,8.05685771125266,8.19328506971323,8.81190620806466,8.22071606917967,8.16358845962604 "898",13.4574456797821,13.2674062381004,13.0496597064963,12.1158654770111,12.2490039519567,12.7304569041022,13.1051238433321,13.3311977185771,13.3726888216048,13.2891257638866,13.1725594822788 "899",13.3909661587412,13.2617300121566,13.2898343092864,14.4116357854075,13.861798078821,14.1126545914931,13.0478075163143,13.0634067673378,13.2627990725492,13.2649530671925,13.272820398629 "900",7.21298364338213,7.49090017416654,7.7530766872274,6.62838823156807,6.67774574857742,6.68684256874318,7.44813034354882,6.76864888687765,7.13256598721052,6.87852433571936,7.48490815233371 "901",10.9947416128012,11.0463861604699,11.1129570221547,10.1627668912003,10.3401223675802,9.7829270818707,11.1154729436314,10.6479573178566,10.6879489902202,10.6423631876981,11.0019010081191 "902",10.4501766124991,9.98266225942609,10.2209710906766,11.4114062858439,10.9982603797577,11.3559467385207,10.3076208032781,10.4317559703081,10.4782449582745,10.6357851229324,10.6614502341892 "903",10.2038750537552,9.6692248958923,10.1163127949183,11.014158824785,10.645771465688,10.7101262285837,10.0012240238799,9.99792495516026,10.0557402675007,10.2015334217769,10.0891500364742 "904",11.3350492569239,11.1855325640267,12.0110710572073,9.55945407320963,8.85888400214986,10.6469852112576,10.2623257383629,10.1923672390677,10.4437662772333,10.3862914978515,10.6169558194852 "905",8.37136993266211,8.89445010257218,8.61905611122698,7.79943239971828,7.72785040241364,7.63638232466681,8.19664276389932,8.28037849508139,8.60498925706414,7.97138952689756,8.30920223246031 "906",4.90198673375679,4.64642175332692,4.70273040173548,3.54830022377166,3.54830022377166,3.9737401164974,4.44463567927867,3.54830022377166,3.54830022377166,4.1133546816754,4.10886942232174 "907",8.08559079645539,8.11138652020037,8.06480332080901,7.39350664654034,7.47377566559152,7.39315721180163,7.98417772511438,7.83228293935799,8.11710056757884,7.78729539643327,8.01660473495846 "908",11.1771048084222,11.1673075277614,11.1114861035843,9.51579960554126,10.2161565987503,10.5615184389896,10.8751752748724,10.8983688090326,10.5750061667612,10.8835516927605,10.838880757697 "909",7.6580951815487,7.07237672841144,7.84114335871757,6.69670383284886,6.89563617554318,6.83830958701759,7.0991743398703,7.1253766513517,7.95485212886411,7.29494863419076,6.98814341367768 "910",10.5061990824855,10.2531338060378,10.6956159852855,12.1027279162835,10.7480709851296,11.1005318420716,10.4529337363202,10.4610086273112,10.6440170553325,10.6578669124684,10.6316692389896 "911",8.15871854385556,8.22641698670031,8.5897499961985,6.27135914474364,6.40071463600213,6.7714709429183,7.24914719576377,6.89780162083434,6.93404518186094,6.84435025290232,6.76669562633258 "912",7.07874176605886,6.83106206268892,7.21786362165879,5.53878302118535,5.39764908336153,5.65534952806707,6.25992873135254,5.78854419980623,5.51298978105205,6.1014953970159,5.94046067728516 "913",9.50615166422847,9.40902884652768,9.35313467967631,10.8481139872983,10.4599186161224,10.1641868382193,9.59611210364315,9.92930859975049,9.97654619550548,9.69113894228515,9.80748063398893 "914",8.25712903402587,8.09894415891948,7.83400743326457,7.39350664654034,7.27182102480764,7.03316008565936,7.95730299948966,7.75994834656574,7.57022465258961,7.67594321107183,7.74842757298843 "915",8.90789881133461,8.85803938608857,8.90050002263377,9.98716255859393,9.72860104721336,9.71065004578094,9.02552674393489,9.03142157511803,9.18516922738923,9.36099031660653,9.21365883959209 "916",9.52402764382709,9.68316156096511,9.84252794195237,8.95900189347472,8.64937117040887,8.69886764484335,9.32108884787234,9.22661702159954,9.76938762341336,9.31024158317196,9.30423030030837 "917",12.1851939914969,12.392316643359,11.9076612090987,10.6958679672063,11.5860227252738,11.3451897314405,11.9871313601041,12.0877406164492,11.7853414163164,12.0635326061149,12.0652751664899 "918",10.4460161043646,10.9864014967783,10.0731334977027,9.20167585180879,9.44632939503257,9.6928938362963,10.5121774283889,10.3357556920826,9.69620407411954,9.92089909828758,10.0867789023554 "919",15.8360885120863,15.6360105583448,15.8454393787869,14.6621901618041,15.0810491469015,15.2390695531504,16.0617715993351,16.0559806840986,15.8458015515651,16.1744392235797,16.0911418476845 "920",8.3974891178613,8.17598611502826,8.4097771266292,8.99961396027658,9.01131205125623,8.97944873058034,8.39778519429801,8.30827599759587,8.46573789668545,8.5844128773361,8.2845535256563 "921",7.86600979372371,7.85431831235001,8.12446508314429,7.40367358381682,7.21921073366603,7.14261721935289,7.76607163952493,7.48577200057024,7.7150538741348,8.05774971496173,7.78994511188364 "922",11.2258446093261,11.3373168630131,11.315616562814,13.0588389210689,12.4623203261652,12.311046474432,11.7298528834634,11.7593589614671,11.7658490654488,11.7300454263668,11.9460823533656 "923",10.1790218203434,9.9530619905207,10.1525262470473,11.1314342127521,11.2736376501138,10.949478870928,10.0915562053543,10.2268380946062,10.658183776548,10.55876894893,10.4228962389094 "924",8.80763797222686,9.07870400315051,8.62319443664458,7.06188847868238,7.07256943990856,7.09984026877219,7.62960552780545,7.33064252719431,7.62530056654001,7.97661580669704,7.29982984583008 "925",9.88532311150399,10.0105623863543,10.3772593650548,9.56622765913253,9.05972996017426,9.43537982187616,10.123269813816,9.9589069516899,9.9960126003135,9.89634039364597,10.0519520851791 "926",6.51396439906776,6.42301817472768,6.28664740687677,7.50155353167975,7.29233343640058,6.88959297378132,6.64921354738883,6.76864888687765,7.03093108737801,6.71145259511112,6.62824463854747 "927",10.715104404536,10.8367335399741,10.6718606513826,9.62795915860101,10.1252741888811,9.3809681429618,10.2980337394221,10.5512082495003,10.480372756211,10.193716870766,10.4115730771965 "928",9.97179558412176,9.7939149262346,9.95178733443658,8.90657245076633,9.17959113199586,8.80522001376409,9.80308797068838,9.44527125477777,9.30048623241045,9.6394571097366,9.74719506373333 "929",7.31745897614819,7.63603066783031,6.32866748787329,5.911083037832,6.0785626727083,5.85613856012376,6.56521215361864,6.08445307616774,6.64275977322472,6.28524461564841,6.23335959665524 "930",12.02499250764,11.7793617899984,12.2788517924054,13.5841114300696,12.5196693186998,12.4612218258786,11.8578901829197,12.0018486233142,11.796057770443,12.216280563866,12.2255308046248 "931",8.74463002246685,8.79008750957555,8.0089045279457,9.80827825679785,9.75823472721977,9.16609781109147,8.99682947040505,8.98324517579057,9.04838552577783,8.80288571581398,8.94696541993456 "932",8.9229530537558,8.70516811153347,7.98977766513664,10.4725524806148,11.3504191458813,11.0216577977342,9.74937892108223,10.1455150598241,10.2676983594253,10.6407214815269,10.3838361150001 "933",12.4344257304427,12.5368671033929,11.9739147129922,11.2740709208746,11.8755581690671,11.9375685136158,12.4285212730607,12.4526825074447,12.6129891251028,12.5777977689112,12.4647927492276 "934",6.95432532809127,7.96821042478736,7.65114285598963,5.61488371433785,6.0785626727083,5.45435632888149,6.75392864179652,5.73213596531648,6.3901204572901,6.06158243388933,5.62162634442846 "935",8.06942456863193,8.03506354207531,7.65924649376092,8.81471419617238,8.55114202950305,8.74787211075106,8.34904137646371,8.05737018455627,7.95485212886411,8.11098555512941,8.23395175603893 "936",9.3434130426965,9.5959740506441,10.6221105250363,8.18761826100972,7.72785040241364,7.14261721935289,8.23292737440489,7.95513066659,9.15083504668146,8.01267688248038,7.73634128687924 "937",9.08697485766923,9.0117861763896,9.08876793089424,10.0815802904703,9.45766406599487,9.74896080288785,9.09363402070667,9.10742002183234,9.03686083280058,9.3040299237089,9.11933592449026 "938",9.93812245094222,9.99946701505248,9.85664666430577,9.02278635626887,9.23861121330083,9.55619299213309,9.77571606977513,9.84938358993893,9.92435595832607,9.96879649048175,10.0446403385942 "939",10.2319367043978,10.0193776357435,9.97462323001715,10.8646900190133,10.7934960953958,10.6825041353153,10.0853766743671,10.0092860077804,10.0413989881104,10.1424301375855,10.147195885017 "940",10.6287251978809,10.572751644202,10.2719012720266,11.9116743095283,11.1727348685804,11.1099274294634,10.6040831870038,10.5714673844242,10.6344946867232,10.7475450152949,10.7718333907813 "941",10.3072650149522,10.6001845632283,10.7942617746176,9.61277225789441,10.3041638561546,9.86925026587658,10.6314839644521,10.5829175557374,10.5579807272954,10.5083459512919,10.7577436448535 "942",4.84297810234872,5.10587436566836,4.70273040173548,6.17776213550542,5.62125976688193,5.45435632888149,5.41158127901156,5.32915405009094,5.47688516711479,5.390508541124,5.30807251233407 "943",11.3842563607982,11.388816562243,11.3092149278754,13.1141849466352,11.9919708425011,12.0351991487036,11.5467959259745,11.5473063440512,11.5754542468499,11.6156181090477,11.661839875322 "944",11.3095154375093,11.282080456413,11.1319437234738,10.2854924878837,10.4210815635409,10.8156110535216,11.1766218088326,11.3374465200564,11.2059904601107,11.2304431300216,11.1703556426013 "945",9.97901295098865,9.91459582601733,9.78647388407245,10.819112147973,10.3091772660013,10.3501135059681,9.79553662852666,9.91880398678363,9.74481339974284,9.87694580465071,9.78132356886948 "946",8.294682281884,8.97372587192083,9.09175618158335,8.01323366988297,7.47377566559152,7.55192262367988,7.65662047639296,7.36660049554979,6.74668576793685,6.83277277346818,7.34839558870425 "947",8.82055880528902,8.91586293517528,9.10364761472539,7.70411707223598,7.70514028907391,7.65121758975865,8.47930572808162,8.18828837683879,8.1866252546496,8.06757677451835,8.12707208461638 "948",6.62276159563949,6.28057493588452,6.6256602057308,7.49206154969264,8.07327677468168,7.86346430145686,8.14043928360493,8.51787831724872,7.82660267366782,8.41402218035133,8.80120087122839 "949",10.6809938464023,10.5217079253741,10.691683829866,12.0879017788645,11.4733044232235,11.4608971247466,10.8787526212658,10.8061252570753,10.8571497213705,11.0621960431891,11.0580484820059 "950",9.76020179022974,9.55411733343694,9.53535074476964,10.6667558875144,10.1892161248021,10.1009696272118,9.6490317497569,9.60732250892647,9.51499523377263,9.7653465991814,9.78425344757618 "951",5.7000257986004,5.66465997975799,5.92211619827359,4.64558758720875,5.01670287124879,4.9129913680454,5.60160582989158,5.01322721136904,4.93015836537268,5.32077713645568,5.07200980811868 "952",9.0572680471116,9.19807059674796,9.187046021462,8.08428546657848,7.65861139439769,7.85708585459775,8.49058360355368,8.30827599759587,8.68472113669597,8.22511136525768,8.28869108156212 "953",12.7268555155175,12.7471353585763,12.6159215441634,10.8674342674154,11.176168781043,11.2795016780931,11.9433897457157,11.6397437665395,12.0242855227955,12.0310044206531,11.6586507773214 "954",8.79787073018477,8.88241513822192,8.48903011050334,8.09057387490146,8.15364885930661,8.26118717505858,8.65996013694666,8.68671532790733,8.54520805031822,8.92937142458081,8.78079764257823 "955",12.3131880856649,11.8810899477676,12.4602452035349,10.8134309112171,11.7077541380989,11.704505456077,12.2136360021176,12.0142351070824,11.8950764065347,12.3900066774936,12.383821500858 "956",10.7305797590264,10.5463124432375,10.7170533125609,9.86431090946723,9.24123737559858,9.4523666608158,10.4805071769423,9.78308622838525,10.2466007810635,10.2890292648551,10.0112708865351 "957",9.06814149751196,9.11412324227118,9.05853965275389,9.87162010864822,9.68104383162637,9.50623122384085,9.20044875589,9.03142157511803,8.9778131121013,9.06291793083635,9.09593814997069 "958",8.61711613237333,8.57359585295323,8.4980735107469,9.07122139205733,9.11232399251591,9.22906605581933,8.27703265362688,8.4692989141019,8.58928869389866,8.74289670911332,8.72391506033599 "959",11.8997837472559,11.8224923782246,11.6854570558497,13.322348518767,12.597028279516,12.6595648836689,11.8315522805876,12.0376537683427,12.0695061563378,12.1459832612116,12.1540108466104 "960",5.28634990203998,5.59141601637692,5.37656757260563,4.33331678257734,4.83273793005469,4.39026667116431,4.79704755731515,4.78227634053133,5.04112969494906,4.78196079501175,4.71305020543012 "961",11.0615287871017,11.1168665790503,10.7785911443443,12.0339624934747,11.7419862436516,11.4920273609534,10.8865916955088,11.0790287578388,11.0507057493754,10.9658368743417,11.0944983854779 "962",8.90486899759346,8.39866108595749,9.40450158918026,7.53890404750006,7.96922423053262,8.26118717505858,8.27268248344622,8.48159830870355,8.43970244756147,8.62486769292213,8.45620975321545 "963",8.98164497191558,8.7693223302685,8.43824966422195,9.55492060782545,9.4955487919854,9.41819047100705,8.61258242268164,8.9511914865903,8.87152188693131,9.00792007217077,9.02337574383751 "964",9.83529727408804,9.87386091651602,10.1794529427816,9.305190779717,9.44632939503257,9.66766202449985,10.1364800025139,10.1182302410102,10.086797954744,10.14126946116,10.0458615399425 "965",13.1150029264431,12.8346317323475,12.869732563984,14.2280131603343,13.3618297866585,13.7380721323912,12.856615556946,12.8775601452315,12.7990073111988,13.1649959577758,12.8700334371744 "966",12.3011468723843,12.2418099218388,11.9341128357549,11.079521043675,11.3172122732967,11.4884299232589,12.0826618769244,12.0739447825053,12.2078712255866,12.0009285313461,11.8805257060274 "967",9.51014329950609,9.29565810312958,9.26852529918445,10.3058681849335,10.1138586287252,9.73167288182597,9.55555478737949,9.47835382518187,9.26141351714627,9.3807999884593,9.43304081087427 "968",9.32992587419766,9.24581274962594,8.96711239683296,8.32724449347408,8.79595341846954,8.38148260145542,9.16805766448614,9.02583663999242,9.05411349810805,9.11589408122241,8.97801737293295 "969",6.43071256109461,6.52730961170283,6.89842135709573,5.41530931619833,5.39764908336153,5.59180320170385,6.20491650857206,5.73213596531648,5.82724139574683,5.5494201062907,5.85028907707368 "970",9.6933199504917,9.89915626048346,10.0363946955327,8.91721205486033,8.88934771387627,8.73056126440669,9.41477092578433,9.19710802628427,10.2762966964716,9.20527235569872,9.08171497731816 "971",9.79986947543239,10.0171788692434,10.5812494717202,9.38142812611496,8.66901863215749,8.92571013439452,9.6423115457172,9.25791784862947,9.85716386942044,9.65580753175133,9.53745527315596 "972",8.28071443929551,8.28980478532454,7.76062562001257,9.25296328432148,9.10945190796355,8.96767880151746,8.2813697089829,8.56101386027806,8.58137374949431,8.63810397514564,8.64869565657126 "973",11.7936919404452,11.7826012456525,10.9554399345442,10.399854466028,10.7827238080154,10.9108369175279,11.5910811228922,11.4511435564193,11.3196802789548,11.3889461281893,11.2921478266891 "974",7.89689319839686,7.27859059456544,7.58460878049789,6.83927355652247,6.41973750499147,6.58120453943995,7.47875776629049,6.91009091397774,6.64275977322472,7.13518977438961,7.09663841152436 "975",10.8313076776867,10.9892083624216,10.8796953279491,9.00959064307579,9.8086721495239,9.71944683417108,10.4031259953321,10.2616923127899,10.1748361251632,10.0315350135395,9.84864948271169 "976",10.6158197120419,10.7962771043898,10.6272663982499,9.45869809056146,9.67717063017289,9.35861519639051,10.4945651310204,10.0092860077804,9.98706074137923,9.99087343229875,10.1585299151779 "977",8.41464222744575,8.65227191007754,8.3807299458979,7.11248315845808,7.56075963191614,7.23440933245103,8.18279649342478,7.718899590335,7.68575618862043,7.63681713218184,7.70567223139389 "978",5.8127914775599,6.1384379945953,5.89393465653991,4.64558758720875,5.43778714177974,4.48644669672571,5.30447425058107,5.20403385694408,5.14207053784841,5.16791879000176,5.07200980811868 "979",10.5953034695117,10.6584790659316,10.2426349548821,11.407012007773,11.9416120178296,11.2150394006436,10.5901851157763,10.9226034139365,11.0004402303452,10.7252554709334,10.791621851475 "980",11.9295143097948,12.1467147985614,12.0960799175893,10.4677379120527,11.6397400747248,10.7782158434998,11.7549848200116,11.8945256868467,11.5248129041433,11.5440927384044,11.7096198746196 "981",9.38313367747968,8.98727398971167,9.28166845148273,10.2225793446639,9.96138260524379,9.59686319373274,9.29132507821413,9.31168419351693,9.22886820556431,9.3429258727378,9.38944660327715 "982",9.12652201704222,9.331500338693,8.70746062249964,8.0394789443579,8.14805465040806,8.16644642449687,9.03838442629959,8.97457372676721,8.6243772668336,8.30201315104198,8.32137001784084 "983",9.22210598305963,9.44710090248003,9.98751179492625,8.52115476020547,8.79595341846954,8.45923917335987,9.45367752535055,8.98612410267152,9.05411349810805,9.06536865278473,9.22664350451674 "984",9.45736973881928,9.18048886794505,8.92416620596901,10.1951694161706,9.62785690165601,9.74551975811692,9.14684377661158,9.19462145852352,9.20846888718832,9.36298357674282,9.3385248877328 "985",7.24224442514873,7.32936470367063,7.51483209832686,6.69670383284886,6.52871833911561,6.78509433379566,7.44036987875026,7.26545035107639,6.84346871555432,7.07768838806583,6.90367688540501 "986",6.70973609194007,7.16329009363354,6.8564678268525,6.17776213550542,5.39764908336153,5.68598866291392,6.42891596161512,5.84263840078618,6.37153045758554,5.99941972064136,6.00431920355596 "987",11.0011359183487,10.6198789768149,11.1930229533517,11.8744177848462,11.620207946945,11.4551163261391,10.736949825916,10.8845557748348,10.8831143931235,11.1397915926484,11.0360968281105 "988",8.02540389838557,8.26032284797954,8.08296329851879,7.27661531753778,7.33249425050712,7.92573694177426,8.16412493691205,7.87648532555971,8.1060996420964,8.02281595836473,7.83596762084554 "989",8.06942456863193,8.39527513861423,8.4569231985075,9.32396535040109,8.99272759743937,9.04532157803117,8.42938741921792,8.61782708032254,8.62052048977526,8.45948004832555,8.68679631873008 "990",8.55660514613917,8.9229304161299,8.5115329832205,9.60840360376612,9.35714415690729,9.30116793975037,8.82640317680438,8.78919281788379,9.13200299648332,8.77918901924796,8.71164811978162 "991",9.24863209458266,9.44382990710017,9.48851327457303,8.39989535773393,8.16477240153267,7.77147814172358,8.55645630441312,8.52977129672558,8.90677549196692,8.59123476117801,8.60955961539881 "992",9.1624787303068,9.56620088281565,9.1758256769784,8.02641622832246,8.28176866984423,7.70196403035471,8.811497292161,8.41475267311222,8.47858114330095,8.30616728615832,8.60293228105033 "993",8.59472142415232,8.50300867513983,8.61074361341653,9.66629224542391,9.36438918633231,9.16609781109147,9.00471283980107,8.64359188993273,8.84863020211787,8.94276379601486,8.69304958228157 "994",12.8242292107495,12.5115154480853,12.5160652453708,11.3195367607821,11.806777388402,12.0295522664115,12.5066646039113,12.3888843606159,12.3142778862985,12.6679995204775,12.5061882813091 "995",8.47720506147292,8.12372211241184,9.17300689134496,10.1477943510363,10.3656128518495,9.72644583362215,9.03068358970908,9.231476990754,10.0004677804366,9.51949892739923,9.56497679107382 "996",8.94081297417151,8.78492420692115,8.7459181822011,9.89153147815798,9.85740509263056,9.6603710993719,9.26093385697583,9.19710802628427,9.01939913961722,9.32258518506948,9.24802804734043 "997",7.7216241629332,7.61867361278385,7.85530964459838,6.59294157316564,7.11932032558298,6.88959297378132,7.33545046218468,7.30306692115969,7.18604166357848,7.31991758798775,7.40304374052886 "998",9.0572680471116,9.22880714902793,8.97684390628987,10.7494144475872,10.1946446242638,9.84373054768421,9.24549456835628,9.41568795142642,10.0965413299756,9.68637169179772,9.7651019674301 "999",7.4062246804254,7.27118736405129,7.55014554719028,6.57487622139197,6.36186838199559,6.2854828908731,7.2131083928765,6.50132385628596,6.99536990472171,6.85583364825118,6.53245205516269 "1000",10.8960243159774,10.8941697188749,10.7832178505055,9.51346498043639,10.4082894055706,10.0942223041685,10.9189194253512,10.7496720901198,10.5294932421586,10.5939783364718,10.4508212759405 "1001",10.4176143551016,10.621327181687,10.6075752654139,9.42927633104782,9.85054325298004,9.76434470127426,10.7258698713933,10.3492289654657,10.0600149918336,10.3088067026996,10.0748644073483 "1002",7.57641756494067,7.75727219503807,7.06710206958041,8.39989535773393,8.26119229282476,8.20208110331023,7.81482359302033,7.79985493290829,7.94870454884627,7.64341278430679,7.73025972915777 "1003",9.93069700104697,9.87992398088922,10.6190081324294,9.47558756262761,9.54101377918957,9.42250705862826,9.99859569010549,10.0373031829165,10.3630372320964,9.94238343620172,10.091517279025 "1004",10.6185949094909,11.2843675650789,10.8124824801841,8.82605142978317,8.62543485778274,9.16093949175458,8.34075443718631,8.05737018455627,7.39100943196294,8.74900927669588,9.15146757110382 "1005",8.14335841506088,8.65510488621471,7.80510350800155,7.11248315845808,7.48271592044446,6.75771463598581,7.79065468949202,7.87025342817232,7.76492707029667,7.07768838806583,7.34839558870425 "1006",9.71076705659779,9.44546633234536,9.4725564866295,10.4544143865778,10.3595844203218,9.97293708537586,9.51382367082903,9.67843989305118,9.74304197024093,9.67197464876051,9.63967834804419 "1007",8.00854214661264,8.56458271440011,9.61226530671593,5.81955380472203,5.75123300751287,6.36093948153758,6.16697714683118,6.41700761662776,7.35417069068958,6.04117709694692,5.80280358265392 "1008",10.054742453781,9.87628920174086,10.0579392247236,9.19002653547413,9.41410993143163,9.5082632872984,9.75872940389728,9.90822230315143,10.0152197692541,10.1459065734411,9.99365941330871 "1009",8.67518678147112,8.75354963430661,8.65587979860013,7.95925948272018,8.19763587511132,7.81162492100412,8.34075443718631,8.67961715439261,8.43970244756147,8.47062369958845,8.54533338091267 "1010",7.44862159904616,7.33647290912513,7.35418850759407,8.29494927890826,8.3270169324991,8.22205422548611,7.72201063257577,7.51006601123826,8.06691954382903,7.77534137537663,7.86954111288269 "1011",11.9524254831955,11.9074439004169,12.6444261310559,10.0269842891258,10.1081167885676,10.5673764872955,11.0143749183998,10.5647459037467,11.1123715390299,10.9749861087973,10.7299043777983 "1012",9.3434130426965,9.02717053364259,9.44945032736336,10.0657360459429,9.79622719722959,9.77451021517271,9.30840811207167,9.16189959232325,9.16678326938302,9.47042460451725,9.3622508886613 "1013",8.00287729953735,8.1994818362835,8.09494372094293,9.10883062294764,8.99272759743937,8.5449458429654,8.39778519429801,8.47341039924429,8.22271435187535,8.27683325360183,8.41138781637634 "1014",10.1739993695171,10.3144046076248,10.4558701476089,11.4393400435054,11.0021351676023,10.667128934961,10.3699561198487,10.4846015946639,10.3514588304847,10.3334072697699,10.3760897378327 "1015",9.28403502880497,9.08921207945,9.53535074476964,10.1189110950212,10.0037476889453,9.84855001793593,9.10590078326603,9.49865150161773,9.31248243122282,9.63121185055323,9.44974695409501 "1016",8.93785165006461,8.51865080696111,8.5770053316725,9.49937728997696,9.64183557788659,9.38760700419698,8.69936495459898,8.85682261188807,9.01353124291589,9.08240801259003,9.08409527418342 "1017",9.12912031180598,9.02059733590542,9.67933869708977,7.91030878238794,8.22976510944951,8.14044133216831,8.62286681903706,8.21801139525808,8.6243772668336,8.93205987433951,8.60624976059955 "1018",6.96609768642662,7.22594219396083,6.73808903630757,6.12845239811469,6.32190141837547,6.09886016877318,6.47584372686925,6.50132385628596,6.92145522413605,6.49251568930576,6.45977249775491 "1019",10.9476992745288,10.7407295072821,11.2982665269765,9.86064237179879,10.2040956140826,10.5546538458043,10.5893120242774,10.8061252570753,10.8307091385325,11.049878942885,10.9500163006214 "1020",8.50949242578248,8.57359585295323,8.35606792036895,7.37295311711776,7.73534120637942,7.88243133137374,8.17815128410126,8.37134068175844,8.14424013099273,8.20299931902598,7.81888169009264 "1021",10.8329017422342,10.7572902360556,10.3711257174728,12.2311437892806,11.6550791484448,11.5548015143461,10.8858808100336,11.0870921593124,11.0225103237594,11.3234289555852,11.2755889759218 "1022",9.41966875416745,9.51880222944563,9.49077846886586,8.93127708600914,9.32779438623419,8.81510744800008,9.53755902694178,9.62404825680619,9.71620605869828,9.47780110718558,9.58695760306276 "1023",12.8559328624732,12.7319666072563,12.9521620623959,11.5764694757678,12.2362300330622,12.1009554522088,12.7693119791519,12.7313160472424,12.466394911869,12.8661067536953,12.7606917521444 "1024",10.9933167987777,10.9494063849684,11.2415701487023,9.03911289198549,8.80308299104538,8.55284845392239,9.71296302941225,9.35017423809081,9.51083683911358,9.3983989272687,8.75712025471419 "1025",9.41328829113675,9.25703938444218,9.3996875934051,10.2963953327579,9.70596921259255,9.77451021517271,9.12048441318275,9.30016523045006,9.53969687027732,9.44053533266686,9.322487826815 "1026",9.54168472678075,9.53426300537865,10.0050475913401,8.40998101223177,8.78878838826986,8.99402723996932,9.27620954924017,9.18713591618254,9.65346320363239,9.07025763088848,9.18067608205543 "1027",6.51396439906776,6.93821031269665,6.15229533335878,5.81955380472203,5.65499240986345,5.12270292620239,6.06724579431514,5.67318746075466,5.85488481424146,5.84212104415619,5.94046067728516 "1028",10.7801711595267,11.0762605683261,10.8544164244623,9.71586772375311,10.4187641386615,10.0928690436321,10.8513396529838,10.9850668379502,10.8265336669774,10.4551626080104,10.3857662267573 "1029",8.25236519168516,8.35400994653828,8.14765331852147,9.31862608864839,8.7301479243018,8.93480688599106,8.46412979481465,8.33564284497309,8.5734150603124,8.53573273816276,8.44142364658327 "1030",11.7517532580527,11.4019359771188,11.149250846477,13.2403936361438,12.3828203875749,12.8128973762886,11.8564395126401,12.0742828406332,11.9715637396587,12.2269872094759,12.1988844609907 "1031",9.43654656252863,9.70791310097033,10.1265445453949,9.16941092317805,8.59699686255962,8.34552814661872,8.20580009791753,8.24231980078866,8.44843335716512,8.20744900921334,7.88056001282118 "1032",7.07874176605886,7.24874425335053,7.48776309257842,6.79333341252553,6.05413185693349,6.3971794717333,6.06724579431514,6.14930149609275,6.37153045758554,5.86575800256349,5.75354754840492 "1033",6.69560900497096,6.74769301624946,6.65871092362578,7.93149228509602,7.25100929258247,7.70906906148302,7.02823820460525,7.18710224326981,7.05415311319903,7.30332025620943,7.36422385202595 "1034",10.6809938464023,11.0778436567213,11.1026289569641,9.91294397957302,10.3364438175693,9.64383048070523,10.9355028002078,10.6785204081957,10.6344946867232,10.1608750516461,10.4745932611508 "1035",11.6738479262511,11.5529913107052,12.5582451596033,9.8897326701187,9.23861121330083,11.076086970429,10.622976998588,10.3447518427692,10.6934622345476,10.7437264786175,11.0262322802644 "1036",10.8822338361615,10.8273528537268,10.4383765093836,9.76379546123071,10.3595844203218,10.2781160720051,10.5901851157763,10.7905726962187,10.6851844462745,10.8576395638482,10.8522034504791 "1037",9.39613438242484,9.52190767470958,9.75854833344212,8.45451180306813,8.98647913930877,8.83791762334003,9.38488614072924,9.30478386563481,9.27619015969564,9.44242167414175,9.07215428484022 "1038",8.89268563242113,9.03153606936948,8.4288212608901,9.74998030878585,9.28006631707785,9.57570287017414,9.02294138520114,8.96293002873385,9.04838552577783,8.89119677690189,9.00339249682082 "1039",7.89689319839686,7.67012645121872,7.4225356099074,8.58484897985037,8.51250693747927,8.27080630059016,7.92991581991062,8.00147085187088,8.11710056757884,7.87391054022133,7.92380890578699 "1040",9.05180040476276,9.47940910278003,8.87296827612038,8.34837883389408,8.59288805804577,8.28985371957146,8.92386860471468,8.90630016490089,8.80852077670813,8.9717961107169,9.00841434471593 "1041",13.0415987066736,13.0100159667095,13.5932185015076,11.9711401695429,12.4125300013792,12.2866942840685,13.1892049054154,13.0163287953634,12.3600612867679,13.0868245880557,13.1877113085969 "1042",9.23663524358812,9.23070659685459,8.29509519727085,9.73603153343138,9.73978515594151,9.60258070603605,9.19126818707572,9.12319685129246,9.07398401368605,9.13234983729603,9.16277176229631 "1043",9.45736973881928,9.68316156096511,10.051816412948,9.02933918090383,9.22540815807337,8.89185528130567,9.76028194053222,9.44317817320501,9.49828921371844,9.43864652014548,9.85563028653616 "1044",6.96609768642662,6.86109848575082,6.82779078716263,7.69588059509463,7.79389953239992,7.59093188805758,7.11880812988853,7.24626335900654,7.17550601717443,7.35254427892487,7.37207268229142 "1045",7.74218994995742,7.84440655206632,7.35418850759407,9.05525655212931,8.49058638996859,8.30865224959344,8.0918641681627,8.34015380589149,8.39523538004153,7.78133083731575,8.0215884275208 "1046",9.11608174668641,8.8029153832728,8.89366624537812,10.1523024547739,9.53888097839119,9.36086615048102,8.98359392938086,9.08879277526323,9.2638868327425,9.1851329898991,9.1377844751529 "1047",9.18762382394278,8.9346330650038,9.27904938924421,7.80709668383475,7.59412520476386,7.94990899221953,8.30712100765054,8.09524495818905,8.38162287407451,8.23821723466124,8.24677005367588 "1048",9.38313367747968,9.17655252407485,9.26588222870096,10.2339663375307,10.1181500583391,10.2185580582805,9.40289123840016,9.57327752659448,9.50038808177752,9.87973247920295,9.69365950185114 "1049",9.44073532499191,9.25890201976245,9.5065359672369,10.2225793446639,9.83498369585237,9.82265804372679,9.28702250294436,9.44108204882765,9.3687142921226,9.49970686483272,9.37591286682496 "1050",9.25578257505662,9.24393311445957,9.32801574787512,8.50242661365952,8.67680318171684,8.86672416809913,9.11806403180184,9.12580961555402,9.23896062811224,9.34090466928542,9.19836074801692 "1051",9.80312638837258,9.69283770343564,9.70102070426738,10.9465593725467,10.3859230889828,10.2247493126452,9.68053190362794,10.1390653344437,10.1722058748581,9.82728665298935,9.79446140192259 "1052",10.5465899316105,10.2390524456317,10.2600003697729,11.3208721681813,10.879425616054,11.0145288004371,10.3961534170129,10.3536922350361,10.271389638853,10.6374324534191,10.5684984547681 "1053",9.87916395621881,9.7939149262346,10.1395938965377,9.13336910256102,9.25948776751697,9.4116912619431,9.56446914373799,9.76978708503747,9.88473885028186,10.0600683091945,9.83740943544893 "1054",10.2415707026317,9.90154236284114,10.1148451732577,8.94866749721308,9.33272769378965,9.12165223698038,10.0400848790085,9.75298881703293,8.95656126357959,9.94637636273417,9.69832693995368 "1055",10.7702219438441,10.6753086122337,10.4099377759606,11.8296216020615,11.3296004138846,10.9695248884942,10.5250186813751,10.6305916210935,10.8282053061651,10.8583460462227,10.8402889546161 "1056",9.29101247194292,8.87514561311151,9.17300689134496,8.0394789443579,8.1758105530426,8.40787096294198,8.46793880312616,8.86935218574953,8.80852077670813,8.7671928843009,8.5693302404221 "1057",7.67245805714751,7.70890603582658,7.69121046438222,6.88376684868542,6.78362663914756,6.71562100072587,7.19474134121686,7.17699871670462,7.37270881899656,7.00752371135829,7.24099805435479 "1058",9.01293487089078,9.13861118180648,9.05241716979599,8.03296242975768,8.46383340541105,8.57241728838446,8.64993815159882,8.83782155846211,8.85848549096175,8.97961355002216,8.94172441538804 "1059",9.40687946770383,9.26076225162126,9.69710269070915,8.4447344449981,8.5211825515643,8.48425182913367,9.25433725528124,9.08342618871743,8.6243772668336,9.08240801259003,8.89367732498072 "1060",9.74842349831436,9.6692248958923,9.74722492685364,8.89943548573761,9.30035525603987,9.36535754324697,9.75406174062268,9.61291934088811,9.41840182699493,10.0037037478743,9.8791154152687 "1061",9.16754296113089,9.25143699535895,9.13295394976483,9.99220081786086,9.81749610867192,9.81938861709137,9.2432753956353,9.30478386563481,9.09080053488277,9.49061987472556,9.48799129901826 "1062",9.19508261043595,8.99400058454918,8.99291846848737,9.82531781007942,9.76372388572495,9.98611825045608,9.42459643967593,9.25075466607232,9.15617075017529,9.35098246993433,9.35043669256133 "1063",9.67565917741383,9.2495646837176,9.60182491992695,10.4286316847604,10.1959985629127,10.0020666706214,9.54478430345243,9.6405822331825,9.60747085520721,9.77585644799489,9.62340921195465 "1064",10.2887985170902,10.4460888907511,10.8277911642823,9.62147006138431,9.83672084840397,9.76604393736077,10.4100650320552,10.1823651977534,10.5025271633048,10.2732216650735,10.2204054290334 "1065",9.76522033055154,9.92166641344763,9.90330203984434,8.7645283512679,8.73760985817425,8.67734439299239,9.26750041175505,9.29553175144062,9.27128142150891,9.17154871505966,9.20712238355599 "1066",11.8690392022197,11.944069765846,11.9135814038573,13.2336741603757,12.6186421816182,12.6729837245584,12.112136848982,12.2673039756428,12.0680921537785,12.0256682753224,12.1503258693887 "1067",10.5121810487845,10.1783620425922,10.4087405742361,11.4787572454081,10.780018120108,10.9123719494397,10.4558107269963,10.392167757017,10.4339187916528,10.5306785948073,10.3857662267573 "1068",10.398364344537,10.1160331461959,10.681806291062,11.3400979357904,10.8077351450852,11.0301663500558,10.2391334134127,10.3899965856058,10.3927132134293,10.6233698134266,10.5650957934218 "1069",11.9918432121435,11.6044217940543,12.0994227761672,13.0668198342395,12.5456537896545,12.5094339925072,11.6542251832939,11.8709793770221,12.0257430979191,12.2093752996594,12.2333224950453 "1070",11.3220551086501,11.4107560169491,11.342197472079,10.6348983062597,10.9517341501716,10.7337606409254,11.4544055222956,11.5047993342514,11.2902686561129,11.4035403900231,11.3934644588988 "1071",10.3918901606411,10.2171904506345,10.9397772328691,9.76182995208663,9.62986217061527,9.49602772798355,10.1719047159624,10.0661469966527,10.1840044128725,10.2214407527415,10.3426954916598 "1072",9.01574600705652,8.74559805039708,8.82707588341202,9.69747605586327,9.4867238725596,9.43751415323226,8.96485755259403,9.08342618871743,8.75324314210048,9.18963278256191,9.05769327455824 "1073",9.18262977228122,9.28289979667133,8.84490020686768,7.74460433271526,7.94360579430254,7.64381915699718,8.35316701815626,8.26147500951268,8.27765733364126,8.1251686531973,8.15907430970499 "1074",12.5970940127114,12.2720877523663,12.5775503988306,13.6758060331092,12.8168847308036,13.120877456375,12.2601828312875,12.4472114400563,12.5314562071212,12.6144325083754,12.5004104806367 "1075",11.2069146867304,11.1553615696502,11.1362900088097,12.6730305698081,11.743375813735,11.6007473209506,11.2601826140795,11.3009358307067,11.5045706942623,11.2955312113621,11.3342319480831 "1076",10.9753868606839,10.9138031379392,11.0172293711269,9.87889245201439,10.3547434692174,10.7748444298586,11.0547829153938,10.7623162935536,10.8114011007835,11.0913349686046,10.9962273381243 "1077",7.48979747185056,7.83942488448672,8.37091579395097,6.61077692935938,5.17436496058539,5.77381127177675,6.55070875443918,6.17025054654574,7.19649994303249,5.79354444200787,5.27185771113154 "1078",9.58395757794566,9.97021312777052,9.75478373457394,8.58484897985037,9.38353314396616,8.24663679622921,9.45367752535055,9.3941791181895,9.31963252852319,8.89671260759441,9.18733328198418 "1079",11.0458070796678,11.114811790448,11.3340222603512,10.3483975903953,9.53888097839119,9.51838087018148,10.4345783222315,10.2473718794916,10.5427895704781,10.3784321576861,10.2755776067162 "1080",8.62818423221203,8.48719472503624,8.13610594939793,9.13943900244261,8.94840853978628,8.94984168180569,8.40177362818446,8.42328012288839,8.54927161140678,8.50354624948555,8.69304958228157 "1081",8.52536857224079,9.04886717111617,7.98977766513664,8.04596604121682,7.49160064414333,7.52799643435851,7.65662047639296,7.33064252719431,7.35417069068958,6.79745975501333,7.17963333217221 "1082",9.83370565979141,9.51569008177749,9.77722531891192,8.83356032530281,8.81723715692029,9.19666600526307,9.88221825240085,9.36351729556457,9.18777675371574,9.58585400629418,9.34051703548451 "1083",7.81517116508222,7.95445818948913,8.50257399714653,9.39924168195611,8.96756955153314,9.17891342606214,8.13085467743051,8.82822623059321,8.56139393720079,8.9347433177825,8.92056767990242 "1084",9.07624308922366,9.08711658390705,9.48397218245398,7.77619078298829,8.45480410640922,8.48425182913367,8.79036652453112,8.33111769783576,8.8353840722212,9.07756014416941,8.56251470535001 "1085",11.7068212225145,11.5300453473555,11.7750507056439,10.4298699387392,10.5798885107645,10.7561594814271,11.2841195482955,11.1364922827586,11.2200649087183,11.2692099191058,11.111509253252 "1086",9.47993316540204,9.67760304672165,9.46104969044259,10.7304462784597,10.5558361098122,10.1302885071711,9.98803419541122,10.2735183523646,9.73593441289265,9.68955160917478,9.79881421781235 "1087",12.1214064219376,12.0135422799708,12.5536490305932,9.6105895851717,10.4326131688845,10.1090249704867,10.7487275213689,10.5048081669179,11.0413683709605,10.6108467222188,10.2672257278555 "1088",8.97299212607406,8.53719976752436,8.86250671939524,9.67676195141852,9.33764417829762,9.43110165767428,9.03068358970908,8.74227557932138,8.98382794808631,9.10402387665622,8.94696541993456 "1089",11.5787254662118,11.4913679408573,12.3416755595032,9.99052335285059,10.5621494159827,10.5934472370591,11.240298054044,10.9471761205727,10.9795323195628,10.9658368743417,10.7799281512426 "1090",10.0938283650855,10.0942959920703,9.91515548384367,11.163049259731,11.0021351676023,10.903908988624,10.321357252515,10.3198761468089,10.2909184970122,10.5674361766143,10.6020907797467 "1091",9.34788087311671,9.75221620154644,9.38026925122377,10.2564741419397,10.2491396602393,9.9462077687254,9.71296302941225,9.69963483944867,9.44043316502887,9.44618696976957,9.6858467111872 "1092",11.0117305110115,10.7433920331274,10.6926678740278,11.5316157436288,11.5221548365064,11.327464783959,10.7377380042702,10.7814913449302,10.9109881747182,10.87450037426,10.8757412336833 "1093",15.1159589850406,14.8807908855856,15.3421084649212,16.8148305693265,16.3679277334395,15.5709040062567,15.2174063334563,15.1673451693112,15.4513424234941,15.5052264043111,15.4912539002115 "1094",9.66495795660164,9.06811875511238,9.96976016948034,12.1698470393877,11.7925292977063,11.5743257600347,10.6357187082476,11.1621632544744,11.4728634266051,11.4459877934816,11.2869935737354 "1095",9.35455676581492,9.33856308609798,9.4702624618449,10.1731559556145,10.0297973927051,9.9159157255235,9.26312603357272,9.71185621439532,9.24147273241603,9.55828625403578,9.69365950185114 "1096",14.2822677676899,14.0114262785278,14.0084958260391,15.8139679670362,14.9003410943467,14.4645339140552,14.0436655397953,14.1824041005572,14.1757701972335,14.482486974297,14.3333774081303 "1097",9.95871260679007,10.3843101433607,9.29209737834499,9.31862608864839,8.56798594813806,8.34552814661872,9.45175692804452,9.20206833124556,9.62296519457003,9.18963278256191,8.75113959857946 "1098",9.74334606197436,9.65656569191356,9.39727455469257,10.3756411792624,10.2347199443245,10.1250019382903,9.58037741651424,9.78308622838525,9.75539652513705,9.67358143641418,9.67009299179798 "1099",11.0354607043434,10.9528613422182,10.9806353312393,10.0878695737875,10.3859230889828,10.2321439092316,11.1519994515798,10.8190933400436,10.5478710854871,10.7421962292399,10.8318190794582 "1100",9.73825068621285,9.6622057285822,9.36058580699488,8.61130701600783,8.49939470047741,8.27080630059016,9.5891400968579,8.68671532790733,9.04551298038993,8.78812101875162,8.60293228105033 "1101",8.97009626031626,8.9346330650038,8.96058802310873,9.73803249475946,9.64183557788659,9.38539744524798,9.04094225523846,8.96293002873385,8.93809257546283,9.22074407381969,9.19616199308344 "1102",7.77582417085792,8.03506354207531,7.89012551096893,6.500187110462,6.85466595400314,6.46694048896454,7.24022255896221,7.17699871670462,7.06562328853505,6.71145259511112,6.71791173993668 "1103",7.4062246804254,7.74666425032377,7.59309652537082,7.0358991602313,6.88211086947595,6.67222943533371,7.62277144374926,6.95820855958201,6.97115740445838,7.43860513348082,7.27491277202479 "1104",10.111011603038,9.80287800498316,10.0441261655474,10.8756358283887,10.1769267837193,10.5566184937608,9.89074838227967,9.98503588060924,9.74126836218201,10.1858577301682,10.04951895242 "1105",7.44024221302913,7.49725036994418,6.96569370017792,6.15332962573924,6.4570197312126,6.22605241805508,7.07926563097037,6.62645817772809,6.37153045758554,6.41641371191531,6.68018127508015 "1106",11.6396480283256,11.3947562374409,11.4819427701949,12.9196887077682,11.8873380824745,12.0754911013451,11.4885202595013,11.6305781580839,11.6127867583853,11.7894075130577,11.6558545218442 "1107",11.110979714701,11.3491639583644,11.1727141152728,9.78910626375925,10.5043095752933,10.4294488422818,11.0305455513855,10.8093782233005,10.607492711752,10.8276504714258,10.8282752348083 "1108",10.7237223111831,10.8905711193712,11.1748283372502,10.0318855804948,9.89123296532922,9.89432626644721,10.4898943522629,10.2473718794916,10.7875414234322,10.6619192965688,10.3196587672792 "1109",9.42390676402229,9.43232263115512,9.167352730082,10.0862998220757,9.745344852182,9.74551975811692,9.21411090658819,9.26741372713333,9.26635591235049,9.48879558455587,9.41991198649254 "1110",10.0656309929891,9.93104026452846,9.69710269070915,10.6948383037265,10.3644091794051,10.3658853874371,9.85922146604785,10.0036166677146,9.89115117291299,9.90867201805145,9.91029269065698 "1111",11.2829385323311,11.4937417771601,11.6554899374099,10.2211496290945,10.8624738139044,10.7748444298586,11.2363995795167,11.2846671700074,11.2085596852217,11.1962049427588,11.1714748652468 "1112",9.47585689914803,9.40061758717923,9.14451165938165,10.3820526069253,9.8761085308721,9.82265804372679,9.37478529219148,9.43477533002526,9.43166098431044,9.47963935157952,9.73815753648463 "1113",10.047895137049,9.85674746985859,9.67137280189471,10.8360228341418,10.3388972262824,10.3168840943542,9.62196096435403,10.0163414883161,9.835715546093,10.1225704801802,10.091517279025 "1114",5.2447303988107,5.82106309200949,4.43062166511718,4.55382476248647,4.3058722489524,4.39026667116431,4.52717022062621,4.78227634053133,5.09271807264536,4.34246051744749,4.58142223425457 "1115",4.38318186180789,4.70290661503082,5.33324863235043,7.41376869620371,7.71275036501565,7.61383736342438,6.22349968702288,7.01614586013828,7.5377746833745,7.64997821458373,7.45567871962375 "1116",8.68934584434608,8.82572160192677,8.68783983126489,8.04596604121682,7.94360579430254,7.44522321742214,8.18279649342478,8.37134068175844,8.67731497422733,8.02281595836473,7.99649527722762 "1117",10.4048096005497,10.6808751102622,10.1794529427816,9.35819675498724,9.79265168242774,9.60448151693673,10.0578677412391,10.2158477587037,10.0979278833495,9.96748726292982,10.2745362626307 "1118",10.430306442802,10.2200608766431,10.5630695042497,9.42679720179309,9.74349400056111,9.74724130680861,10.2402463067988,10.1403575888142,9.93370430270273,10.4211380433142,10.1630387072952 "1119",9.88532311150399,9.90034980511296,9.74152970764211,10.6099886315549,10.150633584307,10.4893009929659,9.7383928444037,9.96329477753912,9.73949257019897,9.90594075453642,9.97711108089912 "1120",12.2623394921647,12.1817343793256,12.2886467903345,11.3242052885146,11.6905687172999,11.8783255691338,12.331877240938,12.2473555552885,12.0677384364854,12.4235694075191,12.3337135490555 "1121",9.72457434153067,9.81685125449942,9.93525173970331,11.0083687146693,10.5537255193062,10.1616073714023,9.87507106808472,9.99077858281801,10.1722058748581,9.99216161207555,10.0483008451107 "1122",10.3232315167465,10.5045455418236,10.6436424377832,9.51346498043639,9.68104383162637,10.2098454126657,10.4964292160672,10.3038198405666,10.4106764696597,10.2540209962136,10.2703633521532 "1123",7.14227631031255,6.86109848575082,8.97360736585661,10.7720471384747,10.1408245076845,9.7386129387965,9.99859569010549,10.3943356653582,11.8151488649056,11.2293512623872,10.4908242644187 "1124",10.6018630700211,10.4469058823734,10.5193670530422,10.9697300995172,11.0052275218236,11.0130987636322,10.3941550455906,10.4147699039175,10.4962319761516,10.3960558351763,10.3867303150248 "1125",10.28530957413,9.98716270679684,9.54191932670745,11.0008899754892,10.9668816017564,10.463355251546,10.1220628665054,10.1773380473921,10.2811871172608,10.3615875078263,10.2703633521532 "1126",9.58016539209422,9.89197417591852,10.0160967416213,8.85585502991423,9.33026315009008,8.84436903328506,9.61339605703764,9.58091284352403,9.11292164986098,9.55131117309948,9.67009299179798 "1127",8.84289513737265,8.98951967825297,9.10955674340865,9.88432274565735,9.40477056518955,9.50419629265952,9.13252572985366,9.2411480514298,8.94118717406452,9.11352784767982,9.06252975036268 "1128",7.24224442514873,6.98435666679814,7.09136174566226,8.37950950752199,7.59412520476386,7.94390401379986,7.44813034354882,7.20709679221965,7.45327666964275,7.89615159693463,7.7840870982867 "1129",10.271268795116,9.9553606270986,10.20312642673,11.1443143575316,10.6096547837921,10.974676851215,10.0515418580555,10.2509653385894,10.4632618365058,10.528016861657,10.4172457685466 "1130",7.88461944536395,7.41241355458718,8.15339241024055,9.03260445449268,8.34667938075994,8.71656123030154,8.437180737558,8.08452505120833,8.12256962149903,8.30616728615832,8.28869108156212 "1131",10.1396325516419,10.2568657343066,9.97785618479691,10.8029568412284,10.5345899405607,10.6534251409565,10.107500169286,10.116918000416,9.92279199295772,10.1745555795927,10.2343975732753 "1132",13.330472190444,13.309112194858,13.3401536640602,11.2156849098685,12.1197987766083,12.3808984184615,12.6598453851875,12.6617101853511,12.3632354214573,12.4418310435666,12.6490225104036 "1133",9.621340841989,9.39045887341252,9.93358770542498,8.98956773179542,9.03269530055105,9.27275842991469,9.81956304541581,9.48650721472031,9.4749977497596,9.64274205837092,9.54611230702337 "1134",7.57641756494067,7.85431831235001,7.92411703521858,7.00942527233673,7.18668637514882,7.03316008565936,7.98949285798826,7.39298705098007,7.47058029594217,7.15385172140834,7.29982984583008 "1135",9.25578257505662,9.39385307039768,9.71271127952081,8.78015717760028,8.60109397713546,8.90425836109118,9.46705054973068,8.9947265369684,9.33382721422762,9.30610345196792,9.08884410760406 "1136",6.88155947257217,7.27118736405129,7.11521436851998,6.64578118848052,6.12614548408454,6.03051736948815,6.72847132947242,6.68507068847066,6.76092516512381,6.50724974565549,6.35118973846552 "1137",10.7727156881506,10.5772358181313,10.7362691464628,11.9090130924903,10.9493278408184,11.3193880241545,10.7123002159482,10.7266294275696,10.5987050535914,11.0387029142942,10.9694511088204 "1138",13.5279013778769,13.9189959187351,13.1005922570038,12.4307972543196,12.8171046963456,12.7263176696874,13.5538522934758,13.4375052934821,13.6140558152463,13.1125164352252,12.9884358535995 "1139",9.52993739431458,9.7745186727122,9.66737329252454,10.6772206314706,10.5345899405607,10.2173166120591,9.99068182833113,9.99934999038093,9.95681345931692,9.78182786646696,9.97198085071186 "1140",6.03616389920384,6.31026098422839,5.60895207119721,4.80590313991191,4.51917288855208,4.48644669672571,5.34122790279734,4.78227634053133,5.51298978105205,4.1133546816754,4.50758419823284 "1141",11.1279596261426,11.3097384807724,11.676532099267,9.92177287435255,10.1932894135247,9.82428998187715,10.7290442661384,10.5108153526677,10.1866132554067,10.4774078152085,10.677295693054 "1142",8.29004138613078,8.34350607302778,8.73448833373387,7.26549832774664,8.14805465040806,7.58321459177539,8.14996041764452,8.09524495818905,8.09501387902365,8.0177553637922,8.02655489405578 "1143",11.227057406889,11.031758340642,10.4958820344868,12.3149522475155,11.2990583780677,11.4879152705028,11.0478086149955,11.0261876840352,11.0521369200091,11.188921745793,11.2111992692842 "1144",9.21478606815555,9.1325280878282,9.19540433545246,7.75256639760947,7.857041291275,8.6333082801492,8.3613829856492,8.75245870326797,8.7914732544496,8.53219178875999,8.13168767471038 "1145",6.86905962463961,6.89051001351939,7.70692907350163,6.48087352776947,6.05413185693349,6.41495063025135,6.85139714343043,6.30856916803684,6.62726529325089,6.96581519237041,6.51821581272864 "1146",8.65006847359859,9.21544047298836,8.40497645878454,7.85224213972544,7.33249425050712,7.01021906895851,7.24022255896221,6.79544173688354,7.86629461016776,6.78548965119309,6.42960502818059 "1147",10.3129876465892,10.4046378387236,10.2560114820477,12.2926667657137,11.3822843081175,11.4456065849104,10.7979258727724,11.0093140856977,11.0428088303566,11.3952884433914,11.3236996125836 "1148",9.49612396405081,9.63090894298677,9.74532901834701,8.63728771700357,9.05376592897569,8.95581195289391,9.51566340282526,9.25553407362448,8.90360602226272,9.39645406418774,9.70915923935793 "1149",10.5839885740484,10.4088369573044,10.2980013584393,11.9427981926788,11.669282441377,11.5796489260021,11.1661207867312,11.1735678189282,10.7685137022477,11.2681470124454,11.3110600268135 "1150",9.89603874494576,9.82189905609251,9.66937443373577,10.6466612688169,10.4644196919081,10.4644020910139,10.0142943252449,10.0149331505938,9.94144856874384,9.92899327509673,10.0700709147796 "1151",6.96609768642662,7.47167867409579,4.3153118826282,5.27816114646231,5.12418767680969,5.55881082326398,6.59377571461705,5.86887992335646,6.05759821691539,4.78196079501175,4.71305020543012 "1152",9.2000337801429,9.17852203962688,9.36799862478335,10.2494781073581,10.1124253101349,10.0655337343162,9.59263031381916,9.59040048666646,9.93215044706958,9.5841463762101,9.45711022525845 "1153",10.1149480625862,10.5240325093349,10.2318436938359,9.50878435977633,9.53888097839119,9.38981318221221,10.2980337394221,10.0007736190318,9.84069354584351,9.81569182873865,9.95127547804329 "1154",8.88039837659199,9.00069592926311,9.35064238868107,8.34837883389408,8.58049083175767,8.38591439894745,8.92386860471468,8.97747001104893,8.74971683939472,8.90768132842499,8.86627559627345 "1155",9.83051715203664,9.74559047154265,9.76604817781682,10.4713503441409,10.4210815635409,10.5905736462603,9.97338469450374,9.95009104917995,9.87506659207636,10.0340386999674,10.0012335347789 "1156",6.1874890917147,5.59141601637692,6.99173323708118,5.65130733031753,5.58662010220739,5.29989450830165,5.91401088991375,5.99287240418047,5.64795953546789,5.8180555597147,5.64910430920177 "1157",11.0924673434424,11.1938296522516,11.3365426480116,10.4845190643513,10.7908105555362,10.5799878990572,11.1702136053738,11.2521666435312,11.1806977647252,11.1246027922174,11.1737107089354 "1158",8.55273743281747,8.77193440502366,8.65991380184437,7.71230649981861,7.70514028907391,7.86981453055968,8.62968250701899,7.90724538230873,8.10056744725694,8.09185442079411,8.12707208461638 "1159",12.2294351768636,12.56667491888,12.7949613373319,11.3943826671153,11.7772349125281,11.28365891776,12.4167581801344,11.9364105411981,12.0452775731571,11.9845200920697,12.0664788940241 "1160",13.146429777933,13.2494909426975,13.3758169691417,12.0553797443771,12.3863824381388,12.5335725581151,12.8726706225749,12.9545007708368,12.9012085808887,13.0825985480433,13.0580150643377 "1161",9.61764582539648,9.44710090248003,9.28428276435293,10.3219640146132,10.0849180875525,10.0996226853339,9.50829034933697,9.60170387002132,9.57994858946864,9.8215008930618,9.79300753891875 "1162",11.573967458632,11.2957490337405,10.9757930231276,10.2168519599173,10.9102707824237,10.686995240901,11.0459006666909,10.9677023946488,11.3244257447644,11.1810369621219,11.2921478266891 "1163",11.3662062372006,11.4373082783641,11.5300808954686,10.2096605996202,10.5881614341567,10.9184957950556,11.2656578074836,10.9353143438947,11.2639550289916,10.9710721114142,11.2030130743638 "1164",9.94992422282255,9.54955976891976,9.80479496463724,10.4701472050061,10.3401223675802,10.1250019382903,9.57861847254289,9.72052278945953,9.88313130509796,9.96223843593382,9.84444472388881 "1165",10.5971806867745,10.4776135907399,10.7599344851596,9.59300824071181,9.61778851576657,10.1846581719602,10.5945426642321,10.2072414471708,10.3825097020492,10.2015334217769,10.1764811311296 "1166",5.51007576263887,5.73398691359929,5.28833257709998,4.19185126479166,4.89765324881629,4.65095609464182,4.6718025391129,4.84495354750819,5.04112969494906,4.89214603725089,4.64957162869111 "1167",11.6676085597792,11.7435717529864,12.2840840659217,10.4928369957869,10.7360223607272,11.0344018809678,11.3050093468242,11.1992131680729,11.1341576177196,11.554592608673,11.3876976104783 "1168",10.439752755365,10.3179815260993,10.1738257872197,9.64512200417151,9.80512739343221,9.56011614188668,10.4070952455997,10.155775005481,10.0413989881104,10.0988506168497,10.1708953378603 "1169",11.2050695073126,11.0878297410825,11.0922264168121,11.7997639070047,11.3964854947877,11.6294961587322,10.9464534132478,11.0036454073282,10.98478777422,11.1605616761249,11.070701032289 "1170",8.26187715194123,8.6437393926102,8.04022746166304,7.36256437683614,7.52659786136667,7.88243133137374,8.14520773187748,8.1373426154091,7.75790763707303,7.86265944663408,8.02655489405578 "1171",9.43654656252863,8.97599275483631,9.26323430361466,9.99889123618083,9.71166055520175,9.76604393736077,9.19586577983689,9.15168004205355,9.31248243122282,9.54781093949459,9.48799129901826 "1172",9.75011201235896,9.60038747689321,9.79015676702304,10.4677379120527,10.022184432532,10.1641868382193,9.61682812679795,9.6295806723283,9.67592075871103,9.86011173027214,9.77985639441054 "1173",9.73484373990286,10.0880247284978,9.95343051476647,8.98956773179542,9.19863364616447,8.72707399134059,9.57332873073622,9.50669123949417,9.56197422473979,9.15553688566986,9.39136966548564 "1174",6.05883989330874,5.96091715432509,5.92211619827359,4.87732981549012,4.95881094319955,4.85356377363824,5.44531198202201,5.36813953141026,5.14207053784841,5.08331287740239,4.71305020543012 "1175",6.6077271848552,6.74769301624946,6.67494907374409,5.61488371433785,5.35616394241025,5.68598866291392,6.12795561899001,5.99287240418047,5.61552538792453,5.97804653447498,5.47462492252508 "1176",9.87762004879581,9.60332227471692,9.23378153874019,10.6284414849526,10.5043095752933,10.662575453039,9.97338469450374,10.0036166677146,10.0656949878851,10.2048704486405,10.1619128298968 "1177",9.9861943815991,10.0562527664604,10.0223727452842,9.26411688032526,9.33764417829762,9.61771749756082,9.84904390491589,9.97493080169509,9.87991082937686,9.80400303037394,9.93423070704808 "1178",9.15739664516042,9.07870400315051,9.03078131729621,9.86431090946723,9.70596921259255,9.73514708500664,9.29775496040097,9.37014280166038,9.22379537423171,9.30610345196792,9.26491018637581 "1179",11.3327977960971,11.154361593521,11.1881469329876,12.3362385470426,12.2806120324376,11.7155378086985,11.4174982756256,11.5331120946747,11.4366133749302,11.5210774149316,11.6976282013851 "1180",10.448097858424,10.3978937193852,10.8006652329892,9.43915044082528,9.78006710770127,10.3249753518252,10.377056172558,10.1748178865505,10.1982950044598,10.5854695926617,10.4172457685466 "1181",13.3698472708112,13.4985163244892,13.7984267654928,12.3470927857196,12.7010450574616,13.0434907426027,13.3948092810775,13.3831491397269,13.3045256494991,13.322915548817,13.3159691243655 "1182",9.0408024981148,9.28106792958514,9.06159116894216,8.48821887321316,8.12545757370607,8.12990615109811,8.58829596557315,8.74227557932138,8.6661338330524,8.70566638684017,8.63576811638524 "1183",9.84638966246143,9.99052885066387,9.66536937055102,9.25016134975435,9.2568946714634,9.03125530386184,9.71296302941225,9.60732250892647,9.65157585822036,9.51771083279383,9.74268337950114 "1184",8.65728994392668,8.98951967825297,8.94083577772078,8.23379005859717,7.89095576317022,8.0143581580013,8.82045931577502,8.21801139525808,8.45711162944983,8.39464934008847,8.38844231975786 "1185",9.84796734791309,9.68869873254589,9.90160071003152,10.6845010434063,10.3091772660013,10.6607500280965,10.1172249523826,9.95744137163877,9.97654619550548,10.0440102103508,10.1091488317724 "1186",9.63967522847076,9.64094087978708,9.97785618479691,8.9347719979477,8.87588773712104,8.5449458429654,9.22539794998889,9.1695169873959,9.33147111720516,9.25978238344177,9.17175171967649 "1187",12.8559328624732,12.9761790828749,12.7218972723734,11.7944866971422,12.2822062706415,12.4097133046208,12.7250867566715,12.8877898480668,12.8912481953947,12.7118520072311,12.6829692992438 "1188",11.3248898966401,10.9626056904458,11.8140056165197,12.3581911778227,12.3335440426149,11.8177743820823,11.5282385945925,11.4779653838325,11.7291906966465,11.640884509945,11.5397462159437 "1189",10.905145270141,11.2011111924106,11.1384582509221,12.3176302742757,11.5952866847689,11.7115758738717,11.1772029637325,11.0682069644295,11.2302153083042,11.4967817825905,11.5401795148805 "1190",8.91695021626861,8.65793230088287,8.40015972467653,9.90049201893844,9.4666680837363,9.41386092165446,9.1563107349151,8.8536731198127,9.11017500544359,9.25549663245181,9.28159691700924 "1191",9.48399794065217,9.07024203295857,9.15597743541676,10.0383948343816,9.54526994034445,9.79462877482363,9.18896388021192,9.30478386563481,9.21870462899577,9.43864652014548,9.45527292963567 "1192",9.07084709104818,9.10172147692517,9.16451731092107,9.68092864323664,9.7248536531977,9.55815590118948,9.22539794998889,9.14396754941021,9.21359584278956,9.1873846420103,9.18067608205543 "1193",10.0061142181453,10.348906896857,9.86015485401146,9.16048459977519,9.41643535123116,8.92571013439452,9.85195911558606,9.68730900779782,10.0122814173939,9.17154871505966,9.42179486775045 "1194",8.13302640037837,8.1994818362835,8.12446508314429,7.26549832774664,7.3024800928342,7.53601635244709,8.0719650006624,7.78667569975054,7.5377746833745,7.701446188685,7.59619754824477 "1195",3.54830022377166,4.19235554008301,3.99458687560867,3.54830022377166,7.17567776690464,4.39026667116431,4.60239513168466,5.67318746075466,6.35268776105888,5.24679677984632,4.58142223425457 "1196",9.38095545049236,9.52809857312526,9.35064238868107,8.84475079942027,8.78519246584893,9.14796235305688,9.40884331702423,9.38548493166471,9.27619015969564,9.45555741469024,9.34250643438144 "1197",10.2594628304364,10.0869768618226,10.1133760567645,10.8508899199709,10.6546610950088,10.5477564294825,9.87363737115395,10.2047730397324,10.1931147924613,10.3495776116464,10.2651301802051 "1198",8.48534504201373,8.45503594148765,7.94413231320583,9.26411688032526,9.08918546163785,8.91655559281778,8.72504841042737,8.75920768081494,8.71758554292853,8.44824945755276,8.64547463381815 "1199",10.3918901606411,10.2790567853123,10.4891011972721,11.2398884774823,10.6566291506593,10.8883934246023,10.4090757824377,10.2687995650707,10.356101349592,10.51284022559,10.5059876480203 "1200",10.1149480625862,10.3593590684624,10.156811391495,9.47558756262761,9.82101063092539,9.6603710993719,10.4080858539301,10.0850606581397,9.88634460567979,10.0808011723378,10.1953126368289 "1201",11.1606968506398,11.3222585570268,11.296973000071,10.5924029252478,10.8777393718312,10.5308669612027,11.1996873086561,11.3658935725148,11.1185322010725,11.0937368523173,11.1953304865173 "1202",9.08697485766923,8.73492719904976,8.74970806707209,9.93054805167903,9.64183557788659,9.76264346070585,9.18665588399745,9.11006151454861,9.27863827531405,9.6162505301205,9.39903636722169 "1203",11.0451196251118,10.7333821205214,10.5544342931234,11.9736893156264,11.5355844355685,11.5718996307459,10.9512182908754,11.0682069644295,11.1123715390299,11.3079968590019,11.2787082727775 "1204",3.97008655127665,3.92219398459048,3.54830022377166,4.64558758720875,5.43778714177974,5.12270292620239,5.41158127901156,5.11259910555834,5.61552538792453,5.42394699629378,5.02750813069502 "1205",9.78676777064552,8.65793230088287,9.85840182585167,10.651976524845,12.5058173163394,12.3438378430134,11.632776746588,13.0032504498349,12.3960080053116,12.4834108764721,12.5477225782149 "1206",9.71250021386941,9.41739132161035,9.54845812282448,10.4677379120527,9.94697979079882,10.1103631647515,9.72414378909703,9.6677244488771,9.52121042648742,9.92630026024975,9.66374299930395 "1207",7.26142316809844,7.27859059456544,7.5674808549099,5.57739919796435,5.86948201497142,6.36093948153758,6.20491650857206,5.96897347115688,6.0809226256391,6.71145259511112,6.16120146958576 "1208",10.9499045614928,10.9285010524524,10.8124824801841,11.2857433905926,11.3846609017903,11.3135910990153,10.5901851157763,10.8822406886781,10.7884003849976,10.8696029616542,10.8757412336833 "1209",4.78038542738455,4.3753233849767,4.77805840635708,5.65130733031753,6.10256195383644,5.77381127177675,4.52717022062621,6.54957034296888,7.63299848733783,4.43350024566452,4.71305020543012 "1210",10.4584618011037,10.3480324542157,10.3845854797972,11.372011737702,11.0877691015276,11.2470224010938,10.85715425279,10.6678072208303,10.6759308476296,10.7421962292399,10.6332948380191 "1211",10.8281142544558,10.7360582293955,10.6728583066878,11.6441756643343,11.3351405587238,11.4085605500534,10.6650188571229,10.9059859489097,10.9352344900906,11.1386288840981,11.0194110620427 "1212",10.3940514521804,10.4974652866589,10.9281264948405,9.00959064307579,9.73978515594151,9.60827563862662,10.1147998965607,9.79626385321318,9.73236745498598,9.95168312721222,9.95387996353659 "1213",11.7167838722901,11.593765056039,11.7685324905589,12.2994563688878,12.3021441690316,12.047475181906,11.6370075310053,11.6538363689371,11.5024784199876,11.7838403491404,11.6937385592517 "1214",10.9586921510524,10.9072883096605,10.7841414137069,10.1834707262377,10.4966391140057,10.2419447695418,10.9471350743827,10.9180903286298,10.674072983364,10.6349607517033,10.8438034445991 "1215",9.58016539209422,9.09548034894743,9.45873727072849,10.6593851335569,10.1295318382984,10.0530617756655,9.67065862045937,9.6478702538566,9.67406259580859,10.0625229945716,9.98731711960916 "1216",10.7693897368426,10.747376630369,10.7720887242812,9.97364051836223,10.3607921238584,10.3005641322886,10.921696593548,10.7765136781285,10.480372756211,10.6570550677839,10.678083415466 "1217",8.69987454294599,8.79779793181575,8.45227747610215,8.12773734675432,7.76491918019003,7.79169195634195,8.2463015313543,8.08452505120833,8.35400538722234,8.28106062717419,8.40377989123346 "1218",10.7501152595749,10.8223247665398,10.6718606513826,9.98379391490821,10.0160649996296,9.87870493208032,10.4238437609475,10.3997412244506,10.513997468177,10.4105795183639,10.4331982959022 "1219",9.78017201239217,9.61063324416061,9.36799862478335,10.6772206314706,10.1810348757136,10.2887929227838,9.95858487031001,9.78804195859083,9.81731445243123,10.013886452588,9.9885878114324 "1220",15.0283279322412,14.7682567157446,14.987714944544,13.9518543403052,14.0572358704664,14.6403336304285,14.8206995300825,14.8281836013018,14.8060958146543,15.0467819124761,14.9363282920712 "1221",7.68667842516418,8.15610876108225,6.73808903630757,6.53803052029323,6.21660807334217,6.14258578248584,6.88628096459316,6.95820855958201,7.06562328853505,5.88898252005338,6.17960026676426 "1222",8.25712903402587,9.05745519234753,7.76813503017998,6.95494779097975,7.28211410056228,6.99860798635178,7.66993933350877,7.58056746775892,7.40007257512372,7.19946355001097,7.20625676960173 "1223",10.3799448231269,10.0995012963648,9.89135036887473,11.0532484518123,10.6605572252021,10.7406897080925,10.0207853266002,10.4527110823041,10.4195749019442,10.4230494993134,10.3476551610673 "1224",9.64513039569538,9.72013136653055,9.61849344809905,10.3510144997968,10.4199233164838,10.0192661505328,9.69033804953287,9.95303567479728,9.82235626123,9.75930640372907,9.79155220880873 "1225",10.3832124651012,10.1783620425922,10.5844340516862,9.87889245201439,9.77645125249346,9.83242208775164,10.4973603560408,10.135181610272,10.3526208618046,10.3784321576861,10.0879649566605 "1226",10.2957511877289,10.362826362721,10.1367042262224,11.2939262863982,11.205367807105,11.2948828356746,10.5377466294182,10.7905726962187,10.8156205391292,10.77399544299,10.8825916476118 "1227",12.2342681521315,12.3579832562218,12.7827685686145,11.1420497309778,11.7228600789135,11.6893647670261,12.0639294536278,11.7673260133269,12.1897814663116,12.167519943788,12.0956607782613 "1228",11.8581219298148,11.8415659314066,12.0542015353804,12.7820031933228,12.634205853922,12.3540400561174,11.9536023181283,12.003269615857,11.9757173791751,12.0878328665968,12.1176018007157 "1229",11.5528437668125,11.4269943871072,11.4179326726433,12.2820793235474,11.8649584870967,11.9117087370933,11.2846589801702,11.4296382655883,11.4877469148885,11.6101757844104,11.6008386299506 "1230",11.7076902762597,12.0035821765096,11.5723940307558,10.819112147973,11.1519579517654,10.9517200116881,11.7766217604596,11.6351682412677,11.4572847817933,11.3141895212414,11.2493291557905 "1231",8.27602819164793,8.28980478532454,8.44294080738284,7.32023670711153,7.57753959933627,7.39315721180163,7.81482359302033,8.03527071004817,7.7150538741348,7.58292930028579,7.73634128687924 "1232",9.25340302008664,9.331500338693,9.26852529918445,10.295036975445,9.85911546353578,9.76264346070585,9.39890949147807,9.53251505562235,9.52533905528631,9.59436195550459,9.5936540712783 "1233",10.3423847789868,10.0711668176614,10.2439782036188,10.9782182773736,10.8270871436864,10.707476119859,10.2905328303535,10.3107230111134,10.3870535088931,10.3585943951859,10.4322647796796 "1234",11.9502241072085,12.0687197237903,12.0353207327828,11.0975533405301,11.3929482823739,11.4545896485423,11.9409963737027,11.9957937414065,11.8460039759187,11.6628881034982,11.7573595425238 "1235",10.0159719102836,9.82692925178751,9.95014227992265,10.5267949782337,10.3315244458874,10.2781160720051,9.90344972132088,9.96183365162647,9.83405238725295,9.93570389487805,9.96295880276647 "1236",8.86176877111159,8.97599275483631,8.94744998685894,7.88880807582996,8.10827358187905,8.34097001189902,8.60568512811682,8.44856347776363,8.40872034047714,8.47062369958845,8.5067969113425 "1237",9.43024051373411,9.331500338693,9.20094974180395,9.93927016145086,9.71166055520175,9.87556025834046,9.47841524627442,9.36572918225892,9.57994858946864,9.39450657415835,9.22879629003822 "1238",6.41344763352842,6.56449352089582,6.52155702075574,7.61954148426211,7.24048839399441,7.37537160534035,6.88628096459316,7.1253766513517,7.26763444943542,7.05799252038243,7.09663841152436 "1239",12.1704554437106,12.2546974063176,12.6049874390868,11.4251303746809,11.741522756035,11.9570355228494,12.0888523537309,12.2431521593269,12.440946940606,12.2242494814853,12.2236437301319 "1240",11.6432864358658,12.0572634230467,11.7516348700237,10.6688549183154,10.7097245464061,10.6561763341471,11.0648675393043,11.1672430836628,11.8062711172482,10.7836976662965,11.0138059749736 "1241",12.5583548441884,12.8495361180787,12.0157964634402,11.1608138757761,12.0719367065064,12.1190154109318,12.4233867175235,12.3953926393745,12.1943252156491,12.3423237913135,12.2611869098089 "1242",11.4428427241325,11.4524387790428,11.5611235658226,10.5746001851024,10.9629108250891,11.0964863535385,11.414050952267,11.453224571466,11.2302153083042,11.3427422420949,11.4383228352219 "1243",8.25236519168516,8.26032284797954,8.22053217616702,6.99600080825042,7.93712914351463,7.33912187219212,7.87926285401679,7.81939954224253,7.68575618862043,7.6887514157165,7.74239716239797 "1244",7.93309723216525,7.99084222026797,7.97039270667412,6.57487622139197,7.0961370359168,6.82519262173196,7.25801631444024,6.88540467353742,7.38188843017873,7.22614562648883,6.96749404277538 "1245",10.0327156295122,9.88113354113512,10.1695909669438,11.0264884972222,10.565295737712,10.3737071276229,10.0741863598663,10.1037295116088,9.95222115449697,10.4316198445197,10.389618719715 "1246",10.938844259133,11.1473422848682,10.6313778696474,10.2282840777009,10.2608313226478,10.6734797585706,10.7448122974224,10.691800968289,10.8587862768283,11.0798710889009,10.9303160845819 "1247",10.9797104134793,10.621327181687,11.9332805130371,9.7598617605293,9.43030965707937,9.87398534648784,9.95587760066796,10.12607871221,10.7189157183707,10.0551463701323,9.79009540862755 "1248",12.5909840643641,12.4679115115455,12.4634196472956,13.7696184715395,13.8671192284605,13.6896616977272,12.7414867054307,13.4101815430408,13.1811110776528,13.2948778759321,13.2754252161453 "1249",11.5284580278923,11.4245080422927,11.4847859125187,12.117018950237,12.0825888060059,12.222251587791,11.5867132787928,11.5042976257335,11.7456475499761,11.6649085992977,11.5912527596897 "1250",10.1279925416601,9.93919270359032,10.6808148070839,9.46596067335758,9.57054642341024,9.5698775726463,10.2144299738053,9.76644304813458,9.94453466948589,9.97532486089428,9.91564669070588 "1251",8.59847814381826,8.81309607524378,9.19262361209499,7.93848457611293,7.76491918019003,8.48425182913367,8.48683411980761,8.33564284497309,8.25792002520464,8.50354624948555,8.52794456069842 "1252",11.7210940918756,11.5153218381499,11.7060697106735,12.5605290332162,12.0488959554502,12.2748098619195,11.599343769324,11.6886979228127,11.7084655261626,11.9344794341731,11.919350255005 "1253",9.61394131663761,9.61354728506111,9.56575132749214,10.3378822169304,10.2801092676933,10.0613883859812,9.58213421758047,9.6677244488771,10.0442786743605,9.8142358992996,9.84304040901633 "1254",11.1090075711318,10.9992680980995,10.8771007161194,12.0171735275774,11.6575379898303,11.4482544738883,11.0742582744487,11.1985930653893,11.2981303651923,11.2996984069762,11.1731520727936 "1255",10.4769312957397,10.0346758568488,10.7505148860811,9.49465064054292,9.19050335100519,9.74379615190457,10.1256806828222,9.81418870386133,9.7035096618401,9.95828924213362,9.88731381630164 "1256",11.0703397615562,11.3355534340245,11.4853538692157,10.4892780395284,10.2608313226478,10.0751601322783,10.964072753139,10.7597963035378,10.5650155548486,10.6521743814042,10.7107852421515 "1257",12.1876877529267,11.9154341972883,12.0557319714672,13.4671709139354,12.3543060355331,12.5056255895249,12.2059674026924,12.1929781161686,12.1188259342387,12.3618854222867,12.2959829800989 "1258",10.497179361647,10.5772358181313,12.1784660408885,9.17237412305056,10.3894777502856,10.2173166120591,10.0890875690555,10.0552267826601,10.9375594245548,10.2984313350164,10.4443536209568 "1259",11.5348380810002,11.2543485376204,11.2435858986783,12.0026852576632,11.8265786343268,11.8255346489378,11.3831524644014,11.391079247953,11.3790461791441,11.4146301850036,11.3545760747897 "1260",8.42314272660274,8.55854245951878,8.73448833373387,8.23379005859717,7.6347679267,7.57545548007908,8.29430297314551,8.01282604655342,8.24293726666571,8.23821723466124,8.00154909071929 "1261",8.70685116156997,9.12845838291325,9.10364761472539,8.0394789443579,7.35215873173572,7.57545548007908,8.3613829856492,7.91936722856588,8.14424013099273,7.83413971816388,7.69945890348026 "1262",9.90818848237026,9.92166641344763,9.62881427877167,10.8972813957797,10.4233952713313,10.5026105757073,10.3033677506421,10.12607871221,10.082601989524,10.1858577301682,10.1173037075177 "1263",10.1550078703292,10.1635276167627,9.75666726238488,9.27518484655264,9.00204978037968,8.89185528130567,9.74311141440345,9.49056668562129,9.41618006452381,9.29570585889079,9.31237331395615 "1264",8.35813039393505,8.38847925203875,8.15339241024055,9.22183834379455,9.04477335227232,8.82492748996296,8.57423184763495,8.62523560841052,8.70307163158556,8.67388873149542,8.69616606302557 "1265",11.1279596261426,11.1762025239237,11.7473793579857,10.2038815847598,10.6497291768104,10.8057333983949,11.0516169580669,11.0149605762581,10.8661278873239,11.0640345712567,11.0531991221861 "1266",10.0243680665542,10.0193776357435,10.229133216667,10.6604404070044,10.6887203126748,10.5972698085577,10.1111546508333,10.1050538003106,10.3029911186138,10.2732216650735,10.2588252088045 "1267",10.6801085223534,10.6450150141897,10.9480419539114,9.91824779932998,9.9275495384566,9.76604393736077,10.5761518396319,10.2449712569747,10.1185678075539,10.27216164005,10.2598779530818 "1268",8.74463002246685,8.63228349486675,8.53368954417129,9.15749683279265,9.23070389955192,9.1269528188181,8.83821783785095,8.80232180975964,8.69942018758417,8.9347433177825,8.70237886857615 "1269",9.48399794065217,9.40398798146943,9.80661433656907,10.5957166167829,10.0191279614784,10.1157035608539,9.74781459613028,9.93527706262413,9.70896466756787,9.94371564034381,9.79446140192259 "1270",10.7185577477071,10.8323634764038,11.4244630099573,10.28959071822,10.3619988170923,10.1499423432056,10.9532555732543,10.520772069299,10.7044259103142,10.6812138317335,10.6542625952102 "1271",10.3311489781317,9.97134931770987,10.1934255307891,11.2356466600647,10.7313613459614,10.959907867682,10.2424695209428,10.4370233563097,10.4578727802757,10.761963964562,10.7465221291098 "1272",10.919469866666,11.4327792480068,11.4676423980379,9.83843299781763,9.21208306202513,9.51838087018148,10.2721522777335,9.73428188217982,10.4173554347892,9.78033732820763,9.42930190067775 "1273",9.49411002848884,9.29020407679835,9.51990668070702,10.1612766117641,9.80335174280761,9.96703989913406,9.31264742877095,9.60732250892647,9.53969687027732,9.78480432939591,9.6168498143901 "1274",7.25186604368027,8.24910946245689,7.43203799463155,6.72965577471788,6.32190141837547,6.20565743408888,6.94257508980405,6.87289813241104,6.44444218690037,6.26793748710628,6.92527032226438 "1275",10.6130391652805,10.6690205188292,10.7180202078518,9.40429110566902,9.60968288486104,9.35636072253856,9.81807306415571,9.88065031937561,10.0210785754231,9.882513779804,9.67641514593705 "1276",7.01223347758065,7.08934460638317,7.33404463366619,6.17776213550542,5.62125976688193,6.24614906756788,6.49114145155366,6.0621316163943,6.03386567505439,6.36866909887184,6.38308961259456 "1277",9.92771608373529,9.80160097059244,10.2168726421385,9.43422183831476,9.37877093208495,9.75067825124529,9.90204397252815,10.0414592114259,9.86206851076312,9.92630026024975,9.86811121210944 "1278",9.20742879504468,8.86783922639323,8.76850936194554,9.9599905041736,10.4117894415556,10.5107404654921,10.2144299738053,10.9263535629105,10.7763281293437,10.8512656044963,10.8515053151547 "1279",12.8565207021798,12.7742388570724,13.4041767561984,11.65321513622,10.8547800262578,12.4546525063007,12.0658136793444,11.7492320170808,12.209154712907,12.2838370430546,12.3922462234385 "1280",9.31858937912827,9.50474436298484,8.87990068659424,9.93054805167903,10.2294404642186,9.62522672492632,9.49156183129003,9.63142010423188,9.46643397093259,9.49426154551938,9.57854304933011 "1281",11.0676344197206,11.1678031356892,11.2734889634572,10.3418344705293,10.4856100712145,10.2073463884529,10.9512182908754,10.8069391865803,10.6468615515694,10.7702463741414,10.6953053648716 "1282",9.79497027358094,9.92284148202326,9.7049281020706,9.06485666059359,8.84167720621894,9.28466383432026,9.46514769454361,9.35017423809081,9.39377208808905,9.55828625403578,9.43117256769855 "1283",11.2433311584526,11.5000529769845,10.7391295711126,8.70436204206947,10.4360547504397,9.45447601338872,10.370972555245,9.86510168297408,10.5171099683038,9.88806034180597,8.99329599817664 "1284",11.1556104721619,11.4216018803558,11.0085626975327,11.9054571496063,11.7466129483651,11.589757112748,11.1973972833937,11.2455777420908,11.3824633642684,11.2467227463624,11.3307297064242 "1285",6.53003463405643,6.72605700916447,6.96569370017792,5.65130733031753,5.9248799958122,6.05368293120384,6.00369290325292,5.99287240418047,6.81648699521578,5.91180974276632,5.87340967120574 "1286",10.8055601337143,11.1402886554941,9.95671126992665,9.80637248581683,9.55374475971284,9.88027470144498,10.444268175037,10.3548058979122,9.76590255325414,9.96486523712645,10.217157105844 "1287",9.06543081559841,9.01839959104677,8.9703635403395,9.69129300532675,9.69834564731097,9.4523666608158,9.21637539619965,9.23873636180725,9.16678326938302,9.28102208593764,9.26910001109921 "1288",10.2063369857851,10.0237651384544,9.79932303707462,10.9177246735338,10.3894777502856,10.4273029943091,10.24911867716,10.2097056376272,9.96595443435705,10.2486418032412,10.1323272312465 "1289",7.95673592491526,8.16409270639909,7.64299312979523,8.77626583760822,8.7301479243018,8.45502781542909,8.05178645057224,8.26147500951268,8.60498925706414,8.23386186678073,8.41138781637634 "1290",9.77022146767524,10.2008159154327,10.1948153739499,8.92777367734625,8.85545904258861,8.85399230704855,9.72095812175693,9.31168419351693,8.93809257546283,8.96918084562731,9.27119036602632 "1291",8.88962362732356,8.87271426506648,8.02778010508308,6.94099493341601,7.25100929258247,7.1531134753391,7.78454830776984,7.36660049554979,7.91125597625291,7.16309172878793,6.80220655170267 "1292",8.81087906011241,8.47762229641309,8.44294080738284,9.22183834379455,9.20940319848552,9.2413362508916,8.82045931577502,8.83463021082853,8.7742215920687,8.95338879710339,8.93118487410447 "1293",10.5658898116651,10.9084750143593,11.1018884008958,10.0154827527071,10.2201546195229,10.5157984767902,10.7393130702313,10.5217639715129,10.8522288857406,10.6116849857639,10.6144889261195 "1294",11.227057406889,11.092535972423,11.303429067383,10.3897088923124,10.7535981281017,10.3980172056197,11.1008444597202,10.9993792325619,10.7909742051963,10.9632121139478,10.854992618053 "1295",8.11213690925085,8.05237791583463,8.15339241024055,8.84475079942027,8.7264024121503,8.76157255565059,8.46031068110464,8.3624988996433,8.39974441998761,8.48168174993653,8.46720050786154 "1296",9.59902737589538,9.81685125449942,9.72238155023838,10.6999792873015,10.6248134430009,10.0106920480513,9.9062571150998,10.0850606581397,10.0428395499105,10.0088040863647,10.1414952962453 "1297",10.2606477847069,10.0880247284978,9.91346808745647,11.0100254045831,10.4867167778836,10.4612592907329,10.1554813905079,10.2133940479213,10.2175567746873,10.3088067026996,10.2880154472875 "1298",11.7780557423255,11.9724317058355,12.0357085356238,11.4564519667953,11.582403947486,10.9162023982711,11.8170825719037,11.8048856276057,11.8439398315118,11.7931070561574,11.6316616506351 "1299",8.88039837659199,8.27144949870958,8.30543844396847,9.14548344938263,9.39064709862759,9.84855001793593,8.96485755259403,8.94528616311578,9.04838552577783,9.32871758023438,9.18289856644801 "1300",11.3203515582154,11.1407936315133,11.21647484214,12.2364605604275,11.7498428355686,11.8218639360329,11.0767521806462,11.503293684958,11.7020983098059,11.6143640090064,11.4754988300762 "1301",8.5293104051702,8.64658918543041,8.1186091113731,9.45383596635333,8.84858460251429,9.14796235305688,8.89305127716452,8.74567795838452,8.82536894002529,8.82040591283238,8.6992758154453 "1302",10.6880569462122,10.4903501079796,11.4356735219617,9.50173481716764,10.1309482664934,9.83566213434043,10.205340963998,9.94861647886041,10.1616366463112,10.5829071518251,10.1787094056932 "1303",8.96137358383928,8.65793230088287,8.81265593589474,9.58413652749742,9.1741038886182,9.44177336124793,8.8702173252855,8.87867837937259,9.05125235744822,9.20527235569872,9.19395987932296 "1304",6.86905962463961,7.1552611617466,7.38388137229294,6.24855060583191,5.8408949819472,6.32372596223563,6.8156305051907,6.25098415102327,6.170418516415,6.35238182822043,6.31853756118564 "1305",10.3277611003814,10.2753819039316,10.3906622801321,9.88793161577168,9.64183557788659,9.85335343669308,10.3224085039934,10.2182973025369,10.0471526226659,10.2432424747344,10.0808339571677 "1306",5.57656653888652,5.4021071818575,7.01730337161271,4.94419410387592,5.22247567483854,5.21461805136393,4.52717022062621,4.90404046812327,5.51298978105205,4.78196079501175,4.93274810645829 "1307",7.81517116508222,7.74133070892069,7.30328561378923,6.51923699993902,6.32190141837547,6.56544198967405,7.41683246889601,6.93435403872264,7.05415311319903,6.26793748710628,5.94046067728516 "1308",9.93069700104697,10.3593590684624,10.4289590913207,9.64725306850123,9.69834564731097,9.89432626644721,10.4110536037132,10.2268380946062,10.0078626350706,9.95565042599788,10.043418102403 "1309",9.37001467854785,9.08291643111487,8.43824966422195,9.64725306850123,9.89956739791667,9.79462877482363,9.18202877609017,9.41355144952952,9.45565722320617,9.52662921485585,9.48078443943427 "1310",9.34788087311671,9.40230376914334,8.71135291149387,10.3679096592123,9.72860104721336,9.89277172494237,9.50087940174002,9.54232543631025,9.64968603948534,9.7037750986995,9.70297932059043 "1311",11.0285216648796,10.8632916200766,11.0203680242549,11.7988058490109,11.5366534221887,11.5767478161165,11.1093957587995,11.11562144628,11.2768658405042,11.2353463335056,11.2588378497062 "1312",9.51213498113546,9.40567022875635,9.27904938924421,9.97533772255507,10.0761214675943,9.89897986278745,9.35847528620145,9.68730900779782,9.73058066217688,9.65905548745887,9.60529858120061 "1313",12.1789406634652,12.2012320800865,12.3016041897172,11.0548544234563,11.0993911918817,11.6064482778207,11.6802874895389,11.5414497901354,11.2546617622795,11.9115182869418,12.0745778901211 "1314",10.8929711375291,10.9897690807866,11.1860521542528,9.96341513786381,10.7172872540546,10.2010798198642,10.6169921312796,10.7014629230717,10.8571497213705,10.6619192965688,10.637350839092 "1315",6.56163112081637,6.50195896005358,6.1044136676551,5.32561057076274,5.35616394241025,5.80182700427773,5.60160582989158,5.57941184941936,6.0809226256391,5.74311119877536,5.53547894831993 "1316",11.1511451321878,11.0125728784007,11.4291938477272,11.9094569697067,11.7599470874895,11.8218639360329,11.3781062693287,11.1855089545995,11.3071486491151,11.5680428109863,11.5006518625286 "1317",9.51213498113546,9.66079778602737,9.97946994872,9.19586296104993,9.16583365922006,9.22165349366537,9.76338200873373,9.65512162731618,9.34788350791345,9.44242167414175,9.54783749447464 "1318",8.208765364251,8.19169250510753,7.83400743326457,8.76059450770294,8.97705535991072,9.10563252592888,8.59875464011165,8.54156684299729,8.50811050710429,8.70251998450527,8.71779464807795 "1319",8.92893098899866,8.7693223302685,8.21505537499727,9.51813045684416,9.59333364567633,9.18654846013466,9.01255332160039,9.15424173008054,8.95656126357959,9.17835685398835,9.10534288577699 "1320",9.23663524358812,8.85311435750612,8.79442564373893,9.95827513316159,10.2121474656439,9.75581835863199,9.42263668607332,9.48650721472031,9.72700042140811,9.73026484944168,9.65576598539054 "1321",9.52993739431458,9.76930197643434,9.39243632798891,8.43982074822052,8.80308299104538,8.77514393258782,9.31898312218551,9.08879277526323,8.90677549196692,8.69303932862712,9.02832856055029 "1322",9.31402970351884,9.55563332619388,9.40450158918026,8.97945098020027,8.68454588445981,8.62957709773568,9.19126818707572,9.1720472001699,9.23896062811224,8.9158534215697,8.9907607826124 "1323",10.7142397754794,10.5742479181925,10.819706807753,11.3739428973014,11.1802787155515,11.2292732533917,10.6238299562649,10.7856263203507,10.843990006794,10.9918251146602,10.9790712012658 "1324",11.6120634877231,11.6106324432367,11.5067721921183,12.3219714929589,12.1361117653936,12.1269700573148,11.7262833292927,11.7300502375739,11.6975330311841,11.7927375284727,11.7755065375385 "1325",12.7019946102407,12.5619694844659,13.3553019111792,12.0465281297691,11.656554956116,12.1502489673179,12.6823314014234,12.2512477729214,12.16651523599,12.5810112834839,12.3663343854166 "1326",8.764826565826,8.6437393926102,8.67991606182067,9.60621430362675,9.34254395417913,9.22165349366537,9.00208983845326,9.07533865673362,9.06550160007034,9.00281461302748,9.07215428484022 "1327",11.6509877180704,11.7150325811668,11.5106832224934,11.0354637496844,10.5547812005669,10.5076971237749,11.2738318313022,10.8651489068211,11.0173907536747,11.1950868414312,11.1731520727936 "1328",10.113637102731,9.85428603024051,10.0332904658835,10.645595863383,10.7827238080154,10.6905780852651,10.123269813816,10.3559187016419,10.1918168273526,10.4570295341676,10.4517428639447 "1329",9.01574600705652,9.07447922798641,8.53368954417129,9.73202126256383,9.56217006221788,9.67852975980469,9.15394981783222,9.19213059418979,9.14815977020412,9.5069354496846,9.53223599540591 "1330",10.2899596252677,10.2095079371664,10.2600003697729,11.0944334361893,10.5984363115544,10.7171694755424,10.2178236410965,10.4733661331423,10.3280194273895,10.5786262759457,10.4627562375366 "1331",11.5190822849815,11.632700168845,11.803112733348,11.0881733122177,11.2510210211988,11.208806693382,11.5910811228922,11.6864883010651,11.4680466531909,11.641705470786,11.621460307856 "1332",9.23180840892944,8.97599275483631,9.04318440287859,9.76967596707777,9.55796356436469,9.35861519639051,9.11563957935575,9.14911379346811,9.27373787982762,9.2576411005459,9.28986840865424 "1333",8.13302640037837,7.41241355458718,8.34608353800229,7.0358991602313,6.10256195383644,7.52799643435851,6.46037622252273,7.51807320385568,7.63299848733783,7.4156433013633,6.70544702797725 "1334",12.4753142564524,12.6293702519034,12.4665871214207,11.5770284007126,12.1262041055827,11.3688619665106,12.1454831265829,12.3664235689139,12.1136950317233,11.9317970136005,12.0823341852634 "1335",11.3254561864051,11.2501423844014,10.8779661053478,11.8794110540579,11.8521352047411,11.5916744774662,11.1887771663575,11.3932486683856,11.3971783402345,11.3512993897342,11.4205465141754 "1336",9.47993316540204,9.1587047342605,9.45873727072849,8.60693096286727,8.73388372286726,8.66646094446664,8.9675491380424,8.81533223897403,8.8812223607632,9.14861984997997,9.15146757110382 "1337",8.81087906011241,9.11412324227118,9.167352730082,7.84481583067844,8.04946300802492,7.96184415016055,8.61601872166596,8.08989499820588,8.68102281568301,7.87950319054243,7.97610033763664 "1338",11.1363752187287,11.0878297410825,10.8544164244623,11.6851924507863,11.5451769185009,11.5825442135929,10.931374794257,11.142308209178,11.27073224333,11.2803234113513,11.3161291577957 "1339",10.638784841655,10.7513502517929,10.332503666338,11.3924786938052,11.137938548429,11.3001691027888,10.8107169747148,10.8783739363541,10.8871294881673,10.8786849639208,10.9103431106983 "1340",10.2689153198349,10.2872911960656,10.6385448672495,9.6105895851717,9.7078688235306,10.1757376921247,10.3638424205364,9.98071379874538,10.052883396613,10.3565955307924,10.2268802117833 "1341",9.64694420859078,9.62514491755734,9.22836123630698,10.3794914545068,9.99132428263008,10.1342407569314,9.67065862045937,9.73085439611595,9.93835585042408,9.85020034149874,9.83317173024776 "1342",7.14227631031255,7.30782520211643,6.69100174166885,5.94024907367982,6.02925276001858,5.82926094386062,6.3967273647607,6.39951332746705,6.10385346314284,6.1014953970159,5.75354754840492 "1343",9.44907651975999,9.62514491755734,10.2758465192063,8.64584483154642,8.3120917361111,8.59555417354319,8.66991286750252,8.50989473323671,9.61523883492226,8.87172337689169,8.48172552210957 "1344",7.20309499160792,7.11442263771868,6.75344123428011,6.44142432501257,5.43778714177974,6.03051736948815,6.31282720400235,6.03943679752718,6.47951288681902,6.14027133670331,5.9620853787682 "1345",10.3209613798289,9.91459582601733,10.2127625151718,11.1874125528734,10.5021221737317,11.0372186752911,10.5404594969889,10.3943356653582,10.2490989252854,10.7421962292399,10.7084738237607 "1346",11.84356764189,11.8127017541637,11.9900133579398,11.2795756141729,11.2601102651462,11.3727698478562,11.7183192229026,11.6438493683702,11.5784369306803,11.8517544837015,11.7681271502751 "1347",5.57656653888652,5.24667094069968,4.84809592326134,4.45117694514122,3.9890115841535,4.27998953468607,5.18694714265321,4.27494782787477,4.15581191957622,4.1133546816754,4.23274464232371 "1348",10.9343962847624,10.9476757984475,11.5328308223599,10.6078021067592,10.4856100712145,10.4465016677386,10.9714627907613,10.7979606038241,10.8365345688513,10.9205531563611,10.9309771112679 "1349",12.3406193702596,11.99606671141,12.3910065568048,13.1047192285825,12.7594406504979,12.6990080708424,12.2433542795856,12.3937683201515,12.3999473531734,12.5247161441954,12.4995195308321 "1350",6.12468103354359,6.70408330709451,6.93916689557714,4.94419410387592,5.26870826387192,5.80182700427773,5.51016217934202,6.21121089851315,5.47688516711479,5.24679677984632,5.19596301279726 "1351",11.7568003659039,11.7422413167089,11.8501734742878,11.1458221359655,11.3522417500239,11.1370962205083,11.6724768959065,11.7610398957633,11.5794297898188,11.516161379088,11.5192329555049 "1352",6.22781582447258,6.31026098422839,6.55712549554688,5.81955380472203,5.51439142996744,5.49014363497923,5.6591344389259,5.96897347115688,5.908506347799,5.76856946880134,5.72820962527079 "1353",10.8937350381614,11.0836334962228,11.7311887323383,10.4592735554169,10.6288289931597,10.8992718162022,11.1305548368717,11.0226885897307,10.9014919987618,11.0719745610094,11.0676985702476 "1354",8.28538547120202,8.34701589034485,8.96385390220771,6.94099493341601,7.21921073366603,7.82476137101342,7.96811330155918,7.44434191837213,7.61756105824218,7.60337555236943,7.29982984583008 "1355",7.47346910156585,8.04374680571814,6.89842135709573,5.99674685124919,5.75123300751287,5.82926094386062,6.29541878532773,6.28964009345038,6.05759821691539,5.95632863375223,5.72820962527079 "1356",8.22344598109642,8.1877819607643,7.87630032457598,7.64544235881593,7.47377566559152,7.12138953885052,7.50130547645627,7.86399435840566,7.78578159383681,7.81675181774028,7.39536368925421 "1357",10.4080214611714,10.5772358181313,10.3698958519676,9.79296110579021,9.90950555611316,9.87240871297469,10.1566607068817,10.3834633943362,10.111720597281,10.1516820780224,10.2073680128886 "1358",11.0924673434424,11.1122391821172,11.0375096050564,10.4568460170624,10.8366666537502,10.7198018525437,11.0169744314651,11.0897699752615,11.0713200317864,11.0591266132352,10.9758716265446 "1359",10.0061142181453,9.6452190091379,9.65732571970315,10.5935083350876,10.4599186161224,10.4143604355641,9.93403453243394,10.0331351443888,10.1536585881668,10.2921701025122,10.2745362626307 "1360",10.4334620920181,10.5690041549926,10.4301396363938,10.190793518973,9.68875916575047,9.69646261119022,10.24911867716,10.1338847082409,9.99898424893941,10.313966534276,10.3064734002407 "1361",9.90667535069381,9.90392452411437,9.83897655899325,9.22754763660212,8.82776226864489,8.49249372898822,9.16571592427558,8.97747001104893,9.08241679933231,9.36099031660653,9.19175439644965 "1362",12.6122566243376,12.9052843688343,12.7702388511214,11.1808087189828,11.174796196763,11.4424226895023,10.6508616709875,10.6342649704531,10.4206833562219,11.247801549936,11.4975316124224 "1363",8.89268563242113,8.97372587192083,8.27943954893763,10.409929179655,10.9865731766089,10.7731557636853,10.0116897232243,10.8651489068211,10.5417711158794,10.2059810775237,10.2040901627596 "1364",6.5459221304447,6.87097044509682,6.40906331257205,5.12329148338679,5.43778714177974,4.85356377363824,5.6591344389259,5.28887854364493,4.66516704800045,5.51920250319321,5.44305738224905 "1365",11.858904480723,12.0066328435244,11.4350856618253,10.856425811479,11.3209398980373,10.9761454674188,11.5575490116034,11.6060038580716,11.2111243428347,11.4074073865975,11.3687945373172 "1366",8.94081297417151,8.59735867621691,8.97360736585661,8.17583991559236,8.21913491534781,7.90115103777339,8.46793880312616,8.18828837683879,8.37247580851378,8.44448637149287,8.40758888068319 "1367",11.1727056074425,11.0480023556692,11.0258442890412,11.7052716625268,11.9707728591095,11.7925738862353,11.3556908894006,11.4200946995375,11.4988096224919,11.4739150606093,11.409679775782 "1368",10.2295181171176,9.51724699522072,9.99391314327221,10.8710851634477,10.7341597616411,10.5318659522118,9.98405361074516,10.3954183989401,10.3994756761019,10.5552874238056,10.4554233393332 "1369",11.8856457888427,11.7545012871411,11.4847859125187,12.9994094668906,12.0946152539087,12.1737982995366,11.8943978360646,11.9864838990216,12.1009602313618,12.0475150699813,12.0299228682258 "1370",10.3755764206352,10.1108872683113,10.1724155614826,9.4635438746179,8.33195779092463,8.97651524789673,9.53029736461335,9.11533002192056,9.43166098431044,9.22294082626596,8.84397272213366 "1371",10.0818112125075,9.84439804636833,9.61434434405118,10.7112253703054,10.3091772660013,10.5368505560032,10.1765629517185,10.0289550262118,10.0951534424183,10.3833492611789,10.1931098839248 "1372",7.35362998324763,7.55924892396812,7.89698849758373,6.12845239811469,6.43850350967657,6.14258578248584,6.44473499605013,6.50132385628596,6.84346871555432,6.15925383687877,6.28509519859856 "1373",9.52205233238737,9.1863733026363,9.4259678546388,9.90406070542631,9.97721883509452,9.87083035403155,9.52299894795511,9.40066552552424,9.4749977497596,9.7577923937664,9.8175260686236 "1374",10.2724440943496,10.5240325093349,11.2688778923371,9.59300824071181,10.0145310760284,10.2745394871439,10.5176948259233,10.3141622470259,10.1642862229254,10.148219551114,10.3317238182077 "1375",11.6036842162979,11.690408570175,11.8876066886462,10.8462603934651,10.5206102066988,10.4165256090758,11.0189209968543,10.8126238706655,11.3077478682988,10.8904758044394,10.7161641922607 "1376",5.86575520992503,5.79982726714239,6.30781724882702,5.27816114646231,5.01670287124879,5.29989450830165,5.30447425058107,5.32915405009094,5.67960036331149,5.51920250319321,5.02750813069502 "1377",8.82055880528902,8.54333002884344,8.66393653803967,9.46837342804354,9.28770816844426,9.23644069819077,8.97559386277376,8.96000434510202,9.0397506569512,9.11825643670436,9.05526893699586 "1378",10.7391059805204,11.3552688070767,11.5062126069494,9.21035147339609,9.16029369461545,9.11099223642791,9.73681655068137,9.10212246954715,9.91494662566351,9.44430555103086,9.13089390906279 "1379",9.94550986742442,9.54193167081694,9.38758181127747,10.380772599141,10.1380096181679,10.0376703443999,9.6490317497569,9.9879100898508,9.9038909186603,9.87415373533381,9.87087014425345 "1380",11.5200720796077,11.7822776272256,11.8668336184916,11.1107381705494,10.7040263823969,10.7057066721155,11.4649153208399,10.8991323354696,11.3784758605151,11.259615448124,11.0025300406785 "1381",10.3322765047839,10.3233303276239,11.5443236143477,9.74202610773959,9.57263293312188,10.1434207750694,10.0616499966107,9.86040421562033,10.4317213019485,10.3077725177945,10.0676681812511 "1382",12.3205921171773,12.3363228789583,12.4489337373893,11.4430240098303,11.7867005743711,11.6731583405583,12.1693394850039,11.887232714611,12.0631322022385,12.0601590802541,11.9093224091814 "1383",9.54946344894761,9.35954608150021,9.167352730082,10.0577481736643,10.1520294512942,9.88184276410406,9.53211621142354,9.78308622838525,9.75890704528083,9.77884524784107,9.71223929604806 "1384",11.6915274203031,11.6972908388017,11.3842211260379,12.4556284181899,12.1065422749955,12.0017026838999,11.5967396214594,11.7893201314114,11.7641035983925,11.9378254613299,11.9276538749995 "1385",9.49209327615112,9.70381723310428,9.17863896142134,8.65435140440962,8.45480410640922,8.58403219830958,9.19356881637435,8.83782155846211,8.74618188360663,8.60478233672683,8.83269047384802 "1386",6.96609768642662,6.97524678447138,6.65871092362578,5.8812668252616,5.51439142996744,5.16956541079112,6.14760569582541,5.67318746075466,6.05759821691539,5.35613896259166,5.27185771113154 "1387",9.70729448077562,9.40567022875635,9.87583695385241,11.2462279091647,10.3003923305643,10.7424167869573,10.1184359530435,10.034525829297,10.3197248167817,10.8597579738503,10.791621851475 "1388",11.6884491073914,11.7399100968058,11.9920131158682,11.0540516611137,11.1651513653716,10.970998756276,11.6794673102973,11.3553611020759,11.4578247863245,11.207338551082,11.407781524264 "1389",9.0572680471116,8.88483018599364,8.67194846022544,8.03296242975768,8.06736022331051,8.12990615109811,8.38977501380715,8.12170010225803,8.21249525749621,8.38682659409914,8.57949343689206 "1390",10.0354874489457,9.96793805922204,9.78278157214817,10.5599719124896,10.6358294207407,10.5770873439806,10.2926799303643,10.1785964785253,10.0557402675007,10.320134066775,10.4498990987708 "1391",9.85426088753482,10.3953565232526,10.5359110163404,9.36339172738048,9.11232399251591,9.84050859689227,10.049003715892,9.57710023856616,9.67962991713684,9.82584238756815,9.58527861580549 "1392",9.08697485766923,8.85803938608857,9.03389210966213,8.79561827366295,8.15364885930661,8.00285314504708,8.69287189315978,8.23264568134189,8.45277903318627,8.79699798207396,8.75113959857946 "1393",12.5515942975617,12.2497903073894,12.431651152789,12.9935599136068,13.2347113067065,12.973160953393,12.5336914239984,12.7355969698334,12.6192783537731,12.7563071254789,12.6616223447234 "1394",7.38890737314115,7.98183224346147,7.7756053317637,6.51923699993902,6.17212405558635,6.36093948153758,7.08925483758914,6.59620756668132,6.25441840396481,6.28524461564841,6.54654471787116 "1395",10.4991886236512,10.4816058459837,10.7646213192475,10.2053285105727,9.79265168242774,9.9817378997919,10.4384620777687,10.2449712569747,10.3209126853714,10.2059810775237,10.3545701733714 "1396",9.58773981739128,9.18441449216568,9.76042695414852,8.76059450770294,8.98334472148877,9.17123773748359,9.47274409458584,9.05354738156802,9.20332363239004,9.17382166926883,9.3855927669023 "1397",7.591618665772,7.83442586481981,8.01522397915615,7.19691200194374,6.6134588887344,6.51705963771854,7.28429744000962,6.68507068847066,6.78897959785779,7.18139375675433,7.01856456429921 "1398",9.54363334478528,9.5525997452163,9.55713064863933,9.01290091543137,9.1379184346086,8.96175759191779,9.46895089706757,9.1720472001699,9.42283510764383,9.2915257337914,9.27119036602632 "1399",7.98574749251265,8.24158501242507,8.25829674835298,7.32023670711153,7.57753959933627,7.30192771781724,7.50130547645627,7.77337427107105,7.67833724212741,7.56913446046745,7.65519474955602 "1400",3.54830022377166,3.54830022377166,3.54830022377166,5.00715176399614,3.54830022377166,3.54830022377166,3.54830022377166,3.97076798325069,3.97945053140578,4.1133546816754,3.94592105499445 "1401",9.73995114589705,9.75221620154644,9.64314046086671,9.06485666059359,9.0417633150653,9.01132899283527,9.38890674936167,9.45569132815197,9.54377298123616,9.01300750909371,9.21583108861075 "1402",8.25712903402587,8.03070215418876,8.28467705094599,7.60201035882759,7.35215873173572,7.42807775485705,8.03132052976576,7.5260358409018,7.47058029594217,7.82257122540105,7.62271891815793 "1403",13.4764368727658,13.6780558831142,13.6578773028364,11.5925910243722,12.0304223656252,11.9166884880045,12.1951050326481,12.3331931822218,12.5981251079218,12.1497393952395,11.811847678459 "1404",7.82805065086991,7.9773059746272,7.91061683351649,8.92074120369275,8.60925340170373,8.64444417657472,8.34075443718631,8.16304111541793,8.82871505856858,8.49992514826281,8.46720050786154 "1405",9.93367177007917,9.74559047154265,9.91008736055666,10.7304462784597,10.3437915604399,10.3215132261354,10.123269813816,10.1948569498244,10.082601989524,10.148219551114,10.1886942606399 "1406",10.2689153198349,10.310818797234,9.96325047680512,11.0451916660863,10.7135108562357,10.5005709237225,10.3076208032781,10.4610086273112,10.3881872277102,10.4598254007585,10.5165960489291 "1407",9.12652201704222,9.16864744189129,9.39727455469257,9.78136553038215,10.1266948022368,9.96111850183319,9.7383928444037,9.63142010423188,9.45997759253185,9.66391374603607,9.78425344757618 "1408",9.98905697165515,10.2276875365816,9.94188874422735,9.48276578336169,9.6615729520411,9.62709793783437,10.0129926121699,9.76309123923359,9.81899701452369,9.95300677304448,9.8859506483848 "1409",8.34923587617628,8.86783922639323,8.4844870178595,7.63686065552915,7.857041291275,8.0143581580013,8.23739925810976,8.15281676709867,8.01492283068152,7.93426322229915,8.05113296353385 "1410",5.28634990203998,5.68818125959145,5.49810773191112,4.64558758720875,4.41984085544861,4.39026667116431,4.736433099266,4.56562326784538,4.66516704800045,4.43350024566452,4.71305020543012 "1411",10.1865228576616,10.1344077634276,9.97624061324769,10.8582663978142,10.565295737712,10.6077299481446,10.273239994603,10.2945639201536,10.2251900340329,10.5578993550815,10.4489763316817 "1412",8.38883528626299,8.4419685356813,8.09494372094293,8.86321059063953,8.90268312222043,8.86037230025685,8.65662721773289,8.4692989141019,8.60888779655961,8.74595623501224,8.57949343689206 "1413",6.68133857209962,6.58874484760681,6.75344123428011,5.94024907367982,5.4766730864177,5.62396795076569,5.81788128542292,5.57941184941936,5.85488481424146,6.12102121355555,5.89613582798994 "1414",9.86520892758349,9.6900797098321,9.940232354183,9.24172272222708,8.50377872850389,8.80852337038189,9.22988813865572,8.82501353464932,9.28108224081162,9.11115772331176,9.15599989088867 "1415",9.76522033055154,9.88113354113512,9.8084314162128,8.81091520633996,8.60109397713546,9.31516548072923,9.35642350105127,9.29785035238845,9.324379635642,8.98738881262701,8.93382699486344 "1416",7.00083943504019,7.53477084058202,7.09136174566226,6.6629612881525,6.14932815941719,6.26595636830419,6.93149388136214,6.21121089851315,6.33358512450331,6.60625503946114,6.68018127508015 "1417",8.93785165006461,8.83574296433717,8.5770053316725,9.77942383780593,9.3882796783162,9.7711296658426,9.04604433512848,9.41568795142642,9.40053112274857,9.50513169789254,9.44790024597232 "1418",5.89146640696981,6.26548881224496,5.67786163365234,4.87732981549012,4.95881094319955,5.21461805136393,5.14502080212905,4.84495354750819,4.87007984850553,4.78196079501175,4.71305020543012 "1419",9.01011824080007,8.97372587192083,8.86600235134494,9.98884393461333,9.84191978687244,9.36983498806351,9.36869064105412,9.37014280166038,9.382436138125,9.62624197080985,9.50939824435812 "1420",8.40609122623257,9.05101897857222,8.68388339535045,6.77768161474541,7.24048839399441,7.03316008565936,7.43256705877387,6.88540467353742,7.7150538741348,7.26096204990197,6.83684585355949 "1421",13.5949584823415,13.7706075358285,14.123329138312,12.9620266230164,12.237216667786,12.7332821846737,13.0443077791232,12.7157986850191,13.3132056092506,13.1016681706394,12.9279677366903 "1422",7.62154523715292,8.15210010208921,8.04022746166304,6.53803052029323,6.36186838199559,6.30473681676143,6.74125749547841,6.50132385628596,6.56351593648969,6.72406551931629,6.42960502818059 "1423",7.41480526624665,7.14718668390845,8.13610594939793,6.07729316885177,6.52871833911561,6.3424578003934,6.47584372686925,6.32724232099688,6.65808508296573,6.73656644191199,6.31853756118564 "1424",10.1915019652742,9.89437218018595,9.56575132749214,10.5935083350876,10.4094570280958,10.6077299481446,10.0578677412391,10.1672308764587,10.0685266199111,10.528016861657,10.3525978358856 "1425",10.8542509684683,10.8596150639624,11.3447036298217,9.52045754653191,10.1548171392602,9.21669052554932,10.0791705543477,9.91729706261419,10.3514588304847,9.65580753175133,9.56667956953291 "1426",10.3711947486098,10.1910962815159,10.4834260484686,9.90939723291607,9.95179672743833,9.82265804372679,10.1927493177056,10.2569346145631,10.1020795639663,10.1154953888918,10.260929929585 "1427",9.46355849968362,9.36474445982833,9.63497150654834,10.722384457189,10.150633584307,10.1329245432563,10.3224085039934,10.3244310258157,10.1774615878723,9.66875569261577,9.70761674063984 "1428",10.7055648617925,10.8248410008034,10.6086183693494,11.5095334833181,11.0029088778257,11.293116433284,10.6567079367765,10.9515992614033,11.1219434570669,10.9788895156084,11.0360968281105 "1429",8.15871854385556,8.54638539974194,7.66730456488802,6.33760537438245,6.51113614459311,6.70130537857918,6.98605328387957,6.53367259212264,7.06562328853505,6.71145259511112,6.23335959665524 "1430",9.71768722317394,9.50631313331535,9.58071460694246,8.35361427173029,8.87588773712104,8.87619977464917,9.13252572985366,9.00611715263434,9.01058831104345,8.98480171660266,8.63901089632971 "1431",9.90667535069381,9.90630275730438,9.80297329462446,10.6999792873015,10.1052372741874,10.4251539494096,9.98139377123449,9.95303567479728,10.1589821936525,10.231292326608,10.2630315837436 "1432",10.4543251552001,10.1242285544962,9.78647388407245,10.6316735082062,10.8650293181352,10.7604273622734,10.3286999744477,10.4937295960745,10.3339150823818,10.525350207984,10.5727405254592 "1433",10.938844259133,10.9208768282364,10.7589952882866,12.0573839232613,11.4766502194795,11.0842813711787,11.0959351479617,11.1202128127714,11.2415497854474,11.2617530740022,11.3707447529416 "1434",11.2019889539842,11.2655053576881,11.605164076177,10.776920651578,10.7238722549361,10.9146714390226,11.1684609618801,11.1627992121994,10.9682057434034,11.0937368523173,11.1647464673719 "1435",9.73484373990286,9.51100922975936,9.51768682055562,10.2882259347867,9.89790435994145,10.174458822354,9.83879401184647,9.73256915738992,9.68148092493404,10.0402789678875,9.91564669070588 "1436",10.6640790684246,10.4509839140124,10.493625295223,11.175651422063,11.2774794331131,11.0842813711787,10.6937357062122,10.7445832129177,10.8365345688513,11.0621960431891,11.0231357243181 "1437",12.729639115463,12.3713845789152,12.5414116519151,13.2551370848385,13.3240981084257,13.214528179565,12.7967998158888,12.7255165777334,12.7981546786003,13.1470396288789,13.0362171306845 "1438",9.05999410975567,8.79008750957555,8.71135291149387,9.36598221103588,9.48006955688139,9.36311359579024,9.03838442629959,9.27919628842643,9.03686083280058,9.22294082626596,9.15146757110382 "1439",6.43071256109461,6.69296641160022,6.81323095846476,4.55382476248647,4.89765324881629,5.12270292620239,5.05629560314322,5.11259910555834,5.04112969494906,4.78196079501175,4.98115357179952 "1440",8.26660964919445,8.39866108595749,8.8519686499773,7.88156902156748,7.57753959933627,7.96184415016055,7.3603555956831,7.53395441940694,8.04979550409517,7.701446188685,7.3243192572221 "1441",7.58403828566429,7.35058402269405,7.91738279967502,8.61566981198598,8.90268312222043,8.62208560702736,8.13085467743051,8.39321035543747,8.81865329878255,8.62486769292213,8.41517675137098 "1442",9.68980505605214,9.73492557672481,9.13874438839886,10.5656157400474,10.1686753315193,10.1196959219102,9.97338469450374,9.93973725693104,9.97201639028913,10.0011467992096,10.1494698271029 "1443",10.2014089124722,10.1364350130814,10.0223727452842,10.5633608580891,10.5547812005669,10.6134036701783,10.2568374844611,10.3503460782363,10.2315203705558,10.2911239163308,10.329719971355 "1444",10.2641968180722,10.223879247266,10.2573423373141,10.8601046387402,11.1519579517654,10.8188886322459,10.4964292160672,10.4349187094697,10.7180143568687,10.8505556452,10.7435149236199 "1445",12.1066570610431,12.0494853921796,13.0283826457568,11.4214003707259,11.6653782378728,11.6452748923566,11.8196904086991,11.740738252806,11.7102795811728,12.1649524533001,12.0543961823322 "1446",12.0780429100956,12.0588674485049,12.0291016679795,12.6719845201725,12.6304558174654,12.5692828976682,12.2034021176791,12.2416479735012,12.2774321917268,12.358643514487,12.3424351262356 "1447",10.0215747749588,9.50944556300511,9.32039392901572,7.85963022288562,7.69748960192527,8.21210233615098,7.94641071723562,8.11117639548181,8.21249525749621,8.50354624948555,7.93442061415904 "1448",9.72971818162743,9.71877888221534,9.91177871457315,9.11808157552205,8.90268312222043,9.57182195437568,9.3461205470152,9.30938775186329,9.3847104694454,9.59096479704898,9.61849246305758 "1449",9.19260063392306,9.26262008621774,9.04318440287859,8.62867945555666,8.50377872850389,8.09241288324656,8.80549148828346,8.63993930290509,8.75676083404544,8.58098977789978,8.41138781637634 "1450",8.52141591778728,8.31152640495699,8.87990068659424,9.39671032324764,9.30789059546723,9.45447601338872,9.06376071259923,9.09946637416647,9.04551298038993,9.33482400189473,9.1491960560028 "1451",10.7391059805204,11.1578584816372,10.5939458252273,10.2675976945215,10.3315244458874,10.4465016677386,10.7114980118355,10.6633198037505,10.6610005017964,10.5297918960275,10.5769701579497 "1452",8.7103268401435,8.61492695401276,8.886799904103,8.18761826100972,8.13114022707624,8.20710044820141,8.45264192153166,8.34465066948968,8.34468050613154,8.41786565259284,8.41895573830532 "1453",9.72285564294835,10.0530367356686,9.81024620933937,8.64584483154642,8.59699686255962,9.0340795627192,9.1349219693383,8.79248629950711,8.69575946364143,9.23387465495782,9.11235638545577 "1454",10.0382539518331,9.88234208781952,9.75854833344212,10.6625486408068,10.5260030725495,10.5168079542809,10.3023025251983,10.1811100517973,10.3041928419951,10.4391954156623,10.2397432316302 "1455",11.5402146364395,11.4157719341541,11.6041185148063,10.7414582280356,11.103725449484,10.768925429667,11.2313717251209,11.1103562144517,11.0888575644365,11.1122170881609,11.2530344321954 "1456",10.442887829323,10.6450150141897,10.5237973620208,9.89691448030488,9.81573563061689,9.84533882789174,10.4070952455997,10.1596037475487,10.0078626350706,9.98182381475529,10.0087680895796 "1457",7.81517116508222,7.79893645999441,7.95074256071963,6.85426078798228,7.07256943990856,7.17387660588074,7.5308267704392,6.92227444071329,7.68575618862043,7.10672969928564,6.84820604888636 "1458",9.0241466655017,9.06599234475905,8.74970806707209,9.97533772255507,10.1851313007098,9.56011614188668,9.97605933136158,10.7445832129177,10.3526208618046,9.65580753175133,10.1091488317724 "1459",13.6704483370108,13.4545117853223,13.7160164735262,12.5548655502562,12.8518741341573,13.2104786397777,13.281953606469,13.1425907085847,13.1809475568355,13.2475317758581,13.1922673525117 "1460",10.6424255705335,10.7097519472849,10.5812494717202,10.0432575688849,10.0731772984876,9.9159157255235,10.3044321900138,10.267617452257,10.1774615878723,10.287980797352,10.3216766301254 "1461",11.361244026453,11.3807162584606,10.9998436425943,10.6110806523701,10.8513473493957,10.7629820430889,10.8766072781463,11.0456272990328,11.0839685075097,11.0677046129703,11.0287047482321 "1462",10.1639016966952,9.90867707534819,9.98269206984058,9.52278088673235,9.42107496965634,9.53641552576228,9.60823258806614,9.88065031937561,9.65157585822036,9.93570389487805,9.6217721575969 "1463",10.5387970932317,10.4163647036133,10.621077135342,9.13336910256102,9.97406546890233,9.34047991899248,9.78642251487484,10.0400751987625,9.66660590862796,9.51412797785123,9.62830925399279 "1464",9.34564868855763,9.12641921347621,8.98651014282923,9.82907719239939,9.71166055520175,10.014985470521,9.47841524627442,9.44944832477595,9.44043316502887,9.93302339256534,9.72296798381587 "1465",9.14973976361886,9.3768016133613,10.019238157047,8.71253090162759,8.3270169324991,8.80190906564702,8.98093217188697,8.50588627819347,9.07116208553049,8.92397943106534,8.69304958228157 "1466",8.87111368185725,8.95316184763821,8.25296213437993,9.03260445449268,9.45992034710353,9.35184117137115,9.01255332160039,9.07533865673362,9.18255697586384,9.02816294905766,8.94957879166079 "1467",10.5240710717289,10.1191118837608,10.470861567669,11.1450684437338,10.7908105555362,10.9591654345179,10.5440687355791,10.5914459316353,10.544824325045,10.898741106405,10.8784853041641 "1468",10.5171471407071,10.8639034694822,10.7683598536148,9.74600869215952,10.2953482407759,10.0502755224778,10.4833297492985,10.2605043586172,10.4513792240392,10.0928591966941,10.1460575682233 "1469",12.2212426375835,12.3185788118587,12.5274159668764,11.6079875563749,10.4856100712145,10.9695248884942,11.4927284330422,11.1615270162731,11.781463958687,11.2161839827291,10.8584715110467 "1470",8.75139371361436,8.84321350730283,8.28989555448605,7.61954148426211,7.73534120637942,7.3482709372649,7.92991581991062,7.9253899931632,7.75790763707303,7.57604849276531,7.60951961480999 "1471",5.32657933118044,5.24667094069968,5.28833257709998,4.80590313991191,3.9890115841535,4.14782244847307,4.44463567927867,3.97076798325069,4.15581191957622,4.23818768541642,4.23274464232371 "1472",10.3300205694354,10.2882032356328,10.3147166257277,11.0755709738171,10.575734188749,10.9329365816265,10.5752702104164,10.5058111033966,10.4793092495755,10.7252554709334,10.6968608491041 "1473",7.78906009917272,7.7519780301127,7.46017196541071,8.20510685113877,8.41345634845132,8.27080630059016,7.88498001914227,7.98426798615941,8.20735835183071,8.15772834909706,8.24250996755826 "1474",9.20250300256374,9.15670793656637,9.13585207667576,9.76575829526586,9.81925444036508,9.6658427460564,9.50087940174002,9.53054494468328,9.37330276644289,9.67197464876051,9.49694951337195 "1475",11.0208499717621,11.3994060294981,10.6897137254359,12.1100842365098,12.2069844120473,11.9140092197575,11.8099803025709,11.8327269789138,11.736775272387,11.6355368466923,11.9146792663601 "1476",10.7518015621378,11.0656620152468,10.6344538012331,10.2991082158828,10.4000894764501,10.483116443134,10.9000323831904,10.5637831304585,10.4824974201085,10.6715988227547,10.6324822674906 "1477",7.54552247013425,7.57733667784068,7.4225356099074,8.19930091953913,7.86388858832763,8.19704417881253,7.9188130165643,7.83228293935799,7.93632987909997,7.83413971816388,7.94495448529507 "1478",9.80312638837258,9.75221620154644,9.7491183462126,8.89943548573761,9.32532138773482,9.30584890318942,9.23659730688724,9.47425977612589,9.2638868327425,9.44994245841159,9.57685423037748 "1479",9.20988539388375,9.60038747689321,8.71523471133154,10.2480748193668,9.77645125249346,10.0376703443999,9.9229876795253,9.91578856232416,9.6477937409336,9.5824367215715,9.84864948271169 "1480",9.08697485766923,9.13658633485635,9.20094974180395,7.86698047363564,7.91752207058714,8.32259169586923,8.52755095949196,7.96100560637981,8.48283688861688,8.14386438266402,8.0364366243945 "1481",9.81123663693283,9.83818345260913,9.43305283939345,10.4211797558214,10.4291633565408,10.2419447695418,10.1660606858745,10.1697643165953,9.89753511229346,10.1166769834357,10.2588252088045 "1482",9.73995114589705,9.92166641344763,10.0208063027085,9.20457353084305,8.45480410640922,8.78858865410809,9.28270704857763,8.73544661786784,9.51083683911358,8.77918901924796,8.82131918147808 "1483",11.1479471201865,11.6352110745624,10.919746551038,10.3058681849335,9.07747539658943,9.39641153378936,10.0779261194851,9.59606325349729,10.4867373826251,9.7456227517755,9.20055615436217 "1484",8.12261959660535,7.77303844371646,7.85530964459838,8.92777367734625,8.69608245430802,8.73404011564546,8.21035699173733,8.56101386027806,8.60108013500172,8.94542739947605,8.59627430635842 "1485",10.5649309257955,10.7704032814394,10.3612573069318,9.36079658097307,9.98193599510249,10.1329245432563,10.1352840632529,10.0957581439586,10.0356223097841,9.96223843593382,10.0519520851791 "1486",11.2203743674765,11.112754070932,10.9130073698974,11.8282137322326,11.498759397451,11.5859147214903,11.2296918720753,11.3118717114249,11.3554762373379,11.4389206784953,11.5196724586523 "1487",10.9861715431903,10.8311124513984,10.2613275514791,11.5448189475349,11.1795945390726,11.4226318547064,11.0117707126576,10.9589411582821,11.0334200312324,11.3672705502699,11.2456143381664 "1488",9.07354761529265,9.7939149262346,8.77224035423123,8.81091520633996,8.43197991639417,8.33639739250529,8.97291727449073,8.68317061367035,9.10466596505872,8.30616728615832,8.55223053166907 "1489",9.90364431655987,9.67760304672165,9.24456138472936,10.3166186696767,10.128114017793,10.3052458503367,9.88791060762533,9.97348142215322,10.0063866941381,10.1574345489794,10.0700709147796 "1490",5.01103248145524,5.45916336990591,5.64386590959061,4.64558758720875,4.3058722489524,4.27998953468607,4.24697193895882,4.48006681116437,4.80633145078724,4.51507976905241,4.50758419823284 "1491",11.0797687039828,11.1065632429856,11.2321258940786,10.2963953327579,10.1919329283025,10.0724162824657,10.5539478293049,10.3932521184581,10.5264073754655,10.3545938926727,10.2598779530818 "1492",5.2447303988107,5.21302385056593,6.30781724882702,4.55382476248647,4.51917288855208,4.57254454079382,4.60239513168466,4.48006681116437,4.58582955381605,4.23818768541642,4.33623189839069 "1493",10.508195828823,10.700190419516,10.3930858503135,10.9141900675119,11.5291538280074,11.0931064253606,10.6986017019624,10.7522098125656,11.1728253334756,10.9723779574865,11.0986228596141 "1494",10.0777831421926,10.3808941681745,10.7970095951985,9.61495163193955,9.61576637537467,9.69646261119022,9.96802049494205,9.86040421562033,9.88794857527391,9.78331686580452,9.7591576702194 "1495",7.52982122581727,7.57733667784068,8.27943954893763,6.69670383284886,6.81247266514148,6.75771463598581,6.79127264998927,6.98166824248881,6.95889432739089,6.93370830289886,6.83684585355949 "1496",11.3820804573393,11.4286495728764,11.9419960436189,11.0346501211716,10.4922376107589,10.4810490201255,11.1448866074824,10.4169041330783,10.8911334391504,11.0931367561939,10.9441344322469 "1497",10.5051996718847,9.9074904049135,10.0609909112866,10.9221307870424,10.5303028959357,10.9761454674188,10.4051119857309,10.5521794494161,10.4697022403032,10.898054137104,10.5979342710243 "1498",10.9172175232759,10.8448144162758,10.6578205420477,9.25855086883706,9.18232694067193,9.72119977106484,9.78794553928473,10.0064541233079,9.48986305654025,9.45928860804619,9.18954553413034 "1499",11.5720598530247,11.5533706682305,11.2429142949222,12.5122501512325,12.0847829030792,12.0337894989275,11.8002043977485,11.9504745737178,11.9948204300072,11.9883977246857,12.0583341743287 "1500",9.51809357313354,9.38875877384605,9.8084314162128,8.7645283512679,8.59288805804577,8.688146220763,8.89305127716452,8.74907232045089,8.95043129581706,8.90494696585961,8.82417042945892 "1501",9.98476095320408,10.0701066274058,9.85840182585167,9.12727353428078,9.37638391461942,9.03125530386184,9.42655353322538,9.2721383136318,9.23644413866341,9.43486145599299,9.48258953406227 "1502",9.34564868855763,9.33326927180689,8.65183446490859,10.6001230644043,10.5912515892063,10.2601437994664,10.6109823301459,10.5048081669179,10.572016241717,10.9090065813267,10.9170315413443 "1503",10.0791270825946,10.0647939552572,9.5265458300737,10.4880897668348,10.4744960528002,10.4913566312522,10.1460119857921,10.3049726656477,10.2738452543388,10.3129360434949,10.3186487763146 "1504",9.84481024925553,9.65938846752771,9.88619774921658,10.3575360776933,10.6167486523576,10.5526865184361,10.2623257383629,10.1684981527468,10.0108099936208,10.55876894893,10.4818295966881 "1505",11.8848776135342,11.8704729682859,12.1229734214227,11.3088087653608,11.4064607530663,11.3677434818833,11.5323326529736,11.652931311285,11.5160242750134,11.6030277783314,11.6650219391387 "1506",8.01418474594075,8.56156575418114,8.1186091113731,7.41376869620371,7.13077178661059,6.09886016877318,7.33545046218468,6.65607019101962,7.72228569452455,6.63330252167169,6.75465710517924 "1507",10.5801971333034,10.674611287237,10.5897261114918,10.2634364082879,9.52170404600447,9.90824225047532,10.1858345333695,9.91880398678363,10.2664658308038,10.1272680007105,9.9796693691634 "1508",13.4877380347565,13.5700938205544,13.2790650899575,11.5731113710362,12.4125300013792,12.8740428172179,12.717915146327,12.5526322555715,12.0553033753277,12.5820808663167,12.7449900533856 "1509",10.1727410195099,10.2587280838898,10.6798226411762,9.6954179831308,9.79622719722959,9.86766844471545,10.1208549084037,9.90973873377393,9.96747231359794,9.84165031317955,10.0580170201596 "1510",7.89076943782151,7.75727219503807,8.22598820116811,7.36256437683614,6.82667759155909,6.78509433379566,7.34380053331067,6.92227444071329,7.32590428280078,7.10672969928564,6.94653945327788 "1511",9.72629099426311,9.67481573454127,9.5397331223225,10.1523024547739,9.99599560909594,10.2456029911708,9.95452205782207,9.76141240897378,9.6998614941031,10.1528344090151,10.1114835047587 "1512",9.38095545049236,9.78876804521228,10.7486235627736,8.8298107692593,9.58715457438194,9.13486732264268,9.49529608760898,9.14911379346811,9.11017500544359,9.43106642948714,9.63481685042367 "1513",5.06174854283329,5.77824442532879,6.24330683421088,4.72904957070584,4.41984085544861,4.48644669672571,5.14502080212905,4.27494782787477,4.73829774126364,4.23818768541642,4.77260190574687 "1514",12.3713829181594,12.3672909352829,12.2193257375482,11.7968878221991,11.8107594397936,11.901310926462,11.9049618869248,12.0790073555037,11.989974994074,12.1586570618278,12.202995019639 "1515",8.67873961737953,9.32084091823728,9.64720765024991,8.34312427842712,8.49499728170758,8.27559185040856,8.6262786949841,8.69377869296711,8.80512737152573,8.23821723466124,8.29281677207958 "1516",9.14973976361886,9.51880222944563,9.44945032736336,8.57592049462451,8.7264024121503,8.70950985523553,8.9015215765478,8.93340241854332,8.79831648860563,8.74595623501224,8.79540080261387 "1517",8.56046249831434,8.6803539981306,8.63553853876001,9.25855086883706,9.26466000878117,8.92571013439452,9.01515736547387,8.82501353464932,9.13470839956884,9.02060515008304,8.90449375768947 "1518",9.0408024981148,9.11412324227118,8.90050002263377,9.56171547234241,9.5043200296704,9.8291747457824,9.34818703627863,9.49259214336279,9.42945957478283,9.48514006545464,9.51646384732681 "1519",10.6950856316813,10.4362487275548,10.166760830249,11.1548358621792,10.8183229498468,11.1695510246347,10.6839541943727,10.8053108680749,10.8636848329258,11.0173534531924,10.8508068418047 "1520",10.3209613798289,11.0533766332525,10.5413837733096,8.98956773179542,9.18232694067193,9.48162043561403,9.020351380392,9.24355571325986,9.35717880969973,9.62458153069967,9.7045267848039 "1521",10.8534658650387,11.0982672607979,10.7970095951985,9.26411688032526,9.8761085308721,9.86132375368437,10.1328892058051,10.3107230111134,9.93680700078925,9.27679910528302,9.57347064728399 "1522",11.2676973531153,11.1722559617626,10.7655568615512,11.753538536816,11.5058725352999,11.6102364382177,11.3334432121049,11.3334978733908,11.3432530322509,11.563717722214,11.5006518625286 "1523",8.30391940234163,8.65793230088287,8.83065843231267,6.92690329526043,6.62980875551585,6.72979247179919,7.13817459357482,6.98166824248881,7.68575618862043,6.53625939289495,6.08502244599298 "1524",9.77022146767524,9.71199736889276,10.0425831834726,9.29978140201371,9.40477056518955,9.28939860356225,9.40686201966234,9.37892971322403,9.63065037796132,9.59775112970703,9.48619295822524 "1525",8.33128018637385,8.51553594667507,7.84824397936422,9.32129819118136,9.49774660849664,9.10294517849191,8.99154983146614,9.231476990754,9.40053112274857,9.01807705071483,9.07694255830055 "1526",8.34028603840679,8.56759336671457,8.29509519727085,8.15198978181678,7.33249425050712,7.19434131217863,7.70916904553208,7.69792596610665,7.79951806783493,7.73269987832019,7.5346651945302 "1527",9.97901295098865,9.82189905609251,10.1738257872197,9.43422183831476,9.63186465501382,9.54435909258784,9.48969107030376,9.75973162211078,9.66473569677642,9.76685270350634,9.83317173024776 "1528",6.05883989330874,6.07019209809631,5.9767616444246,5.2287614540209,5.01670287124879,5.12270292620239,5.51016217934202,5.06400718580499,5.32100047365207,5.08331287740239,5.07200980811868 "1529",7.48165658586729,7.78863328715341,8.58551429510463,7.19691200194374,7.43744503701482,6.72979247179919,7.2039544662764,7.28438262245523,7.74376486076374,7.06787458033587,6.90367688540501 "1530",9.98188981551795,10.0615969336993,10.4039418062314,9.39417451251257,8.94519012149416,9.12959581816302,9.56979142515453,9.13880286660557,9.24898288673534,9.32463221638432,9.26281069887234 "1531",6.83088295905748,7.28595559966957,6.00327387055094,5.96879451060309,5.51439142996744,5.37954658604057,5.63069073389597,5.47821319946465,6.05759821691539,5.28435507346132,5.19596301279726 "1532",8.24758552011547,8.60616960519582,8.1127291879404,10.3272896242568,11.5096882089493,11.5955015789509,10.377056172558,11.7466891344698,11.3801861404552,11.4213389926449,11.7176870007483 "1533",11.5600798273091,11.7362391232266,11.5851676616024,10.8228872469793,11.1442641451469,11.1112646748408,11.4370407844146,11.274111025659,11.0670791083783,11.111031932343,11.142659886421 "1534",9.621340841989,9.9074904049135,10.008213137984,10.5712375723305,10.5162813506445,10.5168079542809,10.2883825295849,10.3492289654657,10.2775208569595,10.5056426501971,10.4077788513948 "1535",10.1305873404965,10.1783620425922,10.9231043722607,9.85327718286724,9.67910853122611,9.74551975811692,10.0038475767606,9.88219600312484,9.96747231359794,9.89634039364597,9.83881924131123 "1536",10.5744912217562,10.6506994128939,10.1695909669438,9.84401748691189,9.94858722450983,9.8865367488704,10.0603903465176,10.1156045648873,10.0166867034404,10.0477318252313,10.0224800373173 "1537",9.94992422282255,9.55714772683988,9.71852121975012,10.3004627464938,10.1124253101349,10.326127549589,9.96128706777677,10.1468015512638,10.0923736544633,10.1790870725108,10.043418102403 "1538",9.50014341626045,9.50944556300511,9.56789846860863,9.09014867014785,9.20940319848552,8.89807016610478,9.13731423195873,9.11533002192056,9.35253864980812,9.20527235569872,9.24164592583338 "1539",13.6677713520576,13.3612844353582,13.9838877939521,12.6511680884053,12.535529992551,12.5063880748213,12.7804465371732,12.7511154142766,12.7958073373442,12.8007201867651,12.6880615494158 "1540",8.71379415237108,8.56156575418114,8.5770053316725,8.86321059063953,9.49774660849664,9.29647172850295,9.33574343699946,9.20454209783476,9.18777675371574,8.91041051218163,8.73910327887921 "1541",9.01293487089078,8.81815957028707,9.05548166222452,10.3018160063251,9.66744186905593,9.43964532991714,9.7113586782475,9.58661291685083,9.53150991828696,9.62291917649634,9.80026224186233 "1542",10.1890145599193,10.112947823029,10.2719012720266,10.9053154763811,10.8262131164862,10.6209340856208,10.5901851157763,10.5923904240538,10.7771937917521,10.5837618046265,10.5752797928681 "1543",8.82377098888572,9.38364641403571,8.90730154365236,7.67088334577139,8.29701008986597,8.36810472978034,8.70582887802858,8.28037849508139,8.07822326015754,7.42333830248029,7.47765660537752 "1544",10.0061142181453,9.76668653492912,9.89989737091731,10.9317771247833,10.3253515442344,10.3859133783507,10.3150336035886,10.1519360731915,10.296967438079,10.6108467222188,10.6185980744757 "1545",9.53582302322955,9.45849130164238,8.7229670689562,10.0910039613109,9.82101063092539,9.97293708537586,9.55017960121086,9.75973162211078,9.78840640963792,10.0227377266893,9.9847723725442 "1546",7.50594156703678,8.16409270639909,8.15339241024055,7.33093685359887,6.64597027882416,6.86418378240018,7.42472141449871,6.83470072861068,6.81648699521578,7.14455133827227,7.00849647408597 "1547",8.38012910413432,8.42214226914085,8.3807299458979,7.85963022288562,7.35215873173572,7.22449745441825,7.44813034354882,7.66947509015006,7.79266627085719,7.65651370055754,7.35633164979579 "1548",5.36552087758783,5.79982726714239,5.86514541966066,4.80590313991191,4.76343465978073,4.72324945023249,4.79704755731515,5.01322721136904,4.66516704800045,4.51507976905241,4.50758419823284 "1549",9.00729609524612,8.79266223808439,8.58551429510463,9.41183223874574,9.49774660849664,9.56598092615888,9.23882677549923,9.46397350649261,9.29324030599209,9.47042460451725,9.35438552413391 "1550",9.47585689914803,9.61063324416061,9.74532901834701,8.62001943102553,8.43197991639417,8.10322540131312,8.88167953131368,8.21801139525808,8.30195416064893,8.1204564843621,7.84161802387833 "1551",9.66495795660164,9.926360954452,9.91515548384367,9.43915044082528,9.00204978037968,8.85718583490158,9.53211621142354,9.2411480514298,9.3687142921226,8.88843092348367,9.06494191586072 "1552",12.1600163842048,12.4626701433388,12.5579752040205,12.0006035758781,11.6171793934351,11.6466588835076,12.1661227887282,11.9868430830058,11.7043755429825,11.8829877009928,11.8014026590676 "1553",12.906956281628,13.2529984274256,13.1551518821342,10.8910015851055,11.0083132614648,11.4945914781042,10.974140718693,10.915828480281,10.7492316431501,11.8245374896323,11.916682970773 "1554",8.65728994392668,8.41212577596698,8.68388339535045,7.88156902156748,7.45572573054755,7.92573694177426,8.07696568000571,7.58056746775892,7.86629461016776,7.99733283712053,7.75443273316363 "1555",9.43444760917802,9.23449800084737,10.1467928457974,8.45451180306813,9.08334232116854,8.991123312071,9.11077840627714,8.80884171052989,8.99578282918798,8.96130645296956,8.90449375768947 "1556",6.05883989330874,6.18747190753494,6.12856456325381,5.12329148338679,4.95881094319955,5.16956541079112,5.68696720047667,4.96000670487273,5.47688516711479,5.03853376538012,4.58142223425457 "1557",9.81930153241233,10.1313615365276,9.63086961048737,9.03586234707771,8.6133158429029,8.18691709381174,8.88167953131368,8.42752497681287,8.55332373680167,8.42552194349877,8.23395175603893 "1558",9.46355849968362,9.92870250717504,9.63906176806089,9.03260445449268,8.7923753576323,8.39033259099638,9.04858861807932,8.72514208892529,9.05696897032904,8.81458948783827,8.5996071414767 "1559",11.9579142718473,11.9840162187978,11.7383540637143,11.116132386516,11.4833186228027,11.4365672348313,11.4076268428066,11.6106726713465,11.5175791051574,11.4835632671083,11.4219578992833 "1560",9.93664041614915,9.84439804636833,10.0286215584728,9.47558756262761,8.89936082225207,8.76157255565059,9.20044875589,8.61410847520305,9.08521679961439,9.05307315857862,8.72696554222553 "1561",9.67565917741383,9.44219162252648,9.50429541133563,10.2827538512244,10.2347199443245,10.347846236292,10.2883825295849,10.0050360932713,10.0122814173939,10.320134066775,10.1986104716811 "1562",10.482020019862,10.4046378387236,10.0701074211044,10.671997748841,11.1180796426504,11.1579512293487,10.9960459749299,10.9090215788348,11.2725750622303,11.2654863145324,11.1184899779677 "1563",9.00446841256364,9.37336698873207,8.99929842498841,7.91030878238794,8.57633459145088,8.05391538514358,8.82640317680438,8.40186601346683,7.85318554944182,8.08703158629843,8.21233075376318 "1564",9.52402764382709,9.84439804636833,9.79566351713495,9.15150265613441,9.0082312369413,8.94684724522049,9.1563107349151,8.9511914865903,8.5773999032575,8.96918084562731,9.01591445856804 "1565",9.45943561192641,9.58858819014337,9.46796478153708,8.8032870419544,9.14073441010355,8.73751058569768,9.23882677549923,9.07533865673362,8.87799612020668,8.84343960950334,8.92853790016112 "1566",10.0723948230738,10.5092464786811,9.81386895901612,9.38908947209102,9.71732952533717,9.65854259390117,9.87507106808472,9.84304807223356,9.61910718934904,9.47227227099732,9.64291026526287 "1567",9.41754506881003,9.75089348855704,9.02766379608388,9.11808157552205,8.82776226864489,8.6107747917441,9.1349219693383,8.92442485198654,8.43091825674161,8.56375114679346,8.75113959857946 "1568",7.77582417085792,8.09058901321818,7.31361245108569,7.24300092293367,6.89563617554318,6.432497361932,7.35210205549439,6.54957034296888,6.54711451758993,6.50724974565549,6.97785631436976 "1569",8.41889875238366,7.99084222026797,8.26361165206592,9.26133656078562,9.56636432489885,9.08126409712267,9.61339605703764,9.3941791181895,9.45997759253185,9.33075592918227,9.18954553413034 "1570",13.8980178671465,13.6903536827224,14.0640162121643,13.1589247521206,13.1653938983174,13.4018401685514,13.3622147844171,13.400238492059,13.2848787511727,13.4351338633975,13.3967846758997 "1571",8.07483354014599,8.40877139428027,8.51599165671402,7.37295311711776,6.96138984243564,7.58321459177539,7.37672094825418,7.08268644591105,7.51294511231341,7.31164305003266,6.88174890817304 "1572",10.5678056733248,10.4784129261927,10.2941163254288,11.0075396557097,11.4428378598291,11.4682211607786,11.0959351479617,11.4099519694662,11.3467559571989,11.6276851997884,11.6024992552979 "1573",9.93664041614915,9.29020407679835,9.87062851071493,11.3175313290374,10.8165637034136,11.4614215050685,10.771998304892,10.6597197922185,11.8020243397255,11.0380794778482,11.1837293437244 "1574",8.51347790500671,8.82320533215313,8.9703635403395,8.12160977055268,8.13114022707624,8.02577177719538,8.29858835270601,8.32202448506967,8.30195416064893,7.92888024286978,7.99649527722762 "1575",7.11086380579525,7.31504121459539,7.40333918797982,6.82412564138579,5.8974681997572,6.09886016877318,6.18607814866558,6.32724232099688,6.71776773269749,6.14027133670331,5.70237141167859 "1576",9.13946690657847,9.06173008942833,8.78337570349508,9.46837342804354,9.5495135760048,9.6658427460564,9.47652733962864,9.43266694539186,9.48774880102719,9.97402154864628,9.86811121210944 "1577",8.06942456863193,7.99084222026797,8.13029729827299,8.60693096286727,8.89603084465351,8.6107747917441,8.48307484510939,8.62523560841052,9.04263469844127,8.36708164935272,8.61615659062979 "1578",10.6827628661366,10.9255734251867,11.3384300532941,10.3497066385439,9.83150310092978,9.71769176396934,9.75094155103657,9.75973162211078,10.086797954744,10.0062561715956,9.78278925224845 "1579",8.94671742848271,9.13049467165238,9.07070714442444,8.45937569041349,8.69990753520075,8.23685412620628,8.59179063704516,8.28506580777929,8.28742535969934,8.26407608314835,8.53840303285309 "1580",10.2818121717323,9.84315726807925,8.4980735107469,10.3259600640607,11.4558931007158,11.107919234322,11.2268877628093,10.6873876859931,10.5599941811903,11.0374557718615,10.8647124544634 "1581",10.79578508012,10.2882032356328,11.0164436396944,12.1338314506619,11.8182512350478,11.9124759723153,11.6382743506758,11.6569996068226,11.9336328158469,12.1138029245447,11.9552090616162 "1582",5.15683916790939,4.70290661503082,5.28833257709998,4.00522961816383,3.54830022377166,4.27998953468607,3.95429096793669,3.97076798325069,4.28967224937531,4.1133546816754,3.54830022377166 "1583",10.7660560995606,11.1638334966517,11.210303996459,10.0105253070144,10.0613401543596,10.2073463884529,10.4908297187032,9.96183365162647,9.83238730825573,9.77735162217192,10.0150169576655 "1584",8.22344598109642,7.89809328778013,8.08896599166755,6.35900025183662,6.6134588887344,6.71562100072587,6.42891596161512,6.56528938654728,6.84346871555432,6.87852433571936,6.35118973846552 "1585",8.93785165006461,9.01619848970147,8.73448833373387,7.96611820757159,8.11975236897153,7.90733709200254,8.29858835270601,7.84505170690951,7.95485212886411,8.1714599136636,8.02655489405578 "1586",5.91669169048245,5.84196372967787,5.418413249836,4.72904957070584,4.76343465978073,4.39026667116431,5.0091772610784,4.71540688131158,4.73829774126364,4.51507976905241,4.33623189839069 "1587",9.23422384642856,9.6294700951131,9.30760066705108,8.79176852733227,8.52550083325926,8.82818601967934,9.02294138520114,8.60289469826364,8.43531705300914,8.9717961107169,8.87455096834142 "1588",7.591618665772,7.76780225913548,7.84824397936422,6.89829222892027,6.99942575048463,6.68684256874318,7.16673889189749,6.76864888687765,7.18604166357848,6.61984398459466,6.82539357006609 "1589",11.4095803807229,11.3802886641676,11.5665014363276,11.1660243937268,10.6867955842601,10.4143604355641,10.917528833776,10.8295447379725,10.6210568775653,10.4644731698233,10.5531228712604 "1590",9.67210091977004,8.8029153832728,9.17863896142134,9.63441918650558,10.0643085602343,9.94170432280184,9.62196096435403,9.88374003211383,10.0078626350706,10.2921701025122,9.95257830868576 "1591",8.98738480725149,9.0117861763896,8.74211830039699,9.40429110566902,9.77645125249346,9.76094021091912,9.46514769454361,9.40926892471926,9.74658265603509,9.7022016209173,9.57516343124586 "1592",10.841637749624,10.6450150141897,10.9587157872854,9.89153147815798,10.1422298950931,9.91897372062499,10.3307910479806,10.0428418973179,9.46643397093259,9.82872947354022,9.92762101333715 "1593",9.23180840892944,9.40398798146943,9.02766379608388,10.2991082158828,9.99599560909594,10.0263725052202,10.0691848822908,10.0890815186382,10.2775208569595,9.98441521891658,9.79300753891875 "1594",8.67162516019418,8.68590530640554,8.36598350501852,9.01620360197303,9.35714415690729,9.2822906056801,9.07877475952168,9.07533865673362,9.02815643109272,9.31848238236529,9.29809271430043 "1595",8.63551598983729,8.57059773749668,8.54245757359412,7.67926429367181,8.22445983317387,6.82519262173196,7.85033041428042,7.36660049554979,8.03826505815161,7.58977720315727,7.27491277202479 "1596",10.6018630700211,10.4213614647416,10.6965973516694,9.97533772255507,9.04477335227232,9.82754832874569,10.1316902843166,9.28388248128593,9.01353124291589,9.81277849859362,9.55814549862267 "1597",7.75573843135957,8.38506923685766,7.60992258308702,7.13712105712646,6.43850350967657,6.612207216185,7.0991743398703,6.72747987443969,6.53051842174467,6.49251568930576,6.60153727269307 "1598",9.71076705659779,10.3063239624275,9.3996875934051,9.29978140201371,9.26466000878117,9.25107776283189,9.60131907626226,9.23390084508073,9.09913578816708,9.29570585889079,9.39712351026887 "1599",9.18762382394278,9.36474445982833,9.74532901834701,8.21088943820607,8.33195779092463,8.1086013134395,8.32823385067599,8.22290605381997,8.09501387902365,8.40630430757315,8.26788326634701 "1600",5.20160456221532,5.34229206882021,5.19311942679736,6.12845239811469,6.70881868749609,6.1208982606487,6.04639115237076,6.67064525579817,6.29456940017177,6.12102121355555,6.28509519859856 "1601",8.08022223206692,8.2302240152333,8.64777773683386,7.0227239320402,7.20845157211192,6.99860798635178,7.2668306093309,7.1253766513517,7.05415311319903,7.34445723975138,6.79046862306178 "1602",10.4271438750111,10.639308127208,9.80661433656907,11.5071892502779,11.3022047029974,11.1146023751877,11.1525906086,11.2503726528162,11.0261560678,11.4074073865975,11.3915447363479 "1603",9.56105341541698,9.42901789916774,9.2119769654714,10.3272896242568,10.5579436167682,10.1499423432056,10.1256806828222,10.4062012693641,10.1735215995514,10.5526707545995,10.7502723417029 "1604",8.20383833467636,8.33646065059874,8.28989555448605,6.96876462166441,6.90903343211634,7.16353289372454,7.07926563097037,7.15657400758947,7.29706680728901,6.94449163271205,6.77863221585722 "1605",8.35813039393505,8.24535215755827,8.95403397692852,7.93848457611293,7.0961370359168,7.52799643435851,7.50874309491128,7.46105825513585,7.94253054199731,7.59659251687071,7.29157241507968 "1606",9.78017201239217,9.96565939633782,9.82468292511424,9.33986551212972,8.53409873520516,8.87934451321461,9.53755902694178,8.75920768081494,8.2379081314356,8.90220740477039,8.93118487410447 "1607",10.28530957413,10.2909358993995,9.82108727168243,10.3510144997968,10.7890174141022,11.0044886451107,10.846963270825,10.5028001995901,10.6392637282928,10.8966792163044,10.9190320384488 "1608",9.48805128953704,9.47139966611883,9.35562266985496,10.09725237614,9.70976593554414,9.98611825045608,9.99332460993603,9.82548051357612,9.9689885971003,10.0551463701323,10.0199966323434 "1609",8.49746936073163,8.21493506357812,8.21505537499727,7.33093685359887,7.33249425050712,7.31131752008256,7.33545046218468,7.06085076242672,7.61756105824218,7.40012787657292,7.0581377661878 "1610",11.1695550873458,10.992569408112,10.613822604822,11.5809348238278,11.3406595091489,11.6243541024547,11.2954054747397,11.3991978077402,11.3017444466544,11.7442568022736,11.6074696928738 "1611",5.40326495224052,5.31125124331163,6.05478656427908,6.96876462166441,6.66194786109538,6.16393427299536,6.49114145155366,6.83470072861068,6.74668576793685,6.63330252167169,6.4142723185568 "1612",9.35010960708185,9.90034980511296,9.8371975827289,8.27852568953924,8.20842556768602,8.81181917028021,8.72822688154078,8.23749087428768,8.52883814354876,8.43693055695777,8.37683091274404 "1613",7.35362998324763,7.6531799648424,6.92571489804902,7.82984692987508,8.22976510944951,8.00285314504708,7.97348809552184,8.0296923264924,8.03246495373817,8.02785879225662,8.17257446569435 "1614",10.5121810487845,10.2085447395237,10.4512258819662,11.0524447950541,11.082654845471,11.1585981151952,10.9491781273054,11.1228299047978,11.0985862498103,11.2866357496258,11.2095657422982 "1615",10.1499009530435,10.2085447395237,10.3784829710055,9.75196202302882,9.51086362043619,9.23644069819077,9.89499460242657,9.42207852761187,9.35717880969973,9.52840629123422,9.42555326987163 "1616",9.81608098410719,9.73090581987007,9.69710269070915,10.4749537522556,10.4036094410837,10.6377351516045,10.5664241554241,10.514806290072,10.2750714961874,10.5235696962474,10.5051000829792 "1617",11.0032610706347,10.8096773363558,10.4777284840571,12.0233385202113,12.4275907308537,12.3095910531022,12.023458222459,12.2843527802972,12.1147226731174,12.312732598293,12.3753472919025 "1618",10.8573871163373,10.8491469803152,10.6708623056284,12.089861313531,11.7336205981966,11.6686240563845,11.6408046576489,11.7279030996559,11.5634614593759,12.0133514340527,12.0574263605605 "1619",9.38748028392025,9.61645544925657,9.20094974180395,8.16396429768604,8.35641076097024,8.10322540131312,8.31560335748243,8.13214733223861,8.54113298867976,8.1714599136636,7.77820506591805 "1620",5.51007576263887,5.43096210363813,6.34920801052001,6.10311306989949,8.98020347164953,8.46343824668872,6.34699967672477,9.20701162662937,10.3710871680608,6.46257214152392,6.94653945327788 "1621",6.95432532809127,7.49090017416654,6.69100174166885,6.20176630746007,6.51113614459311,6.05368293120384,6.3637745907004,6.58083381215475,5.96006019369919,6.15925383687877,6.14255176514714 "1622",11.0285216648796,11.0619340490694,11.5573470925507,10.0400175681571,10.3894777502856,10.375934142439,10.5204456310971,10.224403024279,10.0937642181069,10.3565955307924,10.251434406651 "1623",10.9021113551869,10.4958871660344,11.3194439526309,9.10263017079498,10.1380096181679,10.173178817697,9.97605933136158,9.82226329348518,9.59966080439663,9.87973247920295,9.84304040901633 "1624",9.27467892823079,9.39554717722708,9.24724379824323,8.58039165716704,8.31708402375342,8.36361766000043,8.7440148818538,8.25671006792423,7.81312427424552,8.68030059676385,8.52444145309919 "1625",9.51809357313354,10.15655232491,9.7049281020706,8.71253090162759,8.49939470047741,8.56070792949847,8.99682947040505,8.26622421970556,8.21761388082079,8.7367580939207,8.66150819158169 "1626",5.1102803075969,5.73398691359929,6.17562106732623,4.80590313991191,4.95881094319955,4.85356377363824,5.14502080212905,4.71540688131158,4.87007984850553,4.65808106126267,4.93274810645829 "1627",10.7785177147927,11.0131245901819,10.8745014292447,10.1050250209255,10.2940844574572,9.9462077687254,10.4316586279893,10.2316959373149,10.1853094239587,9.85728684843158,9.9236406084039 "1628",13.2301626015371,12.8679526459619,12.6628700091759,13.8594253719014,13.6026234228194,13.9963412954892,13.5174843720574,13.6764675965695,13.775785862489,14.0860920701635,13.9848485209607 "1629",10.0964853009879,10.0292308145702,10.4218554590784,9.02278635626887,9.11805105006883,8.82492748996296,9.16571592427558,9.08073538378508,10.0210785754231,8.53219178875999,8.16808848214259 "1630",9.79986947543239,9.7939149262346,10.1794529427816,9.27793861213048,9.62785690165601,9.06754591745192,9.51750079057772,9.29320941560431,9.04838552577783,9.36298357674282,9.42179486775045 "1631",9.12131133424728,9.22880714902793,9.33054742635067,8.33785046483421,8.43197991639417,8.30865224959344,8.42155167513461,8.54156684299729,8.88765325165449,8.0177553637922,7.92380890578699 "1632",7.96258530413221,8.43208953824116,7.37405217620522,6.31587444688544,6.28074432712116,6.32372596223563,6.75392864179652,6.56528938654728,6.19190554505257,6.02045962596488,6.00431920355596 "1633",8.92594512122304,8.88483018599364,8.52043656504386,8.52579897824946,7.82932069098373,7.72317435879869,8.01055890115653,8.06284235810606,8.20220303234597,7.97661580669704,7.88056001282118 "1634",10.1613661943829,9.97021312777052,9.70102070426738,10.5879727956113,10.8401344001428,11.0964863535385,10.6101217395791,10.7454326067531,10.7943988375969,11.1304635789403,10.9283311851977 "1635",6.70973609194007,6.2502356334542,4.53109727184687,5.17721527231849,5.8974681997572,5.55881082326398,8.54928418681421,8.48567486574497,9.2638868327425,9.21634050081745,8.72696554222553 "1636",4.90198673375679,4.52173032050244,5.49810773191112,4.45117694514122,3.9890115841535,4.48644669672571,6.18607814866558,7.60331701934405,8.98082366806132,4.99188585377266,5.82675902967033 "1637",4.38318186180789,4.07560683285484,4.43062166511718,3.54830022377166,4.16918380110659,4.14782244847307,5.10151945545351,6.28964009345038,5.54809236335654,6.79745975501333,6.65445304833965 "1638",6.30508607877896,5.92242988896713,6.65871092362578,4.80590313991191,5.65499240986345,5.88248359145759,6.31282720400235,8.37574128442402,9.88794857527391,6.78548965119309,6.79046862306178 "1639",6.72372275293425,5.97975507916984,8.35108438866855,8.4447344449981,6.94848101549024,7.45371945467911,5.22742614345585,4.96000670487273,6.0809226256391,6.04117709694692,5.30807251233407 "1640",5.20160456221532,4.85503985708184,3.54830022377166,3.54830022377166,5.12418767680969,5.12270292620239,5.74090997444246,6.25098415102327,6.31421497718848,6.65983847795381,6.48930028701799 "1641",7.11086380579525,6.84114530884511,6.3694482360058,6.07729316885177,7.0486043849577,7.38429208622585,8.59179063704516,9.43898287278083,9.01939913961722,9.85869998098195,9.73815753648463 "1642",6.08114303943217,6.31026098422839,5.92211619827359,7.51098295473774,6.47529295316335,6.03051736948815,5.41158127901156,4.96000670487273,4.93015836537268,4.58944936008883,4.93274810645829 "1643",11.1625996285732,10.9942469989826,11.1348427014765,9.31057993695347,8.89269315381452,9.54237729955176,6.56521215361864,6.48486391434508,6.10385346314284,7.34445723975138,7.97095603628191 "1644",5.94145031362918,5.77824442532879,6.55712549554688,7.11248315845808,6.85466595400314,6.3424578003934,5.34122790279734,4.96000670487273,4.98704716969574,4.83852784420667,5.37741497761244 "1645",6.4646125355193,6.50195896005358,5.28833257709998,4.94419410387592,5.78180236170589,5.80182700427773,7.40092272496691,7.29375535725525,7.08828955603528,7.31991758798775,7.3798786193489 "1646",10.400515964635,9.40735051558685,10.8358304675282,8.23945869170488,9.1741038886182,9.95517269379991,11.7506963075482,11.7735848591609,12.5149450371369,11.9564211371112,11.8553271505319 "1647",5.78549346301469,6.05258163906458,6.6256602057308,6.7618541533593,5.86948201497142,5.77381127177675,5.10151945545351,4.84495354750819,5.14207053784841,4.23818768541642,4.23274464232371 "1648",7.85975257570908,8.21877256502565,5.80562626524342,6.74584694884066,6.82667759155909,8.00861716750595,9.9062571150998,9.6035791831445,8.52883814354876,9.05800395022448,9.41991198649254 "1649",6.76486804778371,5.99833314874529,6.60883822823196,5.61488371433785,6.0785626727083,6.58120453943995,6.50627320246526,9.05080015997564,10.8563307468847,6.47762432452458,6.21567278468669 "1650",8.10686676058028,8.03070215418876,8.26361165206592,6.59294157316564,8.17030206884004,8.04272399715675,9.27186155701844,10.0456032989481,11.2571458261873,9.00536960336184,8.94957879166079 "1651",4.14270956135568,4.19235554008301,4.77805840635708,4.72904957070584,4.16918380110659,3.54830022377166,4.6718025391129,5.32915405009094,5.7104892060778,5.45650952534963,5.30807251233407 "1652",7.78245739995991,8.12372211241184,7.95732252448553,8.01984006723454,7.13077178661059,7.39315721180163,6.24183481861087,5.94464232625034,5.77015986861159,5.71714885454669,5.85028907707368 "1653",8.42314272660274,8.82320533215313,8.75725805576152,8.74076252402032,7.06063744350186,7.03316008565936,6.57956677089401,6.25098415102327,6.81648699521578,5.08331287740239,5.37741497761244 "1654",5.28634990203998,5.43096210363813,6.1044136676551,4.72904957070584,5.8974681997572,5.77381127177675,6.79127264998927,6.36384896693785,7.42692214584957,7.00752371135829,6.90367688540501 "1655",5.15683916790939,5.43096210363813,6.00327387055094,4.55382476248647,5.65499240986345,5.4175148732471,6.16697714683118,6.34566665396276,7.11060007305094,6.64663319616527,6.54654471787116 "1656",4.14270956135568,3.54830022377166,3.99458687560867,3.54830022377166,3.9890115841535,3.9737401164974,4.35251077174588,4.84495354750819,4.49869474411581,4.99188585377266,5.44305738224905 "1657",4.27379169695302,3.92219398459048,4.43062166511718,4.00522961816383,3.9890115841535,3.9737401164974,4.60239513168466,5.36813953141026,6.62726529325089,4.23818768541642,4.23274464232371 "1658",7.76246497791378,6.62435239480156,7.16175225433513,6.500187110462,7.20845157211192,7.3482709372649,8.42547487931103,8.40186601346683,9.36641456729837,9.11589408122241,8.65831572753727 "1659",5.83953755398429,5.02844590494928,5.19311942679736,4.72904957070584,5.55101777956327,5.59180320170385,5.44531198202201,7.6330983687342,9.34788350791345,5.03853376538012,5.27185771113154 "1660",11.9306313321259,11.5874812070147,14.2981241925831,15.6461077267001,12.905818981061,12.5926877682586,10.9375623819774,10.8837844921859,11.7129963938559,10.9266288378846,11.0088053265618 "1661",7.32658801008734,7.07237672841144,7.48776309257842,6.8690907757931,7.25100929258247,6.51705963771854,5.84257292711029,5.11259910555834,5.74066404330379,5.45650952534963,5.67601085725439 "1662",6.08114303943217,5.66465997975799,6.02927536298391,6.51923699993902,5.75123300751287,5.62396795076569,5.14502080212905,4.27494782787477,4.87007984850553,5.03853376538012,4.82879049046518 "1663",7.96258530413221,7.0202222031051,6.91213390017899,7.75256639760947,7.35215873173572,7.1841457180674,8.96485755259403,9.07803954608352,8.82871505856858,9.15783520787227,9.63805966915697 "1664",6.22781582447258,6.52730961170283,5.80562626524342,5.94024907367982,6.21660807334217,6.16393427299536,7.46352604560399,7.46105825513585,7.83329469564151,7.51258608930794,7.17963333217221 "1665",4.56403575450106,4.45187351580727,4.70273040173548,5.06671461268446,4.41984085544861,4.39026667116431,3.54830022377166,3.54830022377166,4.15581191957622,3.54830022377166,4.10886942232174 "1666",4.38318186180789,3.92219398459048,4.3153118826282,3.54830022377166,4.41984085544861,4.72324945023249,5.34122790279734,5.20403385694408,4.98704716969574,5.03853376538012,5.27185771113154 "1667",9.07624308922366,8.89445010257218,8.88335442456664,10.044874844014,9.65371038929526,8.59172374923758,8.04158992416231,7.04980577540244,7.6482713495797,7.82257122540105,8.0364366243945 "1668",5.63977041271158,5.61629598738969,5.49810773191112,6.48087352776947,5.65499240986345,5.55881082326398,4.85422248960333,4.71540688131158,4.73829774126364,4.83852784420667,5.02750813069502 "1669",5.7291387983615,5.8625403799736,6.07982665675691,6.51923699993902,5.71993474216382,5.29989450830165,4.85422248960333,4.64355114355199,4.87007984850553,5.08331287740239,4.58142223425457 "1670",6.48125799080228,6.47613921847626,7.1033380709653,7.52965741113161,5.39764908336153,6.32372596223563,5.0091772610784,5.28887854364493,5.88196510402005,5.32077713645568,4.88205559019666 "1671",7.93309723216525,7.43905735481468,8.45227747610215,6.80881348613757,7.54378065752809,8.45080410064663,8.1163568830024,10.1273826487692,12.105792034106,7.89062355127854,7.77229881588328 "1672",8.70685116156997,8.85311435750612,9.14163090824415,7.95236784913055,8.35641076097024,8.07604005576735,9.33365902200752,9.26977795580103,9.617174309257,10.5734723989595,10.2588252088045 "1673",7.70075910350491,7.37149263286689,7.44147763113522,6.95494779097975,7.11932032558298,7.2829606782929,8.53845857842735,8.61410847520305,8.10056744725694,8.71818371538311,8.90179725175704 "1674",3.97008655127665,4.07560683285484,3.99458687560867,4.19185126479166,4.68891224809943,4.39026667116431,5.57184698087463,5.11259910555834,5.2787215413229,5.35613896259166,5.30807251233407 "1675",4.95788009688626,4.45187351580727,5.33324863235043,5.49895646334672,4.95881094319955,4.79051865717914,4.52717022062621,4.27494782787477,4.28967224937531,3.94912244603611,4.10886942232174 "1676",8.04207007199915,8.12781056648451,9.32293901495519,9.32662758457591,8.44115306687373,7.91962981770912,7.2039544662764,7.30306692115969,7.18604166357848,6.92284225377397,7.07751845829569 "1677",7.13188235112925,6.42301817472768,6.24330683421088,6.98244809672181,5.8974681997572,6.44982545987761,5.30447425058107,5.6114347801117,5.64795953546789,4.83852784420667,5.53547894831993 "1678",4.90198673375679,4.64642175332692,4.84809592326134,4.45117694514122,5.17436496058539,5.37954658604057,5.10151945545351,6.65607019101962,8.22779679934345,4.72200141940468,5.19596301279726 "1679",4.56403575450106,4.28998746829493,4.77805840635708,4.80590313991191,4.51917288855208,4.39026667116431,3.54830022377166,3.54830022377166,3.97945053140578,3.94912244603611,4.10886942232174 "1680",5.15683916790939,4.75624419227938,5.74329962514772,4.87732981549012,5.8974681997572,5.82926094386062,5.30447425058107,7.6330983687342,8.79831648860563,5.60778853118367,5.67601085725439 "1681",6.69560900497096,6.26548881224496,6.48505898608019,6.500187110462,6.62980875551585,6.26595636830419,5.7142170410774,4.90404046812327,5.58225280059011,5.51920250319321,5.44305738224905 "1682",7.5139458127215,7.60110366775506,7.44147763113522,7.6282272411301,7.0961370359168,7.53601635244709,8.77815117516067,8.65086939081869,8.13344570604696,9.14166946209558,9.28573859492151 "1683",5.2447303988107,4.98762515666861,6.07982665675691,5.68673393056132,5.35616394241025,5.4175148732471,4.6718025391129,4.56562326784538,5.09271807264536,4.58944936008883,4.23274464232371 "1684",4.56403575450106,4.28998746829493,4.43062166511718,4.19185126479166,4.51917288855208,4.85356377363824,4.44463567927867,5.67318746075466,7.24766993451312,4.89214603725089,4.50758419823284 "1685",12.1138867007225,12.0035821765096,10.4697138967244,9.25296328432148,11.9837641532992,11.3372118728498,12.9674378951939,12.5630277286336,12.4523728204128,13.2027572093534,13.051494998985 "1686",5.20160456221532,5.71128495209926,5.33324863235043,4.87732981549012,4.16918380110659,5.02279148452906,3.54830022377166,4.384503533957,4.40133275723348,3.94912244603611,3.54830022377166 "1687",6.32374568039042,6.29549777878735,6.57457614518915,7.12485544624734,5.95174206023759,6.3424578003934,5.57184698087463,5.28887854364493,5.7104892060778,5.42394699629378,5.37741497761244 "1688",9.71250021386941,9.85920471573528,10.1510950318711,10.5924029252478,8.86911030314915,9.93416718968716,8.50548464257947,7.97268388566016,8.72119128520223,8.30201315104198,8.0608476856796 "1689",4.14270956135568,4.28998746829493,4.17697833106617,4.45117694514122,3.9890115841535,4.48644669672571,4.85422248960333,5.40592556224865,4.87007984850553,4.94316935660089,5.23451608884748 "1690",6.90623264032249,6.56449352089582,6.95249236326906,7.19691200194374,6.17212405558635,6.26595636830419,5.26656920680189,5.36813953141026,5.74066404330379,5.69066019077603,5.80280358265392 "1691",7.6580951815487,6.86109848575082,7.19568362250554,6.74584694884066,8.15922138702639,7.87613679170512,8.8528512163048,8.57638455694447,8.86827382877781,9.25549663245181,8.98822109939604 "1692",14.012424210469,13.8152621944542,12.7233424487871,11.2966436362897,14.1733843920817,13.5904361815556,15.0021599130275,15.3053162239254,15.2115430876822,15.4540925201786,15.2409092606321 "1693",7.04587689925286,7.41241355458718,8.8519686499773,7.4825061660954,7.56917419730132,7.16353289372454,5.7142170410774,6.62645817772809,7.56218085650794,6.04117709694692,5.70237141167859 "1694",8.94966060830439,8.16806811621291,8.39047762394281,8.43982074822052,8.60109397713546,8.78188197714197,7.1285243154726,7.41889512543373,7.57822351135499,7.54113951340933,7.13412390184023 "1695",7.62154523715292,7.50986682441842,6.69100174166885,6.88376684868542,8.63345791261423,8.09241288324656,8.67321521953444,9.08073538378508,9.33382721422762,9.54781093949459,9.35832356990148 "1696",9.61949451717096,9.45199352418595,10.2426349548821,10.9422273543803,9.745344852182,9.74896080288785,9.06878279256704,8.63627742885038,8.89085796611533,8.47431916237521,8.40758888068319 "1697",6.32374568039042,6.57667169534873,6.6422828401053,6.88376684868542,6.12614548408454,5.95853781919032,5.7142170410774,5.11259910555834,5.47688516711479,5.60778853118367,5.19596301279726 "1698",5.06174854283329,4.58626187939733,5.418413249836,4.72904957070584,3.9890115841535,4.27998953468607,3.54830022377166,3.97076798325069,3.97945053140578,3.54830022377166,3.54830022377166 "1699",7.6141220077179,7.50986682441842,8.44294080738284,6.7132762502854,8.67291616608744,7.85708585459775,8.47173775949188,8.87557635038211,10.236564712607,8.5980244801631,8.89638905447111 "1700",6.14593937760047,6.31026098422839,7.55883943959597,7.74460433271526,5.9248799958122,6.48384779798115,5.6591344389259,5.91986195230456,5.908506347799,5.35613896259166,6.06529256597428 "1701",8.16886822106531,7.5035725037108,8.07088217728514,8.58484897985037,7.3024800928342,7.65121758975865,6.70254524427502,6.78210893022942,6.64275977322472,6.67292076434787,6.96749404277538 "1702",7.4062246804254,7.78863328715341,8.31570786320985,7.51098295473774,7.32255949543924,7.07795937095772,6.02521051972577,6.14930149609275,6.33358512450331,6.72406551931629,6.25082171740127 "1703",6.77832045411394,6.23481148737354,7.76062562001257,8.29494927890826,8.89936082225207,8.47596247210777,10.3076208032781,10.2304830095673,10.2627619133003,9.5824367215715,9.22664350451674 "1704",6.96609768642662,6.44983209581372,5.67786163365234,6.35900025183662,5.31322437542958,5.21461805136393,4.85422248960333,4.90404046812327,5.09271807264536,4.78196079501175,4.64957162869111 "1705",8.96428701282416,8.69419235782008,7.25049947825418,7.35209951399502,8.7264024121503,9.08671501849846,9.62707559696575,9.75298881703293,9.19557115181322,10.0365380478877,9.99618854242047 "1706",9.3434130426965,9.65515222938907,9.07373303535067,9.97024010674136,8.53837850906431,8.89807016610478,8.58479279259061,8.06284235810606,7.78578159383681,7.36058577694695,7.64229261323216 "1707",6.49770703607465,6.32486807052967,6.76862797768596,6.22535759709578,6.32190141837547,6.26595636830419,7.27559076168853,6.99325413025103,7.56218085650794,7.56913446046745,6.85947565463405 "1708",4.27379169695302,4.07560683285484,4.3153118826282,4.33331678257734,3.9890115841535,3.9737401164974,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166 "1709",9.43234559589316,9.62370030411594,9.63906176806089,9.7598617605293,8.89936082225207,8.88248240346106,8.58479279259061,8.27095780233231,7.28732333848181,7.65651370055754,7.93969720762546 "1710",11.6866871178468,11.350910838575,11.1964957622858,9.95139317453318,11.5313005503714,11.3598897142892,12.3697397961334,12.4583919351767,13.1704434845483,12.6937583424785,12.4972897461358 "1711",4.38318186180789,4.19235554008301,4.97546638098356,4.33331678257734,4.60803438435701,4.79051865717914,4.736433099266,5.86887992335646,7.05415311319903,4.23818768541642,4.50758419823284 "1712",6.73757181762199,6.87097044509682,7.05481513202291,7.39350664654034,6.40071463600213,6.26595636830419,5.34122790279734,5.86887992335646,6.46208792210859,5.66362134495617,5.64910430920177 "1713",7.90299095098025,7.55316853224875,8.00255715830206,8.08428546657848,7.51792847698878,7.2829606782929,6.95357030268435,6.36384896693785,6.40846469499631,6.50724974565549,6.84820604888636 "1714",9.85111755064988,8.99623582398591,8.73065814168617,7.61954148426211,10.2517460094845,10.0558426568787,9.79402160381424,10.6785204081957,10.8644996441878,11.2739833315499,11.0062984869392 "1715",6.44776575987266,6.1384379945953,6.842202056127,6.67993380946733,5.8974681997572,5.98296049015383,5.0091772610784,5.40592556224865,5.82724139574683,5.32077713645568,5.34323580728863 "1716",11.4840045677406,11.6047878674199,11.5045325479262,12.1900829562678,9.53246358295075,10.4443810567441,9.60131907626226,9.36130201033288,10.5680200103715,8.88843092348367,8.24250996755826 "1717",6.49770703607465,6.77953658567835,6.4664454336334,6.12845239811469,5.8408949819472,5.98296049015383,5.22742614345585,5.11259910555834,4.93015836537268,5.24679677984632,5.53547894831993 "1718",9.24144597083784,8.60616960519582,9.22292047699177,9.62579936902947,8.66119178023119,8.59172374923758,7.7156042158484,7.61082060400285,7.79266627085719,7.89062355127854,8.01660473495846 "1719",11.6166976944011,11.4364858751636,11.1713029106114,10.1864043059963,11.5541782925045,11.3497287776224,12.4312035267737,12.4651104384351,12.6417902870243,12.9702632184567,12.7442380738454 "1720",7.84081557285448,7.65885108897803,8.14765331852147,8.4447344449981,7.93712914351463,7.50366343129384,7.15728100924063,6.96998692311962,7.06562328853505,6.61984398459466,6.96749404277538 "1721",7.96841095917285,7.37839469988386,7.65114285598963,8.10306875627533,6.9223050852912,7.55980996663979,6.8747483721195,6.32724232099688,6.46208792210859,6.56467909886764,6.69287089323447 "1722",6.70973609194007,7.12268466075142,7.35418850759407,7.52035064472625,5.8408949819472,6.46694048896454,6.24183481861087,5.57941184941936,6.0809226256391,5.24679677984632,5.7784057768884 "1723",6.76486804778371,6.71511304341416,6.81323095846476,6.95494779097975,5.8974681997572,6.05368293120384,5.84257292711029,5.54656694097749,5.43971219929874,5.24679677984632,5.53547894831993 "1724",5.6085567987359,5.64070422642102,5.83571964842533,5.57739919796435,4.76343465978073,5.34037022736344,4.6718025391129,4.64355114355199,4.15581191957622,4.78196079501175,4.64957162869111 "1725",9.35677521175209,9.35607005394587,9.38271089442534,10.5746001851024,9.07747539658943,9.66219728931869,8.66328536134882,8.54547731527454,8.5971603726586,8.56375114679346,8.46720050786154 "1726",7.35362998324763,7.64176993636721,9.34313956136319,8.70026017388439,7.33249425050712,7.36639506661982,7.00730249805654,6.67064525579817,6.74668576793685,7.10672969928564,6.71791173993668 "1727",11.0683112309554,11.0092581694033,11.4641891121135,12.1174032364599,11.4006013108024,11.5429588630952,10.0578677412391,10.443318934766,10.3041928419951,10.1516820780224,10.4247748210679 "1728",15.8651761265278,15.698506133824,14.4197320630678,13.7759612017629,15.0308666466586,15.2262062014565,16.8292261934018,16.4479457785738,16.4831852033304,16.7187758720908,16.9084333479057 "1729",5.20160456221532,4.85503985708184,5.74329962514772,7.30945573857209,7.11932032558298,6.59679162433492,8.45264192153166,8.14767719888998,8.93809257546283,7.24366012261119,7.01856456429921 "1730",7.48165658586729,7.08088598802114,7.65924649376092,5.81955380472203,5.71993474216382,6.36093948153758,4.95996179375818,4.384503533957,5.79900900802131,5.48824617712437,5.67601085725439 "1731",13.2029935626366,12.9972456841816,13.7897162778288,12.9039595071776,12.3418235759339,13.8285498278394,11.1508164103089,11.3959558642928,11.6229342215282,11.4016029977238,11.9375555402804 "1732",8.06399516372781,7.71979593342229,7.292883496079,6.98244809672181,8.16477240153267,8.22205422548611,8.93766153499191,8.51787831724872,8.86175566418259,8.8939573315093,8.89096048265395 "1733",7.74218994995742,8.16010627518426,7.84114335871757,6.88376684868542,7.58585641340158,7.95588896825643,6.9644808674606,6.79544173688354,6.170418516415,6.64663319616527,6.45977249775491 "1734",5.36552087758783,5.45916336990591,6.52155702075574,5.911083037832,5.26870826387192,5.59180320170385,4.95996179375818,4.84495354750819,5.14207053784841,4.99188585377266,4.77260190574687 "1735",7.4062246804254,7.30782520211643,7.27184892251145,7.6282272411301,7.10777592294117,7.05573632290516,6.47584372686925,6.30856916803684,6.65808508296573,6.53625939289495,6.16120146958576 "1736",10.3084113589927,10.7618933730963,11.9815839726847,11.6030565680888,11.0964944353902,11.2100553909159,9.31476242168429,9.81094616717967,10.5035736953901,10.3405041097957,10.1265674565603 "1737",8.80113384044839,9.03153606936948,9.44711921516415,9.61277225789441,9.18505756700931,8.61455494269459,8.01055890115653,8.28973789808864,8.11710056757884,7.95029214946031,8.14087463751511 "1738",3.97008655127665,4.07560683285484,3.99458687560867,4.00522961816383,3.9890115841535,4.39026667116431,4.35251077174588,4.90404046812327,5.77015986861159,4.1133546816754,4.10886942232174 "1739",4.27379169695302,3.92219398459048,3.54830022377166,4.45117694514122,3.9890115841535,4.39026667116431,4.24697193895882,5.44259274699673,5.43971219929874,4.72200141940468,4.23274464232371 "1740",10.89754848539,10.5928215564738,10.6728583066878,9.95139317453318,10.8530647088508,10.7424167869573,11.4101010407,11.7458405099191,11.8126179352764,12.2212319679426,11.993049575545 "1741",11.2928175594928,11.469825786875,12.0220730243909,10.8247710982627,11.3246579157841,11.7596953914644,9.72095812175693,9.45983836385428,10.3409582070826,10.1539858201412,10.5531228712604 "1742",5.20160456221532,5.59141601637692,5.94971686400677,5.68673393056132,6.59691611192018,5.95853781919032,5.60160582989158,7.04980577540244,8.14424013099273,6.25041016925578,7.16160377756596 "1743",6.43071256109461,6.95684952108781,7.12699231844794,7.35209951399502,7.0486043849577,6.51705963771854,6.27778796454801,6.30856916803684,6.14858873074286,6.15925383687877,6.10447007721142 "1744",7.80868781103513,7.7519780301127,8.03401726116649,7.51098295473774,7.83630119781304,7.70906906148302,8.69936495459898,8.35805755288573,8.56139393720079,8.89119677690189,8.65831572753727 "1745",5.2447303988107,5.66465997975799,5.14246728046542,5.2287614540209,4.76343465978073,5.16956541079112,4.6718025391129,4.56562326784538,4.49869474411581,4.43350024566452,4.33623189839069 "1746",13.7011000605505,13.7283112626235,13.2400539503337,12.6511680884053,13.0200987019047,13.7710181237288,14.717706178582,14.5800664119044,14.4492807527995,14.9633367015748,14.9979925967439 "1747",8.69286396864584,8.74293773884929,8.29509519727085,8.15798950518304,7.82932069098373,7.61383736342438,7.34380053331067,6.65607019101962,7.00732291632297,6.94449163271205,7.13412390184023 "1748",10.0791270825946,10.2981977940488,10.6965973516694,10.6099886315549,10.0313151746374,10.2745394871439,8.93491349024959,9.18463207250417,9.39377208808905,9.05554066297361,9.39903636722169 "1749",6.43071256109461,6.60071482461707,6.00327387055094,5.72122142567301,5.97807741409379,5.90831820478849,5.14502080212905,5.24721063577333,5.47688516711479,4.99188585377266,5.41067060124599 "1750",4.90198673375679,5.27939455545772,4.70273040173548,4.72904957070584,4.60803438435701,4.39026667116431,4.35251077174588,4.384503533957,3.97945053140578,4.23818768541642,3.54830022377166 "1751",6.57716568849045,7.10611233977898,6.96569370017792,7.04895326229142,5.78180236170589,6.1208982606487,6.06724579431514,5.57941184941936,5.09271807264536,5.79354444200787,5.7784057768884 "1752",8.82377098888572,8.43208953824116,8.8519686499773,8.40494701939154,8.58463511053843,9.0730488670442,9.67230886902711,9.34120976599466,9.77633259967052,9.96355243454099,9.70761674063984 "1753",10.131882991525,10.5409659508172,9.84075334360266,9.64298778595322,10.5473751559132,10.2296832533598,9.54658497995417,9.6677244488771,9.32911116354697,8.30201315104198,8.61615659062979 "1754",4.14270956135568,4.28998746829493,4.43062166511718,3.54830022377166,4.16918380110659,4.14782244847307,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166 "1755",3.97008655127665,3.92219398459048,3.54830022377166,3.54830022377166,3.54830022377166,4.65095609464182,4.24697193895882,4.56562326784538,5.51298978105205,3.94912244603611,3.54830022377166 "1756",7.12141189966566,7.14718668390845,7.4968431193467,7.7683591412928,6.97418217090216,7.04449306397312,6.71556798592224,6.30856916803684,6.57972732505406,6.47762432452458,6.5038329404406 "1757",8.20383833467636,8.15210010208921,8.97360736585661,9.01290091543137,8.34667938075994,8.45923917335987,7.60207136474824,7.76667701711235,7.6097795074534,7.78729539643327,7.86399978207374 "1758",8.59472142415232,9.22118423120942,9.06159116894216,9.31862608864839,8.50814944726084,8.39473726108431,8.42155167513461,7.7327134765569,7.83995565728055,7.58292930028579,7.68065568496471 "1759",12.1350377595751,11.8038011347952,11.295030532424,10.2382133905548,11.9790535708907,11.9828330648636,12.6808978287588,12.6820376706928,12.5664281417946,12.8233291303743,12.661423204421 "1760",9.6083666485789,9.25703938444218,8.97684390628987,8.63728771700357,9.2902464771578,9.38318449498047,10.2797491271099,9.99649851058688,10.0727636718997,10.2911239163308,9.99745144583959 "1761",5.54375559944074,5.37256333406501,5.94971686400677,5.12329148338679,5.39764908336153,4.79051865717914,4.24697193895882,4.64355114355199,4.58582955381605,4.89214603725089,4.58142223425457 "1762",4.64185256734797,4.85503985708184,4.77805840635708,4.45117694514122,3.9890115841535,4.14782244847307,4.24697193895882,3.54830022377166,3.97945053140578,3.54830022377166,3.54830022377166 "1763",8.53324147578573,8.925278561258,8.63553853876001,9.57744673911345,8.50377872850389,8.05947856562951,7.83268681209922,7.66227324458249,8.23286135054098,7.74501307825584,7.760412854722 "1764",5.78549346301469,5.79982726714239,5.37656757260563,5.45783152550403,5.01670287124879,5.37954658604057,4.44463567927867,4.56562326784538,4.80633145078724,4.99188585377266,5.02750813069502 "1765",7.63627728800101,8.30432224226678,7.68328605018914,7.23161767463632,7.38115686904418,7.02173592168141,6.83957525877219,6.71348502662476,6.71776773269749,6.04117709694692,6.21567278468669 "1766",9.10820161706189,8.59145463094754,8.47992954291371,8.31655976426157,8.80663459020419,8.86672416809913,9.49902069811314,9.55401046497915,9.50038808177752,9.80400303037394,9.63805966915697 "1767",6.5459221304447,6.65907835489105,6.75344123428011,6.500187110462,6.00390758948263,6.07645934003377,5.86681368403009,5.44259274699673,5.54809236335654,5.69066019077603,5.41067060124599 "1768",10.1162578320045,10.0182786714839,10.3236375625639,9.47558756262761,10.0083790159967,9.8291747457824,10.6658473217246,10.8391254337298,10.622984245595,10.9775895531969,11.0025300406785 "1769",6.16687195712651,6.29549777878735,6.842202056127,6.38006970713804,6.14932815941719,6.51705963771854,5.60160582989158,6.08445307616774,5.43971219929874,5.74311119877536,5.80280358265392 "1770",5.98963878082147,6.20343391361201,6.15229533335878,6.46128859958821,5.17436496058539,5.74518636420907,5.05629560314322,5.51285175027105,5.43971219929874,5.24679677984632,4.93274810645829 "1771",6.90623264032249,6.68176093353336,6.73808903630757,6.88376684868542,6.49332967836598,6.59679162433492,6.44473499605013,5.91986195230456,5.77015986861159,5.91180974276632,6.06529256597428 "1772",8.99595192316531,9.22500072871327,9.76978352477433,8.48345162915246,9.42569970653418,8.75815964029826,8.41367303977394,8.00715966731889,7.93010232792828,7.90165843969665,7.9606118310761 "1773",4.47860358440826,5.14270022719375,4.77805840635708,4.80590313991191,4.16918380110659,4.57254454079382,3.95429096793669,4.27494782787477,4.15581191957622,3.94912244603611,4.10886942232174 "1774",11.4681934238305,11.7369072681361,11.8076614341433,11.9775046091329,11.8499868655915,11.855367116264,10.8278440117513,10.6838473129912,10.8448160153471,10.7657345922088,10.7465221291098 "1775",11.4459709316734,11.3661064784234,11.1839543293431,11.4971835428065,10.6713046010989,10.483116443134,9.72095812175693,9.75636416028854,9.48351096700676,10.1377818174139,10.2040901627596 "1776",8.29930825531523,7.91712847035902,10.2127625151718,8.5071315389524,8.11402443253493,8.21210233615098,6.97530809965684,7.97268388566016,8.26287979822327,7.10672969928564,7.21502181493005 "1777",11.7176469470303,11.4766423336235,11.162096276883,10.6099886315549,11.3637317427805,11.5295186337014,12.5952144895438,12.3785191609837,12.2017590185244,12.2348973669561,12.157968785498 "1778",8.63185477661566,8.89923608373775,8.40497645878454,8.79945776033231,8.60517946822245,8.97063030792545,8.21489949277023,7.87648532555971,7.76492707029667,8.02281595836473,8.08960396420665 "1779",4.38318186180789,4.28998746829493,4.77805840635708,4.94419410387592,4.89765324881629,4.85356377363824,5.47815535844696,5.54656694097749,5.36185741525923,5.390508541124,5.15610281821546 "1780",10.0710445921638,9.80287800498316,9.74532901834701,9.19586296104993,9.79086059534043,9.66402116960109,10.3505065037333,10.3187351761478,10.4251086751813,10.7275773224452,10.6177771806837 "1781",10.4407985372774,10.5470746127998,10.4765862656926,9.79680567166552,10.3388972262824,10.8015976632163,11.3567173617648,11.1942448672014,11.3836006296077,11.3923646853332,11.2972837300093 "1782",11.1663976718083,11.1101777871795,10.7238080093946,10.0187782754445,10.9428913233397,10.8408196220296,11.5682225396381,11.5838557439872,11.5165427379431,11.8763764694448,11.6606447895598 "1783",6.98935314955684,6.84114530884511,7.6753175822824,7.39350664654034,5.8974681997572,6.78509433379566,6.14760569582541,5.89461424683779,6.27464010390549,6.33590070251447,5.82675902967033 "1784",10.1927440612404,10.0753998029877,10.0363946955327,9.39417451251257,9.79979386947491,10.1538411773816,10.7766077511338,10.585765953672,10.582949134613,10.9651811318267,10.7651764520305 "1785",11.9911295659427,11.7511980423562,11.9819864907799,10.8999643972234,12.6706928555266,12.4575466929499,13.06925580767,13.1109754348644,12.809411369495,13.3888211030971,13.448482293088 "1786",7.25186604368027,7.47167867409579,6.92571489804902,7.4237930007383,8.11975236897153,8.0200763006083,8.71226392420413,8.8536731198127,8.64730351835059,8.28106062717419,8.53143916573651 "1787",9.23422384642856,9.12641921347621,9.42122511612406,9.52278088673235,8.73388372286726,8.81181917028021,8.49805340169281,7.97848761281659,7.87280451798811,8.37896109446497,8.45620975321545 "1788",5.67024772270509,4.64642175332692,4.17697833106617,5.41530931619833,4.83273793005469,5.68598866291392,4.6718025391129,6.94633149740552,8.21761388082079,4.65808106126267,4.58142223425457 "1789",10.3198249701831,10.2027520073997,9.99231546772547,10.722384457189,9.97090519327531,9.7541070242702,9.40487799596028,9.40497364214555,9.4360537457736,8.83771561518564,9.28573859492151 "1790",4.38318186180789,4.94522659172497,5.60895207119721,4.55382476248647,4.16918380110659,4.65095609464182,3.95429096793669,3.54830022377166,4.40133275723348,4.23818768541642,4.23274464232371 "1791",12.1641377627267,11.6611390639767,11.5930941254931,11.3121698417441,12.5753457310314,12.6575069255352,12.9471370972551,13.0739261327708,13.2358180339687,13.7825314481078,13.5160101554214 "1792",6.9777730900629,6.39567681457472,6.53945439298437,6.31587444688544,6.34202917570302,5.4175148732471,5.7142170410774,5.73213596531648,5.40139710278378,5.32077713645568,5.44305738224905 "1793",6.96609768642662,6.90978341613101,7.02991772613112,7.26549832774664,6.6134588887344,6.59679162433492,6.55070875443918,5.89461424683779,6.31421497718848,6.17797642034548,6.36723145639011 "1794",5.2447303988107,5.48674339719394,4.84809592326134,6.0509730364866,6.10256195383644,6.22605241805508,6.44473499605013,6.72747987443969,7.67087969468212,6.12102121355555,6.4142723185568 "1795",10.4891142091749,10.4599152073024,9.58708021324594,9.4635438746179,10.7591041747657,11.1126006817934,11.026681098434,11.48102836396,11.1596083886504,11.5847878396465,11.6466284771131 "1796",11.5006475178798,11.9336165081899,11.5173632764706,11.8422309839007,11.8961103210125,11.6817344145438,11.0654954936994,10.8335444300715,10.5438073065288,10.872403518673,10.9329583758862 "1797",8.55660514613917,8.08639315734457,8.26361165206592,8.41499745971143,7.73534120637942,8.09241288324656,7.573997487832,7.21698980922899,7.34481059615764,7.31164305003266,7.68695086985923 "1798",8.29004138613078,8.25659475684565,8.21505537499727,8.14596491795095,7.99439375813141,8.14044133216831,7.45584891455798,7.33971726974428,8.01492283068152,7.20841320868434,7.17963333217221 "1799",5.32657933118044,5.75630205634913,4.43062166511718,4.72904957070584,4.89765324881629,4.79051865717914,4.60239513168466,4.56562326784538,4.58582955381605,4.1133546816754,4.23274464232371 "1800",11.3423423319798,11.3088400180331,11.0952062332745,10.6067076002667,11.2620505320766,11.3666241294166,12.086069925888,12.1332293152403,11.9647409731402,12.0577006425772,11.966214427687 "1801",7.95673592491526,7.55316853224875,8.3807299458979,8.35361427173029,7.35215873173572,7.53601635244709,7.31860235401449,6.94633149740552,7.25768713221877,6.92284225377397,7.19743746588262 "1802",9.09762731201092,8.65510488621471,8.34608353800229,9.25016134975435,9.26981375981382,9.77451021517271,10.2862290184996,10.2545498677056,9.91965896524004,10.494778498543,10.2693182355421 "1803",7.58403828566429,7.64176993636721,7.95732252448553,7.78397989996295,6.66194786109538,6.91455388808087,6.3967273647607,6.72747987443969,6.85676877684425,6.30233725042679,6.5038329404406 "1804",7.86600979372371,7.83942488448672,8.20955763833261,8.09057387490146,7.95647212895258,7.85708585459775,7.45584891455798,7.35769553409876,7.1434230580559,7.33632413531097,7.40304374052886 "1805",9.4428251517902,9.09548034894743,8.02151575744409,8.91012772125452,9.47561622442599,10.0249540325604,10.1244757520262,10.0497355139201,10.0034302734989,10.6836076036696,10.5462363178213 "1806",10.5289964679867,9.8193773637351,10.6127832586713,10.4507592378535,9.62584884037771,10.0928690436321,9.24105280154092,9.03975860772135,9.28838937679224,9.31436787075556,9.4404896702949 "1807",12.4148694966034,12.3190250837364,12.3154048093691,12.1027279162835,12.3981928194462,12.5348187773842,13.5246946783023,13.61133558551,13.4534301944036,13.1438560558457,13.0595271447239 "1808",11.6586481070049,11.3412767146066,11.4017772072226,11.3321734970064,11.9044155333799,11.8449555900978,12.5149638758507,12.4110008191343,12.8994207790286,12.8475474195887,12.5914432287993 "1809",9.89298525070287,9.39045887341252,9.34814578196487,8.93127708600914,9.56006834714976,9.74551975811692,10.0704368785326,10.0007736190318,10.0166867034404,10.5047404228673,10.3226845039817 "1810",9.80475209083741,9.73626300965745,10.5500972253581,10.1250400309606,9.94858722450983,9.65854259390117,8.95945925325364,9.32311185195656,9.4749977497596,8.92937142458081,9.12165494744947 "1811",9.08429939732663,8.68867295787343,9.00881571426146,8.55789570611588,8.92245765521426,9.28703316267839,9.38287162416211,9.53840928967128,9.48138737018686,10.0440102103508,9.79446140192259 "1812",6.56163112081637,6.69296641160022,7.35418850759407,6.67993380946733,7.54378065752809,7.47056196813253,7.16673889189749,8.11117639548181,9.30048623241045,7.26953491887482,7.24099805435479 "1813",7.99719002784986,8.05667410912017,8.19293719425165,7.91030878238794,8.09088168598226,8.19704417881253,8.69612208256586,8.66890387143113,8.81528370303178,8.711938647811,8.69616606302557 "1814",4.90198673375679,5.37256333406501,6.02927536298391,5.06671461268446,4.16918380110659,5.16956541079112,4.24697193895882,4.71540688131158,4.49869474411581,4.65808106126267,4.10886942232174 "1815",12.0228992014936,11.7525202480163,12.0747266831193,11.4120329486302,11.7186274957976,11.9450869436447,12.4798285841023,12.4521623463923,12.6585641121819,12.8718907190766,12.6606263682154 "1816",10.2185840067366,10.1665067322847,9.49755277875696,9.66629224542391,11.1259139903073,11.0971613899432,11.336047848844,11.3954148313752,11.2008382421131,11.7901481810308,11.6538538729873 "1817",6.41344763352842,6.436489745233,6.40906331257205,6.27135914474364,5.95174206023759,5.85613856012376,5.7142170410774,5.6114347801117,5.58225280059011,5.51920250319321,5.50541836722824 "1818",8.10686676058028,8.14404909879108,8.50257399714653,8.02641622832246,7.02422802117677,7.43667618963523,7.3685617108551,6.79544173688354,6.98331532425672,6.55054143952896,7.0483473674609 "1819",9.64149591140938,10.0626633951141,9.94684653120231,9.55037284481071,9.77101041442592,9.79462877482363,10.7210951431721,10.4651395697116,10.0196161035031,10.5173205410373,10.6153116927371 "1820",6.88155947257217,6.38180153379745,7.81238425409674,8.96585054709072,8.65726234647678,7.65121758975865,8.8702173252855,9.26267360632071,10.344466915175,8.7671928843009,8.18594905456206 "1821",8.96137358383928,8.71062478445257,10.2277760656984,9.28890137381995,9.11232399251591,8.54097821295531,8.65328656795213,8.0296923264924,8.26287979822327,8.28106062717419,8.42648407647303 "1822",9.91873618658208,9.76537703332081,9.65530777713465,10.0138321633456,9.2568946714634,9.17123773748359,8.85576014189131,8.28973789808864,8.93499131704814,8.96393603413996,8.92853790016112 "1823",5.06174854283329,5.34229206882021,4.70273040173548,4.72904957070584,4.16918380110659,4.39026667116431,4.12059456186923,3.97076798325069,4.40133275723348,4.1133546816754,3.94592105499445 "1824",9.72113489363209,9.64236833355577,9.8011493207159,9.95483825853276,9.72860104721336,9.79296290617173,9.13970253090466,8.98899728994135,9.14547951934644,9.1669920263841,9.15373551231987 "1825",10.6950856316813,9.95994693910483,10.4947541061767,10.554305916848,9.62785690165601,10.3295786310692,9.41870916969877,9.24595936073872,9.53356101810585,9.52840629123422,9.47897708223457 "1826",5.8127914775599,5.8828036586062,5.9767616444246,5.53878302118535,5.01670287124879,5.12270292620239,5.14502080212905,4.64355114355199,4.87007984850553,4.89214603725089,4.71305020543012 "1827",10.3038205065332,9.5930242443929,10.3538114393727,10.0720946448098,9.33764417829762,9.78124763374266,9.04349555283395,8.88486247465067,9.03106374334181,9.21413365970055,9.02089293819244 "1828",6.01310160570544,6.35362736879785,6.34920801052001,6.07729316885177,5.65499240986345,5.82926094386062,5.68696720047667,5.36813953141026,5.09271807264536,5.63600666800275,5.41067060124599 "1829",6.10308606649056,5.92242988896713,6.07982665675691,6.0509730364866,5.58662010220739,5.37954658604057,5.18694714265321,5.11259910555834,5.36185741525923,5.35613896259166,5.34323580728863 "1830",6.9184097826443,6.86109848575082,6.67494907374409,6.85426078798228,6.14932815941719,6.3424578003934,6.16697714683118,5.78854419980623,6.0809226256391,6.06158243388933,5.87340967120574 "1831",12.9626212990434,12.6853062196408,12.4430983999004,12.1154807809013,12.9639907756375,13.1296468584842,13.5081607106901,13.497217930588,13.7832376438429,14.0155622286204,13.7027351153377 "1832",5.01103248145524,4.70290661503082,5.92211619827359,4.19185126479166,4.16918380110659,4.96927465433063,4.24697193895882,3.97076798325069,4.15581191957622,4.34246051744749,3.94592105499445 "1833",9.73313724376647,10.0487375094515,9.77164757644416,10.3666170339986,9.40711108425221,9.84533882789174,9.03582204988922,9.19710802628427,9.14547951934644,9.22513423630462,9.34845821359153 "1834",11.8565555533999,12.1878557652864,11.1776424886436,11.1215065075818,12.0128618569733,12.2792780008292,12.8170773609429,12.7298147182214,12.5845905578826,12.594642420145,12.6236922775609 "1835",18.5082094899228,18.5639574521393,18.485931125687,18.422651247261,19.1611630784399,18.7297354238271,17.6949602986101,17.8162325331523,17.7469673753341,17.1330055145406,17.0752046937128 "1836",12.6906109461069,12.8749504472673,12.9874717550779,12.5431854372918,13.0273415097911,13.2190316045518,11.9070654459855,12.4369955107655,12.2235158078519,11.8943988470627,11.8961811270556 "1837",10.957961893005,11.3530914684129,11.3565487827653,10.9543243733077,9.51737765045209,9.8291747457824,9.82995003432343,9.54623097626643,9.835715546093,9.06781521476474,8.87179778841891 "1838",7.12141189966566,7.58331550688759,7.20681678408743,7.39350664654034,6.51113614459311,6.32372596223563,6.46037622252273,6.28964009345038,6.46208792210859,5.99941972064136,6.26806503453322 "1839",5.20160456221532,5.31125124331163,5.57306370014904,4.72904957070584,4.3058722489524,5.37954658604057,4.35251077174588,4.64355114355199,4.58582955381605,4.43350024566452,4.42659789693357 "1840",11.4391845548003,11.0202777083809,12.0507521065548,12.0347764908027,10.7535981281017,10.8790033487224,10.4384620777687,10.2581255111216,10.7745952445538,10.7298954428531,10.2204054290334 "1841",9.73313724376647,9.71063723107715,9.42122511612406,9.41183223874574,9.83150310092978,9.86132375368437,10.20761859135,10.2829098668532,10.5630091024062,10.4220940879257,10.442500380682 "1842",11.1162256214827,10.9401525068745,10.9958629477724,10.4556307141986,10.9143889178811,10.9427344822764,11.3891846910886,11.503293684958,11.6123017609184,11.6632924291039,11.4627559222022 "1843",10.7551682650822,10.3593590684624,10.149662395157,9.79488466982075,11.022117987357,10.903908988624,11.1882006563559,11.2723441341007,11.0642448839579,11.5317455154107,11.4508215808071 "1844",10.0520074266451,9.96907604207921,9.76791706065013,10.4286316847604,9.20671834382287,9.43324232649028,9.28917539565664,8.80884171052989,9.01058831104345,9.1669920263841,9.07933074304389 "1845",9.99191389151711,9.40398798146943,10.0317358420846,9.82343443771926,10.2134850818637,10.5398330715265,10.9667644217543,10.5989846121545,11.0100454207314,11.0330822631869,10.7879777424543 "1846",4.27379169695302,4.58626187939733,5.03393706940664,5.2287614540209,6.23832076740441,5.90831820478849,5.26656920680189,6.59620756668132,7.87280451798811,5.66362134495617,5.50541836722824 "1847",12.4349506155896,12.2104019806673,11.7393067579595,11.9643203433991,12.636949698702,12.2461856849261,13.4258280383562,12.9032851119937,12.8474111363474,13.2874218779519,13.073364425229 "1848",9.63967522847076,9.64806406067315,9.1066052071882,9.23323440751714,9.59948635275869,9.8865367488704,10.1038364049883,9.96475442475088,10.206030606098,10.4325689695077,10.3653700853767 "1849",9.67743501926657,9.60185562240622,9.2119769654714,9.16644161951331,9.49114308354814,9.58728333997202,9.95993660187684,10.1208511460799,10.0239990780804,10.1711475928068,9.93291118936035 "1850",8.34028603840679,8.09477265669579,7.83400743326457,8.08428546657848,7.06063744350186,7.51182049470467,7.15728100924063,6.99325413025103,7.04258956503276,7.09711502715142,7.12484473646843 "1851",8.7480158376311,8.80546730861257,9.55713064863933,9.16346618683754,8.58463511053843,8.45923917335987,8.16881560454319,8.08452505120833,8.66238741374142,8.02281595836473,8.03150425371029 "1852",9.53386381493817,9.43232263115512,9.44010318045549,9.27242581086651,9.45314088417462,9.59495230756155,10.0038475767606,9.95744137163877,9.99303481646617,10.1585822952811,10.1664110761779 "1853",11.4768855014959,11.3785770184901,11.5140271159011,11.1060984486617,11.6872032026895,11.6475808072075,11.8028428955514,12.0018486233142,12.6052107077744,12.5068045079134,12.2051825380428 "1854",8.21367557215761,8.53104329430537,9.02140845011996,8.26191243566259,8.07916907012015,7.1841457180674,7.25801631444024,7.64044796691853,7.67087969468212,7.11627980185974,7.14334294337987 "1855",9.29564541035096,9.30109157426723,9.30502833530325,9.70158341092192,9.79444054788866,9.77619752290114,9.93128074137184,10.1898732234368,11.077658131968,10.4810822248317,10.252492556894 "1856",8.40609122623257,8.99623582398591,9.22564342341327,8.58484897985037,8.87250300493782,8.39473726108431,8.59179063704516,8.20817181988977,7.75085368164779,8.00758038701829,7.95541165781261 "1857",12.6500455140625,12.6188969942606,11.8850263538293,11.9834195272191,12.9068527658714,12.5220565470895,13.1252910027264,13.3357166776758,13.2065566664833,13.3573070501215,13.2570919495157 "1858",8.148496712053,8.37822487079404,8.22598820116811,8.28402107809258,7.66647186177329,7.55192262367988,7.80279003081154,7.02745473035602,7.35417069068958,7.26096204990197,7.41068273578848 "1859",5.06174854283329,5.17839038325611,5.67786163365234,5.61488371433785,6.10256195383644,6.48384779798115,5.18694714265321,7.46934371045286,8.79831648860563,5.32077713645568,5.44305738224905 "1860",7.03475077054921,7.53477084058202,7.41296962937049,7.17329607382823,6.38142750577997,6.30473681676143,6.25992873135254,6.14930149609275,6.56351593648969,6.14027133670331,6.06529256597428 "1861",8.93488422798929,8.74293773884929,8.99611197715886,9.19877233640337,8.14805465040806,8.30865224959344,7.82675707818696,8.11117639548181,8.16028132058192,8.25120476592275,7.93442061415904 "1862",7.70075910350491,8.06522815758222,7.48776309257842,7.04895326229142,7.11932032558298,6.3424578003934,7.10902511762892,6.84754823848757,6.40846469499631,5.91180974276632,5.94046067728516 "1863",8.208765364251,8.07373159444057,9.16167630350474,7.85963022288562,7.96922423053262,7.1841457180674,7.62277144374926,7.21698980922899,6.90875232671333,7.15385172140834,7.26650941086191 "1864",6.37826028686932,6.74769301624946,8.00255715830206,6.82412564138579,6.25969592333039,6.20565743408888,5.74090997444246,5.94464232625034,6.27464010390549,6.21467097356271,6.14255176514714 "1865",12.1783138372847,12.1659442407438,11.4041820554408,11.5641180209852,11.8717512490352,12.2007429757162,12.4948249697644,12.6608100642665,12.3237885431317,12.7217852803386,12.7734629475296 "1866",9.15739664516042,9.14869296983324,9.39001111274137,9.03911289198549,8.89603084465351,8.60318459135047,8.48307484510939,8.24231980078866,8.14424013099273,8.48534897120953,8.36903759883086 "1867",10.8176865349392,10.6249413458153,10.3400600494692,10.2225793446639,11.6065291062851,11.2878042119002,11.5463461366763,11.8178643983455,11.585866772006,11.7526409165519,11.7952443725185 "1868",4.38318186180789,5.02844590494928,5.74329962514772,4.45117694514122,4.3058722489524,4.65095609464182,4.12059456186923,4.384503533957,4.40133275723348,4.23818768541642,3.94592105499445 "1869",9.19260063392306,9.44382990710017,9.04934614773378,9.37886527064805,8.65332216289537,8.73404011564546,8.79643557771855,8.42328012288839,8.41764063031153,8.28106062717419,8.19920039801582 "1870",11.8380220968673,11.7548311960134,10.9766012040698,11.2420047181939,11.716742354388,11.5650846821955,12.0484487955473,12.1129696090002,12.1095771304056,12.3999879212976,12.2677427173163 "1871",11.0871341657107,10.8736579308547,11.032077527505,10.9352689527544,11.2516721554771,11.4930535547644,11.9282793077372,11.7922001072869,11.8774244128039,11.9431630150784,11.8873532953068 "1872",8.87421523233811,8.93928764326807,8.44761671170811,8.51649551299268,9.17959113199586,9.03971153141913,9.33990324806179,9.52461841007398,9.20332363239004,9.5824367215715,9.51822485167951 "1873",12.7366811496489,12.6677186539157,12.7012668754826,12.2121993646146,12.9691466377984,12.87463349685,13.3534999377005,13.3428896395846,13.3007681209213,13.5608944051808,13.5420955601726 "1874",5.2447303988107,5.75630205634913,5.9767616444246,5.12329148338679,4.68891224809943,5.02279148452906,4.90840757914297,4.48006681116437,5.14207053784841,4.34246051744749,4.50758419823284 "1875",10.0061142181453,10.0911637686417,9.49304011024701,9.90939723291607,10.1152905244087,10.4197672878866,10.7727675694788,10.5326301163011,10.6824145941013,10.8786849639208,10.7850558127511 "1876",5.28634990203998,4.98762515666861,5.33324863235043,6.22535759709578,5.81167864992286,5.52494213250567,6.25992873135254,6.14930149609275,5.74066404330379,6.31922086088212,6.47461459538549 "1877",10.0844903567172,9.6762100640487,9.76791706065013,9.18122734977859,10.477839258701,10.6662193877181,10.7941420975974,10.6624206427842,10.1226605854746,10.9684568677354,10.8832749032127 "1878",8.75812579657512,8.96233765996888,8.26890699105095,8.55335403224825,9.02965990602696,9.06754591745192,9.58213421758047,9.45361332897294,9.53560920453725,9.19635624404988,9.12165494744947 "1879",10.1777678462056,10.3766127918053,10.4182904813466,10.28959071822,10.4733799267533,10.2946905350142,9.77264242969281,9.6713051176028,9.84234906815211,9.83304929481779,9.91564669070588 "1880",10.2295181171176,10.3251088629646,10.516035369081,10.0416384782931,10.3740105523279,10.3602723484128,10.8174430959778,10.7101907124911,10.6325826467074,11.040571608715,10.9362544487057 "1881",11.1076913093561,11.2627242312864,10.5918375113073,10.7962517091293,11.0478385568413,11.1848737401894,11.7062900166455,11.4728459208824,11.6888189982871,11.6309963662648,11.5995919052941 "1882",11.633715974894,11.4965063250019,11.1435048450778,11.0240309786846,11.7530655077253,11.9644534411889,12.1026845623636,12.0654674809864,11.9332445417228,12.5459206316018,12.4434092495923 "1883",8.59847814381826,8.58255292698616,8.73065814168617,8.5350427132569,8.5211825515643,8.57241728838446,8.19204213747173,8.23264568134189,7.98520144493695,8.10145181452369,7.98122628200915 "1884",5.67024772270509,5.96091715432509,4.62096009533438,6.29379629231463,5.9248799958122,6.88959297378132,6.63555812986883,6.34566665396276,6.53051842174467,6.96581519237041,7.11550464688 "1885",11.1090075711318,10.872442224156,10.3942961101312,11.0858187443709,11.4215848510592,11.4556428115278,11.7758545745779,11.9300740739706,12.1033781555659,12.011447167236,11.8863312145534 "1886",5.32657933118044,5.59141601637692,5.418413249836,4.45117694514122,4.83273793005469,4.79051865717914,3.95429096793669,4.64355114355199,5.32100047365207,3.54830022377166,4.77260190574687 "1887",10.1852753905492,10.2210164173413,9.62263064852724,9.70976319199083,10.5032162891312,10.1680474097959,10.5250186813751,10.775682394566,10.5468562135162,10.8138764309954,10.7230506441758 "1888",9.37440095493404,9.39723929586054,10.0018750818009,9.04559207095056,9.34498761182278,8.73404011564546,8.94860160770881,8.2756758601949,8.32584747663876,8.63150104027328,8.70547525126569 "1889",9.23663524358812,9.23449800084737,8.69572024895472,9.74401877470986,9.60968288486104,9.67672414853739,10.5805519213902,10.110338829763,10.1892173879068,10.0514438620966,10.0700709147796 "1890",8.208765364251,8.24158501242507,8.55117253298884,8.10927570311387,7.5522953174416,7.63638232466681,7.40092272496691,7.31231811600864,7.32590428280078,7.25233733061746,7.54856942055235 "1891",5.28634990203998,5.59141601637692,5.45889453101379,5.00715176399614,4.3058722489524,3.9737401164974,4.12059456186923,4.14366324222193,4.40133275723348,4.1133546816754,4.23274464232371 "1892",5.40326495224052,6.07019209809631,6.50342732201785,5.2287614540209,4.76343465978073,5.77381127177675,5.14502080212905,4.84495354750819,5.40139710278378,4.83852784420667,4.71305020543012 "1893",7.99719002784986,7.94984469396457,8.62732090455337,8.03296242975768,8.19763587511132,7.40196767134749,7.79065468949202,7.25588912772885,7.58617793580115,7.35254427892487,7.41068273578848 "1894",9.2049680027222,9.04671214626042,8.5897499961985,8.96585054709072,9.16306633832246,9.29882174631299,9.51198158859648,9.57900780107886,9.47713077084185,9.85869998098195,9.7199107802087 "1895",5.01103248145524,5.24667094069968,5.24167748837746,4.45117694514122,4.60803438435701,4.79051865717914,4.24697193895882,4.14366324222193,4.58582955381605,4.43350024566452,4.50758419823284 "1896",11.1155709254141,11.0496167422234,10.7486235627736,10.7583130541367,10.8802679995933,11.2000354155186,11.4486404690566,11.4417416610439,11.4095133039052,11.6757706457424,11.6082964367657 "1897",4.64185256734797,4.94522659172497,6.00327387055094,4.45117694514122,4.41984085544861,4.14782244847307,3.95429096793669,3.97076798325069,4.49869474411581,4.1133546816754,4.10886942232174 "1898",10.1044268687825,9.9251887509707,9.55929065473292,9.72598486915878,10.0834557047759,10.4528448595563,10.6823174745905,10.6543028733142,10.3938424944349,10.6867931330564,10.5870709619866 "1899",9.45115430063887,8.93928764326807,9.29209737834499,9.90406070542631,9.65961132660006,9.75067825124529,9.99068182833113,10.3503460782363,10.0840020013098,10.4737240220392,10.442500380682 "1900",11.6194710897492,11.5893322408741,11.0475438016309,11.2135296762058,11.8839821965049,11.7622512806789,12.0179536226162,12.1162566082981,12.2282712459817,12.3784791597885,12.3046799458792 "1901",5.96576034774202,6.28057493588452,6.30781724882702,5.81955380472203,4.95881094319955,5.55881082326398,5.14502080212905,5.01322721136904,5.54809236335654,5.20801686055131,5.02750813069502 "1902",10.8830034422711,10.7592648079183,10.5446574888696,10.5757193164008,10.8768955099956,10.9100687886125,11.1742948452376,11.271165003006,11.2409224231108,11.4184676087304,11.4885792445531 "1903",7.57641756494067,7.70342991117755,8.21505537499727,7.40367358381682,6.99942575048463,7.41072414123149,6.99671767479317,6.56528938654728,7.11060007305094,6.99721099176041,7.01856456429921 "1904",9.01855167070949,9.1587047342605,9.79566351713495,9.13943900244261,9.12375544281463,9.0536959157296,8.94040434927026,8.64723523700066,8.76377055339133,8.59123476117801,8.50324190481722 "1905",8.47720506147292,8.50300867513983,8.1186091113731,8.19930091953913,9.25429690277036,9.46288270066733,9.23882677549923,9.64605169881719,9.3267473405983,9.33075592918227,9.45711022525845 "1906",5.8127914775599,5.77824442532879,6.12856456325381,5.81955380472203,4.68891224809943,5.16956541079112,4.79704755731515,4.84495354750819,5.36185741525923,4.78196079501175,5.15610281821546 "1907",6.69560900497096,7.39209958961505,7.18446275990153,6.44142432501257,5.95174206023759,6.26595636830419,6.29541878532773,5.81586767921463,5.74066404330379,5.5494201062907,6.28509519859856 "1908",6.86905962463961,6.77953658567835,7.292883496079,6.44142432501257,6.4570197312126,6.44982545987761,6.38034884627584,6.28964009345038,5.96006019369919,5.99941972064136,6.16120146958576 "1909",9.30256702182736,9.09756372903411,8.67194846022544,8.9347719979477,9.6926014088843,9.55028818187975,9.73523853216185,9.82065198812431,9.65157585822036,10.0227377266893,9.94605235493587 "1910",11.0333824948719,11.0458470261148,10.982245828673,11.1749131579842,10.8827922028142,11.4333633048297,11.6708271582091,11.4317505115335,11.6415922130592,11.8143793125117,11.8570671904525 "1911",11.1695550873458,10.8571588106249,10.6477075640718,10.56223209396,11.5880865300129,11.623417210831,11.5945659016003,11.8186717076941,11.7170620438523,11.9916211426485,11.7788149868009 "1912",5.32657933118044,5.71128495209926,6.00327387055094,5.32561057076274,4.76343465978073,4.57254454079382,4.79704755731515,4.48006681116437,5.18940370702617,4.78196079501175,4.10886942232174 "1913",10.5417243432991,10.4271692268957,10.9314648896621,10.2813825805694,10.2094685061462,10.4779423192113,10.042638750676,9.97493080169509,9.71077842706704,9.76685270350634,9.8694913378918 "1914",8.88655510159278,8.97145541761176,9.09175618158335,9.0260664927571,8.20842556768602,8.37703711426079,8.33241949645516,8.04636292844579,8.25294309215164,8.23386186678073,7.96579324541916 "1915",6.75128602916666,7.63026831658569,5.9767616444246,5.8812668252616,5.9248799958122,5.52494213250567,6.27778796454801,5.89461424683779,5.85488481424146,4.78196079501175,4.82879049046518 "1916",5.67024772270509,6.07019209809631,7.09136174566226,5.49895646334672,5.68786865869757,5.52494213250567,4.95996179375818,5.24721063577333,5.40139710278378,5.42394699629378,5.62162634442846 "1917",9.36561501734144,9.11412324227118,8.96711239683296,9.10573373093214,9.09790599701654,9.59495230756155,9.48594225117135,9.57900780107886,9.69620407411954,9.83592200405294,9.80459761115974 "1918",10.1727410195099,10.060529683168,10.0866728219571,10.0956928082743,10.4082894055706,10.7604273622734,10.5213614016861,11.0043552114843,10.6916268266563,11.0110135951237,11.1903699873997 "1919",10.9358804672444,10.8216950215968,10.0332904658835,10.9404908980798,11.5334440830701,11.7067186862812,11.7211116639475,11.8222990195524,11.6108457894592,12.1445359862839,12.1953124784275 "1920",10.4165516229559,10.8185421666135,9.511006661628,10.1553000485733,8.1758105530426,8.34097001189902,9.48594225117135,8.14251919273416,8.60888779655961,8.31030946154284,8.0215884275208 "1921",7.20309499160792,7.01134044782061,7.36415487461851,6.77768161474541,5.81167864992286,6.50055253095265,6.04639115237076,5.91986195230456,6.00970957204651,6.15925383687877,6.33495998760446 "1922",5.63977041271158,5.66465997975799,5.80562626524342,5.12329148338679,4.83273793005469,5.21461805136393,4.90840757914297,4.90404046812327,5.18940370702617,4.51507976905241,4.71305020543012 "1923",7.04587689925286,6.92879793798001,7.16175225433513,7.0227239320402,6.21660807334217,6.54949985976367,6.42891596161512,6.25098415102327,6.59575316118728,6.23265672738425,6.10447007721142 "1924",4.78038542738455,4.70290661503082,5.49810773191112,4.55382476248647,4.3058722489524,4.27998953468607,4.52717022062621,4.14366324222193,3.97945053140578,4.23818768541642,4.10886942232174 "1925",4.14270956135568,4.28998746829493,4.17697833106617,4.00522961816383,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166 "1926",7.98574749251265,8.16806811621291,7.97688346858888,7.63686065552915,8.03740649299821,7.68043517636272,7.66993933350877,7.47758144184037,7.39100943196294,7.30332025620943,7.48490815233371 "1927",4.38318186180789,3.92219398459048,4.43062166511718,4.72904957070584,4.68891224809943,5.4175148732471,4.24697193895882,5.7606426863395,6.83004228012593,4.1133546816754,4.82879049046518 "1928",9.61022726679586,9.36301374875604,8.24760766297991,9.46837342804354,9.85911546353578,9.47540154007842,10.0220800287951,10.0456032989481,10.0298224023139,10.0735176731221,9.87774447273901 "1929",7.96258530413221,8.04806884062945,7.98334503387788,7.71230649981861,7.65070757354956,7.91962981770912,7.87926285401679,7.39298705098007,7.35417069068958,7.30332025620943,7.29157241507968 "1930",7.49789229134066,7.17127399719128,7.76813503017998,6.92690329526043,6.56323269003586,6.71562100072587,6.00369290325292,6.36384896693785,6.73230098090969,6.59253306201405,6.61495454236689 "1931",8.56814634066043,9.02498279704187,8.18735408500122,8.28402107809258,8.07327677468168,8.17159147679936,7.94641071723562,8.10588551053498,7.80633729904285,7.58977720315727,7.77229881588328 "1932",5.54375559944074,6.15497875771609,6.00327387055094,5.53878302118535,5.22247567483854,5.34037022736344,5.22742614345585,5.15921474215736,5.43971219929874,4.94316935660089,4.98115357179952 "1933",14.5353723846794,14.2756728932648,14.1490071087837,14.7142465350626,14.2567518780821,14.5116248252184,15.0987267655368,14.9824892047689,14.9457461032283,15.2873177156675,15.1923559575788 "1934",5.01103248145524,4.98762515666861,5.03393706940664,4.33331678257734,4.16918380110659,4.79051865717914,3.95429096793669,4.48006681116437,4.28967224937531,4.43350024566452,4.10886942232174 "1935",11.7445728272031,11.5180453785916,11.080996963986,11.4703579172185,11.4134608133147,11.8214555019173,11.9095157278848,11.8960563628583,11.863634751705,12.3806936987148,12.2038157277904 "1936",10.3129876465892,10.033588491623,9.88275241409623,9.91294397957302,10.521690393983,10.5137774000191,10.8263627500042,10.6524927039709,10.5549552672106,10.9513412323155,10.7321817385537 "1937",4.95788009688626,5.64070422642102,5.94971686400677,4.64558758720875,4.89765324881629,4.72324945023249,4.85422248960333,4.56562326784538,4.66516704800045,4.51507976905241,4.23274464232371 "1938",11.0103223861425,10.8546983679385,10.9717453129715,10.7885503435012,10.9982603797577,11.2878042119002,11.4282794006561,11.3905363827204,11.3362215618359,11.7094415621966,11.5301805645649 "1939",10.2582769019286,10.0357624029366,10.0625143367216,10.4892780395284,10.6408090083194,10.5066812480375,10.6424685464067,10.8698304209384,11.0521369200091,11.2569389538465,11.0348674422125 "1940",3.54830022377166,3.54830022377166,4.97546638098356,3.54830022377166,3.54830022377166,3.9737401164974,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166 "1941",8.66088714623735,8.89445010257218,8.54245757359412,8.46422319875553,8.16477240153267,7.85708585459775,8.05685771125266,7.90114586667308,8.16558885965438,7.44617784201444,7.67433272987327 "1942",12.2077913388909,12.1069527035369,12.1075617468555,12.2810505968657,11.8404959810701,11.8668920120299,11.4105953714822,11.4713065326682,11.6142407732624,11.5506641073335,11.6324746502835 "1943",9.48602603937168,9.71607010241605,8.92416620596901,9.60621430362675,9.95659763011375,9.7386129387965,10.2223361460872,10.1911207702919,10.0881939016468,10.1366173929728,10.1403524699167 "1944",10.4112261860784,10.4321287650746,10.9389481505796,10.6657052256489,10.1138586287252,10.1782920350458,9.91743236095489,9.94861647886041,9.84069354584351,9.94105000039865,9.9745482468113 "1945",11.8997837472559,11.5427107672315,11.9332805130371,11.8135847221622,11.7781390846644,12.2234886845937,12.331877240938,12.1839214231735,12.3499150536066,12.6834302074271,12.4890094467439 "1946",8.3536900071723,9.17852203962688,8.30543844396847,7.41376869620371,7.90430035856233,7.62890668931544,7.97348809552184,8.12693320707114,6.81648699521578,6.65983847795381,7.22373327348314 "1947",10.5191288002886,10.1077909062939,10.8015776967999,11.0075396557097,11.2013288310529,11.3199664375695,11.5186403652933,11.740312249054,11.1937237626104,11.8410721903963,11.7640523400418 "1948",10.9373631243238,11.130151836422,10.5791225059098,10.5497570418822,11.5620743066837,11.8569622413364,11.7151212291516,11.728762338336,11.4016759938424,11.9560911646973,11.9933660540158 "1949",12.4249449951969,12.2446315719732,12.0800006909616,12.8339013841219,12.8820454341039,12.8492136885889,13.2268825336485,13.137423299569,13.299714256785,13.5797580546746,13.4862998380141 "1950",9.28636459734909,9.3768016133613,9.73962629225453,9.19877233640337,9.26723918730421,9.11099223642791,8.79643557771855,8.98612410267152,8.99280339313227,8.82330534351434,8.70237886857615 "1951",9.80312638837258,9.79519878158299,9.80479496463724,9.86431090946723,10.5010272278358,10.5268640644019,10.8557027985695,10.8383294682127,10.672212723259,10.5092459270365,10.5086470711659 "1952",8.33128018637385,8.4419685356813,8.64370954989642,8.03296242975768,7.42821628028939,7.77147814172358,7.7156042158484,7.25588912772885,7.27751286534764,7.54113951340933,7.55547121243741 "1953",10.0683403324409,9.75485799361294,9.98430043508069,10.1235102367791,10.4856100712145,10.0292052723636,10.5637597260399,10.5923904240538,10.3491319557132,10.7096802160586,10.7283841374722 "1954",9.43024051373411,9.38875877384605,9.06767488765395,9.40176860425243,9.66353191278051,9.55619299213309,9.63893966332627,9.93973725693104,10.0895884988301,9.99986662300296,9.77838772583363 "1955",7.44862159904616,7.32222092603702,7.722477213493,6.92690329526043,6.76897938111069,6.95118912698659,6.93149388136214,6.64134227420539,6.46208792210859,6.50724974565549,6.66737605381507 "1956",9.51014329950609,9.27002757512691,8.99611197715886,9.26411688032526,9.61576637537467,9.72819028891394,9.75872940389728,9.72397488890872,10.0283687739559,10.0477318252313,9.84724925808437 "1957",9.94255943989221,10.0932526731789,10.1780482106374,9.9719413146637,10.22811756933,10.2023353134879,10.4767351352229,10.4537508893815,10.3327378775596,10.6341359090995,10.6037500355862 "1958",9.628702592468,9.99612169113463,10.0348434158324,9.71383574963396,9.2723837427437,9.4523666608158,9.28702250294436,9.25553407362448,9.30048623241045,8.91041051218163,9.01591445856804 "1959",8.29930825531523,8.16010627518426,8.73065814168617,7.44363314681225,7.85016117313733,8.43805808303543,7.573997487832,7.33971726974428,7.92384765319444,7.6887514157165,7.67433272987327 "1960",10.3015195894451,10.6753086122337,10.4800102110266,10.4519786501418,11.021354513966,10.8049071993607,11.1472614543079,11.3486691765007,11.1956675573995,11.0110135951237,10.9974900834738 "1961",3.97008655127665,3.92219398459048,4.17697833106617,4.55382476248647,4.76343465978073,4.79051865717914,5.26656920680189,5.20403385694408,4.93015836537268,4.1133546816754,4.82879049046518 "1962",9.0241466655017,9.1587047342605,9.1758256769784,8.45937569041349,9.01131205125623,8.34097001189902,8.75963172430597,8.32202448506967,8.19183661884524,8.11572881921334,8.16808848214259 "1963",11.4386612011197,11.4794398121929,11.0061899948972,11.359720659659,11.330217037236,11.8230885450446,11.8586149714064,11.7773271743741,11.813462071929,12.0793742557599,12.0119164590616 "1964",10.2427704406588,9.99612169113463,9.61018326765666,10.0689188493515,10.4094570280958,10.508712284593,10.4805071769423,10.6222922239757,10.4824974201085,10.9898921538223,10.8743672385514 "1965",7.04587689925286,6.94756056408147,7.27184892251145,6.67993380946733,6.0785626727083,6.22605241805508,6.46037622252273,6.25098415102327,5.82724139574683,5.99941972064136,6.04527163698523 "1966",11.6423776938818,11.5000529769845,11.4071824892453,11.564681750843,11.668307380596,11.7146583185528,12.0150308973792,11.9338047772876,12.0613566502302,12.1448255574439,12.089753040737 "1967",7.64358689375606,6.89051001351939,7.51483209832686,6.7618541533593,6.49332967836598,6.53337388382174,6.46037622252273,6.25098415102327,6.29456940017177,6.56467909886764,6.31853756118564 "1968",6.69560900497096,6.62435239480156,6.93916689557714,6.33760537438245,6.21660807334217,5.93366313679853,5.98182671402093,5.84263840078618,6.29456940017177,5.99941972064136,5.67601085725439 "1969",13.6249401485882,13.4376577750376,12.9743822595542,13.3574204675762,13.7932374453081,13.8812320343371,14.0876828081655,14.1027853420429,14.0453164390912,14.2810655802074,14.1901886272057 "1970",9.69507419033593,9.42736268842898,9.59130839308117,9.74401877470986,10.5547812005669,10.4800141964062,10.1846788396162,10.5434150204268,10.7332614291972,10.6978874134223,10.8695479235757 "1971",12.7426293707639,12.6994291957644,12.6766119762855,12.6072444599211,12.9288000471946,13.058991940737,13.0694123406774,13.1868767371563,13.270657662463,13.5096509860565,13.434565664722 "1972",11.0423665262259,10.8367335399741,10.3513209178758,10.842546045317,11.0175310743945,11.3638219425994,11.1748769381139,11.4002768385998,11.2471838031063,11.7008018308566,11.6910095564417 "1973",9.06271502611384,9.15470836899439,9.54191932670745,9.09327919268387,8.64937117040887,8.8730481577698,8.811497292161,8.48159830870355,8.54113298867976,8.52864210960549,8.5693302404221 "1974",7.48165658586729,7.24874425335053,8.00255715830206,6.7618541533593,6.99942575048463,6.64253913084015,6.44473499605013,6.45134919921931,6.46208792210859,7.00752371135829,6.57431102493756 "1975",9.39828981515611,9.62370030411594,9.26852529918445,9.63226905771049,10.198702633479,10.0792661447545,10.2754129707451,10.2770473398181,10.7026044077824,10.0686414932386,10.1403524699167 "1976",9.82090911369055,9.6873164315608,9.48624451618217,9.68715619473868,9.95499910418258,9.84212047202258,10.0629085475706,10.3164505237502,10.12809961991,10.1677315348188,10.0507360318649 "1977",4.38318186180789,5.02844590494928,5.418413249836,4.64558758720875,3.54830022377166,4.65095609464182,4.24697193895882,4.14366324222193,4.28967224937531,4.1133546816754,3.94592105499445 "1978",10.2136976694624,9.67481573454127,10.1920343471418,9.64725306850123,9.42338919231626,9.58343350740081,9.33574343699946,9.18713591618254,9.07961134912224,9.50513169789254,9.15826071799498 "1979",8.68581910599042,8.92996340372811,8.5770053316725,8.52115476020547,8.23505088897801,7.58321459177539,8.20580009791753,7.70495132134486,7.82660267366782,7.9180533692212,7.65519474955602 "1980",11.4743344399573,11.3478524086475,11.3277019591982,11.1983522056675,11.827015589811,11.8066743280661,11.7345985916209,11.9720427131522,12.004832325606,12.1069826069641,12.058031633207 "1981",7.74898018933612,7.78345381968473,7.06710206958041,7.24300092293367,6.62980875551585,6.24614906756788,6.3967273647607,6.39951332746705,7.12162542956801,6.40068061702198,6.19775514290742 "1982",10.8612977376985,10.5779818271118,10.7160857687588,10.9106467797848,11.2372788700458,11.2878042119002,11.277088516714,11.4190303956274,11.497234420046,11.7113979424218,11.5445053615075 "1983",12.0577380336219,11.8994091022638,11.9514815968604,12.3503658908875,12.9179706927532,12.9402454786083,12.7201102564727,13.0962363992861,12.9938564154583,13.4077663076764,13.4261507914122 "1984",6.3603261369929,6.1384379945953,6.19855602264465,5.911083037832,5.51439142996744,5.21461805136393,5.47815535844696,5.24721063577333,5.36185741525923,5.32077713645568,5.50541836722824 "1985",10.9028704323207,10.7077083769392,10.7767362989186,11.0540516611137,11.3221803022829,11.4312233915844,11.5713208346856,11.4443594508236,11.5381516220184,11.7651264309531,11.7401133162029 "1986",10.4728473516849,10.6307052398132,10.3147166257277,10.6667558875144,10.8582045543139,10.5298672778786,11.0117707126576,10.9979543660766,11.1529542281708,10.9420403130622,10.9441344322469 "1987",7.11086380579525,6.97524678447138,7.25049947825418,6.7618541533593,6.34202917570302,6.32372596223563,6.14760569582541,6.08445307616774,6.61159776233956,6.15925383687877,6.42960502818059 "1988",11.9013039092081,11.5904417222532,10.9406058389447,11.7765930652849,12.2473725769377,12.7306744299191,11.9313829811607,12.4669139332116,12.8802117558689,12.8590646547866,12.8658912912572 "1989",10.508195828823,10.6718186114959,10.5026311458578,10.5757193164008,10.8853119969518,10.9031371609612,11.0922421691642,11.2729333384347,10.9305733500274,11.0148208524232,11.1208093998223 "1990",10.0991373516307,10.0911637686417,10.2876179266165,10.5291077026035,10.8461829699727,10.5447902680086,10.7580809300414,11.1319525183072,11.1449285082369,10.8334109506931,10.7996066346652 "1991",10.9104393161507,10.7433920331274,11.2529556689973,11.0636554515498,11.8125257184664,11.3965459135523,11.6542251832939,11.8255156580766,11.7354397120352,11.817288954775,11.626774007806 "1992",10.439752755365,10.4720058058573,11.2833204788038,10.6187017383689,10.5324480108438,9.77788285883847,9.92437317218372,9.97057828626865,10.337440943429,10.0062561715956,9.96940887632604 "1993",11.9454429043407,12.0013594507448,11.4274216010855,11.6679813034641,12.8689495848655,12.5929270890558,12.5958666492829,12.7851752555541,12.8436972045469,12.5835769513405,12.7228310754997 "1994",4.95788009688626,4.64642175332692,4.84809592326134,4.94419410387592,5.51439142996744,5.52494213250567,5.22742614345585,5.54656694097749,5.234901464903,5.69066019077603,5.64910430920177 "1995",11.9864822408743,11.7832482648054,11.4226849384847,12.1893520563486,12.3341589735363,12.192238492469,12.2623753652145,12.3905141849114,12.401351660337,12.8627660423864,12.8528698974504 "1996",8.40179659868587,8.52795515785693,8.15339241024055,7.90317759465493,7.82230606359757,7.52799643435851,7.95730299948966,7.55745065008234,7.35417069068958,7.46865826441027,7.44827704992753 "1997",11.4381376575111,11.3482897243858,11.0658870796497,11.2713106774714,11.7068047442805,11.8074994895482,11.7191176148947,11.8186717076941,11.833574575491,12.1217684578017,11.9355806365164 "1998",8.17894675851474,8.77454175227186,8.77967347546497,8.21664886829603,7.82932069098373,7.94390401379986,8.20580009791753,7.85139374177738,7.36346983279136,7.65651370055754,7.93969720762546 "1999",11.9699165994866,11.8050760188097,11.6489141932151,11.8324332266704,12.2831619686234,12.1602963661994,12.2294124702988,12.464852612181,12.3704234969546,12.4870698177061,12.3874381220697 "2000",8.62450430885739,8.59735867621691,9.24456138472936,8.28402107809258,8.40410439334196,8.45923917335987,8.30712100765054,8.16304111541793,8.31155915328567,8.09185442079411,8.04135212279901 "2001",7.65085939919941,7.99084222026797,8.12446508314429,7.45345091666106,6.59691611192018,7.37537160534035,7.45584891455798,6.92227444071329,6.84346871555432,6.68588238296423,6.95705547300987 "2002",7.03475077054921,7.02904872889847,6.81323095846476,6.10311306989949,5.75123300751287,6.36093948153758,5.98182671402093,5.84263840078618,5.79900900802131,5.95632863375223,6.06529256597428 "2003",5.20160456221532,5.10587436566836,5.89393465653991,4.87732981549012,4.16918380110659,4.39026667116431,5.0091772610784,4.27494782787477,3.97945053140578,4.51507976905241,4.10886942232174 "2004",6.32374568039042,6.26548881224496,7.05481513202291,8.08428546657848,7.75758167592432,9.26556770802073,8.30712100765054,7.94923159757619,11.5569234977708,7.46120398896203,7.48490815233371 "2005",5.01103248145524,5.14270022719375,4.3153118826282,4.33331678257734,3.9890115841535,4.27998953468607,4.24697193895882,4.27494782787477,3.97945053140578,4.1133546816754,3.94592105499445 "2006",10.6204420794339,10.4279970016506,10.3674329706888,10.4495387938625,11.1372339891556,11.5781991003094,11.1882006563559,11.2899164169096,11.1963149074146,11.4218170014871,11.3653753032965 "2007",8.61340778184865,8.54943430095146,9.02766379608388,8.22238532670557,8.17030206884004,8.14568011415638,8.14996041764452,8.04082752175031,8.31633771077612,7.83413971816388,7.73634128687924 "2008",8.56430954481308,8.98051585135328,8.86250671939524,8.37436760338792,8.26119229282476,8.22700446585609,8.30712100765054,8.05187709504592,7.96097350831138,8.09666112757126,8.1947968368107 "2009",8.62081495841436,8.88483018599364,8.82707588341202,8.53964242110826,8.34667938075994,8.48837867714906,8.24185728179171,8.27095780233231,8.62822374295735,8.25979842798785,8.0608476856796 "2010",10.3843000362258,10.1793456007745,10.2533460821094,10.5360237112166,10.5579436167682,10.7198018525437,10.7743048690882,10.7197306817581,10.8431635250041,10.9090065813267,10.8268552557145 "2011",8.22344598109642,8.27513933956667,8.7229670689562,8.19347145355705,7.71275036501565,7.40196767134749,8.03132052976576,7.76667701711235,7.74376486076374,7.30332025620943,7.24955265846385 "2012",5.01103248145524,5.48674339719394,4.17697833106617,3.54830022377166,3.9890115841535,4.14782244847307,3.95429096793669,3.54830022377166,4.28967224937531,3.94912244603611,4.10886942232174 "2013",9.80637596281387,9.7939149262346,9.82647739572268,9.98379391490821,10.1450365685559,10.326127549589,10.2819123269288,10.3187351761478,10.0571665837545,10.5306785948073,10.5401834961746 "2014",11.893305128817,11.8527052537349,12.1105100251164,11.6382962670761,11.6362537245575,11.6517221886012,11.2683876313781,11.4317505115335,11.3095440339284,11.56501661089,11.5748514567617 "2015",7.46523447778001,7.91712847035902,7.35418850759407,6.61077692935938,6.21660807334217,6.24614906756788,6.74125749547841,6.27044767527808,6.31421497718848,6.02045962596488,5.87340967120574 "2016",12.6309312366682,12.7628025307094,12.7139228208273,12.3746803044769,12.1992419290798,12.3229258679341,12.2927260222937,12.1970196300099,11.8898834868976,11.9698854326351,12.1483377453467 "2017",10.5990554643209,10.5523985538347,10.1133760567645,10.534873343313,11.2006545676099,11.1185974488752,10.8758914541969,11.1754598449884,10.9375594245548,11.2413165942009,11.4238376007402 "2018",10.1447758899605,10.1015781695815,9.95343051476647,10.2841238195052,10.2940844574572,10.5107404654921,10.591929715054,10.5007894332794,10.4686308345536,10.5517974756834,10.5419154669441 "2019",6.75128602916666,6.6704654135062,7.07928366845503,5.99674685124919,5.8408949819472,6.41495063025135,6.18607814866558,5.67318746075466,5.93453103270874,6.02045962596488,6.14255176514714 "2020",5.6085567987359,5.8625403799736,5.37656757260563,4.94419410387592,4.3058722489524,4.85356377363824,4.736433099266,4.78227634053133,4.40133275723348,4.51507976905241,4.71305020543012 "2021",8.7880368188968,8.54638539974194,7.89698849758373,8.51182113882388,9.21742788977953,9.51231884330987,9.03325510979287,9.02303603563308,9.13740873448127,9.47596051629538,9.42555326987163 "2022",11.4480526412912,11.3395181223153,10.9231043722607,11.6302400959218,11.7006184084532,11.5508647558052,11.5950009076714,11.7001337160277,11.6642294996007,12.0291233281633,12.0339281402059 "2023",7.65085939919941,7.34354589854347,7.57607042757072,8.18174114734305,8.18676461908425,8.54097821295531,8.13085467743051,8.26147500951268,8.43970244756147,8.57411907020145,8.71779464807795 "2024",10.8967866019794,10.9614627069474,10.2155039007044,10.9815996133791,11.3009469963467,11.3660641273223,11.3092572978136,11.3867305954656,11.3065491809334,11.4655934992713,11.4068314610261 "2025",8.00854214661264,8.14404909879108,8.34608353800229,7.52965741113161,7.16458338559512,7.54399158252209,7.47116218311666,7.16682298916022,6.95889432739089,7.51258608930794,7.44083686455049 "2026",9.09762731201092,8.95546128383873,8.84490020686768,9.20457353084305,9.73047109895622,9.37874837871104,9.30202567198749,9.45776633691265,9.69803394357549,9.76383892034309,9.5936540712783 "2027",6.80484637364657,6.96607799591657,7.53259773401686,6.12845239811469,5.95174206023759,6.20565743408888,5.68696720047667,5.94464232625034,5.96006019369919,6.14027133670331,6.35118973846552 "2028",9.49411002848884,9.42901789916774,9.940232354183,8.94866749721308,9.02965990602696,8.74787211075106,9.23212799921271,8.69729742885466,8.99578282918798,8.66421709467549,8.41517675137098 "2029",9.37001467854785,9.48419349616451,9.83184744975314,9.18709943737704,9.17685012125698,9.05647658367649,9.20957122786258,9.06720548839976,9.23896062811224,8.8939573315093,8.75113959857946 "2030",11.4905838200852,11.3443491021395,10.9239426077709,11.6595620091932,11.6833472618578,11.7455564821626,11.7314365213998,11.7274732883309,11.8239723153888,11.9577402725599,11.9286471053047 "2031",9.61394131663761,9.46334549053017,9.54628181697142,10.0481039641413,10.0598536573682,10.144727449744,9.93678307562237,10.2449712569747,10.0457163643264,10.305701920901,10.446204483337 "2032",9.35899024943443,9.7010801774926,8.84490020686768,9.87889245201439,10.1095543929003,9.97881025779135,9.96936341634954,10.1312874006418,10.2933411182614,10.0576094391465,10.0385187740255 "2033",10.0327156295122,10.3723186701145,10.1934255307891,9.92001141379925,9.81925444036508,9.88809802166953,9.80459350603556,9.78804195859083,9.88473885028186,9.7131800823731,9.67167613062689 "2034",9.91873618658208,9.70381723310428,9.86888817471567,10.705102014427,10.39891424354,10.5953597889907,10.5422652450918,10.6176607315317,10.9537298891164,10.6133600529106,10.5436453607016 "2035",5.40326495224052,5.56604371111536,6.07982665675691,5.06671461268446,4.60803438435701,5.07384942667343,4.95996179375818,5.01322721136904,5.18940370702617,4.72200141940468,4.50758419823284 "2036",10.5773469987448,10.4155302247006,10.4171001948464,10.6530372299055,10.8903384194061,11.1085889433632,10.7903483716982,10.9195962597224,10.9360098846476,11.1151757249955,11.0778815476563 "2037",10.2403699658913,10.1842533566041,10.4742991120414,9.99722153884351,8.82075407754364,9.59303888585416,9.77571606977513,9.09413945465348,9.14010402019038,9.56695792576193,9.43863105997586 "2038",10.2759642571413,10.1252497141462,11.0787405458244,10.3614349184299,9.75272459611793,9.81282744452775,9.82995003432343,9.68021808504126,10.2848440826217,9.98570917709119,9.76213288144998 "2039",8.31766483036953,8.53719976752436,8.73065814168617,7.91740472875786,8.23505088897801,7.36639506661982,7.96811330155918,7.75318796156962,8.21761388082079,7.4156433013633,7.59619754824477 "2040",9.3117444465232,9.40230376914334,9.29728368712634,8.51649551299268,8.41345634845132,8.99692532830511,8.54928418681421,8.50588627819347,8.75324314210048,8.63150104027328,8.55223053166907 "2041",3.54830022377166,3.54830022377166,3.54830022377166,3.54830022377166,4.51917288855208,4.48644669672571,4.24697193895882,5.01322721136904,4.66516704800045,3.54830022377166,3.54830022377166 "2042",8.60222508879297,8.46152542794402,7.96387248193145,9.03260445449268,8.90268312222043,9.19666600526307,9.07128728575027,9.04528995739235,8.82536894002529,9.19411857271364,9.21583108861075 "2043",10.6009278084849,10.4911424187288,10.7372232516941,10.3497066385439,10.1422298950931,10.0996226853339,10.3658832007785,10.1596037475487,9.87020602904356,10.215938441833,10.2343975732753 "2044",11.4931063337021,11.9524357082824,12.0480635037998,10.9942095015186,11.437696953337,11.1631182123128,11.125745764435,11.3020908876927,11.1741403923108,10.9873108372012,11.2535629813764 "2045",9.10820161706189,9.76012710404524,9.52212312869928,8.70845226262906,8.83125362214199,8.13518339152596,8.88453089243721,8.37134068175844,8.76377055339133,8.08703158629843,8.61286188047902 "2046",7.17301035461378,6.81067701192704,7.32386510124667,6.98244809672181,4.76343465978073,5.16956541079112,5.98182671402093,5.78854419980623,5.77015986861159,5.08331287740239,5.53547894831993 "2047",8.53324147578573,8.76145756849789,8.83065843231267,8.55789570611588,7.93712914351463,8.20710044820141,8.20580009791753,8.14251919273416,8.52058286310583,8.19853581863184,8.0608476856796 gplots/tests/heatmap2Test.Rout.save0000644000175100001440000003162212675273333017132 0ustar hornikusers R version 3.2.0 (2015-04-16) -- "Full of Ingredients" Copyright (C) 2015 The R Foundation for Statistical Computing Platform: x86_64-unknown-linux-gnu (64-bit) R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > library(gplots) Attaching package: 'gplots' The following object is masked from 'package:stats': lowess > > data(mtcars) > x <- as.matrix(mtcars) > rc <- rainbow(nrow(x), start=0, end=.3) > cc <- rainbow(ncol(x), start=0, end=.3) > > heatmap.2(x) ## default - dendrogram plotted and reordering done. > heatmap.2(x, dendrogram="none") ## no dendrogram plotted, but reordering done. > heatmap.2(x, dendrogram="row") ## row dendrogram plotted and row reordering done. > heatmap.2(x, dendrogram="col") ## col dendrogram plotted and col reordering done. > > heatmap.2(x, keysize=2) ## default - dendrogram plotted and reordering done. > > > heatmap.2(x, Colv=FALSE) Warning message: In heatmap.2(x, Colv = FALSE) : Discrepancy: Colv is FALSE, while dendrogram is `both'. Omitting column dendogram. > heatmap.2(x, Colv=NULL) Warning message: In heatmap.2(x, Colv = NULL) : Discrepancy: Colv is FALSE, while dendrogram is `both'. Omitting column dendogram. > > heatmap.2(x, Rowv=FALSE) Warning message: In heatmap.2(x, Rowv = FALSE) : Discrepancy: Rowv is FALSE, while dendrogram is `both'. Omitting row dendogram. > heatmap.2(x, Rowv=NULL) Warning message: In heatmap.2(x, Rowv = NULL) : Discrepancy: Rowv is FALSE, while dendrogram is `both'. Omitting row dendogram. > > heatmap.2(x, Rowv=FALSE, dendrogram="both") ## generate warning! Warning message: In heatmap.2(x, Rowv = FALSE, dendrogram = "both") : Discrepancy: Rowv is FALSE, while dendrogram is `both'. Omitting row dendogram. > heatmap.2(x, Rowv=NULL, dendrogram="both") ## generate warning! Warning message: In heatmap.2(x, Rowv = NULL, dendrogram = "both") : Discrepancy: Rowv is FALSE, while dendrogram is `both'. Omitting row dendogram. > heatmap.2(x, Colv=FALSE, dendrogram="both") ## generate warning! Warning message: In heatmap.2(x, Colv = FALSE, dendrogram = "both") : Discrepancy: Colv is FALSE, while dendrogram is `both'. Omitting column dendogram. > > > > heatmap.2(x,dendrogram="both", Rowv=FALSE) ## row and col reordering done, but only col dendrogram plotted Warning message: In heatmap.2(x, dendrogram = "both", Rowv = FALSE) : Discrepancy: Rowv is FALSE, while dendrogram is `both'. Omitting row dendogram. > heatmap.2(x,dendrogram="row", Rowv=FALSE) Warning message: In heatmap.2(x, dendrogram = "row", Rowv = FALSE) : Discrepancy: Rowv is FALSE, while dendrogram is `row'. Omitting row dendogram. > > > heatmap.2(x,dendrogram="col", Rowv=FALSE) > heatmap.2(x,dendrogram="none", Rowv=FALSE) > > > heatmap.2(x,dendrogram="both", Colv=FALSE) ## row and col reordering done, but only row dendrogram plotted Warning message: In heatmap.2(x, dendrogram = "both", Colv = FALSE) : Discrepancy: Colv is FALSE, while dendrogram is `both'. Omitting column dendogram. > heatmap.2(x,dendrogram="row", Colv=FALSE) > heatmap.2(x,dendrogram="col", Colv=FALSE) Warning message: In heatmap.2(x, dendrogram = "col", Colv = FALSE) : Discrepancy: Colv is FALSE, while dendrogram is `column'. Omitting column dendogram. > heatmap.2(x,dendrogram="none", Colv=FALSE) > > ## above statement is same as heatmap.2(x,Colv=FALSE) > heatmap.2(x,dendrogram="col", Colv=FALSE) ## col reordering done, but no dendrogram plotted Warning message: In heatmap.2(x, dendrogram = "col", Colv = FALSE) : Discrepancy: Colv is FALSE, while dendrogram is `column'. Omitting column dendogram. > > > hv <- heatmap.2(x, col=cm.colors(256), scale="column", + RowSideColors=rc, ColSideColors=cc, margin=c(5, 10), + xlab="specification variables", ylab= "Car Models", + main="heatmap(, \n ..., scale=\"column\")", + tracecol="green", density="density") > > str(hv) # the two re-ordering index vectors List of 13 $ rowInd : int [1:32] 31 17 16 15 5 25 29 24 7 6 ... $ colInd : int [1:11] 2 9 8 11 6 5 10 7 1 4 ... $ call : language heatmap.2(x = x, scale = "column", col = cm.colors(256), tracecol = "green", margins = c(5, 10), ColSideColors = cc, RowSideColors = rc, density.info = "density", ... $ colMeans : Named num [1:11] 6.188 0.406 0.438 2.812 3.217 ... ..- attr(*, "names")= chr [1:11] "cyl" "am" "vs" "carb" ... $ colSDs : Named num [1:11] 1.786 0.499 0.504 1.615 0.978 ... ..- attr(*, "names")= chr [1:11] "cyl" "am" "vs" "carb" ... $ carpet : num [1:11, 1:32] 1.015 1.19 -0.868 3.212 0.361 ... ..- attr(*, "dimnames")=List of 2 .. ..$ : chr [1:11] "cyl" "am" "vs" "carb" ... .. ..$ : chr [1:32] "Maserati Bora" "Chrysler Imperial" "Lincoln Continental" "Cadillac Fleetwood" ... $ rowDendrogram: ..--[dendrogram w/ 2 branches and 32 members at h = 425, midpoint = 8.58, value = 1267] .. |--[dendrogram w/ 2 branches and 9 members at h = 215, midpoint = 1.84, value = 552] .. | |--leaf "Maserati Bora" ( value.Maserati Bora = 63.2 ) .. | `--[dendrogram w/ 2 branches and 8 members at h = 135, midpoint = 2.69, value = 489] .. | |--[dendrogram w/ 2 branches and 3 members at h = 40.8, midpoint = 0.75, value = 198] .. | | |--leaf "Chrysler Imperial" ( value.Chrysler Imperial = 66 ) .. | | `--[dendrogram w/ 2 branches and 2 members at h = 15.6, midpoint = 0.5, value = 132] .. | | |--leaf "Lincoln Continental" ( value.Lincoln Continental = 66.1 ) .. | | `--leaf "Cadillac Fleetwood" ( value.Cadillac Fleetwood = 66.2 ) .. | `--[dendrogram w/ 2 branches and 5 members at h = 102, midpoint = 1.62, value = 290] .. | |--[dendrogram w/ 2 branches and 2 members at h = 40, midpoint = 0.5, value = 111] .. | | |--leaf "Hornet Sportabout" ( value.Hornet Sportabout = 53.7 ) .. | | `--leaf "Pontiac Firebird" ( value.Pontiac Firebird = 57.4 ) .. | `--[dendrogram w/ 2 branches and 3 members at h = 21.3, midpoint = 0.75, value = 179] .. | |--leaf "Ford Pantera L" ( value.Ford Pantera L = 61 ) .. | `--[dendrogram w/ 2 branches and 2 members at h = 10.1, midpoint = 0.5, value = 118] .. | |--leaf "Camaro Z28" ( value.Camaro Z28 = 58.8 ) .. | `--leaf "Duster 360" ( value.Duster 360 = 59.7 ) .. `--[dendrogram w/ 2 branches and 23 members at h = 262, midpoint = 6.33, value = 716] .. |--[dendrogram w/ 2 branches and 7 members at h = 103, midpoint = 2.06, value = 306] .. | |--[dendrogram w/ 2 branches and 2 members at h = 33.6, midpoint = 0.5, value = 73.8] .. | | |--leaf "Valiant" ( value.Valiant = 35 ) .. | | `--leaf "Hornet 4 Drive" ( value.Hornet 4 Drive = 38.7 ) .. | `--[dendrogram w/ 2 branches and 5 members at h = 51.8, midpoint = 1.62, value = 233] .. | |--[dendrogram w/ 2 branches and 2 members at h = 14, midpoint = 0.5, value = 93.2] .. | | |--leaf "AMC Javelin" ( value.AMC Javelin = 46 ) .. | | `--leaf "Dodge Challenger" ( value.Dodge Challenger = 47.2 ) .. | `--[dendrogram w/ 2 branches and 3 members at h = 2.14, midpoint = 0.75, value = 139] .. | |--leaf "Merc 450SLC" ( value.Merc 450SLC = 46.4 ) .. | `--[dendrogram w/ 2 branches and 2 members at h = 0.983, midpoint = 0.5, value = 92.9] .. | |--leaf "Merc 450SE" ( value.Merc 450SE = 46.4 ) .. | `--leaf "Merc 450SL" ( value.Merc 450SL = 46.5 ) .. `--[dendrogram w/ 2 branches and 16 members at h = 142, midpoint = 3.59, value = 409] .. |--[dendrogram w/ 2 branches and 4 members at h = 14.8, midpoint = 0.875, value = 74.9] .. | |--leaf "Honda Civic" ( value.Honda Civic = 17.7 ) .. | `--[dendrogram w/ 2 branches and 3 members at h = 10.4, midpoint = 0.75, value = 57.2] .. | |--leaf "Toyota Corolla" ( value.Toyota Corolla = 18.8 ) .. | `--[dendrogram w/ 2 branches and 2 members at h = 5.15, midpoint = 0.5, value = 38.4] .. | |--leaf "Fiat X1-9" ( value.Fiat X1-9 = 18.9 ) .. | `--leaf "Fiat 128" ( value.Fiat 128 = 19.4 ) .. `--[dendrogram w/ 2 branches and 12 members at h = 113, midpoint = 2.3, value = 334] .. |--leaf "Ferrari Dino" ( value.Ferrari Dino = 34.5 ) .. `--[dendrogram w/ 2 branches and 11 members at h = 74.4, midpoint = 3.61, value = 300] .. |--[dendrogram w/ 2 branches and 5 members at h = 64.9, midpoint = 1.25, value = 148] .. | |--leaf "Merc 240D" ( value.Merc 240D = 24.6 ) .. | `--[dendrogram w/ 2 branches and 4 members at h = 15.7, midpoint = 1.5, value = 124] .. | |--[dendrogram w/ 2 branches and 2 members at h = 0.615, midpoint = 0.5, value = 59.9] .. | | |--leaf "Mazda RX4" ( value.Mazda RX4 = 29.9 ) .. | | `--leaf "Mazda RX4 Wag" ( value.Mazda RX4 Wag = 30 ) .. | `--[dendrogram w/ 2 branches and 2 members at h = 1.52, midpoint = 0.5, value = 63.6] .. | |--leaf "Merc 280C" ( value.Merc 280C = 31.8 ) .. | `--leaf "Merc 280" ( value.Merc 280 = 31.9 ) .. `--[dendrogram w/ 2 branches and 6 members at h = 50.1, midpoint = 0.969, value = 152] .. |--leaf "Lotus Europa" ( value.Lotus Europa = 24.9 ) .. `--[dendrogram w/ 2 branches and 5 members at h = 33.2, midpoint = 0.938, value = 127] .. |--leaf "Merc 230" ( value.Merc 230 = 27.2 ) .. `--[dendrogram w/ 2 branches and 4 members at h = 20.7, midpoint = 0.875, value = 99.5] .. |--leaf "Volvo 142E" ( value.Volvo 142E = 26.3 ) .. `--[dendrogram w/ 2 branches and 3 members at h = 13.1, midpoint = 0.75, value = 73.3] .. |--leaf "Datsun 710" ( value.Datsun 710 = 23.6 ) .. `--[dendrogram w/ 2 branches and 2 members at h = 8.65, midpoint = 0.5, value = 49.7] .. |--leaf "Porsche 914-2" ( value.Porsche 914-2 = 24.8 ) .. `--leaf "Toyota Corona" ( value.Toyota Corona = 24.9 ) $ colDendrogram: ..--[dendrogram w/ 2 branches and 11 members at h = 1475, midpoint = 7, value = 436] .. |--[dendrogram w/ 2 branches and 9 members at h = 116, midpoint = 4.5, value = 58.3] .. | |--[dendrogram w/ 2 branches and 7 members at h = 34.8, midpoint = 1.5, value = 20.3] .. | | |--leaf "cyl" ( value.cyl = 6.19 ) .. | | `--[dendrogram w/ 2 branches and 6 members at h = 18.9, midpoint = 2, value = 14.2] .. | | |--[dendrogram w/ 2 branches and 2 members at h = 3.61, midpoint = 0.5, value = 0.844] .. | | | |--leaf "am" ( value.am = 0.406 ) .. | | | `--leaf "vs" ( value.vs = 0.438 ) .. | | `--[dendrogram w/ 2 branches and 4 members at h = 10.7, midpoint = 1.5, value = 13.3] .. | | |--[dendrogram w/ 2 branches and 2 members at h = 8.6, midpoint = 0.5, value = 6.03] .. | | | |--leaf "carb" ( value.carb = 2.81 ) .. | | | `--leaf "wt" ( value.wt = 3.22 ) .. | | `--[dendrogram w/ 2 branches and 2 members at h = 2.98, midpoint = 0.5, value = 7.28] .. | | |--leaf "drat" ( value.drat = 3.6 ) .. | | `--leaf "gear" ( value.gear = 3.69 ) .. | `--[dendrogram w/ 2 branches and 2 members at h = 33.3, midpoint = 0.5, value = 37.9] .. | |--leaf "qsec" ( value.qsec = 17.8 ) .. | `--leaf "mpg" ( value.mpg = 20.1 ) .. `--[dendrogram w/ 2 branches and 2 members at h = 657, midpoint = 0.5, value = 377] .. |--leaf "hp" ( value.hp = 147 ) .. `--leaf "disp" ( value.disp = 231 ) $ breaks : num [1:257] -3.21 -3.19 -3.16 -3.14 -3.11 ... $ col : chr [1:256] "#80FFFFFF" "#80FFFFFF" "#81FFFFFF" "#82FFFFFF" ... $ vline : num 0 $ colorTable :'data.frame': 256 obs. of 3 variables: ..$ low : num [1:256] -3.21 -3.19 -3.16 -3.14 -3.11 ... ..$ high : num [1:256] -3.19 -3.16 -3.14 -3.11 -3.09 ... ..$ color: Factor w/ 254 levels "#80FFFFFF","#81FFFFFF",..: 1 1 2 3 4 5 6 7 8 9 ... $ layout :List of 3 ..$ lmat: num [1:3, 1:3] 6 0 4 0 0 1 5 2 3 ..$ lhei: num [1:3] 1.5 0.2 4 ..$ lwid: num [1:3] 1.5 0.2 4 > > ## Test row and column separators > heatmap.2(x,dendrogram="col", colsep=1) ## one colsep > heatmap.2(x,dendrogram="col", rowsep=1) ## one rowsep > > heatmap.2(x,dendrogram="col", colsep=1:2) ## two colseps > heatmap.2(x,dendrogram="col", rowsep=1:2) ## two rowseps > > proc.time() user system elapsed 1.618 1.555 1.558 gplots/tests/heatmap2Test.R0000644000175100001440000000401712471456251015437 0ustar hornikuserslibrary(gplots) data(mtcars) x <- as.matrix(mtcars) rc <- rainbow(nrow(x), start=0, end=.3) cc <- rainbow(ncol(x), start=0, end=.3) heatmap.2(x) ## default - dendrogram plotted and reordering done. heatmap.2(x, dendrogram="none") ## no dendrogram plotted, but reordering done. heatmap.2(x, dendrogram="row") ## row dendrogram plotted and row reordering done. heatmap.2(x, dendrogram="col") ## col dendrogram plotted and col reordering done. heatmap.2(x, keysize=2) ## default - dendrogram plotted and reordering done. heatmap.2(x, Colv=FALSE) heatmap.2(x, Colv=NULL) heatmap.2(x, Rowv=FALSE) heatmap.2(x, Rowv=NULL) heatmap.2(x, Rowv=FALSE, dendrogram="both") ## generate warning! heatmap.2(x, Rowv=NULL, dendrogram="both") ## generate warning! heatmap.2(x, Colv=FALSE, dendrogram="both") ## generate warning! heatmap.2(x,dendrogram="both", Rowv=FALSE) ## row and col reordering done, but only col dendrogram plotted heatmap.2(x,dendrogram="row", Rowv=FALSE) heatmap.2(x,dendrogram="col", Rowv=FALSE) heatmap.2(x,dendrogram="none", Rowv=FALSE) heatmap.2(x,dendrogram="both", Colv=FALSE) ## row and col reordering done, but only row dendrogram plotted heatmap.2(x,dendrogram="row", Colv=FALSE) heatmap.2(x,dendrogram="col", Colv=FALSE) heatmap.2(x,dendrogram="none", Colv=FALSE) ## above statement is same as heatmap.2(x,Colv=FALSE) heatmap.2(x,dendrogram="col", Colv=FALSE) ## col reordering done, but no dendrogram plotted hv <- heatmap.2(x, col=cm.colors(256), scale="column", RowSideColors=rc, ColSideColors=cc, margin=c(5, 10), xlab="specification variables", ylab= "Car Models", main="heatmap(, \n ..., scale=\"column\")", tracecol="green", density="density") str(hv) # the two re-ordering index vectors ## Test row and column separators heatmap.2(x,dendrogram="col", colsep=1) ## one colsep heatmap.2(x,dendrogram="col", rowsep=1) ## one rowsep heatmap.2(x,dendrogram="col", colsep=1:2) ## two colseps heatmap.2(x,dendrogram="col", rowsep=1:2) ## two rowseps gplots/tests/plotmeans_nobars.R0000644000175100001440000000032512471456251016442 0ustar hornikusers## Test that plotmeans works properly when bars=F ## Bug repoted by Alan Yong, Research Geophysicist, ## US DEPARTMENT OF THE INTERIOR library(gplots) data(state) plotmeans(state.area ~ state.region, bars=FALSE) gplots/tests/test_plottingDeepDendrogram.R0000644000175100001440000000103412471456251020572 0ustar hornikuserslibrary(gplots) dat <- as.matrix(read.csv(file="dat.csv", row.names=1)) dist2 <- function(x) as.dist(1-cor(t(x), method="pearson")) hclust1 <- function(x) hclust(x, method = "single") distance <- dist2(dat) cluster <- hclust1(distance) dend <- as.dendrogram(cluster) ## R's default recursion limits will be exceeded when plotting this dendrogram try( gplots:::plot.dendrogram(dend) ) try( heatmap.2(dat, Rowv=dend) ) ## Increase them and try again options("expressions"=20000) gplots:::plot.dendrogram(dend) heatmap.2(dat, Rowv=dend) gplots/NAMESPACE0000644000175100001440000000451212675303500013022 0ustar hornikusersexport( angleAxis, balloonplot, bandplot, barplot2, bluered, boxplot.n, boxplot2, ci2d, col2hex, colorpanel, greenred, heatmap.2, hist2d, lmplot2, lowess, ooplot, overplot, panel.overplot, plot.lm2, plot.venn, plotCI, plotLowess, plotmeans, qqnorm.aov, redblue, redgreen, residplot, rich.colors, sinkplot, smartlegend, space, textplot, venn, wapply ) importFrom(gtools, invalid) importFrom(gtools, odd) importFrom(gdata, nobs) importFrom(gdata, reorder.factor) importFrom(stats, reorder) importFrom(stats, na.omit) importFrom(caTools, runsd) importFrom(caTools, runmean) importFrom(KernSmooth, bkde2D) importFrom(KernSmooth, dpik) S3method(balloonplot, default) S3method(balloonplot, table) S3method(bandplot, default) S3method(bandplot, formula) S3method(barplot2, default) S3method(lowess, default) S3method(lowess, formula) S3method(ooplot, default) S3method(plot, lowess) S3method(plot, venn) S3method(print, ci2d) S3method(print, hist2d) S3method(qqnorm, aov) S3method(textplot, character) S3method(textplot, data.frame) S3method(textplot, default) S3method(textplot, matrix) # imports recommended by R CMD check importFrom("grDevices", "col2rgb", "contourLines", "dev.flush", "dev.hold", "dev.interactive", "heat.colors", "rgb", "topo.colors") importFrom("graphics", "abline", "arrows", "axTicks", "axis", "barplot", "contour", "filled.contour", "grid", "hist", "identify", "image", "layout", "legend", "lines", "matlines", "matpoints", "mtext", "panel.smooth", "par", "plot", "plot.default", "plot.new", "plot.window", "points", "polygon", "rect", "segments", "strheight", "strwidth", "text", "title", "xinch", "yinch") importFrom("stats", "as.dendrogram", "cooks.distance", "density", "deviance", "df.residual", "dist", "dnorm", "effects", "expand.model.frame", "fitted", "hclust", "is.leaf", "lm.influence", "median", "model.frame", "order.dendrogram", "ppoints", "predict", "qnorm", "qqline", "qqnorm", "qt", "residuals", "sd", "var", "weights") importFrom("utils", "str")gplots/NEWS0000644000175100001440000003713312676770503012323 0ustar hornikusersRelease 3.0.1 - 2016-03-30 -------------------------- Bug Fixes: - An error in plotLowess() prevented it from finding objects in the caller's environment. - The manual page for heatmap.2() stated the incorrect type for the 'layout' element of the return list. It is a named list, not a named numeric vector. Release 3.0.0 - 2016-03-28 --------------------------- New Features: - venn(): - now support matrices of indicator values. Previously indicator values were only supported when supplied as a dataframe. - The 'intersections' attribute returned from venn() has been improved so that goups are labeled using set names instead of indicators, and are ordered from simplest to most complex set intersection. - New angleAxis() function to create axis labels with rotated text. - heatmap.2(): - heatmap.2() can now be used to plot subsets of a previous heatmap. - Decrease the granularity of the carpet in heatmap.2()'s color key to avoid visual artifacts. - Returned object now includes 'layout' element that contains layout information. (Patch provided by Jenny Drnevich.) - lowess(): - New function plotLowess() to display a scatter plot with a superimposed lowess curve. - The lowess() functions now returns a list object of class 'lowess' - A new lowess method for plot() method for 'lowess' objects that generates a scatterplot of the raw data with a lowess curve superimposed. Bug Fixes: - Defunct message for boxplot.n() was recommending the wrong function. - heatmap.2(): - Remove debugging print() statement. - Now properly sets 'srtCol' default if missing and 'colCol' is specified. - Corrected a bug causing "Error in plot.new() : figure margins too large" to occur when 'key=FALSE'. (Reported and patch provided by Sveinung Gundersen.) - Corrected a bug causing an error when "Rowv=FALSE" or "Colv=FALSE". - Corrected message when "Rowv=FALSE" or "Colv=FALSE" and the the "dendrogram" argument requested the corresponding dendrogram. - venn(): - Fix warning message that was missing spaces between words. Other Changes: - The smartlegend(), plot.lm2(), and boxplot.n() functions are now defunct. Please use grephics::legend(), lmplot2() or boxplot2() respectively. Release 2.17.0 - 2015-05-01 --------------------------- New Features: - heatmap.2() has two new arguments, 'colRow' and 'colCol' to control the color of row and column text labels. See the man page for examples. - heatmap.2() has been modified to make it easier to extract and plot subclusters from a large heatmap. Simply pass the dendrogram of the subcluster together with the full data matrix and, optionally, the breaks of the full heatmap in order to obtain the same color scaling. (Suggestion and patch contributed by Ilia Kats.) - venn() now returns a list of the members of each set intersection in the attribute 'intersections'. This can be disabled using the argument 'intersection=FALSE' (Patch by Steffen Möller.) Bug Fixes: - In heatmap.2(), the color key now properly handles color breaks that are not equally spaced. (Issue reported by Tim Richter-Heitmann.) - In heatmap.2(), row/column traces in could be plotted on the wrong row/column. - plotCI() now properly respects the 'type=' argument. (Bug report and correction by Wiktor Żelazny.) - Remove stray browser() call from overplot() - In the balloonplot() examples, explicitly specify the 'neworder' argument to gplots:::reorder.factor to prevent errors. Other Changes: - smartlegend() is now deprecated because the relative positioning feature ('top', 'right') has been added to graphics::legend(). Calling smartlegend() will generate a warning. - boxplot.n() and plot.lm2() are defunct have been removed. Use of these functions will now generate an error. - Update out-of-date URLs in man pages. Release 2.16.0 - 2015-01-02 --------------------------- New Features: - plotmeans() has a new argument, 'text.n.label' which specifies the text used for labeling the number of elements in a group. Bug Fixes: - plotmeans() now respects (optional) graphical arguments captured in '...' when drawing the x axis. Release 2.15.0 - 2014-12-01 --------------------------- New features: - Convert bandplot() to S3-method dispatch and add method for class formula, so that 'bandplot( y ~ x, data=dataframe )' now works as expected. Other changes: - heatmap.2() now uses a local *non-byte-compiled* copy of plot.dengrogram, because the byte-compiled stats:::plot.dendrogram uses a recursive algorithm that generates a 'node stack overflow' error for deeply nested dendrograms and the node stack size cannot be changed at execution time. Instead, tne local non-byte-compiled gplots:::plot.dendrogram will trigger a recursion limit for such dengrograms. heatmap.2() will detect this error and recommend that the user increase the recursion limit (via, e.g. 'options("expressions"=20000)' ) and rerun. Release 2.14.2 - 2014-09-17 --------------------------- Bug Fixes: - heatmap.2() was not respecting key.title=NA when density.info="none". - Correct the man page for heatmap.2 to state that the default color for 'notecol' is cyan. - In heatmap.2(), modify default arguments to 'symbreaks' and 'symkey' to make the logic more evident by replacing min(...) with any(...). (The previous code executed properly, but relied on implicit coercion of logicals to numeric, obscuring the intent.) - Calling heatmap.2 with deeply nested dendrograms could trigger a 'node stack overflow' error. Now, this situation is deteceted, and a message is generated indicating how to increase the relevant recursion limit via options("expressions"=...). Release 2.14.1 - 2014-06-30 --------------------------- Bug Fixes: - Correct heatmap.2() bug in Colv dendrogram object dimension checking introduced in 2.14.0. (Reported by Yong Fuga Li.) Release 2.14.0 - 2014-06-18 --------------------------- Bug Fixes: - heatmap.2(): Fix typo in heatmap.2() that caused an error when 'Rowv=FALSE'. (Reported by Yuanhua Liu.) Enhancements: - heatmap.2(): Add new 'reorderfun' argument to allow the user to specify an alternative function to reorder rows/columns based on row/column dendrogram. (Suggested by Yuanhua Liu.) - heatmap.2(): Center margin labels. - heatmap.2(): Check size of user-provided Rowv and Colv dendrogram objects to ensure they match the dimensions of the data. - Add references to man page for hist2d() and ci2d() to the new r2d2 package which implements an improved algorithm for 2-dimensional emprical confidence regions. Release 2.13.0 - 2014-04-04 --------------------------- Bug Fixes: - heatmap.2 was not properly handling row trace reference line ('hline'). Patch submitted by Ilia Kats. Enhancements: - In heatmap.2, when the row or column trace is enabled, show the corresponding reference line in the color key. - In heatmap.2, a new 'extrafun' argument is provided that allows the user to specify a function to be called before the function returns. This allows the user to add additional plots to the page. Release 2.12.1 - 2013-10-14 --------------------------- API Changes: - boxplot.n() has been renamed to boxplot2() to avoid potential S3 method calling issues. - plot.lm2() has been rename to lmplot2() to avoid potential S3 method calling issues. Enhancements: - Add heatmap.2() parameters to control row and column label rotation ('srtRow', 'srtCol'), justification ('adjRow', 'adjCol'), and space from plot edge ('offsetRow', 'offsetCol'). Bug Fixes: - Fix error in in venn() when all groups contained the same number of TRUE cases. - Correct error in overplot() when that occured when a group-category contained no finite values. Other Changes: - Changes to overplot() to avoid warnings from upcoming enhancements to R CMD check. - Move several packages from Depends to Imports or Suggests. - Packages caTools and KernSmooth now have namespaces, so import needed functions in NAMESPACE. - Mark one example in manual page for ci2d 'dontrun' to avoid timing warning in R CMD check. Release 2.11.3 - 2013-06-27 --------------------------- Enhancements: - Modify sinkplot() to use a local environment rather than the global environment, to conform to CRAN policies. Bug Fixes: - Fixed typo/spelling error in plotmeans() man page. Release 2.11.2 - 2013-03-24 --------------------------- Enhancements: - Add ci.width argument to barplot2() to allow varying the length of the 't' at the end of confidence interval bars. Bug Fixes: - Fix error in heatmap.2 when colsep argument had length 1. Updates: - Update manual page for lowess.default() to match changed argument list for lowess() in R 3.0.0 Release 2.11.1 - 2012-12-14 --------------------------- Bug Fixes: - Replace corrupted BalloonPlot.pdf in inst/doc. Release 2.11.0 - 2012-06-08 --------------------------- New Features: - Objects returned by hist2d() have been changed: 1) $x and $y now contain the n midpoints of the bins in each direction 2) $x.breaks, $y.breaks now contain the n+1 limits of the bins in each direction. - Add lwd argument to plotmeans(). Bug Fixes: - Correct error in handling binning in hist2d(): (N+1)x(N+1) bins were being created instead of NxN bins, and the highest row/column in each direction was being omitted from the results and plot. - Changes to fix R CMD check warnings Release 2.10.1 - 2011-09-02 --------------------------- New features: - Make results of hist2d() and ci2d() into objects, and add print() methods to display them. Release 2.10.0 - 2011-08-26 --------------------------- New Features: - New ci2d() function to create 2-dimensional empirical confidence intervals utilizing KernSmooth:bkde2D and gplots::hist2d(). See ?ci2d for details. - Add 'alpha' argument to rich.colors() to control transparency. Improvements: - Accellerate hist2d by replacing for() loop with tapply(), and allow user to specify summary function applied (per suggestion by Peter Hagedorn). Bug Fixes: - Correct error in heatmap.2() that arises when data includes NA values (identified by Melissa Key). Release 2.8.0 - 2010-06-10 -------------------------- Improvements: - venn() now returns an object of class venn() and a plot method for this class is provided. - Manual page for venn has been improved, based on contributions by Steffen Moeller Release 2.7.5 - ?? -------------------------- Improvements: - Performance of 'hist2d' improved thanks to a suggestion from Joerg van den Hoff. Release 2.7.4 - 2009-11-12 -------------------------- Bug Fixes: - Correct bug reported by Alan Yong: plotmeans() failed when bars=FALSE. Release 2.7.3 - 2009-10-22 -------------------------- Bug Fixes: - Correct bug reported by Rudolf Talens: heatmap.2() incorrectly transposed the displayed matrix when the option symm=TRUE. Release 2.7.2 - 2009-05-08 -------------------------- Bug Fixes: - Correct bug reported by Ken Lo: cox2hex() had blue and green components swapped. Release 2.7.1 - 2009-05-08 -------------------------- New Features: - Enhancements to heatmap.2() - New arguments 'lmat', 'lhei', and 'lwid' that allow controlling component plot layout. Users can now resize and rearrange plot components. - heatmap.2() will now compute color breakpoints that are symmetric about 0 when the new 'symbreak' parameter is TRUE. This parameter, as well as the symkey parameter now default to TRUE whenever negative values of x are present, and to FALSE othewise. - the heatmap.2() return value now includes additional useful information, including: call, rowMeans, rowSDs, colMeans, colSDs, carpet (reordered and scaled 'x' values), rowDendrogram, colDendrogram, breaks, col, vline, hline, and colorTable. Of these, the most useful are breaks, col, and colorTable. The latter is a three-column data frame providing the lower and upper bound and color for each bin. See the manual page for complete details and examples. - New function venn(), contributed by Steffen Moeller (Thanks Steffen!) to generate Venn diagrams for up to 5 sets. See ?venn for details. - Performance of bandplot() has been dramatically improved, in part by using runsd() and runmean() from the caTools package. As a consequence, gplots now depends on the caTools package. - Improved performance of gplots::plot.lm for large lm objects by using the new bandplot() and by using fitted() instead of predict() to obtain y-hat. - Add 'scale.range' argument to balloonplot(), option to scale balloons so [min,max]->[0,1] ('relative') or [0,max] -> [0,1] ('absolute'). Bug Fixes: - balloonplot() now properly handles dimension labels provided by 'xlab' and 'ylab' - plotCI now properly handles 'NULL' and 'NA' values for ui, li, uiw, and liw. - Corrections of minor typos in man pages - Update Greg's email address to 'greg@random-technologies-llc.com' Release 2.6.0 - 2008-04-07 -------------------------- New Features: - heatmap() now allows control of the location of individual plot components (e.g. color key) Bug Fixes: - Fix bug in handling rowsep, per suggestion by Steven Paugh - Fix examples for overplot() - Two letter clarification of help text for heatmap.2() - Restore plot layout settings to default state at end of ooplot() example - Various typo fixes Release 2.5.0 - 2007-11-02 -------------------------- New Features: - textplot() now converts tab characters to spaces before processing to avoid problems with computing height and width of text that includes tabs. - Add col2hex() function to convert color names to rgb hex codes Bug Fixes: - Correct balloonplot.default to properly show specified x and y axis labels when explicitly provided - R/balloonplot.R: Correct error in balloonplot when z contains NA values. - Fix typos and code/doc mismatches identified by the latest R CMD check Other: - Clarify GPL version Release 2.4.0 - 2007-02-08 -------------------------- New Features: - Add parameters to bandplot() to control line width and type. - Add paramaeters to textplot.matrix() to allow specification of the color of the matrix data, rows, and column Bug Fixes: Other: Release 2.3.2 - 2006-11-14 -------------------------- - heatmap.2.Rd: Fix example that was broken by changes in 2.3.0. Release 2.3.1 ------------- - Changed maintainer back to Greg Warnes - Updated Greg's email address - heatmap.2.R: Fixed a bug which displayed warnings when Rowv and Colv were specified as dendrograms Release 2.3.0 ------------- - heatmap.2.R, heatmap.2.Rd: Updated the code and man page to make sure the Rowv and Colv values are properly handled - Added the tests directory Release 2.2.0 ------------- - plotmeans.R: Fixed bug in plotmeans - based on Stefano Calza's suggestion (the function didn't account for factors unused levels, returning an error.) - exported plot.lm to NAMESPACE, Remove .Alias calls in plot.lm.R since .Alias is defunct. - barplot2.R: Changed the default grey colors to heat colors, if height is matrix - Updated Greg's email address - balloonplot.R: Recent changes to align row totals with the overall total broke how the marginal cumulative fractions were displayed. Added example using Titanic data that exercises the multi-factor display. Added -.tex, .pdf files and figuers, and RNEWS article in inst/doc - colorpanel.R: colorpanel now allows only 2 colors to be specified if no 'middle' color is desired. Release 2.0.8 ------------- - Added DESCRIPTION and removed DESCRIPTION.in - Updated barplot2 - Updated heatmap.2 gplots/data/0000755000175100001440000000000012624654363012524 5ustar hornikusersgplots/data/rtPCR.rda0000644000175100001440000006613412471456252014215 0ustar hornikusers7zXZi"6!Xul])TW"nRʟXS#&'ƯNMʐzɍz~ B;Hr~M+˘eR8_B%G~#@\ßV"Ty*|m͛ݔjx2tK;}BDTO6օ'AMcTW@H^^_3sk/OpuZN]jPL1z%lb)v-LVܪ.?JcZ2c I&s4bg†4!ńg*܎.c [ڟ |͋WĻ~gE9rLʘ \X } ~}Y3&@"@3I^UI_z ci\ h+og@՛l>Y5uj&왲}^"EL<<+gQx(~(\o8h2o{ceQo^u{f3(pwqҒUW F+Q<,T\ beO>e2+s/ەcBv az T&%_7Қ{ @YQW-rsorbsoZ 2f/kzTs-zIH\E \RU+z!QsTR猪V=`s>'ۇ÷=rH qVa\sm|yׂx&ۋ}l8 P/pU'yh|@43 vSNH o)#3NtO " ҵq>7\;GwCu&Ҍn60^D՟Q^k,vSh}AQʍstHxZ;4-GDx:! fmsu}w$[=:Ng$[:渌4AO7=|Dx}L[H<@HAG Z u[67 L#2n$*,SCg_U.3 zNj,UHx#XXl{SPyBd/ŋ`?P1Ӌz}~di :5斞{@UqTRd7극89)n넡Ǜjl)4YQ-Lj}QP9* ؒE?L1t.xлF#/Ow/fй!& ٵ 78s ݌bzZWWJSqO4k]j__LSjLhЉ܈V} VۭGqSg}i/i)ϹǽN:zH$upSMGa7*1r 5Prct {ڀWl.cU[d~q!`*/U0md|J+\wq6r=D,{ ݄RҴگ%,آ?$<Y)*WLNT5q`GЩ~z| Q}_d!^xUʈ B<4OjI;ܝѹ:M?UiλVW*^Acr+Е}t(-ICޜNɡ%7/:kI8wr.ŕ|9ZBpҡ?{Wd(CA{/~)gwi,ϛQ_aë?YPM/w6ƣ5hhjƲ.tCxKz}ZK  2smgvnfKV|lBc]Mm *c@#C/gKb"Wt2GxQBR:&tbf9'[C\ی'⼚go;ɾfHDq"b1cT"_7@%6˴K Q B~Tdp 8ʧ7cY_]ɷ.20jw WW@ "M!׆?4w>òa"s)eXd<˷'O$FeIaˆ.8HO%dyһ?]z3`XSʎH(ㅢj/[|gpc JW[7?(1=jYO\X<Vf+6oiNhB@5 ޺.h% ]^U\quۻl ̱] CkE@[Jj~8sYٍј%7et A{"B uO4 W%Q6zj0t"am)5أ_V7cJov]ba E(Lo1.ާГĸѓ~SA,)M@e"¶*_%Im/|t.$ }>;+aPU '-'GHӮ%c> [7޳ԐҊÖ]\TP9ÊYuR4H=Щ?߄S8҂o.Aɛ聟ހXLYq=9 g)=4m`pT!:qc' cٜcT2MZ'IzgK2+{9tThȷLszn2M6VLhM߇w$4>$AVSnґ;btK pڳmrHqH^Mǔ<euNЮēӀ-Oo,5eFf3Nfڜ]Ot9]Ś|KQ7 ;!@D{0&J0?x*Ֆsν~wDm\|ِ9k+:s=@!-%mMV*QK֪x8A"vi օ "JԸ>'=~m |QbGκc!ڬw&I UiDPm#vnQg *RMC*P~i.t }z=|8|:J.eYǡ&a|61=<^^/ڜ"KyNk9 c89nvnBΩwi. xP&i^:e#w5Gub&z]iZ6JB_dk^cL3π;Tw\TKmsŗ'Kd7wC˖ 9%j!17@&s!&+a9_mQJ6Ev-~o0*x|r`60R'5uz`[tKFo+f!$fiCC# %Yަ*%G1]W ?J}2-,n u`qǻWWj?ϝ+xbGE;]m!j 8._.)g] d ZsrqӊȂj[哲\ Ώ}!ލX>;yuImj[x,\CF ,l)w¯Vwg93 ;Ɍt0=D!$K;iL;u*r\:sNDOEtu9{HCiϫxƟ6lh$߫o;f"m uS]h=uQ}x^"e5^SFْСb7{9m'Qfi Ӑq8?j ~~[3ܻ*ZLPRZTڏQ7b5g DgE$C5*g$g6G&L (eBxe`r-q{8\FsgjS}7+)'!Lq \a2ID([mז2Ӭ+AЬH= \F͔rߌ쯛 7e>ͤgLy_#(<p%`{rAbQ/Fm` = >]t܎+}5dM 90k< Dkp[Oq 3xWqOۆX-ѲRrfq5ٽMa+\%~u[Ƀ.k766Z`JYMJX_ v,fooUnzs2>S:I ?Vմ 0Zz`MB諁 X] ,._Ұuw[f٪о0_qn(FXK|sS>Oww* aUaWJF%ABj~ެ-eL ҙ^ZLΐO$5V<+^B {Ĭ˄tNKU3zMfƠTZ̈́cӟ-\kv7gfMmQ6jk8:f!i~]ݚ;01y. <lt1Z8t6&ꑂQktmij۲\qDS˳8@\f@Đ38‹)HzHE+wfNhn:"q`"Ou'A}rMl8(a s0Gs8jȓlp(K)݇ [yr7pb Ы{2 ]fgt&J%9>\ϣc o+E:~GՃ[Bz>#:*щ|X+bw^hƵY%&duَ&onWAC (P/ļ:_whd`y9G|Z=s|,2sAT)ahĐ.1-j ˱:ٕi%Ym4 -_`Nb}<*h³hWw6&c[kK ϳv Qx+])GHKMURkNb E1KSlP'8ՃcKx} %OJݦ5rd2;,R[i 0:t_vʼ-Ba/zg}S\d 6FjdS1]D%#_ YME ZsIv??aͅoد%uQ)L,updIٱ$ ]uڪ)i|i]xBz$zAweI,<_V.:-uuC Y?w?S0 1Xhl|rl/0m$(X]m <Hڏ1Ֆ*I?*f\>Or$UBS$HK|2!jʄ}57퐝Ūb hb !t'yHA$=$..GKlF Q͸SwEl  :LC:7* P5: D 3rUdy9Y3.c}X=sh%b91hT l4i%X_ؑd.=uGNPAθwesMSq"4Lkf%>\X~D"N<@eHrdpD0D*"m(𣪳X ǭ{l,bcF X6?|g#ǒe؞6!\j9䴗偑M\ ȧړ6w!K[j`5Pȹ/HqcKH%dbn27\Y# <Xj"#b|WIn_6+PtjR׹V(yMv;cd*X ;_60!ɛ"-R ul3rJFeT߇)o K}C.eUxß&ymoD>de|SC~q(lMy4 AŮ:0 @JHaŜJFHD|͋B5t\قU@A>`zS ۫'O2 jI!\P~ D :ȡx\qiy-'P/DMltZv/WY[ ciee*bbKwJcqjzvq9t3_)⤼[ЙgzlVGegVub&!aN a 8C2c`{q~4_Gw#r_Zy΍f6!A^Jw$n\uEe;O9-EuS^?_qYEVPamCr0BW:-Mѷ7 M- hpZ6BAϙIZgS' 8M@z݆S'Kʂo{?r, Ya+$$J!+>6%VIWy XY j"އ#聲K`ڇmL~']{o,YְqCM+2BtlB sֿQj6!e<^$yM &5HYSu#Ea5ͤ~PpԸWsJ_<,V%`}lFfNȽJj"PjDjz,7%2؄z4`3_ *͗AsrXlȌ{Qz6&UO&j]Gʻ*P{זYG8r8 G,e,qbaT0 [IM\úk_P7N !z\ˎV(-VoF_H+]զlW*}@ ~q gguxBRZN~kV+ Z)َQVrn`^U`s z:k=9Kt5vy!筁mkxà$'Y+Ng1w9k&C=[DvfjتQ~ƣ"xT""(/bCC1g$o;/x@ o|1W)yt'[; ‰(2^O&c1K˘ZS"8;XQoPݕwTyepO ^qo:NƜGgp$ᆜQp1) G Jb|gEn&c䞎tN~og&o'5шE`d6bl$) -:>$ms-sJ>c/dmwV,/W>PVy]omCB*ʈAԄ,R&.i\F5qyzL9G{RQ$PŢ1:k-xV_e2tv!ލkeçd)YkH#&`*˿kwpT;j7ҌvȥR2-_gHC;BkN tP<`0A2Wy4D\R"n2\tH1DС4yo{PٷDܫΥWCJpTuKcfL_Zhr.m(J{ A. /eȝCSוhux}yqՆ%$PuzivGTo74G{܉nw~qΐ,h O9)&]Q3tsIQȭ Mz4Jݩ[0^DDLɉO4v>utoꮰ@P=ry(+Zb'YK+֊C&FKOhz#vCT /I~GW>IOXBzl4dpJ~%?xx7uiHEm%BmYP9*~K ?pLH7HivlmaQ-e^6L)gI ;mVZQhav-}2Zg/F3iNvnz9a~yTA>dr.˒װ4 &x%`#}/ܱr {Ь O-#?+J#B "m݆S%|[ݥGD, N*M[XJȳG~t&tGBY6֩ԟpmz~(\m? e"λZ,qh;gpt&O]g`XGcC/!qYln(<9>P%ȕ{{iA{ DS8aJe\_]ڂ _ϮҸ/ UG+ZYYCǬ eA( Exfazu]$:5y ih &_qIg3f.,=r8/l|JhG#z|MNeG;^A '2LJf3Fh6{XJz%6qJODKHؖvO/F`YPATp7Usem)6C{I}rx$LYIIMq+AiK5jS+$ܽW4<98J3;MS?\v0ƸqUUbA *Ʉ|8oD]mDL'kŚ+խg0C+ڃ[χ f>a d>"%zRK,jqW# 9яSd铆qyGWoH-2\NE׭-^&m%؟^ܫ4VLw^[!mi}I^vGn¬Wź=)6/C WX ׏PvZ'E,~pdѳ+M7 5~h`Y[BToi!U5G2hm{ Ʀ^@ ûA} -{A9CeY]'ogG(L9pb,Fd7$X$HIY'oE2eFb;90ڻ$ah5ZD/!D3ʢyY HU+:AdU䫙Src:ꇐX[U eVí|"ƈAe =!$͂,.7tOHӔ8rnq ๕ ^SIE7R svq@ H\YB\3/;G~xܺ+u8);!S! oڙׂnMʵRb%W73gAďic]4xϪqՉ/c} g vNAA nBR\i'@JhVSu7oV˕b֮vڍy*x gE oɮUHzFL[-5DIR HqO\Ti{C [R&6K茶 ǜcUq):,^|XVrqApl8sU>{߿‘>x18˥BL XrB^,\e$ꍓc*lQ\S~-f| "L*1LU "В;,8)G#c, 6){9'.VKqos)+9P$Pvµ#f4ez;Ozziձ7էK~~IZV#[4f1dL{<*tߏ+X`3L^ ƚVhAXپ>/2NvExOcn괴h| ;'* :"c]|']d .Ҋ:Xe$J4Zl󘦢-2"# HqJ-4,3/":Ǯ3еG_$#v6!Da `5aD _Q򣅨=w$5P= KguvcZg)4h$Wl:'=^Wo?SnC BƫFjd׫kL^\b`Ip9{qT0x&;񎙿;.sxe|jl[ߧ;r/4B$@h z'>~ ֚b^VJne7u-Г?ƝjQy:bn1~@ * fnY0Řw!#Z"wDtBii'DWkvrZm\^?ŻCc*ƆuV(-b ؀֡$skU% b{dc;JK7pWES$rv0ʙT8t:ƪkeE =f]yz1­CI4F/:`6 ~ţ~r?(I@miX-ORX?]FitvX%`Os5p#߈~3qٱWCPb# ԕo=6%9Ty3`"Jħ;b2d2pV?AVm2͓97i eKhhbvhKw0DZ7dnSun^rU(> a4aNy >a^q[~_R#ĝ K4a|-Ę%oyuz/QbROjWwB_I$"K )uUtgdZALdfK(|Ђd]^:iјz1]o_H݉Q c:\:ihEd?lE :eZ]EwXeɣr@{MG\ԏ)< Z1 A}}l7`F$_L( 3d >[SwZRG .x4IItKC򛉧/@z5uxZܰ%n X) F:L:6mspbuFTYRHhbWxq%z-h$Ѱ_-eCgv/?1цVU[-Uױ+hQ.ck)!Aq#Xz[8_Fc z,j9bu"ײ-#w⁩{I9*.Y@l=8? '{Lҹ|brVGJ$]@[) X3K )Rʛ|hpYFpKev2/qj\h`[rp"׽q%ڈ@d2 YW Exg#mPـPfpXF9A|V}' EEܡx#hNw0Ƭf|L(t9'}K?q^ebH}VxtN]Ube0vᢷ^W=m@WRFq|ꒈ@x&Dyb,-}¥]-ٖա,iV~}yLK$H@CGޢGin0PjOWGn*Ѧ ڼ-ŰO*?[r&`Iԁ˛H|Ab7^DOۗ\>))]/i-ұD6iɤ同1B/gd:s/pTJMP k;-<*c\xT& ХazӸMIvj3c ޿Zb;%c0A+U#xvU).AuNG{ӄ}(7s,{ X^Ql ݻv P͵.. +aPG\19f_?Ppp*E=&錺lP`eE\DB `Ldzh>߅}ARs۬B.vI' S=Ð)^+D&qT8JQzˇ`{%e~}2]Lwm3@W/K~ڟ?@[(Q!'9,BHQbq"c)'fE(vo\_Is';ĕQ[UV۬S:f 25p\@G;8BFt`Tw[~>ZLD+9ʟOejhrԘ&qYs ?|RCH>&yl)&ɜRỷ-Z/ɀ"R#E&j, B+WI1$eKe&೯-^;ihy耽8&9$ը9DG]nSR) 61x'W,fTlfx Yi TcR@hX9ɠ1psGeٚ ָ}7s"hف~Dfm?LTU*d& {^i$]Y"P}JbhM?y杪ȲQeՋuH2xQ>`S 瘊zPD2_đsd]3׆3s}?x Ť_}ŭ(ĸpGpߔW!e3O|Vi2Y.P熽l5B]gG)8{oxX|cY3vs&+!;[?z"Vr{hQ[iֿ,[55 dL"/sv= لcpNXY?r1Y{x[Uh~tKܿFR'$,u] l.W/D*;^J1(4Y >ԍHZ3- Q {XW3]ssʹKyMdx+hƆ5pE), xʴ1"=OG6Ql-NxF!XI3* -85s(ӥ;:f[>hzfAәj(P4Z+ߨ;^"x֒ñq[ SuP-񾯕qSaIݣNq6A Gq yR\Ỳ0,wX?Am%+ ^o}F6 -fī7 i8R!8?X^⩔ ӞEI@X, 8(|Ri08_Pjmik{8D#?ݦ5iCq3'& Mi(A޽GYMγzBsy RX"<ʏBP]9y$@VAS?n5 x1$rpv & gNet%-gʚ"_\1%>}ʨXEaqK͔J48qN-Ŧyih3E"˺qEO538饢o,FzLng [+[$f4Pmg'^J=֢m .Y:0C+m0::B5q6K$P ɜE0^x}!qF*0gP&ޜWU8Zdg9I~s::us] ~o30=`>"l5.S4:@ C*\x_~>Br |? "4);2Bҙl~zzHH'ZRZ_Ln_I]AM^WQ~S}A=8Lxe}T@وp{];G#hN9_/\0r.0#|'olƓ 13g#-ޮL7c ie :F2eh؂hr$:T g%q~e1vԽ 1T :?t`?˯ s#-QZN>.JV?$ou~ :t xY-{)~.{2|5+.&X,@XGE{CyE~keywwy5oPbW۪hns|_r>v-y%fBAWuNHh(e/nNʇzZl/xҲi:D0%lMV~M&4Fs}}N'Ŝ,N!μv|`Gv v!_0P^<,cm6x4.16/Uh -q ٲlMK h~].h^|g|"o7UJVR!|Χ{%ъ x=3Jo?D`g((A.8_DC@rpq I%ک%(c=He)< ʵ\} :FYSi!x^gVʽ+.2 Qђ8Ž~%82i?({ 2%%7_r,Urpr0oU85[O!t.2CWWt;2Z0jkW-7v 55{뮀 #NSXGDV=PK>Y`륬!Ō#Edٯ[̤~^ຳMyx0l)0'7k;C;+Guj#l-N4l`-6\,䋉MBby~?VQxPs7Ӹ5q`a:Pao] e#xEg^ ]yM-]u8IuUD&wbeXO7xPÔ3f4x3l U`gc '=]P쮈17F~㟸Nk:kxL^[p*tU͢'$oӫ6 荅e3h# z` |dXT6 lG>\B㪙ta5ePҘ Vgn_om8d 6׊dՍ yAw* i/40x ws8ӏ  1n["nLׄYؑ<`Nt<檡ֹm~UD+/XEڎ՘`q1Ur 7Fo_w<@Sv3Y#~ j-R7ձ V ,K~qݞjUbXl~Ǖ6岼mHXKV=}c9*YZMPaC:}JۊU-=ΙR.LrMhb?@o+7- <:^!@Owt]j~b9/[ r?ly܏ Xn.uZt & b9( G> hMF2ZLcyM ϼ3&aH7!Pmڼs}+,:vF^i#L]夋0<\jhÜDx.\EeYƗg+mqkN<7 DQbo$En t~ȳ]t@hacccxhÔm,i[x7-Le&r?wۅ3o^ljhPdZpfdx|n1P0RM)S@vVXVbb}2bJWIg_6!=tfǬMyIQ H@K|*_(=jҵiivs+us\]:%d nhxp.U3UzUH{wu=j 1mL !zk)ؖ!cxk|9Go(J+x{!Q=hĄ"(){_E7 Bpn|E/x-7t3޷t 9j"ts}1e$ ʚ'س+Hm/2]VunZO^6%:{:'4:+ Uϊ:< ךjiе(?XZD>c즛iԫZ:Ό*Țz}B Sf(p3d ,5=Cy4t/xd$~YX|]gԎ++Bص ӟ3ISv5`P\dma:W%e8+4mL1DDjj=w nٽ PD:%~xQgU5LOPp4:ǍV`c6K]J{B|jKX`YvXƿh-A2HXP2ͭ5B+[,.+ph$N.,#~+!,VEY S雷 rŦ&Gǃ$ gU*#цAHH&E(n2ir!~l&MiyAP wgpͯBf ]"¦:0_#tcW2Usǃ:?^u./[]Ix::jKWf"{vYJMT*$yBxph ܅VC=C0A<+~4Sk %gtزO?3[B*+O?)Yߧ}\ZEŰ#!iҞo=j8)V#椔;תMؾdJ hS{Ԩ LP7ʁp("F~)~h* 酱_ 2#`?i0Q^7dC፭K0,R=:K$'iǗlz[qd=? 17A/SR9{'q ao u| Zf,bSYA;XHqu!ZM׽PXdKdU_R17sM羼%#ZwSF+ÆLYͮzhgbM&n݆Nm8v"o78VhyvCQU+d2Lpx:ŰYK}j_i SP.zf.T{MQ+2%bh[[WQyJaJ4Bt֥&k4Gdv 2s"b )MN4rKr>;#}vԵ#e[k0Շdb@uWU[Z ")EMٌ9DØ3*zc6##k m}ENԡ^K7*@5]*谡tFR g io"XW_$cΔDqfeͪjq'Jݑonl:vi - &Vf<Z#%G2יG.)߱jxuG-D FYKGwow_ψbZ2NvU *&|S4F>*k#tp [LiM4}oq+6{[?9UifWU(Ͱ$s=@x,Hdkep ]?{bBQ:ŗB|I<ۏxg/{Q>!Q%'`Mcd BȌM&ۉO."`/S8@xl1RjmޑnSluQDYe7^{%{QYJyQAxZLk p8em,~PgsrԲZ`nRbD x!M$}1\_{rd6[$(V;r=)n!SUUg"&r>(ĶE6݆t_J]Sϸß1Ȁ1Ӝ݊ԕwݲ뾼۲/wPGw/vHKίJm& ~% DG-$ta/[X`FhzŷAUE(2і4Y"VCQoE&mMvJx ڵ{ ?E+&.6BqU1`ɯzwi+/(*O6\Ug>0 YZgplots/R/0000755000175100001440000000000012677006672012016 5ustar hornikusersgplots/R/print.hist2d.R0000644000175100001440000000107612471456250014466 0ustar hornikusers# $Id: hist2d.R 1471 2011-08-16 01:03:31Z warnes $ print.hist2d <- function(x, ...) { cat("\n") cat("----------------------------\n") cat("2-D Histogram Object\n") cat("----------------------------\n") cat("\n") cat("Call: ") print(x$call) cat("\n") cat("Number of data points: ", x$nobs, "\n") cat("Number of grid bins: ", length(x$x), "x", length(x$y), "\n") cat("X range: (", min(x$x.breaks), ",", max(x$x.breaks), ")\n") cat("Y range: (", min(x$y.breaks), ",", max(x$y.breaks), ")\n") cat("\n") } gplots/R/venn.R0000644000175100001440000001303212674776565013122 0ustar hornikusers# This code plots Venn Diagrams for up to 5 sets. The # function getVennCounts is passed a list of vectors. # This is transformed into a table indicating the # number of intersections for each intersection. This table # is generated for any number of sets. # The function drawVennDiagram plots circles (up to three # sets) or ellipses (4 and 5 sets) to depict the sets. # The sum of values placed is the number of entries of # each set. # Function to determine values of a venn diagram # It works for an arbitrary large set of input sets. # getVennCounts <- function(l, universe, verbose=F, ...) UseMethod("getVennCounts") getVennCounts.data.frame <- function(l, universe=NA, verbose=F, ...) { if (verbose) cat("Interpreting data as data.frame.\n") if( !all(unique(unlist(l)) %in% c(0,1)) ) stop("Only indicator columns permitted") l <- lapply( l, function(x) which(as.logical(x))) getVennCounts.list(l, universe=universe, verbose=verbose) } getVennCounts.matrix <- function(l, universe=NA, verbose=F, ...) { getVennCounts.data.frame(as.data.frame(l), universe=NA, verbose=F, ...) } # l offers a list of arrays, their values are to # be tested for the size of their intersects. getVennCounts.list<-function(l, universe=NA, verbose=F, intersections=TRUE) { if (verbose) cat("Interpreting data as list.\n") numSets<-length(l) result.table<-NULL result.table.names<-NULL memberList <- list() # Iteration over all possible intersections involving all sets # or the complement (negation) of those sets. for (i in 0:(-1 + 2^numSets)) { # i2 is a binary representation of that number i2<-baseOf(i,2,numSets) # some debug output #print(paste(i,":",paste(i2,collapse="",sep=""))) # p.pos determines the position in number # which is also the set that is inspected sel<-universe # positive selection first for (p.pos in which(1 == i2) ) { current.set<-l[[p.pos]] if (!is.null(dim(current.set))) { # circumventing strange experiences with data.frames warning(paste("List element [[",p.pos,"]] has dimensions, but all elements are considered.\n",sep="")) current.set<-as.character(as.matrix(current.set)) dim(current.set)<-NULL } #print(paste("set ",p.pos,", val=1: ",paste(current.set,collapse=","))) if (is.null(sel)) { #print("Sel is null") } else if (1 == length(sel) && is.na(sel)) { sel<-current.set } else { w<-which(sel %in% current.set) if (length(w)>0) { sel<-sel[w] } else { sel<-NULL } } } # something should be in sel now, otherwise # the number will be 0 # negative selection for (p.pos in which(0 == i2) ) { if (is.null(sel) || ( 1 == length(sel) && is.na(sel))) { # The complement is not known, hence no checks done } else { current.set<-l[[p.pos]] if (!is.null(dim(current.set))) { warning(paste("List element [[",p.pos,"]] has dimensions, but all elements are considered.\n",sep="")) current.set<-as.character(as.matrix(current.set)) dim(current.set)<-NULL } w<-which( ! sel %in% current.set) #print(paste("set ",p.pos,", val=1: ",paste(current.set,collapse=","))) if (length(w)>0) { sel<-sel[w] } else { sel<-NULL } } } #print(paste("sel:",paste(sel,collapse=","))) if(is.null(sel) || (1 == length(sel) && is.na(sel))) { sel<-NULL } r.name<-paste(i2,collapse="") if (intersections) { memberList[[r.name]] <- sel } r<-length(sel) result.row<-c(r,i2) dim(result.row)<-c(1,length(result.row)) rownames(result.row)<-c(r.name) #print(paste("Adding ",r.name)) if (is.null(result.table)) { result.table<-result.row } else { result.table<-rbind(result.table,result.row) } #if (is.null(result.table)) { # result.table<-r # result.table.names<-r.name #} #else { # result.table<-c(result.table,r) # result.table.names<-c(result.table.names,r.name) #} } #names(result.table)<-result.table.names if (is.null(names(l))) { colnames(result.table)<-c("num",LETTERS[1:numSets]) } else{ colnames(result.table)<-c("num",names(l)) } if (intersections) { attr(result.table,"intersections") <- memberList } class(result.table) <- "venn" return(result.table) } #print(getVennCounts(list(A,B,C,D))) #print(getVennCounts(list(a=A,b=B,c=C,d=D))) venn <- function(data, universe=NA, small=0.7, showSetLogicLabel=FALSE, simplify=FALSE, show.plot=TRUE, intersections=TRUE, names, ... ) { counts <- getVennCounts(data, universe=universe, intersections=intersections ) if(show.plot) drawVennDiagram(data=counts, small=small, showSetLogicLabel=showSetLogicLabel, simplify=simplify, ... ) # use VennMemberNames to properly label and order the 'intersection' table if(intersections) attr(counts, "intersections") <- vennMembers(l=data, universe=universe, names=names ) invisible(counts) } gplots/R/vennMembers.R0000644000175100001440000000213612674776750014434 0ustar hornikusers# Extract intersections vennMembers <- function(l, universe=NA, names, ...) { venn_object <- getVennCounts(l, universe, intersections=TRUE, ...) map <- attr(venn_object, "intersections") if(missing(names)) names <- colnames(venn_object)[-1] if(is.matrix(l) || is.data.frame(l)) { ids <- rownames(l) retval <- list() for(i in names(map)) retval[[i]] <- ids[map[[i]]] } else if(is.list(l)) retval <- map flags <- do.call(rbind, strsplit(names(map), character(0), fixed=TRUE)) rownames(flags) <- names(map) colnames(flags) <- names nameList <- list() for(i in 1:nrow(flags)) nameList[[i]] <- ifelse(flags[i,]=="1", colnames(flags), "") nameList <- do.call(data.frame,nameList) nameList <- apply(nameList, 2, paste, collapse=":") nameList <- gsub('::+', ':', nameList) nameList <- gsub('^:+', '', nameList) nameList <- gsub(':+$', '', nameList) names(retval) <- nameList sortTab <- cbind(sapply(nameList, nchar), nameList) ord <- order(sortTab[,1], sortTab[,2]) retval <- retval[ord] retval <- lapply(retval, as.character) retval } gplots/R/angleAxis.R0000644000175100001440000000132012664117416014043 0ustar hornikusersangleAxis <- function(side, labels, at=1:length(labels), srt=45, adj, xpd=TRUE, ...) { usr <- par("usr") emH <- strheight("M") emW <- strwidth("M") if(missing(adj)) adj <- switch(side, 1, 1, 0, 0) switch(side, #1 - below text(x=at, y=usr[3]-emH/2, labels=labels, srt=srt, adj=adj, xpd=xpd, ...), #2 - left text(x=usr[1]-emW/2, y=at, labels=labels, srt=srt, adj=adj, xpd=xpd, ...), #3 - above text(x=at, y=usr[4]+emH/2, labels=labels, srt=srt, adj=adj, xpd=xpd, ...), #4 - right text(x=usr[2]+emW/2, y=at, labels=labels, srt=srt, adj=adj, xpd=xpd, ...) ) invisible(NULL) }gplots/R/plotNode.R0000644000175100001440000000111412471456250013713 0ustar hornikusershere <- function() {} plot.dendrogram <- stats:::plot.dendrogram environment(plot.dendrogram) <- environment(here) plotNodeLimit <- stats:::plotNodeLimit environment(plotNodeLimit) <- environment(here) .memberDend <- stats:::.memberDend environment(.memberDend) <- environment(here) .midDend <- stats:::.midDend environment(.midDend) <- environment(here) unByteCode <- function(fun) { FUN <- eval(parse(text=deparse(fun))) environment(FUN) <- environment(fun) FUN } plotNode <- unByteCode(stats:::plotNode) environment(plotNode) <- environment(here) gplots/R/barplot2.R0000644000175100001440000003123512471456250013663 0ustar hornikusers# Revision 2.1 2005/06/06 # - Modified default behavior with 0's and NA's in # 'height' so that these values are not plotted. # - Warning messages added in the case of the above. # Revision 2.0 2005/04/27 # - Added panel.first and panel.last arguments # - As per R 2.0.0, the default barplot() method by default uses a # gamma-corrected grey palette (rather than the heat color # palette) for coloring its output when given a matrix. barplot2 <- function(height, ...) UseMethod("barplot2") barplot2.default <- function( height, width = 1, space = NULL, names.arg = NULL, legend.text = NULL, beside = FALSE, horiz = FALSE, density = NULL, angle = 45, col = NULL, prcol = NULL, border = par("fg"), main = NULL, sub = NULL, xlab = NULL, ylab = NULL, xlim = NULL, ylim = NULL, xpd = TRUE, log = "", axes = TRUE, axisnames = TRUE, cex.axis = par("cex.axis"), cex.names = par("cex.axis"), inside = TRUE, plot = TRUE, axis.lty = 0, offset = 0, plot.ci = FALSE, ci.l = NULL, ci.u = NULL, ci.color = "black", ci.lty = "solid", ci.lwd = 1, ci.width = 0.5, plot.grid = FALSE, grid.inc = NULL, grid.lty = "dotted", grid.lwd = 1, grid.col = "black", add = FALSE, panel.first = NULL, panel.last = NULL, ...) { if (!missing(inside)) .NotYetUsed("inside", error = FALSE)# -> help(.) if (missing(space)) space <- if (is.matrix(height) && beside) c(0, 1) else 0.2 space <- space * mean(width) if (plot && axisnames && missing(names.arg)) names.arg <- if(is.matrix(height)) colnames(height) else names(height) if (is.vector(height) || (is.array(height) && (length(dim(height)) == 1))) { ## Treat vectors and 1-d arrays the same. height <- cbind(height) beside <- TRUE ## The above may look strange, but in particular makes color ## specs work as most likely expected by the users. if(is.null(col)) col <- "grey" } else if (is.matrix(height)) { ## In the matrix case, we use " heat colors" by default. if(is.null(col)) col <- heat.colors(nrow(height)) } else stop(paste(sQuote("height"), "must be a vector or a matrix")) if(is.logical(legend.text)) legend.text <- if(legend.text && is.matrix(height)) rownames(height) # Check for log scales logx <- FALSE logy <- FALSE if (log != "") { if (any(grep("x", log))) logx <- TRUE if (any(grep("y", log))) logy <- TRUE } # Cannot "hatch" with rect() when log scales used if ((logx || logy) && !is.null(density)) stop("Cannot use shading lines in bars when log scale is used") NR <- nrow(height) NC <- ncol(height) if (beside) { if (length(space) == 2) space <- rep.int(c(space[2], rep.int(space[1], NR - 1)), NC) width <- rep(width, length.out = NR) } else width <- rep(width, length.out = NC) offset <- rep(as.vector(offset), length.out = length(width)) delta <- width / 2 w.r <- cumsum(space + width) w.m <- w.r - delta w.l <- w.m - delta #if graphic will be stacked bars, do not plot ci if (!beside && (NR > 1) && plot.ci) plot.ci = FALSE # error check ci arguments if (plot && plot.ci) { if ((missing(ci.l)) || (missing(ci.u))) stop("confidence interval values are missing") if (is.vector(ci.l) || (is.array(ci.l) && (length(dim(ci.l)) == 1))) ci.l <- cbind(ci.l) else if (!is.matrix(ci.l)) stop(paste(sQuote("ci.l"), "must be a vector or a matrix")) if (is.vector(ci.u) || (is.array(ci.u) && (length(dim(ci.u)) == 1))) ci.u <- cbind(ci.u) else if (!is.matrix(ci.u)) stop(paste(sQuote("ci.u"), "must be a vector or a matrix")) if (any(dim(height) != dim(ci.u))) stop(paste(sQuote("height"), "and", sQuote("ci.u"), "must have the same dimensions.")) else if (any(dim(height) != dim(ci.l))) stop(paste(sQuote("height"), "and", sQuote("ci.l"), "must have the same dimensions.")) } # check height + offset/ci.l if using log scale to prevent log(<=0) error # adjust appropriate ranges and bar base values if ((logx && horiz) || (logy && !horiz)) { # Check for NA values and issue warning if required height.na <- sum(is.na(height)) if (height.na > 0) { warning(sprintf("%.0f values == NA in 'height' omitted from logarithmic plot", height.na), domain = NA) } # Check for 0 values and issue warning if required # _FOR NOW_ change 0's to NA's so that other calculations are not # affected. 0's and NA's affect plot output in the same way anyway, # except for stacked bars, so don't change those. height.lte0 <- sum(height <= 0, na.rm = TRUE) if (height.lte0 > 0) { warning(sprintf("%0.f values <=0 in 'height' omitted from logarithmic plot", height.lte0), domain = NA) # If NOT stacked bars, modify 'height' if (beside) height[height <= 0] <- NA } if (plot.ci && (min(ci.l) <= 0)) stop("log scale error: at least one lower c.i. value <= 0") if (logx && !is.null(xlim) && (xlim[1] <= 0)) stop("log scale error: 'xlim[1]' <= 0") if (logy && !is.null(ylim) && (ylim[1] <= 0)) stop("'log scale error: 'ylim[1]' <= 0") # arbitrary adjustment to display some of bar for min(height) since # 0 cannot be used with log scales. If plot.ci, also check ci.l if (plot.ci) { rectbase <- c(height[is.finite(height)], ci.l) rectbase <- min(0.9 * rectbase[rectbase > 0]) } else { rectbase <- height[is.finite(height)] rectbase <- min(0.9 * rectbase[rectbase > 0]) } # if axis limit is set to < above, adjust bar base value # to draw a full bar if (logy && !is.null(ylim) && !horiz) rectbase <- ylim[1] else if (logx && !is.null(xlim) && horiz) rectbase <- xlim[1] # if stacked bar, set up base/cumsum levels, adjusting for log scale if (!beside) height <- rbind(rectbase, apply(height, 2, cumsum)) # if plot.ci, be sure that appropriate axis limits are set to include range(ci) lim <- if (plot.ci) c(height, ci.l, ci.u) else height rangeadj <- c(0.9 * lim + offset, lim + offset) rangeadj <- rangeadj[rangeadj > 0] } else { # Use original bar base value rectbase <- 0 # if stacked bar, set up base/cumsum levels if (!beside) height <- rbind(rectbase, apply(height, 2, cumsum)) # if plot.ci, be sure that appropriate axis limits are set to include range(ci) lim <- if (plot.ci) c(height, ci.l, ci.u) else height # use original range adjustment factor rangeadj <- c(-0.01 * lim + offset, lim + offset) } # define xlim and ylim, adjusting for log-scale if needed if (horiz) { if (missing(xlim)) xlim <- range(rangeadj, na.rm=TRUE) if (missing(ylim)) ylim <- c(min(w.l), max(w.r)) } else { if (missing(xlim)) xlim <- c(min(w.l), max(w.r)) if (missing(ylim)) ylim <- range(rangeadj, na.rm=TRUE) } if (beside) w.m <- matrix(w.m, ncol = NC) if(plot) ##-------- Plotting : { opar <- if (horiz) par(xaxs = "i", xpd = xpd) else par(yaxs = "i", xpd = xpd) on.exit(par(opar)) # If add = FALSE open new plot window # else allow for adding new plot to existing window if (!add) { plot.new() plot.window(xlim, ylim, log = log, ...) } # Execute the panel.first expression. This will work here # even if 'add = TRUE' panel.first # Set plot region coordinates usr <- par("usr") # adjust par("usr") values if log scale(s) used if (logx) { usr[1] <- 10 ^ usr[1] usr[2] <- 10 ^ usr[2] } if (logy) { usr[3] <- 10 ^ usr[3] usr[4] <- 10 ^ usr[4] } # if prcol specified, set plot region color if (!missing(prcol)) rect(usr[1], usr[3], usr[2], usr[4], col = prcol) # if plot.grid, draw major y-axis lines if vertical or x axis if horizontal # R V1.6.0 provided axTicks() as an R equivalent of the C code for # CreateAtVector. Use this to determine default axis tick marks when log # scale used to be consistent when no grid is plotted. # Otherwise if grid.inc is specified, use pretty() if (plot.grid) { par(xpd = FALSE) if (is.null(grid.inc)) { if (horiz) { grid <- axTicks(1) abline(v = grid, lty = grid.lty, lwd = grid.lwd, col = grid.col) } else { grid <- axTicks(2) abline(h = grid, lty = grid.lty, lwd = grid.lwd, col = grid.col) } } else { if (horiz) { grid <- pretty(xlim, n = grid.inc) abline(v = grid, lty = grid.lty, lwd = grid.lwd, col = grid.col) } else { grid <- pretty(ylim, n = grid.inc) abline(h = grid, lty = grid.lty, lwd = grid.lwd, col = grid.col) } } par(xpd = xpd) } xyrect <- function(x1,y1, x2,y2, horizontal = TRUE, ...) { if(horizontal) rect(x1,y1, x2,y2, ...) else rect(y1,x1, y2,x2, ...) } if (beside) xyrect(rectbase + offset, w.l, c(height) + offset, w.r, horizontal=horiz, angle = angle, density = density, col = col, border = border) else { for (i in 1:NC) xyrect(height[1:NR, i] + offset[i], w.l[i], height[-1, i] + offset[i], w.r[i], horizontal=horiz, angle = angle, density = density, col = col, border = border) } # Execute the panel.last expression here panel.last if (plot.ci) { # CI plot width = barwidth / 2 half.ci.width = width * ci.width / 2 if (horiz) { segments(ci.l, w.m, ci.u, w.m, col = ci.color, lty = ci.lty, lwd = ci.lwd) segments(ci.l, w.m - half.ci.width, ci.l, w.m + half.ci.width, col = ci.color, lty = ci.lty, lwd = ci.lwd) segments(ci.u, w.m - half.ci.width, ci.u, w.m + half.ci.width, col = ci.color, lty = ci.lty, lwd = ci.lwd) } else { segments(w.m, ci.l, w.m, ci.u, col = ci.color, lty = ci.lty, lwd = ci.lwd) segments(w.m - half.ci.width, ci.l, w.m + half.ci.width, ci.l, col = ci.color, lty = ci.lty, lwd = ci.lwd) segments(w.m - half.ci.width, ci.u, w.m + half.ci.width, ci.u, col = ci.color, lty = ci.lty, lwd = ci.lwd) } } if (axisnames && !is.null(names.arg)) # specified or from {col}names { at.l <- if (length(names.arg) != length(w.m)) { if (length(names.arg) == NC) # i.e. beside (!) colMeans(w.m) else stop("incorrect number of names") } else w.m axis(if(horiz) 2 else 1, at = at.l, labels = names.arg, lty = axis.lty, cex.axis = cex.names, ...) } if(!is.null(legend.text)) { legend.col <- rep(col, length = length(legend.text)) if((horiz & beside) || (!horiz & !beside)) { legend.text <- rev(legend.text) legend.col <- rev(legend.col) density <- rev(density) angle <- rev(angle) } # adjust legend x and y values if log scaling in use if (logx) legx <- usr[2] - ((usr[2] - usr[1]) / 10) else legx <- usr[2] - xinch(0.1) if (logy) legy <- usr[4] - ((usr[4] - usr[3]) / 10) else legy <- usr[4] - yinch(0.1) legend(legx, legy, legend = legend.text, angle = angle, density = density, fill = legend.col, xjust = 1, yjust = 1) } title(main = main, sub = sub, xlab = xlab, ylab = ylab, ...) # if axis is to be plotted, adjust for grid "at" values if (axes) { if(plot.grid) axis(if(horiz) 1 else 2, at = grid, cex.axis = cex.axis, ...) else axis(if(horiz) 1 else 2, cex.axis = cex.axis, ...) } invisible(w.m) } else w.m } gplots/R/ci2d.R0000644000175100001440000001051512471456250012755 0ustar hornikusers# $Id: ci2d.R 1471 2011-08-16 01:03:31Z warnes $ ## first(...) selects the first element of which(...) first <- function(x,...) { w <- which(x,...) if(length(x)>1) w[1] else w } ## first(...) selects the first element of which(...) last <- function(x,...) { w <- which(x,...) if(length(x)>1) rev(w)[1] else w } ## non-parametric 2 dimensional approximate confidence interval ci2d <- function(x, y = NULL, nbins=51, method=c("bkde2D","hist2d"), bandwidth, factor=1.0, ci.levels=c(0.50,0.75,0.90,0.95,0.975), show=c("filled.contour","contour","image","none"), col=topo.colors(length(breaks)-1), show.points=FALSE, pch=par("pch"), points.col="red", xlab, ylab, ...) { show <- match.arg(show) method <- match.arg(method) breaks <- unique(c(0, ci.levels, 1.0)) # get labels for x and y if (missing(xlab)) xlab <- if (missing(x)) "" else deparse(substitute(x)) if (missing(ylab)) ylab <- if (missing(y)) "" else deparse(substitute(y)) if(!is.null(y)) x <- cbind(x,y) if(method=="hist2d") { h2d <- hist2d(x, show=FALSE, nbins=nbins, ...) ## normalize h2d$density <- h2d$counts / sum(h2d$counts, na.rm=TRUE) } else if (method=="bkde2D") { if(length(nbins)==1) nbins <- c(nbins, nbins) if(missing(bandwidth)) { h.x = dpik(x[,1]) h.y = dpik(x[,2]) bandwidth <- c(h.x, h.y) } est <- bkde2D(x, bandwidth=bandwidth*factor, gridsize=nbins, ... ) h2d <- list() h2d$x <- est$x1 h2d$y <- est$x2 h2d$counts <- est$fhat h2d$nobs <- nrow(x) h2d$density <- est$fhat / sum(est$fhat) # normalize } else stop("Unknown method: '", method, "'") uniqueVals <- rev(unique(sort(h2d$density))) cumProbs <- sapply(uniqueVals, function(val) sum( h2d$density[h2d$density>=val] ) ) names(cumProbs) <- uniqueVals h2d$cumDensity <- matrix(nrow=nrow(h2d$density), ncol=ncol(h2d$density)) h2d$cumDensity[] <- cumProbs[as.character(h2d$density)] if(show=="image") { image(h2d$x, h2d$y, h2d$cumDensity, xlab=xlab, ylab=ylab, breaks=breaks, col=col) if(show.points) points(x[,1], x[,2], pch=pch, col=points.col); } else if(show=="filled.contour") { if(show.points) plot.title <- function() { points(x[,1], x[,2], pch=pch, col=points.col); } else plot.title <- function() {} filled.contour(h2d$x, h2d$y, h2d$cumDensity, levels=breaks, col=col, xlab=xlab, ylab=ylab, plot.title=plot.title(), key.title=title("\nCI Level"), key.axes=axis(4, at=breaks) ) } else if(show=="contour") { tmpBreaks <- breaks[breaks<1] # avoid having 1.0 line contour(h2d$x, h2d$y, h2d$cumDensity, levels=tmpBreaks, labels=tmpBreaks, xlab=xlab, ylab=ylab, nlevels=length(tmpBreaks), col=col ) if(show.points) points(x[,1], x[,2], pch=pch, col=points.col); } h2d$contours <- contourLines(h2d$x, h2d$y, h2d$cumDensity, levels=breaks, nlevels=length(breaks)) # use the confidence level value as the name in the contour list names(h2d$contours) <- sapply(h2d$contours, function(x) x$level) # convert each contour into a (x,y) dataframe h2d$contours <- lapply( h2d$contours, function(J) data.frame(x=J$x, y=J$y) ) h2d$call <- match.call() class(h2d) <- "ci2d" invisible(h2d) } gplots/R/overplot.R0000644000175100001440000001170512516260671014010 0ustar hornikusers# $Id: overplot.R 1947 2015-04-23 21:18:42Z warnes $ panel.overplot <- function(formula, data, subset, col, lty, ...) { m <- match.call() m[[1]] <- as.name("plot") eval(m, parent.frame() ) m[[1]] <- as.name("lowess") tmp <- eval(m, parent.frame() ) lines( tmp, col=col, lwd=2, lty=lty ) } overplot <- function (formula, data = parent.frame(), same.scale=FALSE, xlab, ylab, xlim, ylim, min.y, max.y, log='', panel='panel.overplot', subset, plot=TRUE, groups, main, f=2/3, ... ) { ### # check that the formula had the right form ### if( length(formula)!=3 || length(formula[[3]]) != 3 || formula[[3]][[1]] != as.name("|") ) stop("Formula must be of the form y ~ x1 | x2") if(!missing(subset)) { flag <- eval(substitute(subset), envir=data) data <- data[flag,] } ### # Get the actual formula values ### cond <- eval(formula[[3]][[3]], envir=data, parent.frame()) x <- eval(formula[[3]][[2]], envir=data, parent.frame()) y <- eval(formula[[2]], envir=data, parent.frame()) #print(data.frame(cond,x,y)) y.all.min <- min(y, na.rm=TRUE) y.all.max <- max(y, na.rm=TRUE) x.all.min <- min(x, na.rm=TRUE) x.all.max <- max(x, na.rm=TRUE) if (length(cond) == 0) { cond <- list(as.factor(rep(1, length(x)))) } if (!is.factor(cond)) { cond <- factor(cond) } ### # create a new call to the requested function ### mycall <- match.call(expand.dots=FALSE) mycall$panel <- mycall$plot <- mycall$groups <- mycall$same.scale <- NULL mycall$min.y <- mycall$max.y <- NULL mycall$data <- data # remove condition from formula mycall$formula[3] <- formula[[3]][2] # function name if(is.character(panel)) panel <- as.name(panel) else panel <- deparse(substitute(panel)) mycall[[1]] <- as.name(panel) # ylim if(same.scale) { if(missing(ylim)) mycall$ylim <- range(y[y>0],na.rm=TRUE) } # xlim is always the same for all graphs if(missing(xlim)) if(log %in% c("x","xy")) mycall$xlim <- range(x[x>0],na.rm=TRUE) else mycall$xlim <- range(x,na.rm=TRUE) ### # Only plot groups with non-na entries ## tmp <- na.omit(data.frame(x,y,cond)) leveln <- sapply( split(tmp, tmp$cond), nrow ) if(missing(groups)) groups <- names(leveln) ngroups <- length(groups) if(!missing(min.y) && length(min.y==1)) min.y <- rep(min.y, length=ngroups) if(!missing(max.y) && length(max.y==1)) max.y <- rep(max.y, length=ngroups) ### # Set up the plot regions ### oldpar <- par()['mar'] on.exit(par(oldpar)) par(mar=par("mar") +c(0,ngroups*2.5,0,0)) ### # Ok. Now iterate over groups ## i <- 1 for(level in groups) { if(i>1) { par(new=TRUE) } mycall$subset <- (cond==level) mycall$ylab <- '' mycall$xlab <- '' mycall$xaxt = 'n' mycall$yaxt = 'n' mycall$pch = i mycall$col = i mycall$lty = i tmp.y <- y[mycall$subset & cond==level] ## If nothing to plot, skip to next level if(!any(is.finite(tmp.y))) next min.tmp.y <- min(tmp.y, na.rm=TRUE) max.tmp.y <- max(tmp.y, na.rm=TRUE) if( !missing(min.y) || !missing(max.y) ) { if(!missing(min.y) && !missing(max.y) ) { mycall$ylim <- c(min.y[i], max.y[i]) } else if(missing(min.y) && !missing(max.y)) { if(same.scale) mycall$ylim <- c(y.all.min, max.y[i]) else mycall$ylim <- c(min.tmp.y, max.y[i]) } else # !missing(min.y) && missing(max.y) { if(same.scale) mycall$ylim <- c(min.y[i], y.all.max) else mycall$ylim <- c(min.y[i], max.tmp.y) } } if(plot) { status <- try( eval(mycall, parent.frame()) ) if('try-error' %in% class(status)) break; } usr <- par("usr") axis(side=2,line=2.5*(i-1),lty=i,col=i,lwd=2) title(ylab=level, line=2.5*(i-1)) if(i == 1) axis(side=1) i <- i+1 } if(missing(xlab)) xlab <- as.character(formula[[3]][[2]]) if(missing(ylab)) ylab <- as.character(formula[[2]]) if(missing(main)) main <- paste("plot of ", xlab, "vs.", ylab, "by", as.character(formula[[3]][[3]])) if(i>1) { title(main=main,xlab=xlab) title(ylab=ylab, line=2.5*(i-1)) } par(oldpar) invisible( split(data.frame(x,y),cond) ) } gplots/R/ooplot.R0000644000175100001440000005071112471456251013453 0ustar hornikusers# $Id: ooplot.R 1557 2012-06-08 17:56:37Z warnes $ ooplot <- function(data, ...) UseMethod("ooplot") ooplot.default <- function(data, width=1, space=NULL, names.arg=NULL, legend.text=NULL, horiz=FALSE, density=NULL, angle=45, kmg="fpnumkMGTP", kmglim=TRUE, type=c("xyplot", "linear", "barplot", "stackbar"), col=heat.colors(NC), prcol=NULL, border=par("fg"), main=NULL, sub=NULL, xlab=NULL, ylab=NULL, xlim=NULL, ylim=NULL, xpd=TRUE, log="", axes=TRUE, axisnames=TRUE, prval=TRUE, lm=FALSE, cex.axis=par("cex.axis"), cex.names=par("cex.axis"), cex.values=par("cex"),inside=TRUE, plot=TRUE, axis.lty=0, plot.ci=FALSE, ci.l=NULL, ci.u=NULL, ci.color="black", ci.lty="solid", ci.lwd=1, plot.grid=FALSE, grid.inc=NULL, grid.lty="dotted", grid.lwd=1, grid.col="black", add=FALSE, by.row=FALSE, ...) { ## ## oopplot function block ## ## this is the location of the helper functions for this method ## optlim <- function(lim, log=FALSE) { ## define xlim and ylim, adjusting for log-scale if needed factor <- 1.05 if (log) { min <- 10^floor(log10(lim[1]/factor)) max <- 10^ceiling(log10(factor*lim[2])) } else { range <- (factor*lim[2]-lim[1]/factor) if (range>0) { ## we know the range, now find the optimal start and endpoints scale <- 10^floor(log10(range)) min <- scale*(floor((lim[1]/factor)/scale)) max <- scale*(ceiling(factor*lim[2]/scale)) } else { min=0 max=1 } } if (type=="barplot" || type=="stackbar") max=max+1 return(c(min, max)) } linearfitplot <- function(x,y,xlim,col) { ## calculate a linear fit through the datapoints and plot local <- data.frame(x=x,y=y) local.lm <- lm(y ~ x, data=local) summary <- summary(local.lm) xmin=min(x) xmax=max(x) if (xlim[1]xmax) { x2=mean(xlim[2],xmax) } else { x2=min(max(x),xlim[2]) } y1=summary$coefficients[2,1]*x1+summary$coefficients[1,1] y2=summary$coefficients[2,1]*x2+summary$coefficients[1,1] p1=c(x1,x2) p2=c(y1,y2) lines(p1,p2,col=col,lty=2,lwd=2) } castNA <- function(matrix) { newmatrix <- matrix for (j in 1:ncol(matrix)) { for (i in 1:nrow(matrix)) { newmatrix[i,j] <- ifelse(is.na(matrix[i,j]),0,matrix[i,j]) } } return(newmatrix) } ## ## End of function block ## ## In R, most people think about data in columns rather than rows if(by.row) data <- as.matrix(data) else data <- t(as.matrix(data)) ## make sure we only accept the supported plot options type <- match.arg(type) ## check data validity if( nrow(data) < 2 ) stop("At least 2 columns are required.") ## check defaults if (!missing(inside)) .NotYetUsed("inside", error=FALSE)# -> help(.) ## set the beside parameter if (type=="stackbar") { beside <- FALSE data <- castNA(data) } else beside <- TRUE ## split the data into x and y values height <- data[-1,,drop=FALSE] heightscale <- "" heightsymbol <- "" ## if ((kmg!="") && (kmglim==TRUE)){ ## ## auto scale the parameters ## ## now scale the data, valid factors are ## P : peta=1E15 ## T : tera=1E12 ## G : giga=1E09 ## M : mega=1E06 ## k : kilo=1E03 ## m : milli=1E-03 ## u : micro=1E-06 ## n : nano=1E-09 ## p : pico=1E-12 ## f : femto=1E-15 maxheight <- max(abs(height), na.rm=TRUE) heightfactor <- 1 if (maxheight>10E15 && any(grep("P", kmg))) { heightfactor <- 1E15 heightscale <- "Peta" heightsymbol <- "P" } else if (maxheight>1E12 && any(grep("T", kmg))) { heightfactor <- 1E12 heightscale <- "Tera" heightsymbol <- "T" } else if (maxheight>1E09 && any(grep("G", kmg))) { heightfactor <- 1E09 heightscale <- "Giga" heightsymbol <- "G" } else if (maxheight>1E06 && any(grep("M", kmg))) { heightfactor <- 1E06 heightscale <- "Mega" heightsymbol <- "M" } else if (maxheight>1E03 && any(grep("k", kmg))) { heightfactor <- 1E03 heightscale <- "Kilo" heightsymbol <- "k" } else if (maxheight<1E-15 && any(grep("f", kmg))) { heightfactor <- 1E-15 heightscale <- "Femto" heightsymbol <- "f" } else if (maxheight<1E-12 && any(grep("p", kmg))) { heightfactor <- 1E-12 heightscale <- "Pico" heightsymbol <- "p" } else if (maxheight<1E-09 && any(grep("n", kmg))) { heightfactor <- 1E-09 heightscale <- "Nano" heightsymbol <- "n" } else if (maxheight<1E-06 && any(grep("u", kmg))) { heightfactor <- 1E-06 heightscale <- "Micro" heightsymbol <- "u" } else if (maxheight<1E-03 && any(grep("m", kmg))) { heightfactor <- 1E-03 heightscale <- "Milli" heightsymbol <- "m" } height <- height/heightfactor } ## fill the xaxis data set and matching rownames xaxis <- data[1, ] rownames <- rownames(data) ## if (missing(space)) space <- if (is.matrix(height) && beside) c(0, 1) else 0.2 space <- space * mean(width) ## if (plot && axisnames && missing(names.arg)) { if (type=="xyplot") names.arg <- colnames(height) else if (type=="linear") names.arg <- xaxis else if (type=="barplot") names.arg <- xaxis else if (type=="stackbar") names.arg <- xaxis else names.arg <- xaxis } ## set the legend text if it is null if(is.logical(legend.text)) legend.text <- rownames[-c(1)] ## if(legend.text && is.matrix(height)) rownames(height) ## else colnames(height) if (is.vector(height) || is.array(height)) { height <- rbind(height) } else if (!is.matrix(height)) stop("`height' must be a vector or a matrix") ## Check for log scales logx <- FALSE logy <- FALSE if (log !="") { if (any(grep("x", log))) logx <- TRUE if (any(grep("y", log))) logy <- TRUE } ## Cannot "hatch" with rect() when log scales used if ((logx || logy) && !is.null(density)) stop("Cannot use shading lines in bars when log scale is used") ## Set the size of Rows and Columns NR <- nrow(height) NC <- ncol(height) ## w.r, w.l, w.m are the x-axis coordinates if (type=="barplot") { if (NR<1) NR <- 1 if (NC<1) NC <- 1 if (length(space)==2) { space <- rep.int(c(space[2], rep.int(space[1], NR - 1)), NC) } width <- rep(width, length=NR * NC) } else if (type=="stackbar") { width <- rep(width, length=NC) } else { width <- rep(width, length=NC) delta <- width / 2 } ## set the proper x-axis scale ## linear is a switch between equidistant and scaled if (type=="xyplot") { delta <- 0 w.m <- xaxis w.r <- w.m + delta w.l <- w.m - delta } else if (type=="linear") { w.r <- cumsum(width) w.m <- w.r - delta w.l <- w.m - delta xaxis <- w.m } else if(type=="barplot" || type=="stackbar") { delta <- width / 2 w.r <- cumsum(space + width) w.m <- w.r - delta w.l <- w.m - delta ##if graphic will be stacked bars, do not plot ci if (beside && (NR > 1) && plot.ci) plot.ci=FALSE } else stop("Unkown plot type") ## error check ci arguments if (plot && plot.ci) { if ((missing(ci.l)) || (missing(ci.u))) stop("confidence interval values are missing") if (is.vector(ci.l)) ci.l <- cbind(ci.l) else if (is.array(ci.l) && (length(dim(ci.l))==1)) ci.l <- rbind(ci.l) else if (!is.matrix(ci.l)) stop("`ci.l' must be a vector or a matrix") if (is.vector(ci.u)) ci.u <- cbind(ci.u) else if (is.array(ci.u) && (length(dim(ci.u))==1)) ci.u <- rbind(ci.u) else if (!is.matrix(ci.u)) stop("`ci.u' must be a vector or a matrix") if ( any(dim(height) !=dim(ci.u) ) ) stop("'height' and 'ci.u' must have the same dimensions.") else if ( any( dim(height) !=dim(ci.l) ) ) stop("'height' and 'ci.l' must have the same dimensions.") } if (beside) w.m <- matrix(w.m, ncol=NC) ## check height/ci.l if using log scale to prevent log(<=0) error ## adjust appropriate ranges and bar base values if ((logx && horiz) || (logy && !horiz)) { if (min(height, na.rm=TRUE) <=0) stop("log scale error: at least one 'height' value <=0") if (plot.ci && (min(ci.l) <=0)) stop("log scale error: at least one lower c.i. value <=0") if (logx && !is.null(xlim) && (xlim[1] <=0)) stop("log scale error: 'xlim[1]' <=0") if (logy && !is.null(ylim) && (ylim[1] <=0)) stop("'log scale error: 'ylim[1]' <=0") ## arbitrary adjustment to display some of bar for min(height) ## or min(ci.l) if (plot.ci) rectbase <- rangeadj <- (0.9 * min(c(height, ci.l))) else rectbase <- rangeadj <- (0.9 * min(height)) ## if axis limit is set to < above, adjust bar base value ## to draw a full bar if (logy && !is.null(ylim)) rectbase <- ylim[1] else if (logx && !is.null(xlim)) rectbase <- xlim[1] ## if stacked bar, set up base/cumsum levels, adjusting for log scale if (type=="stackbar") { heightdata <- height ## remember the original values height <- rbind(rectbase, apply(height, 2, cumsum)) } ## if plot.ci, be sure that appropriate axis limits are set to ## include range(ci) lim <- if (plot.ci) c(height, ci.l, ci.u) else height } else { ## Use original bar base value rectbase <- 0 ## if stacked bar, set up base/cumsum levels if (type=="stackbar") { heightdata <- height ## remember the original values height <- rbind(rectbase, apply(height, 2, cumsum)) } ## if plot.ci, be sure that appropriate axis limits are set to ## include range(ci) lim <- if (plot.ci) c(height, ci.l, ci.u) else height ## use original range adjustment factor rangeadj <- (-0.01 * lim) } ## calculate the ranges ourselves if (missing(xlim)) xlim <- optlim(range(w.l, w.r, na.rm=TRUE), logx) if (missing(ylim)) ylim <- optlim(range(height, na.rm=TRUE), logy) ## if(plot) ##-------- Plotting : { if (type=="barplot" || type=="stackbar") { if (horiz) rectbase <- xlim[1] ## make sure the xlimit and the rectbase ## are in sync else rectbase <- ylim[1] ## make sure the ylimit and rectbase are in sync opar <- if (horiz) par(xaxs="i", xpd=xpd) else par(yaxs="i", xpd=xpd) } else { opar <- if (horiz) par(xaxs="r", yaxs="r", xpd=xpd) else par(xaxs="r", yaxs="r", xpd=xpd) } on.exit(par(opar)) ## If add=FALSE open new plot window ## else allow for adding new plot to existing window if (!add) { plot.new() plot.window(xlim, ylim, log=log, ...) } ## Set plot region coordinates usr <- par("usr") ## adjust par("usr") values if log scale(s) used if (logx) { usr[1] <- 10 ^ usr[1] usr[2] <- 10 ^ usr[2] } if (logy) { usr[3] <- 10 ^ usr[3] usr[4] <- 10 ^ usr[4] } ## if prcol specified, set plot region color if (!missing(prcol)) rect(usr[1], usr[3], usr[2], usr[4], col=prcol) ## if plot.grid, draw major y-axis lines if vertical or x axis ## if horizontal R V1.6.0 provided axTicks() as an R equivalent ## of the C code for CreateAtVector. Use this to determine ## default axis tick marks when log scale used to be consistent ## when no grid is plotted. Otherwise if grid.inc is specified, ## use pretty() if (plot.grid) { par(xpd=FALSE) if (is.null(grid.inc)) { if (horiz) { grid <- axTicks(1) abline(v=grid, lty=grid.lty, lwd=grid.lwd, col=grid.col) } else { grid <- axTicks(2) abline(h=grid, lty=grid.lty, lwd=grid.lwd, col=grid.col) } } else { if (horiz) { grid <- pretty(xlim, n=grid.inc) abline(v=grid, lty=grid.lty, lwd=grid.lwd, col=grid.col) } else { grid <- pretty(ylim, n=grid.inc) abline(h=grid, lty=grid.lty, lwd=grid.lwd, col=grid.col) } } par(xpd=xpd) } ## ## end of the general setup, now get ready to plot the elements ## ## cycle through all the sets and plot the lines if (type=="xyplot" || type=="linear") { pch <- c() for (i in 1:NR) { list <- is.finite(height[i, ]) xrange <- xaxis[list] yrange <- height[i, list] lines(xrange, yrange, col=col[i]) if ((type=="xyplot") && (lm==TRUE)) linearfitplot(xrange,yrange,xlim,col[i]) symbol=21+(i %% 5) points(xrange, yrange, pch=symbol, bg=col[i], col=col[i]) pch <- c(pch, symbol) ## if (prval) { values=paste(format(yrange, digits=4), heightsymbol, sep="") chh <- par()$cxy[2] chw <- par()$cxy[1] if (logy) { factor=(yrange+chh)/yrange text(xrange, 1.1*yrange, labels=values, adj=c(0, 1), srt=0, cex=cex.values, bg="white", col="navy") } else { text(xrange, yrange+chh, labels=values, adj=c(0, 1), srt=0, cex=cex.values, bg="white", col="navy") } } } } if (type=="barplot" || type=="stackbar") { xyrect <- function(x1, y1, x2, y2, horizontal=TRUE, ...) { if(horizontal) rect(x1, y1, x2, y2, ...) else rect(y1, x1, y2, x2, ...) } chh <- par()$cxy[2] chw <- par()$cxy[1] if (type=="barplot") { xyrect(rectbase, w.l, c(height), w.r, horizontal=horiz, angle=angle, density=density, col=col, border=border) if (prval) { values=paste(format(c(height), digits=4), heightsymbol, sep="") if (horiz) { text(c(height)+chw, w.l, labels=values, adj=c(0, 1), srt=0, cex=cex.values, bg="white", col="navy") } else { text(w.l, c(height)+chh, labels=values, adj=c(0, 1), srt=0, cex=cex.values, bg="white", col="navy") } } } else if (type=="stackbar") { for (i in 1:NC) { xyrect(height[1:NR, i], w.l[i], height[-1, i], w.r[i], horizontal=horiz, angle=angle, density=density, col=col, border=border) if (prval) { for (j in 1:NR) { values=paste(format(c(heightdata[j, i]), digits=4), heightsymbol, sep="") if (horiz) { text(c(height[j, i])+chw, w.m[i], labels=values, adj=c(0, 1), srt=0, cex=cex.values, bg="white", col="navy") } else { text(w.m[i], c(height[j, i])+chh, labels=values, adj=c(0, 1), srt=0, cex=cex.values, bg="white", col="navy") } } } } } } if (plot.ci) { ## CI plot width=barwidth / 2 ci.width=width / 4 if (horiz) { segments(ci.l, w.m, ci.u, w.m, col=ci.color, lty=ci.lty, lwd=ci.lwd) segments(ci.l, w.m - ci.width, ci.l, w.m + ci.width, col=ci.color, lty=ci.lty, lwd=ci.lwd) segments(ci.u, w.m - ci.width, ci.u, w.m + ci.width, col=ci.color, lty=ci.lty, lwd=ci.lwd) } else { segments(w.m, ci.l, w.m, ci.u, col=ci.color, lty=ci.lty, lwd=ci.lwd) segments(w.m - ci.width, ci.l, w.m + ci.width, ci.l, col=ci.color, lty=ci.lty, lwd=ci.lwd) segments(w.m - ci.width, ci.u, w.m + ci.width, ci.u, col=ci.color, lty=ci.lty, lwd=ci.lwd) } } if (axisnames && !is.null(names.arg)) # specified or from {col}names { at.l <- if (length(names.arg) !=length(w.m)) { if (length(names.arg)==NC) # i.e. beside (!) colMeans(w.m) else if ((type=="barplot") && (NR==1)) { median(w.m) } else if ((type=="linear") && (NR==1)) { median(w.m) } else { stop("incorrect number of names now") } } else w.m ##axis(if(horiz) 2 else 1, at=at.l, labels=names.arg, ## lty=axis.lty, cex.axis=cex.names, ...) } if(!is.null(legend.text)) { legend.col <- rep(col, length=length(legend.text)) if((horiz & beside) || (!horiz & !beside)) { legend.text <- rev(legend.text) legend.col <- rev(legend.col) density <- rev(density) angle <- rev(angle) } ## adjust legend x and y values if log scaling in use if (logx) legx <- usr[2] - ((usr[2] - usr[1]) / 10) else legx <- usr[2] - xinch(0.1) if (logy) legy <- usr[4] - ((usr[4] - usr[3]) / 10) else legy <- usr[4] - yinch(0.1) if (type=="barplot" || type=="stackbar") { legend(legx, legy, legend=legend.text, angle=angle, density=density, fill=legend.col, xjust=1, yjust=1) } else { legend(legx, legy, legend=legend.text, ##angle=angle, ##density=density, lwd=1, col=legend.col, pch=pch, pt.bg=legend.col, xjust=1, yjust=1) } } title(main=main, sub=sub, xlab=xlab, ylab=paste(heightscale, ylab), ...) ## if axis is to be plotted, adjust for grid "at" values if (axes) { par(lab=c(10, 10, 7)) if (type=="barplot" || type=="stackbar") { axis(if(horiz) 2 else 1, at=at.l, labels=names.arg, lty=axis.lty, cex.axis=cex.names, ...) if(plot.grid) axis(if(horiz) 1 else 2, at=grid, cex.axis=cex.axis, ...) else axis(if(horiz) 1 else 2, cex.axis=cex.axis, ...) } else if (type=="linear") { if(plot.grid) { axis(if(horiz) 1 else 2, at=grid, cex.axis=cex.axis, ...) axis(if(horiz) 2 else 1, at=at.l, labels=names.arg, lty=axis.lty, cex.axis=cex.names, ...) } else { axis(if(horiz) 1 else 2, pos=0, cex.axis=cex.axis, ...) axis(if(horiz) 2 else 1, pos=ylim[1], at=at.l, labels=names.arg, cex.axis=cex.names, ...) } } else if (type=="xyplot") { if(plot.grid) { axis(if(horiz) 1 else 2, at=grid, cex.axis=cex.axis, ...) axis(if(horiz) 2 else 1, cex.axis=cex.axis, ) } else { if (horiz) { axis(1, pos=ylim[1], cex.axis=cex.axis, ...) axis(2, pos=xlim[1], cex.axis=cex.axis, ...) } else { axis(2, pos=xlim[1], cex.axis=cex.axis, ...) axis(1, pos=ylim[1], cex.axis=cex.axis, ...) } } } } invisible(w.m) } else w.m } gplots/R/space.R0000644000175100001440000000265412471456250013234 0ustar hornikusers# $Id: space.R 625 2005-06-09 14:20:30Z nj7w $ # When there are two or more points with the same (x,y) value (or # within x+-s[1] and x+-s[2]), space these out in the y direction so # that the points are separated by at least distance s. space <- function(x,y,s=1/50, na.rm=TRUE, direction="x") { if(direction!='x') { tmp <- y y <- x x <- tmp } if(na.rm) { ind <- is.na(x) | is.na(y) x <- x[!ind] y <- y[!ind] } if (length(s)==1) s <- c(s,s) spacing.x <- (max(x) - min(x))*s[1] spacing.y <- (max(y) - min(y))*s[2] within <- function(x,y,delta) { abs(x-y) < delta } # sort x,y so we can do the work ord <- order(x,y) undo <- order(ord) x <- x[ord] y <- y[ord] startsame <- 1 same.x <- x[1] same.y <- y[1] for( i in 1:length(x) ) { if(i>1 && within(x[i],same.x,spacing.x) && within(y[i],same.y,spacing.y) ) { if(x[startsame] == same.x ) x[startsame] <- x[startsame] cumrun <- i - startsame x[i] <- x[i] + (-1)^(cumrun+1) * floor((cumrun+1) /2) * spacing.x } else { startsame <- i same.x <- x[i] same.y <- y[i] } } if(direction!='x') { tmp <- y y <- x x <- tmp } return( list(x=x[undo], y=y[undo]) ) } gplots/R/replaceTabs.R0000644000175100001440000000157012471456250014362 0ustar hornikusers## Function to replace all tabs in a string with an appropriate number of spaces. # handle a single character string replaceTabs.inner <- function( text, width=8 ) { spaces <- " " if(nchar(text)<1) return(text) text.split <- strsplit(text,"\t")[[1]] if(length(text.split)==1) return(text) else { nSpaceAdd <- 8 - nchar(text.split) %% 8 nSpaceAdd[length(nSpaceAdd)] <- 0 nSpaceAdd[nSpaceAdd==8] <- 0 retval <- "" for(i in 1:length(text.split)) { tmp.text <- chartr("\t"," ", text.split[i]) # one space here retval <- paste(retval, tmp.text, substr(spaces,0,nSpaceAdd[i]-1 ), sep='' ) # rest here } return(retval) } } replaceTabs <- function(text, width=8) { text <- as.character(text) retval <- sapply(text, replaceTabs.inner) names(retval) <- names(text) retval } gplots/R/baseOf.R0000644000175100001440000000077112471456250013336 0ustar hornikusers # transform base # v = value of base 10 to be transformed # b = new base # l = minimal length of returned array (default is 1) # return value: array of factors, highest exponent first baseOf<-function(v,b,l=1) { remainder<-v i<-l ret<-NULL while(remainder>0 || i>0) { #print(paste("i=",i," remainder=",remainder)) m<-remainder%%b if (is.null(ret)) { ret<-m } else { ret<-c(m,ret) } remainder <- remainder %/% b i<-i-1 } return(ret) } gplots/R/wapply.R0000644000175100001440000000362212471456251013452 0ustar hornikusers# $Id: wapply.R 1012 2006-11-14 22:25:06Z ggorjan $ "wapply" <- function( x, y, fun=mean, method="range", width, n=50, drop.na=TRUE, pts, ...) { method <- match.arg(method, c("width","range","nobs","fraction")) if(missing(width)) if( method=="nobs" ) width <- max(5, length(x)/10 ) else width <- 1/10 if(method == "width" || method == "range" ) { if(method=="range") width <- width * diff(range(x)) if(missing(pts)) pts <- seq(min(x),max(x),length.out=n) result <- sapply( pts, function(pts,y,width,fun,XX,...) { low <- min((pts-width/2),max(XX)) high <- max((pts+width/2), min(XX)) return (fun(y[(XX>= low) & (XX<=high)],...)) }, y=y, width=width, fun=fun, XX = x, ...) if(drop.na) { missing <- is.na(pts) & is.na(result) pts <- pts[!missing] result <- result[!missing] } return(list(x=pts,y=result)) } else # method=="nobs" || method=="fraction" { if( method=="fraction") width <- floor(length(x) * width) ord <- order(x) x <- x[ord] y <- y[ord] n <- length(x) center <- 1:n below <- sapply(center - width/2, function(XX) max(1,XX) ) above <- sapply(center + width/2, function(XX) min(n,XX) ) retval <- list() retval$x <- x retval$y <- apply(cbind(below,above), 1, function(x) fun(y[x[1]:x[2]],...) ) if(drop.na) { missing <- is.na(retval$x) | is.na(retval$y) retval$x <- retval$x[!missing] retval$y <- retval$y[!missing] } return(retval) } } gplots/R/bandplot.R0000644000175100001440000000735212471456250013744 0ustar hornikusers# $Id: bandplot.R 1906 2014-12-02 01:46:35Z warnes $ bandplot <- function(x, ...) UseMethod("bandplot") bandplot.default <- function(x, y, ..., add=FALSE, sd=c(-2:2), sd.col=c("magenta","blue","red", "blue","magenta"), sd.lwd=c(2,2,3,2,2), sd.lty=c(2,1,1,1,2), method="frac", width=1/5, n=50 ) { if(length(sd.col) 5)) stop("`which' must be in 1:5") show[which] <- TRUE r <- residuals(x) n <- length(r) if(inherits(x,"glm")) yh <- predict(x) # != fitted() for glm else yh <- fitted(x) if (any(show[2:4])) s <- if(inherits(x, "rlm")) x$s else sqrt(deviance(x)/df.residual(x)) if (any(show[2:3])) { ylab23 <- if(inherits(x, "glm")) "Std. deviance resid." else "Standardized residuals" hii <- lm.influence(x)$hat w <- weights(x) # r.w := weighted.residuals(x): r.w <- if(is.null(w)) r else (sqrt(w)*r)[w!=0] rs <- r.w/(s * sqrt(1 - hii)) } if (any(show[c(1,3)])) l.fit <- if(inherits(x,"glm")) "Predicted values" else "Fitted values" if (is.null(id.n)) id.n <- 0 else { id.n <- as.integer(id.n) if(id.n < 0 || id.n > n) stop(paste("`id.n' must be in { 1,..,",n,"}")) } if(id.n > 0) { if(is.null(labels.id)) labels.id <- paste(1:n) iid <- 1:id.n show.r <- order(-abs(r))[iid] if(any(show[2:3])) show.rs <- order(-abs(rs))[iid] text.id <- function(x,y, ind, adj.x = FALSE) text(x - if(adj.x) strwidth(" ")*cex.id else 0, y, labels.id[ind], cex = cex.id, xpd = TRUE, adj = if(adj.x) 1) } nb.fig <- prod(par("mfcol")) one.fig <- prod(par("mfcol")) == 1 if (ask) { op <- par(ask = TRUE) on.exit(par(op)) } ##---------- Do the individual plots : ---------- if (show[1]) { ylim <- range(r) if(id.n > 0) ylim <- ylim + c(-1,1)* 0.08 * diff(ylim) plot(yh, r, xlab = l.fit, ylab = "Residuals", main = main, ylim = ylim, type = "n", ...) panel(yh, r, ...) if(rug) rug(yh) ## GRW 2001-06-08 if(band) bandplot(yh,r,add=TRUE,width=width) ## GRW 2001-06-08 if (one.fig) title(sub = sub.caption, ...) mtext(caption[1], 3, 0.25) if(id.n > 0) { y.id <- r[show.r] y.id[y.id < 0] <- y.id[y.id < 0] - strheight(" ")/3 text.id(yh[show.r], y.id, show.r, adj.x = TRUE) } abline(h = 0, lty = 3, col = "gray") } if (show[2]) { ylim <- range(rs) ylim[2] <- ylim[2] + diff(ylim) * 0.075 qq <- qqnorm(rs, main = main, ylab = ylab23, ylim = ylim, ...) qqline(rs) if (one.fig) title(sub = sub.caption, ...) mtext(caption[2], 3, 0.25) if(id.n > 0) text.id(qq$x[show.rs], qq$y[show.rs], show.rs, adj.x = TRUE) } if (show[3]) { sqrtabsr <- sqrt(abs(rs)) ylim <- c(0, max(sqrtabsr)) yl <- as.expression(substitute(sqrt(abs(YL)), list(YL=as.name(ylab23)))) yhn0 <- if(is.null(w)) yh else yh[w!=0] plot(yhn0, sqrtabsr, xlab = l.fit, ylab = yl, main = main, ylim = ylim, type = "n", ...) panel(yhn0, sqrtabsr, ...) abline(h=mean(sqrtabsr),lty = 3, col = "gray") if(rug) rug(yh) ## GRW 2001-06-08 if(band) bandplot(yhn0,sqrtabsr,add=TRUE) ## GRW 2001-06-08 if (one.fig) title(sub = sub.caption, ...) mtext(caption[3], 3, 0.25) if(id.n > 0) text.id(yhn0[show.rs], sqrtabsr[show.rs], show.rs, adj.x = TRUE) } if (show[4]) { cook <- cooks.distance(x, sd=s) if(id.n > 0) { show.r <- order(-cook)[iid]# index of largest `id.n' ones ymx <- cook[show.r[1]] * 1.075 } else ymx <- max(cook) plot(cook, type = "h", ylim = c(0, ymx), main = main, xlab = "Obs. number", ylab = "Cook's distance", ...) if (one.fig) title(sub = sub.caption, ...) mtext(caption[4], 3, 0.25) if(id.n > 0) text.id(show.r, cook[show.r] + 0.4*cex.id * strheight(" "), show.r) } if (show[5]) { ## plot residuals against each predictor ## data <- model.frame(x) for( i in 1:ncol(data) ) { test <- try( { plot.default( x=data[,i], y=r, xlab=names(data)[i], ylab="Residuals", type="n") panel( data[,i], r, ... ) if(rug) rug(data[,i]) if(band) bandplot(data[,i],r,add=TRUE) abline(h=0,lty = 3, col = "gray") } ) } } if (!one.fig && par("oma")[3] >= 1) mtext(sub.caption, outer = TRUE, cex = 1.25) invisible() } gplots/R/lowess.R0000644000175100001440000000342312675270660013455 0ustar hornikusers# make stats::lowess into a generic base-function lowess.default <- function (x, y = NULL, f = 2/3, iter = 3L, delta = 0.01 * diff(range(x)), ...) { m <- match.call() m[[1L]] <- quote(stats::lowess) retval <- eval(m, envir=parent.frame()) class(retval) <- "lowess" retval$call <- match.call() retval } lowess <- function(x,...) UseMethod("lowess") "lowess.formula" <- function (formula, data = parent.frame(), ..., subset, f=2/3, iter=3, delta=.01*diff(range(mf[-response])) ) { if (missing(formula) || (length(formula) != 3)) stop("formula missing or incorrect") m <- match.call(expand.dots = FALSE) eframe <- parent.frame() md <- eval(m$data, eframe) if (is.matrix(md)) m$data <- md <- as.data.frame(data) dots <- lapply(m$..., eval, md, eframe) nmdots <- names(dots) m$... <- m$f <- m$iter <- m$delta <- NULL subset.expr <- m$subset m$subset <- NULL m <- as.list(m) m[[1L]] <- stats::model.frame.default m <- as.call(c(m, list(na.action = NULL))) mf <- eval(m, eframe) if (!missing(subset)) { s <- eval(subset.expr, data, eframe) l <- nrow(mf) dosub <- function(x) if (length(x) == l) x[s] else x dots <- lapply(dots, dosub) mf <- mf[s, ] } mf <- na.omit(mf) response <- attr(attr(mf, "terms"), "response" ) retval <- stats::lowess(mf[[-response]], mf[[response]], f=f, iter=iter, delta=delta) class(retval) <- "lowess" retval$call <- match.call() retval } gplots/R/plotmeans.R0000644000175100001440000000764512471456250014150 0ustar hornikusers## $Id: plotmeans.R 1912 2015-01-02 20:10:21Z warnes $ plotmeans <- function (formula, data = NULL, subset, na.action, bars=TRUE, p=0.95, minsd=0, minbar=NULL, maxbar=NULL, xlab=names(mf)[2], ylab=names(mf)[1], mean.labels=FALSE, ci.label=FALSE, n.label=TRUE, text.n.label="n=", digits=getOption("digits"), col="black", barwidth=1, barcol="blue", connect=TRUE, ccol=col, legends=names(means), xaxt, use.t = TRUE, lwd=par("lwd"), ...) { if (invalid(formula) || (length(formula) != 3)) stop("formula missing or incorrect") if (invalid(na.action)) na.action <- options("na.action") mf <- match.call(expand.dots = FALSE) if (is.matrix(eval(mf$data, parent.frame()))) mf$data <- as.data.frame(data) m <- match(c("formula", "data", "subset", "na.action"), names(mf), 0L) mf <- mf[c(1L, m)] mf[[1L]] <- quote(stats::model.frame) mf <- eval(mf, parent.frame()) response <- attr(attr(mf, "terms"), "response") ## drop unused levels in factors!!! wFact <- which(attr(attr(mf, "terms"),"dataClasses") == "factor") for(i in wFact) mf[,i] <- factor(mf[,i]) means <- sapply(split(mf[[response]], mf[[-response]]), mean, na.rm=TRUE) ns <- sapply(sapply(split(mf[[response]], mf[[-response]]), na.omit, simplify=FALSE), length ) xlim <- c(0.5, length(means)+0.5) if(!bars) { plot( means, ..., col=col, xlim=xlim) } else { myvar <- function(x) var(x[!is.na(x)]) vars <- sapply(split(mf[[response]], mf[[-response]]), myvar) ## apply minimum variance specified by minsd^2 vars <- ifelse( vars < (minsd^2), (minsd^2), vars) if(use.t) ci.width <- qt( (1+p)/2, ns-1 ) * sqrt(vars/ns) else ci.width <- qnorm( (1+p)/2 ) * sqrt(vars/ns) if(length(mean.labels)==1) { if (mean.labels==TRUE) mean.labels <- format( round(means, digits=digits )) else if (mean.labels==FALSE) mean.labels <- NULL } plotCI(x=1:length(means), y=means, uiw=ci.width, xaxt="n", xlab=xlab, ylab=ylab, labels=mean.labels, col=col, xlim=xlim, lwd=barwidth, barcol=barcol, minbar=minbar, maxbar=maxbar, ... ) if(invalid(xaxt) || xaxt!="n") axis(1, at = 1:length(means), labels = legends, ...) if(ci.label) { ci.lower <- means-ci.width ci.upper <- means+ci.width if(!invalid(minbar)) ci.lower <- ifelse(ci.lower < minbar, minbar, ci.lower) if(!invalid(maxbar)) ci.upper <- ifelse(ci.upper > maxbar, maxbar, ci.upper) labels.lower <- paste( " \n", format(round(ci.lower, digits=digits)), sep="") labels.upper <- paste( format(round(ci.upper, digits=digits)), "\n ", sep="") text(x=1:length(means),y=ci.lower, labels=labels.lower, col=col) text(x=1:length(means),y=ci.upper, labels=labels.upper, col=col) } } if(n.label) { text(x=1:length(means), y=par("usr")[3], labels=paste(text.n.label, ns, "\n", sep="") ) } if(!invalid(connect) & !identical(connect,FALSE)) { if(is.list(connect)) { if(length(ccol)==1) ccol <- rep(ccol, length(connect) ) for(which in 1:length(connect)) lines(x=connect[[which]],y=means[connect[[which]]],col=ccol[which]) } else lines(means, ..., lwd=lwd, col=ccol) } } gplots/R/balloonplot.R0000644000175100001440000002766312471456250014475 0ustar hornikusers# $Id: balloonplot.R 1302 2008-08-14 20:06:22Z warnes $ balloonplot <- function(x,...) UseMethod("balloonplot",x) balloonplot.table <- function(x, xlab, ylab, zlab, show.zeros = FALSE, show.margins = TRUE, ... ) { obj <- x tmp <- as.data.frame(x) x <- tmp[,1] y <- tmp[,2] z <- tmp[,3] tableflag <- TRUE if(missing(xlab)) xlab <- names(dimnames(obj))[1] if(missing(ylab)) ylab <- names(dimnames(obj))[2] if(missing(zlab)) zlab <- "Freq" balloonplot.default(x, y, z, xlab=xlab, ylab=ylab, zlab=zlab, show.zeros = show.zeros, show.margins = show.margins, ...) } balloonplot.default <- function(x,y,z, xlab, ylab, zlab=deparse(substitute(z)), dotsize=2/max(strwidth(19),strheight(19)), dotchar=19, dotcolor="skyblue", text.size=1, text.color=par("fg"), main, label=TRUE, label.digits=2, label.size=1, label.color=par("fg"), scale.method=c("volume","diameter"), scale.range=c("absolute","relative"), colsrt=par("srt"), rowsrt=par("srt"), colmar=1, rowmar=2, show.zeros=FALSE, show.margins=TRUE, cum.margins=TRUE, sorted=TRUE, label.lines=TRUE, fun=function(x)sum(x,na.rm=T), hide.duplicates=TRUE, ... ) { if(is.null(names(x))) { xnames <- as.character(substitute(x)) if(length(xnames)>1) xnames <- xnames[-1] } else xnames <- names(x) if(is.null(names(y))) { ynames <- as.character(substitute(y)) if(length(ynames)>1) ynames <- ynames[-1] } else ynames <- names(y) #### ## Handle arguments #### scale.method <- match.arg(scale.method) scale.range <- match.arg(scale.range) if( scale.method=="absolute" && any(z < 0, na.rm=TRUE ) ) warning("z value(s) below zero detected.", " No balloons will be displayed for these cells.") if(missing(main)) { if(scale.method=="volume") main <- paste("Balloon Plot for ", paste(xnames, collapse=", "), " by ", paste(ynames, collapse=", "), ".\nArea is proportional to ", zlab, ".", sep='') else main <- paste("Balloon Plot for ", paste(ynames, collapse=", "), " by ", paste(ynames, collapse=", "), ".\nDiameter is proportional to ", zlab, ".", sep='') } if(length(dotcolor)1) stop("circle: if y is not NULL, then x must not be a matrix") x<-cbind(x,y) } for(i in 1:nrow(x)) { ax<-elps[,1]+rep(x[i,1],1000) ay<-elps[,2]+rep(x[i,2],1000) polygon(ax,ay) } } #nolongerreguired#require(grid) ##cat("drawing circles\n") # draw circles with radius 1.7 equally distributed # with centers on a circle of radius 1 degrees<-2*pi/numCircles*(1:numCircles) # scaling factor s<-1/8*h # radius for circles r<-3/12*h x<-sapply(degrees,FUN=sin)*s + 0.5*h y<-sapply(degrees,FUN=cos)*s + 0.5*h ##cat("filling data\n") circle(x,y,r) distFromZero<-rep(NA,2^numCircles) degrees<-rep(NA,2^numCircles) degrees[(2^numCircles)]<-0 distFromZero[(2^numCircles)]<-0 for (i in 0:(numCircles-1)) { distFromZero[2^i+1] <- r degrees[2^i+1] <- 2*pi/numCircles*i d<-degrees[2^i+1] #print(data.colnames) text( # starting from the lowest bit, hence reading # lables from the right label=data.colnames[numCircles - i], x=sin(d)*5/12*h+0.5*h, y=cos(d)*5/12*h+0.5*h ) } if (4==numCircles) { for (i in 0:(numCircles-1)) { # Current set bit plus the bit left of it and the bit right of it distFromZero[2^i +2^((i+numCircles-1)%%numCircles) +2^((i+1)%%numCircles)+1] <- 2/12*h distFromZero[2^i+1] <- 3.5/12*h degrees[2^i +2^((i+numCircles-1)%%numCircles) +2^((i+1)%%numCircles)+1] <- degrees[2^i+1] } } #degrees[2^i+1] + degrees[2^((i+1)%%numCircles)+1])/2 if (3 <=numCircles) { for (i in 0:(numCircles-1)) { distFromZero[(2^i+2^((i+1)%%numCircles))+1]<- 2.2/12*h distFromZero[2^i+1] <- 3/12*h if (i == (numCircles-1)) { degrees[(2^i+2^((i+1)%%numCircles))+1] <- ( degrees[2^i+1] + 2*pi+ degrees[1+1])/2 } else { degrees[(2^i+2^((i+1)%%numCircles))+1] <- ( degrees[2^i+1] + degrees[2^((i+1)%%numCircles)+1])/2 } } } for(i in 1:2^numCircles) { n<-paste(baseOf((i-1),2,numCircles),collapse="") v<-data[n,1] d<-degrees[i] if (1 == length(d) && is.na(d)) { if (v>0) warning("Not shown: ",n," contains ",v,"\n") } else { l<-distFromZero[i] x<-sin(d)*l+0.5*h y<-cos(d)*l+0.5*h #cat("i=",i," x=",x," y=",y," label=",n,"\n") l<-v if (showSetLogicLabel) l<-paste(n,"\n",v,sep="") text(label=l,x=x,y=y) } } } else if ( (4 == numCircles && !simplify) || numCircles <= 5 ) { # Function to turn and move ellipses/circles relocate_elp <- function(e, alpha, x, y){ phi=(alpha/180)*pi; xr=e[,1]*cos(phi)+e[,2]*sin(phi) yr=-e[,1]*sin(phi)+e[,2]*cos(phi) xr=x+xr; yr=y+yr; return(cbind(xr, yr)) } lab<-function (identifier, data, showLabel=showSetLogicLabel) { r<-data[identifier,1] if (showLabel) { return(paste(identifier,r,sep="\n")) } else { return(r) } } if (4 == numCircles) { elps=cbind(162*cos(seq(0,2*pi,len=1000)), 108*sin(seq(0,2*pi,len=1000))); #plot(c(0, 400), c(0, 400), type="n", axes=F, ylab="", xlab=""); polygon(relocate_elp(elps, 45,130,170)); polygon(relocate_elp(elps, 45,200,200)); polygon(relocate_elp(elps,135,200,200)); polygon(relocate_elp(elps,135,270,170)); text( 35, 315, data.colnames[1],cex=1.5) text(138, 347, data.colnames[2],cex=1.5) text(262, 347, data.colnames[3],cex=1.5) text(365, 315, data.colnames[4],cex=1.5) elps <- cbind(130*cos(seq(0,2*pi,len=1000)), 80*sin(seq(0,2*pi,len=1000))) text( 35, 250, lab("1000",data)); text(140, 315, lab("0100",data)); text(260, 315, lab("0010",data)); text(365, 250, lab("0001",data)); text( 90, 280, lab("1100",data), cex=small) text( 95, 110, lab("1010",data) ) text(200, 50, lab("1001",data), cex=small) text(200, 290, lab("0110",data)) text(300, 110, lab("0101",data)) text(310, 280, lab("0011",data), cex=small) text(130, 230, lab("1110",data)) text(245, 75, lab("1101",data),cex=small) text(155, 75, lab("1011",data),cex=small) text(270, 230, lab("0111",data)) text(200,150,lab("1111",data)) } else if (5 == numCircles) { elps <- cbind(150*cos(seq(0,2*pi,len=1000)), 60*sin(seq(0,2*pi,len=1000))) polygon(relocate_elp(elps, 90,200, 250)) polygon(relocate_elp(elps, 162,250, 220)) polygon(relocate_elp(elps, 234,250, 150)) polygon(relocate_elp(elps, 306,180, 125)) polygon(relocate_elp(elps, 378,145, 200)) text( 20, 295, data.colnames[1],cex=1.5) text(140, 380, data.colnames[2],cex=1.5) text(350, 318, data.colnames[3],cex=1.5) text(350, 2, data.colnames[4],cex=1.5) text( 50, 10, data.colnames[5],cex=1.5) text( 61, 228, lab("10000",data)); text(194, 329, lab("01000",data)); text(321, 245, lab("00100",data)); text(290, 81, lab("00010",data)); text(132, 69, lab("00001",data)); text(146, 250, lab("11000",data), cex=small) text(123, 188, lab("10100",data), cex=small) text(275, 152, lab("10010",data), cex=small) text(137, 146, lab("10001",data), cex=small) text(243, 268, lab("01100",data), cex=small) text(175, 267, lab("01010",data), cex=small) text(187, 117, lab("01001",data), cex=small) text(286, 188, lab("00110",data), cex=small) text(267, 235, lab("00101",data), cex=small) text(228, 105, lab("00011",data), cex=small) text(148, 210, lab("11100",data),cex=small) text(159, 253, lab("11010",data),cex=small) text(171, 141, lab("11001",data),cex=small) text(281, 175, lab("10110",data),cex=small) text(143, 163, lab("10101",data),cex=small) text(252, 145, lab("10011",data),cex=small) text(205, 255, lab("01110",data),cex=small) text(254, 243, lab("01101",data),cex=small) text(211, 118, lab("01011",data),cex=small) text(267, 211, lab("00111",data),cex=small) text(170, 231,lab("11110",data),cex=small) text(158, 169,lab("11101",data),cex=small) text(212, 139,lab("11011",data),cex=small) text(263, 180,lab("10111",data),cex=small) text(239, 232,lab("01111",data),cex=small) text(204,190,lab("11111",data)) } } else { stop(paste("Venn diagrams for ",numCircles," dimensions are not yet supported.\n")) } } gplots/R/layout_set.R0000644000175100001440000000035412610002016014302 0ustar hornikuserslayout_set <- function(mat, index) { mfg <- par("mfg") mfg[1:2] = which(mat==index, arr.ind=TRUE)[1,] par(mfg=mfg) invisible(mfg) } layout_show <- function(mat) { graphics::layout.show( max(mat) ) mat } gplots/R/textplot.R0000644000175100001440000001547212471456250014026 0ustar hornikusers# $Id: textplot.R 1213 2007-11-01 20:20:10Z warnes $ textplot <- function(object, halign="center", valign="center", cex, ... ) UseMethod('textplot') textplot.default <- function(object, halign=c("center","left","right"), valign=c("center","top","bottom"), cex, ... ) { if (is.matrix(object) || (is.vector(object) && length(object)>1) ) return(textplot.matrix(object, halign, valign, cex, ... )) halign <- match.arg(halign) valign <- match.arg(valign) textplot.character(object, halign, valign, cex, ...) } textplot.data.frame <- function(object, halign=c("center","left","right"), valign=c("center","top","bottom"), cex, ... ) textplot.matrix(object, halign, valign, cex, ... ) textplot.matrix <- function(object, halign=c("center","left","right"), valign=c("center","top","bottom"), cex, cmar=2, rmar=0.5, show.rownames=TRUE, show.colnames=TRUE, hadj=1, vadj=1, mar= c(1,1,4,1)+0.1, col.data=par("col"), col.rownames=par("col"), col.colnames=par("col"), ... ) { if(is.vector(object)) object <- t(as.matrix(object)) else object <- as.matrix(object) # check dimensions of col.data, col.rownames, col.colnames if(length(col.data)==1) col.data <- matrix(col.data, nrow=nrow(object), ncol=ncol(object)) else if( nrow(col.data)!=nrow(object) || ncol(col.data)!=ncol(object) ) stop("Dimensions of 'col.data' do not match dimensions of 'object'.") if(length(col.rownames)==1) col.rownames <- rep(col.rownames, nrow(object)) if(length(col.colnames)==1) if(show.rownames) col.colnames <- rep(col.colnames, ncol(object)+1) else col.colnames <- rep(col.colnames, ncol(object)) halign=match.arg(halign) valign=match.arg(valign) opar <- par()[c("mar","xpd","cex")] on.exit( par(opar) ) par(mar=mar, xpd=FALSE ) # setup plot area plot.new() plot.window(xlim=c(0,1),ylim=c(0,1), log = "", asp=NA) # add 'r-style' row and column labels if not present if( is.null(colnames(object) ) ) colnames(object) <- paste( "[,", 1:ncol(object), "]", sep="" ) if( is.null(rownames(object)) ) rownames(object) <- paste( "[", 1:nrow(object), ",]", sep="") # extend the matrix to include row and column labels if( show.rownames ) { object <- cbind( rownames(object), object ) col.data <- cbind( col.rownames, col.data ) } if( show.colnames ) { object <- rbind( colnames(object), object ) col.data <- rbind( col.colnames, col.data ) } # set the character size if( missing(cex) ) { cex <- 1.0 lastloop <- FALSE } else { lastloop <- TRUE } for (i in 1:20) { oldcex <- cex width <- sum( apply( object, 2, function(x) max(strwidth(x,cex=cex) ) ) ) + strwidth('M', cex=cex) * cmar * ncol(object) height <- strheight('M', cex=cex) * nrow(object) * (1 + rmar) if(lastloop) break cex <- cex / max(width,height) if (abs(oldcex - cex) < 0.001) { lastloop <- TRUE } } # compute the individual row and column heights rowheight<-strheight("W",cex=cex) * (1 + rmar) colwidth<- apply( object, 2, function(XX) max(strwidth(XX, cex=cex)) ) + strwidth("W")*cmar width <- sum(colwidth) height <- rowheight*nrow(object) # setup x alignment if(halign=="left") xpos <- 0 else if(halign=="center") xpos <- 0 + (1-width)/2 else #if(halign=="right") xpos <- 0 + (1-width) # setup y alignment if(valign=="top") ypos <- 1 else if (valign=="center") ypos <- 1 - (1-height)/2 else #if (valign=="bottom") ypos <- 0 + height x <- xpos y <- ypos # iterate across elements, plotting them xpos<-x for(i in 1:ncol(object)) { xpos <- xpos + colwidth[i] for(j in 1:nrow(object)) { ypos<-y-(j-1)*rowheight if( (show.rownames && i==1) || (show.colnames && j==1) ) text(xpos, ypos, object[j,i], adj=c(hadj,vadj), cex=cex, font=2, col=col.data[j,i], ... ) else text(xpos, ypos, object[j,i], adj=c(hadj,vadj), cex=cex, font=1, col=col.data[j,i], ... ) } } par(opar) } textplot.character <- function (object, halign = c("center", "left", "right"), valign = c("center", "top", "bottom"), cex, fixed.width=TRUE, cspace=1, lspace=1, mar=c(0,0,3,0)+0.1, tab.width=8, ...) { object <- paste(object,collapse="\n",sep="") object <- replaceTabs(object, width=tab.width) halign = match.arg(halign) valign = match.arg(valign) plot.new() opar <- par()[c("mar","xpd","cex","family")] on.exit( par(opar) ) par(mar=mar,xpd=FALSE ) if(fixed.width) par(family="mono") plot.window(xlim = c(0, 1), ylim = c(0, 1), log = "", asp = NA) slist <- unlist(lapply(object, function(x) strsplit(x,'\n'))) slist <- lapply(slist, function(x) unlist(strsplit(x,''))) slen <- sapply(slist, length) slines <- length(slist) if (missing(cex)) { lastloop <- FALSE cex <- 1 } else lastloop <- TRUE for (i in 1:20) { oldcex <- cex #cat("cex=",cex,"\n") #cat("i=",i,"\n") #cat("calculating width...") cwidth <- max(sapply(unlist(slist), strwidth, cex=cex)) * cspace #cat("done.\n") #cat("calculating height...") cheight <- max(sapply(unlist(slist), strheight, cex=cex)) * ( lspace + 0.5 ) #cat("done.\n") width <- strwidth(object, cex=cex) height <- strheight(object, cex=cex) if(lastloop) break cex <- cex / max(width, height) if (abs(oldcex - cex) < 0.001) { lastloop <- TRUE } } if (halign == "left") xpos <- 0 else if (halign == "center") xpos <- 0 + (1 - width)/2 else xpos <- 0 + (1 - width) if (valign == "top") ypos <- 1 else if (valign == "center") ypos <- 1 - (1 - height)/2 else ypos <- 1 - (1 - height) text(x=xpos, y=ypos, labels=object, adj=c(0,1), cex=cex, ...) par(opar) invisible(cex) } gplots/R/print.ci2d.R0000644000175100001440000000202012471456251014101 0ustar hornikusers## $Id$ print.ci2d <- function(x, ...) { cat("\n") cat("----------------------------\n") cat("2-D Confidence Region Object\n") cat("----------------------------\n") cat("\n") cat("Call: ") print(x$call) cat("\n") cat("Number of data points: ", x$nobs, "\n") cat("Number of grid points: ", length(x$x), "x", length(x$y), "\n") cat("Number of confidence regions:", length(x$contours), "\n") cat("\n") tab <- data.frame( "Region"=1:length(x$contours), "CI Level"=as.numeric(names(x$contours)), "X Min"=sapply(x$contours, function(XX) min(XX$x)), "X Max"=sapply(x$contours, function(XX) max(XX$x)), "Y Min"=sapply(x$contours, function(XX) min(XX$y)), "Y Max"=sapply(x$contours, function(XX) max(XX$y)) ) print(tab, row.names=FALSE, ...) x$summary <- tab class(x) <- c("ci2d.summary", "ci2d") return(x) } gplots/R/heatmap.2.R0000644000175100001440000005557512675270476013744 0ustar hornikusers## $Id: heatmap.2.R 2103 2016-03-25 17:11:26Z warnes $ heatmap.2 <- function (x, ## dendrogram control Rowv = TRUE, Colv=if(symm)"Rowv" else TRUE, distfun = dist, hclustfun = hclust, dendrogram = c("both","row","column","none"), reorderfun = function(d, w) reorder(d, w), symm = FALSE, ## data scaling scale = c("none","row", "column"), na.rm=TRUE, ## image plot revC = identical(Colv, "Rowv"), add.expr, ## mapping data to colors breaks, symbreaks=any(x < 0, na.rm=TRUE) || scale!="none", ## colors col="heat.colors", ## block sepration colsep, rowsep, sepcolor="white", sepwidth=c(0.05,0.05), ## cell labeling cellnote, notecex=1.0, notecol="cyan", na.color=par("bg"), ## level trace trace=c("column","row","both","none"), tracecol="cyan", hline=median(breaks), vline=median(breaks), linecol=tracecol, ## Row/Column Labeling margins = c(5, 5), ColSideColors, RowSideColors, cexRow = 0.2 + 1/log10(nr), cexCol = 0.2 + 1/log10(nc), labRow = NULL, labCol = NULL, srtRow = NULL, srtCol = NULL, adjRow = c(0,NA), adjCol = c(NA,0), offsetRow = 0.5, offsetCol = 0.5, colRow = NULL, colCol = NULL, ## color key + density info key = TRUE, keysize = 1.5, density.info=c("histogram","density","none"), denscol=tracecol, symkey = any(x < 0, na.rm=TRUE) || symbreaks, densadj = 0.25, key.title = NULL, key.xlab = NULL, key.ylab = NULL, key.xtickfun = NULL, key.ytickfun = NULL, key.par=list(), ## plot labels main = NULL, xlab = NULL, ylab = NULL, ## plot layout lmat = NULL, lhei = NULL, lwid = NULL, ## extras extrafun=NULL, ... ) { scale01 <- function(x, low=min(x), high=max(x) ) { x <- (x-low)/(high - low) x } retval <- list() scale <- if(symm && missing(scale)) "none" else match.arg(scale) dendrogram <- match.arg(dendrogram) trace <- match.arg(trace) density.info <- match.arg(density.info) if(length(col)==1 && is.character(col) ) col <- get(col, mode="function") if(!missing(breaks) && any(duplicated(breaks)) ) stop("breaks may not contian duplicate values") if(!missing(breaks) && (scale!="none")) warning("Using scale=\"row\" or scale=\"column\" when breaks are", "specified can produce unpredictable results.", "Please consider using only one or the other.") if ( is.null(Rowv) || is.na(Rowv) ) Rowv <- FALSE if ( is.null(Colv) || is.na(Colv) ) Colv <- FALSE else if( all(Colv=="Rowv") ) Colv <- Rowv if(length(di <- dim(x)) != 2 || !is.numeric(x)) stop("`x' must be a numeric matrix") nr <- di[1] nc <- di[2] if(nr <= 1 || nc <= 1) stop("`x' must have at least 2 rows and 2 columns") if(!is.numeric(margins) || length(margins) != 2) stop("`margins' must be a numeric vector of length 2") if(missing(cellnote)) cellnote <- matrix("", ncol=ncol(x), nrow=nrow(x)) if(!inherits(Rowv, "dendrogram")) { ## Check if Rowv and dendrogram arguments are consistent if ( ( ( is.logical(Rowv) && !isTRUE(Rowv) ) || ( is.null(Rowv) ) ) && ( dendrogram %in% c("both","row") ) ) { warning("Discrepancy: Rowv is FALSE, while dendrogram is `", dendrogram, "'. Omitting row dendogram.") if (dendrogram=="both") dendrogram <- "column" else dendrogram <- "none" } } if(!inherits(Colv, "dendrogram")) { ## Check if Colv and dendrogram arguments are consistent if ( ( (is.logical(Colv) && !isTRUE(Colv) ) || (is.null(Colv)) ) && ( dendrogram %in% c("both","column")) ) { warning("Discrepancy: Colv is FALSE, while dendrogram is `", dendrogram, "'. Omitting column dendogram.") if (dendrogram=="both") dendrogram <- "row" else dendrogram <- "none" } } ## by default order by row/col mean ## if(is.null(Rowv)) Rowv <- rowMeans(x, na.rm = na.rm) ## if(is.null(Colv)) Colv <- colMeans(x, na.rm = na.rm) ## get the dendrograms and reordering indices ## if( dendrogram %in% c("both","row") ) ## { ## dendrogram option is used *only* for display purposes if(inherits(Rowv, "dendrogram")) { ddr <- Rowv ## use Rowv 'as-is', when it is dendrogram rowInd <- order.dendrogram(ddr) if(length(rowInd)>nr || any(rowInd<1 | rowInd > nr )) stop("Rowv dendrogram doesn't match size of x") if (length(rowInd) < nr) nr <- length(rowInd) } else if (is.integer(Rowv)) { ## Compute dendrogram and do reordering based on given vector distr <- distfun(x) hcr <- hclustfun(distr) ddr <- as.dendrogram(hcr) ddr <- reorderfun(ddr, Rowv) rowInd <- order.dendrogram(ddr) if(nr != length(rowInd)) stop("row dendrogram ordering gave index of wrong length") } else if (isTRUE(Rowv)) { ## If TRUE, compute dendrogram and do reordering based on rowMeans Rowv <- rowMeans(x, na.rm = na.rm) distr <- distfun(x) hcr <- hclustfun(distr) ddr <- as.dendrogram(hcr) ddr <- reorderfun(ddr, Rowv) rowInd <- order.dendrogram(ddr) if(nr != length(rowInd)) stop("row dendrogram ordering gave index of wrong length") } else if(!isTRUE(Rowv)) { rowInd <- nr:1 ddr <- as.dendrogram(hclust(dist(diag(nr)))) } else { rowInd <- nr:1 ddr <- as.dendrogram(Rowv) } if(inherits(Colv, "dendrogram")) { ddc <- Colv ## use Colv 'as-is', when it is dendrogram colInd <- order.dendrogram(ddc) if(length(colInd)>nc || any(colInd<1 | colInd > nc )) stop("Colv dendrogram doesn't match size of x") if (length(colInd) < nc) nc <- length(colInd) } else if(identical(Colv, "Rowv")) { if(nr != nc) stop('Colv = "Rowv" but nrow(x) != ncol(x)') if(exists("ddr")) { ddc <- ddr colInd <- order.dendrogram(ddc) } else colInd <- rowInd } else if(is.integer(Colv)) {## Compute dendrogram and do reordering based on given vector distc <- distfun(if(symm)x else t(x)) hcc <- hclustfun(distc) ddc <- as.dendrogram(hcc) ddc <- reorderfun(ddc, Colv) colInd <- order.dendrogram(ddc) if(nc != length(colInd)) stop("column dendrogram ordering gave index of wrong length") } else if (isTRUE(Colv)) {## If TRUE, compute dendrogram and do reordering based on rowMeans Colv <- colMeans(x, na.rm = na.rm) distc <- distfun(if(symm)x else t(x)) hcc <- hclustfun(distc) ddc <- as.dendrogram(hcc) ddc <- reorderfun(ddc, Colv) colInd <- order.dendrogram(ddc) if(nc != length(colInd)) stop("column dendrogram ordering gave index of wrong length") } else if(!isTRUE(Colv)) { colInd <- 1:nc ddc <- as.dendrogram(hclust(dist(diag(nc)))) } else { colInd <- 1:nc ddc <- as.dendrogram(Colv) } retval$rowInd <- rowInd retval$colInd <- colInd retval$call <- match.call() ## reorder x & cellnote x <- x[rowInd, colInd] x.unscaled <- x cellnote <- cellnote[rowInd, colInd] if(is.null(labRow)) labRow <- if(is.null(rownames(x))) (1:nr)[rowInd] else rownames(x) else labRow <- labRow[rowInd] if(is.null(labCol)) labCol <- if(is.null(colnames(x))) (1:nc)[colInd] else colnames(x) else labCol <- labCol[colInd] if(!is.null(colRow)) colRow <- colRow[rowInd] if(!is.null(colCol)) colCol <- colCol[colInd] if(scale == "row") { retval$rowMeans <- rm <- rowMeans(x, na.rm = na.rm) x <- sweep(x, 1, rm) retval$rowSDs <- sx <- apply(x, 1, sd, na.rm = na.rm) x <- sweep(x, 1, sx, "/") } else if(scale == "column") { retval$colMeans <- rm <- colMeans(x, na.rm = na.rm) x <- sweep(x, 2, rm) retval$colSDs <- sx <- apply(x, 2, sd, na.rm = na.rm) x <- sweep(x, 2, sx, "/") } ## Set up breaks and force values outside the range into the endmost bins if(missing(breaks) || is.null(breaks) || length(breaks)<1 ) { if( missing(col) || is.function(col) ) breaks <- 16 else breaks <- length(col)+1 } if(length(breaks)==1) { if(!symbreaks) breaks <- seq( min(x, na.rm=na.rm), max(x,na.rm=na.rm), length=breaks) else { extreme <- max(abs(x), na.rm=TRUE) breaks <- seq( -extreme, extreme, length=breaks ) } } nbr <- length(breaks) ncol <- length(breaks)-1 if(class(col)=="function") col <- col(ncol) min.breaks <- min(breaks) max.breaks <- max(breaks) x[xmax.breaks] <- max.breaks ## Calculate the plot layout if( missing(lhei) || is.null(lhei) ) lhei <- c(keysize, 4) if( missing(lwid) || is.null(lwid) ) lwid <- c(keysize, 4) if( missing(lmat) || is.null(lmat) ) { lmat <- rbind(4:3, 2:1) if(!missing(ColSideColors)) { ## add middle row to layout if(!is.character(ColSideColors) || length(ColSideColors) != nc) stop("'ColSideColors' must be a character vector of length ncol(x)") lmat <- rbind(lmat[1,]+1, c(NA,1), lmat[2,]+1) lhei <- c(lhei[1], 0.2, lhei[2]) } if(!missing(RowSideColors)) { ## add middle column to layout if(!is.character(RowSideColors) || length(RowSideColors) != nr) stop("'RowSideColors' must be a character vector of length nrow(x)") lmat <- cbind(lmat[,1]+1, c(rep(NA, nrow(lmat)-1), 1), lmat[,2]+1) lwid <- c(lwid[1], 0.2, lwid[2]) } lmat[is.na(lmat)] <- 0 } if(length(lhei) != nrow(lmat)) stop("lhei must have length = nrow(lmat) = ", nrow(lmat)) if(length(lwid) != ncol(lmat)) stop("lwid must have length = ncol(lmat) =", ncol(lmat)) ## Graphics `output' ----------------------- op <- par(no.readonly = TRUE) on.exit(par(op)) layout(lmat, widths = lwid, heights = lhei, respect = FALSE) plot.index <- 1 ## draw the side bars if(!missing(RowSideColors)) { par(mar = c(margins[1],0, 0,0.5)) image(rbind(1:nr), col = RowSideColors[rowInd], axes = FALSE) plot.index <- plot.index + 1 } if(!missing(ColSideColors)) { par(mar = c(0.5,0, 0,margins[2])) image(cbind(1:nc), col = ColSideColors[colInd], axes = FALSE) plot.index <- plot.index + 1 } ## draw the main carpet par(mar = c(margins[1], 0, 0, margins[2])) #if(scale != "none" || !symm) # { x <- t(x) cellnote <- t(cellnote) # } if(revC) { ## x columns reversed iy <- nr:1 if(exists("ddr")) ddr <- rev(ddr) x <- x[,iy] cellnote <- cellnote[,iy] } else iy <- 1:nr ## display the main carpet image(1:nc, 1:nr, x, xlim = 0.5+ c(0, nc), ylim = 0.5+ c(0, nr), axes = FALSE, xlab = "", ylab = "", col=col, breaks=breaks, ...) retval$carpet <- x if(exists("ddr")) retval$rowDendrogram <- ddr if(exists("ddc")) retval$colDendrogram <- ddc retval$breaks <- breaks retval$col <- col ## fill 'na' positions with na.color if(!invalid(na.color) & any(is.na(x))) { mmat <- ifelse(is.na(x), 1, NA) image(1:nc, 1:nr, mmat, axes = FALSE, xlab = "", ylab = "", col=na.color, add=TRUE) } ## add column labels if(is.null(srtCol) && is.null(colCol)) axis(1, 1:nc, labels= labCol, las= 2, line= -0.5 + offsetCol, tick= 0, cex.axis= cexCol, hadj=adjCol[1], padj=adjCol[2] ) else { if(is.null(srtCol) || is.numeric(srtCol)) { if(missing(adjCol) || is.null(adjCol)) adjCol=c(1,NA) if(is.null(srtCol)) srtCol <- 90 xpd.orig <- par("xpd") par(xpd=NA) xpos <- axis(1, 1:nc, labels=rep("", nc), las=2, tick=0) text(x=xpos, y=par("usr")[3] - (1.0 + offsetCol) * strheight("M"), labels=labCol, ##pos=1, adj=adjCol, cex=cexCol, srt=srtCol, col=colCol ) par(xpd=xpd.orig) } else warning("Invalid value for srtCol ignored.") } ## add row labels if(is.null(srtRow) && is.null(colRow)) { axis(4, iy, labels=labRow, las=2, line=-0.5+offsetRow, tick=0, cex.axis=cexRow, hadj=adjRow[1], padj=adjRow[2] ) } else { if(is.null(srtRow) || is.numeric(srtRow)) { xpd.orig <- par("xpd") par(xpd=NA) ypos <- axis(4, iy, labels=rep("", nr), las=2, line= -0.5, tick=0) text(x=par("usr")[2] + (1.0 + offsetRow) * strwidth("M"), y=ypos, labels=labRow, adj=adjRow, cex=cexRow, srt=srtRow, col=colRow ) par(xpd=xpd.orig) } else warning("Invalid value for srtRow ignored.") } ## add row and column headings (xlab, ylab) if(!is.null(xlab)) mtext(xlab, side = 1, line = margins[1] - 1.25) if(!is.null(ylab)) mtext(ylab, side = 4, line = margins[2] - 1.25) ## perform user-specified function if (!missing(add.expr)) eval(substitute(add.expr)) ## add 'background' colored spaces to visually separate sections if(!missing(colsep)) for(csep in colsep) rect(xleft =csep+0.5, ybottom=0, xright=csep+0.5+sepwidth[1], ytop=ncol(x)+1, lty=1, lwd=1, col=sepcolor, border=sepcolor) if(!missing(rowsep)) for(rsep in rowsep) rect(xleft =0, ybottom= (ncol(x)+1-rsep)-0.5, xright=nrow(x)+1, ytop = (ncol(x)+1-rsep)-0.5 - sepwidth[2], lty=1, lwd=1, col=sepcolor, border=sepcolor) ## show traces min.scale <- min(breaks) max.scale <- max(breaks) x.scaled <- scale01(t(x), min.scale, max.scale) if(trace %in% c("both","column") ) { retval$vline <- vline vline.vals <- scale01(vline, min.scale, max.scale) for( i in 1:length(colInd) ) { if(!is.null(vline)) { abline(v=i-0.5 + vline.vals, col=linecol, lty=2) } xv <- rep(i, nrow(x.scaled)) + x.scaled[,i] - 0.5 xv <- c(xv[1], xv) yv <- 1:length(xv)-0.5 lines(x=xv, y=yv, lwd=1, col=tracecol, type="s") } } if(trace %in% c("both","row") ) { retval$hline <- hline hline.vals <- scale01(hline, min.scale, max.scale) for( i in 1:length(rowInd) ) { if(!is.null(hline)) { abline(h=i - 0.5 + hline.vals, col=linecol, lty=2) } yv <- rep(i, ncol(x.scaled)) + x.scaled[i,] - 0.5 yv <- rev(c(yv[1], yv)) xv <- length(yv):1-0.5 lines(x=xv, y=yv, lwd=1, col=tracecol, type="s") } } if(!missing(cellnote)) text(x=c(row(cellnote)), y=c(col(cellnote)), labels=c(cellnote), col=notecol, cex=notecex) plot.index <- plot.index + 1 ## increment plot.index and then do ## latout_set( lmat, plot.index ) ## to set to the correct plot region, instead of ## relying on plot.new(). ## the two dendrograms : par(mar = c(margins[1], 0, 0, 0)) if( dendrogram %in% c("both","row") ) { flag <- try( plot.dendrogram(ddr, horiz = TRUE, axes = FALSE, yaxs = "i", leaflab = "none") ) if("try-error" %in% class(flag)) { cond <- attr(flag, "condition") if(!is.null(cond) && conditionMessage(cond)=="evaluation nested too deeply: infinite recursion / options(expressions=)?") stop('Row dendrogram too deeply nested, recursion limit exceeded. Try increasing option("expressions"=...).') } } else plot.new() par(mar = c(0, 0, if(!is.null(main)) 5 else 0, margins[2])) if( dendrogram %in% c("both","column") ) { flag <- try( plot.dendrogram(ddc, axes = FALSE, xaxs = "i", leaflab = "none") ) if("try-error" %in% class(flag)) { cond <- attr(flag, "condition") if(!is.null(cond) && conditionMessage(cond)=="evaluation nested too deeply: infinite recursion / options(expressions=)?") stop('Column dendrogram too deeply nested, recursion limit exceeded. Try increasing option("expressions"=...).') } } else plot.new() ## title if(!is.null(main)) title(main, cex.main = 1.5*op[["cex.main"]]) ## Add the color-key if(key) { mar <- c(5, 4, 2, 1) if (!is.null(key.xlab) && is.na(key.xlab)) mar[1] <- 2 if (!is.null(key.ylab) && is.na(key.ylab)) mar[2] <- 2 if (!is.null(key.title) && is.na(key.title)) mar[3] <- 1 par(mar = mar, cex=0.75, mgp=c(2, 1, 0)) if (length(key.par) > 0) do.call(par, key.par) tmpbreaks <- breaks if(symkey) { max.raw <- max(abs(c(x,breaks)),na.rm=TRUE) min.raw <- -max.raw tmpbreaks[1] <- -max(abs(x), na.rm=TRUE) tmpbreaks[length(tmpbreaks)] <- max(abs(x), na.rm=TRUE) } else { min.raw <- min.breaks max.raw <- max.breaks } z <- seq(min.raw, max.raw, by=min(diff(breaks)/100)) image(z=matrix(z, ncol=1), col=col, breaks=tmpbreaks, xaxt="n", yaxt="n") par(usr=c(0,1,0,1)) if (is.null(key.xtickfun)) { lv <- pretty(breaks) xv <- scale01(as.numeric(lv), min.raw, max.raw) xargs <- list(at=xv, labels=lv) } else { xargs <- key.xtickfun() } xargs$side <- 1 do.call(axis, xargs) if (is.null(key.xlab)) { if(scale=="row") key.xlab <- "Row Z-Score" else if(scale=="column") key.xlab <- "Column Z-Score" else key.xlab <- "Value" } if (!is.na(key.xlab)) { mtext(side=1, key.xlab, line=par("mgp")[1], padj=0.5, cex=par("cex") * par("cex.lab")) } if(density.info=="density") { dens <- density(x, adjust=densadj, na.rm=TRUE, from=min.scale, to=max.scale) omit <- dens$x < min(breaks) | dens$x > max(breaks) dens$x <- dens$x[!omit] dens$y <- dens$y[!omit] dens$x <- scale01(dens$x, min.raw, max.raw) lines(dens$x, dens$y / max(dens$y) * 0.95, col=denscol, lwd=1) if (is.null(key.ytickfun)) { yargs <- list(at=pretty(dens$y)/max(dens$y) * 0.95, labels=pretty(dens$y)) } else { yargs <- key.ytickfun() } yargs$side <- 2 do.call(axis, yargs) if (is.null(key.title)) key.title <- "Color Key\nand Density Plot" if (!is.na(key.title)) title(key.title) par(cex=0.5) if (is.null(key.ylab)) key.ylab <- "Density" if (!is.na(key.ylab)) mtext(side=2,key.ylab, line=par("mgp")[1], padj=0.5, cex=par("cex") * par("cex.lab")) } else if(density.info=="histogram") { h <- hist(x, plot=FALSE, breaks=breaks) hx <- scale01(breaks, min.raw, max.raw) hy <- c(h$counts, h$counts[length(h$counts)]) lines(hx, hy/max(hy)*0.95, lwd=1, type="s", col=denscol) if (is.null(key.ytickfun)) { yargs <- list(at=pretty(hy)/max(hy) * 0.95, labels=pretty(hy)) } else { yargs <- key.ytickfun() } yargs$side <- 2 do.call(axis, yargs) if (is.null(key.title)) key.title <- "Color Key\nand Histogram" if (!is.na(key.title)) title(key.title) par(cex=0.5) if (is.null(key.ylab)) key.ylab <- "Count" if (!is.na(key.ylab)) mtext(side=2,key.ylab, line=par("mgp")[1], padj=0.5, cex=par("cex") * par("cex.lab")) } else if (is.null(key.title)) title("Color Key") if(trace %in% c("both","column") ) { vline.vals <- scale01(vline, min.raw, max.raw) if(!is.null(vline)) { abline(v=vline.vals, col=linecol, lty=2) } } if(trace %in% c("both","row") ) { hline.vals <- scale01(hline, min.raw, max.raw) if(!is.null(hline)) { abline(v=hline.vals, col=linecol, lty=2) } } } else { par(mar=c(0, 0, 0, 0)) plot.new() } ## Create a table showing how colors match to (transformed) data ranges retval$colorTable <- data.frame( low=retval$breaks[-length(retval$breaks)], high=retval$breaks[-1], color=retval$col ) # Store layout information, suggested by Jenny Drnevich retval$layout <- list(lmat = lmat, lhei = lhei, lwid = lwid ) ## If user has provided an extra function, call it. if(!is.null(extrafun)) extrafun() invisible( retval ) } gplots/R/plotCI.R0000644000175100001440000000640612516261337013332 0ustar hornikusers# $Id: plotCI.R 1948 2015-04-23 21:23:36Z warnes $ plotCI <- function (x, y = NULL, uiw, liw = uiw, ui, li, err='y', ylim=NULL, xlim=NULL, type="p", col=par("col"), barcol=col, pt.bg = par("bg"), sfrac = 0.01, gap=1, lwd=par("lwd"), lty=par("lty"), labels=FALSE, add=FALSE, xlab, ylab, minbar, maxbar, ... ) { if (is.list(x)) { y <- x$y x <- x$x } if(invalid(xlab)) xlab <- deparse(substitute(x)) if(invalid(ylab)) { if(is.null(y)) { xlab <- "" ylab <- deparse(substitute(x)) } else ylab <- deparse(substitute(y)) } if (is.null(y)) { if (is.null(x)) stop("both x and y NULL") y <- as.numeric(x) x <- seq(along = x) } if(err=="y") z <- y else z <- x if(invalid(uiw)) uiw <- NA if(invalid(liw)) liw <- NA if(invalid(ui)) ui <- z + uiw if(invalid(li)) li <- z - liw if(!invalid(minbar)) li <- ifelse( li < minbar, minbar, li) if(!invalid(maxbar)) ui <- ifelse( ui > maxbar, maxbar, ui) if(err=="y") { if(is.null(ylim)) ylim <- range(c(y, ui, li), na.rm=TRUE) if(is.null(xlim) && !is.R() ) xlim <- range( x, na.rm=TRUE) } else if(err=="x") { if(is.null(xlim)) xlim <- range(c(x, ui, li), na.rm=TRUE) if(is.null(ylim) && !is.R() ) ylim <- range( x, na.rm=TRUE) } if(!add) { if(invalid(labels) || labels==FALSE ) plot(x, y, ylim = ylim, xlim=xlim, col=col, xlab=xlab, ylab=ylab, type="n", ...) else { plot(x, y, ylim = ylim, xlim=xlim, col=col, type="n", xlab=xlab, ylab=ylab, ...) text(x, y, label=labels, col=col, ... ) } } if(err=="y") { if(gap!=FALSE) gap <- strheight("O") * gap smidge <- par("fin")[1] * sfrac # draw upper bar if(!is.null(li)) arrows(x , li, x, pmax(y-gap,li), col=barcol, lwd=lwd, lty=lty, angle=90, length=smidge, code=1) # draw lower bar if(!is.null(ui)) arrows(x , ui, x, pmin(y+gap,ui), col=barcol, lwd=lwd, lty=lty, angle=90, length=smidge, code=1) } else { if(gap!=FALSE) gap <- strwidth("O") * gap smidge <- par("fin")[2] * sfrac # draw left bar if(!is.null(li)) arrows(li, y, pmax(x-gap,li), y, col=barcol, lwd=lwd, lty=lty, angle=90, length=smidge, code=1) if(!is.null(ui)) arrows(ui, y, pmin(x+gap,ui), y, col=barcol, lwd=lwd, lty=lty, angle=90, length=smidge, code=1) } ## _now_ draw the points (to avoid having lines drawn 'through' points) points(x, y, col = col, lwd = lwd, bg = pt.bg, type = type, ...) invisible(list(x = x, y = y)) } gplots/R/residplot.R0000644000175100001440000000064512471456250014144 0ustar hornikusers# $Id: residplot.R 1012 2006-11-14 22:25:06Z ggorjan $ residplot <- function(model, formula, ...) { data <- expand.model.frame( model, formula, na.expand=TRUE) newform <- eval(parse( text=paste("as.call(", "resid(model) ~", formula[-1],")" ))) plot( newform, data=data, ylab="Residuals") lines(lowess( newform, data=data ), col="red") bandplot(newform,data=data) } gplots/R/hist2d.R0000644000175100001440000000374712471456250013342 0ustar hornikusers# $Id: hist2d.R 1555 2012-06-07 16:08:18Z warnes $ hist2d <- function(x, y=NULL, nbins=200, same.scale=FALSE, na.rm=TRUE, show=TRUE, col=c("black", heat.colors(12)), FUN=base::length, xlab, ylab, ... ) { if(is.null(y)) { if(ncol(x) != 2) stop("If y is ommitted, x must be a 2 column matirx") y <- x[,2] x <- x[,1] } if(length(nbins)==1) nbins <- rep(nbins,2) nas <- is.na(x) | is.na(y) if(na.rm) { x <- x[!nas] y <- y[!nas] } else stop("missinig values not permitted if na.rm=FALSE") if(same.scale) { x.cuts <- seq( from=min(x,y), to=max(x,y), length=nbins[1]+1) y.cuts <- seq( from=min(x,y), to=max(x,y), length=nbins[2]+1) } else { x.cuts <- seq( from=min(x), to=max(x), length=nbins[1]+1) y.cuts <- seq( from=min(y), to=max(y), length=nbins[2]+1) } index.x <- cut( x, x.cuts, include.lowest=TRUE) index.y <- cut( y, y.cuts, include.lowest=TRUE) ## tapply is faster than old for() loop, and allows ## use of any user-specified summary function m <- tapply(x,list(index.x,index.y),FUN) ## If we're using length, set empty cells to 0 instead of NA if(identical(FUN,base::length)) m[is.na(m)] <- 0 if(missing(xlab)) xlab <- deparse(substitute(xlab)) if(missing(ylab)) ylab <- deparse(substitute(ylab)) if(show) image( x.cuts, y.cuts, m, col=col, xlab=xlab, ylab=ylab, ...) midpoints <- function(x) (x[-1]+x[-length(x)])/2 retval <- list() retval$counts <- m retval$x.breaks = x.cuts retval$y.breaks = y.cuts retval$x = midpoints(x.cuts) retval$y = midpoints(y.cuts) retval$nobs = length(x) retval$call <- match.call() class(retval) <- "hist2d" retval } gplots/R/plot.lowess.R0000644000175100001440000000123412676546007014432 0ustar hornikusersplotLowess <- function (formula, data=parent.frame(), ..., subset=parent.frame(), col.lowess="red", lty.lowess=2 ) { m <- match.call(expand.dots=TRUE) m[[1]] <- as.name("plot") eframe <- parent.frame() eval(m, eframe) m[[1]] <- as.name("lowess") lw <- eval(m, eframe) lines(lw, col=col.lowess, lty=lty.lowess) grid() invisible(lw) } plot.lowess <- function(x, y, ..., col.lowess="red", lty.lowess=2) { m <- x$call m[[1]] <- quote(plot) m <- as.call(append(as.list(m), list(...))) eval(m, envir = parent.frame()) lines(x$x, x$y, col=col.lowess, lty=lty.lowess) grid() invisible(x) } gplots/R/rich.colors.R0000644000175100001440000000270012471456250014356 0ustar hornikusersrich.colors <- function(n, palette="temperature", alpha=1, rgb=FALSE, plot=FALSE) { if(n <= 0) return(character(0)) palette <- match.arg(palette, c("temperature","blues")) x <- seq(0, 1, length=n) if(palette == "temperature") { r <- 1 / (1+exp(20-35*x)) g <- pmin(pmax(0,-0.8+6*x-5*x^2), 1) b <- dnorm(x,0.25,0.15) / max(dnorm(x,0.25,0.15)) } else { r <- 0.6*x + 0.4*x^2 g <- 1.5*x - 0.5*x^2 b <- 0.36 + 2.4*x - 2.0*x^2 b[x>0.4] <- 1 } rgb.m <- matrix(c(r,g,b), ncol=3, dimnames=list(NULL,c("red","green","blue"))) col <- mapply(rgb, r, g, b, alpha) if(rgb) attr(col, "rgb") <- cbind(rgb.m, alpha) if(plot) { opar <- par("fig", "plt") par(fig=c(0,1,0,0.7), plt=c(0.15,0.9,0.2,0.95)) plot(NA, xlim=c(-0.01,1.01), ylim=c(-0.01,1.01), xlab="Spectrum", ylab="", xaxs="i", yaxs="i", axes=FALSE) title(ylab="Value", mgp=c(3.5,0,0)) matlines(x, rgb.m, col=colnames(rgb.m), lty=1, lwd=3) matpoints(x, rgb.m, col=colnames(rgb.m), pch=16) axis(1, at=0:1) axis(2, at=0:1, las=1) par(fig=c(0,1,0.75,0.9), plt=c(0.08,0.97,0,1), new=TRUE) midpoints <- barplot(rep(1,n), col=col, border=FALSE, space=FALSE, axes=FALSE) axis(1, at=midpoints, labels=1:n, lty=0, cex.axis=0.6) par(opar) } return(col) } gplots/vignettes/0000755000175100001440000000000012677006672013625 5ustar hornikusersgplots/vignettes/venn.Rnw0000644000175100001440000000465212471456251015264 0ustar hornikusers\documentclass[a4paper]{article} %\VignetteIndexEntry{Venn Diagrams with gplots} \title{Venn Diagrams with \texttt{gplots}} \author{Steffen M{\"{o}}ller} \begin{document} \maketitle Venn diagrams\footnote{http://en.wikipedia.org/wiki/Venn\_diagram} allow for a quick overview on the number of elements that multiple sets share. And when those elements are representing traits of real objects, like observations in biomedical sciences/marketing/..., then this may direct researchers to further investigations/decisions. The {\tt gplots} package provides Venn diagrams for up to five sets. The R code to produce the diagrams is not complicated. The plot function behaves alwas the same, depending only on the number of overlapping circles to draw. Its input is a table that is produced by another function. The function {\tt venn()} calls one after the other and is the only one to be seen by the user. The values shown are returned invisibly. The {\tt venn()} function accepts either a list of sets as an argument, or it takes a binary matrix, one column per set, indicating for every element, one per row, the membership with every set. The common form with overlapping circles only works with up to three sets, as seen here: \begin{center} <>= library(gplots) venn( list(A=1:5,B=4:6,C=c(4,8:10)) ) @ \end{center} The names of columns or the list elements are the set names. To squeeze extra circles in, those circles need to become ellipses. This works for four sets \begin{center} <>= v.table<-venn( list(A=1:5,B=4:6,C=c(4,8:10),D=c(4:12)) ) print(v.table) @ \end{center} and maybe even more impressively also for five. \begin{center} <>= venn( list(A=1:5,B=4:6,C=c(4,8:10),D=c(4:12),E=c(2,4,6:9)) ) @ \end{center} The man page of {\it venn()} lists options to change the appearance of the plots, e.g., the names of the sets may be omitted and sizes changed. However, there is ample of opportunity to extend the functionality of this package. To mind come \begin{itemize} \item more dimensions (next) \item colors \item variation of size of circles with the number of members the set has \item density plot rather than numbers, identification of individual entries \end{itemize} The prime personal interest is more in the increase of dimensions. Please send patches for features you are most interested in. \end{document} gplots/MD50000644000175100001440000000771112677021462012125 0ustar hornikusers3c13bc895d5f867a4cc4568cd6094737 *ChangeLog 2f17fd85bdf4f36352f459ba6bff8fd3 *DESCRIPTION 5a76f93000a70bf0133e2d9378fd13a9 *NAMESPACE be4f21a7b13b75d3d3bae7d80eaa5bda *NEWS f30de3e3672ace857495bd9e83ad6783 *R/angleAxis.R 4040a0e9adf5cc4b201e9d35ab57154f *R/balloonplot.R e7563bfb16bf84fd65deb26b4392a5b7 *R/bandplot.R 0a8af37ac076fafb2d055495ea1359b0 *R/barplot2.R 094d92ec0e847019b5b3f4daf7dc7a13 *R/baseOf.R 580427c93275057b134bec3523ee80a2 *R/boxplot2.R a6370e76fc39377d1da08507b03e219f *R/ci2d.R 6d3d19d92abdf9638c5b5313cde8eacc *R/col2hex.R 36b2f3fe28745943577ad95f07142cab *R/colorpanel.R 445e1a5661db863a8d8260fb0bdbc123 *R/heatmap.2.R 69b838cf6230b0394a4ef3565a8c8d75 *R/hist2d.R 12690b374f6b35445d8a087421e8409d *R/layout_set.R cd504b2b384f0c142db36e5c20407d6d *R/lmplot2.R f4f58ee7d4836d6bf8f8500167bac3e6 *R/lowess.R a36e8910568c8476351e5dd5c1ce56fa *R/ooplot.R 3ee488d1e8fdde249a097de645e8c557 *R/overplot.R feb2286e91ead55c28817b131de146cc *R/plot.lowess.R 2316c0b78dc75db34629167387ea9539 *R/plot.venn.R 27028cb7a1bfc11165846c5e01968f74 *R/plotCI.R 3beae4ba97d0db69214e750a5affc5d3 *R/plotNode.R d1633902e4c3a75f8a24ef9dab1d82e9 *R/plotmeans.R 3b72bccb6f4d15624f8aea8f41353d43 *R/print.ci2d.R bc77c69c15391aef883b3e902d9df36e *R/print.hist2d.R 5d67f9fd015317c36be94d1570c23eb5 *R/qqnorm.aov.R f583369cc05bb20cca9a8d19effde4ef *R/replaceTabs.R 33bc311749bfbb7748909de1bfd2b6fd *R/residplot.R 9a4ac1bce19cf513efc3332a97d6ccd3 *R/rich.colors.R e24b2bb9b1db91aa0a2ba374fbcd7c6b *R/sinkplot.R 27613e8d8ee05ab39f35fdcefe9d8984 *R/smartlegend.R 3996c273f3d9d6750b76a53955b57a8a *R/space.R dde8f47321c837268c65a37cc374482f *R/textplot.R 6cc6424e19833d5b39e51c51aee7f5e3 *R/venn.R 1ba0dd8cf2a2aa2f56c4cc292b542a13 *R/vennMembers.R 9dc3e18aa37028e64ad53b8692a0f789 *R/wapply.R e28142fd2631d8aba7e5b1ec828908f6 *TODO 0b73bb1c4dd56da0e5c2a96b9c265236 *build/vignette.rds 8e85b44acb8b180ab2234c85ed73b157 *data/rtPCR.rda 3c13bc895d5f867a4cc4568cd6094737 *inst/ChangeLog be4f21a7b13b75d3d3bae7d80eaa5bda *inst/NEWS e28142fd2631d8aba7e5b1ec828908f6 *inst/TODO 2c9123e15bef4d1c31aef40043cc731a *inst/doc/BalloonPlot.pdf db3835b477154387393e0896b865599b *inst/doc/venn.R 6b10e21c8e9d8b500514865ba83990f0 *inst/doc/venn.Rnw ddbe4e695b061dc8f4da0390ea1e5b24 *inst/doc/venn.pdf ac9a06e0352957b04a5ad4d460ba5049 *man/angleAxis.Rd c1164e245c77c5441bd836158188144d *man/balloonplot.Rd 76fcaaee5e7dfa17c31c406f2c16dda2 *man/bandplot.Rd 9d3fdaf3cfff865c2db62bc07d51066c *man/barplot2.Rd a04e345d06c3c530f184bb018ee82c1c *man/boxplot2.Rd 0e54d0072758c37570f314cfec3a9254 *man/ci2d.Rd ab9babb4cca73672c7eae3e46325db28 *man/col2hex.Rd 1e6e7f6434636be7b28f98867b602bd0 *man/colorpanel.Rd d523fe2877418252bc262d9ad77fa3c0 *man/gplots-defunct.Rd 65b7aea6a192059189b7bb3c9afbe95d *man/gplots-deprecated.Rd e24221a6b23f4818519249964931bc42 *man/heatmap.2.Rd 99fd3b402c4c1d17839ff49626cd3ed3 *man/hist2d.Rd 95b3bf1124b3b5694f91195708b9abdd *man/lmplot2.Rd 97b96792191f87858bf8b4792172c836 *man/lowess.Rd 358b6072d9b08d11e2d4ec40478723b7 *man/ooplot.Rd f46f562c6daf8992b39a9201f6095417 *man/overplot.Rd f6692d0456ee55bc29adec44c165b197 *man/plotCI.Rd 98a7f358dfe0f647d2731466ed0367f6 *man/plotmeans.Rd 5a0523318ce97c93d7ee729cd6b95c22 *man/qqnorm.aov.Rd 8be9406a3844978e05e5832921e52279 *man/residplot.Rd 00dc4c29f2c0eed9d3557ff0c9ab6a9f *man/rich.colors.Rd 3e0736e6f89e7466ccbeb412135b01b8 *man/rtPCR.Rd 7ea76e2257a7fa7fe96d3ce40e182c5d *man/sinkplot.Rd 752a53002d3674f2f15ecc8a87f0bfd1 *man/space.Rd 916acb7b9bdff298be18c583aaad400c *man/textplot.Rd b7255ea739962eb4895183c5d318fdce *man/venn.Rd 5bdab99eb81d4c50fd63a9e5f2ab71f1 *man/wapply.Rd 0742f6f621cb8fcabd249c79499e8ab0 *tests/dat.csv 056bcdd1925f1dcd57deb2491f4115ec *tests/heatmap2Test.R bce6c437920e66e011594f96c6b546d4 *tests/heatmap2Test.Rout.save d2dbbb722254f78d9038ac8e7f1fbf8e *tests/heatmap_to_heatmap.2_test.R fd229af09f15c5f5e920b8a9a21ff0f3 *tests/plotmeans_nobars.R 9b06dee9524b688f4795b0fe6c278d65 *tests/test_plottingDeepDendrogram.R 6b10e21c8e9d8b500514865ba83990f0 *vignettes/venn.Rnw gplots/build/0000755000175100001440000000000012677006672012714 5ustar hornikusersgplots/build/vignette.rds0000644000175100001440000000032012677006672015246 0ustar hornikusersb```b`f@&0`b fd`aeyyzAyha@qb̒ bA -  *ּTt#]R RR@g "5lP5,n90{C2K7(1 棸(\^Px7@btr$$C8n[gplots/DESCRIPTION0000644000175100001440000000321712677021462013320 0ustar hornikusersPackage: gplots Title: Various R Programming Tools for Plotting Data Description: Various R programming tools for plotting data, including: - calculating and plotting locally smoothed summary function as ('bandplot', 'wapply'), - enhanced versions of standard plots ('barplot2', 'boxplot2', 'heatmap.2', 'smartlegend'), - manipulating colors ('col2hex', 'colorpanel', 'redgreen', 'greenred', 'bluered', 'redblue', 'rich.colors'), - calculating and plotting two-dimensional data summaries ('ci2d', 'hist2d'), - enhanced regression diagnostic plots ('lmplot2', 'residplot'), - formula-enabled interface to 'stats::lowess' function ('lowess'), - displaying textual data in plots ('textplot', 'sinkplot'), - plotting a matrix where each cell contains a dot whose size reflects the relative magnitude of the elements ('balloonplot'), - plotting "Venn" diagrams ('venn'), - displaying Open-Office style plots ('ooplot'), - plotting multiple data on same region, with separate axes ('overplot'), - plotting means and confidence intervals ('plotCI', 'plotmeans'), - spacing points in an x-y plot so they don't overlap ('space'). Depends: R (>= 3.0) Imports: gtools, gdata, stats, caTools, KernSmooth Suggests: grid, MASS Version: 3.0.1 Date: 2016-03-30 Author: Gregory R. Warnes, Ben Bolker, Lodewijk Bonebakker, Robert Gentleman, Wolfgang Huber Andy Liaw, Thomas Lumley, Martin Maechler, Arni Magnusson, Steffen Moeller, Marc Schwartz, Bill Venables Maintainer: Gregory R. Warnes License: GPL-2 NeedsCompilation: no Packaged: 2016-03-30 17:32:42 UTC; gwarnes1 Repository: CRAN Date/Publication: 2016-03-30 21:04:18 gplots/ChangeLog0000644000175100001440000013231112676760017013367 0ustar hornikusers2016-03-30 warnes * [r2122] R/plot.lowess.R: plotLowess() wasn't finding objects in the caller's environment. 2016-03-28 warnes * [r2121] DESCRIPTION, inst/NEWS: Update gplots version to 3.0.0. * [r2120] man/heatmap.2.Rd: The 'layout' element of the list returned from heatmap.2 is a named list, not a named vector. * [r2119] man/gplots-deprecated.Rd: Used wrong comment character. * [r2118] man/gplots-deprecated.Rd: Comment out arguments section to avoid R CMD check warning. 2016-03-25 warnes * [r2112] man/heatmap.2.Rd: Update URL for RColorBrewer * [r2111] DESCRIPTION: Fix typos and quote uncommon words to make R CMD check happy * [r2110] DESCRIPTION, inst/ChangeLog, inst/NEWS: Update files for gplots 2.18.0 * [r2109] NAMESPACE: Add imports recommended by R CMD check on WinBuilder * [r2108] man/heatmap.2.Rd: Add trailing slash to make R CMD check's URL testing happy. * [r2107] tests/heatmap2Test.Rout.save: Update test output to match corrected messages * [r2106] R/plot.venn.R: Warning message didn't have spaces between words. Minor code reformatting. * [r2105] R/lowess.R: Remove obsolete function to add '...' to argument list for stats::lowess(). * [r2104] man/lowess.Rd, man/venn.Rd: Fix errors identified by R CMD check * [r2103] R/heatmap.2.R: Fix error when Rowv=FALSE or Colv=FALSE * [r2102] man/gplots-defunct.Rd, man/gplots-deprecated.Rd: Fix documenation issues identified by 'R CMD check' * [r2101] man/venn.Rd: Correct discrepencies in man page * [r2100] man/venn.Rd: Correct discrepencies in man page * [r2099] man/lowess.Rd: Correct differences between calls on man page and in code * [r2098] R/lmplot2.R: Fix name of replacement functon in defuct message generated by plot.lm2 * [r2097] man/lowess.Rd: Improve lowess() man page * [r2096] NAMESPACE: Add plotLowess() and plot.lowess() to the NAMESPACE * [r2095] R/plot.lowess.R: Ensure lowess plot methods (invisibly) return the lowess object. * [r2094] man/lowess.Rd: Update man page for lowess to reflect new lowess method for plot(). * [r2093] R/plot.lowess.R: Ensure extra arguments are properly passed to the plot call. * [r2092] R/heatmap.2.R: Corrected a bug causing "Error in plot.new() : figure margins too large" to occur when 'key=FALSE'. (Reported and patch provided by Sveinung Gundersen.) 2016-03-24 warnes * [r2091] R/lowess.R, R/plot.lowess.R: Rename plot.lowess to plotLowess to avoid confusions with plot() method for class 'lowess', create a plot() method for class 'lowess' and modify the lowess.default() and lowess.formula() to add the 'lowess' class to the returned object, along with a 'call' list element. * [r2090] R/venn.R, R/vennMembers.R, man/venn.Rd: The 'intersections' attribute returned from venn() has been improved to use set names instead of indicators, and is ordered from simplest to most complex set interactions. * [r2089] R/smartlegend.R, man/gplots-defunct.Rd, man/gplots-deprecated.Rd: The smartlegend() function has been made defunct and is no longer available. * [r2088] R/lmplot2.R: Indentation changes * [r2087] man/heatmap.2.Rd: Update heatmap.2() man page to reflect addition of to the returned object. * [r2086] R/lowess.R: Remove observations with missing values when lowess is called using the formula interface. * [r2085] R/heatmap.2.R: Add layout infromation to object returned from heatmap.2() (patch provided by Jenny Drnevich). * [r2084] DESCRIPTION: Correct spelling 2016-03-08 warnes * [r2083] R/plot.lowess.R: Add function to plot points and lowess using formula interface. * [r2082] R/lowess.R: Remove old code for S-Plus and modernize formula handling code. * [r2081] R/heatmap.2.R: Set srtCol default if missing and colCol is set 2016-02-26 warnes * [r2080] R/venn.R: venn() now support matrix arguments. * [r2079] R/angleAxis.R, man/angleAxis.Rd: New angleAxis() function to create axis labels with rotated text. * [r2078] R/heatmap.2.R: - heatmap.2() can now be used to plot subsets of a previous heatmap. - Remove stray 'browser()' debuggint statement from heatmap.2() code. - Decrease the granularity of the carpet in heatmap.2()'s color key to avoid visual artifacts. 2015-11-23 warnes * [r2070] R/heatmap.2.R: Remove debugging print() statement. 2015-07-22 warnes * [r2062] DESCRIPTION, R/heatmap.2.R, R/layout_set.R: Renamed 'test' directory to 'tests', commented out tests for lme4 which has a changed API 2015-06-02 warnes * [r2052] R/boxplot2.R: Defunct message for boxplot.n was recommending the wrong function 2015-05-02 warnes * [r2018] Rename 'trunk' to 'pkg' for compatibility with R-forge 2015-05-01 warnes * [r2014] Again... * [r2013] Update ChangeLog (again) * [r2012] Summary: Correct man page name * [r2011] Summary: Forgot to add \alias for smartlegend. * [r2010] Remove leftover alias * [r2009] Commit ChangeLog * [r2008] Update NEWS again. * [r2007] Mark boxplot.n and() plot.lm2() as defunct. * [r2006] Make ballonplot.n() and plot.lm2() 'defunct'. * [r2005] Update NEWS and ChangeLog again. * [r2004] Summary: Punctuation. * [r2003] Correct URLs in man pages. * [r2002] Correct URLs in man pages. * [r2001] Update NEWS again. * [r2000] Improve package description. * [r1999] Mark 'smartlegend' as deprecated * [r1998] Summary: Mark smartlegend() as deprecated. * [r1997] Summary: venn example used 'F' instead of 'FALSE'. * [r1996] Update DESCRIPTION, NEWS, and ChangeLog again for gplots 2.17.0. * [r1995] - heatmap.2: row traces could be plotted in the wrong order. * [r1994] - heatmap.2: column traces could be plotted in the wrong order. - heatmap.2: add support for plotting sub-clusters of the full row and column dendrograms 2015-04-23 warnes * [r1955] Update NEWS and ChangeLog * [r1954] In heatmap.2(), the color key now properly handles color breaks that are not equally spaced. (Issue reported by Tim Richter-Heitmann.) * [r1948] - plotCI() was not properly respecting the 'type=' argument. This has been corrected. * [r1947] - Remove stray browser() call from overplot() * [r1943] Explicitly specify argument to gplots:::reorder.factor to prevent error. * [r1942] - The returned object from venn() now includes a 'interesection' attribution containing a list of which items are in each set intersection. This can be turned off by settting 'intersection=FALSE'. * [r1941] Patch submitted by Ilia Kats: - easily extract and plot subclusters from a big heatmap using the same colorkey, by passing a dendgrogram of the subcluster together with the full data matrix and, optionally, the breaks of the full heatmap in order to obtain the same color scaling. This is useful if one wants to plot several subclusters as different panels in a paper, but maintain consistent color coding. - Improves the behavior of the color key axis labels, as they now honor par("cex") and par("cex.lab"). * [r1940] In heatmap.2() split calls to distfun() and hclustfun() into separate steps to make debugging easier 2015-04-22 warnes * [r1931] Update DESCRIPTION, ChangeLog, and NEWS for gplots 2.17.0 * [r1930] heatmap.2: add new 'colRow' and 'colCol' arguments to control the color of row and column text labels 2015-04-06 warnes * [r1916] Add ChangeLog files to repository 2015-01-02 warnes * [r1913] Update for gplots release 2.16.0. * [r1912] Change default group count lable back to 'n='. * [r1911] - plotmeans: Pass optional graphical arguments captured in '...' axis function used to draw the x axis. - plotmeans: Add an new argument 'text.n.label' to specify the text used for labelingthe number of elements in a group. * [r1910] - Remove S-Plus-specific code - Simplify model frame code 2014-12-03 warnes * [r1909] Update stored test output to account for new startup message from KernSmooth package * [r1908] Fix package title capitalization. 2014-12-02 warnes * [r1907] Add descrioption of node stack overflow issue and work-around. * [r1906] Move '...' argument to bandplot.formula to match man page. * [r1905] plot.dendrogram isn't exported by gplots, so it must be referenced using the ':::' notation. * [r1904] Man page fixes. * [r1903] Add exports of new bandplot methods to NAMESPACE file. * [r1902] Code cleanup. * [r1901] Simplify model.frame code for bandplot.formula. 2014-12-01 warnes * [r1900] Update for 2.15.0 * [r1899] Convert bandplot to S3-method dispatch and add method for class formula. * [r1898] Improve whitespace 2014-09-17 warnes * [r1895] Minor reformatting. * [r1894] Explicitly reset namespace for dendrogram functions copied from stats. * [r1893] Update DESCRIPTION and NEWS for gplots 2.14.2 * [r1892] To work around recursion limit issues triggered by deeply nested dendrograms, (1) create a local *intepreted* copy of stats:::plotNode(), (2) detect recursion limit error message within heatmap.2() and generate a more user-friendly message. * [r1891] Add test case for exceeding recursion limits when plotting deeply nested dendrograms * [r1890] heatmap.2 was not properly handling integer vectors for Rowv and Colv. * [r1889] key.title=NA was not being honored when density.info=NA. 2014-09-16 warnes * [r1888] Add plotNode code to allow modificaiton of algorithm from recursive to iterative for the purpose of avoiding node stack overflow. * [r1887] - Correct statement of default color for 'notecol' argumemt to 'heatmap.2'. - Modify default arguments to 'symbreaks' and 'symkey' to make the logic more evident by replacing min() with any(). (The previous code executed properly, but relied on implicit coercion of logicals to numeric, obscuring the intent.) 2014-06-30 warnes * [r1823] Fix typo in dendrogram size checking code. 2014-06-19 warnes * [r1822] Fix typo 'ColInd' --> 'colInd'. * [r1821] Update for gplots 2.14.0 2014-06-17 warnes * [r1820] - Document new 'key.title', 'key.xlab', 'key.ylab', 'key.xtickfun', 'key.ytickfun', 'key.par' arguments to heatmap.2 (belated commit). - Document new 'reorderfun' argument to heatmap.2. * [r1819] Allow user to specify function used to reorder based on the dendogram via a new 'reorderfun' argument. Suggested by Yuanhua Liu. * [r1818] Fix typo in heatmap.2() reported by Yuanhua Liu. 2014-06-05 warnes * [r1817] Check size of Rowv and Colv dendogram objects to ensure they matches data. 2014-04-17 warnes * [r1812] Add see also to r2d2::freq2d. * [r1811] Add reference to r2d2::conf2d. 2014-04-09 warnes * [r1802] Add padj=0.5 to better align margin labels. 2014-04-05 warnes * [r1781] Update NEWS * [r1780] Add 'extrafun' argument to heatmap.2 to allow the user to perform additional customization by providing a function to be called before heatmap.2 exits. 2014-04-04 warnes * [r1779] Update for gplots 2.13.0 * [r1778] Fix handling of row trace (hline). Bug report and patch provided by Ilia Kats. 2013-10-21 warnes * [r1744] Handle 'ask' argument in lmplot2 function proper, rather than in (depreciated) plot.lm2 wrapper. * [r1743] Correct release number * [r1742] Handle 'ask' argument in lmplot2 function proper, rather than in (depreciated) plot.lm2 wrapper. * [r1741] Fix typo 2013-10-15 warnes * [r1740] Add boxplot2 and lmplot2 to NAMESPACE * [r1739] Update for gplots release 2.12.1 * [r1738] Rename boxplot.n to boxplt2 and plot.lm2 to lmplot2 * [r1737] Make lmplot2 manual page from plot.lm.2 manual page. * [r1736] Make boxplot2 manual page from boxplot.n manual page. * [r1735] Create deprecated man page from boxplot.n man page 2013-10-12 warnes * [r1734] Update NEWS with latest changes * [r1733] Mark one example dontrun to avoid --as-cran warning. 2013-10-11 warnes * [r1732] Allow standard S3 method handling to locate the correct function. * [r1731] Fix error when a subgroup contains no finite values * [r1730] Update test output * [r1729] Move several packages from Depends to Imports, Suggests * [r1728] Use gdata::nobs in example * [r1727] caTools and KernSmooth now have namespaces, so import from them. * [r1726] Update files for gplots 2.12.0 * [r1725] Update files for gplots 2.12.0 * [r1724] Add parameters to control row and column label positioning, rotation, justification, and offset. * [r1723] Fix bug in getVennCounts.data.frame when number of TRUE cases in each variable are equal. 2013-06-28 warnes * [r1680] Update PDF file, including new email addresses 2013-06-27 warnes * [r1679] Update for gplots 2.11.3 * [r1678] Update for release 2.11.3 * [r1677] Update with tests for only 1 row/column separator * [r1676] Fix typo * [r1675] Add test for one row/column separator * [r1674] Add more in-line comments * [r1673] Modify sinkplot to use a local environement to store its information instead of the global environment. 2013-03-24 warnes * [r1647] Update news for release 2.11.2 * [r1646] Add ci.width argument to barplot2() to allow varying the length of the 't' at the end of confidence interval bars. * [r1642] Update for release 2.11.2 * [r1641] Update manual page for lowess.default() to match changed argument list for lowess() in R 3.0.0 2012-12-14 warnes * [r1631] Fix typo: warn() instead of warning(). * [r1630] Fix syntax of VignetteIndexEntry in venn.Rnw. * [r1629] Add generated vignette pdf. * [r1628] Add required VignetteIndexEntry metadata to venn vignette code. * [r1627] Update DESCRIPTION and NEWS for release 2.11.1. * [r1626] Improve venn() to work with PDF and Sweave/pdflatex. Provide a vignette for venn(). * [r1625] Fix error in processing the colsep argument to heatmap.2. * [r1624] Clarify that plotmeans is intended for a *continuous* outcome based on a *factor* grouping level. * [r1623] Replace corrupted BalloonPlot.pdf file and remove svn properties that were causing it to be corrupted. 2012-06-08 warnes * [r1558] Update NEWS for 2.11.0 release. * [r1557] Fix R CMD check warnings. * [r1556] Move incorrectly placed closing brace. 2012-06-07 warnes * [r1555] Object returned by hist2d() has been changed: - $x and $y now contain the n midpoints of the bins in each direction - $x.breaks, $y.breaks now contain the n+1 limits of the bins in each direction The function print.hist2d() has been updated appropriately. * [r1554] Correct error in handling binning: (N+1)x(N+1) bins were being created instead of NxN bins, and the highest row/column in each direction was being omitted from the results and plot. * [r1553] Add default value for lwd argument to plotmeans() 2012-05-31 warnes * [r1533] Properly mark up S3 method. 2011-12-09 warnes * [r1519] Add 'lwd' (linewidth) to arguments handled by plotmeans. 2011-09-02 warnes * [r1505] Update NEWS for release 2.10.1. * [r1504] Increment version counter. * [r1503] Add necessary alias statment to man files for for 'hist2d' and 'ci2d' print methods. * [r1502] Fix naming error * [r1501] Provide print() methods for 'hist2d' and 'ci2d' objects. * [r1498] Correct dependence on R >= 2.10 2011-09-01 warnes * [r1491] - Correct issues in ci2d() man page. * [r1490] - Comment out import from KernSmooth in NAMESPACES, since KernSmooth doesn't provide a namespace. - Update a test output. * [r1489] - Update NEWS file and correct version number * [r1488] - Depend on KernSmooth package. Increment version number. * [r1487] - Depend on KernSmooth package and import 'bkdeD2' and 'dpik'. * [r1486] Improvements to ci2d(): - Add option to utilize KernDensity::bkde2D to estimate the 2-d density (now the default). - Add option to display points for original data on generated plots - Name elements of returned contour list according to the significance level to make it easier to select desired contours. - Improve handling of x and y labels * [r1485] Remove log tag and comments from top of the file. 2011-08-26 warnes * [r1478] Update NEWS for 2.10.0 release * [r1477] Add dependency on R>= 2.10 to handle compressed Rda data file. * [r1476] Compress rtPCR example data set to make distributed package smaller. * [r1475] Remove '1.0' confidence line from ci2d(..,show="contour"). 2011-08-25 warnes * [r1474] - Add 'ci2d()' to compute 2-dimensional emipirical confidence interval. - Fix parse error in help page for 'rich.colors()'. 2011-08-16 warnes * [r1473] Update DESCRIPTION file for 2.8.1. * [r1472] Add 'alpha' argument to rich.colors() to control transparency. * [r1471] Accellerate hist2d by replacing for() loop with tapply(), and allow user to specify summary function applied, per suggestion by Peter Hagedorn (PHA -at- santaris -dot- com). 2011-05-02 arnima * [r1470] Added argument 'alpha' and removed argument 'rgb' in rich.colors() 2010-12-13 warnes * [r1463] Correct error that arises when data includes NA values, identified by Melissa Key 2010-06-11 warnes * [r1446] Fix errors detected by R CMD check * [r1445] Fix errors detected by R CMD check * [r1444] Use 'TRUE' instead of 'T' for true in venn man page * [r1443] Update for gplots 2.8.0 * [r1442] Moved baseOf() into a separate file * [r1441] Update Greg's email address * [r1440] - venn() now returns an object of class venn() and a plot method for this class is provided. - Manual page for venn has been improved, based on contributions by Steffen Moeller 2010-02-17 warnes * [r1420] Improve performance of hist2d thanks to suggestion by Joerg van den Hoff. 2010-01-22 arnima * [r1372] Renamed files rich.color.* to rich.colors.* and renamed rich.colors args 2009-11-16 arnima * [r1367] Minor reformatting only. 2009-11-12 warnes * [r1365] Correct bug reported by Alan Yong: plotmeans() crashed when 'bars=FALSE'. 2009-10-22 warnes * [r1364] Fixed typo in bug fix. * [r1363] Update NEWS and DESCRIPTION for gplots 2.7.3 * [r1362] Fix transposed display of data (but not labels) in heatmap.2 when symm=TRUE 2009-10-12 warnes * [r1361] Update version number to 2.7.2, 2.7.1 was already up but apparently DESCRIPTION wasn't commited with change. 2009-10-10 warnes * [r1360] Various minor changes to remove new R CMD CHECK warnings. * [r1359] Update DESCRIPTION and NEWS file for 2.7.1 * [r1358] Fix bug reported by Ken Lo: col2hex had blue and green components swapped. 2009-05-08 warnes * [r1324] Add test of using a dendrogram created by heatmap() with heatmap.2() * [r1323] heatmap.2: handle NA for RowV or ColV the same way as NULL * [r1322] Fix typo * [r1321] Update NEWS for release 2.7.0 * [r1320] We don't want the Changelog in svn, since it is autogenerated from svn logs! * [r1319] Update Greg's email address to 'greg@random-technologies-llc.com' * [r1318] plotCI now properly handles 'NULL' and 'NA' values for ui, li, uiw, and liw. * [r1317] heatmap.2: Add option to create breakpoints symmetric around 0, provide additional information in the return value * [r1316] Fix Rd syntax error 2009-04-22 warnes * [r1315] VADeaths data set has move to dataset package 2008-08-14 warnes * [r1302] balloonpot() was incorrectly displaying warning about z values below 0 when scale.method="relative". Fixed. 2008-08-07 warnes * [r1301] Update DESCRIPTION NAMESPACE and NEWS for 2.7.0 release 2008-06-16 warnes * [r1296] Add TODO list to gplots 2008-05-20 warnes * [r1274] Update man page to match recent changes to plot.lm2() * [r1273] More work on documentation for venn() * [r1272] Fix code/doc mismatch due to recent changes to bandplot() * [r1271] Add Venn Diagram plot submitted by Steffen Moeller 2008-05-07 warnes * [r1264] Improve performance of bandplot by calculating running standard deviation using caTools::runsd() instead of (ver slow) window() call. In addtion, the standard deviations are now only calculated once, rather than once for each band. * [r1263] Improve performance of plot.lm for large lm objects by using fitted() instead of predict() to get y-hat 2008-05-05 warnes * [r1262] Use caTools's runsd in bandplot for a dramatic speedup for large data * [r1261] Add import of gtools::reorder.factor for ballonplot man page * [r1260] balloonplot: Add option to scale balloons so [min,max]->[0,1] (relative) or so [0,max] <- [0,1] (absolute) 2008-04-07 warnes * [r1254] Fix typo in barplot2() man page * [r1253] Updates for gplots 2.6.0 * [r1252] Add ability to control location of individual heatmap.2 components 2008-03-27 warnes * [r1251] Fix bug in handling rowsep, per suggestion by Steven Paugh 2008-01-04 warnes * [r1238] Fix examples for overplot() 2008-01-02 warnes * [r1237] Update Marc's email address 2007-12-20 warnes * [r1235] Two letter clarification of help text for heatmap.2() * [r1234] Restore plot layout at end of ooplot() example 2007-11-06 warnes * [r1222] Remove extraneous closing brace in the hist2d documentation file 2007-11-05 warnes * [r1221] Fix typo in NEWS: col2hex() is the new function, not col2rgb() which is part of grDevices 2007-11-02 warnes * [r1219] Updates for gplots 2.5.0 * [r1218] Update saved test output due to changes in how R reports warnings * [r1217] Create soft links of gmodels/ChangeLog -> gmodels/inst/ChangeLog, and gmodels/NEWS -> gmodels/inst/NEWS for my convenience * [r1216] Move actual ChangeLog and NEWS files to gmodels/inst so they will be copied into the installed R package area * [r1215] Fix code/doc mismatches * [r1214] Update plot.lm2 to match changes made to bandplot 2007-11-01 warnes * [r1213] in textplot(), convert tab characters to spaces before processing to avoid problems with computing height and width of text including tabs when using pdf() * [r1212] Minor reformatting of overplot code and docs 2007-10-22 warnes * [r1196] Clarify GPL version 2007-08-14 warnes * [r1141] Correct error in balloonplot when z contains NA values. * [r1140] Augment balloonplot() with control of character size and color for text and label items * [r1139] Correct balloonplot.default to properly show specified x and y axis labels when explicitly provided 2007-03-09 ggorjan * [r1073] use of \method in Rd markup - issues a warning with _R_CHECK_RD_STYLE_=TRUE env. variable with R 2.5.0 2007-02-08 warnes * [r1052] Bump version number * [r1051] Update documentation for textplot() * [r1050] Add col2rgb() function to convert color names to rgb hex codes * [r1049] Add paramaeters 'col.data', 'col.rows', and 'col.columns' to textplot.matrix to allow specification of the color of the matrix data, rows, and columns. * [r1048] Add parameters to control line width and line type. 2006-11-14 ggorjan * [r1012] Removed executable property 2006-11-14 warnes * [r1010] Update output file to match (trivial) changes in the test code. * [r1008] Update ChangeLog and NEWS files for release 2.3.2. * [r1007] Update version number * [r1006] Update version number and maintainer * [r1005] Correct problem with labeled correlation matrix example. Thanks to Jean Vidal for reporting the error.. 2006-08-02 warnes * [r977] Update my email address 2006-06-26 nj7w * [r967] Fixed a bug which displayed warnings when Rowv and Colv were specified as dendrograms 2006-03-10 warnes * [r937] Remove code that added a local path 2006-03-09 nj7w * [r935] Added the correct library path where gplots is installed locally and corresponding .save file * [r934] Updated the tests file * [r933] Removed the condition Colv != Rowv as it has already been taken care of * [r932] Deleted rtPCR.rda from the main directory * [r931] Added ChangeLog 2006-03-07 nj7w * [r919] Updated ChangeLog and NEWS * [r918] Added the tests and fixed corrupted files * [r917] Replaced the corrupted rtPCR.rda file in data directory * [r916] Removed the corrputed tests directory * [r915] Replaced the corrupted rtPCR.rda file in data directory 2006-03-03 nj7w * [r914] Updated the code and man page to make sure the Rowv and Colv values are properly handled 2006-03-02 warnes * [r908] Adjust row total placement to adjust for width of the totals * [r907] Row totals in ballonplot were in reverse order. Fixed. 2006-02-23 nj7w * [r899] Add ability to scale the color key using the new 'keysize' argument. * [r898] Add tests for heatmap.2 * [r897] Move heatmap and ballonplot paper source materials to their respective cvs modules * [r896] Moved balloonplot paper materials to BallonPlotPaper cvs module * [r891] Remove heatmap paper files and move them to the HeatmapPaper cvs module. * [r888] Added figures for heatmap2 paper * [r887] Added the .Rda files for the heatmap2 paper * [r886] Added the source - (tex file) of the heatmap paper * [r885] Added the code for the figures of heatmap paper 2006-02-21 nj7w * [r884] Minor updates to heatmap.2 - fixed Rowv, Colv and dendrogram behaviour. Now Rowv=NULL or FALSE both imply no dendrogram computation. 2006-01-12 warnes * [r844] more updates * [r843] Add Biometrica bibliography style file * [r842] A little more. * [r841] Updates to respond to referee. 2006-01-12 nj7w * [r840] Added references 2005-12-13 nj7w * [r811] Fixed Nitin's company name * [r809] Updated NEWS and removed ChangeLog 2005-12-12 nj7w * [r802] Fixed bug in plotmeans - based on Stefano Calza's suggestion 2005-12-07 nj7w * [r787] Updated version number * [r786] Added plot.lm * [r785] Changed the default grey colors to heat colors, if height is matrix * [r784] Changed the default greay colors to heat colors, if height is matrix 2005-12-06 nj7w * [r783] Fixed minor error in documentation of barplot2 2005-12-02 warnes * [r777] Remove .Alias calls, since .Alias is defunct. 2005-12-01 nj7w * [r776] Updated Greg's email address 2005-11-23 nj7w * [r764] Updated Figure 2 colors 2005-11-18 warnes * [r743] Latest version of the pdf files * [r742] Nitin works for the Cambrige Group, not Pfizer. * [r741] Minor text rewording. * [r740] More edits. * [r739] Recent changes to align row totals with the overall total broke how the marginal cumulative fractions were displayed. This patch fixes the problem. * [r737] - Update documentation for balloonplot to match the latest code. - Correct spelling of 'show.zeroes' to 'show.zeros' * [r736] More changes: colorpanel now allows only 2 colors to be specified if no 'middle' color is desired. 2005-11-17 warnes * [r735] Allow user to control removal of duplicate entries in balloonplot. * [r734] Extend colorpanel to handle just two-colors in addition to three. 2005-11-09 nj7w * [r733] Updated the pdf file * [r732] Updated the changes * [r731] Modified figure 4 * [r730] Updated code * [r729] Modified figure 3 * [r728] Modified figure 2 * [r727] Modified figure 1 2005-11-08 nj7w * [r726] Updated Greg's email 2005-11-07 nj7w * [r725] Minor modifications to fit the code properly on pdf 2005-11-07 warnes * [r724] Add R code that generates plots * [r723] Add figures to CVS * [r722] Text changes 2005-11-04 warnes * [r721] Fix some alignment issues. * [r720] Remove Table.pdf since it is no longer needed * [r719] Nitin's Changes * [r718] Add figure plots * [r717] Fix paths 2005-10-20 nj7w * [r705] added the eps version of figures * [r704] Updated BallonPlot.pdf * [r703] Removed Old Figure * [r702] Added the new figure - for total popluation - Balloonplot * [r701] Modified the BallonPlot article * [r700] Added references 2005-10-19 arnima * [r697] The last example now displays the correct heat.colors. Default 'palette' argument is now a single string, not a vector. * [r696] Default 'palette' argument is now a single string, not a vector. 2005-10-14 warnes * [r694] Formatting fixes: - Handle multiple row or column category variables - Separate rows/columns of category labels by lines - Fix handling of 'cumsum' plots on row/column labels - Improve display of row/column sums 2005-10-13 warnes * [r693] Add example using Titanic data that exercises the multi-factor display. 2005-10-11 warnes * [r692] Initial changes to allow multiple x and y factor variables. Yet to be done: 1) remove extra 'boxes'. 2) omit duplicated values 2005-10-04 warnes * [r691] more minor fixes * [r690] fix spacing * [r689] Inlcude Rnews.sty * [r688] Some textual edits. 2005-10-03 nj7w * [r687] Added figures for the R-News Article 2005-09-29 nj7w * [r680] Updated the documentation - added the name of the person who asked the question * [r679] Added R-news article 2005-09-12 nj7w * [r671] Updated Greg's email * [r670] Updated version of balloonplot - by Romain Francois 2005-09-09 nj7w * [r669] Updated the version and ChangeLog * [r668] Changes in ballon plot based on Romain Francois (francoisromain@free.fr) suggestions 2005-09-06 nj7w * [r666] Updated package dependencies * [r665] Added NEWS 2005-09-02 nj7w * [r655] Added ChangeLog 2005-08-31 nj7w * [r644] Added DESCRIPTION file * [r643] removed DESCRIPTION.in 2005-06-09 nj7w * [r625] Updating the version number, and various help files to synchronize splitting of gregmisc bundle in 4 individual components. * [r624] Changes based on Marc Schwartz's suggestions to handel 0's and NA's appropriately. 2005-05-13 nj7w * [r621] 1) Using dQuote.ascii function in read.xls as the new version of dQuote doesn't work proprly with UTF-8 locale. 2) Modified CrossTable.Rd usage in gmodels 3) Modified heatmap.2 usage in gplots. 2005-04-04 warnes * [r603] Explicitly reference package containing lowess.formula in panel.overplot(). This should fix the error reported by Troels Ring . 2005-02-26 nj7w * [r565] *** empty log message *** 2005-02-25 warnes * [r563] Integrate changes submitted by Arni Magnusson * [r559] Add dependency imports from 'stats' package. 2005-02-22 warnes * [r555] Fix problem in passing graphical parameters (xlim,etc).@ 2005-02-08 warnes * [r541] Improve package title. * [r540] Ignore missing values when computing symmetric range. 2005-02-02 warnes * [r530] Add more extensive example. 2005-01-14 warnes * [r516] Code can be simplified because R now supports selecting a fixed width font. 2005-01-12 warnes * [r515] Add dependency on R 1.9.0+ to prevent poeple from installing on old versions of R which don't support namespaces. 2004-11-30 warnes * [r495] 1. Add new parameters for controlling color key: - If `symkey==TRUE', the color key will be made symmetric about 0. - The `densadj' parameter can be used to modify the smoother width (see the `adjust' parameter under `help(density)') for the density plotted in the key. 2. Fix handling of rowsep/colsep. 3. Vector of length 2 giving the width (colsep) or height (rowsep) the separator box drawn by colsep and rowsep as a function of the width (colsep) or height (rowsep) of a cell. 4. Appropriate changes to the corresponding help page, plus some minor formatting changes. 2004-11-03 warnes * [r474] Fix bugs in layout of cell notes. They were being plotted top down rather than bottom up. Further reordering of the x matrix didn't also reorder the notes. Both issues should now be resolved. 2004-09-27 warneg * [r461] Updated to pass R CMD check. 2004-09-03 warneg * [r453] Provide explicit package for call to nobs. * [r452] Fix typos. * [r446] initial bundle checkin 2004-09-02 warneg * [r442] Initial revision 2004-07-29 warnes * [r426] Integrate changes from the version of plotCI maintained by Martin Maechler. 2004-06-30 warnes * [r393] Remove commented-out code. * [r392] Fixed text size calculations 2004-06-28 warnes * [r391] - Default 2-d color set to grey as in (v2.0.0) r-devel - The default (v1.9.1) barplot method now handles vectors and 1-d arrays (e.g., obtained by table()) the same, and uses grey instead of heat color palettes in these cases. (Also fixes PR#6776.) - Updated to reflect the addition of 'offset' argument in base - Fix bug in stacked barplots, which would not be plotted properly 2004-06-24 warnes * [r385] Add ability to specify color of NA cells. 2004-05-27 warnes * [r349] Fix spelling error. 2004-05-26 warnes * [r347] One more fix to get it right. * [r346] Use triple-colon operator ':::' to access plot.formula from the graphics package. * [r344] Replace 'F' by 'FALSE' to pass R CMD check. 2004-05-25 warnes * [r338] Work around bug in R 1.9.X due to plot.formula() not having the same arguments as plot(). * [r336] Add rich.colors() submitted by Arni Magnusson . * [r328] ?? 2004-05-24 warnes * [r324] Modified to use invalid() to check arguments instead of missing(). This fixes some build errors under R-1.9.0-Patched. 2004-04-22 warnes * [r319] Integrate changes from Lodewijk Bonebakker 2004-04-13 warnes * [r318] Add ability to space points along 'y' direction. 2004-04-02 warnes * [r313] Fixed smartlegend() positioning when x and/or y axis are log-scale. 2004-03-30 warnes * [r311] - Fix bug in textplot() reported by Wright, Kevin . 2004-03-26 warnes * [r305] Update to match changes in textplot() code. * [r304] Remove Windows EOL characters. * [r302] - Remove some commented-out code. - Remove cvs log tag. * [r300] Misc changes. 2004-02-17 warnes * [r290] Minor fix to ooplot documentation. * [r289] Integrate ooplot updates provided by Lodewijk Bonebakker 2004-02-02 warnes * [r287] - Add colorpanel function, which generates a smoothly varying band of colors over a three color range (lo, mid, high). 2004-01-21 warnes * [r283] - Correct arguments to halign to match code. * [r281] Track R 1.9.0's move of 'lowess' from the base package to the (new) stats package. * [r279] - Fix sinkplot() example by replacing 'T' with 'TRUE'. * [r278] - Add some more details to the ooplot() documentation. The documentation is *not* complete. * [r277] - Mark sprint() as depreciated. - Replace references to sprint with capture.output() - Use match.arg for halign and valign arguments to textplot.default. - Fix textplot.character so that a vector of characters is properly displayed. Previouslt, character vectors were plotted on top of each other. 2004-01-19 warnes * [r276] New function sinkplot(), as requested on R-devel by Kevin Wright in https://www.stat.math.ethz.ch/pipermail/r-devel/2004-January/028483.html. 2004-01-15 warnes * [r274] Add initial code and docs for ooplot() function submitted by Lodewijk Bonebakker . 2003-12-03 warnes * [r253] - match function argument defaults with 'usage' * [r252] - Fix buglets in heatmap function - Make a slight enhancement to the example code. 2003-12-02 warnes * [r251] Integrated some suggestions from Sean Davis . * [r250] - Make final example use 16 colors instead of 8. This looks nicer. * [r248] - Remove '%' character from example code to avoid errors. * [r247] - Add '...' parameter to call to text to allow user to control size/color/etc. 2003-12-01 warnes * [r246] - updated to match changes to barplot() in base. * [r245] - Renamed rtPCR.Rda to rtPCR.rda so that R will properly load the file when data(rtPCR) is executed. * [r243] - Follow patches applied to barplot() in base. 2003-11-24 warnes * [r242] Fix unbalanced braces. * [r240] Fix errors reported by R CMD check. 2003-11-21 warnes * [r239] Added missing closing brace. * [r238] Initial addition of these files. Used in examples of overplot(). * [r236] Applied my enhancements to the heatmap() code from R 1.8.0, and added documentation of these changes. * [r235] - Discovered that axis(N) does the right thing without needing to be given location for tick marks. This allowed simplification of the code. - Minor other changes for distribution - Addition of overplot.Rd documentation. * [r231] - Integrated my extensions into the R 1.8.0 version of heatmap. - Add Rd documentation. 2003-11-19 warnes * [r228] Remove extranious NULL that confused R CMD check. 2003-11-18 warnes * [r226] - Tiny fix to remove R CMD check error. * [r225] - Added missing closing brace. * [r224] - Convert from MS-Dos to Unix line endings. - Reformat to 80 columns. 2003-11-10 warnes * [r220] - Add files contributed by Arni Magnusson . As well as some of my own. 2003-08-19 warnes * [r219] - Copy of local changes. * [r218] - Checkin before re-integrating local changes. 2003-06-19 warnes * [r201] - Added enhanced heatmap function. 2003-06-09 warnes * [r200] - Add help text for smartlegend. * [r199] - New function smartlegend(). 2003-04-22 warnes * [r191] - Fixeed warning messing caused when 'connect' is a vector. * [r187] Update from Marc Schwartz, modified by Gregory Warnes: - Modified dim() checks for 'ci.l' and 'ci.u' against 'height' to remove R v1.7.0 if() based error msgs for vector conditions. 2003-04-04 warnes * [r182] - Change occurences of 'T' to 'TRUE' * [r179] - Updated to match changes in textplot function: - Added textplot.character - Renamed arguments "col.margin" and "row.margin" to "cmar", and "rmar" so that specifying "col='red'" is possible. - Fixed R CMD check errors - Improve comments in example - Add textplot.matrix example * [r178] - Added textplot.character to handle character strings. - Moved test for vector and matrix arguments to textplot.default. - Renamed arguments "col.margin" and "row.margin" to "cmar", and "rmar" so that specifying "col='red'" is possible. 2003-04-02 warnes * [r175] - Added textplot function and friends, as well as documentation. 2003-03-08 warnes * [r171] - Forgot to update arglist in \usage section. * [r169] - Added parameters for rotation of and amount of space allocated for the row and column labels. 2003-03-07 warnes * [r168] - Minor changes to code to allow the package to be provided as an S-Plus chapter. * [r167] - Add 'NULL' as the last element of if statement that defines lowess.default so that when the file is sourced, S-Plus doesn't display the function definition. * [r166] - Specify where the defualt lowess function should be found. - Use getFunction in S-Plus instead of 'get' 2003-01-30 warnes * [r159] - Added argument 'add' to allow for the addition of a barplot to an existing graphic. Default is FALSE 2003-01-20 warnes * [r156] - Updated balloonplot help page. * [r155] - Updated wapply.R to allow specification of evaluation points when method is 'width' or 'range' using the 'pts' argument. - Updated wapply.Rd to add 'pts' argument - Fixed typos, spelling errors, gramatical errors and lack of clarity in wapply.Rd help text. 2003-01-03 warnes * [r154] - Initial checkin of balloonplot functions and documentation. * [r153] - Added reference to and comparison example of sunflowerplot. - Added code to put example plots on same plot window using par(mfrow=...). 2003-01-02 warnes * [r150] - Changed assignment statements that used "=" to "<-" to avoid syntax errors in older versions of the S language. * [r149] - Added wrapper code so that R-specific fiddling won't be executed under S-Plus. * [r147] - Renamed first parameter to match qqnorm generic. * [r146] Added additional help text from Kjeitl. 2002-12-31 warnes * [r145] Initial checkin of qqnorm.aov function and documentation submitted by Kjetil Halvorsen . 2002-11-04 warnes * [r143] Updates from Marc Schwartz: - Updated underlying code to be based upon the new barplot() in R v1.6.1 - This now uses the 'axis.lty' and 'border' arguments - In R v1.6.0, R Core introduced a new function called axTicks(). This is an R equivalent of the C code for CreateAtVector in plot.c. This now enables me to get the axis tick mark positions consistently when the 'height' related axis is either linear or log. Thus, I can now have consistent tick marks and can plot grid lines in either situation. If 'plot.grid = TRUE' and 'grid.inc' is specified, then I still use pretty() to determine the tick marks and lines. - This code now depends on R 1.6.0 or later. 2002-10-30 warnes * [r139] - Commented out plot.lm() code since recent changes in R have broken it. 2002-10-11 warnes * [r131] - Fixed log scale errors in legend() call 2002-10-01 warnes * [r130] - Added examples of using 'contour' and 'filled.contour' for display. 2002-09-24 warnes * [r121] - Changed digits=options("digits") which produces a list of length 1 to digits=getOption("digits") which returns a vector of length one. The former was causing an error when passed to round(). 2002-09-23 warnes * [r119] - Fixed syntax errors in barplot2.Rd and CrossTable.Rd - Fixed incorrect translation of 'F' (distribution) to 'FALSE' in glh.test.Rd * [r117] - Modified all files to include CVS Id and Log tags. * [r116] - Added CrossTable() and barplot2() code and docs contributed by Marc Schwartz. - Permit combinations() to be used when r>n provided repeat.allowed=TRUE - Bumped up version number 2002-08-01 warnes * [r114] - Corrected documentation mismatch for ci, ci.default. - Replaced all occurences of '_' for assignment with '<-'. - Replaced all occurences of 'T' or 'F' for 'TRUE' and 'FALSE' with the spelled out version. - Updaded version number and date. 2002-04-09 warneg * [r109] Checkin for version 0.5.3 2002-03-27 warneg * [r107] Added "..." argument to lowess.default. * [r106] - Added code to append "..." to the argument list of lowess.default. - Fixed a wrong default for f in lowess.formula. Was 3, but should have been 2/3. 2002-03-26 warneg * [r104] - Changed methods to include '...' to match the generic. - Updated for version 0.5.1 * [r100] Initial checkin. 2002-03-20 warneg * [r94] - Changes to add compatibility with S-Plus 2000 * [r93] - Changes to add compatibility with S-Plus 2000. * [r92] - Updated to work in S-Plus 2000 as well as R. 2002-03-05 warneg * [r88] - Replace "T" with "TRUE". Problems arrive when there is a variable named "T". 2002-02-20 warneg * [r81] Minor changes, typo and formatting fixes. * [r80] - Generalized to allow specification of the multiples of the standard deviation levels to be plotted (0=mean, 1=1 sd, ..). - Now (invisibly) returnes computed smooths. 2002-02-16 warneg * [r78] Added bandplot documentation. * [r77] - Fixed Bug: When method=="range", the absolute range of x was being used to compute the relative width instead of the (correct) relative range. * [r76] - Corrected problem removing missing values: The missing values of $x and $y were being removed indepdendently, leaving an uneven number of points in the result. 2002-02-04 warneg * [r74] - Add na.rm parameter and make the default TRUE. * [r73] Initial checkin. * [r72] - When err="x", 'col' was being used to plot bars, rather than 'barcol'. * [r71] - fixed typo, when err="x", lty was 'slty' causing an error. 2001-12-12 warneg * [r54] - Quoted underscore character in my email address. - Added correct keyword. * [r52] Added documentation for xaxt parameter. * [r51] Updated to explicitly list control arguments to lowess.formula. * [r50] Initial checkin. Code copied from R source package and extended. 2001-12-07 warneg * [r46] Fixed an problem where \code was incorrectly delimited by parens rather than curly brackets. * [r42] Initial checkin. * [r41] - Added cvs tags. * [r40] - Leave first point at center, rather than shifting by s/2 to the left. This looks better when there are more than 2 'spaced' points. 2001-12-05 warneg * [r33] - Added ability to use the t-distribution to compute confidence intervals. This is controlled using the 'use.t' parameter. * [r31] - Added documentation of use.t parameter. * [r30] - Clarified how the width of the window is computed when method="nobs". * [r29] - Added a better default for "width" when method="nobs". For this case, width=max(5, length(x)/10). - Allow omission of x values which result in missing y values via 'drop.na' parameter. 2001-10-26 warneg * [r28] Added correct handling of 'xaxt="n"'. 2001-10-16 warneg * [r27] Fixed unbalanced brace. * [r26] Added minbar and maxbar parameters. * [r25] Forgot to add minbar and maxbar to usage section. * [r24] Added description of minbar and maxbar. * [r23] - Added minbar and maxbar parameters - Added cvs id and log tags to header * [r22] Added cvs id and log tag to file header * [r21] Added minbar and maxbar parameters. * [r20] Added description of minsd parameter. * [r19] Added minsd parameter. 2001-09-18 warneg * [r18] Release 0.3.2 2001-09-01 warneg * [r16] Release 0.3.0 2001-08-31 warneg * [r15] Used wrong character in header (% instead of #). Fixed. * [r14] Used wrong comment character (% instead of #) in header. Fixed. 2001-08-25 warneg * [r10] Initial checkin. * [r9] Added CVS header. * [r8] Initial Checkin 2001-05-30 warneg * [r2] Initial revision gplots/man/0000755000175100001440000000000012677006672012370 5ustar hornikusersgplots/man/lmplot2.Rd0000644000175100001440000000471212521207034014233 0ustar hornikusers\name{lmplot2} \alias{lmplot2} \title{ Plots to assess the goodness of fit for the linear model objects } \description{ Plots to assess the goodness of fit for the linear model objects } \usage{ lmplot2( x, which = 1:5, caption = c("Residuals vs Fitted", "Normal Q-Q plot", "Scale-Location plot", "Cook's distance plot"), panel = panel.smooth, sub.caption = deparse(x$call), main = "", ask = interactive() && nb.fig < length(which) && .Device != "postscript", ..., id.n = 3, labels.id = names(residuals(x)), cex.id = 0.75, band=TRUE, rug=TRUE, width=1/10, max.n=5000 ) } \arguments{ \item{x}{lm object} \item{which}{Numerical values between 1 and 5, indicating which plots to be shown. The codes are: \describe{ \item{1}{Fitted vs residuals} \item{2}{Normal Q-Q} \item{3}{Scale-Location} \item{4}{Cook's distance} \item{5}{Residuals vs. predictor} } } \item{caption}{ Caption for each type of plot} \item{panel}{ function to draw on the existing plot} \item{sub.caption}{ SubCaption for the plots } \item{main}{Main title of the plot} \item{ask}{whether interactive graphics} \item{\dots}{ parameters passed to \code{lmplot2}. } \item{id.n}{ integer value, less than or equal to residuals of lm object } \item{labels.id}{Names of the residuals of the lm object} \item{cex.id}{Parameter to control the height of text stringsx} \item{band}{logical vector indicating whether bandplot should also be plotted } \item{rug}{logical vector indicating whether rug should be added to the existing plot } \item{width}{Fraction of the data to use for plot smooths} \item{max.n}{Maximum number of points to display in plots} } \note{ This function replaces \code{plot.lm2}, which has been deprecated to avoid potential problems with S3 method dispatching. } \author{Gregory R. Warnes \email{greg@warnes.net} and Nitin Jain \email{nitin.jain@pfizer.com}} \seealso{ \code{\link[stats]{plot.lm}} } \examples{ ctl <- rnorm(100, 4) trt <- rnorm(100, 4.5) group <- gl(2,100,200, labels=c("Ctl","Trt")) weight <- c(ctl, trt) wt.err <- rnorm(length(weight), mean=weight, sd=1/2) x <- lm(weight ~ group + wt.err) lmplot2(x) lmplot2(x, which=1, width=1/3) lmplot2(x, which=1:3, width=1/3) } \keyword{hplot} gplots/man/space.Rd0000644000175100001440000000630612471456253013753 0ustar hornikusers% $Id: space.Rd 1441 2010-06-11 03:11:54Z warnes $ % % $Log$ % Revision 1.9 2005/09/12 15:44:37 nj7w % Updated Greg's email % % Revision 1.8 2005/06/09 14:20:28 nj7w % Updating the version number, and various help files to synchronize splitting of gregmisc bundle in 4 individual components. % % Revision 1.1.1.1 2005/05/25 22:15:31 nj7w % Initial submission as an individual package % % Revision 1.7 2004/04/13 13:42:31 warnes % Add ability to space points along 'y' direction. % % Revision 1.6 2003/01/03 19:23:34 warnes % - Added reference to and comparison example of sunflowerplot. % - Added code to put example plots on same plot window using par(mfrow=...). % % Revision 1.5 2002/09/23 13:59:30 warnes % - Modified all files to include CVS Id and Log tags. % % \name{space} \alias{space} \title{Space points in an x-y plot so they don't overlap.} \description{ Space points in an x-y plot so they don't overlap. } \usage{ space(x, y, s=1/50, na.rm=TRUE, direction="x") } \arguments{ \item{x}{numeric vector of x coordonates.} \item{y}{numeric vector of x coordonates.} \item{s}{either a single numeric value or 2 element vector specifying the minimum distance between points in the x and y dimensions as a fraction of the x and y range. Defaults to 1/50.} \item{na.rm}{logical indicating whether pairs where one or both elements are missing should be removed. Defaults to TRUE.} \item{direction}{"x" or "y", indicating which direction points should be moved to accomplish spacine.} } \details{ In an x-y plot where at least one variable has discrete levels several points may be plotted at or very near the same coordonates. This makes it difficult to guage the number of points in a specific region. A common method of resolving this problem is to 'jitter' the points by adding random noise. This function takes a different approach to the same problem. When there are two or more points with the same (x,y) value (or within x+-s[1] and x+-s[2]), it spaces these out in the x direction so that the points are separated by at least distance s. Another method for dealing with overploting is available in the \code{\link{sunflowerplot}} function. } \value{ list with two components \item{x}{(modified) x location for each input point} \item{y}{y location of each input point} } \author{ Gregory R. Warnes \email{greg@warnes.net} } \seealso{ \code{\link{jitter}}, \code{\link{sunflowerplot}} } \examples{ x <- rep(1:5, 10) y <- round(rnorm(length(x),x)) prepar <- par("mfrow") par(mfrow=c(1,3)) # standard x-y plot: noverlapping points are hidden plot(x,y) title("Standard Plot") # 'spaced' plot: overlapping points are spread out and visible plot(space(x,y)) title("Plot with 'space'") # 'spaced' plot: overlapping points are spread out along y and visible plot(space(x,y, direction='y')) title("Plot with 'space', direction='y' ") # 'sunflower' plot, another approach, overlapping points are # indicated via petals sunflowerplot(x,y) title("Sunflower Plot") \testonly{ # check that missign values correctly handled x <- c(x,NA) y <- c(y,NA) plot(space(x,y)) } par(mfrow=prepar) } \keyword{ dplot } gplots/man/plotmeans.Rd0000644000175100001440000001177512471456253014670 0ustar hornikusers\name{plotmeans} \alias{plotmeans} \title{Plot Group Means and Confidence Intervals} \description{Plot group means and confidence intervals.} \usage{ plotmeans(formula, data=NULL, subset, na.action, bars=TRUE, p=0.95, minsd=0, minbar, maxbar, xlab=names(mf)[2], ylab=names(mf)[1], mean.labels=FALSE, ci.label=FALSE, n.label=TRUE, text.n.label="n=", digits=getOption("digits"), col="black", barwidth=1, barcol="blue", connect=TRUE, ccol= col, legends=names(means), xaxt, use.t=TRUE, lwd=par("lwd"), ...) } \arguments{ \item{formula}{symbolic expression specifying the outcome (continuous) and grouping variable (factor). See lm() for details.} \item{data}{optional data frame containing the variables in the model.} \item{subset}{an optional vector specifying a subset of observations to be used in the fitting process.} \item{na.action}{a function which indicates what should happen when the data contain `NA's. See lm() for details. } \item{bars}{a logical value indicating whether confidence interval bars should be plotted. Defaults to TRUE.} \item{p}{confidence level for error bars. Defaults to 0.95.} \item{minsd}{minumum permitted value for the standard deviation within each factor level. Any standard deviation estimates smaller than \code{minsd} will be replaced with \code{minsd}. Defaults to 0.} \item{minbar}{minumum allowed value for bar ends. If specified, values smaller than \code{minbar} will be replaced with \code{minbar}. } \item{maxbar}{maximum allowed value for bar ends. If specified, values larger than \code{maxbar} will be replaced with \code{maxbar}. } \item{xlab}{x-axis label.} \item{ylab}{y-axis label.} \item{mean.labels}{ either a logical value indicating whether the circles representing the group means should be replaced with text giving the actual mean values or a vector containing labels to use instead. Defaults to FALSE.} \item{ci.label}{ a logical value indicating whether text giving the actual interval end values should be placed at the end of each confidence interval bar. Defaults to FALSE.} \item{n.label}{ a logical value indicating whether text giving the number of observations in each group should should be added to the plot. } \item{text.n.label}{Prefix text for labeling observation counts. Defaults to "n=". } \item{digits}{ number of significant digits to use when displaying mean or confidince limit values.} \item{col}{ color of cicles marking group means. Default is "black".} \item{barwidth}{ linewidth of interval bars and end marks. Default is 1.} \item{barcol}{ color of interval bars and end marks. Default is "blue".} \item{connect}{ either a logical value indicating whether the means of each group should be connected by a line, or a list of vectors giving the index of bars that should be connected by a line. Defaults to TRUE.} \item{ccol}{ color of lines used to connect means. Defaults to the same color as "col".} \item{legends}{ vector containing strings used to label groups along the x axis. Defaults to group names.} \item{xaxt}{A character which specifies the axis type. Specifying `"n"' causes an axis to be set up, but not plotted.} \item{use.t}{ a logical value indicating whether the t distribution should be used to compute confidence intervals. If \code{TRUE}, the default, a t distribution will the correct number of degrees of freedom for each group be used. If \code{FALSE}, the a normal distribution will be used.} \item{lwd}{Width of connecting lines } \item{\dots}{ optional plotting parameters. } } %\details{ % % %} \examples{ # show comparison with boxplot data(state) plotmeans(state.area ~ state.region) # show some color and mean labels plotmeans(state.area ~ state.region, mean.labels=TRUE, digits=-3, col="red", connect=FALSE) # show how to specify which means should be connected plotmeans(state.area ~ state.region, connect=list(1:2, 3:4), ccol="red", pch=7 ) # more complicated example showing how to show an interaction data(esoph) par(las=2, # use perpendicular axis labels mar=c(10.1,4.1,4.1,2.1), # create enough space for long x labels mgp=c(8,1,0) # move x axis legend down to avoid overlap ) plotmeans(ncases/ncontrols ~ interaction(agegp , alcgp, sep =" "), connect=list(1:6,7:12,13:18,19:24), barwidth=2, col="dark green", data=esoph, xlab="Age Group and Alcohol Consumption", ylab="# Cases / # Controls", main=c("Fraction of Cases for by Age and Alcohol Consumption", "Ile-et-Vilaine Esophageal Cancer Study") ) abline(v=c(6.5, 12.5, 18.5), lty=2) } \author{Gregory R. Warnes \email{greg@warnes.net}} \seealso{\code{\link{plotCI}}, \code{\link{boxplot}}} \keyword{hplot} gplots/man/barplot2.Rd0000644000175100001440000003177112471456253014411 0ustar hornikusers%% Revision 2.1 2005/06/06 %% - Modified default behavior with 0's and NA's in %% 'height' so that these values are not plotted. %% - Warning messages added in the case of the above. %% Revision 2.0 2005/04/27 %% - Added panel.first and panel.last arguments %% - As per R 2.0.0, the default barplot() method by default uses a %% gamma-corrected grey palette (rather than the heat color %% palette) for coloring its output when given a matrix. % $Id: barplot2.Rd 1646 2013-03-24 05:19:04Z warnes $ %% $Log$ %% Revision 1.12 2005/12/07 18:48:54 nj7w %% Changed the default grey colors to heat colors, if height is matrix %% %% Revision 1.11 2005/12/06 22:41:08 nj7w %% Fixed minor error in documentation of barplot2 %% %% Revision 1.10 2005/06/09 14:20:28 nj7w %% Updating the version number, and various help files to synchronize splitting of gregmisc bundle in 4 individual components. %% %% Revision 1.3 2005/06/06 21:44:51 nj7w %% Changes based on Marc Schwartz's suggestions to handel 0's and NA's appropriately. %% %% Revision 1.9 2004/06/28 20:16:44 warnes %% - Default 2-d color set to grey as in (v2.0.0) r-devel %% - The default (v1.9.1) barplot method now handles vectors and 1-d arrays %% (e.g., obtained by table()) the same, and uses grey instead of %% heat color palettes in these cases. (Also fixes PR#6776.) %% - Updated to reflect the addition of 'offset' argument in base %% - Fix bug in stacked barplots, which would not be plotted properly %% % % Revision 1.8 2004/06/26 % - Default 2-d color set to grey as in (v2.0.0) r-devel % - The default (v1.9.1) barplot method now handles vectors and 1-d arrays % (e.g., obtained by table()) the same, and uses grey instead of % heat color palettes in these cases. (Also fixes PR#6776.) % - Updated to reflect the addition of 'offset' argument in base % - Fix bug in stacked barplots, which would not be plotted properly % % Revision 1.7 2003/12/02 16:58:46 warnes % % - Remove '%' character from example code to avoid errors. % % Revision 1.6 2003/12/01 16:00:08 warnes % % - updated to match changes to barplot() in base. % % Revision 1.5 2003/11/18 18:59:08 warnes % % - Tiny fix to remove R CMD check error. % % Revision 1.4 2003/01/30 21:43:05 warnes % % - Added argument 'add' to allow for the addition of a barplot to an % existing graphic. Default is FALSE % % Revision 1.2 2002/09/23 14:27:17 warnes % % - Fixed syntax errors in barplot2.Rd and CrossTable.Rd % - Fixed incorrect translation of 'F' (distribution) to 'FALSE' in glh.test.Rd % % Revision 1.1 2002/09/23 13:38:53 warnes % % - Added CrossTable() and barplot2() code and docs contributed by Marc Schwartz. % - Permit combinations() to be used when r>n provided repeat.allowed=TRUE % - Bumped up version number % % \name{barplot2} \alias{barplot2} \alias{barplot2.default} \title{Enhanced Bar Plots} \usage{ \method{barplot2}{default}(height, width = 1, space = NULL, names.arg = NULL, legend.text = NULL, beside = FALSE, horiz = FALSE, density = NULL, angle = 45, col = NULL, prcol = NULL, border = par("fg"), main = NULL, sub = NULL, xlab = NULL, ylab = NULL, xlim = NULL, ylim = NULL, xpd = TRUE, log = "", axes = TRUE, axisnames = TRUE, cex.axis = par("cex.axis"), cex.names = par("cex.axis"), inside = TRUE, plot = TRUE, axis.lty = 0, offset = 0, plot.ci = FALSE, ci.l = NULL, ci.u = NULL, ci.color = "black", ci.lty = "solid", ci.lwd = 1, ci.width = 0.5, plot.grid = FALSE, grid.inc = NULL, grid.lty = "dotted", grid.lwd = 1, grid.col = "black", add = FALSE, panel.first = NULL, panel.last = NULL, \dots) } \arguments{ \item{height}{either a vector or matrix of values describing the bars which make up the plot. If \code{height} is a vector, the plot consists of a sequence of rectangular bars with heights given by the values in the vector. If \code{height} is a matrix and \code{beside} is \code{FALSE} then each bar of the plot corresponds to a column of \code{height}, with the values in the column giving the heights of stacked ``sub-bars'' making up the bar. If \code{height} is a matrix and \code{beside} is \code{TRUE}, then the values in each column are juxtaposed rather than stacked.} \item{width}{optional vector of bar widths. Re-cycled to length the number of bars drawn. Specifying a single value will no visible effect unless \code{xlim} is specified.} \item{space}{the amount of space (as a fraction of the average bar width) left before each bar. May be given as a single number or one number per bar. If \code{height} is a matrix and \code{beside} is \code{TRUE}, \code{space} may be specified by two numbers, where the first is the space between bars in the same group, and the second the space between the groups. If not given explicitly, it defaults to \code{c(0,1)} if \code{height} is a matrix and \code{beside} is \code{TRUE}, and to 0.2 otherwise.} \item{names.arg}{a vector of names to be plotted below each bar or group of bars. If this argument is omitted, then the names are taken from the \code{names} attribute of \code{height} if this is a vector, or the column names if it is a matrix.} \item{legend.text}{a vector of text used to construct a legend for the plot, or a logical indicating whether a legend should be included. This is only useful when \code{height} is a matrix. In that case given legend labels should correspond to the rows of \code{height}; if \code{legend.text} is true, the row names of \code{height} will be used as labels if they are non-null.} \item{beside}{a logical value. If \code{FALSE}, the columns of \code{height} are portrayed as stacked bars, and if \code{TRUE} the columns are portrayed as juxtaposed bars.} \item{horiz}{a logical value. If \code{FALSE}, the bars are drawn vertically with the first bar to the left. If \code{TRUE}, the bars are drawn horizontally with the first at the bottom.} \item{density}{a vector giving the the density of shading lines, in lines per inch, for the bars or bar components. The default value of \code{NULL} means that no shading lines are drawn. Non-positive values of \code{density} also inhibit the drawing of shading lines.} \item{angle}{the slope of shading lines, given as an angle in degrees (counter-clockwise), for the bars or bar components.} \item{col}{a vector of colors for the bars or bar components. By default, grey is used if \code{height} is a vector, and \code{heat.colors(nrow(height))} if \code{height} is a matrix.} \item{prcol}{the color to be used for the plot region.} \item{border}{the color to be used for the border of the bars.} \item{main, sub}{overall and sub titles for the plot.} \item{xlab}{a label for the x axis.} \item{ylab}{a label for the y axis.} \item{xlim}{limits for the x axis.} \item{ylim}{limits for the y axis.} \item{xpd}{logical. Should bars be allowed to go outside region?} \item{log}{a character string which contains `"x"' if the x axis is to be logarithmic, `"y"' if the y axis is to be logarithmic and `"xy"' or `"yx"' if both axes are to be logarithmic.} \item{axes}{logical. If \code{TRUE}, a vertical (or horizontal, if \code{horiz} is true) axis is drawn.} \item{axisnames}{logical. If \code{TRUE}, and if there are \code{names.arg} (see above), the other axis is drawn (with \code{lty = 0}) and labeled.} \item{cex.axis}{expansion factor for numeric axis labels.} \item{cex.names}{expansion factor for names.} \item{inside}{logical. If \code{TRUE}, the lines which divide adjacent (non-stacked!) bars will be drawn. Only applies when \code{space = 0} (which it partly is when \code{beside = TRUE}).} %MM: we still have "NotYetUsed" -- the above describe's S-plus 6.1 (not % precisely documented!) behavior! \item{plot}{logical. If \code{FALSE}, nothing is plotted.} \item{axis.lty}{the graphics parameter \code{lty} applied to the axis and tick marks of the categorical (default horzontal) axis. Note that by default the axis is suppressed.} \item{offset}{a vector indicating how much the bars should be shifted relative to the x axis.} \item{plot.ci}{logical. If \code{TRUE}, confidence intervals are plotted over the bars. Note that if a stacked bar plot is generated, confidence intervals will not be plotted even if \code{plot.ci = TRUE}} \item{ci.l,ci.u}{The confidence intervals (ci.l = lower bound, ci.u = upper bound) to be plotted if \code{plot.ci} = \code{TRUE}. Values must have the same dim structure as \code{height}.} \item{ci.color}{the color for the confidence interval line segments} \item{ci.lty}{the line type for the confidence interval line segments} \item{ci.lwd}{the line width for the confidence interval line segments} \item{ci.width}{length of lines used for the "t" at the end of confidence interval line segments, as a multple of \code{width}. Defaults to 0.5.} \item{plot.grid}{if \code{TRUE} a lined grid will be plotted behind the bars} \item{grid.inc}{the number of grid increments to be plotted} \item{grid.lty}{the line type for the grid} \item{grid.lwd}{the line width for the grid} \item{grid.col}{the line color for the grid} \item{add}{logical, if \code{TRUE} add barplot to current plot.} \item{panel.first}{An expression to be evaluated after the plot region coordinates have been set up, but prior to the drawing of the bars and other plot region contents. This can be useful to add additional plot region content behind the bars. This will also work if \code{add} = \code{TRUE}} \item{panel.last}{An expression to be evaluated after the bars have been drawn, but prior to the addition of confidence intervals, a legend and the axis annotation} \item{\dots}{further graphical parameters (\code{\link{par}}) are passed to \code{\link{plot.window}()}, \code{\link{title}()} and \code{\link{axis}}.} } \description{ An enhancement of the standard barplot() function. Creates a bar plot with vertical or horizontal bars. Can plot confidence intervals for each bar, a lined grid behind the bars, change plot area color and logarithmic axes may be used. } \details{ This is a generic function, it currently only has a default method. A formula interface may be added eventually. } \value{ A numeric vector (or matrix, when \code{beside = TRUE}), say \code{mp}, giving the coordinates of \emph{all} the bar midpoints drawn, useful for adding to the graph. If \code{beside} is true, use \code{colMeans(mp)} for the midpoints of each \emph{group} of bars, see example. } \author{Original barplot() by R-Core. Enhancements by Marc Schwartz \email{marc\_schwartz@comcast.net} } \note{ Prior to \R 1.6.0, \code{barplot} behaved as if \code{axis.lty = 1}, unintentionally. 0 (zero) and NA values in \code{height} will not be plotted if using logarithmic scales. If there are NA values in \code{height} and \code{beside = FALSE}, values after the NA will not be plotted in stacked bars. } \seealso{ \code{\link{plot}(\dots, type = "h")}, \code{\link{dotchart}}, \code{\link{hist}}. } \examples{ tN <- table(Ni <- rpois(100, lambda = 5)) r <- barplot2(tN, col = 'gray') #- type = "h" plotting *is* `bar'plot lines(r, tN, type = 'h', col = 'red', lwd = 2) barplot2(tN, space = 1.5, axisnames = FALSE, sub = "barplot2(..., space = 1.5, axisnames = FALSE)") data(VADeaths, package = "datasets") barplot2(VADeaths, plot = FALSE) barplot2(VADeaths, plot = FALSE, beside = TRUE) mp <- barplot2(VADeaths) # default tot <- colMeans(VADeaths) text(mp, tot + 3, format(tot), xpd = TRUE, col = "blue") barplot2(VADeaths, beside = TRUE, col = c("lightblue", "mistyrose", "lightcyan", "lavender", "cornsilk"), legend = rownames(VADeaths), ylim = c(0, 100)) title(main = "Death Rates in Virginia", font.main = 4) # Example with confidence intervals and grid hh <- t(VADeaths)[, 5:1] mybarcol <- "gray20" ci.l <- hh * 0.85 ci.u <- hh * 1.15 mp <- barplot2(hh, beside = TRUE, col = c("lightblue", "mistyrose", "lightcyan", "lavender"), legend = colnames(VADeaths), ylim = c(0, 100), main = "Death Rates in Virginia", font.main = 4, sub = "Faked 95 percent error bars", col.sub = mybarcol, cex.names = 1.5, plot.ci = TRUE, ci.l = ci.l, ci.u = ci.u, plot.grid = TRUE) mtext(side = 1, at = colMeans(mp), line = -2, text = paste("Mean", formatC(colMeans(hh))), col = "red") box() # Example with horizontal bars, grid and logarithmic x axis barplot2(1:10 , log = "x", plot.grid = TRUE, grid.inc = 10, xlim = c(0.5, 20), horiz = TRUE, cex.axis = 0.9, prcol = "gray95") box() # Bar shading example barplot2(VADeaths, angle = 15 + 10 * 1:5, density = 20, col = "black", legend = rownames(VADeaths)) title(main = list("Death Rates in Virginia", font = 4)) # border : barplot2(VADeaths, border = "dark blue") % lwd = 2 << not passed %notyet barplot(VADeaths, inside = FALSE, main = "barplot(*, inside=FALSE)") } \keyword{hplot} gplots/man/balloonplot.Rd0000644000175100001440000001730712516251736015207 0ustar hornikusers\name{balloonplot} \alias{balloonplot} \alias{balloonplot.default} \alias{balloonplot.table} \title{Plot a graphical matrix where each cell contains a dot whose size reflects the relative magnitude of the corresponding component.} \description{ Plot a graphical matrix where each cell contains a dot whose size reflects the relative magnitude of the corresponding component. } \usage{ balloonplot(x, ...) \method{balloonplot}{table}(x, xlab, ylab, zlab, show.zeros=FALSE,show.margins=TRUE,...) \method{balloonplot}{default}(x,y,z, xlab, ylab, zlab=deparse(substitute(z)), dotsize=2/max(strwidth(19),strheight(19)), dotchar=19, dotcolor="skyblue", text.size=1, text.color=par("fg"), main, label=TRUE, label.digits=2, label.size=1, label.color=par("fg"), scale.method=c("volume","diameter"), scale.range=c("absolute","relative"), colsrt=par("srt"), rowsrt=par("srt"), colmar=1, rowmar=2, show.zeros=FALSE, show.margins=TRUE, cum.margins=TRUE, sorted=TRUE, label.lines=TRUE, fun=function(x)sum(x,na.rm=T), hide.duplicates=TRUE, ... ) } \arguments{ \item{x}{A table object, or either a vector or a list of several categorical vectors containing grouping variables for the first (x) margin of the plotted matrix.} \item{y}{Vector or list of vectors for grouping variables for the second (y) dimension of the plotted matrix.} \item{z}{Vector of values for the size of the dots in the plotted matrix.} \item{xlab}{Text label for the x dimension. This will be displayed on the x axis and in the plot title.} \item{ylab}{Text label for the y dimension. This will be displayed on the y axis and in the plot title.} \item{zlab}{Text label for the dot size. This will be included in the plot title.} \item{dotsize}{Maximum dot size. You may need to adjust this value for different plot devices and layouts.} \item{dotchar}{Plotting symbol or character used for dots. See the help page for the points function for symbol codes.} \item{dotcolor}{Scalar or vector specifying the color(s) of the dots in the plot.} \item{text.size, text.color}{Character size and color for row and column headers} \item{main}{Plot title text.} \item{label}{Boolean flag indicating whether the actual value of the elements should be shown on the plot.} \item{label.digits}{Number of digits used in formatting value labels.} \item{label.size, label.color}{ Character size and color for value labels.} \item{scale.method}{Method of scaling the sizes of the dot, either "volume" or "diameter". See below.} \item{scale.range}{Method for scaling original data to compute circle diameter. \code{scale.range="absolute"} scales the data relative to 0 (i.e, maps [0,max(z)] --> [0,1]), while \code{scale.range="relative"} scales the data relative to min(z) (i.e. maps [min(z), max(z)] --> [0,1]).} \item{rowsrt, colsrt}{Angle of rotation for row and column labels.} \item{rowmar, colmar}{Space allocated for row and column labels. Each unit is the width/height of one cell in the table.} \item{show.zeros}{boolean. If \code{FALSE}, entries containing zero will be left blank in the plotted matrix. If \code{TRUE}, zeros will be displayed.} \item{show.margins}{boolean. If \code{TRUE}, row and column sums are printed in the bottom and right margins, respectively.} \item{cum.margins}{boolean. If \code{TRUE}, marginal fractions are graphically presented in grey behind the row/column label area.} \item{sorted}{boolean. If \code{TRUE}, the rows will be arranged in sorted order by using the levels of the first y factor, then the second y factor, etc. The same process is used for the columns, based on the x factors} \item{label.lines}{boolean. If \code{TRUE}, borders will be drawn for row and column level headers.} \item{hide.duplicates}{boolean. If \code{TRUE}, column and row headers will omit duplicates within row/column to reduce clutter. Defaults to \code{TRUE}.} \item{fun}{function to be used to combine data elements with the same levels of the grouping variables \code{x} and \code{y}. Defaults to \code{sum}} \item{\dots}{ Additional arguments passed to \code{balloonplot.default} or \code{plot}, as appropriate.} } \details{ This function plots a visual matrix. In each \code{x},\code{y} cell a dot is plotted which reflects the relative size of the corresponding value of \code{z}. When \code{scale.method="volume"} the volume of the dot is proportional to the relative size of \code{z}. When \code{scale.method="diameter"}, the diameter of the dot is proportional to the the relative size of \code{z}. The "volume" method is default because the "diameter" method visually exaggerates differences. } \value{ Nothing of interest. } \note{ \code{z} is expected to be non-negative. The function will still operate correctly if there are negative values of \code{z}, but the corresponding dots will have 0 size and a warning will be generated. } \references{Function inspired by question posed on R-help by Ramon Alonso-Allende \email{allende@cnb.uam.es}.} \author{ Gregory R. Warnes \email{greg@warnes.net} } \seealso{ \code{\link{plot.table}} } \examples{ \testonly{ set.seed(12425421) } # Create an Example Data Frame Containing Car x Color data carnames <- c("bmw","renault","mercedes","seat") carcolors <- c("red","white","silver","green") datavals <- round(rnorm(16, mean=100, sd=60),1) data <- data.frame(Car=rep(carnames,4), Color=rep(carcolors, c(4,4,4,4) ), Value=datavals ) # show the data data # generate balloon plot with default scaling balloonplot( data$Car, data$Color, data$Value) # show margin label rotation & space expansion, using some long labels levels(data$Car) <- c("BMW: High End, German","Renault: Medium End, French", "Mercedes: High End, German", "Seat: Imaginary, Unknown Producer") # generate balloon plot with default scaling balloonplot( data$Car, data$Color, data$Value, colmar=3, colsrt=90) # Create an example using table xnames <- sample( letters[1:3], 50, replace=2) ynames <- sample( 1:5, 50, replace=2) tab <- table(xnames, ynames) balloonplot(tab) # Example of multiple classification variabls using the Titanic data library(datasets) data(Titanic) dframe <- as.data.frame(Titanic) # convert to 1 entry per row format attach(dframe) balloonplot(x=Class, y=list(Survived, Age, Sex), z=Freq, sort=TRUE) # colorize: surviors lightblue, non-survivors: grey Colors <- Titanic Colors[,,,"Yes"] <- "skyblue" Colors[,,,"No"] <- "grey" colors <- as.character(as.data.frame(Colors)$Freq) balloonplot(x=list(Age,Sex), y=list(Class=Class, Survived=gdata::reorder.factor(Survived,new.order=c(2,1)) ), z=Freq, zlab="Number of Passengers", sort=TRUE, dotcol = colors, show.zeros=TRUE, show.margins=TRUE) } \keyword{dplot} \keyword{hplot} gplots/man/residplot.Rd0000644000175100001440000000125012471456254014657 0ustar hornikusers% $Id: residplot.Rd 1441 2010-06-11 03:11:54Z warnes $ \name{residplot} \alias{residplot} %\alias{iapply} \title{Undocumented functions} \description{ These functions are undocumented. Some are internal and not intended for direct use. Others simply haven't been documented yet. } \usage{ residplot(model, formula, ...) } \arguments{ \item{model}{Undocumented} \item{formula}{Undocumented} \item{\dots}{ arguments to be passed to \code{fun} } } \details{ These functions are undocumented. Some are internal and not intended for direct use. Others simply haven't been documented yet. } \author{Gregory R. Warnes \email{greg@warnes.net}} \keyword{misc} gplots/man/overplot.Rd0000644000175100001440000000666712471456254014545 0ustar hornikusers\name{overplot} \alias{overplot} \alias{panel.overplot} \title{Plot multiple variables on the same region, with appropriate axes} \description{ \code{overplot} graphs a set of variables defined on the same x-range but which have varying y-ranges on the same plotting area. For each set of y-values it uses a different color and line-type and and draws a correspondingly colored and line-typed axis. \code{panel.overplot} is used by \code{overplot} to draw the individual graphs. } \usage{ overplot(formula, data = parent.frame(), same.scale = FALSE, xlab, ylab, xlim, ylim, min.y, max.y, log = "", panel = "panel.overplot", subset, plot = TRUE, groups, main, f = 2/3, ...) } \arguments{ \item{formula}{Formula describing the x and y variables. It should be of the form x ~ y|z. The conditioning variable (z) should be a factor.} \item{same.scale}{ Logical value indicating whether the plot region should have the same range for all plots. Defaults to \code{FALSE}.} \item{xlab, ylab, xlim, ylim, main}{ Standard plotting parameters. See \code{\link{plot}} for details} \item{min.y, max.y}{Scalar or vector values used to specify the y plotting limits for individual plots. If a single scalar value is provided, it will be used for all plots. These parameters can be used specify one end of the individual plot ranges, while allowing the other end to vary with the data. EG, to force 0 to always be within the plot region.} \item{log}{ character string '', 'x', 'y', or 'xy', indicating which axes should be plotted on a log scale. Defaults to '' (neither).} \item{panel}{ a plotting function to be called to draw the individual plots. Defaults to \code{overplot.panel}, which plots the points and a \code{lowess} smooth. } \item{plot}{Logical value indicating whether to draw the plot.} \item{groups}{(optional) character vector giving the names of levels of the conditioning variable to plot. Defaults to all levels of the conditioning variable.} \item{f}{Smoothing parameter for \code{lowess}} \item{data, subset, \dots}{parameters passed to \code{model.frame} to obtain the data to be plotted from the formula.} } \details{ This function essentially performs tmp <- split(data, z) for(i in levels(z)) plot( x ~ y, data=tmp[[z]] ) except that all of the plots are shown on the same plotting region and varying scales for each value of z are handled nicely. } \value{ A copy of the data split by the conditioning variable. } \author{ Gregory R. Warnes \email{greg@warnes.net} } \seealso{ \code{\link{interaction.plot}}, \code{\link{coplot}} for alternative visualizations of 3-way data.} \examples{ # Example teratogenicity rtPCR data data(rtPCR) # same scale overplot( RQ ~ Conc..ug.ml. | Test.Substance, data=rtPCR, subset=Detector=="ProbeType 1" & Conc..ug.ml. > 0, same.scale=TRUE, log="xy", f=3/4, main="Detector=ProbeType 1", xlab="Concentration (ug/ml)", ylab="Relative Gene Quantification" ) # different scales, but force lower limit to 0.01 overplot( RQ ~ Conc..ug.ml. | Test.Substance, data=rtPCR, subset=Detector=="ProbeType 8" & Conc..ug.ml. > 0, log="xy", f=3/4, main="Detector=ProbeType 8", xlab="Concentration (ug/ml)", ylab="Relative Gene Quantification", min.y=0.01 ) } \keyword{hplot} gplots/man/sinkplot.Rd0000644000175100001440000000331212521207034014500 0ustar hornikusers\name{sinkplot} \alias{sinkplot} \title{Send textual R output to a graphics device} \description{ Divert R's standard text output to a graphics device. } \usage{ sinkplot(operation = c("start", "plot", "cancel"), ...) } \arguments{ \item{operation}{See below} \item{\dots}{Plot arguments. (Ignored unless \code{operation}="plot").} } \details{ This function allows the printed output of R commands to be captured and displayed on a graphics device. The capture process is started by calling \code{sinkplot("start")}. Now R commands can be executed and all printed output (except errors) will be captured. When the desired text has been captured \code{sinkplot("plot")} can be called to actually display the output. \code{sinkplot("cancel")} can be used to abort the output capture without plotting. The current implementation does not allow \code{sinkplot} to be nested. } \value{ Invisibly returns a character vector containing one element for each line of the captured output. } \references{Functionality requested by Kevin Wright \email{kwright@eskimo.com} in the R-devel newlist posting \url{https://stat.ethz.ch/pipermail/r-devel/2004-January/028483.html}. } \author{ Gregory R. Warnes \email{greg@warnes.net} } \seealso{ \code{\link[utils]{capture.output}}, \code{\link{textplot}} } \examples{ set.seed(12456) x <- factor(sample( LETTERS[1:5], 50, replace=TRUE)) y <- rnorm(50, mean=as.numeric(x), sd=1) ## construct a figure showing a box plot of the data, followed by an ## analysis of variance table for the data layout(cbind(1:2), heights=c(2,1)) boxplot(y~x, col="darkgreen") sinkplot() anova(lm(y~x)) sinkplot("plot",col="darkgreen") } \keyword{hplot} gplots/man/colorpanel.Rd0000644000175100001440000000372712471456253015022 0ustar hornikusers\name{colorpanel} \alias{colorpanel} \alias{redgreen} \alias{greenred} \alias{bluered} \alias{redblue} \title{Generate a smoothly varying set of colors} \description{ \code{colorpanel} generate a set of colors that varies smoothly. \code{redgreen}, \code{greenred}, \code{bluered}, and \code{redblue} generate red-black-green, green-black-red, red-white-blue, and blue-white-red colorbars, respectively. colors } \usage{ colorpanel(n, low, mid, high) redgreen(n) greenred(n) bluered(n) redblue(n) } %- maybe also 'usage' for other objects documented here. \arguments{ \item{n}{Desired number of color elements in the panel.} \item{low, mid, high}{Colors to use for the Lowest, middle, and highest values. \code{mid} may be ommited.} } \details{ The values for \code{low, mid, high} can be given as color names ('red'), plot color index (2=red), and HTML-style RGB, ("\#FF0000"=red). If \code{mid} is supplied, then the returned color panel will consist of \code{n - floor(n/2)} HTML-style RGB elements which vary smoothly between \code{low} and \code{mid}, then between \code{mid} and \code{high}. Note that if \code{n} is even, the color \code{mid} will occur twice at the center of the sequence. If \code{mid} is omitted, the color panel will vary smoothly beween \code{low} and \code{high}. } \value{ Vector of HTML-style RGB colors. } \author{ Gregory R. Warnes \email{greg@warnes.net} } \seealso{ \code{\link{colors} } } \examples{ showpanel <- function(col) { image(z=matrix(1:100, ncol=1), col=col, xaxt="n", yaxt="n" ) } par(mfrow=c(3,3)) # two colors only: showpanel(colorpanel(8,low="red",high="green")) # three colors showpanel(colorpanel(8,"red","black","green")) # note the duplicatation of black at the center, using an odd # number of elements resolves this: showpanel(colorpanel(9,"red","black","green")) showpanel(greenred(64)) showpanel(redgreen(64)) showpanel(bluered(64)) showpanel(redblue(64)) } \keyword{color} gplots/man/bandplot.Rd0000644000175100001440000000734112471456253014463 0ustar hornikusers\name{bandplot} \alias{bandplot} \alias{bandplot.formula} \alias{bandplot.default} \title{Plot x-y Points with Locally Smoothed Mean and Standard Deviation} \description{ Plot x-y points with curves for locally smoothed mean and standard deviation. } \usage{ bandplot(x,...) \method{bandplot}{formula}(x, data, subset, na.action, ..., xlab=NULL, ylab=NULL, add = FALSE, sd = c(-2:2), sd.col=c("magenta", "blue", "red", "blue", "magenta"), sd.lwd=c(2, 2, 3, 2, 2), sd.lty=c(2, 1, 1, 1, 2), method = "frac", width = 1/5, n=50) \method{bandplot}{default}(x, y, ..., add = FALSE, sd = c(-2:2), sd.col=c("magenta", "blue", "red", "blue", "magenta"), sd.lwd=c(2, 2, 3, 2, 2), sd.lty=c(2, 1, 1, 1, 2), method = "frac", width = 1/5, n=50) } \arguments{ \item{x}{either formula providing a single dependent variable (y) and an single independent variable (x) to use as coordinates in the scatter plot or a numeric vector of x locations} \item{y}{numeric vector of y locations} \item{data}{an optional data.frame, list, or environment contianing the variables used in the model (and in \code{subset}). If not found in data, the variables are taken from environment(formula), typically the environment from which lm is called.} \item{subset}{an optional vector specifying a subset of observations to be used in the fitting process.} \item{na.action}{a function which indicates what should happen when the data contain NAs. The default is set by the na.action setting of options, and is na.fail if that is unset. The factory-fresh default is na.omit. Another possible value is NULL, no action. Value na.exclude can be useful. } \item{\dots}{Additional plotting parameters} \item{xlab, ylab}{x and y axis labels} \item{add}{ Boolean indicating whether the local mean and standard deviation lines should be added to an existing plot. Defaults to FALSE.} \item{sd}{Vector of multiples of the standard devation that should be plotted. \code{0} gives the mean, \code{-1} gives the mean minus one standard deviation, etc. Defaults to -2:2.} \item{sd.col,sd.lwd,sd.lty}{Color, line width, and line type of each plotted line.} \item{method, width, n}{ Parameters controlling the smoothing. See the help page for \code{\link{wapply}} for details.} } \details{ \code{bandplot} was created to look for changes in the mean or variance of scatter plots, particularly plots of regression residuals. The local mean and standard deviation are calculated by calling 'wapply'. By default, bandplot asks wapply to smooth using intervals that include the nearest 1/5 of the data. See the documentation of that function for details on the algorithm. } \value{ Invisibly returns a list containing the x,y points plotted for each line. } \author{ Gregory R. Warnes \email{greg@warnes.net} } \seealso{ \code{\link{wapply}}, \code{\link{lowess}}} \examples{ # fixed mean, changing variance x <- 1:1000 y <- rnorm(1000, mean=1, sd=1 + x/1000 ) bandplot(x,y) bandplot(y~x) # fixed varance, changing mean x <- 1:1000 y <- rnorm(1000, mean=x/1000, sd=1) bandplot(x,y) # # changing mean and variance # x <- abs(rnorm(500)) y <- rnorm(500, mean=2*x, sd=2+2*x) # the changing mean and dispersion are hard to see whith the points alone: plot(x,y ) # regression picks up the mean trend, but not the change in variance reg <- lm(y~x) summary(reg) abline(reg=reg, col="blue", lwd=2) # using bandplot on the original data helps to show the mean and # variance trend bandplot(y ~ x) # using bandplot on the residuals helps to see that regression removes # the mean trend but leaves the trend in variability bandplot(predict(reg),resid(reg)) } \keyword{ dplot } gplots/man/gplots-defunct.Rd0000644000175100001440000000354312675264544015624 0ustar hornikusers\name{gplots-defunct} \alias{boxplot.n} \alias{plot.lm2} \alias{smartlegend} \title{Defunct functions} \description{ These functions are defunct and have been removed from the gplots package. } \usage{ boxplot.n(..., top=FALSE, shrink=1, textcolor=NULL) plot.lm2( x, which = 1:5, caption = c("Residuals vs Fitted", "Normal Q-Q plot", "Scale-Location plot", "Cook's distance plot"), panel = panel.smooth, sub.caption = deparse(x$call), main = "", ask, ..., id.n = 3, labels.id = names(residuals(x)), cex.id = 0.75, band=TRUE, rug=TRUE, width=1/10, max.n=5000 ) smartlegend(x = c("left", "center", "right"), y = c("top", "center", "bottom"), ..., inset = 0.05) } \arguments{ \item{ask, band, caption, cex.id, id.n, inset, labels.id, main, max.n, panel, rug, shrink, sub.caption, textcolor, top, which, width, x, y, \dots}{see man page for the corresponding replacement function} } \details{ These functions are no longer available. Please refer to the manual page for the replacement function: \itemize{ \item \code{boxplot.n} has been replaced by \code{\link{boxplot2}} \item \code{plot.lm2} has been replaced by \code{\link{lmplot2}} \item \code{smartlegend} is no longer needed because relative positioning has been implemented in \code{\link[graphics]{legend}}. } } \author{Gregory R. Warnes \email{greg@warnes.net}} \seealso{ \code{\link{boxplot2}}, \code{\link{lmplot2}}, \code{\link[graphics]{legend}}, \code{\link[base]{Defunct}} } \keyword{misc} gplots/man/ooplot.Rd0000644000175100001440000002476512471456253014205 0ustar hornikusers\name{ooplot.default} \alias{ooplot.default} \alias{ooplot} \title{Create an OpenOffice style plot} \description{ An extension of barplot2. Creates bar- and line-plots mimicking the style of OpenOffice plots. This utility can plot the values next to each point or bar as well as confidence intervals. } \usage{ ooplot(data, ...) \method{ooplot}{default}(data, width=1, space=NULL, names.arg=NULL, legend.text=NULL, horiz=FALSE, density=NULL, angle=45, kmg="fpnumkMGTP", kmglim=TRUE, type=c("xyplot", "linear", "barplot", "stackbar"), col=heat.colors(NC), prcol=NULL, border=par("fg"), main=NULL, sub=NULL, xlab=NULL, ylab=NULL, xlim=NULL, ylim=NULL, xpd=TRUE, log="", axes=TRUE, axisnames=TRUE, prval=TRUE, lm=FALSE, cex.axis=par("cex.axis"), cex.names=par("cex.axis"), cex.values=par("cex"),inside=TRUE, plot=TRUE, axis.lty=0, plot.ci=FALSE, ci.l=NULL, ci.u=NULL, ci.color="black", ci.lty="solid", ci.lwd=1, plot.grid=FALSE, grid.inc=NULL, grid.lty="dotted", grid.lwd=1, grid.col="black", add=FALSE, by.row=FALSE, ...) } \arguments{ \item{data}{a matrix of values describing the values that make up the plot. The first column of \code{data} is taken as the axis against which all the other values are plotted. The first column of \code{data} may not be sparse.} \item{width}{optional vector of barwidths. Re-cycled to the number of bars drawn. A single value will have no visible effect. } \item{space}{ the amount of space left before each bar. May be given as a single number or one number per bar. If \code{type} is \code{stackbar}, \code{space} may be specified by two numbers, where the first is the space between bars in the same group, and the second the space between groups. Defaults to \code{c(0,1)} if \code{type} is a \code{stackbar}, and to 0.2 otherwise. } \item{names.arg}{a vector of names to be plotted below each bar or group of bars. If this argument is omitted, then the names are taken from the row names of \code{data}. } \item{legend.text}{a vector of text used to construct a legend for the plot, or a logical indicating whether a legend should be included; if \code{legend.text} is true, the row names of \code{data} will be used as labels if they are non-null.} \item{horiz}{a logical value. If \code{FALSE}, the bars are drawn vertically with the first bar to the left. If \code{TRUE}, the bars are drawn horizontally with the first at the bottom.} \item{density}{a vector giving the the density of shading lines, in lines per inch, for the bars or bar components. The default value of \code{NULL} means that no shading lines are drawn. Non-positive values of \code{density} also inhibit the drawing of shading lines.} \item{angle}{the slope of shading lines, given as an angle in degrees (counter-clockwise), for the bars or bar components.} \item{kmg}{the set of SI units to convert, defaults to "fpnumkMGTP". See below for details. } \item{kmglim}{logical. If \code{FALSE} the conversion to SI units is not performed. Default is \code{TRUE}. } \item{type}{a string indicating the preferred format of the plot, choices are: xyplot : plot where y is plotted against the x-value. linear : plot where y values are plotted against equidistant x-values. barplot : plot where y values are represented as bars against equidistant x-values. stackplot : plot where y values are stacked for identical x-values and bars are equidistant. } \item{col}{a vector of colors for the bars or bar components.} \item{prcol}{the color to be used for the plot region.} \item{border}{the color to be used for the border of the bars.} \item{main, sub}{overall and sub titles for the plot.} \item{xlab}{a label for the x axis.} \item{ylab}{a label for the y axis.} \item{xlim}{limits for the x axis.} \item{ylim}{limits for the y axis.} \item{xpd}{logical. Should bars be allowed to go outside region?} \item{log}{a character string which contains `"x"' if the x axis is to be logarithmic, `"y"' if the y axis is to be logarithmic and `"xy"' or `"yx"' if both axes are to be logarithmic.} \item{axes}{logical. If \code{TRUE}, a vertical (or horizontal, if \code{horiz} is true) axis is drawn.} \item{axisnames}{logical. If \code{TRUE}, and if there are \code{names.arg} (see above), the other axis is drawn (with \code{lty=0}) and labeled.} \item{prval}{logical. If \code{TRUE}, then values are plotted above all points and bars. } \item{lm}{logical. If \code{TRUE}, the linear fit is plotted. } \item{cex.axis, cex.names, cex.values}{character scaling factor for numeric axis labels, names, and displayed values, respectively.} \item{inside}{logical. If \code{TRUE}, the lines which divide adjacent (non-stacked!) bars will be drawn. Only applies when \code{space = 0} (which it partly is when \code{beside = TRUE}).} \item{plot}{logical. If \code{FALSE}, nothing is plotted.} \item{axis.lty}{the graphics parameter \code{lty} applied to the axis and tick marks of the categorical (default horzontal) axis. Note that by default the axis is suppressed.} \item{plot.ci}{logical. If \code{TRUE}, confidence intervals are plotted over the bars. Note that if a stacked bar plot is generated, confidence intervals will not be plotted even if \code{plot.ci = TRUE}} \item{ci.l,ci.u}{The confidence intervals (ci.l = lower bound, ci.u = upper bound) to be plotted if \code{plot.ci} = \code{TRUE}. Values must have the same dim structure as \code{height}.} \item{ci.color}{the color for the confidence interval line segments} \item{ci.lty}{the line type for the confidence interval line segments} \item{ci.lwd}{the line width for the confidence interval line segments} \item{plot.grid}{if \code{TRUE} a lined grid will be plotted behind the bars} \item{grid.inc}{the number of grid increments to be plotted} \item{grid.lty}{the line type for the grid} \item{grid.lwd}{the line width for the grid} \item{grid.col}{the line color for the grid} \item{add}{logical, if \code{TRUE} add barplot to current plot.} \item{by.row}{Logical value. If \code{TRUE} the data matrix is organized with variables along rows rather than down colums.} \item{\dots}{further graphical parameters (\code{\link{par}}) are passed to \code{\link{plot.window}()}, \code{\link{title}()} and \code{\link{axis}}.} } \details{ Plot units are automatically scaled to SI units based on the maximum value present, according to the set of units specified by characters in the \code{kmg} parameter. These letters are interpreted as \describe{ \item{P}{peta = 1E15} \item{T}{tera = 1E12} \item{G}{giga = 1E09} \item{M}{mega = 1E06} \item{k}{kilo = 1E03} \item{m}{milli= 1E-03} \item{u}{micro= 1E-06} \item{n}{nano = 1E-09} \item{p}{pico = 1E-12} \item{f}{femto= 1E-15} } with the default being "fpnumkMGTP" (all of these units). For example, if the largest value plotted is 1243000, it would be presented as 1.234M. } \value{ A numeric vector (or matrix, when \code{beside = TRUE}), say \code{mp}, giving the coordinates of \emph{all} the bar midpoints drawn, useful for adding to the graph. If \code{beside} is true, use \code{colMeans(mp)} for the midpoints of each \emph{group} of bars, see example. } \author{Lodewijk Bonebakker \email{bonebakker@comcast.net} with modifications by Gregory R. Warnes \email{greg@warnes.net}. Based on barplot2(). } \seealso{ \code{\link{plot}}, \code{\link{boxplot}} } \examples{ data(VADeaths, package = "datasets") VADeaths <- cbind( Age=c(50,55,60,65,70), VADeaths) mp <- ooplot(VADeaths) # default mp <- ooplot(VADeaths, type="xyplot") # same as default mp <- ooplot(VADeaths, type="linear") # linear scale mp <- ooplot(VADeaths, type="linear", log="y") # log scale on y axis mp <- ooplot(VADeaths, type="barplot") # barplot mp <- ooplot(VADeaths, type="stackbar") # stacked tot <- colMeans(VADeaths[,-1]) ooplot(VADeaths, col = c("lightblue", "mistyrose", "lightcyan", "lavender"), legend = colnames(VADeaths)[-1], ylim = c(0, 100), type="barplot", cex.values=0.75) title(main = "Death Rates in Virginia", font.main = 4) ## ## Capability demo ## ## examples for the ooplot routine ## ## create some test data test1 <- data.frame(x=c(0,1,2,3,4), lin=c(0,1,2,3,4)) test2 <- data.frame(x=c(0,1,2,3,4), par=c(0,1,4,9,16)) test3 <- data.frame(x=c(-2,-1,0,1,2),y2=c(4,1,0,1,4)) ## single line test example test1f <- test1 ## two column example test2f <- merge(test1,test2,by.x="x",all=TRUE,sort=TRUE) ## three column example test3f <- merge(test2f,test3,by.x="x",all=TRUE,sort=TRUE) ## subset, single row, example test5r <- test3f[5,] ## ## xyplot, linear, barplot, stackbar mat <- matrix(c(1:16),4,4,byrow=TRUE) layout(mat) ooplot(test1f,type="barplot",col=c("red")) title(main="barplot") ooplot(test2f,type="barplot",col=c("red","blue")) ooplot(test3f,type="barplot",col=c("red","blue","green")) ooplot(test5r,type="barplot",col=c("red","blue","green")) ooplot(test1f,type="xyplot",col=c("red")) title(main="xyplot") ooplot(test2f,type="xyplot",col=c("red","blue")) ooplot(test3f,type="xyplot",col=c("red","blue","green")) ooplot(test5r,type="xyplot",col=c("red","blue","green")) ooplot(test1f,type="linear",col=c("red")) title(main="linear") ooplot(test2f,type="linear",col=c("red","blue")) ooplot(test3f,type="linear",col=c("red","blue","green")) ooplot(test5r,type="linear",col=c("red","blue","green")) ooplot(test1f,type="stackbar",col=c("red")) title(main="stackbar") ooplot(test2f,type="stackbar",col=c("red","blue")) ooplot(test3f,type="stackbar",col=c("red","blue","green")) ooplot(test5r,type="stackbar",col=c("red","blue","green")) # restore default layout (1 plot/page) layout(1) } \keyword{hplot} gplots/man/lowess.Rd0000644000175100001440000001155512676770351014203 0ustar hornikusers% $Id: lowess.Rd 2124 2016-03-30 15:29:44Z warnes $ % % $Log$ % Revision 1.7 2005/06/09 14:20:28 nj7w % Updating the version number, and various help files to synchronize splitting of gregmisc bundle in 4 individual components. % % Revision 1.1.1.1 2005/05/25 22:15:30 nj7w % Initial submission as an individual package % % Revision 1.6 2003/12/03 02:46:51 warnes % - match function argument defaults with 'usage' % % Revision 1.5 2002/09/23 13:59:30 warnes % - Modified all files to include CVS Id and Log tags. % % \name{lowess} \alias{lowess} \alias{lowess.default} \alias{lowess.formula} \alias{plot.lowess} \alias{plotLowess} \title{Scatter Plot Smoothing} \usage{ lowess(x, ...) \method{lowess}{default}(x, y=NULL, f=2/3, iter=3L, delta=0.01 * diff(range(x)), ...) \method{lowess}{formula}(formula,data=parent.frame(), ..., subset, f=2/3, iter=3L, delta=.01*diff(range(mf[-response]))) \method{plot}{lowess}(x, y, ..., col.lowess="red", lty.lowess=2) plotLowess(formula, data=parent.frame(), ..., subset=parent.frame(), col.lowess="red", lty.lowess=2 ) } \alias{lowess} \arguments{ \item{formula}{ formula providing a single dependent variable (y) and an single independent variable (x) to use as coordinates in the scatter plot.} \item{data}{a data.frame (or list) from which the variables in `formula' should be taken.} \item{subset}{ an optional vector specifying a subset of observations to be used in the fitting process. } \item{x, y}{vectors giving the coordinates of the points in the scatter plot. Alternatively a single plotting structure can be specified.} \item{f}{the smoother span. This gives the proportion of points in the plot which influence the smooth at each value. Larger values give more smoothness.} \item{iter}{the number of robustifying iterations which should be performed. Using smaller values of \code{iter} will make \code{lowess} run faster.} \item{delta}{values of \code{x} which lie within \code{delta} of each other replaced by a single value in the output from \code{lowess}.} \item{...}{parameters for methods.} \item{col.lowess, lty.lowess}{color and line type for plotted line} } \description{ The \code{lowess} function performs the computations for the \emph{LOWESS} smoother (see the reference below). \code{lowess} returns a an object containing components \code{x} and \code{y} which give the coordinates of the smooth. The smooth can then be added to a plot of the original points with the function \code{lines}. Alternatively, \code{plot} can be called directly on the object returned from \code{lowess} and the 'lowess' method for \code{plot} will generate a scatterplot of the original data with a \code{lowess} line superimposed. Finally, the \code{plotLowess} function both calculates the \code{lowess} smooth and plots the original data with a \code{lowess} smooth. } \references{ Cleveland, W. S. (1979) Robust locally weighted regression and smoothing scatterplots. \emph{J. Amer. Statist. Assoc.} \bold{74}, 829--836. Cleveland, W. S. (1981) LOWESS: A program for smoothing scatterplots by robust locally weighted regression. \emph{The American Statistician}, \bold{35}, 54. } \seealso{\code{\link{loess}} (in package \code{modreg}), a newer formula based version of \code{lowess} (with different defaults!). } \examples{ data(cars) # # x,y method # plot(cars$speed, cars$dist, main="lowess(cars)") lines(lowess(cars$speed, cars$dist), col=2) lines(lowess(cars$speed, cars$dist, f=.2), col=3) legend(5, 120, c(paste("f=", c("2/3", ".2"))), lty=1, col=2:3) # # formula method: plot, then calculate the lowess smoother, # then add smooth to the plot # plot(dist ~ speed, data=cars, main="lowess(cars)") lines(lowess(dist ~ speed, data=cars), col=2, lty=2) lines(lowess(dist ~ speed, data=cars, f=.2), col=3) # smaller bandwith legend(5, 120, c(paste("f=", c("2/3", ".2"))), lty=1, col=2:3) # # formula method: calculate lowess() smoother, then call plot() # on the lowess object # lw <- lowess(dist ~ speed, data=cars) plot(lw, main="lowess(cars)" ) # # formula method: calculate and plot in a single command # plotLowess(dist ~ speed, data=cars, main="lowess(cars)") \dontshow{ # test non-standard evaluation with(cars, plotLowess(dist ~ speed, main="lowess(cars)") ) with(cars, plot(lowess(dist ~ speed, main="lowess(cars)") ) ) idx <- cars$speed > 10 plotLowess(dist[idx] ~ speed[idx], data=cars, main="lowess(cars)") plot(lowess(dist[idx] ~ speed[idx], data=cars, main="lowess(cars)")) with(cars, plotLowess(dist[idx] ~ speed[idx], main="lowess(cars)") ) with(cars, plot(lowess(dist[idx] ~ speed[idx], main="lowess(cars)") )) local({ dist <- cars$dist speed <- cars$speed plotLowess(dist[idx] ~ speed[idx], main="lowess(cars)") plot(lowess(dist[idx] ~ speed[idx], main="lowess(cars)")) }) } % dontshow } \keyword{smooth} gplots/man/rtPCR.Rd0000644000175100001440000000436112471456253013651 0ustar hornikusers\name{rtPCR} \alias{rtPCR} \docType{data} \title{Teratogenesis rtPCR data} \description{ rtPCR data for experiments investigating a variety of markers for characterizing teratogenicity. } \usage{data(rtPCR)} \format{ A data frame with 1672 observations on the following 21 variables. \describe{ \item{PlateID}{a factor with levels \code{A0027002} through \code{A0054019}} \item{Test.Substance}{a factor with levels \code{Compound A} through \code{Compound H}} \item{Teratogenicity.in.vivo}{a factor with levels \code{Non} \code{Strong} \code{Weak / Moderate}} \item{Sample}{a factor with levels \code{Sample 1} - \code{Sample 152}} \item{Rep..}{a factor with levels \code{Rep 1} - \code{Rep 21}} \item{Label}{a factor with levels \code{Ctrl}, \code{Neg. Ctrl} \code{P1} - \code{P9}, \code{No Vehicle Ctrl}, and \code{Pos. Ctrl}} \item{Conc..ug.ml.}{a numeric vector} \item{Detector}{a factor with levels \code{ProbeType 1} - \code{ProbeType 17}} \item{Avg.delta.Ct}{a numeric vector} \item{delta.Ct.SD}{a numeric vector} \item{delta.delta.Ct}{a numeric vector} \item{RQ}{a numeric vector} \item{X..RQ}{a numeric vector} \item{X100..Custom..}{a numeric vector} \item{X100...Custom..}{a numeric vector} \item{Custom..}{a numeric vector} \item{Custom...1}{a numeric vector} \item{RQ.Min}{a numeric vector} \item{RQ.Max}{a numeric vector} \item{Threshold}{a numeric vector} } } \details{ TBA } \source{ Anonymized data. } \examples{ data(rtPCR) # same scale overplot( RQ ~ Conc..ug.ml. | Test.Substance, data=rtPCR, subset=Detector=="ProbeType 7" & Conc..ug.ml. > 0, same.scale=TRUE, log="xy", f=3/4, main="Detector=ProbeType 7", xlab="Concentration (ug/ml)", ylab="Relative Gene Quantification" ) # different scales, but force lower limit to 0.01 overplot( RQ ~ Conc..ug.ml. | Test.Substance, data=rtPCR, subset=Detector=="ProbeType 7" & Conc..ug.ml. > 0, log="xy", f=3/4, main="Detector=ProbeType 7", xlab="Concentration (ug/ml)", ylab="Relative Gene Quantification", min.y=0.01 ) } \keyword{datasets} gplots/man/plotCI.Rd0000644000175100001440000001250212471456253014045 0ustar hornikusers% $Id: plotCI.Rd 1441 2010-06-11 03:11:54Z warnes $ % % $Log$ % Revision 1.8 2005/11/08 16:19:42 nj7w % Updated Greg's email % % Revision 1.7 2005/06/09 14:20:28 nj7w % Updating the version number, and various help files to synchronize splitting of gregmisc bundle in 4 individual components. % % Revision 1.1.1.1 2005/05/25 22:15:31 nj7w % Initial submission as an individual package % % Revision 1.6 2004/07/29 14:49:02 warnes % Integrate changes from the version of plotCI maintained by Martin Maechler. % % Revision 1.5 2004/05/27 15:11:08 warnes % Fix spelling error. % % Revision 1.4 2002/09/23 13:59:30 warnes % - Modified all files to include CVS Id and Log tags. % % \name{plotCI} \alias{plotCI} \title{Plot Error Bars and Confidence Intervals} \description{ Given a set of x and y values and interval width or upper and lower bounds, plot the points with error bars. This can be a useful tool for visualizing confidence intervals. } \usage{ plotCI(x, y = NULL, uiw, liw = uiw, ui, li, err='y', ylim=NULL, xlim=NULL, type="p", col=par("col"), barcol=col, pt.bg = par("bg"), sfrac = 0.01, gap=1, lwd=par("lwd"), lty=par("lty"), labels=FALSE, add=FALSE, xlab, ylab, minbar, maxbar, ... ) } \arguments{ \item{x,y}{ coordinates for the center of error bars. \code{y} defaults to \code{1:n}.} \item{uiw}{ width of the upper or right error bar. Set to \code{NULL} or \code{NA} to omit upper bars.} \item{liw}{ width of the lower or left error bar. Defaults to same value as \code{uiw}. Set to \code{NULL} or \code{NA} to omit lower bars. } \item{ui}{ upper end of error bars. Defaults to \code{y + uiw} or \code{x + uiw} depeding on \code{err}. Set to \code{NULL} or \code{NA} to omit upper bars. } \item{li}{ lower end of error bars. Defaults to \code{y - liw} or \code{x - liw} depedning on \code{err}. Set to \code{NULL} or \code{NA} to omit lower bars.} \item{err}{ direction for error bars. Set to "y" for vertical bars. Set to "x" for horizontal bars. Defaults to "y".} \item{col}{ color of plotting character used center marker of error bars. Default is "black".} \item{xlim, ylim}{ range of x/y values to include in the plotting area. } \item{type}{point/line type; passed to \code{\link{points}}} \item{barcol}{color of the error bars. Defaults to the same value as \code{col} } \item{pt.bg}{background color of points (use \code{pch=21, pt.bg=par("bg")} to get open points superimposed on error bars).} \item{sfrac}{ width of "crossbar" at the end of error bar as a fraction of the x plotting region. Defaults to 0.01. } \item{gap}{ space left between the center of the error bar and the lines marking the error bar in units of the height (width) of the letter "O". Defaults to 1.0 } \item{lwd}{ width of bar lines. } \item{lty}{ line type of bar lines. } \item{labels}{ either a logical value indicating whether the circles representing the x values should be replaced with text giving the actual values or a vector containing labels to use instead. Defaults to \code{FALSE}. } \item{add}{logical indicating whether error bars should be added to the current plot. If \code{FALSE} (the defailt), a new plot will be created and symbols/labels for the x values will be plotted before drawing error bars.} \item{minbar}{minumum allowed value for bar ends. If specified, values smaller than \code{minbar} will be replaced with \code{minbar}. } \item{maxbar}{maximum allowed value for bar ends. If specified, values larger than \code{maxbar} will be replaced with \code{maxbar}. } \item{\dots}{ optional plotting parameters } \item{xlab}{ label for x axis. } \item{ylab}{label for y axis. } } %\details{ % ~~ If necessary, more details than the __description__ above ~~ %} \author{ Original version by Bill Venables \email{wvenable@attunga.stats.adelaide.edu.au} posted to r-help on Sep. 20, 1997. Enhanced version posted to r-help by Ben Bolker \email{ben@zoo.ufl.edu} on Apr. 16, 2001. This version was modified and extended by Gregory R. Warnes \email{greg@warnes.net}. Additional changes suggested by Martin Maechler \email{maechler@stat.math.ethz.ch} integrated on July 29, 2004. } \seealso{ \code{\link{plotmeans}} provides an enhanced wrapper to \code{plotCI}. } \examples{ # plot means and data(state) tmp <- split(state.area, state.region) means <- sapply(tmp, mean) stdev <- sqrt(sapply(tmp, var)) n <- sapply(tmp,length) ciw <- qt(0.975, n) * stdev / sqrt(n) # plain plotCI(x=means, uiw=ciw) # prettier plotCI(x=means, uiw=ciw, col="black", barcol="blue", lwd=1) # give mean values plotCI(x=means, uiw=ciw, col="black", barcol="blue", labels=round(means,-3), xaxt="n", xlim=c(0,5) ) axis(side=1, at=1:4, labels=names(tmp), cex=0.7) # better yet, just use plotmeans ... # plotmeans( state.area ~ state.region ) \dontshow{ ## Just for testing plotCI(x=means, uiw=NA) plotCI(x=means, uiw=NULL) plotCI(x=means, uiw=ciw) plotCI(x=means, uiw=ciw, liw=NULL) plotCI(x=means, uiw=ciw, liw=NA) plotCI(x=means, liw=ciw, ciw=NULL) plotCI(x=means, liw=ciw, ciw=NA) ciw.na <- ciw ciw.na[3] <- NA plotCI(x=means, uiw=ciw.na, liw=ciw) plotCI(x=means, liw=ciw.na, uiw=ciw) } } \keyword{ hplot } gplots/man/ci2d.Rd0000644000175100001440000002115212471456253013475 0ustar hornikusers% $Id$ \name{ci2d} \alias{ci2d} \alias{print.ci2d} \title{ Create 2-dimensional empirical confidence regions } \description{ Create 2-dimensional empirical confidence regions from provided data. } \usage{ ci2d(x, y = NULL, nbins=51, method=c("bkde2D","hist2d"), bandwidth, factor=1.0, ci.levels=c(0.50,0.75,0.90,0.95,0.975), show=c("filled.contour","contour","image","none"), col=topo.colors(length(breaks)-1), show.points=FALSE, pch=par("pch"), points.col="red", xlab, ylab, ...) \method{print}{ci2d}(x, ...) } \arguments{ \item{x}{either a vector containing the x coordinates or a matrix with 2 columns. } \item{y}{a vector contianing the y coordinates, not required if `x' is matrix} \item{nbins}{number of bins in each dimension. May be a scalar or a 2 element vector. Defaults to 51.} \item{method}{One of "bkde2D" (for KernSmooth::bdke2d) or "hist2d" (for gplots::hist2d) specifyting the name of the method to create the 2-d density summarizing the data. Defaults to "bkde2D".} \item{bandwidth}{Bandwidth to use for \code{KernSmooth::bkde2D}. See below for default value. } \item{factor}{Numeric scaling factor for bandwidth. Useful for exploring effect of changing the bandwidth. Defaults to 1.0.} \item{ci.levels}{Confidence level(s) to use for plotting data. Defaults to \code{c(0.5, 0.75, 0.9, 0.95, 0.975)} } \item{show}{Plot type to be displaed. One of "filled.contour", "contour", "image", or "none". Defaults to "filled.contour".} \item{show.points}{Boolean indicating whether original data values should be plotted. Defaults to \code{TRUE}.} \item{pch}{Point type for plots. See \code{points} for details.} \item{points.col}{Point color for plotting original data. Defaiults to "red".} \item{col}{Colors to use for plots.} \item{xlab, ylab}{Axis labels} \item{\dots}{Additional arguments passed to \code{KernSmooth::bkde2D} or \code{gplots::hist2d}. } } \details{ This function utilizes either \code{KernSmooth::bkde2D} or \code{gplots::hist2d} to estmate a 2-dimensional density of the data passed as an argument. This density is then used to create and (optionally) display confidence regions. When \code{bandwidth} is ommited and \code{method="bkde2d"}, \code{KernSmooth::dpik} is appled in x and y dimensions to select the bandwidth. } \note{ Confidence intervals generated by ci2d are \emph{approximate}, and are subject to biases and/or artifacts induced by the binning or kernel smoothing method, bin locations, bin sizes, and kernel bandwidth. The \code{\link[r2d2]{conf2d}} function in the \pkg{r2d2} package may create a more accurate confidence region, and reports the actual proportion of points inside the region. } \value{ A \code{ci2d} object consisting of a list containing (at least) the following elements: \item{nobs}{number of original data points} \item{x}{x position of each density estimate bin} \item{y}{y position of each density estimate bin} \item{density}{Matrix containing the probability density of each bin (count in bin/total count)} \item{cumDensity}{Matrix where each element contains the cumulative probability density of all elements with the same density (used to create the confidence region plots) } \item{contours}{List of contours of each confidence region.} \item{call}{Call used to create this object} } \author{ Gregory R. Warnes \email{greg@warnes.net}} \seealso{ \code{\link[KernSmooth]{bkde2D}}, \code{\link[r2d2]{conf2d}}, \code{\link[KernSmooth]{dpik}}, \code{\link{hist2d}} } \examples{ #### ## Basic usage #### data(geyser, package="MASS") x <- geyser$duration y <- geyser$waiting # 2-d confidence intervals based on binned kernel density estimate ci2d(x,y) # filled contour plot ci2d(x,y, show.points=TRUE) # show original data # image plot ci2d(x,y, show="image") ci2d(x,y, show="image", show.points=TRUE) # contour plot ci2d(x,y, show="contour", col="black") ci2d(x,y, show="contour", col="black", show.points=TRUE) #### ## Control Axis scales #### x <- rnorm(2000, sd=4) y <- rnorm(2000, sd=1) # 2-d confidence intervals based on binned kernel density estimate ci2d(x,y) # 2-d confidence intervals based on 2d histogram ci2d(x,y, method="hist2d", nbins=25) # Require same scale for each axis, this looks oval ci2d(x,y, range.x=list(c(-20,20), c(-20,20))) ci2d(x,y, method="hist2d", same.scale=TRUE, nbins=25) # hist2d #### ## Control smoothing and binning #### x <- rnorm(2000, sd=4) y <- rnorm(2000, mean=x, sd=2) # Default 2-d confidence intervals based on binned kernel density estimate ci2d(x,y) # change the smoother bandwidth ci2d(x,y, bandwidth=c(sd(x)/8, sd(y)/8) ) # change the smoother number of bins ci2d(x,y, nbins=10) ci2d(x,y) ci2d(x,y, nbins=100) # Default 2-d confidence intervals based on 2d histogram ci2d(x,y, method="hist2d", show.points=TRUE) # change the number of histogram bins ci2d(x,y, nbin=10, method="hist2d", show.points=TRUE ) ci2d(x,y, nbin=25, method="hist2d", show.points=TRUE ) #### ## Perform plotting manually #### data(geyser, package="MASS") # let ci2d handle plotting contours... ci2d(geyser$duration, geyser$waiting, show="contour", col="black") # call contour() directly, show the 90 percent CI, and the mean point est <- ci2d(geyser$duration, geyser$waiting, show="none") contour(est$x, est$y, est$cumDensity, xlab="duration", ylab="waiting", levels=0.90, lwd=4, lty=2) points(mean(geyser$duration), mean(geyser$waiting), col="red", pch="X") #### ## Extract confidence region values ### data(geyser, package="MASS") ## Empirical 90 percent confidence limits quantile( geyser$duration, c(0.05, 0.95) ) quantile( geyser$waiting, c(0.05, 0.95) ) ## Bivariate 90 percent confidence region est <- ci2d(geyser$duration, geyser$waiting, show="none") names(est$contours) ## show available contours ci.90 <- est$contours[names(est$contours)=="0.9"] # get region(s) ci.90 <- rbind(ci.90[[1]],NA, ci.90[[2]], NA, ci.90[[3]]) # join them print(ci.90) # show full contour range(ci.90$x, na.rm=TRUE) # range for duration range(ci.90$y, na.rm=TRUE) # range for waiting #### ## Visually compare confidence regions #### data(geyser, package="MASS") ## Bivariate smoothed 90 percent confidence region est <- ci2d(geyser$duration, geyser$waiting, show="none") names(est$contours) ## show available contours ci.90 <- est$contours[names(est$contours)=="0.9"] # get region(s) ci.90 <- rbind(ci.90[[1]],NA, ci.90[[2]], NA, ci.90[[3]]) # join them plot( waiting ~ duration, data=geyser, main="Comparison of 90 percent confidence regions" ) polygon( ci.90, col="green", border="green", density=10) ## Univariate Normal-Theory 90 percent confidence region mean.x <- mean(geyser$duration) mean.y <- mean(geyser$waiting) sd.x <- sd(geyser$duration) sd.y <- sd(geyser$waiting) t.value <- qt(c(0.05,0.95), df=gdata::nobs(geyser$duration), lower=TRUE) ci.x <- mean.x + t.value* sd.x ci.y <- mean.y + t.value* sd.y plotCI(mean.x, mean.y, li=ci.x[1], ui=ci.x[2], barcol="blue", col="blue", err="x", pch="X", add=TRUE ) plotCI(mean.x, mean.y, li=ci.y[1], ui=ci.y[2], barcol="blue", col="blue", err="y", pch=NA, add=TRUE ) # rect(ci.x[1], ci.y[1], ci.x[2], ci.y[2], border="blue", # density=5, # angle=45, # col="blue" ) ## Empirical univariate 90 percent confidence region box <- cbind( x=quantile( geyser$duration, c(0.05, 0.95 )), y=quantile( geyser$waiting, c(0.05, 0.95 )) ) rect(box[1,1], box[1,2], box[2,1], box[2,2], border="red", density=5, angle=-45, col="red" ) ## now a nice legend legend( "topright", legend=c(" Region type", "Univariate Normal Theory", "Univarite Empirical", "Smoothed Bivariate"), lwd=c(NA,1,1,1), col=c("black","blue","red","green"), lty=c(NA,1,1,1) ) #### ## Test with a large number of points #### \dontrun{ x <- rnorm(60000, sd=1) y <- c( rnorm(40000, mean=x, sd=1), rnorm(20000, mean=x+4, sd=1) ) hist2d(x,y) ci <- ci2d(x,y) ci } } \keyword{dplot} \keyword{hplot} \keyword{nonparametric} gplots/man/boxplot2.Rd0000644000175100001440000000216612471456254014432 0ustar hornikusers\name{boxplot2} \alias{boxplot2} \title{Produce a Boxplot Annotated with the Number of Observations} \description{ This funcntion uses \code{boxplot} to produce a boxplot which is then annotated with the number of observations in each group. } \usage{ boxplot2(..., top=FALSE, shrink=1, textcolor=NULL) } \arguments{ \item{\dots}{ parameters passed to \code{boxplot}. } \item{top}{ logical indicating whether the number of observations should be added to the top or the bottom of the plotting region. Defaults to \code{FALSE}. } \item{shrink}{ value to shrink character size (cex) when annotating.} \item{textcolor}{ text color. } } \author{ Gregory R. Warnes \email{greg@warnes.net}} \note{ This function replaces \code{boxplot.n}, which has been deprecated avoid potential problems with S3 method dispatching. } \seealso{ \code{\link{boxplot}}, \code{\link{text}} } \examples{ data(state) # n's at bottom boxplot2( state.area ~ state.region) # n's at top boxplot2( state.area ~ state.region, top=TRUE) # small red text boxplot2( state.area ~ state.region, shrink=0.8, textcolor="red") } \keyword{ hplot } gplots/man/col2hex.Rd0000644000175100001440000000073412471456254014224 0ustar hornikusers\name{col2hex} \alias{col2hex} \title{Convert color names to hex RGB strings} \description{ Convert color names to hex RGB strings } \usage{ col2hex(cname) } \arguments{ \item{cname}{Color name(s)} } \value{ Character vector giving the hex color code translation of the provided color names. } \author{Gregory R. Warnes} \seealso{ \code{\link{col2rgb}}, \code{\link{colors}}, \code{\link{rgb}} } \examples{ col2hex(c("red","yellow","lightgrey")) } \keyword{color} gplots/man/wapply.Rd0000644000175100001440000001167212471456253014176 0ustar hornikusers% $Id: wapply.Rd 1441 2010-06-11 03:11:54Z warnes $ % % $Log$ % Revision 1.10 2005/12/01 16:46:52 nj7w % Updated Greg's email address % % Revision 1.9 2005/06/09 14:20:28 nj7w % Updating the version number, and various help files to synchronize splitting of gregmisc bundle in 4 individual components. % % Revision 1.1.1.1 2005/05/25 22:15:31 nj7w % Initial submission as an individual package % % Revision 1.8 2003/12/03 02:46:51 warnes % - match function argument defaults with 'usage' % % Revision 1.7 2003/01/20 17:13:06 warnes % % - Updated wapply.R to allow specification of evaluation points when % method is 'width' or 'range' using the 'pts' argument. % - Updated wapply.Rd to add 'pts' argument % - Fixed typos, spelling errors, gramatical errors and lack of clarity % in wapply.Rd help text. % % Revision 1.6 2002/04/09 00:51:33 warneg % % Checkin for version 0.5.3 % % Revision 1.5 2001/12/07 23:34:35 warneg % % Fixed an problem where \code was incorrectly delimited by parens % rather than curly brackets. % % Revision 1.4 2001/12/05 19:36:30 warneg % - Clarified how the width of the window is computed when method="nobs". % % Revision 1.3 2001/10/16 23:15:01 warneg % % Fixed unbalanced brace. % % Revision 1.2 2001/09/01 00:01:55 warneg % Release 0.3.0 % % Revision 1.1 2001/08/25 05:45:10 warneg % Initial Checkin % % \name{wapply} \alias{wapply} \title{Compute the Value of a Function Over a Local Region Of An X-Y Plot} \description{ This function applies the specified function to the sets of y values that are defined by overlapping "windows" in the x-dimension. For example, setting \code{fun=mean} returns local means, while setting \code{fun=function(x) sqrt(var(x))} returns local estimates of the standard deviation. } \usage{ wapply(x, y, fun=mean, method="range", width, n=50, drop.na=TRUE, pts, ...) } \arguments{ \item{x}{ vector of x values for (x,y) pairs } \item{y}{ vector of y values for (x,y) pairs } \item{fun}{ function to be applied } \item{method}{ method of defining an x-neighborhood. One of "width","nobs","range", or "fraction". See details.} \item{width}{ width of an x-neighborhood. See details. } \item{n}{ Number of equally spaced points at which to compute local estimates. See details.} \item{drop.na}{ should points which result in missing values \code{NA} be omitted from the return value. Defaults to true. } \item{pts}{ \code{x} locations at which to compute the local mean when using the "width" or "range" methods. Ignored otherwise.} \item{\dots}{ arguments to be passed to \code{fun} } } \details{ Two basic techniques are available for determining what points fall within the same x-neighborhood. The first technique uses a window with a fixed width in the x-dimension and is is selected by setting \code{method="width"} or \code{method="range"}. For \code{method="width"} the \code{width} argument is an absolute distance in the x-dimension. For \code{method="range"}, the width is expressed as a fraction of the x-range. In both cases, \code{pts} specifies the points at which evaluation of \code{fun} occurs. When \code{pts} is omitted, \code{n} x values equally spaced along the x range are used. The second technique uses windows containing k neighboring points. The (x,y) pairs are sorted by the x-values and the nearest k/2 points with higher x values and the k/2 nearest points with lower x values are included in the window. When \code{method="nobs"}, k equals \code{width} (actually 2*floor(\code{width}/2) ). When \code{method="fraction"}, \code{width} specifies what fraction of the total number of points should be included. The actual number of points included in each window will be floor(n*frac/2)*2. Regardless of the value of \code{pts}, the function \code{fun} will be evaluated at all x locations. } \value{ Returns a list with components \item{x }{x location'} \item{y }{Result of applying \code{fun} to the window about each x location} } \author{ Gregory R. Warnes \email{greg@warnes.net} } \examples{ #show local mean and inner 2-sd interval to help diagnose changing mean #or variance structure x <- 1:1000 y <- rnorm(1000, mean=1, sd=1 + x/1000 ) plot(x,y) lines(wapply(x,y,mean),col="red") CL <- function(x,sd) mean(x)+sd*sqrt(var(x)) lines(wapply(x,y,CL,sd= 1),col="blue") lines(wapply(x,y,CL,sd=-1),col="blue") lines(wapply(x,y,CL,sd= 2),col="green") lines(wapply(x,y,CL,sd=-2),col="green") #show local mean and inner 2-sd interval to help diagnose changing mean #or variance structure x <- 1:1000 y <- rnorm(1000, mean=x/1000, sd=1) plot(x,y) lines(wapply(x,y,mean),col="red") CL <- function(x,sd) mean(x)+sd*sqrt(var(x)) lines(wapply(x,y,CL,sd= 1,method="fraction",width=1/20),col="blue") lines(wapply(x,y,CL,sd=-1,method="fraction",width=1/20),col="blue") lines(wapply(x,y,CL,sd= 2,method="nobs",width=250),col="green") lines(wapply(x,y,CL,sd=-2,method="nobs",width=250),col="green") } \keyword{ dplot } gplots/man/hist2d.Rd0000644000175100001440000000607712471456253014062 0ustar hornikusers% $Id: hist2d.Rd 1812 2014-04-17 19:05:11Z warnes $ \name{hist2d} \alias{hist2d} \alias{print.hist2d} \title{ Compute and Plot a 2-Dimensional Histogram } \description{ Compute and plot a 2-dimensional histogram. } \usage{ hist2d(x,y=NULL, nbins=200, same.scale=FALSE, na.rm=TRUE, show=TRUE, col=c("black", heat.colors(12)), FUN=base::length, xlab, ylab, ... ) \method{print}{hist2d}(x, ...) } \arguments{ \item{x}{either a vector containing the x coordinates or a matrix with 2 columns. } \item{y}{a vector contianing the y coordinates, not required if `x' is matrix} \item{nbins}{number of bins in each dimension. May be a scalar or a 2 element vector. Defaults to 200.} \item{same.scale}{use the same range for x and y. Defaults to FALSE.} \item{na.rm}{ Indicates whether missing values should be removed. Defaults to TRUE.} \item{show}{ Indicates whether the histogram be displayed using \code{image} once it has been computed. Defaults to TRUE.} \item{col}{ Colors for the histogram. Defaults to "black" for bins containing no elements, a set of 16 heat colors for other bins.} \item{FUN}{Function used to summarize bin contents. Defaults to \code{base::length}. Use, e.g., \code{mean} to calculate means for each bin instead of counts.} \item{xlab,ylab}{(Optional) x and y axis labels} \item{\dots}{ Parameters passed to the image function. } } \details{ This fucntion creates a 2-dimensional histogram by cutting the x and y dimensions into \code{nbins} sections. A 2-dimensional matrix is then constucted which holds the counts of the number of observed (x,y) pairs that fall into each bin. If \code{show=TRUE}, this matrix is then then passed to \code{image} for display. } \value{ A list containing 5 elements: \item{counts}{Matrix containing the number of points falling into each bin} \item{x.breaks, y.breaks}{Lower and upper limits of each bin} \item{x,y}{midpoints of each bin} } \author{ Gregory R. Warnes \email{greg@warnes.net}} \seealso{ \code{\link{image}}, \code{\link{persp}}, \code{\link{hist}}, \code{\link[r2d2]{freq2d}} } \examples{ ## example data, bivariate normal, no correlation x <- rnorm(2000, sd=4) y <- rnorm(2000, sd=1) ## separate scales for each axis, this looks circular hist2d(x,y) ## same scale for each axis, this looks oval hist2d(x,y, same.scale=TRUE) ## use different ## bins in each dimension hist2d(x,y, same.scale=TRUE, nbins=c(100,200) ) ## use the hist2d function to create an h2d object h2d <- hist2d(x,y,show=FALSE, same.scale=TRUE, nbins=c(20,30)) ## show object summary h2d ## object contents str(h2d) ## perspective plot persp( h2d$x, h2d$y, h2d$counts, ticktype="detailed", theta=30, phi=30, expand=0.5, shade=0.5, col="cyan", ltheta=-30) ## for contour (line) plot ... contour( h2d$x, h2d$y, h2d$counts, nlevels=4 ) ## for a filled contour plot ... filled.contour( h2d$x, h2d$y, h2d$counts, nlevels=4, col=gray((4:0)/4) ) } \keyword{dplot} \keyword{hplot} gplots/man/angleAxis.Rd0000644000175100001440000000545612664124074014575 0ustar hornikusers\name{angleAxis} \alias{angleAxis} \title{Add a Axis to a Plot with Rotated Labels} \description{ Add a labeled axis to the current plot with rotated text } \usage{ angleAxis(side, labels, at = 1:length(labels), srt = 45, adj, xpd = TRUE, ...) } \arguments{ \item{side}{ an integer specifying which side of the plot the axis is to be drawn on. The axis is placed as follows: 1=below, 2=left, 3=above and 4=right. } \item{labels}{character or expression vector of labels to be placed at the tickpoints. } \item{at}{the points at which tick-marks are to be drawn. Non-finite (infinite, NaN or NA) values are omitted. } \item{srt}{ The string rotation in degrees. Defaults to 45 degrees (clockwise). } \item{adj}{Text justification. A value of 0 produces left-justified text, 0.5 centered text and 1 right-justified text. For \code{side=1} and \code{side=2}, the default value is \code{adj=1}. For \code{side=3} and \code{side=4} the default value is \code{adj=0}. } \item{xpd}{A logical value or NA. If FALSE, labels are clipped to the plot region, if TRUE, labels are clipped to the figure region, and if NA, labels are clipped to the device region. } \item{\dots}{optional arguments passed to \code{text}. Common examples are \code{col}, \code{cex}.} } \details{ This function augments the feature of the \code{axis} functon by allowing the axis labels to be rotated. } \author{Gregory R. Warnes \email{greg@warnes.net} } \seealso{ \code{\link{axis}} } \examples{ \dontshow{set.seed(42)} # create a vector with some values and long labels values <- sample(1:10) names(values) <- sapply(letters[1:10], function(x) paste(rep(x, 10), sep="",collapse="") ) # barplot labels are too long for the available space, hence some are not plotted barplot(values) # to add angled labels, tell barplot not to label the x axis, and store the bar location at <- barplot(values, xaxt="n") # then use angleAxs angleAxis(1, at=at, labels = names(values)) # angle counter-clockwise instead at <- barplot(values, xaxt="n") angleAxis(1, at=at, labels = names(values), srt=-45, adj=0) # put labels at the top oldpar <- par()$mar par(mar=c(1,4,5,2)+0.1) at <- barplot(values, xaxt="n") angleAxis(3, at=at, labels = names(values)) par(oldpar) # put labels on the left oldpar <- par()$mar par(mar=c(5,5,3,2)+0.1) at <- barplot(values, yaxt="n", horiz=TRUE) angleAxis(2, at=at, labels = names(values)) par(oldpar) # put labels on the right oldpar <- par()$mar par(mar=c(2,5,3,5)+0.1) at <- barplot(values, yaxt="n", horiz=TRUE) angleAxis(4, at=at, labels = names(values)) par(oldpar) # specify colors for bars and labels at <- barplot(values, xaxt="n", col=1:10) angleAxis(1, at=at, labels = names(values), col=1:10) } \keyword{aplot} gplots/man/heatmap.2.Rd0000644000175100001440000005271612676243236014447 0ustar hornikusers\name{heatmap.2} \alias{heatmap.2} \title{ Enhanced Heat Map } \description{ A heat map is a false color image (basically \code{\link{image}(t(x))}) with a dendrogram added to the left side and/or to the top. Typically, reordering of the rows and columns according to some set of values (row or column means) within the restrictions imposed by the dendrogram is carried out. This heatmap provides a number of extensions to the standard R \code{\link[stats]{heatmap}} function. } \usage{ heatmap.2 (x, # dendrogram control Rowv = TRUE, Colv=if(symm)"Rowv" else TRUE, distfun = dist, hclustfun = hclust, dendrogram = c("both","row","column","none"), reorderfun = function(d, w) reorder(d, w), symm = FALSE, # data scaling scale = c("none","row", "column"), na.rm=TRUE, # image plot revC = identical(Colv, "Rowv"), add.expr, # mapping data to colors breaks, symbreaks=any(x < 0, na.rm=TRUE) || scale!="none", # colors col="heat.colors", # block sepration colsep, rowsep, sepcolor="white", sepwidth=c(0.05,0.05), # cell labeling cellnote, notecex=1.0, notecol="cyan", na.color=par("bg"), # level trace trace=c("column","row","both","none"), tracecol="cyan", hline=median(breaks), vline=median(breaks), linecol=tracecol, # Row/Column Labeling margins = c(5, 5), ColSideColors, RowSideColors, cexRow = 0.2 + 1/log10(nr), cexCol = 0.2 + 1/log10(nc), labRow = NULL, labCol = NULL, srtRow = NULL, srtCol = NULL, adjRow = c(0,NA), adjCol = c(NA,0), offsetRow = 0.5, offsetCol = 0.5, colRow = NULL, colCol = NULL, # color key + density info key = TRUE, keysize = 1.5, density.info=c("histogram","density","none"), denscol=tracecol, symkey = any(x < 0, na.rm=TRUE) || symbreaks, densadj = 0.25, key.title = NULL, key.xlab = NULL, key.ylab = NULL, key.xtickfun = NULL, key.ytickfun = NULL, key.par=list(), # plot labels main = NULL, xlab = NULL, ylab = NULL, # plot layout lmat = NULL, lhei = NULL, lwid = NULL, # extras extrafun=NULL, ... ) } \arguments{ % Dendrogram Control \item{x}{numeric matrix of the values to be plotted. } \item{Rowv}{determines if and how the \emph{row} dendrogram should be reordered. By default, it is TRUE, which implies dendrogram is computed and reordered based on row means. If NULL or FALSE, then no dendrogram is computed and no reordering is done. If a \code{\link{dendrogram}}, then it is used "as-is", ie without any reordering. If a vector of integers, then dendrogram is computed and reordered based on the order of the vector.} \item{Colv}{determines if and how the \emph{column} dendrogram should be reordered. Has the options as the \code{Rowv} argument above and \emph{additionally} when \code{x} is a square matrix, \code{Colv="Rowv"} means that columns should be treated identically to the rows.} \item{distfun}{function used to compute the distance (dissimilarity) between both rows and columns. Defaults to \code{\link{dist}}.} \item{hclustfun}{function used to compute the hierarchical clustering when \code{Rowv} or \code{Colv} are not dendrograms. Defaults to \code{\link{hclust}}.} \item{dendrogram}{character string indicating whether to draw 'none', 'row', 'column' or 'both' dendrograms. Defaults to 'both'. However, if Rowv (or Colv) is FALSE or NULL and dendrogram is 'both', then a warning is issued and Rowv (or Colv) arguments are honoured.} \item{reorderfun}{\code{function(d, w)} of dendrogram and weights for reordering the row and column dendrograms. The default uses \code{\link{stats}{reorder.dendrogram}} }. \item{symm}{logical indicating if \code{x} should be treated \bold{symm}etrically; can only be true when \code{x} is a square matrix.} % data scaling \item{scale}{character indicating if the values should be centered and scaled in either the row direction or the column direction, or none. The default is \code{"none"}.} \item{na.rm}{logical indicating whether \code{NA}'s should be removed.} % image plot \item{revC}{logical indicating if the column order should be \code{\link{rev}}ersed for plotting, such that e.g., for the symmetric case, the symmetry axis is as usual.} \item{add.expr}{expression that will be evaluated after the call to \code{image}. Can be used to add components to the plot.} \item{breaks}{(optional) Either a numeric vector indicating the splitting points for binning \code{x} into colors, or a integer number of break points to be used, in which case the break points will be spaced equally between \code{min(x)} and \code{max(x)}.} \item{symbreaks}{Boolean indicating whether breaks should be made symmetric about 0. Defaults to \code{TRUE} if the data includes negative values, and to \code{FALSE} otherwise.} \item{col}{colors used for the image. Defaults to heat colors (\code{heat.colors}).} % block separation \item{colsep, rowsep, sepcolor}{(optional) vector of integers indicating which columns or rows should be separated from the preceding columns or rows by a narrow space of color \code{sepcolor}.} \item{sepwidth}{(optional) Vector of length 2 giving the width (colsep) or height (rowsep) the separator box drawn by colsep and rowsep as a function of the width (colsep) or height (rowsep) of a cell. Defaults to \code{c(0.05, 0.05)}} % cell labeling \item{cellnote}{(optional) matrix of character strings which will be placed within each color cell, e.g. p-value symbols.} \item{notecex}{(optional) numeric scaling factor for \code{cellnote} items.} \item{notecol}{(optional) character string specifying the color for \code{cellnote} text. Defaults to "cyan".} \item{na.color}{Color to use for missing value (\code{NA}). Defaults to the plot background color.} % level trace \item{trace}{character string indicating whether a solid "trace" line should be drawn across 'row's or down 'column's, 'both' or 'none'. The distance of the line from the center of each color-cell is proportional to the size of the measurement. Defaults to 'column'.} \item{tracecol}{character string giving the color for "trace" line. Defaults to "cyan".} \item{hline, vline, linecol}{Vector of values within cells where a horizontal or vertical dotted line should be drawn. The color of the line is controlled by \code{linecol}. Horizontal lines are only plotted if \code{trace} is 'row' or 'both'. Vertical lines are only drawn if \code{trace} 'column' or 'both'. \code{hline} and \code{vline} default to the median of the breaks, \code{linecol} defaults to the value of \code{tracecol}.} % Row/Column Labeling \item{margins}{numeric vector of length 2 containing the margins (see \code{\link{par}(mar= *)}) for column and row names, respectively.} \item{ColSideColors}{(optional) character vector of length \code{ncol(x)} containing the color names for a horizontal side bar that may be used to annotate the columns of \code{x}.} \item{RowSideColors}{(optional) character vector of length \code{nrow(x)} containing the color names for a vertical side bar that may be used to annotate the rows of \code{x}.} \item{cexRow, cexCol}{positive numbers, used as \code{cex.axis} in for the row or column axis labeling. The defaults currently only use number of rows or columns, respectively.} \item{labRow, labCol}{character vectors with row and column labels to use; these default to \code{rownames(x)} or \code{colnames(x)}, respectively.} \item{srtRow, srtCol}{angle of row/column labels, in degrees from horizontal} \item{adjRow, adjCol}{2-element vector giving the (left-right, top-bottom) justification of row/column labels (relative to the text orientation).} \item{offsetRow, offsetCol}{Number of character-width spaces to place between row/column labels and the edge of the plotting region.} \item{colRow, colCol}{color of row/column labels, either a scalar to set the color of all labels the same, or a vector providing the colors of each label item} % Color key and density info \item{key}{logical indicating whether a color-key should be shown.} \item{keysize}{numeric value indicating the size of the key} \item{density.info}{character string indicating whether to superimpose a 'histogram', a 'density' plot, or no plot ('none') on the color-key.} \item{denscol}{character string giving the color for the density display specified by \code{density.info}, defaults to the same value as \code{tracecol}.} \item{symkey}{Boolean indicating whether the color key should be made symmetric about 0. Defaults to \code{TRUE} if the data includes negative values, and to \code{FALSE} otherwise.} \item{densadj}{Numeric scaling value for tuning the kernel width when a density plot is drawn on the color key. (See the \code{adjust} parameter for the \code{density} function for details.) Defaults to 0.25.} \item{key.title}{main title of the color key. If set to NA no title will be plotted.} \item{key.xlab}{x axis label of the color key. If set to NA no label will be plotted.} \item{key.ylab}{y axis label of the color key. If set to NA no label will be plotted.} \item{key.xtickfun}{function computing tick location and labels for the xaxis of the color key. Returns a named list containing parameters that can be passed to \code{axis}. See examples.} \item{key.ytickfun}{function computing tick location and labels for the y axis of the color key. Returns a named list containing parameters that can be passed to \code{axis}. See examples.} \item{key.par}{graphical parameters for the color key. Named list that can be passed to \code{par}.} % plot labels \item{main, xlab, ylab}{main, x- and y-axis titles; defaults to none.} % figure layout \item{lmat, lhei, lwid}{visual layout: position matrix, column height, column width. See below for details} \item{extrafun}{A function to be called after all other work. See examples.} \item{...}{additional arguments passed on to \code{\link{image}} } } \details{ If either \code{Rowv} or \code{Colv} are dendrograms they are honored (and not reordered). Otherwise, dendrograms are computed as \code{dd <- as.dendrogram(hclustfun(distfun(X)))} where \code{X} is either \code{x} or \code{t(x)}.\cr If either is a vector (of \dQuote{weights}) then the appropriate dendrogram is reordered according to the supplied values subject to the constraints imposed by the dendrogram, by \code{\link{reorder}(dd, Rowv)}, in the row case. %% If either is missing, as by default, then the ordering of the corresponding dendrogram is by the mean value of the rows/columns, i.e., in the case of rows, \code{Rowv <- rowMeans(x, na.rm=na.rm)}. %% If either is \code{\link{NULL}}, \emph{no reordering} will be done for the corresponding side. If \code{scale="row"} (or \code{scale="col"}) the rows (columns) are scaled to have mean zero and standard deviation one. There is some empirical evidence from genomic plotting that this is useful. The default colors range from red to white (\code{heat.colors}) and are not pretty. Consider using enhancements such as the \pkg{RColorBrewer} package, \url{https://cran.r-project.org/package=RColorBrewer} to select better colors. By default four components will be displayed in the plot. At the top left is the color key, top right is the column dendrogram, bottom left is the row dendrogram, bottom right is the image plot. When RowSideColor or ColSideColor are provided, an additional row or column is inserted in the appropriate location. This layout can be overriden by specifiying appropriate values for \code{lmat}, \code{lwid}, and \code{lhei}. \code{lmat} controls the relative postition of each element, while \code{lwid} controls the column width, and \code{lhei} controls the row height. See the help page for \code{\link[graphics]{layout}} for details on how to use these arguments. } \note{ The original rows and columns are reordered to match the dendrograms \code{Rowv} and \code{Colv} (if present). \code{heatmap.2()} uses \code{\link{layout}} to arragent the plot elements. Consequentially, it can \bold{not} be used in a multi column/row layout using \code{\link{layout}(\dots)}, \code{\link{par}(mfrow=\dots)} or \code{(mfcol=\dots)}. } \value{ Invisibly, a list with components \item{rowInd}{row index permutation vector as returned by \code{\link{order.dendrogram}}.} \item{colInd}{column index permutation vector.} \item{call}{the matched call} \item{rowMeans, rowSDs}{mean and standard deviation of each row: only present if \code{scale="row"}} \item{colMeans, colSDs}{mean and standard deviation of each column: only present if \code{scale="column"}} \item{carpet}{reordered and scaled 'x' values used generate the main 'carpet'} \item{rowDendrogram}{row dendrogram, if present} \item{colDendrogram}{column dendrogram, if present} \item{breaks}{values used for color break points} \item{col}{colors used} \item{vline}{center-line value used for column trace, present only if \code{trace="both"} or \code{trace="column"} } \item{hline}{center-line value used for row trace, present only if \code{trace="both"} or \code{trace="row"} } \item{colorTable}{A three-column data frame providing the lower and upper bound and color for each bin} \item{layout}{A named list containing the values used for \code{lmat}, \code{lhei}, and \code{lwid}. } } \author{Andy Liaw, original; R. Gentleman, M. Maechler, W. Huber, G. Warnes, revisions.} \seealso{\code{\link{image}}, \code{\link{hclust}}} \examples{ data(mtcars) x <- as.matrix(mtcars) rc <- rainbow(nrow(x), start=0, end=.3) cc <- rainbow(ncol(x), start=0, end=.3) ## ## demonstrate the effect of row and column dendrogram options ## heatmap.2(x) ## default - dendrogram plotted and reordering done. heatmap.2(x, dendrogram="none") ## no dendrogram plotted, but reordering done. heatmap.2(x, dendrogram="row") ## row dendrogram plotted and row reordering done. heatmap.2(x, dendrogram="col") ## col dendrogram plotted and col reordering done. heatmap.2(x, keysize=2) ## default - dendrogram plotted and reordering done. heatmap.2(x, Rowv=FALSE, dendrogram="both") ## generates a warning! heatmap.2(x, Rowv=NULL, dendrogram="both") ## generates a warning! heatmap.2(x, Colv=FALSE, dendrogram="both") ## generates a warning! ## Reorder dendrogram by branch means rather than sums heatmap.2(x, reorderfun=function(d, w) reorder(d, w, agglo.FUN = mean) ) ## plot a sub-cluster using the same color coding as for the full heatmap full <- heatmap.2(x) heatmap.2(x, Colv=full$colDendrogram[[2]], breaks=full$breaks) # column subset heatmap.2(x, Rowv=full$rowDendrogram[[1]], breaks=full$breaks) # row subset heatmap.2(x, Colv=full$colDendrogram[[2]], Rowv=full$rowDendrogram[[1]], breaks=full$breaks) # both ## Show effect of row and column label rotation heatmap.2(x, srtCol=NULL) heatmap.2(x, srtCol=0, adjCol = c(0.5,1) ) heatmap.2(x, srtCol=45, adjCol = c(1,1) ) heatmap.2(x, srtCol=135, adjCol = c(1,0) ) heatmap.2(x, srtCol=180, adjCol = c(0.5,0) ) heatmap.2(x, srtCol=225, adjCol = c(0,0) ) ## not very useful heatmap.2(x, srtCol=270, adjCol = c(0,0.5) ) heatmap.2(x, srtCol=315, adjCol = c(0,1) ) heatmap.2(x, srtCol=360, adjCol = c(0.5,1) ) heatmap.2(x, srtRow=45, adjRow=c(0, 1) ) heatmap.2(x, srtRow=45, adjRow=c(0, 1), srtCol=45, adjCol=c(1,1) ) heatmap.2(x, srtRow=45, adjRow=c(0, 1), srtCol=270, adjCol=c(0,0.5) ) ## Show effect of offsetRow/offsetCol (only works when srtRow/srtCol is ## not also present) heatmap.2(x, offsetRow=0, offsetCol=0) heatmap.2(x, offsetRow=1, offsetCol=1) heatmap.2(x, offsetRow=2, offsetCol=2) heatmap.2(x, offsetRow=-1, offsetCol=-1) heatmap.2(x, srtRow=0, srtCol=90, offsetRow=0, offsetCol=0) heatmap.2(x, srtRow=0, srtCol=90, offsetRow=1, offsetCol=1) heatmap.2(x, srtRow=0, srtCol=90, offsetRow=2, offsetCol=2) heatmap.2(x, srtRow=0, srtCol=90, offsetRow=-1, offsetCol=-1) ## Show how to use 'extrafun' to replace the 'key' with a scatterplot lmat <- rbind( c(5,3,4), c(2,1,4) ) lhei <- c(1.5, 4) lwid <- c(1.5, 4, 0.75) myplot <- function() { oldpar <- par("mar") par(mar=c(5.1, 4.1, 0.5, 0.5)) plot(mpg ~ hp, data=x) } heatmap.2(x, lmat=lmat, lhei=lhei, lwid=lwid, key=FALSE, extrafun=myplot) ## show how to customize the color key heatmap.2(x, key.title=NA, # no title key.xlab=NA, # no xlab key.par=list(mgp=c(1.5, 0.5, 0), mar=c(2.5, 2.5, 1, 0)), key.xtickfun=function() { breaks <- parent.frame()$breaks return(list( at=parent.frame()$scale01(c(breaks[1], breaks[length(breaks)])), labels=c(as.character(breaks[1]), as.character(breaks[length(breaks)])) )) }) heatmap.2(x, breaks=256, key.title=NA, key.xlab=NA, key.par=list(mgp=c(1.5, 0.5, 0), mar=c(1, 2.5, 1, 0)), key.xtickfun=function() { cex <- par("cex")*par("cex.axis") side <- 1 line <- 0 col <- par("col.axis") font <- par("font.axis") mtext("low", side=side, at=0, adj=0, line=line, cex=cex, col=col, font=font) mtext("high", side=side, at=1, adj=1, line=line, cex=cex, col=col, font=font) return(list(labels=FALSE, tick=FALSE)) }) ## ## Show effect of z-score scaling within columns, blue-red color scale ## hv <- heatmap.2(x, col=bluered, scale="column", tracecol="#303030") ### ## Look at the return values ### names(hv) ## Show the mapping of z-score values to color bins hv$colorTable ## Extract the range associated with white hv$colorTable[hv$colorTable[,"color"]=="#FFFFFF",] ## Determine the original data values that map to white whiteBin <- unlist(hv$colorTable[hv$colorTable[,"color"]=="#FFFFFF",1:2]) rbind(whiteBin[1] * hv$colSDs + hv$colMeans, whiteBin[2] * hv$colSDs + hv$colMeans ) ## ## A more decorative heatmap, with z-score scaling along columns ## hv <- heatmap.2(x, col=cm.colors(255), scale="column", RowSideColors=rc, ColSideColors=cc, margin=c(5, 10), xlab="specification variables", ylab= "Car Models", main="heatmap(, ..., scale=\"column\")", tracecol="green", density="density") ## Note that the breakpoints are now symmetric about 0 ## Color the labels to match RowSideColors and ColSideColors hv <- heatmap.2(x, col=cm.colors(255), scale="column", RowSideColors=rc, ColSideColors=cc, margin=c(5, 10), xlab="specification variables", ylab= "Car Models", main="heatmap(, ..., scale=\"column\")", tracecol="green", density="density", colRow=rc, colCol=cc, srtCol=45, adjCol=c(0.5,1)) %% want example using the `add.exp' argument! data(attitude) round(Ca <- cor(attitude), 2) symnum(Ca) # simple graphic # with reorder heatmap.2(Ca, symm=TRUE, margin=c(6, 6), trace="none" ) # without reorder heatmap.2(Ca, Rowv=FALSE, symm=TRUE, margin=c(6, 6), trace="none" ) ## Place the color key below the image plot heatmap.2(x, lmat=rbind( c(0, 3), c(2,1), c(0,4) ), lhei=c(1.5, 4, 2 ) ) ## Place the color key to the top right of the image plot heatmap.2(x, lmat=rbind( c(0, 3, 4), c(2,1,0 ) ), lwid=c(1.5, 4, 2 ) ) ## For variable clustering, rather use distance based on cor(): data(USJudgeRatings) symnum( cU <- cor(USJudgeRatings) ) hU <- heatmap.2(cU, Rowv=FALSE, symm=TRUE, col=topo.colors(16), distfun=function(c) as.dist(1 - c), trace="none") ## The Correlation matrix with same reordering: hM <- format(round(cU, 2)) hM # now with the correlation matrix on the plot itself heatmap.2(cU, Rowv=FALSE, symm=TRUE, col=rev(heat.colors(16)), distfun=function(c) as.dist(1 - c), trace="none", cellnote=hM) ## genechip data examples \dontrun{ library(affy) data(SpikeIn) pms <- SpikeIn@pm # just the data, scaled across rows heatmap.2(pms, col=rev(heat.colors(16)), main="SpikeIn@pm", xlab="Relative Concentration", ylab="Probeset", scale="row") # fold change vs "12.50" sample data <- pms / pms[, "12.50"] data <- ifelse(data>1, data, -1/data) heatmap.2(data, breaks=16, col=redgreen, tracecol="blue", main="SpikeIn@pm Fold Changes\nrelative to 12.50 sample", xlab="Relative Concentration", ylab="Probeset") } } \keyword{hplot} gplots/man/textplot.Rd0000644000175100001440000001264012471456253014541 0ustar hornikusers\name{textplot} \alias{textplot} \alias{textplot.default} \alias{textplot.character} \alias{textplot.matrix} \alias{textplot.data.frame} \title{Display text information in a graphics plot.} \description{ This function displays text output in a graphics window. It is the equivalent of 'print' except that the output is displayed as a plot. } \usage{ textplot(object, halign="center", valign="center", cex, ...) \method{textplot}{default}(object, halign=c("center","left","right"), valign=c("center", "top", "bottom"), cex, ... ) \method{textplot}{character}(object, halign = c("center", "left", "right"), valign = c("center", "top", "bottom"), cex, fixed.width=TRUE, cspace=1, lspace=1, mar=c(0, 0, 3, 0) + 0.1, tab.width = 8, ...) \method{textplot}{data.frame}(object, halign = c("center", "left", "right"), valign = c("center", "top", "bottom"), cex, ...) \method{textplot}{matrix}(object, halign = c("center", "left", "right"), valign = c("center", "top", "bottom"), cex, cmar = 2, rmar = 0.5, show.rownames = TRUE, show.colnames = TRUE, hadj = 1, vadj = 1, mar = c(1, 1, 4, 1) + 0.1, col.data = par("col"), col.rownames = par("col"), col.colnames = par("col"), ...) } \arguments{ \item{object}{Object to be displayed.} \item{halign}{Alignment in the x direction, one of "center", "left", or "right". } \item{valign}{Alignment in the y direction, one of "center", "top" , or "bottom"} \item{cex}{Character size, see \code{\link{par}} for details. If unset, the code will attempt to use the largest value which allows the entire object to be displayed.} \item{fixed.width}{Logical value indicating whether to emulate a fixed-width font by aligning characters in each row of text. This is usually necessary for text-formatted tables display properly. Defaults to 'TRUE'.} \item{cspace}{Space between characters as a multiple of the width of the letter 'W'. This only applies when \code{fixed.width==TRUE}. } \item{lspace}{Line spacing. This only applies when \code{fixed.width==TRUE}.} \item{mar}{Figure margins, see the documentation for \code{par}.} \item{rmar, cmar}{Space between rows or columns, in fractions of the size of the letter 'M'.} \item{show.rownames, show.colnames}{Logical value indicating whether row or column names will be displayed.} \item{hadj,vadj}{Vertical and horizontal location of elements within matrix cells. These have the same meaning as the \code{adj} graphics paramter (see \code{\link{par}}).} \item{col.data}{Colors for data elements. If a single value is provided, all data elements will be the same color. If a matrix matching the dimensions of the data is provided, each data element will receive the specified color.} \item{col.rownames, col.colnames}{Colors for row names and column names, respectively. Either may be specified as a scalar or a vector of appropriate length.} \item{tab.width}{Width of a single tab stop, in characters} \item{\dots}{ Optional arguments passed to the text plotting command or specialied object methods} } \details{ A new plot is created and the object is displayed using the largest font that will fit on in the plotting region. The \code{halign} and \code{valign} parameters can be used to control the location of the string within the plotting region. For matrixes and vectors a specialized textplot function is available, which plots each of the cells individually, with column widths set according to the sizes of the column elements. If present, row and column labels will be displayed in a bold font. } \value{ The character scaling factor (\code{cex}) used. } \author{Gregory R. Warnes \email{greg@warnes.net}} \seealso{ \code{\link{plot}}, \code{\link{text}}, \code{\link[utils]{capture.output}} } \examples{ \dontrun{ ### simple examples # show R version information textplot(version) # show the alphabet as a single string textplot( paste(letters[1:26], collapse=" ") ) # show the alphabet as a matrix textplot( matrix(letters[1:26], ncol=2)) ### Make a nice 4 way display with two plots and two text summaries data(iris) par(mfrow=c(2,2)) plot( Sepal.Length ~ Species, data=iris, border="blue", col="cyan", main="Boxplot of Sepal Length by Species" ) plotmeans( Sepal.Length ~ Species, data=iris, barwidth=2, connect=FALSE, main="Means and 95\% Confidence Intervals\nof Sepal Length by Species") info <- sapply( split(iris$Sepal.Length, iris$Species), function(x) round(c(Mean=mean(x), SD=sd(x), N=gdata::nobs(x)),2) ) textplot( info, valign="top" ) title("Sepal Length by Species") reg <- lm( Sepal.Length ~ Species, data=iris ) textplot( capture.output(summary(reg)), valign="top") title("Regression of Sepal Length by Species") par(mfrow=c(1,1)) ### Show how to control text color cols <- c("red", "green", "magenta", "forestgreen") mat <- cbind(name=cols, t(col2rgb(cols)), hex=col2hex(cols)) textplot(mat, col.data=matrix(cols, nrow=length(cols), byrow=FALSE, ncol=5), ) ### Show how to manually tune the character size data(iris) reg <- lm( Sepal.Length ~ Species, data=iris ) text <- capture.output(summary(reg)) # do the plot and capture the character size used textplot(text, valign="top") # see what size was used cex # now redo the plot at 80\% size textplot( text, valign="top", cex=cex*0.80) } } \keyword{hplot} gplots/man/gplots-deprecated.Rd0000644000175100001440000000103412676233266016263 0ustar hornikusers\name{gplots-deprecated} \alias{deprecated} \title{Deprecated functions} \description{ These functions have been deprecated and will be removed in future releases of gplots. } \usage{ ## No deprecated functions at this time ## } %\arguments{ %} \details{ These functions have been deprecated. Please refer to the manual page for the replacement function: \itemize{ \item (No deprecated functions at this time) } } \author{Gregory R. Warnes \email{greg@warnes.net}} \seealso{ \code{\link[base]{Deprecated}} } \keyword{misc} gplots/man/rich.colors.Rd0000644000175100001440000000317712471456253015110 0ustar hornikusers\name{rich.colors} \alias{rich.colors} \title{Rich Color Palettes} \description{ Create a vector of \code{n} colors that are perceptually equidistant and in an order that is easy to interpret. } \usage{ rich.colors(n, palette="temperature", alpha=1.0, rgb=FALSE, plot=FALSE) } \arguments{ \item{n}{number of colors to generate.} \item{palette}{palette to use: \code{"temperature"} contains blue-green-yellow-red, and \code{"blues"} contains black-blue-white.} \item{alpha}{alpha transparency, from 0 (fully transparent) to 1 (opaque).} \item{rgb}{if \code{TRUE} then a matrix of RGBA values is included as an attribute.} \item{plot}{whether to plot a descriptive color diagram.} } \value{A character vector of color codes.} \author{Arni Magnusson.} \seealso{ \code{\link{rgb}}, \code{\link{rainbow}}, \code{\link{heat.colors}}. } \examples{ m <- abs(matrix(1:120+rnorm(120), nrow=15, ncol=8)) opar <- par(bg="gray", mfrow=c(1,2)) matplot(m, type="l", lty=1, lwd=3, col=rich.colors(8)) matplot(m, type="l", lty=1, lwd=3, col=rich.colors(8,"blues")) par(opar) barplot(rep(1,100), col=rich.colors(100), space=0, border=0, axes=FALSE) barplot(rep(1,20), col=rich.colors(40)[11:30]) # choose subset plot(m, rev(m), ylim=c(120,0), pch=16, cex=2, col=rich.colors(200,"blues",alpha=0.6)[1:120]) # semitransparent rich.colors(100, plot=TRUE) # describe rgb recipe par(mfrow=c(2,2)) barplot(m, col=heat.colors(15), main="\nheat.colors") barplot(m, col=1:15, main="\ndefault palette") barplot(m, col=rich.colors(15), main="\nrich.colors") barplot(m, col=rainbow(15), main="\nrainbow") par(opar) } % Graphics \keyword{color} gplots/man/venn.Rd0000644000175100001440000001120612675272277013631 0ustar hornikusers\name{venn} \alias{venn} \alias{plot.venn} \title{Plot a Venn diagram} \description{ Plot a Venn diagrams for up to 5 sets } \usage{ venn(data, universe=NA, small=0.7, showSetLogicLabel=FALSE, simplify=FALSE, show.plot=TRUE, intersections=TRUE, names, ...) \method{plot}{venn}(x, y, ..., small=0.7, showSetLogicLabel=FALSE, simplify=FALSE) } \arguments{ \item{data,x}{Either a list list containing vectors of names or indices of group intersections, or a data frame containing boolean indicators of group intersectionship (see below)} \item{universe}{Subset of valid name/index elements. Values ignore values in code{data} not in this list will be ignored. Use \code{NA} to use all elements of \code{data} (the default).} \item{small}{Character scaling of the smallest group counts} \item{showSetLogicLabel}{Logical flag indicating whether the internal group label should be displayed} \item{simplify}{Logical flag indicating whether unobserved groups should be omitted.} \item{show.plot}{Logical flag indicating whether the plot should be displayed. If false, simply returns the group count matrix.} \item{intersections}{Logical flag indicating if the returned object should have the attribute "individuals.in.intersections" featuring for every set a list of individuals that are assigned to it.} \item{y}{Ignored} \item{...}{Optional graphical parameters.} \item{names}{Optional vector of group names.} } \details{ \code{data} should be either a named list of vectors containing character string names ("GeneAABBB", "GeneBBBCY", .., "GeneXXZZ") or indexes of group intersections (1, 2, .., N), or a data frame containing indicator variables (TRUE, FALSE, TRUE, ..) for group intersectionship. Group names will be taken from the component list element or column names. } \value{ Invisibly returns an object of class "venn", containing: \itemize{ \item A matrix of all possible sets of groups, and the observed count of items belonging to each The fist column contains observed counts, subsequent columns contain 0-1 indicators of group intersectionship. \item If \code{intersections=TRUE}, the attribute \code{intersections} will be a list of vectors containing the names of the elements belonging to each subset. } } \author{ Steffen Moeller \email{steffen\_moeller@gmx.de}, with cleanup and packaging by Gregory R. Warnes \email{greg@warnes.net}.} \examples{ ## ## Example using a list of item names belonging to the ## specified group. ## ## construct some fake gene names.. oneName <- function() paste(sample(LETTERS,5,replace=TRUE),collapse="") geneNames <- replicate(1000, oneName()) ## GroupA <- sample(geneNames, 400, replace=FALSE) GroupB <- sample(geneNames, 750, replace=FALSE) GroupC <- sample(geneNames, 250, replace=FALSE) GroupD <- sample(geneNames, 300, replace=FALSE) input <-list(GroupA,GroupB,GroupC,GroupD) input tmp <- venn(input) attr(tmp, "intersections") ## ## Example using a list of item indexes belonging to the ## specified group. ## GroupA.i <- which(geneNames \%in\% GroupA) GroupB.i <- which(geneNames \%in\% GroupB) GroupC.i <- which(geneNames \%in\% GroupC) GroupD.i <- which(geneNames \%in\% GroupD) input.i <-list(A=GroupA.i,B=GroupB.i,C=GroupC.i,D=GroupD.i) input.i venn(input.i) ## ## Example using a data frame of indicator ('f'lag) columns ## GroupA.f <- geneNames \%in\% GroupA GroupB.f <- geneNames \%in\% GroupB GroupC.f <- geneNames \%in\% GroupC GroupD.f <- geneNames \%in\% GroupD input.df <- data.frame(A=GroupA.f,B=GroupB.f,C=GroupC.f,D=GroupD.f) head(input.df) venn(input.df) ## smaller set to create empty groupings small <- input.df[1:20,] venn(small, simplify=FALSE) # with empty groupings venn(small, simplify=TRUE) # without empty groupings ## Capture group counts, but don't plot tmp <- venn(input, show.plot=FALSE) tmp ## Show internal binary group labels venn(input, showSetLogicLabel=TRUE) ## Limit universe tmp <- venn(input, universe=geneNames[1:100]) tmp ## ## Example to determine which elements are in A and B but not in ## C and D using the 'intersections' attribute. ## tmp <- venn(input, intersection=TRUE) isect <- attr(tmp, "intersection") # Look at all of the subsets str(isect) # Extract and combine the subsets of interest.. AandB <- unique(c(isect$A, isect$B, isect$'A:B')) # and look at the results str(AandB) ## ## The full set of elements of each intersection is provided in the ## "interesections" attribute. ## a<-venn(list(1:5,3:8), show.plot=FALSE) intersections<-attr(a,"intersections") print(intersections) # $A # [1] "1" "2" # # $B # [1] "6" "7" "8" # # $`A:B` # [1] "3" "4" "5" } \keyword{hplot} gplots/man/qqnorm.aov.Rd0000644000175100001440000000430512471456253014756 0ustar hornikusers\name{qqnorm.aov} \alias{qqnorm.aov} \title{ Makes a half or full normal plot for the effects from an aov model } \description{ Makes a half or full normal plot for the effects from a model inheriting from class \code{aov}. One can interactively label the points in the plot. } \usage{ \method{qqnorm}{aov}(y, full=FALSE, label=FALSE, omit=NULL, xlab=paste(if (full) "" else "Half", " Normal plot"), ylab="Effects", ...) } \arguments{ \item{y}{A model object inheriting from \code{aov}} \item{full}{Full or half normal plot (half is default) } \item{label}{If \code{TRUE}, function allows interactive labelling of points in plot, using the mouse } \item{omit}{Numeric or character vector of effects to omit, the intercept is always omitted} \item{xlab}{Horizontal axix label } \item{ylab}{Vertical axis label } \item{\dots}{Further arguments to be given to the plot function } } \details{ Produces a (half) normal plot of the effects from an AOV model. The idea behind the plot is that most effects will be small or null, and this effects can be used as a basis for estimation of the experimental variance. This small effects will show up in the plot as a straight line, other effects can be judged against this as a background. Heavily used by Box, Hunter \& Hunter, which attributes the idea to Daniel. This is a simpler implementation than the one in S-Plus. } \value{ If \code{label=TRUE}, the vector of points identified, else nothing of interest. } \references{ Box, Hunter and Hunter: Statistics for Experimenters. An Introduction to Design, Data Analysis and Model Building. Wiley. \cr Daniel, C (1976): Applications of Statistics to Industrial Experimentation. Wiley. \cr Daniel, C (1959): Use of half-normal plot in interpreting factorial two-level experiments. \emph{Technometrics.}\bold{1}, 149. } \author{Kjetil Halvorsen \email{kjetil@entelnet.bo}} \examples{ library(MASS) data(npk) npk.aov <- aov(yield ~ block + N*P*K, npk) qqnorm(npk.aov) ## interactive labeling of points. Click mouse on points to show label. if (dev.interactive()) qqnorm(npk.aov, omit=2:6, label=TRUE) } \keyword{ hplot }% \keyword{ design }