From 4d1dcd2e65587fae7f6e36deb42834425f2cac8c Mon Sep 17 00:00:00 2001
From: Gael varoquaux <gael.varoquaux@normalesup.org>
Date: Sat, 3 Sep 2011 09:10:05 +0200
Subject: [PATCH] DOC: scikits.learn -> sklearn

---
 doc/datasets/index.rst                          |   8 ++++----
 doc/datasets/labeled_faces.rst                  |   4 ++--
 doc/datasets/labeled_faces_fixture.py           |   2 +-
 doc/datasets/mldata.rst                         |   6 +++---
 doc/datasets/mldata_fixture.py                  |   4 ++--
 doc/datasets/twenty_newsgroups.rst              |  12 ++++++------
 doc/developers/performance.rst                  |  12 ++++++------
 examples/cluster/README.txt                     |   2 +-
 examples/covariance/README.txt                  |   2 +-
 examples/decomposition/README.txt               |   2 +-
 examples/gaussian_process/README.txt            |   2 +-
 .../gaussian_process/gp_diabetes_dataset.py     |   2 +-
 examples/linear_model/README.txt                |   2 +-
 examples/manifold/README.txt                    |   2 +-
 examples/manifold/plot_lle_digits.py.prof       | Bin 91205 -> 0 bytes
 examples/mixture/README.txt                     |   2 +-
 examples/svm/README.txt                         |   2 +-
 setup.py                                        |   2 +-
 18 files changed, 34 insertions(+), 34 deletions(-)
 delete mode 100644 examples/manifold/plot_lle_digits.py.prof

diff --git a/doc/datasets/index.rst b/doc/datasets/index.rst
index 18c66b8975..96ea729f81 100644
--- a/doc/datasets/index.rst
+++ b/doc/datasets/index.rst
@@ -3,7 +3,7 @@
 
     >>> import numpy as np
     >>> import os
-    >>> from scikits.learn import datasets
+    >>> from sklearn import datasets
     >>> datasets.mldata.urllib2 = mock_urllib2
 
 .. _datasets:
@@ -12,9 +12,9 @@
 Dataset loading utilities
 =========================
 
-.. currentmodule:: scikits.learn.datasets
+.. currentmodule:: sklearn.datasets
 
-The ``scikits.learn.datasets`` package embeds some small toy datasets
+The ``sklearn.datasets`` package embeds some small toy datasets
 as introduced in the "Getting Started" section.
 
 To evaluate the impact of the scale of the dataset (``n_samples`` and
@@ -108,7 +108,7 @@ Scipy sparse CSR matrices are used for ``X`` and numpy arrays are used for ``y``
 
 You may load a dataset like this::
 
-  >>> from scikits.learn.datasets import load_svmlight_file
+  >>> from sklearn.datasets import load_svmlight_file
   >>> X_train, y_train = load_svmlight_file("/path/to/train_dataset.txt")
   ...                                                         # doctest: +SKIP
 
diff --git a/doc/datasets/labeled_faces.rst b/doc/datasets/labeled_faces.rst
index 89673b4cd2..7f86da507c 100644
--- a/doc/datasets/labeled_faces.rst
+++ b/doc/datasets/labeled_faces.rst
@@ -39,7 +39,7 @@ less than 200ms by using a memmaped version memoized on the disk in the
 The first loader is used for the Face Identification task: a multi-class
 classification task (hence supervised learning)::
 
-  >>> from scikits.learn.datasets import fetch_lfw_people
+  >>> from sklearn.datasets import fetch_lfw_people
   >>> lfw_people = fetch_lfw_people(min_faces_per_person=70, resize=0.4)
 
   >>> for name in lfw_people.target_names:
@@ -74,7 +74,7 @@ array::
 The second loader is typically used for the face verification task: each sample
 is a pair of two picture belonging or not to the same person::
 
-  >>> from scikits.learn.datasets import fetch_lfw_pairs
+  >>> from sklearn.datasets import fetch_lfw_pairs
   >>> lfw_pairs_train = fetch_lfw_pairs(subset='train')
 
   >>> list(lfw_pairs_train.target_names)
diff --git a/doc/datasets/labeled_faces_fixture.py b/doc/datasets/labeled_faces_fixture.py
index ac15044f1c..0d13c8ddd8 100644
--- a/doc/datasets/labeled_faces_fixture.py
+++ b/doc/datasets/labeled_faces_fixture.py
@@ -6,7 +6,7 @@ and cached in the past.
 from os.path import exists
 from os.path import join
 from nose import SkipTest
-from scikits.learn.datasets import get_data_home
+from sklearn.datasets import get_data_home
 
 
 def setup_module(module):
diff --git a/doc/datasets/mldata.rst b/doc/datasets/mldata.rst
index 12d824b2a2..65b10b3013 100644
--- a/doc/datasets/mldata.rst
+++ b/doc/datasets/mldata.rst
@@ -4,12 +4,12 @@ Downloading datasets from the mldata.org repository
 `mldata.org <http://mldata.org>`_ is a public repository for machine learning
 data, supported by the `PASCAL network <http://www.pascal-network.org>`_ .
 
-The ``scikits.learn.datasets`` package is able to directly download data
+The ``sklearn.datasets`` package is able to directly download data
 sets from the repository using the function ``fetch_mldata(dataname)``.
 
 For example, to download the MNIST digit recognition database::
 
-  >>> from scikits.learn.datasets import fetch_mldata
+  >>> from sklearn.datasets import fetch_mldata
   >>> mnist = fetch_mldata('MNIST original', data_home=custom_data_home)
 
 The MNIST database contains a total of 70000 examples of handwritten digits
@@ -36,7 +36,7 @@ datasets:
 
 * The data arrays in `mldata.org <http://mldata.org>`_ are most often
   shaped as ``(n_features, n_samples)``. This is the opposite of the
-  ``scikits.learn`` convention, so ``fetch_mldata`` transposes the matrix
+  ``scikit-learn`` convention, so ``fetch_mldata`` transposes the matrix
   by default. The ``transpose_data`` keyword controls this behavior::
 
     >>> iris = fetch_mldata('iris', data_home=custom_data_home)
diff --git a/doc/datasets/mldata_fixture.py b/doc/datasets/mldata_fixture.py
index 192daa4af5..2267288c38 100644
--- a/doc/datasets/mldata_fixture.py
+++ b/doc/datasets/mldata_fixture.py
@@ -5,8 +5,8 @@ Mock urllib2 access to mldata.org
 
 from os import makedirs
 from os.path import join
-from scikits.learn import datasets
-from scikits.learn.utils.testing import mock_urllib2
+from sklearn import datasets
+from sklearn.utils.testing import mock_urllib2
 import tempfile
 import scipy as sp
 import shutil
diff --git a/doc/datasets/twenty_newsgroups.rst b/doc/datasets/twenty_newsgroups.rst
index 13fd2f1955..c4fd379e21 100644
--- a/doc/datasets/twenty_newsgroups.rst
+++ b/doc/datasets/twenty_newsgroups.rst
@@ -13,21 +13,21 @@ provides a version where the data is already vectorized.
 
 This is not the case for this loader. Instead, it returns the list of
 the raw text files that can be fed to  text feature extractors such as
-:class:`scikits.learn.feature_extraction.text.Vectorizer` with custom
+:class:`sklearn.feature_extraction.text.Vectorizer` with custom
 parameters so as to extract feature vectors.
 
 
 Usage
 -----
 
-The ``scikits.learn.datasets.fetch_20newsgroups`` function is a data
+The ``sklearn.datasets.fetch_20newsgroups`` function is a data
 fetching / caching functions that downloads the data archive from
 the original `20 newsgroups website`_, extracts the archive contents
 in the ``~/scikit_learn_data/20news_home`` folder and calls the
-``scikits.learn.datasets.load_file`` on either the training or
+``sklearn.datasets.load_file`` on either the training or
 testing set folder, or both of them::
 
-  >>> from scikits.learn.datasets import fetch_20newsgroups
+  >>> from sklearn.datasets import fetch_20newsgroups
   >>> newsgroups_train = fetch_20newsgroups(subset='train')
 
   >>> from pprint import pprint
@@ -81,11 +81,11 @@ list of the categories to load to the ``fetch_20newsgroups`` function::
 In order to feed predictive or clustering models with the text data,
 one first need to turn the text into vectors of numerical values suitable
 for statistical analysis. This can be achieved with the utilities of the
-``scikits.learn.feature_extraction.text`` as demonstrated in the following
+``sklearn.feature_extraction.text`` as demonstrated in the following
 example that extract `TF-IDF`_ vectors of unigram tokens::
 
 
-  >>> from scikits.learn.feature_extraction.text import Vectorizer
+  >>> from sklearn.feature_extraction.text import Vectorizer
   >>> documents = [open(f).read() for f in newsgroups_train.filenames]
   >>> vectorizer = Vectorizer()
   >>> vectors = vectorizer.fit_transform(documents)
diff --git a/doc/developers/performance.rst b/doc/developers/performance.rst
index 250e0e82df..d962348e6d 100644
--- a/doc/developers/performance.rst
+++ b/doc/developers/performance.rst
@@ -26,7 +26,7 @@ code for the scikit-learn project.
 Python, Cython or C/C++?
 ========================
 
-.. currentmodule:: scikits.learn
+.. currentmodule:: sklearn
 
 In general, the scikit-learn project emphasizes the **readability** of
 the source code to make it easy for the project users to dive into the
@@ -89,9 +89,9 @@ Suppose we want to profile the Non Negative Matrix Factorization module
 of the scikit. Let us setup a new IPython session and load the digits
 dataset and as in the :ref:`example_decomposition_plot_nmf.py` example::
 
-  In [1]: from scikits.learn.decomposition import NMF
+  In [1]: from sklearn.decomposition import NMF
 
-  In [2]: from scikits.learn.datasets import load_digits
+  In [2]: from sklearn.datasets import load_digits
 
   In [3]: X = load_digits().data
 
@@ -188,16 +188,16 @@ Towards the end of the file, define the ``%lprun`` magic::
 
 Now restart IPython and let us use this new toy::
 
-  In [1]: from scikits.learn.datasets import load_digits
+  In [1]: from sklearn.datasets import load_digits
 
-  In [2]: from scikits.learn.decomposition.nmf import _nls_subproblem, NMF
+  In [2]: from sklearn.decomposition.nmf import _nls_subproblem, NMF
 
   In [3]: X = load_digits().data
 
   In [4]: %lprun -f _nls_subproblem NMF(n_components=16, tol=1e-2).fit(X)
   Timer unit: 1e-06 s
 
-  File: scikits/learn/decomposition/nmf.py
+  File: sklearn/decomposition/nmf.py
   Function: _nls_subproblem at line 137
   Total time: 1.73153 s
 
diff --git a/examples/cluster/README.txt b/examples/cluster/README.txt
index 767b917d2b..1b38bab9cb 100644
--- a/examples/cluster/README.txt
+++ b/examples/cluster/README.txt
@@ -3,5 +3,5 @@
 Clustering
 ----------
 
-Examples concerning the `scikits.learn.cluster` package.
+Examples concerning the `sklearn.cluster` package.
 
diff --git a/examples/covariance/README.txt b/examples/covariance/README.txt
index 5160f8bb61..0767f1031d 100644
--- a/examples/covariance/README.txt
+++ b/examples/covariance/README.txt
@@ -1,4 +1,4 @@
 Covariance estimation
 ---------------------
 
-Examples concerning the `scikits.learn.covariance` package.
+Examples concerning the `sklearn.covariance` package.
diff --git a/examples/decomposition/README.txt b/examples/decomposition/README.txt
index c2bd41efe0..b5f710c810 100644
--- a/examples/decomposition/README.txt
+++ b/examples/decomposition/README.txt
@@ -3,5 +3,5 @@
 Decomposition 
 -------------
 
-Examples concerning the `scikits.learn.decomposition` package.
+Examples concerning the `sklearn.decomposition` package.
 
diff --git a/examples/gaussian_process/README.txt b/examples/gaussian_process/README.txt
index c749e7a7e9..216660e8ac 100644
--- a/examples/gaussian_process/README.txt
+++ b/examples/gaussian_process/README.txt
@@ -3,5 +3,5 @@
 Gaussian Process for Machine Learning
 -------------------------------------
 
-Examples concerning the `scikits.learn.gaussian_process` package.
+Examples concerning the `sklearn.gaussian_process` package.
 
diff --git a/examples/gaussian_process/gp_diabetes_dataset.py b/examples/gaussian_process/gp_diabetes_dataset.py
index f3d1e46cdf..fbf0b791b6 100644
--- a/examples/gaussian_process/gp_diabetes_dataset.py
+++ b/examples/gaussian_process/gp_diabetes_dataset.py
@@ -27,7 +27,7 @@ from sklearn import datasets
 from sklearn.gaussian_process import GaussianProcess
 from sklearn.cross_val import cross_val_score, KFold
 
-# Load the dataset from scikits' data sets
+# Load the dataset from scikit's data sets
 diabetes = datasets.load_diabetes()
 X, y = diabetes.data, diabetes.target
 
diff --git a/examples/linear_model/README.txt b/examples/linear_model/README.txt
index 77439a5aa1..d70d3bed9d 100644
--- a/examples/linear_model/README.txt
+++ b/examples/linear_model/README.txt
@@ -2,4 +2,4 @@
 Generalized Linear Models
 -------------------------
 
-Examples concerning the `scikits.learn.linear_model` package.
+Examples concerning the `sklearn.linear_model` package.
diff --git a/examples/manifold/README.txt b/examples/manifold/README.txt
index 42a5dfcca7..13a9ed3bbe 100644
--- a/examples/manifold/README.txt
+++ b/examples/manifold/README.txt
@@ -3,5 +3,5 @@
 Manifold learning
 -----------------------
 
-Examples concerning the `scikits.learn.manifold` package.
+Examples concerning the `sklearn.manifold` package.
 
diff --git a/examples/manifold/plot_lle_digits.py.prof b/examples/manifold/plot_lle_digits.py.prof
deleted file mode 100644
index 2d30366716f99aa15baa8284df16ef3f2900d2b0..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 91205
zcmZQzU|?Vd5ey6r0_qS3BLf420|Ns?(4XUzc5ga2>Hq)#|0Nl;86GNWGi*@RX3)^r
zX6WCg!LZa#j$xmuCPRR?Cd1uHnhfbvG#O&Jv>E=0X*0+wYco`;YBLlQsrI;rHiND)
zapsbumJ~OD)FS&077p8`lo?>*z&A~qf!j-)K{Y~~VP!CcuEs+9#%eR%ksMy(@G0m7
zJUxKY0(y86N(;zgOD(muN{=AFp{HF~dWh3M1rLW1MMNA^+kY^#Nlov>xC3T3Hh;qM
zvuYJ2U;7k8Xc!+94mJ!740%Z9gKF{VNqY~Uo+L0WoY8%A2qUO$u>T#**sxj!Tu!WW
z3}H-n(PsE8OImm#yOUIZ;ZhIt2fDvte6?6bu$!I#=`e6|=rU}RXJBAuU|<0G8&obL
zmj~i1x(qK>bQxASsW2D?XfsTpVp)JMZqUnGQql-1YO%Qi6b_aQ3=Hzq5ar^Wi^>eC
zg_;b{svsCtAHc#B-L2Tngrzx3)zTu)L1~?Rf)czA=$fL$pj#%-uqp_WFJS%z(IEdL
z`yC{Pj}P;2-ZVXMn(JR8$FNimGmn767Gw@gJ*bW)CT~!Z)-4zq7z(`<;r=d1i(8mq
zVfm#jM;`2l@PjH0uzbHg3KB*zcMnE?S~D;(EKtyc`;*yHkHN%SkKv%d9ym>d!W|Zm
zFn@r;AJ)dfmFAGu5))UXs;4AwLFE{7`);|~sY%kyb;14x#q0831%^e2nhYSi@`WP9
z-ZzRUaSBp{94@f%fzjw`qCOFlHqg@pC>&v7Luy@4YPe&o&q3uFa=S)+0cIG${EF_U
zp_b0gakS|{<uR_X1jQ%J{~$If&SB|vFy>`Yx?Z#h(LM`DicgR~$W6~MzoVyt!J4i?
z;qb2u(O%CDJ~3&|Nm&N|-`WhBMUXNX<|kNug7PA$Ov9HCVR~RRx?WIPLeFQo>UL7v
zA*85<xdGHp0fhr{dkxlq3k^Z^-N@~$!R(=SUzikgi3t~2IH0G8u9k&UUbZZnvZiU#
zlzUSaO{x93aLNy_2mRJ;5Bt{zKIk{z^PqoG(}_vKt92MGk=pLW*a=HZ$bJE}VL*8h
zxeURk4%Bxb)ITIPje+ckm2IGK0F{A+%6pLe(DOOSJ?$4Y!1W_Y9+vJ0YZ-{_M^gLh
z`0_u@-}Hz#V&WLqc0i72Q2GJIH7M^}=^^TZ*b&yg0hPP3aM;fA|37RDD{1kGN#|ys
znB+L~#H1@)dJM}g^ca|fFx$GYG9E^w$2}?K04ZugaY;<vgX$`fT3G%D#XBgUg8U82
zqsZ-JSU4cJd0}Ik_{>1}GqGx6>5|yI1XE9}`K0(AIV`Y+1E}r4|DzUz19XfR<OWj0
zpB8FKNiU?Rh4~E@4qixO7@%?8Gy>x{q}WA@T9~_tZA%c7=8@wamWN^W8f<I}6b|Tp
zpfnb3cs&Qw2dlGTdO>*%xh{mMfvJP#nZZ~$+A=UO;Oig2`~dP3sILI(1H;5%{vWF2
z9H9CTxh)JDyHr)xWw;Qi$ROx|zfS;4pSaQ-EWSZ)0$4dV*vdUne1h@=D7}Nifyond
zTniS@AhpPBkUo$YJ{ma;KxH$r{s*ZgHf&*Pi7jvOl|P_4KTum3UtWOu7h70>#6TFN
z2Ilv{nBPHheQw9YepuV5F#bWmYs!QEHJK0ki?bf|U&?;a|9=-|Kd0UnQU;>?5tPPZ
z@jyy`AT^FjF&kezgW?93=9PAm9u6SClA4x@O`o7Jp|)CB`2#W=Jq$tNz{SA8@Rm;(
zKGw?;pu+G@N|zx^RhOafjW$Cn8<zPV9BpU&2Z{_a5s+~NY;(a2V-Rz|gyIN!-kcP*
zAb*k)hUj5}t*s2o)97ty&=`3a(tKYg(!3`r_R~r&IsO9q6IQ3g+C%7beGP1ge$(S5
z6^5Cjsti2PInCGZatwz|A@wFGpCQK~C|+>630W<2dL<=n=w&u2&w$EM^zj5@%LG#W
zN2+>I`9zPfhJ{0~x+c8r0M!j33`$3!_5m(7OdcBzOMmEXYUDIRiXTC0@x=|uoyhLM
zW)Hq}2nq)?1_lOf<0`QBGRS<GzhG@;T>cxZZ3gsqGV&Zha#@c)c1%pZ1jP}tX%?gw
zUwo1pf9PctuDAxpGbrC<8!sW%J*0#QF884OlaxA=6t$puL3RTu9IO}^7?9IL(k@ws
z?nAN+GmoRrr=YtLWEL@gM=tZIr5?Hd2IWU|J}iIYs`rrn3+pGA^(ZmKNpdlC2XZlN
zjO1c?Q;t~cfz9v8;RwqAu(k%eT2kVN6t$r6C)N!hwa8%)ig#`X28QQ-h;<)v6O<UH
zPE}&ayspG>|BV*IWE|~9<g)Px+PE6B9r(fo-97l!;>(YemiNfz1+ihz#K6D+YA>R<
z8K~ta<n%*o-T{@T_}qb>Ptf^<@(s4~65YOs3*{KR&9oWREwmX5PRKKOe&l38UK@um
zK9T)S$S=rhk;94HJb^0>BAX4$H@NBz^l-ps9>`y`4g-Aoupi4DIV|2`?HNMz{@B6+
zG|o=VH8$vZn^ZT_Bb;I35Pcsp-Ug~SKy?yw`UJU!*z|#%-e{SYscAMS96;;okk?Ft
z<{Lok$dT8Nlhd9=4i9|k8djDQqaMB7L+8WN8n*U>AsOq8kkbM&?n72jDD9xT9i5NQ
zFQBpvc?>{hk`jaNUnPd;&y*Nyj3Ir0n0{E<fNxzG^7tVs>5JNGNeN?6+69FJw)NiP
zX!{(9Nq?aD!dJedmuuMKn%M9lw#@=^6Ct&*a6oPwFMJAFF9<5n(A^E=54ZFI3kPD_
zI{4~%Qp<Zn@q=Ez;Y(xK(iAai7dhX6!a<*bfdPG86|w8=NcBHH_2^|9Iv<t>v6a`L
zyp5cuVf{T~=LLz)iy-$CqZT=giHQ?X-UXSBOD%d>pz}dt1M9PpG9L!g2U~M8ROiD%
zagQw@(<1M{;)$3vKufjg<p?Mrb22b6yxfUsqZUfzo)ZGin<DpZk=Kla#(+T>G!~lY
zD#y@w4zXqsR3CukKp0eCz{;S(I0h<-Hs%FdH+$btgF(4TgTXCDgJJao4TjUJH5e}a
z)n=G<1l5lqzhTQ`puB>u{4ro)V3<&)4j)(Fl%>HCxI}~D#Ci>es$K{!xC3FI{RBM*
zi>ZTezl<>h1H&VvHP>e+o|trk>BOWR3@0Y}Fr1k5{-`X&y<@0jhM+V73NKh%KyDx6
zD$kJB5>r;9#|1hcR*qqd8(ifBzVa5?eXx8?j9)-%NiBEiQI>$p2T(ZRs~bT1eYozE
zfsNb3!hss~1wG;oSKE`AJcBO{!@>c%%>*hRVf}f0^Fu?~-=OjvIZQ#}ph{t1AC%|u
zl_lt96*`}svWwU<29{2URS)yaV2Wc<9D&NNxz>oaKTo_L_P>dK&|gU8S}2ge(A!MN
z=>S_^AvO$1F_#pzpfrW-22eQIVcD~OZ~M7P8OszHthXtE*Sx~oW}tc*#)hRa9e>Dp
z4@?du55l1O8zcszVPP>C+jJVBHXS!&J<Hm|rzep!egn%FpfJW&ucPNvbUrLhNojMC
znh$Zg4Hid~w6&1a7NNXAj62Z76x1Kp1;rQA*(14f$_&VJ&olpOGYr<YFsRJI)=t2e
zW+;spQp*QY;{{ioqo-{cA5`Xm!U1{RoD=k19BSE(9A?OA2$x%t)q~1)V&j7nvti*t
zC_RAo2O^iDu>47je2?rOd~rdIxj;}jgZuyr2hdp($a6ri)@d_Tp3r1aGu2|~($iv?
zZm7jjj5Pm9jrhXnKlCwEeCYv}u3>c@I-gLPzTol$_&RJE_Xqt;O&|8FRz2)r-}JD5
z!j%X8dIa{Jg4{M3(lsgN46<5K{DaB^<bFd_oif9p3CaxLBsCefwjkOUpnL!eXBdqw
zEf5<X$nHRI$D^A|idu5w1Qrgs*2#eK3NdLGl&?s&pV;uCg}LZu4lEo56d%F!MTHq^
zo+uzPUyu@B#HyuNJix*Mc}x|yXPK1vBGzBDh+9xvBqiTqQws_QQ2l^DpHxc394mT1
z1XO0Ai^1~wVC$QJP8|gK9Yh-#85t!R7#Qe+7^wyZ1`0*G6$J_g1_lP^AfADNm4ShR
zfdT^PhZd(673-%ZCS@k(>8IwE73&umnd#?bCg~ScmSp7T8R?nn7iX5F>J}s>XD6no
z7V8%$XBJfI7Z)TJ6{kX}lKlLfV*U8!;`E}#f(*Uld@hg!5@9X@ISJtsGy1#466O++
zlMpU3rN2u|U@ieU3E>h@3@OkvcFc`HR_YoUnVY15LIIji3=P2UqOnVoii;p=#N03q
z5*`rez{11OzyjnZ`ndv>KtW*vb`HW7pva<itiZ#<%n+1C!L9%~2j&V;G=cIgZF4T%
z6-KahVPpjMJv3by7#h+cMp7~pA?d;h91-AB4CH@!Sb!X1K<gMmas{Xe1-Sz39JnhC
zK#7)qt^ivHb_K{e2v>kZhQ@gW5f%oZq7&o_uyf$9FiNIFx=7B?ho%c~@dS1S$T<jC
zfO8Cu!ve__pyCPa3UFx&%Ogf$H_^)#hAE)r0Cok)Iq<LmB@3G85qMY_CxI$aT>~TI
zWE59ef_bzKi{fNRx-d=x6;>cufSm&m3rkRuO6#1OjBo|0@C3U8<Q#-6KtV)5R~UjS
zbg(Nx&VjpvKIsA$7N(#w64VZbRBLcofQ4xv7SQ&EX)4G*T>~SCbKtH33)9gRph6Pl
z3W&Y1@*))^Og~qE69Cv1V0&S%01MO26^1FGB2(AE2vU5(W5gI&9?35#(a*_GPRs%K
zNpdoivI<hu^(^#KDswWExIpHBN*b_%Ad?XWg0mo&0*J7Iph5#|Ajo8dfyOv$I)Vl!
zf}8?25M(mkK%4<j&_D}lsx}0h3^$O7F!aexDoQM>)ORaN%uOxNFUl^~4*+-b^wMA=
z`eCU>#hLke#rmMGAHI%YfTxdsd}eN9dS+faq#QQ1fYwQdU?(D61_}XeX$;|2n!5~?
zIzW*Cb|TzmMxdY^SeKcCnhju=ft(0;84<~Y#$je)2I{Ko8W<Uvp(b2hIf1OPgzU_c
zV!fQy#G*W113k<5^vn|7f=VMjGu_<8<ox0aT|)ysQ{7Bs3p2gc^mNeR14x5DSc86Y
zMrv|)d{Sv<PKtg!5(knR4a`7=3fTQ1k03%8TrXlN8U~&FLD>fEevn5H?gw>)u%+2S
z=YCK^0lOdM5rq3eNqY#m-_RIT0f2I*35xrTLEa+Q{W+OQx+#@;Ir)hx`URD#6$ObU
zkko2u49a96+rZYsL(7<w)QZP8ke9%=fvknwhO;~*CT-!i%>a~u!M1^{h1&*72xRwF
zaN1^I4)PKx-I=47s31pBBi^cVGLs;YW?&8~S-@6->_m7B>`gL@7-WwjTLp4H*eZ~n
z2&<@-8j-C6r8%%wAUhFOf#Qpr0cdGq02!~gOf&*T6@0wfBo)NPW>s)yaY<^fK9;J_
zzaTZw-3MDk#u2JKGqo7higfo0D9TSSO3ckoOv=p3EUAPxCKC-36Tuz_F~Fe;Z6lkc
zf(in<yT;rEG_0YUXkcyzPEIh_q<|brXV+MoS%3>7T}!hR17z2Lk_7hgNgBo!&U9m7
z0BV5JENtKj#S}aWrkiMB3aX3Y$=1LC)c2;f^_C{!gkhiyVt_4#rVJX#1=RPr1K$+f
zvBXm9Q6(vaLhVm9NCah016>dU6#Ve=$rO}dXcqbi`;EZ$if*ETkvXXCj<6rhqqYAn
zjf~7ey%t?dBO`Ec8g4&0{%P)i-0=@8m#|jnxZ~eBzbG{<GbJ@2d$|pl=1Me3Gz3*f
zpjbCVsQ@8^^CX2j+*rc48YF{CJKaPBgJe`&!5NP>wptpbB!OxiT}y+M6p*JWiD9Ds
ziaTB*1wIzPmKGO*DpU|oOUp#$Pcu;M4T>o<aE^c%PoR8@Eq&rJ$0Q9@py(zVn52P2
z8*UCLp%HD4rHOGWs9?|qF;L9`Wf<bk!PQtXFaeiBSi%Q)x+kHr;+dP6o{9)t$P`GT
z0SF>Z@Pkq*iFuD~HyD_MJPgVc;CWkk>NExwOW4Ab>fvB%U}6GF1iF?6CKe#az}*0f
zQu>4g?)(CB5Eb13i6>AA2<ak%>OD~LfbcVQ!yRs)ktI0aBpMi5f-)k)KI%5Ip!QiB
znSgt~x|T*JCMabsmE#m<AI|(tMk~%au_!4&4|{cjG}sDJ7Mx$2mx5g_k^)eKn}NzJ
za6t+Va(Dp<jt-Iv9Eic#EhXQ9riP#*9o!BE6+nm-0!lcfl?1eKprwgPGB^Y+O-xcy
zvkWLr4FU(^PJ^K0jR*$@6lInrmZTy@p=VxkNn%b;aB5LmY7zDbM^VBBs$W6L3tZ8H
zixPM`1C?a-afGFb33%)Y)TsfbDWpCXkx@m3kicD}CxHtjl5(7PYEe>ZQGPM@D1ga=
zayfX>4JelzfqV|nM3A{`+SqAm3~izr8iO(j!cHP%94WoQd_usVmWD>jpkhnc($Lr(
z#ZFNCl2~05YbVa^g>&5sQd2a!w4hke2+{Haj{<|D$pocM4j#e6mPv3MWeizOlW1UU
z04^wD`3>g^5?n@E8d-pnjDfDDkp*}j2_BI+0~M!HIKv7&c#F-0xSMs31qC^o$%!SI
z`FWsnC^I<~M>ar8N8om@r$6>&6qH(=Us{w58NdrlOvy~lOGauGgInO>r~wz7u<*p$
zaTzo&H#PtjEV`hSfI5H-iq=6K=9Wh0$>2J}(#SjoTxP(-9F+0~v&(U&b20`JXq(Oh
z^3oBdk2$FQ0!rfG!6$e=Hw4APU<z(zN1IxJN=i`k&;pdq5sn6z|0LCH^a^Q9Q)6>b
z-qW=-1y_-zw?mMMG`cw&XPU;j?th?4KzC0!M4C1NC0<aP1~>iS$pc&_4yH7X>}Vr1
zsH2U{P}|C&q&_$uZE0i(8A-D=GBOz4g*76iaks@yK>2epg>;Cg8&aYMkClKDwI#Te
zgVl@R@v1@VYIE>%f6!c`5lTr7>eZ9jHm7Z&hZNS9W~Sgyy{@I1nIWilL=+%{tqp?g
zYMf;?xEnZ_QixZ8t2?5w2Ctz7rE5?EK~#%I-~we3)#WIzHZcbk%b<}B@JbDM3ITN!
z235L7a<!##QWB_$)3r2CN&zw8t_CIRLF;Oq={gw{1=!Lxa#ysdvY;ei&p^*o&m58D
zz`F=QNzM{9S^*CR@RS@m2AYGr+n`bo(rkv6&EViB-9Sq-lT=WzP1n-Q)G`sYJQ!vm
z&WOVAW!!b15y&0_F03fdDbX`TgdVK%orv1_h7|BvGAxqY(2O!O0!5*2qJbGiGt8S{
zVNzUWX=-5#Dn4{AO)bn(hCYZ1F%(zf2`gMB5|RgtQj7C*%JeJ|p#>fX1En=%Q2P#^
z)^HXS_zW{j1!Y^%0)bRe1qwF|XAcv%VU|W_NuYLwuBDM#3TXTcZWu8khUQJ&VP*kN
zzW5VGabZqoNvg4)0V2>0LHQCCXog_@uykPo5+;x?FikT^0i_7gv?8iUEx>g<X>PML
zNHqf`16@mlRLEK~nA?a6Hgvb)4ma>X9s!>w73U&CED@BtKp~ch+It`(#E{LgG=-XD
z39gnAiGql*LYQM|o@xftplfLkF31qIIx(SyWDd@<ACfMx#2xPbCuqR}(SwFAnaQ9*
z#>ApZ{8}*8fd<~eSsfG^keO>(5&@@bY>_$`9Bl+HQov;ks3e8QJb3%?;B+*s=mM2t
zX`qr3?r5CJY~Vv0cb<ndMrfC&eG*Iak~8q9XH+%dv<xjg6TuZ3JcMy>fuvFhqdElp
z;617uu0#XKx;1bbMoA8ky*Yy_WG#)%z=Knuv<t3?;UP=ww2K;QM1?HwG>dc30+o`1
zqbqg?I=X_=rU9to0xD-AD=T2-EO<pR4T~(ijxqo@D?qIcNZSYQC{Vl(jH4_K%uFF|
zJp(ff5QA=M4NpknPE(ek1{MuNDmXQ<C^^GBvjlt6f=h!^m>I0}GXo_xc({RDRU~$p
zNosz;-9XrhCTXAsA80NFymlP!L{R%{P&m=j1U#?`Sym3t1h6at;tUQa;%sL^P9LCM
z&EX%6zdlCDgHod*C=r6nJJewY$O_^?;z;mL3D6>X1MuotczR3%xt)f&8WB?1^9(|s
z%hDh<4cyJKG)PNA>0r`2MIszQ*pWEXqzNd)(=a4`Q%e$45=#=XI}s)eN{^5Yaft?r
z;7Me7RGWYTcQ826)B-e20xBE9V^#<Uf-6DVWf)i(5ez|7a48LTAjqW%2ZB@OfIHCA
z)EK;f4m4>Ep1p=Ukk%Q6$PmQchyb75Lc=uZ?B<tR0y^mcdmO{1LD>Y{9t9QK#wd}T
z1R4Vz98NTXHCl}<!H$B}(21b*IT)O1X=Dspq;6?soB}TYU{0iUN`%KGp@_zr7LCAT
zV6+TH@FH<g0~3cE;qsu=Xab5;P--**7c$UrG)e^x#Sa!o8iTq3phkqTA*cZkD|U>)
zBe{dak(NdlmY{^FYiX2(x?PXvDH0x?1fv^gnlu1!dLu0)$(eu;E=WyH&Iqo|E6GSL
z&cv};6HO5~k%Gn`!HE<+K?O~u28Q4Ql%#r*j;=O_jYk-xcExZWa)^77gl?|3G_n9s
z<AGNCLdNu9VNFIdrk|^EHjWd)<ps@CNT3V$ycg&KO1<FolR&9A5nQOkLNpOv;0~<Y
z%*{cKbI?>Zs2V^_%#cyjlM~x`!p+hw1zb_;TAHPz9`i(}l!(u5IMW+A^U%H=4JgXY
zE5TjE!=*u~54;Bfl=_Uo-5glzgLHvtp8DWU!Ja|j(xBmb$W&^gff0C^4OYt=KxXg<
zk4r6$3?VMHG%`e;LZ(y7ga;a-FvU~fgC|629;QBtdFhUMi8+-xD|=)WpwtQ(nNBoF
z1kXIf(|{qkA2RsdYXa^EgBN~*+aj>sMW;F*IrOk624odnmc~iYMyhcVsA5Ev_jF3R
z$gUyAy|~I*Lo&_)A*X)AyIBY-2}-r#_3xlE7ILIGG!+<<aZ(5kU1<QzTVU71<KEB&
zG<`w)Itv<H*rOdP$z^F^lm>3=TN;?4u9l!v3WYj^fGcsOO9NAI|Agk{l!qt&c>;ty
zD0PBIh(W0ne2fshOf?0!MhBN$jlp|UK^xT|OA(<t$-tC8<v$|auqOb7JeQ?WQW_|-
zbuEpOAvp-<Ryw6rgj)!^6=!-iqffYknyMkG6*#6?VX~mKY6fbUfYK_;VPpp21{dwi
zD40vIhbT-Iw3Qvat`1c1qt>IKvWvtyOma$mm`jLoC#aJNawpiqh`bMS_Miz*OXJjJ
zP$i^mX`BY$Ap&<No$?Zq;fb?74PFjFr+9Y<U4E09jAQT&<P(?*P=127PZQ0N+oxtp
zps`B&#6Qe6xYH_31y`bhDXgwC1t0zcO9y6&pb_9f=Uz*bL}(pgY6#v$0CO)m*$%$+
zfHVCXK+gZ7d0W6aKPSH^xH2ypS7LxlgHkSJ$#9}UBKVjuc*v%J)A3+(sYx2hNuV+o
zy!{dGQt&wx^hmSNKqC~UmL|sFodMtz%E0A6om(tK$3E_K3dv<OkA26GVC<pk7!nLh
zo8ZC;)Jj1;nG7;wKG3c+g|(qgQQOd#pkzw>^oTd?EKMveKuu0vOOr&@^A*8G=0Lj+
zXFJ&d<Y>}d2datj_tKD6fX6>U1GJ#!%HX}<@NxvQmztzhg={kRgp90$3$$|^R3PYr
z7~q9j6qF3eCKF>f?l1>AiL@|x$t=!xEK15ODFPn~gWY;GMWFl)KIs;epG{DG4{AKq
z#RbNO(6~27UCRePhLH{~urx}7%u<0EAg3TwA1Gte!v#3g0nTk+xaUhjY0$AWB@@qi
zuV86V+(XvggHAgH`xKV)!AoFB^EU~$LQZu6<#p6^R>0G7G_n<TECc97U+~esl*BR7
ze#Kpv6MIwv=80<{%R@b}=Wd7`C}P3eJV2Qmb@~u|h!YV(Os2JF;C;xTO{|c0xUlpD
zs(gv*5s+;yDD{G^1rO`NtTiUG5GBi6OVc#S-Zo3qG}LqqatzIUi#ti-oOVIl`C5g%
zc^P~}94L)IG9E0{K)p?@&c|VnDP*cT(ZCdPhCj?4$ifdSRX0|1EKSY8hw<rJnwmj2
zpTo@og(tQ&i`^WYMJdE}_}x>Hn`4B09v!&r4GJRgtp)Hh1MFi0PC_%v9K2@?wAcV#
z-y)2{)wn|P9g0zwX5jM{40K`l1;C90g%hEOLp2I#SV1-sVF@cd)ed+m7WQ%p>AWV$
z0;izV<oxu!Owhhk>^d-%feJNnqZt$%kd2t|1Ojfi3^K<;&N2t>eS++pfIF7-W)+dg
zwqgVsu^|gP0v&u7I(Tdh?pRQg!j{elE*an~|BN8ZBS}gI!KulmMWEYBuw2dNs1K6`
zB|Y%k7EscIG>xDEWJJa`W|*lsVh8FXF4#d3pjr*3OJqpK-6TZX2|F=D*U~f*<<4qQ
zG9dK^5@PMdRR$TSfSckZ#b;n?Vo^yIs1<}gbP@94I0ZEiz;Oz;2^y!yWGt*jm`jAc
zX5h`upm<FJ&7r}HZ)3>TSK9g447@W1WG~nOaC<F5tKdk><Rtjl(liNjM;z!B1<?E!
z%wBTR6e;%NN>>JuW&I?Dv!_4KEs|g<P-+4nRR>B<ph$%;Ffbrv2PfD_><I}h1)3@V
z_mn}KWgsV7LDQ}QxY<uyT!M|nXPc#oDfrq;T}u<wWJ+U@ux+^F%@}-=A!&XivgY*g
z49U;WNy@Ll9t?14P&9*64=9=~k-HkkI8P|1xTb{LPS|l~Y2b;(L<2LF!FXdM(E8Sa
z4mmT(L2@9+fm{hI28_uV<)L=8TACSvdvLmzX2#$VTA1U=DWj<FI9wUR0MfN5T##XQ
zZ(UN0vrF;|U?a331=v#;7KPwU016mzCIEF7;h{xr=>xJ4^+0_r_K@Nrvt(#hZkCMF
zezgDz6Or(#>>x|iv?Nfas%vRxK;H5gYC8yL8ZrPE=!DY{QV$M1co>?8>&yVSG$^4!
zDh|;2B4}|4JfV;=qX0J+d%A#2gXR*zlRcpEMU*nyfQ-2WxUqz6wKOsY?;6tuF;M*q
z$}2>qL2^PEXJ^O|e5(l=w&JY_!Jz?F0g7GlC;_M#0B>}M#jYWEK?sfQHUOU}0_t9a
zhwkBao06HHp}xWs%}^Cwme7MkbS(|Q<7SAa9w?%*j=$h;10aVeF?Qq1$A)C&V^BBA
z1?S#&m@Fus!3*U;@eE#|1`lg8axu(Q?0$vGg4URUr;|bJ3Lra$U=7?<aQRMBc?C0-
z2s=Tw8OTns<uHF5Kn}N~g`JkhDWH17Ko_<M3~nbGX^BXG;w&?aAY=9<`O^(_%@WS(
zMrVD5JSZJOR$wF=B%*X$j3Au~+SzLePN=$x29O(BU}0=zLHf8M!avwj6PkYw(m-Ro
zAbY_MfZGcmcPFiUB*9)wLj%Y<GT3b}FnhsCip27X6nk-%O$HF(lN7&1uM5SZkSoyu
za^4E4c1Q)sF|70;rv*UlH7nR$0y|Vi7sLR!Md2<1#Rh3<0E-3K5}~6$7KL0mbG;>`
zt4M0>;1~~a23hW%S;7T7?NZm$JS`EqJ!C;fDdSjBK*&DOrYX=YBdC@FpCkfH^%lvX
zOh|G_6SmJ7d>k>Twg7K3gxd#dfRLEWi1MGY8E9Y$v^xN7G0Z-5@R?Us_n)OvN-8MY
zbS;fd!3|rOeV}wp>QFEd{==C*$tgXY^ON&&9N7bw0+kTpO;n%~0=zK@;X6<hfV9vA
z8;Lz9f~COwdO(9ky08sC2-`rRNoCs%j10ijlc2lhA!!3v=HMJa3oTA9D%MX+Ov+5m
z(@)JSE7mVCG6UT>t6xxAl98Whq-UmIoLQ2pTacKXotU0lte=}$Qjn8hl9QRFpOl!K
zotl?YtRJ77n4Di+p;w&G1#$y8^?(?lWDEB(WFIb;(uO8(0Earr4IsxL+yJf<=;a1b
z6ocXdH5WlvC(_9cNuU8Yup2;*frkT#gSDihMO=W#K|pRm=|dRc95<!N4e=#Knb33y
zIpW2@2yGw+=QVItvlmqDfcy(~06fegJ3Ocz?@0cIObmeh3vvM5UfRSpvb~@&W{`iu
z4nWw8tG`BBIH#oMB$nnSRzf2gydD5-Imi_V%R!whY{e^eEe91YV9QZTI`H5K%`FFy
zo`Wq1xdP#HP<+$aa>F$6wkll%!!+;)Cb;FsxRy9j7VMeeOS(a|i(wk%h<5|16A(6o
z3Oee08^vZwodR_N!e-h8II_*)Wj~<MMm<RdWHI$i@pvSglfiQ$x(0^H;F~bveg<!)
zrhaHA=am$J^R;0z_}+1_#i)fDIIUB?5Jk2a6slm0!R<j<3kv5oos^|)B#Xi4eSj?n
zxd0K=U>*&9oC0nf>KYiPK#sA7`53&N0$UvC7nJDd<R>TQfZK^VnMnnC>4qkHh9=N^
z7z_+kz->K{kzljoet``BVDSqvMuM7dU?Y*2Y#89YAc+VgA@|jQoC`7=?n+RAW6f5C
zjZ6hE7SuH`Oa-rKgd2%-ff8k@rywsKl3h|Es}&6lAr3&;OPlf-VK3x5Hjuq2xdrFB
zYSi+t1*pOWg)`UzaR1_rI;z<VtpifQ4uIPWs(i2}8Di|s$xPBssm#mCPfXD-&C5*A
zPe}zIJPWSxQXz-88W^TRPA-DwPMkBq6x)~rSxNx15j3m<_an~heyLz1G*ls0BWwgk
zC$<uZVjGholl}&V$>35KVIw8g3vxWhCl{ANvSu=5?G?x>P%1%K1@bdBJcn!*$oZfu
z1Z*e5D$u|bwXFh~3APGkC&DUfMH#|ZNuZL&K-a)939`%`mIEkCk2uFP@+wM8GINR{
zahC*M$PTs|>@T?0AkUK<pu}1Y>cN1l2D<?fz~JT(mMWB(JVC70pz088HOLJJtHEJF
zQ>&A~$6tVx6*!1t0S-yeSggjVlGBP(Q%fofQuWN>t&wE#xC6*gu<3CBfY0s57K=m~
z3ceW%Y$&Qr!8|fungpJ+02vB49qv+4z+<gmh;eBW_y%!Mbb?KX8wxpR2#ZT8N=a!Y
zMrrwZCD8l>YN~;=F4zqStHJ4twpN3u7D2uSy8&S}s5HSA=~VPJWTBveVG`I4aI0~~
zBK54c1g~J$H88Y9y$Q+$Tu4(pz~c)NOEMraZJ7dUX@V>Uy8!NI6H011oW&K2#h^wC
z*kX_i;1<&+bt790USR~b7~}%D#k7fKWQ$Ef_JJ&hoMZ(nBXO<+AtrgDv|W-ii&K-K
zS=bW1tOjfw$XbLqDXE9>*ak8dY#X>7h5L<?T#Lsxkg;IfK-MDs28u&+%Lv@If%jE_
zZ39`0unjzLNoL+ewk@%!2s$ikXbIlX4YCVtDZ(yLw}~1)L$M2#@xXS0+6@T1D9QRb
z{RJ`<Y!}E<gk98%F(iLkq=Kx_H88Y5tv4xZcOv^MJ|nR>BPTNnQi585*BXJX1KEr4
z8aN|RA$g!%2TFEe>rlHT;G94M>p(RS*gBBC2;WgF;!u5O2`>J@=>(Ku;MRdM9@d5w
zsbyqJVo7RAW^O7Z?kpkOfej2H_QI`$G~KBXnCRAl7L<T|2eubs9XS6{-#W-q0U+Oj
z>_u2dt++$>9q!ct5Wiya9qu)j5E<wEytK^pQhaA)U{MHKwFX;hnh04<4y%p8`+2dI
zq7Y;BeKM1Z5{oMJk=FG>WXN`j8SFeW$WAVJ6c~du6aB)((liM&v<utY1$PN3Env-A
z5T8>$OhCmlC~Jd@6j0fMa0%54%;MyNqWlWTOrxO%<Yriyy$I{5R$!u82l58kcc|?y
zP!WbL?U7o7#iLmV@&?#Cki7`sf#Q`0*1=kp7AWJlhTviwn{^l+-DJp>_J(=}@EfxY
z3@yOtrGk6`HXr5-L!3nik;Z~EJlI%JD8Y@zxq^W>W6i;*dxMMxn-4P<6yn&ISrKV0
zc+sV<fg!|vxUrDc2w2Jr3}cInbM#OH)*QTi5@aUWaD<t-+LJ_>X_f}+nS;#)r)gN}
z3ce?is5F4-PBZXDcDe?J5X0f_1cxcvW`aBkG81e#!c1_fgC#sk&xyr3kamPw639%j
zRUkVNR)I=7Y|f{|Dv+6At3Y-ltOA!dRQ44pe!*6O>_k`viWMsRDiNBd%)q0@2&<^o
zGKw$GPtHz-_KnRFLB@hS2DTPq8@QQ7l`urH4b)Hv+Xk{0VH>VC0O^SX#Wq-^C4#I)
z*halbL$(dP6CLa~khKWgz-f~jA(@<?lamU*%^o_oZ)OQgDqy=2R)W(gjjRMk9LSeo
zyAf7WEze=`B`9@(tpwSPu##%gh+(BE_>Ki#14C2DWv8%moqFR_<*A9;MX70!GSd`X
zDub;9XFIrc;HsJ$@rY&}C_8|yL+z%6(=83GgT|jJcqJzd;t$1lCg3drx(0?O;K~_c
z9o153QDR<7el8^HOwvFx2DS|~ae|wm)Cfyd+dvTpwhd%0!f#YdD5$nUBhDlZWG%ur
zs%1Q6+ra0<gC<(cz->ynZ8&d=!)Tu&jt4U^Gy{)YfC>#zqDJg;G{hAz1WW_X_JB+S
z8;fuou5ia|nkg)WnxX7G1%)b+jb>z@n!*}frb(dag1e2P)n3SBd`X#kiN(p8kR{26
zrr=dU;KBo3vBAqKYGp5U>p<p$tpitTaO-fzBdIM0bn8IL1#BJ2UPNGmB8M97JQV8;
zAlqMb4ZwHL7$8z9)y8MjlJiO+4RZr?$W7S>P)iYBqgF_w*ac~rKrKbsg)6_18fz$a
zfr>(1kiS5dBJ848lp*XgG=;4hHbrZjgVQDzO8eqePzw)IwV1+|2}5i}cnq8}scso4
z@IVP4Y%9VtYNZZTpMmNVuw@`y5tdOa%1|t`grpBcQ`EiK;4M_-W@*%E-MrG=f=Ycz
zWu~870%Aa;5WLw9<WaCA;2y<!yA(0`fLOc12gQQz28A}<Zk&gxQqykmXcfqAup{7h
zgW?zK2rCusHi6ti1#17H)`y^EK+X70ODoY&ODh5GDvQs_EP>9Wn52Qq0&o)zwSELg
z0-3oMTa@Fn9#lGjtp~XS5%QoWKOKCZ3JPVg^&od3tOvzB9ju3~AvQ?_ms{}G0yrwD
z82CAvd5Jmc`Z<Z{u@8!6P$Sj^>=K0k!I41^2S9EKG%y6;2~MRJ1-9geGX%gT9Vi8W
zU4jS!YNr5P4lsu9A2l?F9GMGG1JsX#B>nj0{M>@foYa)~q{L!q31AG_dTd|_aS0*>
zz&V1dX#kf4Kwi}aIRKpQ;UNId6LfI^sGSFP0LUeX5TJe<z!3r|ppAQA2Y_6HZ~)jj
zWQG88pC}i;Y7BA)3dkz3od~NaiEUg~fm%yot3cgRgjJNpD=w=*1sT{XkevvtD2YMr
zR)Lq-fs0H?s|c1_ac;CBx2=$zUzDm}oSc}GScHf^6Ub>J28Ix4z&(m{PY#uB2Sp^P
zumn2;VLK(kjIFfB?sxFcCa~=wXTWU-Sx(hf8dlql!Ivz7l2|gT?bOOR$-yN>nR)4+
z{*bn~G31mz14D?#2;WjG_h8ru%R*p_5%z&gBr23a81{jhyWsEyS&Xm`6rJQYy^ymk
zs(l6q;0YsL0|SF3u#aH*7P7;E8vYB&OwP`MRH_CB(0MATwQ%2ohHJ=9t0=xhwGGmY
zg<1=@4Kn&ib-#fZ5P(855o9gGHmb!O!f!a&CK)G#f)ZOg!M*y$F*!LkC$%WCBo+Gs
zB1nse%2JbkGLx_?%gIdgaSU*D_J(eENHj<UO&uG6PQw9T*98j^W6%&g*4Q2ZH=2Sg
zDDWZ1;1UFy{*B4GpOH4<2s`mu7j|_QEF3}U3j0Vi-NO-QdNjc~?oSUlI{7#TBT^%H
z(g2hiA$vlhF>L~wr@&Gg(A|Xw;A5gd=K-NyK4OBiET*#yEe$NeSsHXl1KKPFC@l_D
zse=^DIMX3`%6GuZoHCc-07N>3j3y=;B!c_c@Z1bu+d5ETh~h$XaI+b7O$@kjM7R*#
z!W*ERg5*L=GgI(^tGbqErjUy$pm`aT3J0!4M0O$0a|l7LyMarGzL~|zh=d3}BL!3-
zLhh)71tMgycc7vf#fe6+^V*G4z$2e<Ck|*zL~^2~5o8WY*V4!gl7V4P1gFIT%g)G7
z#F-W$D<}sdq9N@_(ET#t^IJgofq*AZ;YAI2mFIwj9@J@;rsig#VK-e61JsU1I1LoD
z1L`!K5t<C{GSVzUJ;8?`VZElP3@iuUsQ}8Tph5+_WdR;)kkgq4)M;kspdKzLt%3J2
zAe;s&lW7;B;E=)IWrBv9rD-DUdK$>42DsBeNsWfJ1rbienbycCJRn&MM^J!!mY`c@
zAmi?!oBU9-9qAogBJ2a*_y-!P(giWV!^#wt-^AEQ&G01DaYx8=B^p?of{QZ{gVJzC
zn2S9w5%OG?<|&Xp=pY7i2OFHSshqTt>;<hO0TqVe1tqA%F<{?gDTpW<5{^&FFG<Qt
zgskW_FozyoV_=T9<PH=C*h(6z+6^ks!2Sl6#E7B<oVsc4Z%`D2?FKmlVK*qYY3*<D
zsr+EOL5_giO~nJRAPYpm!{G77`9+Ym_Xg&vpvEZ3Vz3Jk7K73s^*xPjF=$c;Y%$0M
z2#dk-PW6~ZvN#1?WEvQlr-EDnw-^-5ShF-`$s2C5p)q(5IcRX)3?+S;&?HZnBIcKj
zVY}ENE`a-(il<p1B`y?;L6HgaG1vtNi@|A}+Hs6*u>q*80$U7n0o-ER#4(b^Mkye#
zfh-2Q0B$j4<14j&oLibxl8Lm{-UvLNple_VaR$P6nq+1S+re{8VB0}WRfO%JAfb9u
zf?+#&UmnPIuruJc(<aK%Y&S56hP;6}xO73-PD#CmJT(O0ByV62J_86;aDwebSOqH9
z$PH#3R)OyV16u`dzrtIW;P@poHRG}hR2YM-0^5o36)66w>?`m!p<t^}eFZ8rs9{xp
z0cbudA94h%fjM~l4#+yNy$GLCD`}ux2Wl{atpm+eA*`cT@<6u^RC|G~1KEqPj#}}C
zW*uz8*Bs^MR|D`47;JHeu?ZqGIX|xqenGi`fjMka*Bop#+yjudFP1b;go&V#00jxy
zXoQL2s)!sD&A_wUU=u+`!%YN*G1evvK{uL#%rVe4Fn}11FcBn9TsVRj^;<xPV+{<<
zpsUgiASNRW#8vfRIuYGKP_q!^La@mQ1BnksbOS*d4s0OEWQ2jBP$bXGpo$G_Ajo8d
zfz--r@!->ep^Fd9phw~wn4v8z1vvtn^NDG;BA3Nzwt<R9u;0LCJ=IHoRNKJIG{Lrk
ztVM(*uBf5RZ{UrpAlty!B5b2tNT!wMC70yqLyx~SfNhaAFaz6+un-)ySPBG^y@z2T
zsOSg#5LBxoECh!xO)LbJ8(<4THX|&gS_Go`&=|b0QrE!181;e{@PIruazk-RQGNk<
z(UyTRbgP^J#8QOksMTITu?tjQg8hXWkkl$uQ0xME0Bje?QiQ*#6=}$JfzSQ|+Xb=|
zZWs9432gC&T0NvEC!3gp4rxnIPL40uGlW+=#?ZC?2F73u5axny!IIL6HWw5mAoqeT
zK$r_I=_xQb1!Mr&T#yBDb3s8)L`{w}9H8@f1_oxR3s@nGxrldfaY;(Dwl?C>R|Bwd
zpoRj(2DpPE`<N&(7_yMS0BQr=V6ZR=DFV~Q;IPy+FffG}1+Th5;*=O{4DOkL;tm{%
za2JCw5W!|JN-++)=m~Vje^Gu~W=?7mA_aq2o`OsT8;>v*JVt~ifQd8})Jy`KirUx#
zwbm(cE2zc-n+h@>;Z|HhOPpIFH$58|7=u?3Axs755JDk<<FYN}mQ7|!Y7tU(Yz*#)
zfqVhB7-1jSPqeTP<PorasI@V!G72Ts$nhVjvH;r$vKZk%qGE}3`wYP6r-GJ_qFftj
zK()F!zPO~Q6nc=VfdTZ`Rs)E&2;WgFG|_B>rg(_82-`qGOfVl25tgX7nSe4YI3z*V
zB5b2p%%Rw32)<`Z*TBHg2%Pd^1*IX?LNXb2f;e<m$<Pp#_(8UTt%dsyvYe3$xh@{n
zHfVzsVlBcps<rV^Yy&U<0Q(JOE!;Lxv|+8)NzLI%e#5;;5Zv>|mL^M!i$HBB5Jsyl
zLD$NI`UIdA55_1-&J0|1V2Kudh8dZIbb+pow*c2(uoPtqO4g*g%+d(5XbN;2yfL`a
zf*FQ0P;t8qcbI{9pAc|aVrfY}w7O0-NCfZE0fiT2_5|iC@Ntf$7-S5&H7C))*Z`%a
z54j2zf50QT$kNEd6ddT5Miv&}j0<xSG2w)45U#m>Lj#cc1iY4?l$EUKhzKRvVwFUc
z#VUq4n@UJ=hh~&1q)bdSFh$v(WC+f3q`Arzd}SnPwLI8Ncs5N1WdTx*vNTBq7m~V`
zCW&bzCr%U(;!K*5&0qvvm6==$n$SfKdGN*Sp!8{poCOU{a8+1HA&+Sq$ZrOqJrL&L
z)CvnRL-5*565VELW(*!-)wMJ;0dJ3mnFda%Sc^$KZo?UF29Sw2JQ=9CvbZEQ7gQR8
zrbwOhb93|akV4P|RD^^4Y(nJu8ZcMlHP_NO4SaE>E{K6r-GaT3FD&t!i!0k25R+|D
zyVIc34HV;`)B~PPL&Ol+#dyLrCo>7%EMxFSCD3ilpzMXT3mlv-NioaP$O4k8K@8BQ
zT7<hmfrl^bFx-VR-55e9?y$HE_dW&Z{GwF+_q#jlqpIP8UFNL|a|p~YhLGZo*7k$;
zHGv`%6vyD&8eu=KN}8(vPc$%v>@-U>Fhx0@zz}@BEw;F%w*BC05>yL-9Rl~iF|HDl
zs`gu&8iRu0K-bdL1ZAHLC?%7+`X4oIVPDRMss{Hh_J-!T{0}SNax#-3L80e_sOTXl
z1;g%+hX*FO{>K)X_zW{P0u>FQ5(9iuJKQkHav3Z+1Giz8M#<)&^sEcJg&k%X?qJ4k
zn1O*Yc-J4eOAQVsXdBCr#PfTSGV}EH^z`)tz;}Xkfy@O}HXw7s7Qh^72p)CA7JS${
z4w&YG4_*VC3$g%iF3yvdi8R*`dOeMSG1vl_xwr$BNOKLqhmC<cz6K@+X2}S1N$akG
z!U1yMIv2=EAk9!Sk<T>)_j9nMCfsgCG83d3Y$nKXggZf19BJ`|WF|;6*i4Y&2s1%m
QAlpokX0Vwc!>M2<0DM<q)Bpeg

diff --git a/examples/mixture/README.txt b/examples/mixture/README.txt
index bbf508e59d..1cc9671e40 100644
--- a/examples/mixture/README.txt
+++ b/examples/mixture/README.txt
@@ -2,4 +2,4 @@
 Gaussian Mixture Models
 -----------------------
 
-Examples concerning the `scikits.learn.mixture` package.
+Examples concerning the `sklearn.mixture` package.
diff --git a/examples/svm/README.txt b/examples/svm/README.txt
index 9c83e641b5..f9f3b57afc 100644
--- a/examples/svm/README.txt
+++ b/examples/svm/README.txt
@@ -3,5 +3,5 @@
 Support Vector Machines
 -----------------------
 
-Examples concerning the `scikits.learn.svm` package.
+Examples concerning the `sklearn.svm` package.
 
diff --git a/setup.py b/setup.py
index af79845f6e..1197d029ac 100644
--- a/setup.py
+++ b/setup.py
@@ -9,7 +9,7 @@ import sys
 import os
 import shutil
 
-DISTNAME = 'sklearn'
+DISTNAME = 'scikit-learn'
 DESCRIPTION = 'A set of python modules for machine learning and data mining'
 LONG_DESCRIPTION = open('README.rst').read()
 MAINTAINER = 'Fabian Pedregosa'
-- 
GitLab